From 72c503016c63d88a7ce73e4807defa65d30ec0a6 Mon Sep 17 00:00:00 2001 From: Tillmann Karras Date: Fri, 5 Aug 2016 01:57:43 +0100 Subject: [PATCH] Fix Pack2x32To1x64 Not sure how to fix this properly. --- src/backend_x64/emit_x64.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/backend_x64/emit_x64.cpp b/src/backend_x64/emit_x64.cpp index 673dcfd5..be3c5faf 100644 --- a/src/backend_x64/emit_x64.cpp +++ b/src/backend_x64/emit_x64.cpp @@ -281,7 +281,8 @@ void EmitX64::EmitPack2x32To1x64(IR::Block&, IR::Inst* inst) { void EmitX64::EmitLeastSignificantWord(IR::Block&, IR::Inst* inst) { // TODO: Optimize - reg_alloc.UseDefRegister(inst->GetArg(0), inst, any_gpr); + auto u64 = reg_alloc.UseDefRegister(inst->GetArg(0), inst, any_gpr); + code->MOVZX(64, 32, u64, R(u64)); } void EmitX64::EmitMostSignificantWord(IR::Block&, IR::Inst* inst) {