x86: don't omit disambiguating suffixes from "fi*"

"fi*" typically come in two (loads/stores: three) flavors, distinguished
by the suffix. Don't omit the 's' one when disassembling.
This commit is contained in:
Jan Beulich 2017-11-24 08:42:04 +01:00 committed by Jan Beulich
parent 00ea2e2ad3
commit ac465521a5
12 changed files with 42 additions and 25 deletions

View File

@ -1,3 +1,12 @@
2017-11-24 Jan Beulich <jbeulich@suse.com>
* testsuite/gas/i386/intel.d, testsuite/gas/i386/opcode.d,
testsuite/gas/i386/opcode-suffix.d, testsuite/gas/i386/sse3.d,
testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/x86-64-sse3.d,
testsuite/gas/i386/x86-64-sse-noavx.d,
testsuite/gas/i386/ilp32/x86-64-sse3.d,
testsuite/gas/i386/ilp32/x86-64-sse-noavx.d: Adjust expectations.
2017-11-23 Jim Wilson <jimw@sifive.com>
* testsuite/gas/all/err-fakelabel.s (dg-error): Also accept fatal error

View File

@ -16,7 +16,8 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 0f 2d f7 cvtps2pi %xmm7,%mm6
[ ]*[a-f0-9]+: 66 0f 2c dc cvttpd2pi %xmm4,%mm3
[ ]*[a-f0-9]+: 0f 2c dc cvttps2pi %xmm4,%mm3
[ ]*[a-f0-9]+: df 08 fisttp \(%rax\)
[ ]*[a-f0-9]+: df 08 fisttps \(%rax\)
[ ]*[a-f0-9]+: db 08 fisttpl \(%rax\)
[ ]*[a-f0-9]+: dd 08 fisttpll \(%rax\)
[ ]*[a-f0-9]+: 0f ae e8 lfence
[ ]*[a-f0-9]+: 0f f7 c7 maskmovq %mm7,%mm0

View File

@ -11,7 +11,7 @@ Disassembly of section .text:
4: 66 0f d0 ca [ ]*addsubpd %xmm2,%xmm1
8: f2 0f d0 13 [ ]*addsubps \(%rbx\),%xmm2
c: f2 0f d0 dc [ ]*addsubps %xmm4,%xmm3
10: df 88 90 90 90 00 [ ]*fisttp 0x909090\(%rax\)
10: df 88 90 90 90 00 [ ]*fisttps 0x909090\(%rax\)
16: db 88 90 90 90 00 [ ]*fisttpl 0x909090\(%rax\)
1c: dd 88 90 90 90 00 [ ]*fisttpll 0x909090\(%rax\)
22: 66 0f 7c 65 00 [ ]*haddpd 0x0\(%rbp\),%xmm4

View File

@ -221,8 +221,8 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: db 90 90 90 90 90 [ ]*fistl -0x6f6f6f70\(%eax\)
[ ]*[a-f0-9]+: dc 90 90 90 90 90 [ ]*fcoml -0x6f6f6f70\(%eax\)
[ ]*[a-f0-9]+: dd 90 90 90 90 90 [ ]*fstl -0x6f6f6f70\(%eax\)
[ ]*[a-f0-9]+: de 90 90 90 90 90 [ ]*ficom -0x6f6f6f70\(%eax\)
[ ]*[a-f0-9]+: df 90 90 90 90 90 [ ]*fist -0x6f6f6f70\(%eax\)
[ ]*[a-f0-9]+: de 90 90 90 90 90 [ ]*ficoms -0x6f6f6f70\(%eax\)
[ ]*[a-f0-9]+: df 90 90 90 90 90 [ ]*fists -0x6f6f6f70\(%eax\)
[ ]*[a-f0-9]+: e0 90 [ ]*loopne (0x)?260.*
[ ]*[a-f0-9]+: e1 90 [ ]*loope (0x)?262.*
[ ]*[a-f0-9]+: e2 90 [ ]*loop (0x)?264.*
@ -692,7 +692,7 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: de e3 fsubp %st,%st\(3\)
[ ]*[a-f0-9]+: de e3 fsubp %st,%st\(3\)
[ ]*[a-f0-9]+: de e3 fsubp %st,%st\(3\)
[ ]*[a-f0-9]+: de 3b fidivr \(%ebx\)
[ ]*[a-f0-9]+: de 3b fidivrs \(%ebx\)
[ ]*[a-f0-9]+: da 3b fidivrl \(%ebx\)
[ ]*[a-f0-9]+: 0f 4a 90 90 90 90 90 cmovp -0x6f6f6f70\(%eax\),%edx
[ ]*[a-f0-9]+: 0f 4b 90 90 90 90 90 cmovnp -0x6f6f6f70\(%eax\),%edx

View File

@ -219,8 +219,8 @@ Disassembly of section .text:
*[0-9a-f]+: db 90 90 90 90 90[ ]+fistl[ ]+-0x6f6f6f70\(%eax\)
*[0-9a-f]+: dc 90 90 90 90 90[ ]+fcoml[ ]+-0x6f6f6f70\(%eax\)
*[0-9a-f]+: dd 90 90 90 90 90[ ]+fstl[ ]+-0x6f6f6f70\(%eax\)
*[0-9a-f]+: de 90 90 90 90 90[ ]+ficom[ ]+-0x6f6f6f70\(%eax\)
*[0-9a-f]+: df 90 90 90 90 90[ ]+fist[ ]+-0x6f6f6f70\(%eax\)
*[0-9a-f]+: de 90 90 90 90 90[ ]+ficoms[ ]+-0x6f6f6f70\(%eax\)
*[0-9a-f]+: df 90 90 90 90 90[ ]+fists[ ]+-0x6f6f6f70\(%eax\)
*[0-9a-f]+: e0 90[ ]+loopnel (0x)?25c.*
*[0-9a-f]+: e1 90[ ]+loopel (0x)?25e.*
*[0-9a-f]+: e2 90[ ]+loopl[ ]+(0x)?260.*

View File

@ -218,8 +218,8 @@ Disassembly of section .text:
2ac: db 90 90 90 90 90 [ ]*fistl -0x6f6f6f70\(%eax\)
2b2: dc 90 90 90 90 90 [ ]*fcoml -0x6f6f6f70\(%eax\)
2b8: dd 90 90 90 90 90 [ ]*fstl -0x6f6f6f70\(%eax\)
2be: de 90 90 90 90 90 [ ]*ficom -0x6f6f6f70\(%eax\)
2c4: df 90 90 90 90 90 [ ]*fist -0x6f6f6f70\(%eax\)
2be: de 90 90 90 90 90 [ ]*ficoms -0x6f6f6f70\(%eax\)
2c4: df 90 90 90 90 90 [ ]*fists -0x6f6f6f70\(%eax\)
2ca: e0 90 [ ]*loopne (0x)?25c.*
2cc: e1 90 [ ]*loope (0x)?25e.*
2ce: e2 90 [ ]*loop (0x)?260.*

View File

@ -14,7 +14,8 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 0f 2d f7 cvtps2pi %xmm7,%mm6
[ ]*[a-f0-9]+: 66 0f 2c dc cvttpd2pi %xmm4,%mm3
[ ]*[a-f0-9]+: 0f 2c dc cvttps2pi %xmm4,%mm3
[ ]*[a-f0-9]+: df 08 fisttp \(%eax\)
[ ]*[a-f0-9]+: df 08 fisttps \(%eax\)
[ ]*[a-f0-9]+: db 08 fisttpl \(%eax\)
[ ]*[a-f0-9]+: dd 08 fisttpll \(%eax\)
[ ]*[a-f0-9]+: 0f ae e8 lfence
[ ]*[a-f0-9]+: 0f f7 c7 maskmovq %mm7,%mm0

View File

@ -10,7 +10,7 @@ Disassembly of section .text:
4: 66 0f d0 ca [ ]*addsubpd %xmm2,%xmm1
8: f2 0f d0 13 [ ]*addsubps \(%ebx\),%xmm2
c: f2 0f d0 dc [ ]*addsubps %xmm4,%xmm3
10: df 88 90 90 90 90 [ ]*fisttp -0x6f6f6f70\(%eax\)
10: df 88 90 90 90 90 [ ]*fisttps -0x6f6f6f70\(%eax\)
16: db 88 90 90 90 90 [ ]*fisttpl -0x6f6f6f70\(%eax\)
1c: dd 88 90 90 90 90 [ ]*fisttpll -0x6f6f6f70\(%eax\)
22: 66 0f 7c 65 00 [ ]*haddpd 0x0\(%ebp\),%xmm4

View File

@ -15,7 +15,8 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 0f 2d f7 cvtps2pi %xmm7,%mm6
[ ]*[a-f0-9]+: 66 0f 2c dc cvttpd2pi %xmm4,%mm3
[ ]*[a-f0-9]+: 0f 2c dc cvttps2pi %xmm4,%mm3
[ ]*[a-f0-9]+: df 08 fisttp \(%rax\)
[ ]*[a-f0-9]+: df 08 fisttps \(%rax\)
[ ]*[a-f0-9]+: db 08 fisttpl \(%rax\)
[ ]*[a-f0-9]+: dd 08 fisttpll \(%rax\)
[ ]*[a-f0-9]+: 0f ae e8 lfence
[ ]*[a-f0-9]+: 0f f7 c7 maskmovq %mm7,%mm0

View File

@ -10,7 +10,7 @@ Disassembly of section .text:
4: 66 0f d0 ca [ ]*addsubpd %xmm2,%xmm1
8: f2 0f d0 13 [ ]*addsubps \(%rbx\),%xmm2
c: f2 0f d0 dc [ ]*addsubps %xmm4,%xmm3
10: df 88 90 90 90 00 [ ]*fisttp 0x909090\(%rax\)
10: df 88 90 90 90 00 [ ]*fisttps 0x909090\(%rax\)
16: db 88 90 90 90 00 [ ]*fisttpl 0x909090\(%rax\)
1c: dd 88 90 90 90 00 [ ]*fisttpll 0x909090\(%rax\)
22: 66 0f 7c 65 00 [ ]*haddpd 0x0\(%rbp\),%xmm4

View File

@ -1,3 +1,8 @@
2017-11-24 Jan Beulich <jbeulich@suse.com>
* i386-dis.c (float_mem): Add suffixes to fi* in the "de" and
"df" groups.
2017-11-23 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
* i386-opc.tbl: Add Disp8MemShift for AVX512 VAES instructions.

View File

@ -13571,19 +13571,19 @@ static const char *float_mem[] = {
"fNsaveIC",
"fNstsw",
/* de */
"fiadd",
"fimul",
"ficom",
"ficomp",
"fisub",
"fisubr",
"fidiv",
"fidivr",
"fiadd{s|}",
"fimul{s|}",
"ficom{s|}",
"ficomp{s|}",
"fisub{s|}",
"fisubr{s|}",
"fidiv{s|}",
"fidivr{s|}",
/* df */
"fild",
"fisttp",
"fist",
"fistp",
"fild{s|}",
"fisttp{s|}",
"fist{s|}",
"fistp{s|}",
"fbld",
"fild{ll|}",
"fbstp",