| Index: src/arm/builtins-arm.cc
|
| diff --git a/src/arm/builtins-arm.cc b/src/arm/builtins-arm.cc
|
| index 715118cea86f0a107b6e4a7b099bff410ecf28ad..5b278a1b1f8917d107752f4a8811b7152ea52736 100644
|
| --- a/src/arm/builtins-arm.cc
|
| +++ b/src/arm/builtins-arm.cc
|
| @@ -702,8 +702,7 @@ enum IsTagged { kArgcIsSmiTagged, kArgcIsUntaggedInt };
|
|
|
|
|
| // Clobbers r2; preserves all other registers.
|
| -static void Generate_CheckStackOverflow(MacroAssembler* masm,
|
| - const int calleeOffset, Register argc,
|
| +static void Generate_CheckStackOverflow(MacroAssembler* masm, Register argc,
|
| IsTagged argc_is_tagged) {
|
| // Check the stack for overflow. We are not trying to catch
|
| // interruptions (e.g. debug break and preemption) here, so the "real stack
|
| @@ -723,11 +722,6 @@ static void Generate_CheckStackOverflow(MacroAssembler* masm,
|
| __ b(gt, &okay); // Signed comparison.
|
|
|
| // Out of stack space.
|
| - __ ldr(r1, MemOperand(fp, calleeOffset));
|
| - if (argc_is_tagged == kArgcIsUntaggedInt) {
|
| - __ SmiTag(argc);
|
| - }
|
| - __ Push(r1, argc);
|
| __ CallRuntime(Runtime::kThrowStackOverflow, 0);
|
|
|
| __ bind(&okay);
|
| @@ -764,12 +758,8 @@ static void Generate_JSEntryTrampolineHelper(MacroAssembler* masm,
|
| __ Push(r1, r2);
|
|
|
| // Check if we have enough stack space to push all arguments.
|
| - // The function is the first thing that was pushed above after entering
|
| - // the internal frame.
|
| - const int kFunctionOffset =
|
| - InternalFrameConstants::kCodeOffset - kPointerSize;
|
| // Clobbers r2.
|
| - Generate_CheckStackOverflow(masm, kFunctionOffset, r3, kArgcIsUntaggedInt);
|
| + Generate_CheckStackOverflow(masm, r3, kArgcIsUntaggedInt);
|
|
|
| // Remember new.target.
|
| __ mov(r5, r0);
|
| @@ -1338,7 +1328,7 @@ static void Generate_ApplyHelper(MacroAssembler* masm, bool targetIsArgument) {
|
| __ InvokeBuiltin(Context::APPLY_PREPARE_BUILTIN_INDEX, CALL_FUNCTION);
|
| }
|
|
|
| - Generate_CheckStackOverflow(masm, kFunctionOffset, r0, kArgcIsSmiTagged);
|
| + Generate_CheckStackOverflow(masm, r0, kArgcIsSmiTagged);
|
|
|
| // Push current limit and index.
|
| const int kIndexOffset = kVectorOffset - (2 * kPointerSize);
|
| @@ -1399,7 +1389,7 @@ static void Generate_ConstructHelper(MacroAssembler* masm) {
|
| __ InvokeBuiltin(Context::REFLECT_CONSTRUCT_PREPARE_BUILTIN_INDEX,
|
| CALL_FUNCTION);
|
|
|
| - Generate_CheckStackOverflow(masm, kFunctionOffset, r0, kArgcIsSmiTagged);
|
| + Generate_CheckStackOverflow(masm, r0, kArgcIsSmiTagged);
|
|
|
| // Push current limit and index.
|
| const int kIndexOffset = kVectorOffset - (2 * kPointerSize);
|
|
|