Commit 2d3f1082 authored by bjaideep's avatar bjaideep Committed by Commit bot

PPC/s390: Fix to use correct instr to test bit

R=joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
BUG=
LOG=N

Review-Url: https://codereview.chromium.org/2905683002
Cr-Commit-Position: refs/heads/master@{#45523}
parent c68df411
...@@ -1212,7 +1212,7 @@ void Builtins::Generate_InterpreterEntryTrampoline(MacroAssembler* masm) { ...@@ -1212,7 +1212,7 @@ void Builtins::Generate_InterpreterEntryTrampoline(MacroAssembler* masm) {
Label gotta_call_runtime; Label gotta_call_runtime;
// Check if the optimized code is marked for deopt. // Check if the optimized code is marked for deopt.
__ lbz(r8, FieldMemOperand(optimized_code_entry, __ lwz(r8, FieldMemOperand(optimized_code_entry,
Code::kKindSpecificFlags1Offset)); Code::kKindSpecificFlags1Offset));
__ TestBit(r8, Code::kMarkedForDeoptimizationBit, r0); __ TestBit(r8, Code::kMarkedForDeoptimizationBit, r0);
__ bne(&gotta_call_runtime, cr0); __ bne(&gotta_call_runtime, cr0);
...@@ -1489,7 +1489,7 @@ void Builtins::Generate_CompileLazy(MacroAssembler* masm) { ...@@ -1489,7 +1489,7 @@ void Builtins::Generate_CompileLazy(MacroAssembler* masm) {
// Found code, check if it is marked for deopt, if so call into runtime to // Found code, check if it is marked for deopt, if so call into runtime to
// clear the optimized code slot. // clear the optimized code slot.
__ lbz(r8, FieldMemOperand(entry, Code::kKindSpecificFlags1Offset)); __ lwz(r8, FieldMemOperand(entry, Code::kKindSpecificFlags1Offset));
__ TestBit(r8, Code::kMarkedForDeoptimizationBit, r0); __ TestBit(r8, Code::kMarkedForDeoptimizationBit, r0);
__ bne(&gotta_call_runtime, cr0); __ bne(&gotta_call_runtime, cr0);
......
...@@ -735,10 +735,8 @@ void Builtins::Generate_ResumeGeneratorTrampoline(MacroAssembler* masm) { ...@@ -735,10 +735,8 @@ void Builtins::Generate_ResumeGeneratorTrampoline(MacroAssembler* masm) {
// Store input value into generator object. // Store input value into generator object.
Label async_await, done_store_input; Label async_await, done_store_input;
__ AndP(r5, r5, __ tmll(r5, Operand(static_cast<int>(SuspendFlags::kAsyncGeneratorAwait)));
Operand(static_cast<int>(SuspendFlags::kAsyncGeneratorAwait))); __ b(Condition(1), &async_await);
__ CmpP(r5, Operand(static_cast<int>(SuspendFlags::kAsyncGeneratorAwait)));
__ beq(&async_await);
__ StoreP(r2, FieldMemOperand(r3, JSGeneratorObject::kInputOrDebugPosOffset), __ StoreP(r2, FieldMemOperand(r3, JSGeneratorObject::kInputOrDebugPosOffset),
r0); r0);
...@@ -1205,9 +1203,9 @@ void Builtins::Generate_InterpreterEntryTrampoline(MacroAssembler* masm) { ...@@ -1205,9 +1203,9 @@ void Builtins::Generate_InterpreterEntryTrampoline(MacroAssembler* masm) {
Label gotta_call_runtime; Label gotta_call_runtime;
// Check if the optimized code is marked for deopt. // Check if the optimized code is marked for deopt.
__ LoadlB(r7, FieldMemOperand(optimized_code_entry, __ LoadlW(r7, FieldMemOperand(optimized_code_entry,
Code::kKindSpecificFlags1Offset)); Code::kKindSpecificFlags1Offset));
__ tmll(r7, Operand(Code::kMarkedForDeoptimizationBit)); __ And(r0, r7, Operand(1 << Code::kMarkedForDeoptimizationBit));
__ bne(&gotta_call_runtime); __ bne(&gotta_call_runtime);
// Optimized code is good, get it into the closure and link the closure into // Optimized code is good, get it into the closure and link the closure into
...@@ -1481,8 +1479,8 @@ void Builtins::Generate_CompileLazy(MacroAssembler* masm) { ...@@ -1481,8 +1479,8 @@ void Builtins::Generate_CompileLazy(MacroAssembler* masm) {
// Found code, check if it is marked for deopt, if so call into runtime to // Found code, check if it is marked for deopt, if so call into runtime to
// clear the optimized code slot. // clear the optimized code slot.
__ LoadlB(r7, FieldMemOperand(entry, Code::kKindSpecificFlags1Offset)); __ LoadlW(r7, FieldMemOperand(entry, Code::kKindSpecificFlags1Offset));
__ tmll(r7, Operand(Code::kMarkedForDeoptimizationBit)); __ And(r0, r7, Operand(1 << Code::kMarkedForDeoptimizationBit));
__ bne(&gotta_call_runtime); __ bne(&gotta_call_runtime);
// Code is good, get it into the closure and tail call. // Code is good, get it into the closure and tail call.
......
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