Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(119)

Side by Side Diff: src/ia32/debug-ia32.cc

Issue 3167037: Fix a bug in the handling of debug break in CallIC... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 10 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/arm/debug-arm.cc ('k') | src/x64/debug-x64.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2010 the V8 project authors. All rights reserved. 1 // Copyright 2010 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after
176 } 176 }
177 177
178 178
179 void Debug::GenerateKeyedStoreICDebugBreak(MacroAssembler* masm) { 179 void Debug::GenerateKeyedStoreICDebugBreak(MacroAssembler* masm) {
180 // Register state for keyed IC load call (from ic-ia32.cc). 180 // Register state for keyed IC load call (from ic-ia32.cc).
181 // ----------- S t a t e ------------- 181 // ----------- S t a t e -------------
182 // -- eax : value 182 // -- eax : value
183 // -- ecx : key 183 // -- ecx : key
184 // -- edx : receiver 184 // -- edx : receiver
185 // ----------------------------------- 185 // -----------------------------------
186 // Register eax contains an object that needs to be pushed on the
187 // expression stack of the fake JS frame.
188 Generate_DebugBreakCallHelper(masm, eax.bit() | ecx.bit() | edx.bit(), false); 186 Generate_DebugBreakCallHelper(masm, eax.bit() | ecx.bit() | edx.bit(), false);
189 } 187 }
190 188
191 189
192 void Debug::GenerateCallICDebugBreak(MacroAssembler* masm) { 190 void Debug::GenerateCallICDebugBreak(MacroAssembler* masm) {
193 // Register state for keyed IC call call (from ic-ia32.cc) 191 // Register state for keyed IC call call (from ic-ia32.cc)
194 // ----------- S t a t e ------------- 192 // ----------- S t a t e -------------
195 // -- eax: number of arguments 193 // -- ecx: name
196 // ----------------------------------- 194 // -----------------------------------
197 // The number of arguments in eax is not smi encoded. 195 Generate_DebugBreakCallHelper(masm, ecx.bit(), false);
198 Generate_DebugBreakCallHelper(masm, 0, false);
199 } 196 }
200 197
201 198
202 void Debug::GenerateConstructCallDebugBreak(MacroAssembler* masm) { 199 void Debug::GenerateConstructCallDebugBreak(MacroAssembler* masm) {
203 // Register state just before return from JS function (from codegen-ia32.cc). 200 // Register state just before return from JS function (from codegen-ia32.cc).
204 // eax is the actual number of arguments not encoded as a smi see comment 201 // eax is the actual number of arguments not encoded as a smi see comment
205 // above IC call. 202 // above IC call.
206 // ----------- S t a t e ------------- 203 // ----------- S t a t e -------------
207 // -- eax: number of arguments 204 // -- eax: number of arguments
208 // ----------------------------------- 205 // -----------------------------------
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
279 276
280 const bool Debug::kFrameDropperSupported = true; 277 const bool Debug::kFrameDropperSupported = true;
281 278
282 #undef __ 279 #undef __
283 280
284 #endif // ENABLE_DEBUGGER_SUPPORT 281 #endif // ENABLE_DEBUGGER_SUPPORT
285 282
286 } } // namespace v8::internal 283 } } // namespace v8::internal
287 284
288 #endif // V8_TARGET_ARCH_IA32 285 #endif // V8_TARGET_ARCH_IA32
OLDNEW
« no previous file with comments | « src/arm/debug-arm.cc ('k') | src/x64/debug-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698