backend/arm64: Implement LeastSignificantWord

This commit is contained in:
Merry 2022-07-22 23:58:30 +01:00 committed by merry
parent 7c86b06233
commit 163ed9b185

View file

@ -73,10 +73,13 @@ void EmitIR<IR::Opcode::Pack2x64To1x128>(oaknut::CodeGenerator& code, EmitContex
template<>
void EmitIR<IR::Opcode::LeastSignificantWord>(oaknut::CodeGenerator& code, EmitContext& ctx, IR::Inst* inst) {
(void)code;
(void)ctx;
(void)inst;
ASSERT_FALSE("Unimplemented");
auto args = ctx.reg_alloc.GetArgumentInfo(inst);
auto Wresult = ctx.reg_alloc.WriteW(inst);
auto Xoperand = ctx.reg_alloc.ReadX(args[0]);
RegAlloc::Realize(Wresult, Xoperand);
code.MOV(Wresult, Xoperand->toW()); // TODO: Zext elimination
}
template<>