Index: src/arm/builtins-arm.cc |
diff --git a/src/arm/builtins-arm.cc b/src/arm/builtins-arm.cc |
index fb319dff33b78eabd3cd2bb22ebe0b7ae37dc6fc..34ad4591894b40a13d909164b852a5b413d217ee 100644 |
--- a/src/arm/builtins-arm.cc |
+++ b/src/arm/builtins-arm.cc |
@@ -606,9 +606,8 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, |
__ ldr(cp, FieldMemOperand(r1, JSFunction::kContextOffset)); |
Handle<Code> code = |
masm->isolate()->builtins()->HandleApiCallConstruct(); |
- ParameterCount expected(0); |
- __ InvokeCode(code, expected, expected, |
- RelocInfo::CODE_TARGET, CALL_FUNCTION, CALL_AS_METHOD); |
+ __ SetCallKind(r5, CALL_AS_METHOD); |
+ __ Call(code, RelocInfo::CODE_TARGET); |
} else { |
ParameterCount actual(r0); |
__ InvokeFunction(r1, actual, CALL_FUNCTION, |
@@ -1162,12 +1161,12 @@ void Builtins::Generate_FunctionCall(MacroAssembler* masm) { |
__ push(r1); // re-add proxy object as additional argument |
__ add(r0, r0, Operand(1)); |
- __ GetBuiltinEntry(r3, Builtins::CALL_FUNCTION_PROXY); |
+ __ GetBuiltinFunction(r1, Builtins::CALL_FUNCTION_PROXY); |
__ Jump(masm->isolate()->builtins()->ArgumentsAdaptorTrampoline(), |
RelocInfo::CODE_TARGET); |
__ bind(&non_proxy); |
- __ GetBuiltinEntry(r3, Builtins::CALL_NON_FUNCTION); |
+ __ GetBuiltinFunction(r1, Builtins::CALL_NON_FUNCTION); |
__ Jump(masm->isolate()->builtins()->ArgumentsAdaptorTrampoline(), |
RelocInfo::CODE_TARGET); |
__ bind(&function); |
@@ -1182,13 +1181,13 @@ void Builtins::Generate_FunctionCall(MacroAssembler* masm) { |
__ ldr(r2, |
FieldMemOperand(r3, SharedFunctionInfo::kFormalParameterCountOffset)); |
__ SmiUntag(r2); |
- __ ldr(r3, FieldMemOperand(r1, JSFunction::kCodeEntryOffset)); |
__ SetCallKind(r5, CALL_AS_METHOD); |
__ cmp(r2, r0); // Check formal and actual parameter counts. |
__ Jump(masm->isolate()->builtins()->ArgumentsAdaptorTrampoline(), |
RelocInfo::CODE_TARGET, |
ne); |
+ __ ldr(r3, FieldMemOperand(r1, JSFunction::kCodeEntryOffset)); |
ParameterCount expected(0); |
__ InvokeCode(r3, expected, expected, JUMP_FUNCTION, |
NullCallWrapper(), CALL_AS_METHOD); |
@@ -1347,7 +1346,7 @@ void Builtins::Generate_FunctionApply(MacroAssembler* masm) { |
__ add(r0, r0, Operand(1)); |
__ mov(r2, Operand::Zero()); |
__ SetCallKind(r5, CALL_AS_METHOD); |
- __ GetBuiltinEntry(r3, Builtins::CALL_FUNCTION_PROXY); |
+ __ GetBuiltinFunction(r1, Builtins::CALL_FUNCTION_PROXY); |
__ Call(masm->isolate()->builtins()->ArgumentsAdaptorTrampoline(), |
RelocInfo::CODE_TARGET); |
@@ -1387,13 +1386,13 @@ void Builtins::Generate_ArgumentsAdaptorTrampoline(MacroAssembler* masm) { |
// -- r0 : actual number of arguments |
// -- r1 : function (passed through to callee) |
// -- r2 : expected number of arguments |
- // -- r3 : code entry to call |
// -- r5 : call kind information |
// ----------------------------------- |
Label invoke, dont_adapt_arguments; |
Label enough, too_few; |
+ __ ldr(r3, FieldMemOperand(r1, JSFunction::kCodeEntryOffset)); |
__ cmp(r0, r2); |
__ b(lt, &too_few); |
__ cmp(r2, Operand(SharedFunctionInfo::kDontAdaptArgumentsSentinel)); |