Check rex_ignored.
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 13 Nov 2009 23:13:48 +0000 (23:13 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 13 Nov 2009 23:13:48 +0000 (23:13 +0000)
gas/testsuite/

2009-11-13  H.J. Lu  <hongjiu.lu@intel.com>

* gas/i386/rex.s: Add a test for VEX insn.
* gas/i386/rex.d: Updated.

opcodes/

2009-11-13  H.J. Lu  <hongjiu.lu@intel.com>

* i386-dis.c (print_insn): Check rex_ignored.

gas/testsuite/ChangeLog
gas/testsuite/gas/i386/rex.d
gas/testsuite/gas/i386/rex.s
opcodes/ChangeLog
opcodes/i386-dis.c

index 832894d21bc88b537b88fec189d7e1d1d8770af0..2c55bd5b5d1134514d8e6173be005c9595aa0a24 100644 (file)
@@ -1,3 +1,8 @@
+2009-11-13  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * gas/i386/rex.s: Add a test for VEX insn.
+       * gas/i386/rex.d: Updated.
+
 2009-11-13  H.J. Lu  <hongjiu.lu@intel.com>
 
        * gas/i386/i386.exp: Run long-1, long-1-intel, x86-64-long-1,
index 9023b49ace4bd9938c7155165358d2d8358f5dc8..ed59033fe0200619015e06a440ce486ae6b7b101 100644 (file)
@@ -14,6 +14,7 @@ Disassembly of section .text:
 [       ]*[0-9a-f]+:[   ]+4a 0f ae 04 05 00 00 00 00[   ]+(rex.WX? )?fxsaveq?[  ]+(0x0)?\(,%r8(,1)?\)
 [       ]*[0-9a-f]+:[   ]+43 0f ae 04 00[       ]+fxsavel?[     ]+\(%r8,%r8(,1)?\)
 [       ]*[0-9a-f]+:[   ]+4b 0f ae 04 00[       ]+(rex.W(XB)? )?fxsaveq?[       ]+\(%r8,%r8(,1)?\)
+[       ]*[0-9a-f]+:[   ]+40 c5 f9 28 00[       ]+rex vmovapd \(%rax\),%xmm0
 [       ]*[0-9a-f]+:[   ]+40[   ]+rex
 [       ]*[0-9a-f]+:[   ]+41[   ]+rex.B
 [       ]*[0-9a-f]+:[   ]+42[   ]+rex.X
index a0736c44bc58eb77efeefb824630f6c483d4772b..055edb725e9217d3d4ff3e4e120653cff57bf2c3 100644 (file)
@@ -10,6 +10,9 @@ _start:
        rex/fxsave (%r8,%r8)
        rex64/fxsave (%r8,%r8)
 
+       .byte 0x40
+       vmovapd (%rax),%xmm0
+
 # Test prefixes family.
        rex
        rex.B
index ae0166ab41ccae337059bfaa685baf1d8139ff6a..82e5f8ab016a79c1706ffbfe7eb033876f74e07f 100644 (file)
@@ -1,3 +1,7 @@
+2009-11-13  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-dis.c (print_insn): Check rex_ignored.
+
 2009-11-13  H.J. Lu  <hongjiu.lu@intel.com>
 
        * i386-dis.c (ckprefix): Updated to return 0 if number of
index 4d71a00909dba7bdd4123146a6bb1ffe2bdc931b..2b5718f1647648cf7a6195b6e7ce06549e51b9b2 100644 (file)
@@ -10491,7 +10491,7 @@ print_insn (bfd_vma pc, disassemble_info *info)
     }
 
   /* Check if the REX prefix used.  */
-  if ((rex ^ rex_used) == 0)
+  if (rex_ignored == 0 && (rex ^ rex_used) == 0)
     all_prefixes[last_rex_prefix] = 0;
 
   /* Check if the SEG prefix used.  */