This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] PR binutils/18257: Properly decode x86/Intel mask instructions.


On Thu, Aug 20, 2015 at 04:59:47AM -0700, H.J. Lu wrote:
> Please fix ChangeLog entries.
> 
> OK with the fixed ChangeLog entries.
> 
> Thanks.
> 
> 
> -- 
> H.J.

Done.
Thanks for objections.

Alexander
---
opcodes/

	PR binutils/18257
	* i386-dis.c: Use MOD_TABLE for most of mask instructions.
	(MOD enum): Add MOD_VEX_W_0_0F41_P_0_LEN_1, MOD_VEX_W_1_0F41_P_0_LEN_1,
	MOD_VEX_W_0_0F41_P_2_LEN_1, MOD_VEX_W_1_0F41_P_2_LEN_1,
	MOD_VEX_W_0_0F42_P_0_LEN_1, MOD_VEX_W_1_0F42_P_0_LEN_1,
	MOD_VEX_W_0_0F42_P_2_LEN_1, MOD_VEX_W_1_0F42_P_2_LEN_1,
	MOD_VEX_W_0_0F44_P_0_LEN_1, MOD_VEX_W_1_0F44_P_0_LEN_1,
	MOD_VEX_W_0_0F44_P_2_LEN_1, MOD_VEX_W_1_0F44_P_2_LEN_1,
	MOD_VEX_W_0_0F45_P_0_LEN_1, MOD_VEX_W_1_0F45_P_0_LEN_1,
	MOD_VEX_W_0_0F45_P_2_LEN_1, MOD_VEX_W_1_0F45_P_2_LEN_1,
	MOD_VEX_W_0_0F46_P_0_LEN_1, MOD_VEX_W_1_0F46_P_0_LEN_1,
	MOD_VEX_W_0_0F46_P_2_LEN_1, MOD_VEX_W_1_0F46_P_2_LEN_1,
	MOD_VEX_W_0_0F47_P_0_LEN_1, MOD_VEX_W_1_0F47_P_0_LEN_1,
	MOD_VEX_W_0_0F47_P_2_LEN_1, MOD_VEX_W_1_0F47_P_2_LEN_1,
	MOD_VEX_W_0_0F4A_P_0_LEN_1, MOD_VEX_W_1_0F4A_P_0_LEN_1,
	MOD_VEX_W_0_0F4A_P_2_LEN_1, MOD_VEX_W_1_0F4A_P_2_LEN_1,
	MOD_VEX_W_0_0F4B_P_0_LEN_1, MOD_VEX_W_1_0F4B_P_0_LEN_1,
	MOD_VEX_W_0_0F4B_P_2_LEN_1, MOD_VEX_W_0_0F91_P_0_LEN_0,
	MOD_VEX_W_1_0F91_P_0_LEN_0, MOD_VEX_W_0_0F91_P_2_LEN_0,
	MOD_VEX_W_1_0F91_P_2_LEN_0, MOD_VEX_W_0_0F92_P_0_LEN_0,
	MOD_VEX_W_0_0F92_P_2_LEN_0, MOD_VEX_W_0_0F92_P_3_LEN_0,
	MOD_VEX_W_1_0F92_P_3_LEN_0, MOD_VEX_W_0_0F93_P_0_LEN_0,
	MOD_VEX_W_0_0F93_P_2_LEN_0, MOD_VEX_W_0_0F93_P_3_LEN_0,
	MOD_VEX_W_1_0F93_P_3_LEN_0, MOD_VEX_W_0_0F98_P_0_LEN_0,
	MOD_VEX_W_1_0F98_P_0_LEN_0, MOD_VEX_W_0_0F98_P_2_LEN_0,
	MOD_VEX_W_1_0F98_P_2_LEN_0, MOD_VEX_W_0_0F99_P_0_LEN_0,
	MOD_VEX_W_1_0F99_P_0_LEN_0, MOD_VEX_W_0_0F99_P_2_LEN_0,
	MOD_VEX_W_1_0F99_P_2_LEN_0, MOD_VEX_W_0_0F3A30_P_2_LEN_0,
	MOD_VEX_W_1_0F3A30_P_2_LEN_0, MOD_VEX_W_0_0F3A31_P_2_LEN_0,
	MOD_VEX_W_1_0F3A31_P_2_LEN_0, MOD_VEX_W_0_0F3A32_P_2_LEN_0,
	MOD_VEX_W_1_0F3A32_P_2_LEN_0, MOD_VEX_W_0_0F3A33_P_2_LEN_0,
	MOD_VEX_W_1_0F3A33_P_2_LEN_0.
	(vex_w_table): Replace terminals with MOD_TABLE entries for
	most of mask instructions.

gas/testsuite

	PR binutils/18257
	* gas/i386/disassem.s: Add mask instructions with invalid ModR/M byte.
	* gas/i386/x86-64-disassem.s: Likewise.
	* gas/i386/disassem.d: Updated.
	* gas/i386/x86-64-disassem.d: Likewise.

---
 gas/testsuite/gas/i386/disassem.d        | 332 +++++++++++++++++++++-
 gas/testsuite/gas/i386/disassem.s        | 166 +++++++++++
 gas/testsuite/gas/i386/x86-64-disassem.d | 332 +++++++++++++++++++++-
 gas/testsuite/gas/i386/x86-64-disassem.s | 166 +++++++++++
 opcodes/i386-dis.c                       | 472 +++++++++++++++++++++++++++----
 5 files changed, 1407 insertions(+), 61 deletions(-)

diff --git a/gas/testsuite/gas/i386/disassem.d b/gas/testsuite/gas/i386/disassem.d
index d8c6d61..2f39662 100644
--- a/gas/testsuite/gas/i386/disassem.d
+++ b/gas/testsuite/gas/i386/disassem.d
@@ -10,5 +10,335 @@ Disassembly of section \.text:
 [ 	]*[a-f0-9]+:[ 	]*ff[ 	]*\(bad\)  
 [ 	]*[a-f0-9]+:[ 	]*ef[ 	]*out    %eax,\(%dx\)
 [ 	]*[a-f0-9]+:[ 	]*ff[ 	]*\(bad\)  
-[ 	]*[a-f0-9]+:[ 	]*d8[ 	]*\.byte 0xd8
+[ 	]*[a-f0-9]+:[ 	]*d8 90 90 90 90 90[ 	]*fcoms  -0x6f6f6f70\(%eax\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 30[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popl   \(%ecx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 30[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*push   \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 30[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 30[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popl   \(%ecx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 30[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*push   \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 30[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 31[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popl   \(%ecx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 31[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*push   \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 31[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 31[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popl   \(%ecx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 31[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*push   \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 31[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 32[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popl   \(%ecx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 32[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*push   \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 32[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 32[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popl   \(%ecx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 32[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*push   \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 32[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 33[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popl   \(%ecx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 33[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*push   \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 33[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 33[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popl   \(%ecx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 33[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*push   \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 33[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 fb 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 fb 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 fb 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 fb 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 fb 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 fb 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%esi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*aas[ ]*
 #pass
diff --git a/gas/testsuite/gas/i386/disassem.s b/gas/testsuite/gas/i386/disassem.s
index 81b0ef3..2e6c157 100644
--- a/gas/testsuite/gas/i386/disassem.s
+++ b/gas/testsuite/gas/i386/disassem.s
@@ -1,3 +1,169 @@
 .text
 .byte 0xFF, 0xEF
 .byte 0xFF, 0xD8
+.fill 0x5, 0x1, 0x90
+.byte 0xC5, 0xEC, 0x4A, 0x9B
+.byte 0xC5, 0xEC, 0x4A, 0x6F
+.byte 0xC5, 0xEC, 0x4A, 0x3F
+.byte 0xC5, 0xED, 0x4A, 0x9B
+.byte 0xC5, 0xED, 0x4A, 0x6F
+.byte 0xC5, 0xED, 0x4A, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x4A, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x4A, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x4A, 0x3F
+.byte 0xC4, 0xE1, 0xED, 0x4A, 0x9B
+.byte 0xC4, 0xE1, 0xED, 0x4A, 0x6F
+.byte 0xC4, 0xE1, 0xED, 0x4A, 0x3F
+.byte 0xC5, 0xEC, 0x41, 0x9B
+.byte 0xC5, 0xEC, 0x41, 0x6F
+.byte 0xC5, 0xEC, 0x41, 0x3F
+.byte 0xC5, 0xED, 0x41, 0x9B
+.byte 0xC5, 0xED, 0x41, 0x6F
+.byte 0xC5, 0xED, 0x41, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x41, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x41, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x41, 0x3F
+.byte 0xC4, 0xE1, 0xED, 0x41, 0x9B
+.byte 0xC4, 0xE1, 0xED, 0x41, 0x6F
+.byte 0xC4, 0xE1, 0xED, 0x41, 0x3F
+.byte 0xC5, 0xEC, 0x42, 0x9B
+.byte 0xC5, 0xEC, 0x42, 0x6F
+.byte 0xC5, 0xEC, 0x42, 0x3F
+.byte 0xC5, 0xED, 0x42, 0x9B
+.byte 0xC5, 0xED, 0x42, 0x6F
+.byte 0xC5, 0xED, 0x42, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x42, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x42, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x42, 0x3F
+.byte 0xC4, 0xE1, 0xED, 0x42, 0x9B
+.byte 0xC4, 0xE1, 0xED, 0x42, 0x6F
+.byte 0xC4, 0xE1, 0xED, 0x42, 0x3F
+.byte 0xC5, 0xEC, 0x4B, 0x9B
+.byte 0xC5, 0xEC, 0x4B, 0x6F
+.byte 0xC5, 0xEC, 0x4B, 0x3F
+.byte 0xC5, 0xED, 0x4B, 0x9B
+.byte 0xC5, 0xED, 0x4B, 0x6F
+.byte 0xC5, 0xED, 0x4B, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x4B, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x4B, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x4B, 0x3F
+.byte 0xC5, 0xF8, 0x44, 0x9B
+.byte 0xC5, 0xF8, 0x44, 0x6F
+.byte 0xC5, 0xF8, 0x44, 0x3F
+.byte 0xC5, 0xF9, 0x44, 0x9B
+.byte 0xC5, 0xF9, 0x44, 0x6F
+.byte 0xC5, 0xF9, 0x44, 0x3F
+.byte 0xC4, 0xE1, 0xF8, 0x44, 0x9B
+.byte 0xC4, 0xE1, 0xF8, 0x44, 0x6F
+.byte 0xC4, 0xE1, 0xF8, 0x44, 0x3F
+.byte 0xC4, 0xE1, 0xF9, 0x44, 0x9B
+.byte 0xC4, 0xE1, 0xF9, 0x44, 0x6F
+.byte 0xC4, 0xE1, 0xF9, 0x44, 0x3F
+.byte 0xC5, 0xEC, 0x45, 0x9B
+.byte 0xC5, 0xEC, 0x45, 0x6F
+.byte 0xC5, 0xEC, 0x45, 0x3F
+.byte 0xC5, 0xED, 0x45, 0x9B
+.byte 0xC5, 0xED, 0x45, 0x6F
+.byte 0xC5, 0xED, 0x45, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x45, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x45, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x45, 0x3F
+.byte 0xC4, 0xE1, 0xED, 0x45, 0x9B
+.byte 0xC4, 0xE1, 0xED, 0x45, 0x6F
+.byte 0xC4, 0xE1, 0xED, 0x45, 0x3F
+.byte 0xC5, 0xF8, 0x98, 0x9B
+.byte 0xC5, 0xF8, 0x98, 0x6F
+.byte 0xC5, 0xF8, 0x98, 0x3F
+.byte 0xC5, 0xF9, 0x98, 0x9B
+.byte 0xC5, 0xF9, 0x98, 0x6F
+.byte 0xC5, 0xF9, 0x98, 0x3F
+.byte 0xC4, 0xE1, 0xF8, 0x98, 0x9B
+.byte 0xC4, 0xE1, 0xF8, 0x98, 0x6F
+.byte 0xC4, 0xE1, 0xF8, 0x98, 0x3F
+.byte 0xC4, 0xE1, 0xF9, 0x98, 0x9B
+.byte 0xC4, 0xE1, 0xF9, 0x98, 0x6F
+.byte 0xC4, 0xE1, 0xF9, 0x98, 0x3F
+.byte 0xC5, 0xEC, 0x46, 0x9B
+.byte 0xC5, 0xEC, 0x46, 0x6F
+.byte 0xC5, 0xEC, 0x46, 0x3F
+.byte 0xC5, 0xED, 0x46, 0x9B
+.byte 0xC5, 0xED, 0x46, 0x6F
+.byte 0xC5, 0xED, 0x46, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x46, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x46, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x46, 0x3F
+.byte 0xC4, 0xE1, 0xED, 0x46, 0x9B
+.byte 0xC4, 0xE1, 0xED, 0x46, 0x6F
+.byte 0xC4, 0xE1, 0xED, 0x46, 0x3F
+.byte 0xC5, 0xEC, 0x47, 0x9B
+.byte 0xC5, 0xEC, 0x47, 0x6F
+.byte 0xC5, 0xEC, 0x47, 0x3F
+.byte 0xC5, 0xED, 0x47, 0x9B
+.byte 0xC5, 0xED, 0x47, 0x6F
+.byte 0xC5, 0xED, 0x47, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x47, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x47, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x47, 0x3F
+.byte 0xC4, 0xE1, 0xED, 0x47, 0x9B
+.byte 0xC4, 0xE1, 0xED, 0x47, 0x6F
+.byte 0xC4, 0xE1, 0xED, 0x47, 0x3F
+.byte 0xC5, 0xF8, 0x99, 0x9B
+.byte 0xC5, 0xF8, 0x99, 0x6F
+.byte 0xC5, 0xF8, 0x99, 0x3F
+.byte 0xC5, 0xF9, 0x99, 0x9B
+.byte 0xC5, 0xF9, 0x99, 0x6F
+.byte 0xC5, 0xF9, 0x99, 0x3F
+.byte 0xC4, 0xE1, 0xF8, 0x99, 0x9B
+.byte 0xC4, 0xE1, 0xF8, 0x99, 0x6F
+.byte 0xC4, 0xE1, 0xF8, 0x99, 0x3F
+.byte 0xC4, 0xE1, 0xF9, 0x99, 0x9B
+.byte 0xC4, 0xE1, 0xF9, 0x99, 0x6F
+.byte 0xC4, 0xE1, 0xF9, 0x99, 0x3F
+.byte 0xC4, 0xE3, 0xF9, 0x30, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x30, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x30, 0x04, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x30, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x30, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x30, 0x04, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x31, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x31, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x31, 0x04, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x31, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x31, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x31, 0x04, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x32, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x32, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x32, 0x04, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x32, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x32, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x32, 0x04, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x33, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x33, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x33, 0x04, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x33, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x33, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x33, 0x04, 0x01
+.byte 0xC5, 0xF8, 0x92, 0x9B
+.byte 0xC5, 0xF8, 0x92, 0x6F
+.byte 0xC5, 0xF8, 0x92, 0x3F
+.byte 0xC5, 0xF9, 0x92, 0x9B
+.byte 0xC5, 0xF9, 0x92, 0x6F
+.byte 0xC5, 0xF9, 0x92, 0x3F
+.byte 0xC5, 0xFB, 0x92, 0x9B
+.byte 0xC5, 0xFB, 0x92, 0x6F
+.byte 0xC5, 0xFB, 0x92, 0x3F
+.byte 0xC4, 0xE1, 0xF9, 0x92, 0x9B
+.byte 0xC4, 0xE1, 0xF9, 0x92, 0x6F
+.byte 0xC4, 0xE1, 0xF9, 0x92, 0x3F
+.byte 0xC5, 0xF8, 0x93, 0x9B
+.byte 0xC5, 0xF8, 0x93, 0x6F
+.byte 0xC5, 0xF8, 0x93, 0x3F
+.byte 0xC5, 0xF9, 0x93, 0x9B
+.byte 0xC5, 0xF9, 0x93, 0x6F
+.byte 0xC5, 0xF9, 0x93, 0x3F
+.byte 0xC5, 0xFB, 0x93, 0x9B
+.byte 0xC5, 0xFB, 0x93, 0x6F
+.byte 0xC5, 0xFB, 0x93, 0x3F
+.byte 0xC4, 0xE1, 0xF9, 0x93, 0x9B
+.byte 0xC4, 0xE1, 0xF9, 0x93, 0x6F
+.byte 0xC4, 0xE1, 0xF9, 0x93, 0x3F
diff --git a/gas/testsuite/gas/i386/x86-64-disassem.d b/gas/testsuite/gas/i386/x86-64-disassem.d
index 8662af9..f21bab0 100644
--- a/gas/testsuite/gas/i386/x86-64-disassem.d
+++ b/gas/testsuite/gas/i386/x86-64-disassem.d
@@ -10,5 +10,335 @@ Disassembly of section \.text:
 [ 	]*[a-f0-9]+:[ 	]*ff[ 	]*\(bad\)  
 [ 	]*[a-f0-9]+:[ 	]*ef[ 	]*out    %eax,\(%dx\)
 [ 	]*[a-f0-9]+:[ 	]*ff[ 	]*\(bad\)  
-[ 	]*[a-f0-9]+:[ 	]*d8[ 	]*\.byte 0xd8
+[ 	]*[a-f0-9]+:[ 	]*d8 90 90 90 90 90[ 	]*fcoms  -0x6f6f6f70\(%rax\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 4a[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 41[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 42[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 4b[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 44[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 45[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 98[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 46[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ec 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 ed 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ec 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 ed 47[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f8 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 99[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 30[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popq   \(%rcx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 30[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*pushq  \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 30[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 30[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popq   \(%rcx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 30[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*pushq  \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 30[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 31[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popq   \(%rcx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 31[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*pushq  \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 31[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 31[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popq   \(%rcx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 31[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*pushq  \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 31[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 32[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popq   \(%rcx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 32[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*pushq  \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 32[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 32[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popq   \(%rcx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 32[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*pushq  \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 32[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 33[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popq   \(%rcx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 33[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*pushq  \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 f9 33[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 33[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*8f 01[ 	]*popq   \(%rcx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 33[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6a 01[ 	]*pushq  \$0x1
+[ 	]*[a-f0-9]+:[ 	]*c4 e3 79 33[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*04 01[ 	]*add    \$0x1,%al
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 fb 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 fb 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 fb 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 92[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f8 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 f9 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c5 fb 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c5 fb 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c5 fb 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*9b[ 	]*fwait
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*6f[ 	]*outsl  %ds:\(%rsi\),\(%dx\)
+[ 	]*[a-f0-9]+:[ 	]*c4 e1 f9 93[ 	]*\(bad\)[ ]*
+[ 	]*[a-f0-9]+:[ 	]*3f[ 	]*\(bad\)[ ]*
 #pass
diff --git a/gas/testsuite/gas/i386/x86-64-disassem.s b/gas/testsuite/gas/i386/x86-64-disassem.s
index 81b0ef3..2e6c157 100644
--- a/gas/testsuite/gas/i386/x86-64-disassem.s
+++ b/gas/testsuite/gas/i386/x86-64-disassem.s
@@ -1,3 +1,169 @@
 .text
 .byte 0xFF, 0xEF
 .byte 0xFF, 0xD8
+.fill 0x5, 0x1, 0x90
+.byte 0xC5, 0xEC, 0x4A, 0x9B
+.byte 0xC5, 0xEC, 0x4A, 0x6F
+.byte 0xC5, 0xEC, 0x4A, 0x3F
+.byte 0xC5, 0xED, 0x4A, 0x9B
+.byte 0xC5, 0xED, 0x4A, 0x6F
+.byte 0xC5, 0xED, 0x4A, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x4A, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x4A, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x4A, 0x3F
+.byte 0xC4, 0xE1, 0xED, 0x4A, 0x9B
+.byte 0xC4, 0xE1, 0xED, 0x4A, 0x6F
+.byte 0xC4, 0xE1, 0xED, 0x4A, 0x3F
+.byte 0xC5, 0xEC, 0x41, 0x9B
+.byte 0xC5, 0xEC, 0x41, 0x6F
+.byte 0xC5, 0xEC, 0x41, 0x3F
+.byte 0xC5, 0xED, 0x41, 0x9B
+.byte 0xC5, 0xED, 0x41, 0x6F
+.byte 0xC5, 0xED, 0x41, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x41, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x41, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x41, 0x3F
+.byte 0xC4, 0xE1, 0xED, 0x41, 0x9B
+.byte 0xC4, 0xE1, 0xED, 0x41, 0x6F
+.byte 0xC4, 0xE1, 0xED, 0x41, 0x3F
+.byte 0xC5, 0xEC, 0x42, 0x9B
+.byte 0xC5, 0xEC, 0x42, 0x6F
+.byte 0xC5, 0xEC, 0x42, 0x3F
+.byte 0xC5, 0xED, 0x42, 0x9B
+.byte 0xC5, 0xED, 0x42, 0x6F
+.byte 0xC5, 0xED, 0x42, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x42, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x42, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x42, 0x3F
+.byte 0xC4, 0xE1, 0xED, 0x42, 0x9B
+.byte 0xC4, 0xE1, 0xED, 0x42, 0x6F
+.byte 0xC4, 0xE1, 0xED, 0x42, 0x3F
+.byte 0xC5, 0xEC, 0x4B, 0x9B
+.byte 0xC5, 0xEC, 0x4B, 0x6F
+.byte 0xC5, 0xEC, 0x4B, 0x3F
+.byte 0xC5, 0xED, 0x4B, 0x9B
+.byte 0xC5, 0xED, 0x4B, 0x6F
+.byte 0xC5, 0xED, 0x4B, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x4B, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x4B, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x4B, 0x3F
+.byte 0xC5, 0xF8, 0x44, 0x9B
+.byte 0xC5, 0xF8, 0x44, 0x6F
+.byte 0xC5, 0xF8, 0x44, 0x3F
+.byte 0xC5, 0xF9, 0x44, 0x9B
+.byte 0xC5, 0xF9, 0x44, 0x6F
+.byte 0xC5, 0xF9, 0x44, 0x3F
+.byte 0xC4, 0xE1, 0xF8, 0x44, 0x9B
+.byte 0xC4, 0xE1, 0xF8, 0x44, 0x6F
+.byte 0xC4, 0xE1, 0xF8, 0x44, 0x3F
+.byte 0xC4, 0xE1, 0xF9, 0x44, 0x9B
+.byte 0xC4, 0xE1, 0xF9, 0x44, 0x6F
+.byte 0xC4, 0xE1, 0xF9, 0x44, 0x3F
+.byte 0xC5, 0xEC, 0x45, 0x9B
+.byte 0xC5, 0xEC, 0x45, 0x6F
+.byte 0xC5, 0xEC, 0x45, 0x3F
+.byte 0xC5, 0xED, 0x45, 0x9B
+.byte 0xC5, 0xED, 0x45, 0x6F
+.byte 0xC5, 0xED, 0x45, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x45, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x45, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x45, 0x3F
+.byte 0xC4, 0xE1, 0xED, 0x45, 0x9B
+.byte 0xC4, 0xE1, 0xED, 0x45, 0x6F
+.byte 0xC4, 0xE1, 0xED, 0x45, 0x3F
+.byte 0xC5, 0xF8, 0x98, 0x9B
+.byte 0xC5, 0xF8, 0x98, 0x6F
+.byte 0xC5, 0xF8, 0x98, 0x3F
+.byte 0xC5, 0xF9, 0x98, 0x9B
+.byte 0xC5, 0xF9, 0x98, 0x6F
+.byte 0xC5, 0xF9, 0x98, 0x3F
+.byte 0xC4, 0xE1, 0xF8, 0x98, 0x9B
+.byte 0xC4, 0xE1, 0xF8, 0x98, 0x6F
+.byte 0xC4, 0xE1, 0xF8, 0x98, 0x3F
+.byte 0xC4, 0xE1, 0xF9, 0x98, 0x9B
+.byte 0xC4, 0xE1, 0xF9, 0x98, 0x6F
+.byte 0xC4, 0xE1, 0xF9, 0x98, 0x3F
+.byte 0xC5, 0xEC, 0x46, 0x9B
+.byte 0xC5, 0xEC, 0x46, 0x6F
+.byte 0xC5, 0xEC, 0x46, 0x3F
+.byte 0xC5, 0xED, 0x46, 0x9B
+.byte 0xC5, 0xED, 0x46, 0x6F
+.byte 0xC5, 0xED, 0x46, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x46, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x46, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x46, 0x3F
+.byte 0xC4, 0xE1, 0xED, 0x46, 0x9B
+.byte 0xC4, 0xE1, 0xED, 0x46, 0x6F
+.byte 0xC4, 0xE1, 0xED, 0x46, 0x3F
+.byte 0xC5, 0xEC, 0x47, 0x9B
+.byte 0xC5, 0xEC, 0x47, 0x6F
+.byte 0xC5, 0xEC, 0x47, 0x3F
+.byte 0xC5, 0xED, 0x47, 0x9B
+.byte 0xC5, 0xED, 0x47, 0x6F
+.byte 0xC5, 0xED, 0x47, 0x3F
+.byte 0xC4, 0xE1, 0xEC, 0x47, 0x9B
+.byte 0xC4, 0xE1, 0xEC, 0x47, 0x6F
+.byte 0xC4, 0xE1, 0xEC, 0x47, 0x3F
+.byte 0xC4, 0xE1, 0xED, 0x47, 0x9B
+.byte 0xC4, 0xE1, 0xED, 0x47, 0x6F
+.byte 0xC4, 0xE1, 0xED, 0x47, 0x3F
+.byte 0xC5, 0xF8, 0x99, 0x9B
+.byte 0xC5, 0xF8, 0x99, 0x6F
+.byte 0xC5, 0xF8, 0x99, 0x3F
+.byte 0xC5, 0xF9, 0x99, 0x9B
+.byte 0xC5, 0xF9, 0x99, 0x6F
+.byte 0xC5, 0xF9, 0x99, 0x3F
+.byte 0xC4, 0xE1, 0xF8, 0x99, 0x9B
+.byte 0xC4, 0xE1, 0xF8, 0x99, 0x6F
+.byte 0xC4, 0xE1, 0xF8, 0x99, 0x3F
+.byte 0xC4, 0xE1, 0xF9, 0x99, 0x9B
+.byte 0xC4, 0xE1, 0xF9, 0x99, 0x6F
+.byte 0xC4, 0xE1, 0xF9, 0x99, 0x3F
+.byte 0xC4, 0xE3, 0xF9, 0x30, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x30, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x30, 0x04, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x30, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x30, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x30, 0x04, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x31, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x31, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x31, 0x04, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x31, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x31, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x31, 0x04, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x32, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x32, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x32, 0x04, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x32, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x32, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x32, 0x04, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x33, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x33, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0xF9, 0x33, 0x04, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x33, 0x8F, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x33, 0x6A, 0x01
+.byte 0xC4, 0xE3, 0x79, 0x33, 0x04, 0x01
+.byte 0xC5, 0xF8, 0x92, 0x9B
+.byte 0xC5, 0xF8, 0x92, 0x6F
+.byte 0xC5, 0xF8, 0x92, 0x3F
+.byte 0xC5, 0xF9, 0x92, 0x9B
+.byte 0xC5, 0xF9, 0x92, 0x6F
+.byte 0xC5, 0xF9, 0x92, 0x3F
+.byte 0xC5, 0xFB, 0x92, 0x9B
+.byte 0xC5, 0xFB, 0x92, 0x6F
+.byte 0xC5, 0xFB, 0x92, 0x3F
+.byte 0xC4, 0xE1, 0xF9, 0x92, 0x9B
+.byte 0xC4, 0xE1, 0xF9, 0x92, 0x6F
+.byte 0xC4, 0xE1, 0xF9, 0x92, 0x3F
+.byte 0xC5, 0xF8, 0x93, 0x9B
+.byte 0xC5, 0xF8, 0x93, 0x6F
+.byte 0xC5, 0xF8, 0x93, 0x3F
+.byte 0xC5, 0xF9, 0x93, 0x9B
+.byte 0xC5, 0xF9, 0x93, 0x6F
+.byte 0xC5, 0xF9, 0x93, 0x3F
+.byte 0xC5, 0xFB, 0x93, 0x9B
+.byte 0xC5, 0xFB, 0x93, 0x6F
+.byte 0xC5, 0xFB, 0x93, 0x3F
+.byte 0xC4, 0xE1, 0xF9, 0x93, 0x9B
+.byte 0xC4, 0xE1, 0xF9, 0x93, 0x6F
+.byte 0xC4, 0xE1, 0xF9, 0x93, 0x3F
diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c
index e590e24..055b38f 100644
--- a/opcodes/i386-dis.c
+++ b/opcodes/i386-dis.c
@@ -820,6 +820,37 @@ enum
   MOD_VEX_0F16_PREFIX_0,
   MOD_VEX_0F17,
   MOD_VEX_0F2B,
+  MOD_VEX_W_0_0F41_P_0_LEN_1,
+  MOD_VEX_W_1_0F41_P_0_LEN_1,
+  MOD_VEX_W_0_0F41_P_2_LEN_1,
+  MOD_VEX_W_1_0F41_P_2_LEN_1,
+  MOD_VEX_W_0_0F42_P_0_LEN_1,
+  MOD_VEX_W_1_0F42_P_0_LEN_1,
+  MOD_VEX_W_0_0F42_P_2_LEN_1,
+  MOD_VEX_W_1_0F42_P_2_LEN_1,
+  MOD_VEX_W_0_0F44_P_0_LEN_1,
+  MOD_VEX_W_1_0F44_P_0_LEN_1,
+  MOD_VEX_W_0_0F44_P_2_LEN_1,
+  MOD_VEX_W_1_0F44_P_2_LEN_1,
+  MOD_VEX_W_0_0F45_P_0_LEN_1,
+  MOD_VEX_W_1_0F45_P_0_LEN_1,
+  MOD_VEX_W_0_0F45_P_2_LEN_1,
+  MOD_VEX_W_1_0F45_P_2_LEN_1,
+  MOD_VEX_W_0_0F46_P_0_LEN_1,
+  MOD_VEX_W_1_0F46_P_0_LEN_1,
+  MOD_VEX_W_0_0F46_P_2_LEN_1,
+  MOD_VEX_W_1_0F46_P_2_LEN_1,
+  MOD_VEX_W_0_0F47_P_0_LEN_1,
+  MOD_VEX_W_1_0F47_P_0_LEN_1,
+  MOD_VEX_W_0_0F47_P_2_LEN_1,
+  MOD_VEX_W_1_0F47_P_2_LEN_1,
+  MOD_VEX_W_0_0F4A_P_0_LEN_1,
+  MOD_VEX_W_1_0F4A_P_0_LEN_1,
+  MOD_VEX_W_0_0F4A_P_2_LEN_1,
+  MOD_VEX_W_1_0F4A_P_2_LEN_1,
+  MOD_VEX_W_0_0F4B_P_0_LEN_1,
+  MOD_VEX_W_1_0F4B_P_0_LEN_1,
+  MOD_VEX_W_0_0F4B_P_2_LEN_1,
   MOD_VEX_0F50,
   MOD_VEX_0F71_REG_2,
   MOD_VEX_0F71_REG_4,
@@ -831,6 +862,26 @@ enum
   MOD_VEX_0F73_REG_3,
   MOD_VEX_0F73_REG_6,
   MOD_VEX_0F73_REG_7,
+  MOD_VEX_W_0_0F91_P_0_LEN_0,
+  MOD_VEX_W_1_0F91_P_0_LEN_0,
+  MOD_VEX_W_0_0F91_P_2_LEN_0,
+  MOD_VEX_W_1_0F91_P_2_LEN_0,
+  MOD_VEX_W_0_0F92_P_0_LEN_0,
+  MOD_VEX_W_0_0F92_P_2_LEN_0,
+  MOD_VEX_W_0_0F92_P_3_LEN_0,
+  MOD_VEX_W_1_0F92_P_3_LEN_0,
+  MOD_VEX_W_0_0F93_P_0_LEN_0,
+  MOD_VEX_W_0_0F93_P_2_LEN_0,
+  MOD_VEX_W_0_0F93_P_3_LEN_0,
+  MOD_VEX_W_1_0F93_P_3_LEN_0,
+  MOD_VEX_W_0_0F98_P_0_LEN_0,
+  MOD_VEX_W_1_0F98_P_0_LEN_0,
+  MOD_VEX_W_0_0F98_P_2_LEN_0,
+  MOD_VEX_W_1_0F98_P_2_LEN_0,
+  MOD_VEX_W_0_0F99_P_0_LEN_0,
+  MOD_VEX_W_1_0F99_P_0_LEN_0,
+  MOD_VEX_W_0_0F99_P_2_LEN_0,
+  MOD_VEX_W_1_0F99_P_2_LEN_0,
   MOD_VEX_0FAE_REG_2,
   MOD_VEX_0FAE_REG_3,
   MOD_VEX_0FD7_PREFIX_2,
@@ -845,6 +896,14 @@ enum
   MOD_VEX_0F385A_PREFIX_2,
   MOD_VEX_0F388C_PREFIX_2,
   MOD_VEX_0F388E_PREFIX_2,
+  MOD_VEX_W_0_0F3A30_P_2_LEN_0,
+  MOD_VEX_W_1_0F3A30_P_2_LEN_0,
+  MOD_VEX_W_0_0F3A31_P_2_LEN_0,
+  MOD_VEX_W_1_0F3A31_P_2_LEN_0,
+  MOD_VEX_W_0_0F3A32_P_2_LEN_0,
+  MOD_VEX_W_1_0F3A32_P_2_LEN_0,
+  MOD_VEX_W_0_0F3A33_P_2_LEN_0,
+  MOD_VEX_W_1_0F3A33_P_2_LEN_0,
 
   MOD_EVEX_0F10_PREFIX_1,
   MOD_EVEX_0F10_PREFIX_3,
@@ -10446,82 +10505,82 @@ static const struct dis386 vex_w_table[][2] = {
   },
   {
     /* VEX_W_0F41_P_0_LEN_1 */
-    { "kandw",          { MaskG, MaskVex, MaskR }, 0 },
-    { "kandq",          { MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F41_P_0_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F41_P_0_LEN_1) },
   },
   {
     /* VEX_W_0F41_P_2_LEN_1 */
-    { "kandb",          { MaskG, MaskVex, MaskR }, 0 },
-    { "kandd",          { MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F41_P_2_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F41_P_2_LEN_1) }
   },
   {
     /* VEX_W_0F42_P_0_LEN_1 */
-    { "kandnw",         { MaskG, MaskVex, MaskR }, 0 },
-    { "kandnq",         { MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F42_P_0_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F42_P_0_LEN_1) },
   },
   {
     /* VEX_W_0F42_P_2_LEN_1 */
-    { "kandnb",         { MaskG, MaskVex, MaskR }, 0 },
-    { "kandnd",         { MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F42_P_2_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F42_P_2_LEN_1) },
   },
   {
     /* VEX_W_0F44_P_0_LEN_0 */
-    { "knotw",		{ MaskG, MaskR }, 0 },
-    { "knotq",		{ MaskG, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F44_P_0_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F44_P_0_LEN_1) },
   },
   {
     /* VEX_W_0F44_P_2_LEN_0 */
-    { "knotb",		{ MaskG, MaskR }, 0 },
-    { "knotd",		{ MaskG, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F44_P_2_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F44_P_2_LEN_1) },
   },
   {
     /* VEX_W_0F45_P_0_LEN_1 */
-    { "korw",           { MaskG, MaskVex, MaskR }, 0 },
-    { "korq",           { MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F45_P_0_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F45_P_0_LEN_1) },
   },
   {
     /* VEX_W_0F45_P_2_LEN_1 */
-    { "korb",           { MaskG, MaskVex, MaskR }, 0 },
-    { "kord",           { MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F45_P_2_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F45_P_2_LEN_1) },
   },
   {
     /* VEX_W_0F46_P_0_LEN_1 */
-    { "kxnorw",         { MaskG, MaskVex, MaskR }, 0 },
-    { "kxnorq",         { MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F46_P_0_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F46_P_0_LEN_1) },
   },
   {
     /* VEX_W_0F46_P_2_LEN_1 */
-    { "kxnorb",         { MaskG, MaskVex, MaskR }, 0 },
-    { "kxnord",         { MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F46_P_2_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F46_P_2_LEN_1) },
   },
   {
     /* VEX_W_0F47_P_0_LEN_1 */
-    { "kxorw",          { MaskG, MaskVex, MaskR }, 0 },
-    { "kxorq",          { MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F47_P_0_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F47_P_0_LEN_1) },
   },
   {
     /* VEX_W_0F47_P_2_LEN_1 */
-    { "kxorb",          { MaskG, MaskVex, MaskR }, 0 },
-    { "kxord",          { MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F47_P_2_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F47_P_2_LEN_1) },
   },
   {
     /* VEX_W_0F4A_P_0_LEN_1 */
-    { "kaddw",          { MaskG, MaskVex, MaskR }, 0 },
-    { "kaddq",          { MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F4A_P_0_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F4A_P_0_LEN_1) },
   },
   {
     /* VEX_W_0F4A_P_2_LEN_1 */
-    { "kaddb",          { MaskG, MaskVex, MaskR }, 0 },
-    { "kaddd",          { MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F4A_P_2_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F4A_P_2_LEN_1) },
   },
   {
     /* VEX_W_0F4B_P_0_LEN_1 */
-    { "kunpckwd",	{ MaskG, MaskVex, MaskR }, 0 },
-    { "kunpckdq",	{ MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F4B_P_0_LEN_1) },
+    { MOD_TABLE (MOD_VEX_W_1_0F4B_P_0_LEN_1) },
   },
   {
     /* VEX_W_0F4B_P_2_LEN_1 */
-    { "kunpckbw",	{ MaskG, MaskVex, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F4B_P_2_LEN_1) },
   },
   {
     /* VEX_W_0F50_M_0 */
@@ -10851,59 +10910,59 @@ static const struct dis386 vex_w_table[][2] = {
   },
   {
     /* VEX_W_0F91_P_0_LEN_0 */
-    { "kmovw",		{ Ew, MaskG }, 0 },
-    { "kmovq",		{ Eq, MaskG }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F91_P_0_LEN_0) },
+    { MOD_TABLE (MOD_VEX_W_1_0F91_P_0_LEN_0) },
   },
   {
     /* VEX_W_0F91_P_2_LEN_0 */
-    { "kmovb",		{ Eb, MaskG }, 0 },
-    { "kmovd",		{ Ed, MaskG }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F91_P_2_LEN_0) },
+    { MOD_TABLE (MOD_VEX_W_1_0F91_P_2_LEN_0) },
   },
   {
     /* VEX_W_0F92_P_0_LEN_0 */
-    { "kmovw",		{ MaskG, Rdq }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F92_P_0_LEN_0) },
   },
   {
     /* VEX_W_0F92_P_2_LEN_0 */
-    { "kmovb",		{ MaskG, Rdq }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F92_P_2_LEN_0) },
   },
   {
     /* VEX_W_0F92_P_3_LEN_0 */
-    { "kmovd",		{ MaskG, Rdq }, 0 },
-    { "kmovq",		{ MaskG, Rdq }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F92_P_3_LEN_0) },
+    { MOD_TABLE (MOD_VEX_W_1_0F92_P_3_LEN_0) },
   },
   {
     /* VEX_W_0F93_P_0_LEN_0 */
-    { "kmovw",		{ Gdq, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F93_P_0_LEN_0) },
   },
   {
     /* VEX_W_0F93_P_2_LEN_0 */
-    { "kmovb",		{ Gdq, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F93_P_2_LEN_0) },
   },
   {
     /* VEX_W_0F93_P_3_LEN_0 */
-    { "kmovd",		{ Gdq, MaskR }, 0 },
-    { "kmovq",		{ Gdq, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F93_P_3_LEN_0) },
+    { MOD_TABLE (MOD_VEX_W_1_0F93_P_3_LEN_0) },
   },
   {
     /* VEX_W_0F98_P_0_LEN_0 */
-    { "kortestw",	{ MaskG, MaskR }, 0 },
-    { "kortestq",	{ MaskG, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F98_P_0_LEN_0) },
+    { MOD_TABLE (MOD_VEX_W_1_0F98_P_0_LEN_0) },
   },
   {
     /* VEX_W_0F98_P_2_LEN_0 */
-    { "kortestb",	{ MaskG, MaskR }, 0 },
-    { "kortestd",	{ MaskG, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F98_P_2_LEN_0) },
+    { MOD_TABLE (MOD_VEX_W_1_0F98_P_2_LEN_0) },
   },
   {
     /* VEX_W_0F99_P_0_LEN_0 */
-    { "ktestw",	{ MaskG, MaskR }, 0 },
-    { "ktestq",	{ MaskG, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F99_P_0_LEN_0) },
+    { MOD_TABLE (MOD_VEX_W_1_0F99_P_0_LEN_0) },
   },
   {
     /* VEX_W_0F99_P_2_LEN_0 */
-    { "ktestb",	{ MaskG, MaskR }, 0 },
-    { "ktestd",	{ MaskG, MaskR }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F99_P_2_LEN_0) },
+    { MOD_TABLE (MOD_VEX_W_1_0F99_P_2_LEN_0) },
   },
   {
     /* VEX_W_0FAE_R_2_M_0 */
@@ -11489,23 +11548,23 @@ static const struct dis386 vex_w_table[][2] = {
   },
   {
     /* VEX_W_0F3A30_P_2_LEN_0 */
-    { "kshiftrb",	{ MaskG, MaskR, Ib }, 0 },
-    { "kshiftrw",	{ MaskG, MaskR, Ib }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F3A30_P_2_LEN_0) },
+    { MOD_TABLE (MOD_VEX_W_1_0F3A30_P_2_LEN_0) },
   },
   {
     /* VEX_W_0F3A31_P_2_LEN_0 */
-    { "kshiftrd",	{ MaskG, MaskR, Ib }, 0 },
-    { "kshiftrq",	{ MaskG, MaskR, Ib }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F3A31_P_2_LEN_0) },
+    { MOD_TABLE (MOD_VEX_W_1_0F3A31_P_2_LEN_0) },
   },
   {
     /* VEX_W_0F3A32_P_2_LEN_0 */
-    { "kshiftlb",	{ MaskG, MaskR, Ib }, 0 },
-    { "kshiftlw",	{ MaskG, MaskR, Ib }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F3A32_P_2_LEN_0) },
+    { MOD_TABLE (MOD_VEX_W_1_0F3A32_P_2_LEN_0) },
   },
   {
     /* VEX_W_0F3A33_P_2_LEN_0 */
-    { "kshiftld",	{ MaskG, MaskR, Ib }, 0 },
-    { "kshiftlq",	{ MaskG, MaskR, Ib }, 0 },
+    { MOD_TABLE (MOD_VEX_W_0_0F3A33_P_2_LEN_0) },
+    { MOD_TABLE (MOD_VEX_W_1_0F3A33_P_2_LEN_0) },
   },
   {
     /* VEX_W_0F3A38_P_2 */
@@ -11908,6 +11967,161 @@ static const struct dis386 mod_table[][2] = {
     { VEX_W_TABLE (VEX_W_0F2B_M_0) },
   },
   {
+    /* MOD_VEX_W_0_0F41_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "kandw",          { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F41_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "kandq",          { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F41_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "kandb",          { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F41_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "kandd",          { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F42_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "kandnw",         { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F42_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "kandnq",         { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F42_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "kandnb",         { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F42_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "kandnd",         { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F44_P_0_LEN_0 */
+    { Bad_Opcode },
+    { "knotw",          { MaskG, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F44_P_0_LEN_0 */
+    { Bad_Opcode },
+    { "knotq",          { MaskG, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F44_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "knotb",          { MaskG, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F44_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "knotd",          { MaskG, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F45_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "korw",       { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F45_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "korq",       { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F45_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "korb",       { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F45_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "kord",       { MaskG, MaskVex, MaskR }, 0 },
+  },
+ {
+    /* MOD_VEX_W_0_0F46_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "kxnorw",     { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F46_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "kxnorq",     { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F46_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "kxnorb",     { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F46_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "kxnord",     { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F47_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "kxorw",      { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F47_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "kxorq",      { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F47_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "kxorb",      { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F47_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "kxord",      { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F4A_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "kaddw",          { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F4A_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "kaddq",          { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F4A_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "kaddb",          { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F4A_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "kaddd",          { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F4B_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "kunpckwd",   { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F4B_P_0_LEN_1 */
+    { Bad_Opcode },
+    { "kunpckdq",   { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F4B_P_2_LEN_1 */
+    { Bad_Opcode },
+    { "kunpckbw",   { MaskG, MaskVex, MaskR }, 0 },
+  },
+  {
     /* MOD_VEX_0F50 */
     { Bad_Opcode },
     { VEX_W_TABLE (VEX_W_0F50_M_0) },
@@ -11963,6 +12177,106 @@ static const struct dis386 mod_table[][2] = {
     { PREFIX_TABLE (PREFIX_VEX_0F73_REG_7) },
   },
   {
+    /* MOD_VEX_W_0_0F91_P_0_LEN_0 */
+    { "kmovw",		{ Ew, MaskG }, 0 },
+    { Bad_Opcode },
+  },
+  {
+    /* MOD_VEX_W_0_0F91_P_0_LEN_0 */
+    { "kmovq",		{ Eq, MaskG }, 0 },
+    { Bad_Opcode },
+  },
+  {
+    /* MOD_VEX_W_0_0F91_P_2_LEN_0 */
+    { "kmovb",		{ Eb, MaskG }, 0 },
+    { Bad_Opcode },
+  },
+  {
+    /* MOD_VEX_W_0_0F91_P_2_LEN_0 */
+    { "kmovd",		{ Ed, MaskG }, 0 },
+    { Bad_Opcode },
+  },
+  {
+    /* MOD_VEX_W_0_0F92_P_0_LEN_0 */
+    { Bad_Opcode },
+    { "kmovw",		{ MaskG, Rdq }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F92_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "kmovb",		{ MaskG, Rdq }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F92_P_3_LEN_0 */
+    { Bad_Opcode },
+    { "kmovd",		{ MaskG, Rdq }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F92_P_3_LEN_0 */
+    { Bad_Opcode },
+    { "kmovq",		{ MaskG, Rdq }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F93_P_0_LEN_0 */
+    { Bad_Opcode },
+    { "kmovw",		{ Gdq, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F93_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "kmovb",		{ Gdq, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F93_P_3_LEN_0 */
+    { Bad_Opcode },
+    { "kmovd",		{ Gdq, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F93_P_3_LEN_0 */
+    { Bad_Opcode },
+    { "kmovq",		{ Gdq, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F98_P_0_LEN_0 */
+    { Bad_Opcode },
+    { "kortestw", { MaskG, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F98_P_0_LEN_0 */
+    { Bad_Opcode },
+    { "kortestq", { MaskG, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F98_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "kortestb", { MaskG, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F98_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "kortestd", { MaskG, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F99_P_0_LEN_0 */
+    { Bad_Opcode },
+    { "ktestw", { MaskG, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F99_P_0_LEN_0 */
+    { Bad_Opcode },
+    { "ktestq", { MaskG, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F99_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "ktestb", { MaskG, MaskR }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F99_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "ktestd", { MaskG, MaskR }, 0 },
+  },
+  {
     /* MOD_VEX_0FAE_REG_2 */
     { VEX_LEN_TABLE (VEX_LEN_0FAE_R_2_M_0) },
   },
@@ -12019,6 +12333,46 @@ static const struct dis386 mod_table[][2] = {
     /* MOD_VEX_0F388E_PREFIX_2 */
     { "vpmaskmov%LW",	{ Mx, Vex, XM }, 0 },
   },
+  {
+    /* MOD_VEX_W_0_0F3A30_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "kshiftrb",       { MaskG, MaskR, Ib }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F3A30_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "kshiftrw",       { MaskG, MaskR, Ib }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F3A31_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "kshiftrd",       { MaskG, MaskR, Ib }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F3A31_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "kshiftrq",       { MaskG, MaskR, Ib }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F3A32_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "kshiftlb",       { MaskG, MaskR, Ib }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F3A32_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "kshiftlw",       { MaskG, MaskR, Ib }, 0 },
+  },
+  {
+    /* MOD_VEX_W_0_0F3A33_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "kshiftld",       { MaskG, MaskR, Ib }, 0 },
+  },
+  {
+    /* MOD_VEX_W_1_0F3A33_P_2_LEN_0 */
+    { Bad_Opcode },
+    { "kshiftlq",       { MaskG, MaskR, Ib }, 0 },
+  },
 #define NEED_MOD_TABLE
 #include "i386-dis-evex.h"
 #undef NEED_MOD_TABLE
-- 
1.8.3.1


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]