x86: don't omit disambiguating suffixes from "fi*"
authorJan Beulich <jbeulich@novell.com>
Fri, 24 Nov 2017 07:42:04 +0000 (08:42 +0100)
committerJan Beulich <jbeulich@suse.com>
Fri, 24 Nov 2017 07:42:04 +0000 (08:42 +0100)
"fi*" typically come in two (loads/stores: three) flavors, distinguished
by the suffix. Don't omit the 's' one when disassembling.

12 files changed:
gas/ChangeLog
gas/testsuite/gas/i386/ilp32/x86-64-sse-noavx.d
gas/testsuite/gas/i386/ilp32/x86-64-sse3.d
gas/testsuite/gas/i386/intel.d
gas/testsuite/gas/i386/opcode-suffix.d
gas/testsuite/gas/i386/opcode.d
gas/testsuite/gas/i386/sse-noavx.d
gas/testsuite/gas/i386/sse3.d
gas/testsuite/gas/i386/x86-64-sse-noavx.d
gas/testsuite/gas/i386/x86-64-sse3.d
opcodes/ChangeLog
opcodes/i386-dis.c

index c5ee576..c355559 100644 (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
index bc89829..cb9fa05 100644 (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
index a5cb3ca..77b2444 100644 (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
index 8401d10..3f2c346 100644 (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
index 059a10c..8d7716b 100644 (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.*
index f2897ff..a4f2e59 100644 (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.*
index dbf6224..d422909 100644 (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
index 73ea486..3b12389 100644 (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
index 5fa1fea..d500a20 100644 (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
index c6c2542..e4bd3df 100644 (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
index fdae24c..4870723 100644 (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.
index 6b8d1dc..ba48d9a 100644 (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",