Commit 5795454f authored by Liu Yu's avatar Liu Yu Committed by Commit Bot

[mips][wasm][x64] Fix OSR shadow stack violation

Port 06a2c2e0

Change-Id: I0901804ce7d403c284f944251e09afe6dd7ad77b
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2831162
Auto-Submit: Liu yu <liuyu@loongson.cn>
Reviewed-by: 's avatarZhao Jiazhong <zhaojiazhong-hf@loongson.cn>
Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn>
Cr-Commit-Position: refs/heads/master@{#74020}
parent fd968ef6
...@@ -2364,6 +2364,12 @@ void Builtins::Generate_WasmDebugBreak(MacroAssembler* masm) { ...@@ -2364,6 +2364,12 @@ void Builtins::Generate_WasmDebugBreak(MacroAssembler* masm) {
void Builtins::Generate_GenericJSToWasmWrapper(MacroAssembler* masm) { void Builtins::Generate_GenericJSToWasmWrapper(MacroAssembler* masm) {
__ Trap(); __ Trap();
} }
void Builtins::Generate_WasmOnStackReplace(MacroAssembler* masm) {
// Only needed on x64.
__ Trap();
}
#endif // V8_ENABLE_WEBASSEMBLY #endif // V8_ENABLE_WEBASSEMBLY
void Builtins::Generate_CEntry(MacroAssembler* masm, int result_size, void Builtins::Generate_CEntry(MacroAssembler* masm, int result_size,
......
...@@ -2456,6 +2456,12 @@ void Builtins::Generate_WasmDebugBreak(MacroAssembler* masm) { ...@@ -2456,6 +2456,12 @@ void Builtins::Generate_WasmDebugBreak(MacroAssembler* masm) {
void Builtins::Generate_GenericJSToWasmWrapper(MacroAssembler* masm) { void Builtins::Generate_GenericJSToWasmWrapper(MacroAssembler* masm) {
__ Trap(); __ Trap();
} }
void Builtins::Generate_WasmOnStackReplace(MacroAssembler* masm) {
// Only needed on x64.
__ Trap();
}
#endif // V8_ENABLE_WEBASSEMBLY #endif // V8_ENABLE_WEBASSEMBLY
void Builtins::Generate_CEntry(MacroAssembler* masm, int result_size, void Builtins::Generate_CEntry(MacroAssembler* masm, int result_size,
......
...@@ -433,6 +433,8 @@ void LiftoffAssembler::SpillInstance(Register instance) { ...@@ -433,6 +433,8 @@ void LiftoffAssembler::SpillInstance(Register instance) {
sw(instance, liftoff::GetInstanceOperand()); sw(instance, liftoff::GetInstanceOperand());
} }
void LiftoffAssembler::ResetOSRTarget() {}
void LiftoffAssembler::FillInstanceInto(Register dst) { void LiftoffAssembler::FillInstanceInto(Register dst) {
lw(dst, liftoff::GetInstanceOperand()); lw(dst, liftoff::GetInstanceOperand());
} }
...@@ -2998,6 +3000,8 @@ void LiftoffAssembler::DeallocateStackSlot(uint32_t size) { ...@@ -2998,6 +3000,8 @@ void LiftoffAssembler::DeallocateStackSlot(uint32_t size) {
addiu(sp, sp, size); addiu(sp, sp, size);
} }
void LiftoffAssembler::MaybeOSR() {}
void LiftoffStackSlots::Construct(int param_slots) { void LiftoffStackSlots::Construct(int param_slots) {
DCHECK_LT(0, slots_.size()); DCHECK_LT(0, slots_.size());
SortInPushOrder(); SortInPushOrder();
......
...@@ -418,6 +418,8 @@ void LiftoffAssembler::SpillInstance(Register instance) { ...@@ -418,6 +418,8 @@ void LiftoffAssembler::SpillInstance(Register instance) {
Sd(instance, liftoff::GetInstanceOperand()); Sd(instance, liftoff::GetInstanceOperand());
} }
void LiftoffAssembler::ResetOSRTarget() {}
void LiftoffAssembler::FillInstanceInto(Register dst) { void LiftoffAssembler::FillInstanceInto(Register dst) {
Ld(dst, liftoff::GetInstanceOperand()); Ld(dst, liftoff::GetInstanceOperand());
} }
...@@ -3166,6 +3168,8 @@ void LiftoffAssembler::DeallocateStackSlot(uint32_t size) { ...@@ -3166,6 +3168,8 @@ void LiftoffAssembler::DeallocateStackSlot(uint32_t size) {
Daddu(sp, sp, size); Daddu(sp, sp, size);
} }
void LiftoffAssembler::MaybeOSR() {}
void LiftoffStackSlots::Construct(int param_slots) { void LiftoffStackSlots::Construct(int param_slots) {
DCHECK_LT(0, slots_.size()); DCHECK_LT(0, slots_.size());
SortInPushOrder(); SortInPushOrder();
......
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