From b6169b206a513cc5be8027dd7eb4b26039d76a4f Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Sat, 20 Dec 2008 17:40:51 +0000 Subject: gas/ 2008-12-20 H.J. Lu * config/tc-i386.c (_i386_insn): Add swap_operand. (parse_insn): Handle ".s". (match_template): Handle swap_operand. * doc/c-i386.texi: Document .s suffix. gas/testsuite/ 2008-12-20 H.J. Lu * gas/i386/i386.exp: Run opts, opts-intel, sse2avx-opts, sse2avx-opts-intel, x86-64-opts, x86-64-opts-intel, x86-64-sse2avx-opts and x86-64-sse2avx-opts-intel. * gas/i386/opts.d: New. * gas/i386/opts-intel.d: Likewise. * gas/i386/opts.s: Likewise. * gas/i386/sse2avx-opts.d: Likewise. * gas/i386/sse2avx-opts-intel.d: Likewise. * gas/i386/x86-64-opts.d: Likewise. * gas/i386/x86-64-opts-intel.d: Likewise. * gas/i386/x86-64-opts.s: Likewise. * gas/i386/x86-64-sse2avx-opts.d: Likewise. * gas/i386/x86-64-sse2avx-opts-intel.d: Likewise. opcodes/ 2008-12-20 H.J. Lu * i386-dis.c (EbS): New. (EvS): Likewise. (EMS): Likewise. (EXqS): Likewise. (EXxS): Likewise. (b_swap_mode): Likewise. (v_swap_mode): Likewise. (q_swap_mode): Likewise. (x_swap_mode): Likewise. (v_mode): Updated. (w_mode): Likewise. (t_mode): Likewise. (xmm_mode): Likewise. (swap_operand): Likewise. (dis386): Use EbS on movB. Use EvS on moveS. (dis386_twobyte): Use EXxS on movapX. (prefix_table): Use EXxS on movups, movupd, movdqu, movdqa, vmovups, vmovdqu, vmovdqa. Use EMS and EXqS on movq. (vex_table): Use EXxS on vmovapX. (vex_len_table): Use EXqS on vmovq. (intel_operand_size): Handle b_swap_mode, v_swap_mode, q_swap_mode and x_swap_mode. (OP_E_register): Handle b_swap_mode and v_swap_mode. (OP_EM): Handle v_swap_mode. (OP_EX): x_swap_mode and q_swap_mode. * i386-gen.c (opcode_modifiers): Add S. * i386-opc.h (S): New. (Modrm): Updated. (i386_opcode_modifier): Add s. * i386-opc.tbl: Add S to movapd, movaps, movdqa, movdqu, movq, movupd, movups, vmovapd, vmovaps, vmovdqa, vmovdqu and vmovq. * i386-tbl.h: Regenerated. --- gas/ChangeLog | 8 ++ gas/config/tc-i386.c | 33 ++++++ gas/doc/c-i386.texi | 9 +- gas/testsuite/ChangeLog | 17 +++ gas/testsuite/gas/i386/i386.exp | 8 ++ gas/testsuite/gas/i386/opts-intel.d | 113 ++++++++++++++++++ gas/testsuite/gas/i386/opts.d | 112 ++++++++++++++++++ gas/testsuite/gas/i386/opts.s | 125 ++++++++++++++++++++ gas/testsuite/gas/i386/sse2avx-opts-intel.d | 114 ++++++++++++++++++ gas/testsuite/gas/i386/sse2avx-opts.d | 114 ++++++++++++++++++ gas/testsuite/gas/i386/x86-64-opts-intel.d | 119 +++++++++++++++++++ gas/testsuite/gas/i386/x86-64-opts.d | 118 +++++++++++++++++++ gas/testsuite/gas/i386/x86-64-opts.s | 131 +++++++++++++++++++++ gas/testsuite/gas/i386/x86-64-sse2avx-opts-intel.d | 120 +++++++++++++++++++ gas/testsuite/gas/i386/x86-64-sse2avx-opts.d | 120 +++++++++++++++++++ 15 files changed, 1260 insertions(+), 1 deletion(-) create mode 100644 gas/testsuite/gas/i386/opts-intel.d create mode 100644 gas/testsuite/gas/i386/opts.d create mode 100644 gas/testsuite/gas/i386/opts.s create mode 100644 gas/testsuite/gas/i386/sse2avx-opts-intel.d create mode 100644 gas/testsuite/gas/i386/sse2avx-opts.d create mode 100644 gas/testsuite/gas/i386/x86-64-opts-intel.d create mode 100644 gas/testsuite/gas/i386/x86-64-opts.d create mode 100644 gas/testsuite/gas/i386/x86-64-opts.s create mode 100644 gas/testsuite/gas/i386/x86-64-sse2avx-opts-intel.d create mode 100644 gas/testsuite/gas/i386/x86-64-sse2avx-opts.d (limited to 'gas') diff --git a/gas/ChangeLog b/gas/ChangeLog index b41964a..4d9c5a0 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,11 @@ +2008-12-20 H.J. Lu + + * config/tc-i386.c (_i386_insn): Add swap_operand. + (parse_insn): Handle ".s". + (match_template): Handle swap_operand. + + * doc/c-i386.texi: Document .s suffix. + 2008-12-20 Hans-Peter Nilsson * config/tc-cris.c (cris_process_instruction): Handle diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index f0b374d..d74c1c6 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -279,6 +279,9 @@ struct _i386_insn sib_byte sib; drex_byte drex; vex_prefix vex; + + /* Swap operand in encoding. */ + unsigned int swap_operand : 1; }; typedef struct _i386_insn i386_insn; @@ -2908,6 +2911,7 @@ parse_insn (char *line, char *mnemonic) char *mnem_p; int supported; const template *t; + char *dot_p = NULL; /* Non-zero if we found a prefix only acceptable with string insns. */ const char *expecting_string_instruction = NULL; @@ -2917,6 +2921,8 @@ parse_insn (char *line, char *mnemonic) mnem_p = mnemonic; while ((*mnem_p = mnemonic_chars[(unsigned char) *l]) != 0) { + if (*mnem_p == '.') + dot_p = mnem_p; mnem_p++; if (mnem_p >= mnemonic + MAX_MNEM_SIZE) { @@ -2988,8 +2994,24 @@ parse_insn (char *line, char *mnemonic) break; } + if (!current_templates && dot_p) + { + if (mnem_p - 2 == dot_p) + { + /* Check if we should swap operand in encoding. */ + if (dot_p[1] == 's') + i.swap_operand = 1; + else + goto check_suffix; + mnem_p = dot_p; + *dot_p = '\0'; + current_templates = hash_find (op_hash, mnemonic); + } + } + if (!current_templates) { +check_suffix: /* See if we can get a match by trimming off a suffix. */ switch (mnem_p[-1]) { @@ -3712,6 +3734,16 @@ match_template (void) && operand_type_equal (&i.types [0], &acc32) && operand_type_equal (&i.types [1], &acc32)) continue; + if (i.swap_operand) + { + /* If we swap operand in encoding, we either match + the next one or reverse direction of operands. */ + if (t->opcode_modifier.s) + continue; + else if (t->opcode_modifier.d) + goto check_reverse; + } + case 3: case 4: case 5: @@ -3728,6 +3760,7 @@ match_template (void) if (!t->opcode_modifier.d && !t->opcode_modifier.floatd) continue; +check_reverse: /* Try reversing direction of operands. */ overlap0 = operand_type_and (i.types[0], operand_types[1]); overlap1 = operand_type_and (i.types[1], operand_types[0]); diff --git a/gas/doc/c-i386.texi b/gas/doc/c-i386.texi index 98c97e4..29f764d 100644 --- a/gas/doc/c-i386.texi +++ b/gas/doc/c-i386.texi @@ -14,7 +14,7 @@ @end ifclear @cindex i386 support -@cindex i80306 support +@cindex i80386 support @cindex x86-64 support The i386 version @code{@value{AS}} supports both the original Intel 386 @@ -353,6 +353,13 @@ thus, are @samp{bl} (from byte to long), @samp{bw} (from byte to word), @samp{wq} (from word to quadruple word), and @samp{lq} (from long to quadruple word). +@cindex encoding options, i386 +@cindex encoding options, x86-64 + +Different encoding options can be specified via optional mnemonic +suffix. @samp{.s} suffix swaps 2 register operands in encoding when +moving from one register to another. + @cindex conversion instructions, i386 @cindex i386 conversion instructions @cindex conversion instructions, x86-64 diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 017a37a..c3371a6 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,20 @@ +2008-12-20 H.J. Lu + + * gas/i386/i386.exp: Run opts, opts-intel, sse2avx-opts, + sse2avx-opts-intel, x86-64-opts, x86-64-opts-intel, + x86-64-sse2avx-opts and x86-64-sse2avx-opts-intel. + + * gas/i386/opts.d: New. + * gas/i386/opts-intel.d: Likewise. + * gas/i386/opts.s: Likewise. + * gas/i386/sse2avx-opts.d: Likewise. + * gas/i386/sse2avx-opts-intel.d: Likewise. + * gas/i386/x86-64-opts.d: Likewise. + * gas/i386/x86-64-opts-intel.d: Likewise. + * gas/i386/x86-64-opts.s: Likewise. + * gas/i386/x86-64-sse2avx-opts.d: Likewise. + * gas/i386/x86-64-sse2avx-opts-intel.d: Likewise. + 2008-12-20 Hans-Peter Nilsson * gas/cris/rd-tls-1.s, gas/cris/rd-tls-1.d: Test :IE and diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp index 8b1b55c..1d9ed4f 100644 --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -140,6 +140,10 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_32_check]] run_dump_test "arch-avx-1" run_list_test "arch-avx-1-1" "-march=generic32+avx -I${srcdir}/$subdir -al" run_list_test "arch-avx-1-2" "-march=generic32+aes -I${srcdir}/$subdir -al" + run_dump_test "opts" + run_dump_test "opts-intel" + run_dump_test "sse2avx-opts" + run_dump_test "sse2avx-opts-intel" # These tests require support for 8 and 16 bit relocs, # so we only run them for ELF and COFF targets. @@ -293,6 +297,10 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t run_dump_test "x86-64-ept" run_dump_test "x86-64-ept-intel" run_list_test "x86-64-inval-ept" "-al" + run_dump_test "x86-64-opts" + run_dump_test "x86-64-opts-intel" + run_dump_test "x86-64-sse2avx-opts" + run_dump_test "x86-64-sse2avx-opts-intel" if { ![istarget "*-*-aix*"] && ![istarget "*-*-beos*"] diff --git a/gas/testsuite/gas/i386/opts-intel.d b/gas/testsuite/gas/i386/opts-intel.d new file mode 100644 index 0000000..e7f5f41 --- /dev/null +++ b/gas/testsuite/gas/i386/opts-intel.d @@ -0,0 +1,113 @@ +#objdump: -drwMintel,suffix +#name: encoding option (Intel mode) +#source: opts.s + +.*: +file format .* + + +Disassembly of section .text: + +0+ <_start>: +[ ]*[a-f0-9]+: 88 d1 mov cl,dl +[ ]*[a-f0-9]+: 8a ca mov.s cl,dl +[ ]*[a-f0-9]+: 66 89 d1 mov cx,dx +[ ]*[a-f0-9]+: 66 8b ca mov.s cx,dx +[ ]*[a-f0-9]+: 89 d1 mov ecx,edx +[ ]*[a-f0-9]+: 8b ca mov.s ecx,edx +[ ]*[a-f0-9]+: 88 d1 mov cl,dl +[ ]*[a-f0-9]+: 8a ca mov.s cl,dl +[ ]*[a-f0-9]+: 66 89 d1 mov cx,dx +[ ]*[a-f0-9]+: 66 8b ca mov.s cx,dx +[ ]*[a-f0-9]+: 89 d1 mov ecx,edx +[ ]*[a-f0-9]+: 8b ca mov.s ecx,edx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s ymm6,ymm4 +[ ]*[a-f0-9]+: 66 0f 28 f4 movapd xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 29 e6 movapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 28 f4 movaps xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 29 e6 movaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 6f f4 movdqa xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 7f e6 movdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: f3 0f 6f f4 movdqu xmm6,xmm4 +[ ]*[a-f0-9]+: f3 0f 7f e6 movdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: f3 0f 7e f4 movq xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f d6 e6 movq.s xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 10 f4 movupd xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 11 e6 movupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 10 f4 movups xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 11 e6 movups.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 6f e0 movq mm4,mm0 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s mm4,mm0 +[ ]*[a-f0-9]+: 88 d1 mov cl,dl +[ ]*[a-f0-9]+: 8a ca mov.s cl,dl +[ ]*[a-f0-9]+: 66 89 d1 mov cx,dx +[ ]*[a-f0-9]+: 66 8b ca mov.s cx,dx +[ ]*[a-f0-9]+: 89 d1 mov ecx,edx +[ ]*[a-f0-9]+: 8b ca mov.s ecx,edx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s ymm6,ymm4 +[ ]*[a-f0-9]+: 66 0f 28 f4 movapd xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 29 e6 movapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 28 f4 movaps xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 29 e6 movaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 6f f4 movdqa xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 7f e6 movdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: f3 0f 6f f4 movdqu xmm6,xmm4 +[ ]*[a-f0-9]+: f3 0f 7f e6 movdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: f3 0f 7e f4 movq xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f d6 e6 movq.s xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 10 f4 movupd xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 11 e6 movupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 10 f4 movups xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 11 e6 movups.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 6f e0 movq mm4,mm0 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s mm4,mm0 +#pass diff --git a/gas/testsuite/gas/i386/opts.d b/gas/testsuite/gas/i386/opts.d new file mode 100644 index 0000000..f0f1e0b --- /dev/null +++ b/gas/testsuite/gas/i386/opts.d @@ -0,0 +1,112 @@ +#objdump: -drwMsuffix +#name: encoding option + +.*: +file format .* + + +Disassembly of section .text: + +0+ <_start>: +[ ]*[a-f0-9]+: 88 d1 movb %dl,%cl +[ ]*[a-f0-9]+: 8a ca movb.s %dl,%cl +[ ]*[a-f0-9]+: 66 89 d1 movw %dx,%cx +[ ]*[a-f0-9]+: 66 8b ca movw.s %dx,%cx +[ ]*[a-f0-9]+: 89 d1 movl %edx,%ecx +[ ]*[a-f0-9]+: 8b ca movl.s %edx,%ecx +[ ]*[a-f0-9]+: 88 d1 movb %dl,%cl +[ ]*[a-f0-9]+: 8a ca movb.s %dl,%cl +[ ]*[a-f0-9]+: 66 89 d1 movw %dx,%cx +[ ]*[a-f0-9]+: 66 8b ca movw.s %dx,%cx +[ ]*[a-f0-9]+: 89 d1 movl %edx,%ecx +[ ]*[a-f0-9]+: 8b ca movl.s %edx,%ecx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 66 0f 28 f4 movapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 29 e6 movapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 28 f4 movaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 29 e6 movaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 6f f4 movdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 7f e6 movdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: f3 0f 6f f4 movdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: f3 0f 7f e6 movdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: f3 0f 7e f4 movq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f d6 e6 movq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 10 f4 movupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 11 e6 movupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 10 f4 movups %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 11 e6 movups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 6f e0 movq %mm0,%mm4 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s %mm0,%mm4 +[ ]*[a-f0-9]+: 88 d1 movb %dl,%cl +[ ]*[a-f0-9]+: 8a ca movb.s %dl,%cl +[ ]*[a-f0-9]+: 66 89 d1 movw %dx,%cx +[ ]*[a-f0-9]+: 66 8b ca movw.s %dx,%cx +[ ]*[a-f0-9]+: 89 d1 movl %edx,%ecx +[ ]*[a-f0-9]+: 8b ca movl.s %edx,%ecx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 66 0f 28 f4 movapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 29 e6 movapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 28 f4 movaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 29 e6 movaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 6f f4 movdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 7f e6 movdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: f3 0f 6f f4 movdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: f3 0f 7f e6 movdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: f3 0f 7e f4 movq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f d6 e6 movq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 10 f4 movupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 11 e6 movupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 10 f4 movups %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 11 e6 movups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 6f e0 movq %mm0,%mm4 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s %mm0,%mm4 +#pass diff --git a/gas/testsuite/gas/i386/opts.s b/gas/testsuite/gas/i386/opts.s new file mode 100644 index 0000000..0a66017 --- /dev/null +++ b/gas/testsuite/gas/i386/opts.s @@ -0,0 +1,125 @@ +# Check instructions with encoding options + + .allow_index_reg + .text +_start: + +# Tests for op reg, reg + mov %dl,%cl + mov.s %dl,%cl + mov %dx,%cx + mov.s %dx,%cx + mov %edx,%ecx + mov.s %edx,%ecx + movb %dl,%cl + movb.s %dl,%cl + movw %dx,%cx + movw.s %dx,%cx + movl %edx,%ecx + movl.s %edx,%ecx + +# Tests for op ymm, ymm + vmovapd %ymm4,%ymm6 + vmovapd.s %ymm4,%ymm6 + vmovaps %ymm4,%ymm6 + vmovaps.s %ymm4,%ymm6 + vmovdqa %ymm4,%ymm6 + vmovdqa.s %ymm4,%ymm6 + vmovdqu %ymm4,%ymm6 + vmovdqu.s %ymm4,%ymm6 + vmovupd %ymm4,%ymm6 + vmovupd.s %ymm4,%ymm6 + vmovups %ymm4,%ymm6 + vmovups.s %ymm4,%ymm6 + +# Tests for op xmm, xmm + movapd %xmm4,%xmm6 + movapd.s %xmm4,%xmm6 + movaps %xmm4,%xmm6 + movaps.s %xmm4,%xmm6 + movdqa %xmm4,%xmm6 + movdqa.s %xmm4,%xmm6 + movdqu %xmm4,%xmm6 + movdqu.s %xmm4,%xmm6 + movq %xmm4,%xmm6 + movq.s %xmm4,%xmm6 + movupd %xmm4,%xmm6 + movupd.s %xmm4,%xmm6 + movups %xmm4,%xmm6 + movups.s %xmm4,%xmm6 + vmovapd %xmm4,%xmm6 + vmovapd.s %xmm4,%xmm6 + vmovaps %xmm4,%xmm6 + vmovaps.s %xmm4,%xmm6 + vmovdqa %xmm4,%xmm6 + vmovdqa.s %xmm4,%xmm6 + vmovdqu %xmm4,%xmm6 + vmovdqu.s %xmm4,%xmm6 + vmovq %xmm4,%xmm6 + vmovq.s %xmm4,%xmm6 + vmovupd %xmm4,%xmm6 + vmovupd.s %xmm4,%xmm6 + vmovups %xmm4,%xmm6 + vmovups.s %xmm4,%xmm6 + +# Tests for op mm, mm + movq %mm0,%mm4 + movq.s %mm0,%mm4 + + .intel_syntax noprefix + +# Tests for op reg, reg + mov cl,dl + mov.s cl,dl + mov cx,dx + mov.s cx,dx + mov ecx,edx + mov.s ecx,edx + +# Tests for op ymm, ymm + vmovapd ymm6,ymm4 + vmovapd.s ymm6,ymm4 + vmovaps ymm6,ymm4 + vmovaps.s ymm6,ymm4 + vmovdqa ymm6,ymm4 + vmovdqa.s ymm6,ymm4 + vmovdqu ymm6,ymm4 + vmovdqu.s ymm6,ymm4 + vmovupd ymm6,ymm4 + vmovupd.s ymm6,ymm4 + vmovups ymm6,ymm4 + vmovups.s ymm6,ymm4 + +# Tests for op xmm, xmm + movapd xmm6,xmm4 + movapd.s xmm6,xmm4 + movaps xmm6,xmm4 + movaps.s xmm6,xmm4 + movdqa xmm6,xmm4 + movdqa.s xmm6,xmm4 + movdqu xmm6,xmm4 + movdqu.s xmm6,xmm4 + movq xmm6,xmm4 + movq.s xmm6,xmm4 + movupd xmm6,xmm4 + movupd.s xmm6,xmm4 + movups xmm6,xmm4 + movups.s xmm6,xmm4 + vmovapd xmm6,xmm4 + vmovapd.s xmm6,xmm4 + vmovaps xmm6,xmm4 + vmovaps.s xmm6,xmm4 + vmovdqa xmm6,xmm4 + vmovdqa.s xmm6,xmm4 + vmovdqu xmm6,xmm4 + vmovdqu.s xmm6,xmm4 + vmovq xmm6,xmm4 + vmovq.s xmm6,xmm4 + vmovupd xmm6,xmm4 + vmovupd.s xmm6,xmm4 + vmovups xmm6,xmm4 + vmovups.s xmm6,xmm4 + +# Tests for op mm, mm + movq mm4,mm0 + movq.s mm4,mm0 diff --git a/gas/testsuite/gas/i386/sse2avx-opts-intel.d b/gas/testsuite/gas/i386/sse2avx-opts-intel.d new file mode 100644 index 0000000..66ec7bd --- /dev/null +++ b/gas/testsuite/gas/i386/sse2avx-opts-intel.d @@ -0,0 +1,114 @@ +#as: -msse2avx +#objdump: -drwMintel,suffix +#name: encoding option with -msse2avx (Intel mode) +#source: opts.s + +.*: +file format .* + + +Disassembly of section .text: + +0+ <_start>: +[ ]*[a-f0-9]+: 88 d1 mov cl,dl +[ ]*[a-f0-9]+: 8a ca mov.s cl,dl +[ ]*[a-f0-9]+: 66 89 d1 mov cx,dx +[ ]*[a-f0-9]+: 66 8b ca mov.s cx,dx +[ ]*[a-f0-9]+: 89 d1 mov ecx,edx +[ ]*[a-f0-9]+: 8b ca mov.s ecx,edx +[ ]*[a-f0-9]+: 88 d1 mov cl,dl +[ ]*[a-f0-9]+: 8a ca mov.s cl,dl +[ ]*[a-f0-9]+: 66 89 d1 mov cx,dx +[ ]*[a-f0-9]+: 66 8b ca mov.s cx,dx +[ ]*[a-f0-9]+: 89 d1 mov ecx,edx +[ ]*[a-f0-9]+: 8b ca mov.s ecx,edx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 6f e0 movq mm4,mm0 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s mm4,mm0 +[ ]*[a-f0-9]+: 88 d1 mov cl,dl +[ ]*[a-f0-9]+: 8a ca mov.s cl,dl +[ ]*[a-f0-9]+: 66 89 d1 mov cx,dx +[ ]*[a-f0-9]+: 66 8b ca mov.s cx,dx +[ ]*[a-f0-9]+: 89 d1 mov ecx,edx +[ ]*[a-f0-9]+: 8b ca mov.s ecx,edx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 6f e0 movq mm4,mm0 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s mm4,mm0 +#pass diff --git a/gas/testsuite/gas/i386/sse2avx-opts.d b/gas/testsuite/gas/i386/sse2avx-opts.d new file mode 100644 index 0000000..0054c0a --- /dev/null +++ b/gas/testsuite/gas/i386/sse2avx-opts.d @@ -0,0 +1,114 @@ +#as: -msse2avx +#objdump: -drwMsuffix +#name: encoding option with -msse2avx +#source: opts.s + +.*: +file format .* + + +Disassembly of section .text: + +0+ <_start>: +[ ]*[a-f0-9]+: 88 d1 movb %dl,%cl +[ ]*[a-f0-9]+: 8a ca movb.s %dl,%cl +[ ]*[a-f0-9]+: 66 89 d1 movw %dx,%cx +[ ]*[a-f0-9]+: 66 8b ca movw.s %dx,%cx +[ ]*[a-f0-9]+: 89 d1 movl %edx,%ecx +[ ]*[a-f0-9]+: 8b ca movl.s %edx,%ecx +[ ]*[a-f0-9]+: 88 d1 movb %dl,%cl +[ ]*[a-f0-9]+: 8a ca movb.s %dl,%cl +[ ]*[a-f0-9]+: 66 89 d1 movw %dx,%cx +[ ]*[a-f0-9]+: 66 8b ca movw.s %dx,%cx +[ ]*[a-f0-9]+: 89 d1 movl %edx,%ecx +[ ]*[a-f0-9]+: 8b ca movl.s %edx,%ecx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 6f e0 movq %mm0,%mm4 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s %mm0,%mm4 +[ ]*[a-f0-9]+: 88 d1 movb %dl,%cl +[ ]*[a-f0-9]+: 8a ca movb.s %dl,%cl +[ ]*[a-f0-9]+: 66 89 d1 movw %dx,%cx +[ ]*[a-f0-9]+: 66 8b ca movw.s %dx,%cx +[ ]*[a-f0-9]+: 89 d1 movl %edx,%ecx +[ ]*[a-f0-9]+: 8b ca movl.s %edx,%ecx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 6f e0 movq %mm0,%mm4 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s %mm0,%mm4 +#pass diff --git a/gas/testsuite/gas/i386/x86-64-opts-intel.d b/gas/testsuite/gas/i386/x86-64-opts-intel.d new file mode 100644 index 0000000..3a92cb7 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-opts-intel.d @@ -0,0 +1,119 @@ +#objdump: -drwMintel,suffix +#name: x86-64 encoding option (Intel mode) +#source: x86-64-opts.s + +.*: +file format .* + + +Disassembly of section .text: + +0+ <_start>: +[ ]*[a-f0-9]+: 88 d1 mov cl,dl +[ ]*[a-f0-9]+: 8a ca mov.s cl,dl +[ ]*[a-f0-9]+: 66 89 d1 mov cx,dx +[ ]*[a-f0-9]+: 66 8b ca mov.s cx,dx +[ ]*[a-f0-9]+: 89 d1 mov ecx,edx +[ ]*[a-f0-9]+: 8b ca mov.s ecx,edx +[ ]*[a-f0-9]+: 88 d1 mov cl,dl +[ ]*[a-f0-9]+: 8a ca mov.s cl,dl +[ ]*[a-f0-9]+: 66 89 d1 mov cx,dx +[ ]*[a-f0-9]+: 66 8b ca mov.s cx,dx +[ ]*[a-f0-9]+: 89 d1 mov ecx,edx +[ ]*[a-f0-9]+: 8b ca mov.s ecx,edx +[ ]*[a-f0-9]+: 48 89 d1 mov rcx,rdx +[ ]*[a-f0-9]+: 48 8b ca mov.s rcx,rdx +[ ]*[a-f0-9]+: 48 89 d1 mov rcx,rdx +[ ]*[a-f0-9]+: 48 8b ca mov.s rcx,rdx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s ymm6,ymm4 +[ ]*[a-f0-9]+: 66 0f 28 f4 movapd xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 29 e6 movapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 28 f4 movaps xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 29 e6 movaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 6f f4 movdqa xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 7f e6 movdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: f3 0f 6f f4 movdqu xmm6,xmm4 +[ ]*[a-f0-9]+: f3 0f 7f e6 movdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: f3 0f 7e f4 movq xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f d6 e6 movq.s xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 10 f4 movupd xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 11 e6 movupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 10 f4 movups xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 11 e6 movups.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 6f e0 movq mm4,mm0 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s mm4,mm0 +[ ]*[a-f0-9]+: 88 d1 mov cl,dl +[ ]*[a-f0-9]+: 8a ca mov.s cl,dl +[ ]*[a-f0-9]+: 66 89 d1 mov cx,dx +[ ]*[a-f0-9]+: 66 8b ca mov.s cx,dx +[ ]*[a-f0-9]+: 89 d1 mov ecx,edx +[ ]*[a-f0-9]+: 8b ca mov.s ecx,edx +[ ]*[a-f0-9]+: 48 89 d1 mov rcx,rdx +[ ]*[a-f0-9]+: 48 8b ca mov.s rcx,rdx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s ymm6,ymm4 +[ ]*[a-f0-9]+: 66 0f 28 f4 movapd xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 29 e6 movapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 28 f4 movaps xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 29 e6 movaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 6f f4 movdqa xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 7f e6 movdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: f3 0f 6f f4 movdqu xmm6,xmm4 +[ ]*[a-f0-9]+: f3 0f 7f e6 movdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: f3 0f 7e f4 movq xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f d6 e6 movq.s xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 10 f4 movupd xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 11 e6 movupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 10 f4 movups xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 11 e6 movups.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 6f e0 movq mm4,mm0 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s mm4,mm0 +#pass diff --git a/gas/testsuite/gas/i386/x86-64-opts.d b/gas/testsuite/gas/i386/x86-64-opts.d new file mode 100644 index 0000000..43084cb --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-opts.d @@ -0,0 +1,118 @@ +#objdump: -drwMsuffix +#name: x86-64 encoding option + +.*: +file format .* + + +Disassembly of section .text: + +0+ <_start>: +[ ]*[a-f0-9]+: 88 d1 movb %dl,%cl +[ ]*[a-f0-9]+: 8a ca movb.s %dl,%cl +[ ]*[a-f0-9]+: 66 89 d1 movw %dx,%cx +[ ]*[a-f0-9]+: 66 8b ca movw.s %dx,%cx +[ ]*[a-f0-9]+: 89 d1 movl %edx,%ecx +[ ]*[a-f0-9]+: 8b ca movl.s %edx,%ecx +[ ]*[a-f0-9]+: 88 d1 movb %dl,%cl +[ ]*[a-f0-9]+: 8a ca movb.s %dl,%cl +[ ]*[a-f0-9]+: 66 89 d1 movw %dx,%cx +[ ]*[a-f0-9]+: 66 8b ca movw.s %dx,%cx +[ ]*[a-f0-9]+: 89 d1 movl %edx,%ecx +[ ]*[a-f0-9]+: 8b ca movl.s %edx,%ecx +[ ]*[a-f0-9]+: 48 89 d1 movq %rdx,%rcx +[ ]*[a-f0-9]+: 48 8b ca movq.s %rdx,%rcx +[ ]*[a-f0-9]+: 48 89 d1 movq %rdx,%rcx +[ ]*[a-f0-9]+: 48 8b ca movq.s %rdx,%rcx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 66 0f 28 f4 movapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 29 e6 movapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 28 f4 movaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 29 e6 movaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 6f f4 movdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 7f e6 movdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: f3 0f 6f f4 movdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: f3 0f 7f e6 movdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: f3 0f 7e f4 movq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f d6 e6 movq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 10 f4 movupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 11 e6 movupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 10 f4 movups %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 11 e6 movups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 6f e0 movq %mm0,%mm4 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s %mm0,%mm4 +[ ]*[a-f0-9]+: 88 d1 movb %dl,%cl +[ ]*[a-f0-9]+: 8a ca movb.s %dl,%cl +[ ]*[a-f0-9]+: 66 89 d1 movw %dx,%cx +[ ]*[a-f0-9]+: 66 8b ca movw.s %dx,%cx +[ ]*[a-f0-9]+: 89 d1 movl %edx,%ecx +[ ]*[a-f0-9]+: 8b ca movl.s %edx,%ecx +[ ]*[a-f0-9]+: 48 89 d1 movq %rdx,%rcx +[ ]*[a-f0-9]+: 48 8b ca movq.s %rdx,%rcx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 66 0f 28 f4 movapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 29 e6 movapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 28 f4 movaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 29 e6 movaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 6f f4 movdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 7f e6 movdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: f3 0f 6f f4 movdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: f3 0f 7f e6 movdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: f3 0f 7e f4 movq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f d6 e6 movq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 10 f4 movupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 11 e6 movupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 10 f4 movups %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 11 e6 movups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 6f e0 movq %mm0,%mm4 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s %mm0,%mm4 +#pass diff --git a/gas/testsuite/gas/i386/x86-64-opts.s b/gas/testsuite/gas/i386/x86-64-opts.s new file mode 100644 index 0000000..fc3aa67 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-opts.s @@ -0,0 +1,131 @@ +# Check 64bit instructions with encoding options + + .allow_index_reg + .text +_start: + +# Tests for op reg, reg + mov %dl,%cl + mov.s %dl,%cl + mov %dx,%cx + mov.s %dx,%cx + mov %edx,%ecx + mov.s %edx,%ecx + movb %dl,%cl + movb.s %dl,%cl + movw %dx,%cx + movw.s %dx,%cx + movl %edx,%ecx + movl.s %edx,%ecx + mov %rdx,%rcx + mov.s %rdx,%rcx + movq %rdx,%rcx + movq.s %rdx,%rcx + +# Tests for op ymm, ymm + vmovapd %ymm4,%ymm6 + vmovapd.s %ymm4,%ymm6 + vmovaps %ymm4,%ymm6 + vmovaps.s %ymm4,%ymm6 + vmovdqa %ymm4,%ymm6 + vmovdqa.s %ymm4,%ymm6 + vmovdqu %ymm4,%ymm6 + vmovdqu.s %ymm4,%ymm6 + vmovupd %ymm4,%ymm6 + vmovupd.s %ymm4,%ymm6 + vmovups %ymm4,%ymm6 + vmovups.s %ymm4,%ymm6 + +# Tests for op xmm, xmm + movapd %xmm4,%xmm6 + movapd.s %xmm4,%xmm6 + movaps %xmm4,%xmm6 + movaps.s %xmm4,%xmm6 + movdqa %xmm4,%xmm6 + movdqa.s %xmm4,%xmm6 + movdqu %xmm4,%xmm6 + movdqu.s %xmm4,%xmm6 + movq %xmm4,%xmm6 + movq.s %xmm4,%xmm6 + movupd %xmm4,%xmm6 + movupd.s %xmm4,%xmm6 + movups %xmm4,%xmm6 + movups.s %xmm4,%xmm6 + vmovapd %xmm4,%xmm6 + vmovapd.s %xmm4,%xmm6 + vmovaps %xmm4,%xmm6 + vmovaps.s %xmm4,%xmm6 + vmovdqa %xmm4,%xmm6 + vmovdqa.s %xmm4,%xmm6 + vmovdqu %xmm4,%xmm6 + vmovdqu.s %xmm4,%xmm6 + vmovq %xmm4,%xmm6 + vmovq.s %xmm4,%xmm6 + vmovupd %xmm4,%xmm6 + vmovupd.s %xmm4,%xmm6 + vmovups %xmm4,%xmm6 + vmovups.s %xmm4,%xmm6 + +# Tests for op mm, mm + movq %mm0,%mm4 + movq.s %mm0,%mm4 + + .intel_syntax noprefix + +# Tests for op reg, reg + mov cl,dl + mov.s cl,dl + mov cx,dx + mov.s cx,dx + mov ecx,edx + mov.s ecx,edx + mov rcx,rdx + mov.s rcx,rdx + +# Tests for op ymm, ymm + vmovapd ymm6,ymm4 + vmovapd.s ymm6,ymm4 + vmovaps ymm6,ymm4 + vmovaps.s ymm6,ymm4 + vmovdqa ymm6,ymm4 + vmovdqa.s ymm6,ymm4 + vmovdqu ymm6,ymm4 + vmovdqu.s ymm6,ymm4 + vmovupd ymm6,ymm4 + vmovupd.s ymm6,ymm4 + vmovups ymm6,ymm4 + vmovups.s ymm6,ymm4 + +# Tests for op xmm, xmm + movapd xmm6,xmm4 + movapd.s xmm6,xmm4 + movaps xmm6,xmm4 + movaps.s xmm6,xmm4 + movdqa xmm6,xmm4 + movdqa.s xmm6,xmm4 + movdqu xmm6,xmm4 + movdqu.s xmm6,xmm4 + movq xmm6,xmm4 + movq.s xmm6,xmm4 + movupd xmm6,xmm4 + movupd.s xmm6,xmm4 + movups xmm6,xmm4 + movups.s xmm6,xmm4 + vmovapd xmm6,xmm4 + vmovapd.s xmm6,xmm4 + vmovaps xmm6,xmm4 + vmovaps.s xmm6,xmm4 + vmovdqa xmm6,xmm4 + vmovdqa.s xmm6,xmm4 + vmovdqu xmm6,xmm4 + vmovdqu.s xmm6,xmm4 + vmovq xmm6,xmm4 + vmovq.s xmm6,xmm4 + vmovupd xmm6,xmm4 + vmovupd.s xmm6,xmm4 + vmovups xmm6,xmm4 + vmovups.s xmm6,xmm4 + +# Tests for op mm, mm + movq mm4,mm0 + movq.s mm4,mm0 diff --git a/gas/testsuite/gas/i386/x86-64-sse2avx-opts-intel.d b/gas/testsuite/gas/i386/x86-64-sse2avx-opts-intel.d new file mode 100644 index 0000000..b1b7f3d --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-sse2avx-opts-intel.d @@ -0,0 +1,120 @@ +#as: -msse2avx +#objdump: -drwMintel,suffix +#name: x86-64 encoding option with -msse2avx (Intel mode) +#source: x86-64-opts.s + +.*: +file format .* + + +Disassembly of section .text: + +0+ <_start>: +[ ]*[a-f0-9]+: 88 d1 mov cl,dl +[ ]*[a-f0-9]+: 8a ca mov.s cl,dl +[ ]*[a-f0-9]+: 66 89 d1 mov cx,dx +[ ]*[a-f0-9]+: 66 8b ca mov.s cx,dx +[ ]*[a-f0-9]+: 89 d1 mov ecx,edx +[ ]*[a-f0-9]+: 8b ca mov.s ecx,edx +[ ]*[a-f0-9]+: 88 d1 mov cl,dl +[ ]*[a-f0-9]+: 8a ca mov.s cl,dl +[ ]*[a-f0-9]+: 66 89 d1 mov cx,dx +[ ]*[a-f0-9]+: 66 8b ca mov.s cx,dx +[ ]*[a-f0-9]+: 89 d1 mov ecx,edx +[ ]*[a-f0-9]+: 8b ca mov.s ecx,edx +[ ]*[a-f0-9]+: 48 89 d1 mov rcx,rdx +[ ]*[a-f0-9]+: 48 8b ca mov.s rcx,rdx +[ ]*[a-f0-9]+: 48 89 d1 mov rcx,rdx +[ ]*[a-f0-9]+: 48 8b ca mov.s rcx,rdx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 6f e0 movq mm4,mm0 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s mm4,mm0 +[ ]*[a-f0-9]+: 88 d1 mov cl,dl +[ ]*[a-f0-9]+: 8a ca mov.s cl,dl +[ ]*[a-f0-9]+: 66 89 d1 mov cx,dx +[ ]*[a-f0-9]+: 66 8b ca mov.s cx,dx +[ ]*[a-f0-9]+: 89 d1 mov ecx,edx +[ ]*[a-f0-9]+: 8b ca mov.s ecx,edx +[ ]*[a-f0-9]+: 48 89 d1 mov rcx,rdx +[ ]*[a-f0-9]+: 48 8b ca mov.s rcx,rdx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups ymm6,ymm4 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s ymm6,ymm4 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups xmm6,xmm4 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s xmm6,xmm4 +[ ]*[a-f0-9]+: 0f 6f e0 movq mm4,mm0 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s mm4,mm0 +#pass diff --git a/gas/testsuite/gas/i386/x86-64-sse2avx-opts.d b/gas/testsuite/gas/i386/x86-64-sse2avx-opts.d new file mode 100644 index 0000000..e600917 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-sse2avx-opts.d @@ -0,0 +1,120 @@ +#as: -msse2avx +#objdump: -drwMsuffix +#name: x86-64 encoding option with -msse2avx +#source: x86-64-opts.s + +.*: +file format .* + + +Disassembly of section .text: + +0+ <_start>: +[ ]*[a-f0-9]+: 88 d1 movb %dl,%cl +[ ]*[a-f0-9]+: 8a ca movb.s %dl,%cl +[ ]*[a-f0-9]+: 66 89 d1 movw %dx,%cx +[ ]*[a-f0-9]+: 66 8b ca movw.s %dx,%cx +[ ]*[a-f0-9]+: 89 d1 movl %edx,%ecx +[ ]*[a-f0-9]+: 8b ca movl.s %edx,%ecx +[ ]*[a-f0-9]+: 88 d1 movb %dl,%cl +[ ]*[a-f0-9]+: 8a ca movb.s %dl,%cl +[ ]*[a-f0-9]+: 66 89 d1 movw %dx,%cx +[ ]*[a-f0-9]+: 66 8b ca movw.s %dx,%cx +[ ]*[a-f0-9]+: 89 d1 movl %edx,%ecx +[ ]*[a-f0-9]+: 8b ca movl.s %edx,%ecx +[ ]*[a-f0-9]+: 48 89 d1 movq %rdx,%rcx +[ ]*[a-f0-9]+: 48 8b ca movq.s %rdx,%rcx +[ ]*[a-f0-9]+: 48 89 d1 movq %rdx,%rcx +[ ]*[a-f0-9]+: 48 8b ca movq.s %rdx,%rcx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 6f e0 movq %mm0,%mm4 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s %mm0,%mm4 +[ ]*[a-f0-9]+: 88 d1 movb %dl,%cl +[ ]*[a-f0-9]+: 8a ca movb.s %dl,%cl +[ ]*[a-f0-9]+: 66 89 d1 movw %dx,%cx +[ ]*[a-f0-9]+: 66 8b ca movw.s %dx,%cx +[ ]*[a-f0-9]+: 89 d1 movl %edx,%ecx +[ ]*[a-f0-9]+: 8b ca movl.s %edx,%ecx +[ ]*[a-f0-9]+: 48 89 d1 movq %rdx,%rcx +[ ]*[a-f0-9]+: 48 8b ca movq.s %rdx,%rcx +[ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 29 e6 vmovaps.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 6f f4 vmovdqa %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 7f e6 vmovdqa.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 6f f4 vmovdqu %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fe 7f e6 vmovdqu.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 10 f4 vmovupd %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fd 11 e6 vmovupd.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 10 f4 vmovups %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 fc 11 e6 vmovups.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 29 e6 vmovapd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 29 e6 vmovaps.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 6f f4 vmovdqa %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 7f e6 vmovdqa.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 6f f4 vmovdqu %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7f e6 vmovdqu.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 fa 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 d6 e6 vmovq.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 10 f4 vmovupd %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f9 11 e6 vmovupd.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 10 f4 vmovups %xmm4,%xmm6 +[ ]*[a-f0-9]+: c5 f8 11 e6 vmovups.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 0f 6f e0 movq %mm0,%mm4 +[ ]*[a-f0-9]+: 0f 7f c4 movq.s %mm0,%mm4 +#pass -- cgit v1.1