]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Implement 66 0F 11 = MOVUPD (untested)
authorJulian Seward <jseward@acm.org>
Tue, 1 Nov 2005 18:59:38 +0000 (18:59 +0000)
committerJulian Seward <jseward@acm.org>
Tue, 1 Nov 2005 18:59:38 +0000 (18:59 +0000)
git-svn-id: svn://svn.valgrind.org/vex/trunk@1427

VEX/priv/guest-amd64/toIR.c

index 50878d03be4078046a7c31f4e38bd61071f64d90..ac80db19000b68215b64dfd6522212955d8725c2 100644 (file)
@@ -9777,15 +9777,17 @@ DisResult disInstr_AMD64_WRK (
    }
 
    /* 66 0F 29 = MOVAPD -- move from G (xmm) to E (mem or xmm). */
-   if (have66noF2noF3(pfx) && insn[0] == 0x0F && insn[1] == 0x29) {
+   /* 66 0F 11 = MOVUPD -- move from G (xmm) to E (mem or xmm). */
+   if (have66noF2noF3(pfx) && insn[0] == 0x0F 
+       && (insn[1] == 0x29 || insn[1] == 0x11)) {
       modrm = getUChar(delta+2);
       if (epartIsReg(modrm)) {
          /* fall through; awaiting test case */
       } else {
          addr = disAMode ( &alen, pfx, delta+2, dis_buf, 0 );
          storeLE( mkexpr(addr), getXMMReg(gregOfRexRM(pfx,modrm)) );
-         DIP("movapd %s,%s\n", nameXMMReg(gregOfRexRM(pfx,modrm)),
-                               dis_buf );
+         DIP("mov[ua]pd %s,%s\n", nameXMMReg(gregOfRexRM(pfx,modrm)),
+                                  dis_buf );
          delta += 2+alen;
          goto decode_success;
       }