Index: src/ia32/codegen-ia32.cc |
=================================================================== |
--- src/ia32/codegen-ia32.cc (revision 6692) |
+++ src/ia32/codegen-ia32.cc (working copy) |
@@ -3771,14 +3771,15 @@ |
// Leave the frame and return popping the arguments and the |
// receiver. |
frame_->Exit(); |
- masm_->ret((scope()->num_parameters() + 1) * kPointerSize); |
+ int arguments_bytes = (scope()->num_parameters() + 1) * kPointerSize; |
+ __ LargeRet(arguments_bytes, ecx); |
Mads Ager (chromium)
2011/02/09 12:34:14
Just call it Ret? You don't know if it is large or
|
DeleteFrame(); |
#ifdef ENABLE_DEBUGGER_SUPPORT |
- // Check that the size of the code used for returning matches what is |
- // expected by the debugger. |
- ASSERT_EQ(Assembler::kJSReturnSequenceLength, |
- masm_->SizeOfCodeGeneratedSince(&check_exit_codesize)); |
+ // Check that the size of the code used for returning is large enough |
+ // for the debugger's requirements. |
+ ASSERT(Assembler::kJSReturnSequenceLength <= |
+ masm_->SizeOfCodeGeneratedSince(&check_exit_codesize)); |
#endif |
} |