diff --git a/cranelift/codegen/src/isa/x64/inst/emit_tests.rs b/cranelift/codegen/src/isa/x64/inst/emit_tests.rs index e0f26c1966f..719d2566d34 100644 --- a/cranelift/codegen/src/isa/x64/inst/emit_tests.rs +++ b/cranelift/codegen/src/isa/x64/inst/emit_tests.rs @@ -72,8 +72,8 @@ fn test_x64_emit() { let w_xmm2 = Writable::::from_reg(xmm2); let w_xmm3 = Writable::::from_reg(xmm3); let w_xmm4 = Writable::::from_reg(xmm4); - let _w_xmm5 = Writable::::from_reg(xmm5); - let _w_xmm6 = Writable::::from_reg(xmm6); + let w_xmm5 = Writable::::from_reg(xmm5); + let w_xmm6 = Writable::::from_reg(xmm6); let w_xmm7 = Writable::::from_reg(xmm7); let w_xmm8 = Writable::::from_reg(xmm8); let w_xmm9 = Writable::::from_reg(xmm9); @@ -3011,6 +3011,33 @@ fn test_x64_emit() { "orps %xmm5, %xmm4", )); + // ======================================================== + // XMM_RM_R: Integer Packed + + insns.push(( + Inst::xmm_rm_r(SseOpcode::Paddb, RegMem::reg(xmm9), w_xmm5), + "66410FFCE9", + "paddb %xmm9, %xmm5", + )); + + insns.push(( + Inst::xmm_rm_r(SseOpcode::Paddw, RegMem::reg(xmm7), w_xmm6), + "660FFDF7", + "paddw %xmm7, %xmm6", + )); + + insns.push(( + Inst::xmm_rm_r(SseOpcode::Paddd, RegMem::reg(xmm12), w_xmm13), + "66450FFEEC", + "paddd %xmm12, %xmm13", + )); + + insns.push(( + Inst::xmm_rm_r(SseOpcode::Paddq, RegMem::reg(xmm1), w_xmm8), + "66440FD4C1", + "paddq %xmm1, %xmm8", + )); + // XMM_Mov_R_M: float stores insns.push(( Inst::xmm_mov_r_m(SseOpcode::Movss, xmm15, Amode::imm_reg(128, r12), None),