diff options
Diffstat (limited to 'deps/v8/src/builtins/mips/builtins-mips.cc')
-rw-r--r-- | deps/v8/src/builtins/mips/builtins-mips.cc | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/deps/v8/src/builtins/mips/builtins-mips.cc b/deps/v8/src/builtins/mips/builtins-mips.cc index 12c1d607574..0c892c960f0 100644 --- a/deps/v8/src/builtins/mips/builtins-mips.cc +++ b/deps/v8/src/builtins/mips/builtins-mips.cc @@ -13,7 +13,9 @@ #include "src/frames.h" #include "src/mips/constants-mips.h" #include "src/objects-inl.h" +#include "src/objects/js-generator.h" #include "src/runtime/runtime.h" +#include "src/wasm/wasm-objects.h" namespace v8 { namespace internal { @@ -2271,7 +2273,7 @@ void Builtins::Generate_WasmCompileLazy(MacroAssembler* masm) { // Convert to Smi for the runtime call. __ SmiTag(t0); { - TrapOnAbortScope trap_on_abort_scope(masm); // Avoid calls to Abort. + HardAbortScope hard_abort(masm); // Avoid calls to Abort. FrameScope scope(masm, StackFrame::WASM_COMPILE_LAZY); // Save all parameter registers (see wasm-linkage.cc). They might be @@ -2364,10 +2366,9 @@ void Builtins::Generate_CEntry(MacroAssembler* masm, int result_size, if (kArchVariant >= kMips32r6) { __ addiupc(ra, kNumInstructionsToJump + 1); } else { - // This branch-and-link sequence is needed to find the current PC on mips - // before r6, saved to the ra register. - __ bal(&find_ra); // bal exposes branch delay slot. - __ Addu(ra, ra, kNumInstructionsToJump * Instruction::kInstrSize); + // This no-op-and-link sequence saves PC + 8 in ra register on pre-r6 MIPS + __ nal(); // nal has branch delay slot. + __ Addu(ra, ra, kNumInstructionsToJump * kInstrSize); } __ bind(&find_ra); |