Index: src/full-codegen/ia32/full-codegen-ia32.cc |
diff --git a/src/full-codegen/ia32/full-codegen-ia32.cc b/src/full-codegen/ia32/full-codegen-ia32.cc |
index 7430cbd39bc7b3e3ae86dfd4842cd89c246b6f3e..1b1af27dc4f695e6b4faeb51de6f024b45ba7428 100644 |
--- a/src/full-codegen/ia32/full-codegen-ia32.cc |
+++ b/src/full-codegen/ia32/full-codegen-ia32.cc |
@@ -263,11 +263,14 @@ void FullCodeGenerator::Generate() { |
int num_parameters = info->scope()->num_parameters(); |
int offset = num_parameters * kPointerSize; |
- __ lea(edx, Operand(ebp, StandardFrameConstants::kCallerSPOffset + offset)); |
- __ push(edx); |
- __ push(Immediate(Smi::FromInt(num_parameters))); |
- __ push(Immediate(Smi::FromInt(rest_index))); |
- __ push(Immediate(Smi::FromInt(language_mode()))); |
+ __ mov(RestParamAccessDescriptor::parameter_count(), |
+ Immediate(Smi::FromInt(num_parameters))); |
+ __ lea(RestParamAccessDescriptor::parameter_pointer(), |
+ Operand(ebp, StandardFrameConstants::kCallerSPOffset + offset)); |
+ __ mov(RestParamAccessDescriptor::rest_parameter_index(), |
+ Immediate(Smi::FromInt(rest_index))); |
+ __ mov(RestParamAccessDescriptor::language_mode(), |
+ Immediate(Smi::FromInt(language_mode()))); |
function_in_register = false; |
RestParamAccessStub stub(isolate()); |