Commit d2491aed authored by Junliang Yan's avatar Junliang Yan Committed by V8 LUCI CQ

ppc64: fix compilation error

Change-Id: I8a46ee0f64d6e9b7d71c7f494cac3eff817fbdda
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3582417Reviewed-by: 's avatarMilad Farazmand <mfarazma@redhat.com>
Commit-Queue: Junliang Yan <junyan@redhat.com>
Cr-Commit-Position: refs/heads/main@{#79923}
parent a913a75b
...@@ -79,6 +79,18 @@ void Generate_OSREntry(MacroAssembler* masm, Register entry_address, ...@@ -79,6 +79,18 @@ void Generate_OSREntry(MacroAssembler* masm, Register entry_address,
__ Ret(); __ Ret();
} }
void ResetBytecodeAgeAndOsrState(MacroAssembler* masm, Register bytecode_array,
Register scratch) {
// Reset the bytecode age and OSR state (optimized to a single write).
static_assert(BytecodeArray::kOsrStateAndBytecodeAgeAreContiguous32Bits);
STATIC_ASSERT(BytecodeArray::kNoAgeBytecodeAge == 0);
__ mov(scratch, Operand(0));
__ StoreU32(scratch,
FieldMemOperand(bytecode_array,
BytecodeArray::kOsrUrgencyAndInstallTargetOffset),
r0);
}
// Restarts execution either at the current or next (in execution order) // Restarts execution either at the current or next (in execution order)
// bytecode. If there is baseline code on the shared function info, converts an // bytecode. If there is baseline code on the shared function info, converts an
// interpreter frame into a baseline frame and continues execution in baseline // interpreter frame into a baseline frame and continues execution in baseline
...@@ -204,7 +216,8 @@ void Generate_BaselineOrInterpreterEntry(MacroAssembler* masm, ...@@ -204,7 +216,8 @@ void Generate_BaselineOrInterpreterEntry(MacroAssembler* masm,
if (is_osr) { if (is_osr) {
Register scratch = ip; Register scratch = ip;
ResetBytecodeAgeAndOsrState(masm, bytecodeArray, scratch); ResetBytecodeAgeAndOsrState(masm, kInterpreterBytecodeArrayRegister,
scratch);
Generate_OSREntry(masm, code_obj, Code::kHeaderSize - kHeapObjectTag); Generate_OSREntry(masm, code_obj, Code::kHeaderSize - kHeapObjectTag);
} else { } else {
__ AddS64(code_obj, code_obj, Operand(Code::kHeaderSize - kHeapObjectTag)); __ AddS64(code_obj, code_obj, Operand(Code::kHeaderSize - kHeapObjectTag));
...@@ -236,18 +249,6 @@ void Generate_BaselineOrInterpreterEntry(MacroAssembler* masm, ...@@ -236,18 +249,6 @@ void Generate_BaselineOrInterpreterEntry(MacroAssembler* masm,
__ b(&start); __ b(&start);
} }
void ResetBytecodeAgeAndOsrState(MacroAssembler* masm, Register bytecode_array,
Register scratch) {
// Reset the bytecode age and OSR state (optimized to a single write).
static_assert(BytecodeArray::kOsrStateAndBytecodeAgeAreContiguous32Bits);
STATIC_ASSERT(BytecodeArray::kNoAgeBytecodeAge == 0);
__ mov(scratch, Operand(0));
__ StoreU32(scratch,
FieldMemOperand(bytecode_array,
BytecodeArray::kOsrUrgencyAndInstallTargetOffset),
r0);
}
} // namespace } // namespace
void Builtins::Generate_Adaptor(MacroAssembler* masm, Address address) { void Builtins::Generate_Adaptor(MacroAssembler* masm, Address address) {
...@@ -1397,7 +1398,7 @@ void Builtins::Generate_InterpreterEntryTrampoline(MacroAssembler* masm) { ...@@ -1397,7 +1398,7 @@ void Builtins::Generate_InterpreterEntryTrampoline(MacroAssembler* masm) {
FrameScope frame_scope(masm, StackFrame::MANUAL); FrameScope frame_scope(masm, StackFrame::MANUAL);
__ PushStandardFrame(closure); __ PushStandardFrame(closure);
ResetBytecodeAgeAndOsrState(masm, bytecodeArray, r8); ResetBytecodeAgeAndOsrState(masm, kInterpreterBytecodeArrayRegister, r8);
// Load initial bytecode offset. // Load initial bytecode offset.
__ mov(kInterpreterBytecodeOffsetRegister, __ mov(kInterpreterBytecodeOffsetRegister,
......
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