Set the first 3byte VEX prefix individually.
authorH.J. Lu <hjl.tools@gmail.com>
Sun, 24 Jan 2010 15:44:05 +0000 (15:44 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Sun, 24 Jan 2010 15:44:05 +0000 (15:44 +0000)
2010-01-24  H.J. Lu  <hongjiu.lu@intel.com>

* config/tc-i386.c (build_vex_prefix): Set i.vex.bytes[0] to
0xc4 individually.

gas/ChangeLog
gas/config/tc-i386.c

index f21a21e09e4d1ea311f11e250de7f4a65f88851b..d0c472329de90b4e5f44e4e3c1d4495f2749f0f1 100644 (file)
@@ -1,3 +1,8 @@
+2010-01-24  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/tc-i386.c (build_vex_prefix): Set i.vex.bytes[0] to
+       0xc4 individually.
+
 2010-01-23  Richard Sandiford  <r.sandiford@uk.ibm.com>
 
        * write.h (fix_at_start): Declare.
index 2529c540e04a87f6c48f9cdb6c0e7a443c1ac96d..7f5ced75f2b5ea447b82dc5c690c430824f077e6 100644 (file)
@@ -2749,18 +2749,20 @@ build_vex_prefix (const insn_template *t)
       unsigned int m, w;
 
       i.vex.length = 3;
-      i.vex.bytes[0] = 0xc4;
 
       switch (i.tm.opcode_modifier.vexopcode)
        {
        case VEX0F:
          m = 0x1;
+         i.vex.bytes[0] = 0xc4;
          break;
        case VEX0F38:
          m = 0x2;
+         i.vex.bytes[0] = 0xc4;
          break;
        case VEX0F3A:
          m = 0x3;
+         i.vex.bytes[0] = 0xc4;
          break;
        case XOP08:
          m = 0x8;