Skip to content

Commit cfbacfc

Browse files
committed
port ARM changes to ARM64
PRs chakra-core#3019, chakra-core#3264, and chakra-core#3509. These occured after the point where the ARM64 starting point was forked.
1 parent c8d1549 commit cfbacfc

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

lib/Backend/arm64/LowerMD.cpp

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2181,11 +2181,13 @@ LowererMD::ChangeToLea(IR::Instr * instr, bool postRegAlloc)
21812181
IR::Instr *
21822182
LowererMD::LowerRet(IR::Instr * retInstr)
21832183
{
2184-
IR::RegOpnd *retReg = IR::RegOpnd::New(nullptr, RETURN_REG, TyMachReg, m_func);
2184+
IR::RegOpnd *retReg = IR::RegOpnd::New(TyMachReg, m_func);
2185+
retReg->SetReg(RETURN_REG);
2186+
Lowerer::InsertMove(retReg, retInstr->UnlinkSrc1(), retInstr);
21852187

2186-
retInstr->SetDst(retReg);
2188+
retInstr->SetSrc1(retReg);
21872189

2188-
return this->ChangeToAssign(retInstr);
2190+
return retInstr;
21892191
}
21902192

21912193

@@ -5886,10 +5888,14 @@ LowererMD::EmitInt4Instr(IR::Instr *instr)
58865888
instr->m_opcode = Js::OpCode::MUL;
58875889
break;
58885890

5891+
case Js::OpCode::DivU_I4:
5892+
AssertMsg(UNREACHED, "Unsigned div NYI");
58895893
case Js::OpCode::Div_I4:
58905894
instr->m_opcode = Js::OpCode::SDIV;
58915895
break;
58925896

5897+
case Js::OpCode::RemU_I4:
5898+
AssertMsg(UNREACHED, "Unsigned rem NYI");
58935899
case Js::OpCode::Rem_I4:
58945900
instr->m_opcode = Js::OpCode::REM;
58955901
break;
@@ -7663,7 +7669,7 @@ LowererMD::LoadFloatValue(IR::Opnd * opndDst, double value, IR::Instr * instrIns
76637669
#if DBG
76647670
NativeCodeData::GetDataDescription(pValue, instrInsert->m_func->m_alloc),
76657671
#endif
7666-
instrInsert->m_func);
7672+
instrInsert->m_func, true);
76677673
}
76687674
else
76697675
{

0 commit comments

Comments
 (0)