Commit 46f761e1 authored by jkummerow's avatar jkummerow Committed by Commit bot

Fix missing SmiTag in failure path of r27614

BUG=chromium:469768
LOG=n

Review URL: https://codereview.chromium.org/1061263003

Cr-Commit-Position: refs/heads/master@{#27627}
parent baf927ff
......@@ -856,6 +856,9 @@ static void Generate_CheckStackOverflow(MacroAssembler* masm,
// Out of stack space.
__ ldr(r1, MemOperand(fp, calleeOffset));
if (argc_is_tagged == kArgcIsUntaggedInt) {
__ SmiTag(argc);
}
__ Push(r1, argc);
__ InvokeBuiltin(Builtins::STACK_OVERFLOW, CALL_FUNCTION);
......
......@@ -828,6 +828,9 @@ static void Generate_CheckStackOverflow(MacroAssembler* masm,
__ B(gt, &enough_stack_space);
// There is not enough stack space, so use a builtin to throw an appropriate
// error.
if (argc_is_tagged == kArgcIsUntaggedInt) {
__ SmiTag(argc);
}
__ Push(function, argc);
__ InvokeBuiltin(Builtins::STACK_OVERFLOW, CALL_FUNCTION);
// We should never return from the APPLY_OVERFLOW builtin.
......
......@@ -605,6 +605,9 @@ static void Generate_CheckStackOverflow(MacroAssembler* masm,
// Out of stack space.
__ push(Operand(ebp, calleeOffset)); // push this
if (eax_is_tagged == kEaxIsUntaggedInt) {
__ SmiTag(eax);
}
__ push(eax);
__ InvokeBuiltin(Builtins::STACK_OVERFLOW, CALL_FUNCTION);
......
......@@ -606,6 +606,9 @@ static void Generate_CheckStackOverflow(MacroAssembler* masm,
// Out of stack space.
__ Push(Operand(rbp, calleeOffset));
if (rax_is_tagged == kRaxIsUntaggedInt) {
__ Integer32ToSmi(rax, rax);
}
__ Push(rax);
__ InvokeBuiltin(Builtins::STACK_OVERFLOW, CALL_FUNCTION);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment