@@ -20478,13 +20478,12 @@ bool Lowerer::GenerateFastEqBoolInt(IR::Instr * instr, bool *pNeedHelper)
2047820478 instr->InsertBefore(firstFalse);
2047920479 }
2048020480
20481- // tmp = src
20482- // dst = tmp ^ (true ^ false) (= !src)
20483- IR::RegOpnd* temp = IR::RegOpnd::New(IRType::TyVar, instr->m_func);
20484- LowererMD::CreateAssign(temp, srcBool, instr);
20481+ // dst = src
20482+ // dst = dst ^ (true ^ false) (= !src)
20483+ LowererMD::CreateAssign(instr->GetDst(), srcBool, instr);
2048520484 ScriptContextInfo* sci = instr->m_func->GetScriptContextInfo();
20486- IR::AddrOpnd* xorval = IR::AddrOpnd::New(sci->GetTrueAddr() ^ sci->GetFalseAddr(), IR::AddrOpndKindDynamicVar , instr->m_func, true);
20487- instr->InsertBefore(IR::Instr::New(LowererMD::MDXorOpcode, instr->GetDst(), temp , xorval, instr->m_func));
20485+ IR::AddrOpnd* xorval = IR::AddrOpnd::New(sci->GetTrueAddr() ^ sci->GetFalseAddr(), IR::AddrOpndKindDynamicMisc , instr->m_func, true);
20486+ instr->InsertBefore(IR::Instr::New(LowererMD::MDXorOpcode, instr->GetDst(), instr->GetDst() , xorval, instr->m_func));
2048820487
2048920488 instr->InsertBefore(forceInequal);
2049020489 LowererMD::CreateAssign(instr->GetDst(), this->LoadLibraryValueOpnd(instr, inequalResultValue), instr);
@@ -20531,13 +20530,12 @@ bool Lowerer::GenerateFastEqBoolInt(IR::Instr * instr, bool *pNeedHelper)
2053120530 }
2053220531 else
2053320532 {
20534- // tmp = src
20535- // dst = tmp ^ (true ^ false) (= !src)
20536- IR::RegOpnd* temp = IR::RegOpnd::New(IRType::TyVar, instr->m_func);
20537- LowererMD::CreateAssign(temp, srcBool, instr);
20533+ // dst = src
20534+ // dst = dst ^ (true ^ false) (= !src)
20535+ LowererMD::CreateAssign(instr->GetDst(), srcBool, instr);
2053820536 ScriptContextInfo* sci = instr->m_func->GetScriptContextInfo();
20539- IR::AddrOpnd* xorval = IR::AddrOpnd::New(sci->GetTrueAddr() ^ sci->GetFalseAddr(), IR::AddrOpndKindDynamicVar , instr->m_func, true);
20540- instr->InsertBefore(IR::Instr::New(LowererMD::MDXorOpcode, instr->GetDst(), temp , xorval, instr->m_func));
20537+ IR::AddrOpnd* xorval = IR::AddrOpnd::New(sci->GetTrueAddr() ^ sci->GetFalseAddr(), IR::AddrOpndKindDynamicMisc , instr->m_func, true);
20538+ instr->InsertBefore(IR::Instr::New(LowererMD::MDXorOpcode, instr->GetDst(), instr->GetDst() , xorval, instr->m_func));
2054120539 }
2054220540 instr->InsertBefore(IR::BranchInstr::New(LowererMD::MDUncondBranchOpcode, labelDone, this->m_func));
2054320541 }
0 commit comments