Commit ec1e47a9 authored by Zhao Jiazhong's avatar Zhao Jiazhong Committed by V8 LUCI CQ

[loong64][mips] Fix a stack alignment issue when call C function

Change-Id: I297647ebc8b8b3f854ee3297be7c674aef6fd800
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3354668Reviewed-by: 's avatarYu Liu <liuyu@loongson.cn>
Commit-Queue: Yu Liu <liuyu@loongson.cn>
Cr-Commit-Position: refs/heads/main@{#78437}
parent 8f0b451f
...@@ -3729,6 +3729,7 @@ void Generate_BaselineOrInterpreterEntry(MacroAssembler* masm, ...@@ -3729,6 +3729,7 @@ void Generate_BaselineOrInterpreterEntry(MacroAssembler* masm,
__ Move(arg_reg_2, kInterpreterBytecodeOffsetRegister); __ Move(arg_reg_2, kInterpreterBytecodeOffsetRegister);
__ Move(arg_reg_3, kInterpreterBytecodeArrayRegister); __ Move(arg_reg_3, kInterpreterBytecodeArrayRegister);
FrameScope scope(masm, StackFrame::INTERNAL); FrameScope scope(masm, StackFrame::INTERNAL);
__ PrepareCallCFunction(3, 0, a4);
__ CallCFunction(get_baseline_pc, 3, 0); __ CallCFunction(get_baseline_pc, 3, 0);
} }
__ Add_d(code_obj, code_obj, kReturnRegister0); __ Add_d(code_obj, code_obj, kReturnRegister0);
......
...@@ -4177,6 +4177,7 @@ void Generate_BaselineOrInterpreterEntry(MacroAssembler* masm, ...@@ -4177,6 +4177,7 @@ void Generate_BaselineOrInterpreterEntry(MacroAssembler* masm,
__ Move(arg_reg_2, kInterpreterBytecodeOffsetRegister); __ Move(arg_reg_2, kInterpreterBytecodeOffsetRegister);
__ Move(arg_reg_3, kInterpreterBytecodeArrayRegister); __ Move(arg_reg_3, kInterpreterBytecodeArrayRegister);
FrameScope scope(masm, StackFrame::INTERNAL); FrameScope scope(masm, StackFrame::INTERNAL);
__ PrepareCallCFunction(3, 0, t0);
__ CallCFunction(get_baseline_pc, 3, 0); __ CallCFunction(get_baseline_pc, 3, 0);
} }
__ Addu(code_obj, code_obj, kReturnRegister0); __ Addu(code_obj, code_obj, kReturnRegister0);
......
...@@ -3754,6 +3754,7 @@ void Generate_BaselineOrInterpreterEntry(MacroAssembler* masm, ...@@ -3754,6 +3754,7 @@ void Generate_BaselineOrInterpreterEntry(MacroAssembler* masm,
__ Move(arg_reg_2, kInterpreterBytecodeOffsetRegister); __ Move(arg_reg_2, kInterpreterBytecodeOffsetRegister);
__ Move(arg_reg_3, kInterpreterBytecodeArrayRegister); __ Move(arg_reg_3, kInterpreterBytecodeArrayRegister);
FrameScope scope(masm, StackFrame::INTERNAL); FrameScope scope(masm, StackFrame::INTERNAL);
__ PrepareCallCFunction(3, 0, a4);
__ CallCFunction(get_baseline_pc, 3, 0); __ CallCFunction(get_baseline_pc, 3, 0);
} }
__ Daddu(code_obj, code_obj, kReturnRegister0); __ Daddu(code_obj, code_obj, kReturnRegister0);
......
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