From c3fcc3231afaaf56c629d5b32c1a92358c2f80b9 Mon Sep 17 00:00:00 2001 From: kobalicek Date: Thu, 18 Jun 2015 00:11:22 +0200 Subject: [PATCH] Fixed extrq instruction. --- src/asmjit/x86/x86assembler.cpp | 3 +-- src/test/asmjit_test_opcode.h | 1 + 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/asmjit/x86/x86assembler.cpp b/src/asmjit/x86/x86assembler.cpp index c0b9ec4..55189d1 100644 --- a/src/asmjit/x86/x86assembler.cpp +++ b/src/asmjit/x86/x86assembler.cpp @@ -2697,8 +2697,7 @@ _EmitMmMovD: (static_cast(o2)->getUInt32() << 8) ; imLen = 2; - rmReg = opReg; - opReg = x86ExtractO(opCode); + rmReg = x86ExtractO(opCode); goto _EmitX86R; } break; diff --git a/src/test/asmjit_test_opcode.h b/src/test/asmjit_test_opcode.h index 2c0830f..8423921 100644 --- a/src/test/asmjit_test_opcode.h +++ b/src/test/asmjit_test_opcode.h @@ -1320,6 +1320,7 @@ static void opcode(asmjit::X86Assembler& a, bool useRex1 = false, bool useRex2 = a.extrq(xmmA, xmmB); a.extrq(xmmA, 0x1, 0x2); + a.extrq(xmmB, 0x1, 0x2); a.insertq(xmmA, xmmB); a.insertq(xmmA, xmmB, 0x1, 0x2); a.movntsd(anyptr_gpA, xmmB);