diff --git a/cranelift/codegen/src/isa/x64/inst/emit_tests.rs b/cranelift/codegen/src/isa/x64/inst/emit_tests.rs index 3ecf4b7e62..26c97af019 100644 --- a/cranelift/codegen/src/isa/x64/inst/emit_tests.rs +++ b/cranelift/codegen/src/isa/x64/inst/emit_tests.rs @@ -3555,6 +3555,24 @@ fn test_x64_emit() { "psubq %xmm8, %xmm1", )); + insns.push(( + Inst::xmm_rm_r(SseOpcode::Pmuldq, RegMem::reg(xmm4), w_xmm15), + "66440F3828FC", + "pmuldq %xmm4, %xmm15", + )); + + insns.push(( + Inst::xmm_rm_r(SseOpcode::Pmulhw, RegMem::reg(xmm9), w_xmm1), + "66410FE5C9", + "pmulhw %xmm9, %xmm1", + )); + + insns.push(( + Inst::xmm_rm_r(SseOpcode::Pmulhuw, RegMem::reg(xmm7), w_xmm9), + "66440FE4CF", + "pmulhuw %xmm7, %xmm9", + )); + insns.push(( Inst::xmm_rm_r(SseOpcode::Pmulld, RegMem::reg(xmm15), w_xmm6), "66410F3840F7", @@ -3711,12 +3729,24 @@ fn test_x64_emit() { "punpckhbw %xmm3, %xmm2", )); + insns.push(( + Inst::xmm_rm_r(SseOpcode::Punpckhwd, RegMem::reg(xmm13), w_xmm2), + "66410F69D5", + "punpckhwd %xmm13, %xmm2", + )); + insns.push(( Inst::xmm_rm_r(SseOpcode::Punpcklbw, RegMem::reg(xmm1), w_xmm8), "66440F60C1", "punpcklbw %xmm1, %xmm8", )); + insns.push(( + Inst::xmm_rm_r(SseOpcode::Punpcklwd, RegMem::reg(xmm11), w_xmm8), + "66450F61C3", + "punpcklwd %xmm11, %xmm8", + )); + insns.push(( Inst::xmm_rm_r(SseOpcode::Unpcklps, RegMem::reg(xmm11), w_xmm2), "410F14D3",