From ab4e4ed5dabc378c06ee647afd5793513393ae3f Mon Sep 17 00:00:00 2001 From: Alexander Fomin Date: Fri, 21 Aug 2015 14:06:41 +0300 Subject: [PATCH] PR binutils/18257: Properly decode x86/Intel mask instructions. 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/ChangeLog | 8 + 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/ChangeLog | 37 ++ opcodes/i386-dis.c | 472 ++++++++++++++++++++--- 7 files changed, 1452 insertions(+), 61 deletions(-) diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index a12b7b4566..f949d02914 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2015-08-21 Alexander Fomin + + 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. + 2015-08-19 Jiong Wang * gas/aarch64/reloc-dtprel-lo12-ldst8.s: New testcase. diff --git a/gas/testsuite/gas/i386/disassem.d b/gas/testsuite/gas/i386/disassem.d index d8c6d61410..2f39662bfb 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 81b0ef3290..2e6c157c2c 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 8662af99b2..f21bab004a 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 81b0ef3290..2e6c157c2c 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/ChangeLog b/opcodes/ChangeLog index 3661432d9a..89e150fa42 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,40 @@ +2015-08-21 Alexander Fomin + + 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. + 2015-08-17 Alan Modra * cgen.sh: Trim trailing space from cgen output. diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index e590e246c7..055b38f986 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 */ @@ -11907,6 +11966,161 @@ static const struct dis386 mod_table[][2] = { /* MOD_VEX_0F2B */ { 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 }, @@ -11962,6 +12176,106 @@ static const struct dis386 mod_table[][2] = { { Bad_Opcode }, { 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 -- 2.34.1