diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2008-12-20 17:40:51 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2008-12-20 17:40:51 +0000 |
commit | b6169b206a513cc5be8027dd7eb4b26039d76a4f (patch) | |
tree | 522b7197c9f8eb452599f481dca2140384b01360 /gas | |
parent | 257385246e4e7790890d2d2927f1ca2efb780a37 (diff) | |
download | gdb-b6169b206a513cc5be8027dd7eb4b26039d76a4f.zip gdb-b6169b206a513cc5be8027dd7eb4b26039d76a4f.tar.gz gdb-b6169b206a513cc5be8027dd7eb4b26039d76a4f.tar.bz2 |
gas/
2008-12-20 H.J. Lu <hongjiu.lu@intel.com>
* 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 <hongjiu.lu@intel.com>
* 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 <hongjiu.lu@intel.com>
* 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.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 8 | ||||
-rw-r--r-- | gas/config/tc-i386.c | 33 | ||||
-rw-r--r-- | gas/doc/c-i386.texi | 9 | ||||
-rw-r--r-- | gas/testsuite/ChangeLog | 17 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/i386.exp | 8 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/opts-intel.d | 113 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/opts.d | 112 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/opts.s | 125 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/sse2avx-opts-intel.d | 114 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/sse2avx-opts.d | 114 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-opts-intel.d | 119 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-opts.d | 118 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-opts.s | 131 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-sse2avx-opts-intel.d | 120 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-sse2avx-opts.d | 120 |
15 files changed, 1260 insertions, 1 deletions
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 <hongjiu.lu@intel.com> + + * 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 <hp@axis.com> * 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 <hongjiu.lu@intel.com> + + * 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 <hp@axis.com> * 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 |