aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog11
-rw-r--r--gas/config/tc-i386.c24
-rw-r--r--gas/testsuite/ChangeLog8
-rw-r--r--gas/testsuite/gas/i386/general.l369
-rw-r--r--gas/testsuite/gas/i386/general.s18
-rw-r--r--gas/testsuite/gas/i386/i386.exp1
-rw-r--r--gas/testsuite/gas/i386/intel.d574
-rw-r--r--gas/testsuite/gas/i386/intel.s568
-rw-r--r--include/opcode/ChangeLog5
-rw-r--r--include/opcode/i386.h4
10 files changed, 1392 insertions, 190 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 574ac0a..feb81f8 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,14 @@
+2000-02-25 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * config/tc-i386.c (md_assemble): Don't swap intersegment jmp and
+ call operands when intel_syntax.
+ (intel_float_operand): Return 2 for "fi...".
+ (i386_operand_modifier): Change "DWORD PTR" test to suit above.
+ Return SHORT_MNEM_SUFFIX for "WORD PTR" when "fi...". Revert
+ earlier "SHORT" change.
+ (md_assemble): When determining suffix from Regs, exclude
+ InOutPortReg.
+
2000-02-24 Nick Clifton <nickc@cygnus.com>
* configure: Add arm-wince, mips-pe and sh-pe targets.
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index cfc666b..3e202b7 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -974,7 +974,7 @@ intel_float_operand (mnemonic)
char *mnemonic;
{
if (mnemonic[0] == 'f' && mnemonic[1] =='i')
- return 0;
+ return 2;
if (mnemonic[0] == 'f')
return 1;
@@ -1265,10 +1265,15 @@ md_assemble (line)
unsigned int found_reverse_match;
int suffix_check;
- /* All intel opcodes have reversed operands except for BOUND and ENTER */
+ /* All intel opcodes have reversed operands except for "bound" and
+ "enter". We also don't reverse intersegment "jmp" and "call"
+ instructions with 2 immediate operands so that the immediate segment
+ precedes the offset, as it does when in AT&T mode. "enter" and the
+ intersegment "jmp" and "call" instructions are the only ones that
+ have two immediate operands. */
if (intel_syntax && i.operands > 1
- && (strcmp (mnemonic, "enter") != 0)
- && (strcmp (mnemonic, "bound") != 0))
+ && (strcmp (mnemonic, "bound") != 0)
+ && !((i.types[0] & Imm) && (i.types[1] & Imm)))
{
union i386_op temp_op;
unsigned int temp_type;
@@ -1491,7 +1496,8 @@ md_assemble (line)
register type. */
int op;
for (op = i.operands; --op >= 0; )
- if (i.types[op] & Reg)
+ if ((i.types[op] & Reg)
+ && !(i.tm.operand_types[op] & InOutPortReg))
{
i.suffix = ((i.types[op] & Reg8) ? BYTE_MNEM_SUFFIX :
(i.types[op] & Reg16) ? WORD_MNEM_SUFFIX :
@@ -2818,14 +2824,17 @@ i386_operand_modifier (op_string, got_a_float)
}
else if (!strncasecmp (*op_string, "WORD PTR", 8))
{
- i.suffix = WORD_MNEM_SUFFIX;
+ if (got_a_float == 2) /* "fi..." */
+ i.suffix = SHORT_MNEM_SUFFIX;
+ else
+ i.suffix = WORD_MNEM_SUFFIX;
*op_string += 8;
return WORD_PTR;
}
else if (!strncasecmp (*op_string, "DWORD PTR", 9))
{
- if (got_a_float)
+ if (got_a_float == 1) /* "f..." */
i.suffix = SHORT_MNEM_SUFFIX;
else
i.suffix = LONG_MNEM_SUFFIX;
@@ -2849,7 +2858,6 @@ i386_operand_modifier (op_string, got_a_float)
else if (!strncasecmp (*op_string, "SHORT", 5))
{
- i.suffix = WORD_MNEM_SUFFIX;
*op_string += 5;
return SHORT;
}
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index da48575..8b5b855 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2000-02-25 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * gas/i386/intel.s: New file, intel version of opcode.s
+ * gas/i386/intel.d: New file, copy opcode.d
+
+ * gas/i386/general.s: Add extra "out" instructions.
+ * gas/i386/general.l: Likewise.
+
2000-01-31 Nick Clifton <nickc@cygnus.com>
* gas/arm/inst.s: Include test of ATPCS register naming
diff --git a/gas/testsuite/gas/i386/general.l b/gas/testsuite/gas/i386/general.l
index a6fc584..5f1041b 100644
--- a/gas/testsuite/gas/i386/general.l
+++ b/gas/testsuite/gas/i386/general.l
@@ -3,20 +3,6 @@
.*:12: Warning:.*
.*:19: Warning:.*
.*:22: Warning:.*
-.*:81: Warning:.*
-.*:82: Warning:.*
-.*:83: Warning:.*
-.*:84: Warning:.*
-.*:85: Warning:.*
-.*:86: Warning:.*
-.*:87: Warning:.*
-.*:88: Warning:.*
-.*:89: Warning:.*
-.*:90: Warning:.*
-.*:91: Warning:.*
-.*:92: Warning:.*
-.*:93: Warning:.*
-.*:94: Warning:.*
.*:95: Warning:.*
.*:96: Warning:.*
.*:97: Warning:.*
@@ -24,17 +10,31 @@
.*:99: Warning:.*
.*:100: Warning:.*
.*:101: Warning:.*
-.*:135: Warning:.*
-.*:162: Warning:.*
-.*:164: Warning:.*
-.*:166: Warning:.*
-.*:168: Warning:.*
-.*:170: Warning:.*
+.*:102: Warning:.*
+.*:103: Warning:.*
+.*:104: Warning:.*
+.*:105: Warning:.*
+.*:106: Warning:.*
+.*:107: Warning:.*
+.*:108: Warning:.*
+.*:109: Warning:.*
+.*:110: Warning:.*
+.*:111: Warning:.*
+.*:112: Warning:.*
+.*:113: Warning:.*
+.*:114: Warning:.*
+.*:115: Warning:.*
+.*:149: Warning:.*
.*:176: Warning:.*
.*:178: Warning:.*
.*:180: Warning:.*
.*:182: Warning:.*
.*:184: Warning:.*
+.*:190: Warning:.*
+.*:192: Warning:.*
+.*:194: Warning:.*
+.*:196: Warning:.*
+.*:198: Warning:.*
1 .psize 0
2 .text
3 # test various segment reg insns
@@ -102,162 +102,175 @@
61 0081 E4FF inb \$255
62 0083 66E502 inw \$2
63 0086 E504 inl \$4
- 64 0088 EF outl %eax,%dx
- 65 0089 E62A out %al, \$42
- 66 008b 66E50D in \$13, %ax
- 67 # These are used in AIX.
- 68 008e 66ED inw \(%dx\)
- 69 0090 66EF outw \(%dx\)
- 70
- 71 0092 A4 movsb
- 72 0093 66A7 cmpsw
- 73 0095 AF scasl
- 74 0096 D7 xlatb
- 75 0097 2EA5 movsl %cs:\(%esi\),%es:\(%edi\)
- 76 0099 0F9303 setae \(%ebx\)
- 77 009c 0F9303 setaeb \(%ebx\)
- 78 009f 0F93C0 setae %al
- 79
- 80 #these should give warnings
- 81 00a2 0C01 orb \$1,%ax
-.*Warning:.*
- 82 00a4 0C01 orb \$1,%eax
-.*Warning:.*
- 83 00a6 80CB01 orb \$1,%bx
-.*Warning:.*
- 84 00a9 80CB01 orb \$1,%ebx
-.*Warning:.*
- 85 00ac D9C1 fldl %st\(1\)
-.*Warning:.*
- 86 00ae DDD2 fstl %st\(2\)
-.*Warning:.*
- 87 00b0 DDDB fstpl %st\(3\)
-.*Warning:.*
- 88 00b2 D8D4 fcoml %st\(4\)
-.*Warning:.*
- 89 00b4 D8DD fcompl %st\(5\)
-.*Warning:.*
- 90 00b6 DEC1 faddp %st\(1\),%st
-.*Warning:.*
- 91 00b8 DECA fmulp %st\(2\),%st
-.*Warning:.*
- 92 00ba DEE3 fsubp %st\(3\),%st
-.*Warning:.*
- 93 00bc DEEC fsubrp %st\(4\),%st
-.*Warning:.*
- 94 00be DEF5 fdivp %st\(5\),%st
-.*Warning:.*
- 95 00c0 DEFE fdivrp %st\(6\),%st
-.*Warning:.*
- 96 00c2 DEC1 fadd
-.*Warning:.*
- 97 00c4 DEE1 fsub
-.*Warning:.*
- 98 00c6 DEC9 fmul
-.*Warning:.*
- 99 00c8 DEF1 fdiv
-.*Warning:.*
- 100 00ca DEE9 fsubr
-.*Warning:.*
- 101 00cc DEF9 fdivr
-.*Warning:.*
- 102 #these should all be legal
- 103 00ce 0FA31556 341200 btl %edx, 0x123456
- 104 00d5 0FA3D0 btl %edx, %eax
- 105 00d8 0C01 orb \$1,%al
- 106 00da 80CB01 orb \$1,%bl
- 107 00dd A1110000 00 movl 17,%eax
- 108 00e2 A1110000 00 mov 17,%eax
- 109 00e7 66ED inw %dx,%ax
- 110 00e9 ED inl %dx,%eax
- 111 00ea 66ED inw \(%dx\),%ax
- 112 00ec ED inl \(%dx\),%eax
- 113 00ed EC in \(%dx\),%al
- 114 00ee 66ED in \(%dx\),%ax
- 115 00f0 ED in \(%dx\),%eax
- 116 00f1 0FB61437 movzbl \(%edi,%esi\),%edx
- 117 00f5 0FB6451C movzbl 28\(%ebp\),%eax
- 118 00f9 0FB6C0 movzbl %al,%eax
- 119 00fc 0FB6F1 movzbl %cl,%esi
- 120 00ff 26D7 xlat %es:\(%ebx\)
- 121 0101 D7 xlat
- 122 0102 D7 xlatb
- 123 0103 DDD8 1: fstp %st\(0\)
- 124 0105 E2FC loop 1b
- 125 0107 F6F1 divb %cl
- 126 0109 66F7F1 divw %cx
- 127 010c F7F1 divl %ecx
- 128 010e F6F1 div %cl
- 129 0110 66F7F1 div %cx
- 130 0113 F7F1 div %ecx
- 131 0115 F6F1 div %cl,%al
- 132 0117 66F7F1 div %cx,%ax
- 133 011a F7F1 div %ecx,%eax
- 134 011c 8EDE mov %si,%ds
- 135 011e 8EDE movl %si,%ds # warning here
-.*Warning:.*
- 136 0120 1E pushl %ds
- 137 0121 1E push %ds
- 138 0122 A0000000 00 mov 0,%al
- 139 0127 66A10000 0100 mov 0x10000,%ax
- 140 012d 89C3 mov %eax,%ebx
- 141 012f 9C pushf
- 142 0130 9C pushfl
- 143 0131 669C pushfw
- 144 0133 9D popf
- 145 0134 9D popfl
- 146 0135 669D popfw
- 147 0137 89341D00 000000 mov %esi,\(,%ebx,1\)
- 148 013e 80250000 00007F andb \$~0x80,foo
- 149
- 150 #check 16-bit code auto address prefix
- 151 .code16gcc
- 152 0145 67668D95 00FFFFFF leal -256\(%ebp\),%edx
- 153 014d 6788857F FFFFFF mov %al,-129\(%ebp\)
- 154 0154 67886580 mov %ah,-128\(%ebp\)
- 155 0158 67668D9D 20F9FFFF leal -1760\(%ebp\),%ebx
- 156 0160 67668984 248C0000 movl %eax,140\(%esp\)
- 156 00
- 157
- 158 .code32
- 159 0169 EB98 jmp 1b
- 160 016b E9(FCFF|90FE)FF FF jmp xxx
- 161 0170 FF250000 0000 jmp \*xxx
- 162 0176 FF250000 0000 jmp xxx\(,1\)
-.*Warning:.*
- 163 017c FFE7 jmp \*%edi
- 164 017e FFE7 jmp %edi
-.*Warning:.*
- 165 0180 FF27 jmp \*\(%edi\)
- 166 0182 FF27 jmp \(%edi\)
-.*Warning:.*
- 167 0184 FF2CBD00 000000 ljmp \*xxx\(,%edi,4\)
- 168 018b FF2CBD00 000000 ljmp xxx\(,%edi,4\)
-.*Warning:.*
- 169 0192 FF2D0000 0000 ljmp \*xxx
- 170 0198 FF2D0000 0000 ljmp xxx\(,1\)
-.*Warning:.*
- 171 019e EA000000 003412 ljmp \$0x1234,\$xxx
- 172
- 173 01a5 E859FFFF FF call 1b
- 174 01aa E8(FCFF|51FE)FF FF call xxx
- 175 01af FF150000 0000 call \*xxx
- 176 01b5 FF150000 0000 call xxx\(,1\)
-.*Warning:.*
- 177 01bb FFD7 call \*%edi
- 178 01bd FFD7 call %edi
-.*Warning:.*
- 179 01bf FF17 call \*\(%edi\)
- 180 01c1 FF17 call \(%edi\)
-.*Warning:.*
- 181 01c3 FF1CBD00 000000 lcall \*xxx\(,%edi,4\)
- 182 01ca FF1CBD00 000000 lcall xxx\(,%edi,4\)
-.*Warning:.*
- 183 01d1 FF1D0000 0000 lcall \*xxx
- 184 01d7 FF1D0000 0000 lcall xxx\(,1\)
-.*Warning:.*
- 185 01dd 9A000000 003412 lcall \$0x1234,\$xxx
+ 64 0088 66E50D in \$13, %ax
+ 65 008b EE out %al,%dx
+ 66 008c 66EF out %ax,%dx
+ 67 008e EF out %eax,%dx
+ 68 008f EE out %al,\(%dx\)
+ 69 0090 66EF out %ax,\(%dx\)
+ 70 0092 EF out %eax,\(%dx\)
+ 71 0093 EE outb %al,%dx
+ 72 0094 66EF outw %ax,%dx
+ 73 0096 EF outl %eax,%dx
+ 74 0097 EE outb %dx
+ 75 0098 66EF outw %dx
+ 76 009a EF outl %dx
+ 77 009b E6FF outb \$255
+ 78 009d 66E702 outw \$2
+ 79 00a0 E704 outl \$4
+ 80 00a2 66E70D out %ax, \$13
+ 81 # These are used in AIX.
+ 82 00a5 66ED inw \(%dx\)
+ 83 00a7 66EF outw \(%dx\)
+ 84
+ 85 00a9 A4 movsb
+ 86 00aa 66A7 cmpsw
+ 87 00ac AF scasl
+ 88 00ad D7 xlatb
+ 89 00ae 2EA5 movsl %cs:\(%esi\),%es:\(%edi\)
+ 90 00b0 0F9303 setae \(%ebx\)
+ 91 00b3 0F9303 setaeb \(%ebx\)
+ 92 00b6 0F93C0 setae %al
+ 93
+ 94 #these should give warnings
+ 95 00b9 0C01 orb \$1,%ax
+.*Warning:.*
+ 96 00bb 0C01 orb \$1,%eax
+.*Warning:.*
+ 97 00bd 80CB01 orb \$1,%bx
+.*Warning:.*
+ 98 00c0 80CB01 orb \$1,%ebx
+.*Warning:.*
+ 99 00c3 D9C1 fldl %st\(1\)
+.*Warning:.*
+ 100 00c5 DDD2 fstl %st\(2\)
+.*Warning:.*
+ 101 00c7 DDDB fstpl %st\(3\)
+.*Warning:.*
+ 102 00c9 D8D4 fcoml %st\(4\)
+.*Warning:.*
+ 103 00cb D8DD fcompl %st\(5\)
+.*Warning:.*
+ 104 00cd DEC1 faddp %st\(1\),%st
+.*Warning:.*
+ 105 00cf DECA fmulp %st\(2\),%st
+.*Warning:.*
+ 106 00d1 DEE3 fsubp %st\(3\),%st
+.*Warning:.*
+ 107 00d3 DEEC fsubrp %st\(4\),%st
+.*Warning:.*
+ 108 00d5 DEF5 fdivp %st\(5\),%st
+.*Warning:.*
+ 109 00d7 DEFE fdivrp %st\(6\),%st
+.*Warning:.*
+ 110 00d9 DEC1 fadd
+.*Warning:.*
+ 111 00db DEE1 fsub
+.*Warning:.*
+ 112 00dd DEC9 fmul
+.*Warning:.*
+ 113 00df DEF1 fdiv
+.*Warning:.*
+ 114 00e1 DEE9 fsubr
+.*Warning:.*
+ 115 00e3 DEF9 fdivr
+.*Warning:.*
+ 116 #these should all be legal
+ 117 00e5 0FA31556 341200 btl %edx, 0x123456
+ 118 00ec 0FA3D0 btl %edx, %eax
+ 119 00ef 0C01 orb \$1,%al
+ 120 00f1 80CB01 orb \$1,%bl
+ 121 00f4 A1110000 00 movl 17,%eax
+ 122 00f9 A1110000 00 mov 17,%eax
+ 123 00fe 66ED inw %dx,%ax
+ 124 0100 ED inl %dx,%eax
+ 125 0101 66ED inw \(%dx\),%ax
+ 126 0103 ED inl \(%dx\),%eax
+ 127 0104 EC in \(%dx\),%al
+ 128 0105 66ED in \(%dx\),%ax
+ 129 0107 ED in \(%dx\),%eax
+ 130 0108 0FB61437 movzbl \(%edi,%esi\),%edx
+ 131 010c 0FB6451C movzbl 28\(%ebp\),%eax
+ 132 0110 0FB6C0 movzbl %al,%eax
+ 133 0113 0FB6F1 movzbl %cl,%esi
+ 134 0116 26D7 xlat %es:\(%ebx\)
+ 135 0118 D7 xlat
+ 136 0119 D7 xlatb
+ 137 011a DDD8 1: fstp %st\(0\)
+ 138 011c E2FC loop 1b
+ 139 011e F6F1 divb %cl
+ 140 0120 66F7F1 divw %cx
+ 141 0123 F7F1 divl %ecx
+ 142 0125 F6F1 div %cl
+ 143 0127 66F7F1 div %cx
+ 144 012a F7F1 div %ecx
+ 145 012c F6F1 div %cl,%al
+ 146 012e 66F7F1 div %cx,%ax
+ 147 0131 F7F1 div %ecx,%eax
+ 148 0133 8EDE mov %si,%ds
+ 149 0135 8EDE movl %si,%ds # warning here
+.*Warning:.*
+ 150 0137 1E pushl %ds
+ 151 0138 1E push %ds
+ 152 0139 A0000000 00 mov 0,%al
+ 153 013e 66A10000 0100 mov 0x10000,%ax
+ 154 0144 89C3 mov %eax,%ebx
+ 155 0146 9C pushf
+ 156 0147 9C pushfl
+ 157 0148 669C pushfw
+ 158 014a 9D popf
+ 159 014b 9D popfl
+ 160 014c 669D popfw
+ 161 014e 89341D00 000000 mov %esi,\(,%ebx,1\)
+ 162 0155 80250000 00007F andb \$~0x80,foo
+ 163
+ 164 #check 16-bit code auto address prefix
+ 165 .code16gcc
+ 166 015c 67668D95 00FFFFFF leal -256\(%ebp\),%edx
+ 167 0164 6788857F FFFFFF mov %al,-129\(%ebp\)
+ 168 016b 67886580 mov %ah,-128\(%ebp\)
+ 169 016f 67668D9D 20F9FFFF leal -1760\(%ebp\),%ebx
+ 170 0177 67668984 248C0000 movl %eax,140\(%esp\)
+ 170 00
+ 171
+ 172 .code32
+ 173 0180 EB98 jmp 1b
+ 174 0182 E9(FCFF|90FE)FF FF jmp xxx
+ 175 0187 FF250000 0000 jmp \*xxx
+ 176 018d FF250000 0000 jmp xxx\(,1\)
+.*Warning:.*
+ 177 0193 FFE7 jmp \*%edi
+ 178 0195 FFE7 jmp %edi
+.*Warning:.*
+ 179 0197 FF27 jmp \*\(%edi\)
+ 180 0199 FF27 jmp \(%edi\)
+.*Warning:.*
+ 181 019b FF2CBD00 000000 ljmp \*xxx\(,%edi,4\)
+ 182 01a2 FF2CBD00 000000 ljmp xxx\(,%edi,4\)
+.*Warning:.*
+ 183 01a9 FF2D0000 0000 ljmp \*xxx
+ 184 01af FF2D0000 0000 ljmp xxx\(,1\)
+.*Warning:.*
+ 185 01b5 EA000000 003412 ljmp \$0x1234,\$xxx
186
- 187 # Force a good alignment.
- 188 01e4 00000000 00000000 .p2align 4,0
- 188 00000000
+ 187 01bc E859FFFF FF call 1b
+ 188 01c1 E8(FCFF|51FE)FF FF call xxx
+ 189 01c6 FF150000 0000 call \*xxx
+ 190 01cc FF150000 0000 call xxx\(,1\)
+.*Warning:.*
+ 191 01d2 FFD7 call \*%edi
+ 192 01d4 FFD7 call %edi
+.*Warning:.*
+ 193 01d6 FF17 call \*\(%edi\)
+ 194 01d8 FF17 call \(%edi\)
+.*Warning:.*
+ 195 01da FF1CBD00 000000 lcall \*xxx\(,%edi,4\)
+ 196 01e1 FF1CBD00 000000 lcall xxx\(,%edi,4\)
+.*Warning:.*
+ 197 01e8 FF1D0000 0000 lcall \*xxx
+ 198 01ee FF1D0000 0000 lcall xxx\(,1\)
+.*Warning:.*
+ 199 01f4 9A000000 003412 lcall \$0x1234,\$xxx
+ 200
+ 201 # Force a good alignment.
+ 202 01fb 00000000 00 .p2align 4,0
diff --git a/gas/testsuite/gas/i386/general.s b/gas/testsuite/gas/i386/general.s
index c794157..8d08dbf 100644
--- a/gas/testsuite/gas/i386/general.s
+++ b/gas/testsuite/gas/i386/general.s
@@ -61,9 +61,23 @@
inb $255
inw $2
inl $4
- outl %eax,%dx
- out %al, $42
in $13, %ax
+ out %al,%dx
+ out %ax,%dx
+ out %eax,%dx
+ out %al,(%dx)
+ out %ax,(%dx)
+ out %eax,(%dx)
+ outb %al,%dx
+ outw %ax,%dx
+ outl %eax,%dx
+ outb %dx
+ outw %dx
+ outl %dx
+ outb $255
+ outw $2
+ outl $4
+ out %ax, $13
# These are used in AIX.
inw (%dx)
outw (%dx)
diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp
index a431bb6..13ac8ef 100644
--- a/gas/testsuite/gas/i386/i386.exp
+++ b/gas/testsuite/gas/i386/i386.exp
@@ -23,6 +23,7 @@ if [istarget "i*86-*-*"] then {
run_list_test "modrm" "-al --listing-lhs-width=2"
run_dump_test "naked"
run_dump_test "opcode"
+ run_dump_test "intel"
run_dump_test "prefix"
run_dump_test "amd"
run_dump_test "katmai"
diff --git a/gas/testsuite/gas/i386/intel.d b/gas/testsuite/gas/i386/intel.d
new file mode 100644
index 0000000..76f0f8a
--- /dev/null
+++ b/gas/testsuite/gas/i386/intel.d
@@ -0,0 +1,574 @@
+#as: -J
+#objdump: -dw
+#name: i386 intel
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+0+000 <foo>:
+ 0: 00 90 90 90 90 90 [ ]*add %dl,0x90909090\(%eax\)
+ 6: 01 90 90 90 90 90 [ ]*add %edx,0x90909090\(%eax\)
+ c: 02 90 90 90 90 90 [ ]*add 0x90909090\(%eax\),%dl
+ 12: 03 90 90 90 90 90 [ ]*add 0x90909090\(%eax\),%edx
+ 18: 04 90 [ ]*add \$0x90,%al
+ 1a: 05 90 90 90 90 [ ]*add \$0x90909090,%eax
+ 1f: 06 [ ]*push %es
+ 20: 07 [ ]*pop %es
+ 21: 08 90 90 90 90 90 [ ]*or %dl,0x90909090\(%eax\)
+ 27: 09 90 90 90 90 90 [ ]*or %edx,0x90909090\(%eax\)
+ 2d: 0a 90 90 90 90 90 [ ]*or 0x90909090\(%eax\),%dl
+ 33: 0b 90 90 90 90 90 [ ]*or 0x90909090\(%eax\),%edx
+ 39: 0c 90 [ ]*or \$0x90,%al
+ 3b: 0d 90 90 90 90 [ ]*or \$0x90909090,%eax
+ 40: 0e [ ]*push %cs
+ 41: 10 90 90 90 90 90 [ ]*adc %dl,0x90909090\(%eax\)
+ 47: 11 90 90 90 90 90 [ ]*adc %edx,0x90909090\(%eax\)
+ 4d: 12 90 90 90 90 90 [ ]*adc 0x90909090\(%eax\),%dl
+ 53: 13 90 90 90 90 90 [ ]*adc 0x90909090\(%eax\),%edx
+ 59: 14 90 [ ]*adc \$0x90,%al
+ 5b: 15 90 90 90 90 [ ]*adc \$0x90909090,%eax
+ 60: 16 [ ]*push %ss
+ 61: 17 [ ]*pop %ss
+ 62: 18 90 90 90 90 90 [ ]*sbb %dl,0x90909090\(%eax\)
+ 68: 19 90 90 90 90 90 [ ]*sbb %edx,0x90909090\(%eax\)
+ 6e: 1a 90 90 90 90 90 [ ]*sbb 0x90909090\(%eax\),%dl
+ 74: 1b 90 90 90 90 90 [ ]*sbb 0x90909090\(%eax\),%edx
+ 7a: 1c 90 [ ]*sbb \$0x90,%al
+ 7c: 1d 90 90 90 90 [ ]*sbb \$0x90909090,%eax
+ 81: 1e [ ]*push %ds
+ 82: 1f [ ]*pop %ds
+ 83: 20 90 90 90 90 90 [ ]*and %dl,0x90909090\(%eax\)
+ 89: 21 90 90 90 90 90 [ ]*and %edx,0x90909090\(%eax\)
+ 8f: 22 90 90 90 90 90 [ ]*and 0x90909090\(%eax\),%dl
+ 95: 23 90 90 90 90 90 [ ]*and 0x90909090\(%eax\),%edx
+ 9b: 24 90 [ ]*and \$0x90,%al
+ 9d: 25 90 90 90 90 [ ]*and \$0x90909090,%eax
+ a2: 27 [ ]*daa
+ a3: 28 90 90 90 90 90 [ ]*sub %dl,0x90909090\(%eax\)
+ a9: 29 90 90 90 90 90 [ ]*sub %edx,0x90909090\(%eax\)
+ af: 2a 90 90 90 90 90 [ ]*sub 0x90909090\(%eax\),%dl
+ b5: 2b 90 90 90 90 90 [ ]*sub 0x90909090\(%eax\),%edx
+ bb: 2c 90 [ ]*sub \$0x90,%al
+ bd: 2d 90 90 90 90 [ ]*sub \$0x90909090,%eax
+ c2: 2f [ ]*das
+ c3: 30 90 90 90 90 90 [ ]*xor %dl,0x90909090\(%eax\)
+ c9: 31 90 90 90 90 90 [ ]*xor %edx,0x90909090\(%eax\)
+ cf: 32 90 90 90 90 90 [ ]*xor 0x90909090\(%eax\),%dl
+ d5: 33 90 90 90 90 90 [ ]*xor 0x90909090\(%eax\),%edx
+ db: 34 90 [ ]*xor \$0x90,%al
+ dd: 35 90 90 90 90 [ ]*xor \$0x90909090,%eax
+ e2: 37 [ ]*aaa
+ e3: 38 90 90 90 90 90 [ ]*cmp %dl,0x90909090\(%eax\)
+ e9: 39 90 90 90 90 90 [ ]*cmp %edx,0x90909090\(%eax\)
+ ef: 3a 90 90 90 90 90 [ ]*cmp 0x90909090\(%eax\),%dl
+ f5: 3b 90 90 90 90 90 [ ]*cmp 0x90909090\(%eax\),%edx
+ fb: 3c 90 [ ]*cmp \$0x90,%al
+ fd: 3d 90 90 90 90 [ ]*cmp \$0x90909090,%eax
+ 102: 3f [ ]*aas
+ 103: 40 [ ]*inc %eax
+ 104: 41 [ ]*inc %ecx
+ 105: 42 [ ]*inc %edx
+ 106: 43 [ ]*inc %ebx
+ 107: 44 [ ]*inc %esp
+ 108: 45 [ ]*inc %ebp
+ 109: 46 [ ]*inc %esi
+ 10a: 47 [ ]*inc %edi
+ 10b: 48 [ ]*dec %eax
+ 10c: 49 [ ]*dec %ecx
+ 10d: 4a [ ]*dec %edx
+ 10e: 4b [ ]*dec %ebx
+ 10f: 4c [ ]*dec %esp
+ 110: 4d [ ]*dec %ebp
+ 111: 4e [ ]*dec %esi
+ 112: 4f [ ]*dec %edi
+ 113: 50 [ ]*push %eax
+ 114: 51 [ ]*push %ecx
+ 115: 52 [ ]*push %edx
+ 116: 53 [ ]*push %ebx
+ 117: 54 [ ]*push %esp
+ 118: 55 [ ]*push %ebp
+ 119: 56 [ ]*push %esi
+ 11a: 57 [ ]*push %edi
+ 11b: 58 [ ]*pop %eax
+ 11c: 59 [ ]*pop %ecx
+ 11d: 5a [ ]*pop %edx
+ 11e: 5b [ ]*pop %ebx
+ 11f: 5c [ ]*pop %esp
+ 120: 5d [ ]*pop %ebp
+ 121: 5e [ ]*pop %esi
+ 122: 5f [ ]*pop %edi
+ 123: 60 [ ]*pusha
+ 124: 61 [ ]*popa
+ 125: 62 90 90 90 90 90 [ ]*bound %edx,0x90909090\(%eax\)
+ 12b: 63 90 90 90 90 90 [ ]*arpl %dx,0x90909090\(%eax\)
+ 131: 68 90 90 90 90 [ ]*push \$0x90909090
+ 136: 69 90 90 90 90 90 90 90 90 90 [ ]*imul \$0x90909090,0x90909090\(%eax\),%edx
+ 140: 6a 90 [ ]*push \$0xffffff90
+ 142: 6b 90 90 90 90 90 90 [ ]*imul \$0xffffff90,0x90909090\(%eax\),%edx
+ 149: 6c [ ]*insb \(%dx\),%es:\(%edi\)
+ 14a: 6d [ ]*insl \(%dx\),%es:\(%edi\)
+ 14b: 6e [ ]*outsb %ds:\(%esi\),\(%dx\)
+ 14c: 6f [ ]*outsl %ds:\(%esi\),\(%dx\)
+ 14d: 70 90 [ ]*jo (0x)?df.*
+ 14f: 71 90 [ ]*jno (0x)?e1.*
+ 151: 72 90 [ ]*jb (0x)?e3.*
+ 153: 73 90 [ ]*jae (0x)?e5.*
+ 155: 74 90 [ ]*je (0x)?e7.*
+ 157: 75 90 [ ]*jne (0x)?e9.*
+ 159: 76 90 [ ]*jbe (0x)?eb.*
+ 15b: 77 90 [ ]*ja (0x)?ed.*
+ 15d: 78 90 [ ]*js (0x)?ef.*
+ 15f: 79 90 [ ]*jns (0x)?f1.*
+ 161: 7a 90 [ ]*jp (0x)?f3.*
+ 163: 7b 90 [ ]*jnp (0x)?f5.*
+ 165: 7c 90 [ ]*jl (0x)?f7.*
+ 167: 7d 90 [ ]*jge (0x)?f9.*
+ 169: 7e 90 [ ]*jle (0x)?fb.*
+ 16b: 7f 90 [ ]*jg (0x)?fd.*
+ 16d: 80 90 90 90 90 90 90 [ ]*adcb \$0x90,0x90909090\(%eax\)
+ 174: 81 90 90 90 90 90 90 90 90 90 [ ]*adcl \$0x90909090,0x90909090\(%eax\)
+ 17e: 83 90 90 90 90 90 90 [ ]*adcl \$0xffffff90,0x90909090\(%eax\)
+ 185: 84 90 90 90 90 90 [ ]*test %dl,0x90909090\(%eax\)
+ 18b: 85 90 90 90 90 90 [ ]*test %edx,0x90909090\(%eax\)
+ 191: 86 90 90 90 90 90 [ ]*xchg %dl,0x90909090\(%eax\)
+ 197: 87 90 90 90 90 90 [ ]*xchg %edx,0x90909090\(%eax\)
+ 19d: 88 90 90 90 90 90 [ ]*mov %dl,0x90909090\(%eax\)
+ 1a3: 89 90 90 90 90 90 [ ]*mov %edx,0x90909090\(%eax\)
+ 1a9: 8a 90 90 90 90 90 [ ]*mov 0x90909090\(%eax\),%dl
+ 1af: 8b 90 90 90 90 90 [ ]*mov 0x90909090\(%eax\),%edx
+ 1b5: 8c 90 90 90 90 90 [ ]*movl %ss,0x90909090\(%eax\)
+ 1bb: 8d 90 90 90 90 90 [ ]*lea 0x90909090\(%eax\),%edx
+ 1c1: 8e 90 90 90 90 90 [ ]*movl 0x90909090\(%eax\),%ss
+ 1c7: 8f 80 90 90 90 90 [ ]*popl 0x90909090\(%eax\)
+ 1cd: 90 [ ]*nop
+ 1ce: 91 [ ]*xchg %eax,%ecx
+ 1cf: 92 [ ]*xchg %eax,%edx
+ 1d0: 93 [ ]*xchg %eax,%ebx
+ 1d1: 94 [ ]*xchg %eax,%esp
+ 1d2: 95 [ ]*xchg %eax,%ebp
+ 1d3: 96 [ ]*xchg %eax,%esi
+ 1d4: 97 [ ]*xchg %eax,%edi
+ 1d5: 98 [ ]*cwtl
+ 1d6: 99 [ ]*cltd
+ 1d7: 9a 90 90 90 90 90 90 [ ]*lcall \$0x9090,\$0x90909090
+ 1de: 9b [ ]*fwait
+ 1df: 9c [ ]*pushf
+ 1e0: 9d [ ]*popf
+ 1e1: 9e [ ]*sahf
+ 1e2: 9f [ ]*lahf
+ 1e3: a0 90 90 90 90 [ ]*mov 0x90909090,%al
+ 1e8: a1 90 90 90 90 [ ]*mov 0x90909090,%eax
+ 1ed: a2 90 90 90 90 [ ]*mov %al,0x90909090
+ 1f2: a3 90 90 90 90 [ ]*mov %eax,0x90909090
+ 1f7: a4 [ ]*movsb %ds:\(%esi\),%es:\(%edi\)
+ 1f8: a5 [ ]*movsl %ds:\(%esi\),%es:\(%edi\)
+ 1f9: a6 [ ]*cmpsb %es:\(%edi\),%ds:\(%esi\)
+ 1fa: a7 [ ]*cmpsl %es:\(%edi\),%ds:\(%esi\)
+ 1fb: a8 90 [ ]*test \$0x90,%al
+ 1fd: a9 90 90 90 90 [ ]*test \$0x90909090,%eax
+ 202: aa [ ]*stos %al,%es:\(%edi\)
+ 203: ab [ ]*stos %eax,%es:\(%edi\)
+ 204: ac [ ]*lods %ds:\(%esi\),%al
+ 205: ad [ ]*lods %ds:\(%esi\),%eax
+ 206: ae [ ]*scas %es:\(%edi\),%al
+ 207: af [ ]*scas %es:\(%edi\),%eax
+ 208: b0 90 [ ]*mov \$0x90,%al
+ 20a: b1 90 [ ]*mov \$0x90,%cl
+ 20c: b2 90 [ ]*mov \$0x90,%dl
+ 20e: b3 90 [ ]*mov \$0x90,%bl
+ 210: b4 90 [ ]*mov \$0x90,%ah
+ 212: b5 90 [ ]*mov \$0x90,%ch
+ 214: b6 90 [ ]*mov \$0x90,%dh
+ 216: b7 90 [ ]*mov \$0x90,%bh
+ 218: b8 90 90 90 90 [ ]*mov \$0x90909090,%eax
+ 21d: b9 90 90 90 90 [ ]*mov \$0x90909090,%ecx
+ 222: ba 90 90 90 90 [ ]*mov \$0x90909090,%edx
+ 227: bb 90 90 90 90 [ ]*mov \$0x90909090,%ebx
+ 22c: bc 90 90 90 90 [ ]*mov \$0x90909090,%esp
+ 231: bd 90 90 90 90 [ ]*mov \$0x90909090,%ebp
+ 236: be 90 90 90 90 [ ]*mov \$0x90909090,%esi
+ 23b: bf 90 90 90 90 [ ]*mov \$0x90909090,%edi
+ 240: c0 90 90 90 90 90 90 [ ]*rclb \$0x90,0x90909090\(%eax\)
+ 247: c1 90 90 90 90 90 90 [ ]*rcll \$0x90,0x90909090\(%eax\)
+ 24e: c2 90 90 [ ]*ret \$0x9090
+ 251: c3 [ ]*ret
+ 252: c4 90 90 90 90 90 [ ]*les 0x90909090\(%eax\),%edx
+ 258: c5 90 90 90 90 90 [ ]*lds 0x90909090\(%eax\),%edx
+ 25e: c6 80 90 90 90 90 90 [ ]*movb \$0x90,0x90909090\(%eax\)
+ 265: c7 80 90 90 90 90 90 90 90 90 [ ]*movl \$0x90909090,0x90909090\(%eax\)
+ 26f: c8 90 90 90 [ ]*enter \$0x9090,\$0x90
+ 273: c9 [ ]*leave
+ 274: ca 90 90 [ ]*lret \$0x9090
+ 277: cb [ ]*lret
+ 278: cc [ ]*int3
+ 279: cd 90 [ ]*int \$0x90
+ 27b: ce [ ]*into
+ 27c: cf [ ]*iret
+ 27d: d0 90 90 90 90 90 [ ]*rclb 0x90909090\(%eax\)
+ 283: d1 90 90 90 90 90 [ ]*rcll 0x90909090\(%eax\)
+ 289: d2 90 90 90 90 90 [ ]*rclb %cl,0x90909090\(%eax\)
+ 28f: d3 90 90 90 90 90 [ ]*rcll %cl,0x90909090\(%eax\)
+ 295: d4 90 [ ]*aam \$0xffffff90
+ 297: d5 90 [ ]*aad \$0xffffff90
+ 299: d7 [ ]*xlat %ds:\(%ebx\)
+ 29a: d8 90 90 90 90 90 [ ]*fcoms 0x90909090\(%eax\)
+ 2a0: d9 90 90 90 90 90 [ ]*fsts 0x90909090\(%eax\)
+ 2a6: da 90 90 90 90 90 [ ]*ficoml 0x90909090\(%eax\)
+ 2ac: db 90 90 90 90 90 [ ]*fistl 0x90909090\(%eax\)
+ 2b2: dc 90 90 90 90 90 [ ]*fcoml 0x90909090\(%eax\)
+ 2b8: dd 90 90 90 90 90 [ ]*fstl 0x90909090\(%eax\)
+ 2be: de 90 90 90 90 90 [ ]*ficom 0x90909090\(%eax\)
+ 2c4: df 90 90 90 90 90 [ ]*fist 0x90909090\(%eax\)
+ 2ca: e0 90 [ ]*loopne (0x)?25c.*
+ 2cc: e1 90 [ ]*loope (0x)?25e.*
+ 2ce: e2 90 [ ]*loop (0x)?260.*
+ 2d0: e3 90 [ ]*jecxz (0x)?262.*
+ 2d2: e4 90 [ ]*in \$0x90,%al
+ 2d4: e5 90 [ ]*in \$0x90,%eax
+ 2d6: e6 90 [ ]*out %al,\$0x90
+ 2d8: e7 90 [ ]*out %eax,\$0x90
+ 2da: e8 90 90 90 90 [ ]*call (0x)?9090936f.*
+ 2df: e9 90 90 90 90 [ ]*jmp (0x)?90909374.*
+ 2e4: ea 90 90 90 90 90 90 [ ]*ljmp \$0x9090,\$0x90909090
+ 2eb: eb 90 [ ]*jmp (0x)?27d.*
+ 2ed: ec [ ]*in \(%dx\),%al
+ 2ee: ed [ ]*in \(%dx\),%eax
+ 2ef: ee [ ]*out %al,\(%dx\)
+ 2f0: ef [ ]*out %eax,\(%dx\)
+ 2f1: f4 [ ]*hlt
+ 2f2: f5 [ ]*cmc
+ 2f3: f6 90 90 90 90 90 [ ]*notb 0x90909090\(%eax\)
+ 2f9: f7 90 90 90 90 90 [ ]*notl 0x90909090\(%eax\)
+ 2ff: f8 [ ]*clc
+ 300: f9 [ ]*stc
+ 301: fa [ ]*cli
+ 302: fb [ ]*sti
+ 303: fc [ ]*cld
+ 304: fd [ ]*std
+ 305: ff 90 90 90 90 90 [ ]*call \*0x90909090\(%eax\)
+ 30b: 0f 00 90 90 90 90 90 [ ]*lldt 0x90909090\(%eax\)
+ 312: 0f 01 90 90 90 90 90 [ ]*lgdt 0x90909090\(%eax\)
+ 319: 0f 02 90 90 90 90 90 [ ]*lar 0x90909090\(%eax\),%edx
+ 320: 0f 03 90 90 90 90 90 [ ]*lsl 0x90909090\(%eax\),%edx
+ 327: 0f 06 [ ]*clts
+ 329: 0f 08 [ ]*invd
+ 32b: 0f 09 [ ]*wbinvd
+ 32d: 0f 0b [ ]*ud2a
+ 32f: 0f 20 d0 [ ]*mov %cr2,%eax
+ 332: 0f 21 d0 [ ]*mov %db2,%eax
+ 335: 0f 22 d0 [ ]*mov %eax,%cr2
+ 338: 0f 23 d0 [ ]*mov %eax,%db2
+ 33b: 0f 24 d0 [ ]*mov %tr2,%eax
+ 33e: 0f 26 d0 [ ]*mov %eax,%tr2
+ 341: 0f 30 [ ]*wrmsr
+ 343: 0f 31 [ ]*rdtsc
+ 345: 0f 32 [ ]*rdmsr
+ 347: 0f 33 [ ]*rdpmc
+ 349: 0f 40 90 90 90 90 90 [ ]*cmovo 0x90909090\(%eax\),%edx
+ 350: 0f 41 90 90 90 90 90 [ ]*cmovno 0x90909090\(%eax\),%edx
+ 357: 0f 42 90 90 90 90 90 [ ]*cmovb 0x90909090\(%eax\),%edx
+ 35e: 0f 43 90 90 90 90 90 [ ]*cmovae 0x90909090\(%eax\),%edx
+ 365: 0f 44 90 90 90 90 90 [ ]*cmove 0x90909090\(%eax\),%edx
+ 36c: 0f 45 90 90 90 90 90 [ ]*cmovne 0x90909090\(%eax\),%edx
+ 373: 0f 46 90 90 90 90 90 [ ]*cmovbe 0x90909090\(%eax\),%edx
+ 37a: 0f 47 90 90 90 90 90 [ ]*cmova 0x90909090\(%eax\),%edx
+ 381: 0f 48 90 90 90 90 90 [ ]*cmovs 0x90909090\(%eax\),%edx
+ 388: 0f 49 90 90 90 90 90 [ ]*cmovns 0x90909090\(%eax\),%edx
+ 38f: 0f 4a 90 90 90 90 90 [ ]*cmovp 0x90909090\(%eax\),%edx
+ 396: 0f 4b 90 90 90 90 90 [ ]*cmovnp 0x90909090\(%eax\),%edx
+ 39d: 0f 4c 90 90 90 90 90 [ ]*cmovl 0x90909090\(%eax\),%edx
+ 3a4: 0f 4d 90 90 90 90 90 [ ]*cmovge 0x90909090\(%eax\),%edx
+ 3ab: 0f 4e 90 90 90 90 90 [ ]*cmovle 0x90909090\(%eax\),%edx
+ 3b2: 0f 4f 90 90 90 90 90 [ ]*cmovg 0x90909090\(%eax\),%edx
+ 3b9: 0f 60 90 90 90 90 90 [ ]*punpcklbw 0x90909090\(%eax\),%mm2
+ 3c0: 0f 61 90 90 90 90 90 [ ]*punpcklwd 0x90909090\(%eax\),%mm2
+ 3c7: 0f 62 90 90 90 90 90 [ ]*punpckldq 0x90909090\(%eax\),%mm2
+ 3ce: 0f 63 90 90 90 90 90 [ ]*packsswb 0x90909090\(%eax\),%mm2
+ 3d5: 0f 64 90 90 90 90 90 [ ]*pcmpgtb 0x90909090\(%eax\),%mm2
+ 3dc: 0f 65 90 90 90 90 90 [ ]*pcmpgtw 0x90909090\(%eax\),%mm2
+ 3e3: 0f 66 90 90 90 90 90 [ ]*pcmpgtd 0x90909090\(%eax\),%mm2
+ 3ea: 0f 67 90 90 90 90 90 [ ]*packuswb 0x90909090\(%eax\),%mm2
+ 3f1: 0f 68 90 90 90 90 90 [ ]*punpckhbw 0x90909090\(%eax\),%mm2
+ 3f8: 0f 69 90 90 90 90 90 [ ]*punpckhwd 0x90909090\(%eax\),%mm2
+ 3ff: 0f 6a 90 90 90 90 90 [ ]*punpckhdq 0x90909090\(%eax\),%mm2
+ 406: 0f 6b 90 90 90 90 90 [ ]*packssdw 0x90909090\(%eax\),%mm2
+ 40d: 0f 6e 90 90 90 90 90 [ ]*movd 0x90909090\(%eax\),%mm2
+ 414: 0f 6f 90 90 90 90 90 [ ]*movq 0x90909090\(%eax\),%mm2
+ 41b: 0f 71 d0 90 [ ]*psrlw \$0x90,%mm0
+ 41f: 0f 72 d0 90 [ ]*psrld \$0x90,%mm0
+ 423: 0f 73 d0 90 [ ]*psrlq \$0x90,%mm0
+ 427: 0f 74 90 90 90 90 90 [ ]*pcmpeqb 0x90909090\(%eax\),%mm2
+ 42e: 0f 75 90 90 90 90 90 [ ]*pcmpeqw 0x90909090\(%eax\),%mm2
+ 435: 0f 76 90 90 90 90 90 [ ]*pcmpeqd 0x90909090\(%eax\),%mm2
+ 43c: 0f 77 [ ]*emms
+ 43e: 0f 7e 90 90 90 90 90 [ ]*movd %mm2,0x90909090\(%eax\)
+ 445: 0f 7f 90 90 90 90 90 [ ]*movq %mm2,0x90909090\(%eax\)
+ 44c: 0f 80 90 90 90 90 [ ]*jo (0x)?909094e2.*
+ 452: 0f 81 90 90 90 90 [ ]*jno (0x)?909094e8.*
+ 458: 0f 82 90 90 90 90 [ ]*jb (0x)?909094ee.*
+ 45e: 0f 83 90 90 90 90 [ ]*jae (0x)?909094f4.*
+ 464: 0f 84 90 90 90 90 [ ]*je (0x)?909094fa.*
+ 46a: 0f 85 90 90 90 90 [ ]*jne (0x)?90909500.*
+ 470: 0f 86 90 90 90 90 [ ]*jbe (0x)?90909506.*
+ 476: 0f 87 90 90 90 90 [ ]*ja (0x)?9090950c.*
+ 47c: 0f 88 90 90 90 90 [ ]*js (0x)?90909512.*
+ 482: 0f 89 90 90 90 90 [ ]*jns (0x)?90909518.*
+ 488: 0f 8a 90 90 90 90 [ ]*jp (0x)?9090951e.*
+ 48e: 0f 8b 90 90 90 90 [ ]*jnp (0x)?90909524.*
+ 494: 0f 8c 90 90 90 90 [ ]*jl (0x)?9090952a.*
+ 49a: 0f 8d 90 90 90 90 [ ]*jge (0x)?90909530.*
+ 4a0: 0f 8e 90 90 90 90 [ ]*jle (0x)?90909536.*
+ 4a6: 0f 8f 90 90 90 90 [ ]*jg (0x)?9090953c.*
+ 4ac: 0f 90 80 90 90 90 90 [ ]*seto 0x90909090\(%eax\)
+ 4b3: 0f 91 80 90 90 90 90 [ ]*setno 0x90909090\(%eax\)
+ 4ba: 0f 92 80 90 90 90 90 [ ]*setb 0x90909090\(%eax\)
+ 4c1: 0f 93 80 90 90 90 90 [ ]*setae 0x90909090\(%eax\)
+ 4c8: 0f 94 80 90 90 90 90 [ ]*sete 0x90909090\(%eax\)
+ 4cf: 0f 95 80 90 90 90 90 [ ]*setne 0x90909090\(%eax\)
+ 4d6: 0f 96 80 90 90 90 90 [ ]*setbe 0x90909090\(%eax\)
+ 4dd: 0f 97 80 90 90 90 90 [ ]*seta 0x90909090\(%eax\)
+ 4e4: 0f 98 80 90 90 90 90 [ ]*sets 0x90909090\(%eax\)
+ 4eb: 0f 99 80 90 90 90 90 [ ]*setns 0x90909090\(%eax\)
+ 4f2: 0f 9a 80 90 90 90 90 [ ]*setp 0x90909090\(%eax\)
+ 4f9: 0f 9b 80 90 90 90 90 [ ]*setnp 0x90909090\(%eax\)
+ 500: 0f 9c 80 90 90 90 90 [ ]*setl 0x90909090\(%eax\)
+ 507: 0f 9d 80 90 90 90 90 [ ]*setge 0x90909090\(%eax\)
+ 50e: 0f 9e 80 90 90 90 90 [ ]*setle 0x90909090\(%eax\)
+ 515: 0f 9f 80 90 90 90 90 [ ]*setg 0x90909090\(%eax\)
+ 51c: 0f a0 [ ]*push %fs
+ 51e: 0f a1 [ ]*pop %fs
+ 520: 0f a2 [ ]*cpuid
+ 522: 0f a3 90 90 90 90 90 [ ]*bt %edx,0x90909090\(%eax\)
+ 529: 0f a4 90 90 90 90 90 90 [ ]*shld \$0x90,%edx,0x90909090\(%eax\)
+ 531: 0f a5 90 90 90 90 90 [ ]*shld %cl,%edx,0x90909090\(%eax\)
+ 538: 0f a8 [ ]*push %gs
+ 53a: 0f a9 [ ]*pop %gs
+ 53c: 0f aa [ ]*rsm
+ 53e: 0f ab 90 90 90 90 90 [ ]*bts %edx,0x90909090\(%eax\)
+ 545: 0f ac 90 90 90 90 90 90 [ ]*shrd \$0x90,%edx,0x90909090\(%eax\)
+ 54d: 0f ad 90 90 90 90 90 [ ]*shrd %cl,%edx,0x90909090\(%eax\)
+ 554: 0f af 90 90 90 90 90 [ ]*imul 0x90909090\(%eax\),%edx
+ 55b: 0f b0 90 90 90 90 90 [ ]*cmpxchg %dl,0x90909090\(%eax\)
+ 562: 0f b1 90 90 90 90 90 [ ]*cmpxchg %edx,0x90909090\(%eax\)
+ 569: 0f b2 90 90 90 90 90 [ ]*lss 0x90909090\(%eax\),%edx
+ 570: 0f b3 90 90 90 90 90 [ ]*btr %edx,0x90909090\(%eax\)
+ 577: 0f b4 90 90 90 90 90 [ ]*lfs 0x90909090\(%eax\),%edx
+ 57e: 0f b5 90 90 90 90 90 [ ]*lgs 0x90909090\(%eax\),%edx
+ 585: 0f b6 90 90 90 90 90 [ ]*movzbl 0x90909090\(%eax\),%edx
+ 58c: 0f b7 90 90 90 90 90 [ ]*movzwl 0x90909090\(%eax\),%edx
+ 593: 0f b9 [ ]*ud2b
+ 595: 0f bb 90 90 90 90 90 [ ]*btc %edx,0x90909090\(%eax\)
+ 59c: 0f bc 90 90 90 90 90 [ ]*bsf 0x90909090\(%eax\),%edx
+ 5a3: 0f bd 90 90 90 90 90 [ ]*bsr 0x90909090\(%eax\),%edx
+ 5aa: 0f be 90 90 90 90 90 [ ]*movsbl 0x90909090\(%eax\),%edx
+ 5b1: 0f bf 90 90 90 90 90 [ ]*movswl 0x90909090\(%eax\),%edx
+ 5b8: 0f c0 90 90 90 90 90 [ ]*xadd %dl,0x90909090\(%eax\)
+ 5bf: 0f c1 90 90 90 90 90 [ ]*xadd %edx,0x90909090\(%eax\)
+ 5c6: 0f c8 [ ]*bswap %eax
+ 5c8: 0f c9 [ ]*bswap %ecx
+ 5ca: 0f ca [ ]*bswap %edx
+ 5cc: 0f cb [ ]*bswap %ebx
+ 5ce: 0f cc [ ]*bswap %esp
+ 5d0: 0f cd [ ]*bswap %ebp
+ 5d2: 0f ce [ ]*bswap %esi
+ 5d4: 0f cf [ ]*bswap %edi
+ 5d6: 0f d1 90 90 90 90 90 [ ]*psrlw 0x90909090\(%eax\),%mm2
+ 5dd: 0f d2 90 90 90 90 90 [ ]*psrld 0x90909090\(%eax\),%mm2
+ 5e4: 0f d3 90 90 90 90 90 [ ]*psrlq 0x90909090\(%eax\),%mm2
+ 5eb: 0f d5 90 90 90 90 90 [ ]*pmullw 0x90909090\(%eax\),%mm2
+ 5f2: 0f d8 90 90 90 90 90 [ ]*psubusb 0x90909090\(%eax\),%mm2
+ 5f9: 0f d9 90 90 90 90 90 [ ]*psubusw 0x90909090\(%eax\),%mm2
+ 600: 0f db 90 90 90 90 90 [ ]*pand 0x90909090\(%eax\),%mm2
+ 607: 0f dc 90 90 90 90 90 [ ]*paddusb 0x90909090\(%eax\),%mm2
+ 60e: 0f dd 90 90 90 90 90 [ ]*paddusw 0x90909090\(%eax\),%mm2
+ 615: 0f df 90 90 90 90 90 [ ]*pandn 0x90909090\(%eax\),%mm2
+ 61c: 0f e1 90 90 90 90 90 [ ]*psraw 0x90909090\(%eax\),%mm2
+ 623: 0f e2 90 90 90 90 90 [ ]*psrad 0x90909090\(%eax\),%mm2
+ 62a: 0f e5 90 90 90 90 90 [ ]*pmulhw 0x90909090\(%eax\),%mm2
+ 631: 0f e8 90 90 90 90 90 [ ]*psubsb 0x90909090\(%eax\),%mm2
+ 638: 0f e9 90 90 90 90 90 [ ]*psubsw 0x90909090\(%eax\),%mm2
+ 63f: 0f eb 90 90 90 90 90 [ ]*por 0x90909090\(%eax\),%mm2
+ 646: 0f ec 90 90 90 90 90 [ ]*paddsb 0x90909090\(%eax\),%mm2
+ 64d: 0f ed 90 90 90 90 90 [ ]*paddsw 0x90909090\(%eax\),%mm2
+ 654: 0f ef 90 90 90 90 90 [ ]*pxor 0x90909090\(%eax\),%mm2
+ 65b: 0f f1 90 90 90 90 90 [ ]*psllw 0x90909090\(%eax\),%mm2
+ 662: 0f f2 90 90 90 90 90 [ ]*pslld 0x90909090\(%eax\),%mm2
+ 669: 0f f3 90 90 90 90 90 [ ]*psllq 0x90909090\(%eax\),%mm2
+ 670: 0f f5 90 90 90 90 90 [ ]*pmaddwd 0x90909090\(%eax\),%mm2
+ 677: 0f f8 90 90 90 90 90 [ ]*psubb 0x90909090\(%eax\),%mm2
+ 67e: 0f f9 90 90 90 90 90 [ ]*psubw 0x90909090\(%eax\),%mm2
+ 685: 0f fa 90 90 90 90 90 [ ]*psubd 0x90909090\(%eax\),%mm2
+ 68c: 0f fc 90 90 90 90 90 [ ]*paddb 0x90909090\(%eax\),%mm2
+ 693: 0f fd 90 90 90 90 90 [ ]*paddw 0x90909090\(%eax\),%mm2
+ 69a: 0f fe 90 90 90 90 90 [ ]*paddd 0x90909090\(%eax\),%mm2
+ 6a1: 66 01 90 90 90 90 90 [ ]*add %dx,0x90909090\(%eax\)
+ 6a8: 66 03 90 90 90 90 90 [ ]*add 0x90909090\(%eax\),%dx
+ 6af: 66 05 90 90 [ ]*add \$0x9090,%ax
+ 6b3: 66 06 [ ]*pushw %es
+ 6b5: 66 07 [ ]*popw %es
+ 6b7: 66 09 90 90 90 90 90 [ ]*or %dx,0x90909090\(%eax\)
+ 6be: 66 0b 90 90 90 90 90 [ ]*or 0x90909090\(%eax\),%dx
+ 6c5: 66 0d 90 90 [ ]*or \$0x9090,%ax
+ 6c9: 66 0e [ ]*pushw %cs
+ 6cb: 66 11 90 90 90 90 90 [ ]*adc %dx,0x90909090\(%eax\)
+ 6d2: 66 13 90 90 90 90 90 [ ]*adc 0x90909090\(%eax\),%dx
+ 6d9: 66 15 90 90 [ ]*adc \$0x9090,%ax
+ 6dd: 66 16 [ ]*pushw %ss
+ 6df: 66 17 [ ]*popw %ss
+ 6e1: 66 19 90 90 90 90 90 [ ]*sbb %dx,0x90909090\(%eax\)
+ 6e8: 66 1b 90 90 90 90 90 [ ]*sbb 0x90909090\(%eax\),%dx
+ 6ef: 66 1d 90 90 [ ]*sbb \$0x9090,%ax
+ 6f3: 66 1e [ ]*pushw %ds
+ 6f5: 66 1f [ ]*popw %ds
+ 6f7: 66 21 90 90 90 90 90 [ ]*and %dx,0x90909090\(%eax\)
+ 6fe: 66 23 90 90 90 90 90 [ ]*and 0x90909090\(%eax\),%dx
+ 705: 66 25 90 90 [ ]*and \$0x9090,%ax
+ 709: 66 29 90 90 90 90 90 [ ]*sub %dx,0x90909090\(%eax\)
+ 710: 66 2b 90 90 90 90 90 [ ]*sub 0x90909090\(%eax\),%dx
+ 717: 66 2d 90 90 [ ]*sub \$0x9090,%ax
+ 71b: 66 31 90 90 90 90 90 [ ]*xor %dx,0x90909090\(%eax\)
+ 722: 66 33 90 90 90 90 90 [ ]*xor 0x90909090\(%eax\),%dx
+ 729: 66 35 90 90 [ ]*xor \$0x9090,%ax
+ 72d: 66 39 90 90 90 90 90 [ ]*cmp %dx,0x90909090\(%eax\)
+ 734: 66 3b 90 90 90 90 90 [ ]*cmp 0x90909090\(%eax\),%dx
+ 73b: 66 3d 90 90 [ ]*cmp \$0x9090,%ax
+ 73f: 66 40 [ ]*inc %ax
+ 741: 66 41 [ ]*inc %cx
+ 743: 66 42 [ ]*inc %dx
+ 745: 66 43 [ ]*inc %bx
+ 747: 66 44 [ ]*inc %sp
+ 749: 66 45 [ ]*inc %bp
+ 74b: 66 46 [ ]*inc %si
+ 74d: 66 47 [ ]*inc %di
+ 74f: 66 48 [ ]*dec %ax
+ 751: 66 49 [ ]*dec %cx
+ 753: 66 4a [ ]*dec %dx
+ 755: 66 4b [ ]*dec %bx
+ 757: 66 4c [ ]*dec %sp
+ 759: 66 4d [ ]*dec %bp
+ 75b: 66 4e [ ]*dec %si
+ 75d: 66 4f [ ]*dec %di
+ 75f: 66 50 [ ]*push %ax
+ 761: 66 51 [ ]*push %cx
+ 763: 66 52 [ ]*push %dx
+ 765: 66 53 [ ]*push %bx
+ 767: 66 54 [ ]*push %sp
+ 769: 66 55 [ ]*push %bp
+ 76b: 66 56 [ ]*push %si
+ 76d: 66 57 [ ]*push %di
+ 76f: 66 58 [ ]*pop %ax
+ 771: 66 59 [ ]*pop %cx
+ 773: 66 5a [ ]*pop %dx
+ 775: 66 5b [ ]*pop %bx
+ 777: 66 5c [ ]*pop %sp
+ 779: 66 5d [ ]*pop %bp
+ 77b: 66 5e [ ]*pop %si
+ 77d: 66 5f [ ]*pop %di
+ 77f: 66 60 [ ]*pushaw
+ 781: 66 61 [ ]*popaw
+ 783: 66 62 90 90 90 90 90 [ ]*bound %dx,0x90909090\(%eax\)
+ 78a: 66 68 90 90 [ ]*pushw \$0x9090
+ 78e: 66 69 90 90 90 90 90 90 90 [ ]*imul \$0x9090,0x90909090\(%eax\),%dx
+ 797: 66 6a 90 [ ]*pushw \$0xffffff90
+ 79a: 66 6b 90 90 90 90 90 90 [ ]*imul \$0xffffff90,0x90909090\(%eax\),%dx
+ 7a2: 66 6d [ ]*insw \(%dx\),%es:\(%edi\)
+ 7a4: 66 6f [ ]*outsw %ds:\(%esi\),\(%dx\)
+ 7a6: 66 81 90 90 90 90 90 90 90 [ ]*adcw \$0x9090,0x90909090\(%eax\)
+ 7af: 66 83 90 90 90 90 90 90 [ ]*adcw \$0xffffff90,0x90909090\(%eax\)
+ 7b7: 66 85 90 90 90 90 90 [ ]*test %dx,0x90909090\(%eax\)
+ 7be: 66 87 90 90 90 90 90 [ ]*xchg %dx,0x90909090\(%eax\)
+ 7c5: 66 89 90 90 90 90 90 [ ]*mov %dx,0x90909090\(%eax\)
+ 7cc: 66 8b 90 90 90 90 90 [ ]*mov 0x90909090\(%eax\),%dx
+ 7d3: 66 8c 90 90 90 90 90 [ ]*movw %ss,0x90909090\(%eax\)
+ 7da: 66 8d 90 90 90 90 90 [ ]*lea 0x90909090\(%eax\),%dx
+ 7e1: 66 8f 80 90 90 90 90 [ ]*popw 0x90909090\(%eax\)
+ 7e8: 66 91 [ ]*xchg %ax,%cx
+ 7ea: 66 92 [ ]*xchg %ax,%dx
+ 7ec: 66 93 [ ]*xchg %ax,%bx
+ 7ee: 66 94 [ ]*xchg %ax,%sp
+ 7f0: 66 95 [ ]*xchg %ax,%bp
+ 7f2: 66 96 [ ]*xchg %ax,%si
+ 7f4: 66 97 [ ]*xchg %ax,%di
+ 7f6: 66 98 [ ]*cbtw
+ 7f8: 66 99 [ ]*cwtd
+ 7fa: 66 9a 90 90 90 90 [ ]*lcallw \$0x9090,\$0x9090
+ 800: 66 9c [ ]*pushfw
+ 802: 66 9d [ ]*popfw
+ 804: 66 a1 90 90 90 90 [ ]*mov 0x90909090,%ax
+ 80a: 66 a3 90 90 90 90 [ ]*mov %ax,0x90909090
+ 810: 66 a5 [ ]*movsw %ds:\(%esi\),%es:\(%edi\)
+ 812: 66 a7 [ ]*cmpsw %es:\(%edi\),%ds:\(%esi\)
+ 814: 66 a9 90 90 [ ]*test \$0x9090,%ax
+ 818: 66 ab [ ]*stos %ax,%es:\(%edi\)
+ 81a: 66 ad [ ]*lods %ds:\(%esi\),%ax
+ 81c: 66 af [ ]*scas %es:\(%edi\),%ax
+ 81e: 66 b8 90 90 [ ]*mov \$0x9090,%ax
+ 822: 66 b9 90 90 [ ]*mov \$0x9090,%cx
+ 826: 66 ba 90 90 [ ]*mov \$0x9090,%dx
+ 82a: 66 bb 90 90 [ ]*mov \$0x9090,%bx
+ 82e: 66 bc 90 90 [ ]*mov \$0x9090,%sp
+ 832: 66 bd 90 90 [ ]*mov \$0x9090,%bp
+ 836: 66 be 90 90 [ ]*mov \$0x9090,%si
+ 83a: 66 bf 90 90 [ ]*mov \$0x9090,%di
+ 83e: 66 c1 90 90 90 90 90 90 [ ]*rclw \$0x90,0x90909090\(%eax\)
+ 846: 66 c2 90 90 [ ]*retw \$0x9090
+ 84a: 66 c3 [ ]*retw
+ 84c: 66 c4 90 90 90 90 90 [ ]*les 0x90909090\(%eax\),%dx
+ 853: 66 c5 90 90 90 90 90 [ ]*lds 0x90909090\(%eax\),%dx
+ 85a: 66 c7 80 90 90 90 90 90 90 [ ]*movw \$0x9090,0x90909090\(%eax\)
+ 863: 66 c8 90 90 90 [ ]*enterw \$0x9090,\$0x90
+ 868: 66 c9 [ ]*leavew
+ 86a: 66 ca 90 90 [ ]*lretw \$0x9090
+ 86e: 66 cb [ ]*lretw
+ 870: 66 cf [ ]*iretw
+ 872: 66 d1 90 90 90 90 90 [ ]*rclw 0x90909090\(%eax\)
+ 879: 66 d3 90 90 90 90 90 [ ]*rclw %cl,0x90909090\(%eax\)
+ 880: 66 e5 90 [ ]*in \$0x90,%ax
+ 883: 66 e7 90 [ ]*out %ax,\$0x90
+ 886: 66 e8 8f 90 [ ]*callw (0x)?9919.*
+ 88a: 66 ea 90 90 90 90 [ ]*ljmpw \$0x9090,\$0x9090
+ 890: 66 ed [ ]*in \(%dx\),%ax
+ 892: 66 ef [ ]*out %ax,\(%dx\)
+ 894: 66 f7 90 90 90 90 90 [ ]*notw 0x90909090\(%eax\)
+ 89b: 66 ff 90 90 90 90 90 [ ]*callw \*0x90909090\(%eax\)
+ 8a2: 66 0f 02 90 90 90 90 90 [ ]*lar 0x90909090\(%eax\),%dx
+ 8aa: 66 0f 03 90 90 90 90 90 [ ]*lsl 0x90909090\(%eax\),%dx
+ 8b2: 66 0f 40 90 90 90 90 90 [ ]*cmovo 0x90909090\(%eax\),%dx
+ 8ba: 66 0f 41 90 90 90 90 90 [ ]*cmovno 0x90909090\(%eax\),%dx
+ 8c2: 66 0f 42 90 90 90 90 90 [ ]*cmovb 0x90909090\(%eax\),%dx
+ 8ca: 66 0f 43 90 90 90 90 90 [ ]*cmovae 0x90909090\(%eax\),%dx
+ 8d2: 66 0f 44 90 90 90 90 90 [ ]*cmove 0x90909090\(%eax\),%dx
+ 8da: 66 0f 45 90 90 90 90 90 [ ]*cmovne 0x90909090\(%eax\),%dx
+ 8e2: 66 0f 46 90 90 90 90 90 [ ]*cmovbe 0x90909090\(%eax\),%dx
+ 8ea: 66 0f 47 90 90 90 90 90 [ ]*cmova 0x90909090\(%eax\),%dx
+ 8f2: 66 0f 48 90 90 90 90 90 [ ]*cmovs 0x90909090\(%eax\),%dx
+ 8fa: 66 0f 49 90 90 90 90 90 [ ]*cmovns 0x90909090\(%eax\),%dx
+ 902: 66 0f 4a 90 90 90 90 90 [ ]*cmovp 0x90909090\(%eax\),%dx
+ 90a: 66 0f 4b 90 90 90 90 90 [ ]*cmovnp 0x90909090\(%eax\),%dx
+ 912: 66 0f 4c 90 90 90 90 90 [ ]*cmovl 0x90909090\(%eax\),%dx
+ 91a: 66 0f 4d 90 90 90 90 90 [ ]*cmovge 0x90909090\(%eax\),%dx
+ 922: 66 0f 4e 90 90 90 90 90 [ ]*cmovle 0x90909090\(%eax\),%dx
+ 92a: 66 0f 4f 90 90 90 90 90 [ ]*cmovg 0x90909090\(%eax\),%dx
+ 932: 66 0f a0 [ ]*pushw %fs
+ 935: 66 0f a1 [ ]*popw %fs
+ 938: 66 0f a3 90 90 90 90 90 [ ]*bt %dx,0x90909090\(%eax\)
+ 940: 66 0f a4 90 90 90 90 90 90 [ ]*shld \$0x90,%dx,0x90909090\(%eax\)
+ 949: 66 0f a5 90 90 90 90 90 [ ]*shld %cl,%dx,0x90909090\(%eax\)
+ 951: 66 0f a8 [ ]*pushw %gs
+ 954: 66 0f a9 [ ]*popw %gs
+ 957: 66 0f ab 90 90 90 90 90 [ ]*bts %dx,0x90909090\(%eax\)
+ 95f: 66 0f ac 90 90 90 90 90 90 [ ]*shrd \$0x90,%dx,0x90909090\(%eax\)
+ 968: 66 0f ad 90 90 90 90 90 [ ]*shrd %cl,%dx,0x90909090\(%eax\)
+ 970: 66 0f af 90 90 90 90 90 [ ]*imul 0x90909090\(%eax\),%dx
+ 978: 66 0f b1 90 90 90 90 90 [ ]*cmpxchg %dx,0x90909090\(%eax\)
+ 980: 66 0f b2 90 90 90 90 90 [ ]*lss 0x90909090\(%eax\),%dx
+ 988: 66 0f b3 90 90 90 90 90 [ ]*btr %dx,0x90909090\(%eax\)
+ 990: 66 0f b4 90 90 90 90 90 [ ]*lfs 0x90909090\(%eax\),%dx
+ 998: 66 0f b5 90 90 90 90 90 [ ]*lgs 0x90909090\(%eax\),%dx
+ 9a0: 66 0f b6 90 90 90 90 90 [ ]*movzbw 0x90909090\(%eax\),%dx
+ 9a8: 66 0f bb 90 90 90 90 90 [ ]*btc %dx,0x90909090\(%eax\)
+ 9b0: 66 0f bc 90 90 90 90 90 [ ]*bsf 0x90909090\(%eax\),%dx
+ 9b8: 66 0f bd 90 90 90 90 90 [ ]*bsr 0x90909090\(%eax\),%dx
+ 9c0: 66 0f be 90 90 90 90 90 [ ]*movsbw 0x90909090\(%eax\),%dx
+ 9c8: 66 0f c1 90 90 90 90 90 [ ]*xadd %dx,0x90909090\(%eax\)
diff --git a/gas/testsuite/gas/i386/intel.s b/gas/testsuite/gas/i386/intel.s
new file mode 100644
index 0000000..4f5a965
--- /dev/null
+++ b/gas/testsuite/gas/i386/intel.s
@@ -0,0 +1,568 @@
+.text
+.intel_syntax noprefix
+foo:
+ add byte ptr 0x90909090[eax], dl
+ add dword ptr 0x90909090[eax], edx
+ add dl, byte ptr 0x90909090[eax]
+ add edx, dword ptr 0x90909090[eax]
+ add al, 0x90
+ add eax, 0x90909090
+ push es
+ pop es
+ or [eax+0x90909090], dl
+ or [eax+0x90909090], edx
+ or dl, [eax+0x90909090]
+ or edx, [eax+0x90909090]
+ or al, 0x90
+ or eax, 0x90909090
+ push cs
+ adc byte ptr [eax+0x90909090], dl
+ adc dword ptr [eax+0x90909090], edx
+ adc dl, byte ptr [eax+0x90909090]
+ adc edx, dword ptr [eax+0x90909090]
+ adc al, 0x90
+ adc eax, 0x90909090
+ push ss
+ pop ss
+ sbb 0x90909090[eax], dl
+ sbb 0x90909090[eax], edx
+ sbb dl, 0x90909090[eax]
+ sbb edx, 0x90909090[eax]
+ sbb al, 0x90
+ sbb eax, 0x90909090
+ push ds
+ pop ds
+ and 0x90909090[eax], dl
+ and 0x90909090[eax], edx
+ and dl, 0x90909090[eax]
+ and edx, 0x90909090[eax]
+ and al, 0x90
+ and eax, 0x90909090
+ daa
+ sub 0x90909090[eax], dl
+ sub 0x90909090[eax], edx
+ sub dl, 0x90909090[eax]
+ sub edx, 0x90909090[eax]
+ sub al, 0x90
+ sub eax, 0x90909090
+ das
+ xor 0x90909090[eax], dl
+ xor 0x90909090[eax], edx
+ xor dl, 0x90909090[eax]
+ xor edx, 0x90909090[eax]
+ xor al, 0x90
+ xor eax, 0x90909090
+ aaa
+ cmp 0x90909090[eax], dl
+ cmp 0x90909090[eax], edx
+ cmp dl, 0x90909090[eax]
+ cmp edx, 0x90909090[eax]
+ cmp al, 0x90
+ cmp eax, 0x90909090
+ aas
+ inc eax
+ inc ecx
+ inc edx
+ inc ebx
+ inc esp
+ inc ebp
+ inc esi
+ inc edi
+ dec eax
+ dec ecx
+ dec edx
+ dec ebx
+ dec esp
+ dec ebp
+ dec esi
+ dec edi
+ push eax
+ push ecx
+ push edx
+ push ebx
+ push esp
+ push ebp
+ push esi
+ push edi
+ pop eax
+ pop ecx
+ pop edx
+ pop ebx
+ pop esp
+ pop ebp
+ pop esi
+ pop edi
+ pusha
+ popa
+ bound edx, 0x90909090[eax]
+ arpl 0x90909090[eax], dx
+ push 0x90909090
+ imul edx, 0x90909090[eax], 0x90909090
+ push 0xffffff90
+ imul edx, 0x90909090[eax], 0xffffff90
+ ins byte ptr es:[edi], dx
+ ins dword ptr es:[edi], dx
+ outs dx, byte ptr ds:[esi]
+ outs dx, dword ptr ds:[esi]
+ jo .+2-0x70
+ jno .+2-0x70
+ jb .+2-0x70
+ jae .+2-0x70
+ je .+2-0x70
+ jne .+2-0x70
+ jbe .+2-0x70
+ ja .+2-0x70
+ js .+2-0x70
+ jns .+2-0x70
+ jp .+2-0x70
+ jnp .+2-0x70
+ jl .+2-0x70
+ jge .+2-0x70
+ jle .+2-0x70
+ jg .+2-0x70
+ adc byte ptr 0x90909090[eax], 0x90
+ adc dword ptr 0x90909090[eax], 0x90909090
+ adc dword ptr 0x90909090[eax], 0xffffff90
+ test 0x90909090[eax], dl
+ test 0x90909090[eax], edx
+ xchg 0x90909090[eax], dl
+ xchg 0x90909090[eax], edx
+ mov 0x90909090[eax], dl
+ mov 0x90909090[eax], edx
+ mov dl, 0x90909090[eax]
+ mov edx, 0x90909090[eax]
+ mov dword ptr 0x90909090[eax], ss
+ lea edx, 0x90909090[eax]
+ mov ss, dword ptr 0x90909090[eax]
+ pop dword ptr 0x90909090[eax]
+ xchg eax, eax
+ xchg ecx, eax
+ xchg edx, eax
+ xchg ebx, eax
+ xchg esp, eax
+ xchg ebp, eax
+ xchg esi, eax
+ xchg edi, eax
+ cwde
+ cdq
+ call 0x9090,0x90909090
+ fwait
+ pushf
+ popf
+ sahf
+ lahf
+ mov al, [0x90909090]
+ mov eax, [0x90909090]
+ mov [0x90909090], al
+ mov [0x90909090], eax
+ movs byte ptr es:[edi], byte ptr ds:[esi]
+ movs dword ptr es:[edi], dword ptr ds:[esi]
+ cmps byte ptr ds:[esi], byte ptr es:[edi]
+ cmps dword ptr ds:[esi], dword ptr es:[edi]
+ test al, 0x90
+ test eax, 0x90909090
+ stos byte ptr es:[edi], al
+ stos dword ptr es:[edi], eax
+ lods al, byte ptr ds:[esi]
+ lods eax, dword ptr ds:[esi]
+ scas al, byte ptr es:[edi]
+ scas eax, dword ptr es:[edi]
+ mov al, 0x90
+ mov cl, 0x90
+ mov dl, 0x90
+ mov bl, 0x90
+ mov ah, 0x90
+ mov ch, 0x90
+ mov dh, 0x90
+ mov bh, 0x90
+ mov eax, 0x90909090
+ mov ecx, 0x90909090
+ mov edx, 0x90909090
+ mov ebx, 0x90909090
+ mov esp, 0x90909090
+ mov ebp, 0x90909090
+ mov esi, 0x90909090
+ mov edi, 0x90909090
+ rcl byte ptr 0x90909090[eax], 0x90
+ rcl dword ptr 0x90909090[eax], 0x90
+ ret 0x9090
+ ret
+ les edx, 0x90909090[eax]
+ lds edx, 0x90909090[eax]
+ mov byte ptr 0x90909090[eax], 0x90
+ mov dword ptr 0x90909090[eax], 0x90909090
+ enter 0x9090, 0x90
+ leave
+ lret 0x9090
+ lret
+ int3
+ int 0x90
+ into
+ iret
+ rcl byte ptr 0x90909090[eax]
+ rcl dword ptr 0x90909090[eax]
+ rcl byte ptr 0x90909090[eax], cl
+ rcl dword ptr 0x90909090[eax], cl
+ aam 0xffffff90
+ aad 0xffffff90
+ xlat byte ptr ds:[ebx]
+ fcom dword ptr 0x90909090[eax]
+ fst dword ptr 0x90909090[eax]
+ ficom dword ptr 0x90909090[eax]
+ fist dword ptr 0x90909090[eax]
+ fcom qword ptr 0x90909090[eax]
+ fst qword ptr 0x90909090[eax]
+ ficom word ptr 0x90909090[eax]
+ fist word ptr 0x90909090[eax]
+ loopne .+2-0x70
+ loope .+2-0x70
+ loop .+2-0x70
+ jecxz .+2-0x70
+ in al, 0x90
+ in eax, 0x90
+ out 0x90, al
+ out 0x90, eax
+ call .+5+0x90909090
+ jmp .+5+0x90909090
+ jmp 0x9090,0x90909090
+ jmp .+2-0x70
+ in al, dx
+ in eax, dx
+ out dx, al
+ out dx, eax
+ hlt
+ cmc
+ not byte ptr 0x90909090[eax]
+ not dword ptr 0x90909090[eax]
+ clc
+ stc
+ cli
+ sti
+ cld
+ std
+ call dword ptr 0x90909090[eax]
+ lldt 0x90909090[eax]
+ lgdt 0x90909090[eax]
+ lar edx, 0x90909090[eax]
+ lsl edx, 0x90909090[eax]
+ clts
+ invd
+ wbinvd
+ ud2a
+ mov eax, cr2
+ mov eax, db2
+ mov cr2, eax
+ mov db2, eax
+ mov eax, tr2
+ mov tr2, eax
+ wrmsr
+ rdtsc
+ rdmsr
+ rdpmc
+ cmovo edx, 0x90909090[eax]
+ cmovno edx, 0x90909090[eax]
+ cmovb edx, 0x90909090[eax]
+ cmovae edx, 0x90909090[eax]
+ cmove edx, 0x90909090[eax]
+ cmovne edx, 0x90909090[eax]
+ cmovbe edx, 0x90909090[eax]
+ cmova edx, 0x90909090[eax]
+ cmovs edx, 0x90909090[eax]
+ cmovns edx, 0x90909090[eax]
+ cmovp edx, 0x90909090[eax]
+ cmovnp edx, 0x90909090[eax]
+ cmovl edx, 0x90909090[eax]
+ cmovge edx, 0x90909090[eax]
+ cmovle edx, 0x90909090[eax]
+ cmovg edx, 0x90909090[eax]
+ punpcklbw mm2, 0x90909090[eax]
+ punpcklwd mm2, 0x90909090[eax]
+ punpckldq mm2, 0x90909090[eax]
+ packsswb mm2, 0x90909090[eax]
+ pcmpgtb mm2, 0x90909090[eax]
+ pcmpgtw mm2, 0x90909090[eax]
+ pcmpgtd mm2, 0x90909090[eax]
+ packuswb mm2, 0x90909090[eax]
+ punpckhbw mm2, 0x90909090[eax]
+ punpckhwd mm2, 0x90909090[eax]
+ punpckhdq mm2, 0x90909090[eax]
+ packssdw mm2, 0x90909090[eax]
+ movd mm2, 0x90909090[eax]
+ movq mm2, 0x90909090[eax]
+ psrlw mm0, 0x90
+ psrld mm0, 0x90
+ psrlq mm0, 0x90
+ pcmpeqb mm2, 0x90909090[eax]
+ pcmpeqw mm2, 0x90909090[eax]
+ pcmpeqd mm2, 0x90909090[eax]
+ emms
+ movd 0x90909090[eax], mm2
+ movq 0x90909090[eax], mm2
+ jo .+6+0x90909090
+ jno .+6+0x90909090
+ jb .+6+0x90909090
+ jae .+6+0x90909090
+ je .+6+0x90909090
+ jne .+6+0x90909090
+ jbe .+6+0x90909090
+ ja .+6+0x90909090
+ js .+6+0x90909090
+ jns .+6+0x90909090
+ jp .+6+0x90909090
+ jnp .+6+0x90909090
+ jl .+6+0x90909090
+ jge .+6+0x90909090
+ jle .+6+0x90909090
+ jg .+6+0x90909090
+ seto 0x90909090[eax]
+ setno 0x90909090[eax]
+ setb 0x90909090[eax]
+ setae 0x90909090[eax]
+ sete 0x90909090[eax]
+ setne 0x90909090[eax]
+ setbe 0x90909090[eax]
+ seta 0x90909090[eax]
+ sets 0x90909090[eax]
+ setns 0x90909090[eax]
+ setp 0x90909090[eax]
+ setnp 0x90909090[eax]
+ setl 0x90909090[eax]
+ setge 0x90909090[eax]
+ setle 0x90909090[eax]
+ setg 0x90909090[eax]
+ push fs
+ pop fs
+ cpuid
+ bt 0x90909090[eax], edx
+ shld 0x90909090[eax], edx, 0x90
+ shld 0x90909090[eax], edx, cl
+ push gs
+ pop gs
+ rsm
+ bts 0x90909090[eax], edx
+ shrd 0x90909090[eax], edx, 0x90
+ shrd 0x90909090[eax], edx, cl
+ imul edx, 0x90909090[eax]
+ cmpxchg 0x90909090[eax], dl
+ cmpxchg 0x90909090[eax], edx
+ lss edx, 0x90909090[eax]
+ btr 0x90909090[eax], edx
+ lfs edx, 0x90909090[eax]
+ lgs edx, 0x90909090[eax]
+ movzx edx, byte ptr 0x90909090[eax]
+ movzx edx, word ptr 0x90909090[eax]
+ ud2b
+ btc 0x90909090[eax], edx
+ bsf edx, 0x90909090[eax]
+ bsr edx, 0x90909090[eax]
+ movsx edx, byte ptr 0x90909090[eax]
+ movsx edx, word ptr 0x90909090[eax]
+ xadd 0x90909090[eax], dl
+ xadd 0x90909090[eax], edx
+ bswap eax
+ bswap ecx
+ bswap edx
+ bswap ebx
+ bswap esp
+ bswap ebp
+ bswap esi
+ bswap edi
+ psrlw mm2, 0x90909090[eax]
+ psrld mm2, 0x90909090[eax]
+ psrlq mm2, 0x90909090[eax]
+ pmullw mm2, 0x90909090[eax]
+ psubusb mm2, 0x90909090[eax]
+ psubusw mm2, 0x90909090[eax]
+ pand mm2, 0x90909090[eax]
+ paddusb mm2, 0x90909090[eax]
+ paddusw mm2, 0x90909090[eax]
+ pandn mm2, 0x90909090[eax]
+ psraw mm2, 0x90909090[eax]
+ psrad mm2, 0x90909090[eax]
+ pmulhw mm2, 0x90909090[eax]
+ psubsb mm2, 0x90909090[eax]
+ psubsw mm2, 0x90909090[eax]
+ por mm2, 0x90909090[eax]
+ paddsb mm2, 0x90909090[eax]
+ paddsw mm2, 0x90909090[eax]
+ pxor mm2, 0x90909090[eax]
+ psllw mm2, 0x90909090[eax]
+ pslld mm2, 0x90909090[eax]
+ psllq mm2, 0x90909090[eax]
+ pmaddwd mm2, 0x90909090[eax]
+ psubb mm2, 0x90909090[eax]
+ psubw mm2, 0x90909090[eax]
+ psubd mm2, 0x90909090[eax]
+ paddb mm2, 0x90909090[eax]
+ paddw mm2, 0x90909090[eax]
+ paddd mm2, 0x90909090[eax]
+ add 0x90909090[eax], dx
+ add dx, 0x90909090[eax]
+ add ax, 0x9090
+ pushw es
+ popw es
+ or 0x90909090[eax], dx
+ or dx, 0x90909090[eax]
+ or ax, 0x9090
+ pushw cs
+ adc 0x90909090[eax], dx
+ adc dx, 0x90909090[eax]
+ adc ax, 0x9090
+ pushw ss
+ popw ss
+ sbb 0x90909090[eax], dx
+ sbb dx, 0x90909090[eax]
+ sbb ax, 0x9090
+ pushw ds
+ popw ds
+ and 0x90909090[eax], dx
+ and dx, 0x90909090[eax]
+ and ax, 0x9090
+ sub 0x90909090[eax], dx
+ sub dx, 0x90909090[eax]
+ sub ax, 0x9090
+ xor 0x90909090[eax], dx
+ xor dx, 0x90909090[eax]
+ xor ax, 0x9090
+ cmp 0x90909090[eax], dx
+ cmp dx, 0x90909090[eax]
+ cmp ax, 0x9090
+ inc ax
+ inc cx
+ inc dx
+ inc bx
+ inc sp
+ inc bp
+ inc si
+ inc di
+ dec ax
+ dec cx
+ dec dx
+ dec bx
+ dec sp
+ dec bp
+ dec si
+ dec di
+ push ax
+ push cx
+ push dx
+ push bx
+ push sp
+ push bp
+ push si
+ push di
+ pop ax
+ pop cx
+ pop dx
+ pop bx
+ pop sp
+ pop bp
+ pop si
+ pop di
+ pushaw # how should we specify a word push all regs?
+ popaw # ditto for popa
+ bound dx, 0x90909090[eax]
+ pushw 0x9090
+ imul dx, 0x90909090[eax], 0x9090
+ pushw 0xff90
+ imul dx, 0x90909090[eax], 0xff90
+ ins word ptr es:[edi], dx
+ outs dx, word ptr ds:[esi]
+ adc word ptr 0x90909090[eax], 0x9090
+ adc word ptr 0x90909090[eax], 0xff90
+ test 0x90909090[eax], dx
+ xchg 0x90909090[eax], dx
+ mov 0x90909090[eax], dx
+ mov dx, 0x90909090[eax]
+ mov word ptr 0x90909090[eax], ss
+ lea dx, 0x90909090[eax]
+ pop word ptr 0x90909090[eax]
+ xchg cx, ax
+ xchg dx, ax
+ xchg bx, ax
+ xchg sp, ax
+ xchg bp, ax
+ xchg si, ax
+ xchg di, ax
+ cbtw
+ cwtd
+ callw 0x9090,0x9090
+ pushfw
+ popfw
+ mov ax, [0x90909090]
+ mov [0x90909090], ax
+ movs word ptr es:[edi], word ptr ds:[esi]
+ cmps word ptr ds:[esi], word ptr es:[edi]
+ test ax, 0x9090
+ stos word ptr es:[edi], ax
+ lods ax, word ptr ds:[esi]
+ scas ax, word ptr es:[edi]
+ mov ax, 0x9090
+ mov cx, 0x9090
+ mov dx, 0x9090
+ mov bx, 0x9090
+ mov sp, 0x9090
+ mov bp, 0x9090
+ mov si, 0x9090
+ mov di, 0x9090
+ rcl word ptr 0x90909090[eax], 0x90
+ retw 0x9090
+ retw
+ les dx, 0x90909090[eax]
+ lds dx, 0x90909090[eax]
+ mov word ptr 0x90909090[eax], 0x9090
+ enterw 0x9090, 0x90
+ leavew
+ lretw 0x9090
+ lretw
+ iretw
+ rcl word ptr 0x90909090[eax]
+ rcl word ptr 0x90909090[eax], cl
+ in ax, 0x90
+ out 0x90, ax
+ call word ptr .+3+0x9090
+ jmpw 0x9090,0x9090
+ in ax, dx
+ out dx, ax
+ not word ptr 0x90909090[eax]
+ call word ptr 0x90909090[eax]
+ lar dx, 0x90909090[eax]
+ lsl dx, 0x90909090[eax]
+ cmovo dx, 0x90909090[eax]
+ cmovno dx, 0x90909090[eax]
+ cmovb dx, 0x90909090[eax]
+ cmovae dx, 0x90909090[eax]
+ cmove dx, 0x90909090[eax]
+ cmovne dx, 0x90909090[eax]
+ cmovbe dx, 0x90909090[eax]
+ cmova dx, 0x90909090[eax]
+ cmovs dx, 0x90909090[eax]
+ cmovns dx, 0x90909090[eax]
+ cmovp dx, 0x90909090[eax]
+ cmovnp dx, 0x90909090[eax]
+ cmovl dx, 0x90909090[eax]
+ cmovge dx, 0x90909090[eax]
+ cmovle dx, 0x90909090[eax]
+ cmovg dx, 0x90909090[eax]
+ pushw fs
+ popw fs
+ bt 0x90909090[eax], dx
+ shld 0x90909090[eax], dx, 0x90
+ shld 0x90909090[eax], dx, cl
+ pushw gs
+ popw gs
+ bts 0x90909090[eax], dx
+ shrd 0x90909090[eax], dx, 0x90
+ shrd 0x90909090[eax], dx, cl
+ imul dx, 0x90909090[eax]
+ cmpxchg 0x90909090[eax], dx
+ lss dx, 0x90909090[eax]
+ btr 0x90909090[eax], dx
+ lfs dx, 0x90909090[eax]
+ lgs dx, 0x90909090[eax]
+ movzx dx, byte ptr 0x90909090[eax]
+ btc 0x90909090[eax], dx
+ bsf dx, 0x90909090[eax]
+ bsr dx, 0x90909090[eax]
+ movsx dx, byte ptr 0x90909090[eax]
+ xadd 0x90909090[eax], dx
diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog
index 41b7dbb..1beea88 100644
--- a/include/opcode/ChangeLog
+++ b/include/opcode/ChangeLog
@@ -1,3 +1,8 @@
+2000-02-25 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h (fild, fistp): Change intel d_Suf form to fildd and
+ fistpd without suffix.
+
2000-02-24 Nick Clifton <nickc@cygnus.com>
* cgen.h (cgen_cpu_desc): Rename field 'flags' to
diff --git a/include/opcode/i386.h b/include/opcode/i386.h
index ee7554b..8693ef0 100644
--- a/include/opcode/i386.h
+++ b/include/opcode/i386.h
@@ -513,7 +513,7 @@ static const template i386_optab[] = {
{"fld", 1, 0xdb, 5, x_FP|Modrm, { LLongMem, 0, 0} }, /* %st0 <-- mem efloat */
{"fild", 1, 0xdf, 0, sl_Suf|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} }, /* %st0 <-- mem word(16)/dword(32) */
/* Intel Syntax */
-{"fild", 1, 0xdf, 5, d_Suf|IgnoreSize|Modrm,{ LLongMem, 0, 0} }, /* %st0 <-- mem qword (64) */
+{"fildd", 1, 0xdf, 5, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 <-- mem qword (64) */
{"fildq", 1, 0xdf, 5, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 <-- mem qword (64) */
{"fildll", 1, 0xdf, 5, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 <-- mem qword (64) */
{"fldt", 1, 0xdb, 5, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 <-- mem efloat */
@@ -533,7 +533,7 @@ static const template i386_optab[] = {
{"fstp", 1, 0xdb, 7, x_FP|Modrm, { LLongMem, 0, 0} }, /* %st0 --> mem efloat */
{"fistp", 1, 0xdf, 3, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} }, /* %st0 --> mem word(16)/dword(32) */
/* Intel Syntax */
-{"fistp", 1, 0xdf, 7, d_FP|Modrm, { LLongMem, 0, 0} }, /* %st0 --> mem qword (64) */
+{"fistpd", 1, 0xdf, 7, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 --> mem qword (64) */
{"fistpq", 1, 0xdf, 7, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 --> mem qword (64) */
{"fistpll",1, 0xdf, 7, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 --> mem qword (64) */
{"fstpt", 1, 0xdb, 7, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 --> mem efloat */