Commit f3317d9d authored by Milad Fa's avatar Milad Fa Committed by V8 LUCI CQ

PPC/S390: Fix WasmDebugBreak to also save Simd regs if needed

Change-Id: I507ce1132470fe1502a37e82e43c2de323443b22
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2992460Reviewed-by: 's avatarJunliang Yan <junyan@redhat.com>
Commit-Queue: Milad Fa <mfarazma@redhat.com>
Cr-Commit-Position: refs/heads/master@{#75425}
parent feed3897
...@@ -2473,7 +2473,8 @@ void Builtins::Generate_WasmDebugBreak(MacroAssembler* masm) { ...@@ -2473,7 +2473,8 @@ void Builtins::Generate_WasmDebugBreak(MacroAssembler* masm) {
// Save all parameter registers. They might hold live values, we restore // Save all parameter registers. They might hold live values, we restore
// them after the runtime call. // them after the runtime call.
__ MultiPush(WasmDebugBreakFrameConstants::kPushedGpRegs); __ MultiPush(WasmDebugBreakFrameConstants::kPushedGpRegs);
__ MultiPushDoubles(WasmDebugBreakFrameConstants::kPushedFpRegs); __ MultiPushF64AndV128(WasmDebugBreakFrameConstants::kPushedFpRegs,
WasmDebugBreakFrameConstants::kPushedFpRegs);
// Initialize the JavaScript context with 0. CEntry will use it to // Initialize the JavaScript context with 0. CEntry will use it to
// set the current context on the isolate. // set the current context on the isolate.
...@@ -2481,7 +2482,8 @@ void Builtins::Generate_WasmDebugBreak(MacroAssembler* masm) { ...@@ -2481,7 +2482,8 @@ void Builtins::Generate_WasmDebugBreak(MacroAssembler* masm) {
__ CallRuntime(Runtime::kWasmDebugBreak, 0); __ CallRuntime(Runtime::kWasmDebugBreak, 0);
// Restore registers. // Restore registers.
__ MultiPopDoubles(WasmDebugBreakFrameConstants::kPushedFpRegs); __ MultiPopF64AndV128(WasmDebugBreakFrameConstants::kPushedFpRegs,
WasmDebugBreakFrameConstants::kPushedFpRegs);
__ MultiPop(WasmDebugBreakFrameConstants::kPushedGpRegs); __ MultiPop(WasmDebugBreakFrameConstants::kPushedGpRegs);
} }
__ Ret(); __ Ret();
......
...@@ -2506,7 +2506,7 @@ void Builtins::Generate_WasmDebugBreak(MacroAssembler* masm) { ...@@ -2506,7 +2506,7 @@ void Builtins::Generate_WasmDebugBreak(MacroAssembler* masm) {
// Save all parameter registers. They might hold live values, we restore // Save all parameter registers. They might hold live values, we restore
// them after the runtime call. // them after the runtime call.
__ MultiPush(WasmDebugBreakFrameConstants::kPushedGpRegs); __ MultiPush(WasmDebugBreakFrameConstants::kPushedGpRegs);
__ MultiPushDoubles(WasmDebugBreakFrameConstants::kPushedFpRegs); __ MultiPushF64OrV128(WasmDebugBreakFrameConstants::kPushedFpRegs);
// Initialize the JavaScript context with 0. CEntry will use it to // Initialize the JavaScript context with 0. CEntry will use it to
// set the current context on the isolate. // set the current context on the isolate.
...@@ -2514,7 +2514,7 @@ void Builtins::Generate_WasmDebugBreak(MacroAssembler* masm) { ...@@ -2514,7 +2514,7 @@ void Builtins::Generate_WasmDebugBreak(MacroAssembler* masm) {
__ CallRuntime(Runtime::kWasmDebugBreak, 0); __ CallRuntime(Runtime::kWasmDebugBreak, 0);
// Restore registers. // Restore registers.
__ MultiPopDoubles(WasmDebugBreakFrameConstants::kPushedFpRegs); __ MultiPopF64OrV128(WasmDebugBreakFrameConstants::kPushedFpRegs);
__ MultiPop(WasmDebugBreakFrameConstants::kPushedGpRegs); __ MultiPop(WasmDebugBreakFrameConstants::kPushedGpRegs);
} }
__ Ret(); __ Ret();
......
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