x86: Do not dump DS/CS segment overrides for branch hints
authorBorislav Petkov <bp@suse.de>
Fri, 11 Dec 2020 23:12:24 +0000 (00:12 +0100)
committerAlan Modra <amodra@gmail.com>
Sun, 13 Dec 2020 03:32:26 +0000 (14:02 +1030)
I've made all labels normal labels so that there's no confusion between
the different targets which is which and I match them in the .d files
with .* as Alan suggested.

Hex offsets I match with [0-9a-fx]+ since some targets prefix them with
0x, some don't, etc.

* testsuite/gas/i386/align-branch-9.s: Don't use labels that are
automatically local for ELF targets.
* testsuite/gas/i386/branch.s: Likewise.
* testsuite/gas/i386/x86-64-align-branch-9.s: Likewise.
* testsuite/gas/i386/x86-64-branch.s: Likewise.
* testsuite/gas/i386/align-branch-9.d: Adjust to match more targets.
* testsuite/gas/i386/branch.d: Likewise.
* testsuite/gas/i386/ilp32/x86-64-branch.d: Likewise.
* testsuite/gas/i386/x86-64-align-branch-9.d: Likewise.
* testsuite/gas/i386/x86-64-branch.d: Likewise.

gas/ChangeLog
gas/testsuite/gas/i386/align-branch-9.d
gas/testsuite/gas/i386/align-branch-9.s
gas/testsuite/gas/i386/branch.d
gas/testsuite/gas/i386/branch.s
gas/testsuite/gas/i386/ilp32/x86-64-branch.d
gas/testsuite/gas/i386/x86-64-align-branch-9.d
gas/testsuite/gas/i386/x86-64-align-branch-9.s
gas/testsuite/gas/i386/x86-64-branch.d
gas/testsuite/gas/i386/x86-64-branch.s

index 71644af918bcb0c26d85ca7ef0b1f6f68bda2999..42bab19b2c856929eebf6f0ea1bbc3a00ed3179f 100644 (file)
@@ -1,3 +1,16 @@
+2020-12-13  Borislav Petkov  <bp@suse.de>
+
+       * testsuite/gas/i386/align-branch-9.s: Don't use labels that are
+       automatically local for ELF targets.
+       * testsuite/gas/i386/branch.s: Likewise.
+       * testsuite/gas/i386/x86-64-align-branch-9.s: Likewise.
+       * testsuite/gas/i386/x86-64-branch.s: Likewise.
+       * testsuite/gas/i386/align-branch-9.d: Adjust to match more targets.
+       * testsuite/gas/i386/branch.d: Likewise.
+       * testsuite/gas/i386/ilp32/x86-64-branch.d: Likewise.
+       * testsuite/gas/i386/x86-64-align-branch-9.d: Likewise.
+       * testsuite/gas/i386/x86-64-branch.d: Likewise.
+
 2020-12-11  Sergey Belyashov  <sergey.belyashov@gmail.com>
            Nick Clifton  <nickc@redhat.com>
 
index 2d5ceef09b1a7cbdbed890794907499132090e8b..643ca283bc074198699ba463b1433efbfbeca80a 100644 (file)
@@ -19,7 +19,7 @@ Disassembly of section .text:
   18:  89 75 f4                mov    %esi,-0xc\(%ebp\)
   1b:  89 75 f4                mov    %esi,-0xc\(%ebp\)
   1e:  39 c5                   cmp    %eax,%ebp
-  20:  70 62                   jo     84 <foo\+0x84>
+  20:  70 62                   jo     84 <.*>
   22:  89 73 f4                mov    %esi,-0xc\(%ebx\)
   25:  89 75 f4                mov    %esi,-0xc\(%ebp\)
   28:  89 7d f8                mov    %edi,-0x8\(%ebp\)
@@ -31,9 +31,9 @@ Disassembly of section .text:
   3a:  5d                      pop    %ebp
   3b:  5d                      pop    %ebp
   3c:  5d                      pop    %ebp
-  3d:  74 45                   je     84 <foo\+0x84>
+  3d:  74 45                   je     84 <.*>
   3f:  5d                      pop    %ebp
-  40:  74 42                   je     84 <foo\+0x84>
+  40:  74 42                   je     84 <.*>
   42:  89 44 24 fc             mov    %eax,-0x4\(%esp\)
   46:  89 75 f4                mov    %esi,-0xc\(%ebp\)
   49:  89 7d f8                mov    %edi,-0x8\(%ebp\)
@@ -43,25 +43,27 @@ Disassembly of section .text:
   55:  89 75 f4                mov    %esi,-0xc\(%ebp\)
   58:  89 75 f4                mov    %esi,-0xc\(%ebp\)
   5b:  5d                      pop    %ebp
-  5c:  eb 2c                   jmp    8a <foo\+0x8a>
+  5c:  eb 2c                   jmp    8a <.*>
   5e:  66 90                   xchg   %ax,%ax
-  60:  eb 28                   jmp    8a <foo\+0x8a>
-  62:  eb 26                   jmp    8a <foo\+0x8a>
+  60:  eb 28                   jmp    8a <.*>
+  62:  eb 26                   jmp    8a <.*>
   64:  89 45 fc                mov    %eax,-0x4\(%ebp\)
   67:  89 75 f4                mov    %esi,-0xc\(%ebp\)
   6a:  89 7d f8                mov    %edi,-0x8\(%ebp\)
   6d:  5d                      pop    %ebp
   6e:  5d                      pop    %ebp
   6f:  40                      inc    %eax
-  70:  72 12                   jb     84 <foo\+0x84>
+  70:  72 12                   jb     84 <.*>
   72:  36 36 89 45 fc          ss mov %eax,%ss:-0x4\(%ebp\)
   77:  89 75 f4                mov    %esi,-0xc\(%ebp\)
   7a:  89 7d f8                mov    %edi,-0x8\(%ebp\)
   7d:  89 75 f4                mov    %esi,-0xc\(%ebp\)
   80:  21 c3                   and    %eax,%ebx
-  82:  7c 06                   jl     8a <foo\+0x8a>
+  82:  7c 06                   jl     8a <.*>
+00000084 <label2>:
   84:  8b 45 f4                mov    -0xc\(%ebp\),%eax
   87:  89 45 fc                mov    %eax,-0x4\(%ebp\)
+0000008a <label3>:
   8a:  89 b5 50 fb ff ff       mov    %esi,-0x4b0\(%ebp\)
   90:  89 b5 50 fb ff ff       mov    %esi,-0x4b0\(%ebp\)
   96:  89 b5 50 fb ff ff       mov    %esi,-0x4b0\(%ebp\)
@@ -73,6 +75,6 @@ Disassembly of section .text:
   b6:  89 b5 50 fb ff ff       mov    %esi,-0x4b0\(%ebp\)
   bc:  89 b5 50 fb ff ff       mov    %esi,-0x4b0\(%ebp\)
   c2:  89 75 00                mov    %esi,0x0\(%ebp\)
-  c5:  74 c3                   je     8a <foo\+0x8a>
-  c7:  74 c1                   je     8a <foo\+0x8a>
+  c5:  74 c3                   je     8a <.*>
+  c7:  74 c1                   je     8a <.*>
 #pass
index 357abe30f97fbe843394cded1a2259954c7a1ee0..acba220b7a8507e5e0568dea628635f4718891ff 100644 (file)
@@ -15,7 +15,7 @@ foo:
   movl  %esi, -12(%ebp)
   movl  %esi, -12(%ebp)
   cmp  %eax, %ebp
-  jo  .L_2
+  jo  label2
   movl  %esi, -12(%ebx)
   movl  %esi, -12(%ebp)
   movl  %edi, -8(%ebp)
@@ -27,9 +27,9 @@ foo:
   popl  %ebp
   popl  %ebp
   popl  %ebp
-  je  .L_2
+  je  label2
   popl  %ebp
-  je  .L_2
+  je  label2
   movl  %eax, -4(%esp)
   movl  %esi, -12(%ebp)
   movl  %edi, -8(%ebp)
@@ -39,26 +39,26 @@ foo:
   movl  %esi, -12(%ebp)
   movl  %esi, -12(%ebp)
   popl  %ebp
-  jmp  .L_3
-  jmp  .L_3
-  jmp  .L_3
+  jmp  label3
+  jmp  label3
+  jmp  label3
   movl  %eax, -4(%ebp)
   movl  %esi, -12(%ebp)
   movl  %edi, -8(%ebp)
   popl  %ebp
   popl  %ebp
   inc  %eax
-  jc  .L_2
+  jc  label2
   movl  %eax, -4(%ebp)
   movl  %esi, -12(%ebp)
   movl  %edi, -8(%ebp)
   movl  %esi, -12(%ebp)
   and  %eax, %ebx
-  jl  .L_3
-.L_2:
+  jl  label3
+label2:
   movl  -12(%ebp), %eax
   movl  %eax, -4(%ebp)
-.L_3:
+label3:
   movl  %esi, -1200(%ebp)
   movl  %esi, -1200(%ebp)
   movl  %esi, -1200(%ebp)
@@ -70,5 +70,5 @@ foo:
   movl  %esi, -1200(%ebp)
   movl  %esi, -1200(%ebp)
   movl  %esi, (%ebp)
-  je .L_3
-  je .L_3
+  je label3
+  je label3
index 6d25b950830f884eee2a3267459ef60860ff87ac..343544b3757a26a2c02d15386f5d172e6c25dce5 100644 (file)
@@ -6,7 +6,7 @@
 
 Disassembly of section .text:
 
-0+ <.text>:
-[      ]*[a-f0-9]+:    3e 74 03[       ]+je,pt  +0x[0-9a-f]+
-[      ]*[a-f0-9]+:    2e 74 00[       ]+je,pn  +0x[0-9a-f]+
+0+ <.*>:
+[      ]*[a-f0-9]+:    3e 74 03[       ]+je,pt  +[0-9a-fx]+ <.*>
+[      ]*[a-f0-9]+:    2e 74 00[       ]+je,pn  +[0-9a-fx]+ <.*>
 #pass
index 968a1818970f2d4ea521b1d99a5a4bab25048e75..3a80789575785e5d2379556519da8bf06e661580 100644 (file)
@@ -1,4 +1,4 @@
 .text
-       jz,pt .Llabel
-       jz,pn .Llabel
-.Llabel:
+       jz,pt label
+       jz,pn label
+label:
index d5f2358546fcf1073ab9323373f676c04c4a0803..acf8c42ca97cbbe7f1f8eda2e7e54f2014c6bff5 100644 (file)
@@ -7,7 +7,7 @@
 
 Disassembly of section .text:
 
-0+ <.text>:
+[0-9a-f]+ <.*>:
 [      ]*[a-f0-9]+:    ff d0                   call   \*%rax
 [      ]*[a-f0-9]+:    ff d0                   call   \*%rax
 [      ]*[a-f0-9]+:    66 ff d0                data16 call \*%rax
@@ -18,15 +18,16 @@ Disassembly of section .text:
 [      ]*[a-f0-9]+:    66 ff e0                data16 jmp \*%rax
 [      ]*[a-f0-9]+:    66 ff e0                data16 jmp \*%rax
 [      ]*[a-f0-9]+:    66 ff 20                data16 jmp \*\(%rax\)
-[      ]*[a-f0-9]+:    e8 00 00 00 00          call   0x1f     1b: R_X86_64_PC32       \*ABS\*\+0x10003c
-[      ]*[a-f0-9]+:    e9 00 00 00 00          jmp    0x24     20: R_X86_64_PC32       \*ABS\*\+0x10003c
-[      ]*[a-f0-9]+:    66 e8 00 00 00 00       data16 call 0x2a        26: R_X86_64_PLT32      foo-0x4
-[      ]*[a-f0-9]+:    66 e9 00 00 00 00       data16 jmp 0x30 2c: R_X86_64_PLT32      foo-0x4
-[      ]*[a-f0-9]+:    66 0f 82 00 00 00 00    data16 jb 0x37  33: R_X86_64_PLT32      foo-0x4
+[      ]*[a-f0-9]+:    e8 00 00 00 00          call   (0x)?1f <.*>     1b: R_X86_64_PC32       \*ABS\*\+0x10003c
+[      ]*[a-f0-9]+:    e9 00 00 00 00          jmp    (0x)?24 <.*>     20: R_X86_64_PC32       \*ABS\*\+0x10003c
+[      ]*[a-f0-9]+:    66 e8 00 00 00 00       data16 call (0x)?2a <.*>        26: R_X86_64_PLT32      foo-0x4
+[      ]*[a-f0-9]+:    66 e9 00 00 00 00       data16 jmp (0x)?30 <.*> 2c: R_X86_64_PLT32      foo-0x4
+[      ]*[a-f0-9]+:    66 0f 82 00 00 00 00    data16 jb (0x)?37 <.*>  33: R_X86_64_PLT32      foo-0x4
 [      ]*[a-f0-9]+:    66 c3                   data16 ret *
 [      ]*[a-f0-9]+:    66 c2 08 00             data16 ret \$0x8
-[      ]*[a-f0-9]+:    3e 74 03[       ]+je,pt  +0x[0-9a-f]+
-[      ]*[a-f0-9]+:    2e 74 00[       ]+je,pn  +0x[0-9a-f]+
+[      ]*[a-f0-9]+:    3e 74 03[       ]+je,pt  +[0-9a-fx]+ <.*>
+[      ]*[a-f0-9]+:    2e 74 00[       ]+je,pn  +[0-9a-fx]+ <.*>
+[0-9a-f]+ <.*>:
 [      ]*[a-f0-9]+:    ff d0                   call   \*%rax
 [      ]*[a-f0-9]+:    ff d0                   call   \*%rax
 [      ]*[a-f0-9]+:    66 ff d0                data16 call \*%rax
@@ -37,8 +38,8 @@ Disassembly of section .text:
 [      ]*[a-f0-9]+:    66 ff e0                data16 jmp \*%rax
 [      ]*[a-f0-9]+:    66 ff e0                data16 jmp \*%rax
 [      ]*[a-f0-9]+:    66 ff 20                data16 jmp \*\(%rax\)
-[      ]*[a-f0-9]+:    e8 00 00 00 00          call   0x[0-9a-f]*      [0-9a-f]*: R_X86_64_PC32        \*ABS\*\+0x10003c
-[      ]*[a-f0-9]+:    e9 00 00 00 00          jmp    0x[0-9a-f]*      [0-9a-f]*: R_X86_64_PC32        \*ABS\*\+0x10003c
+[      ]*[a-f0-9]+:    e8 00 00 00 00          call   [0-9a-fx]* <.*>  [0-9a-f]*: R_X86_64_PC32        \*ABS\*\+0x10003c
+[      ]*[a-f0-9]+:    e9 00 00 00 00          jmp    [0-9a-fx]* <.*>  [0-9a-f]*: R_X86_64_PC32        \*ABS\*\+0x10003c
 [      ]*[a-f0-9]+:    66 c3                   data16 ret *
 [      ]*[a-f0-9]+:    66 c2 08 00             data16 ret \$0x8
 #pass
index 1041fd04833178c4d37760d6e52e654e77cabf21..35f56ad8ddadccf4b61a115cc52f3277e02dd9ca 100644 (file)
@@ -7,6 +7,7 @@ Disassembly of section .text:
 
 0+ <foo>:
    0:  c1 e9 02                shr    \$0x2,%ecx
+[0-9a-f]+ <.*>:
    3:  c1 e9 02                shr    \$0x2,%ecx
    6:  c1 e9 02                shr    \$0x2,%ecx
    9:  89 d1                   mov    %edx,%ecx
@@ -18,9 +19,11 @@ Disassembly of section .text:
   19:  c1 e9 02                shr    \$0x2,%ecx
   1c:  c1 e9 02                shr    \$0x2,%ecx
   1f:  80 fa 02                cmp    \$0x2,%dl
-  22:  70 df                   jo     3 <foo\+0x3>
+  22:  70 df                   jo     [0-9a-fx]+ <.*>
   24:  2e 2e 2e 2e 31 c0       cs cs cs cs xor %eax,%eax
   2a:  c1 e9 02                shr    \$0x2,%ecx
+
+[0-9a-f]+ <.*>:
   2d:  c1 e9 02                shr    \$0x2,%ecx
   30:  c1 e9 02                shr    \$0x2,%ecx
   33:  89 d1                   mov    %edx,%ecx
@@ -29,8 +32,10 @@ Disassembly of section .text:
   3a:  c1 e9 02                shr    \$0x2,%ecx
   3d:  c1 e9 02                shr    \$0x2,%ecx
   40:  f6 c2 02                test   \$0x2,%dl
-  43:  75 e8                   jne    2d <foo\+0x2d>
+  43:  75 e8                   jne    [0-9a-fx]+ <.*>
   45:  31 c0                   xor    %eax,%eax
+
+[0-9a-f]+ <.*>:
   47:  c1 e9 02                shr    \$0x2,%ecx
   4a:  c1 e9 02                shr    \$0x2,%ecx
   4d:  89 d1                   mov    %edx,%ecx
@@ -41,6 +46,6 @@ Disassembly of section .text:
   5a:  89 d1                   mov    %edx,%ecx
   5c:  31 c0                   xor    %eax,%eax
   5e:  ff c0                   inc    %eax
-  60:  76 cb                   jbe    2d <foo\+0x2d>
+  60:  76 cb                   jbe    [0-9a-fx]+ <.*>
   62:  31 c0                   xor    %eax,%eax
 #pass
index 917579bda401899b1507f998ca122dee6b4a642a..59507f8ad26e879d17abc2e7e628741ee9766e72 100644 (file)
@@ -2,7 +2,7 @@
        .p2align 4,,15
 foo:
        shrl    $2, %ecx
-.L1:
+l1:
        shrl    $2, %ecx
        shrl    $2, %ecx
        movl    %edx, %ecx
@@ -14,10 +14,10 @@ foo:
        shrl    $2, %ecx
        shrl    $2, %ecx
        cmpb    $2, %dl
-       jo      .L1
+       jo      l1
        xorl    %eax, %eax
        shrl    $2, %ecx
-.L2:
+l2:
        shrl    $2, %ecx
        shrl    $2, %ecx
        movl    %edx, %ecx
@@ -26,9 +26,9 @@ foo:
        shrl    $2, %ecx
        shrl    $2, %ecx
        testb   $2, %dl
-       jne     .L2
+       jne     l2
        xorl    %eax, %eax
-.L3:
+l3:
        shrl    $2, %ecx
        shrl    $2, %ecx
        movl    %edx, %ecx
@@ -39,5 +39,5 @@ foo:
        movl    %edx, %ecx
        xorl    %eax, %eax
        inc     %eax
-       jbe     .L2
+       jbe     l2
        xorl    %eax, %eax
index b963f9f051e47ff472ccc2cec36a78b2de8061a0..02509d21bc338bac28fe1af3d6c39f06a67263d3 100644 (file)
@@ -6,7 +6,7 @@
 
 Disassembly of section .text:
 
-0+ <.text>:
+[0-9a-f]+ <.*>:
 [      ]*[a-f0-9]+:    ff d0                   call   \*%rax
 [      ]*[a-f0-9]+:    ff d0                   call   \*%rax
 [      ]*[a-f0-9]+:    66 ff d0                data16 call \*%rax
@@ -17,15 +17,16 @@ Disassembly of section .text:
 [      ]*[a-f0-9]+:    66 ff e0                data16 jmp \*%rax
 [      ]*[a-f0-9]+:    66 ff e0                data16 jmp \*%rax
 [      ]*[a-f0-9]+:    66 ff 20                data16 jmp \*\(%rax\)
-[      ]*[a-f0-9]+:    e8 (00|5b) 00 (00|10) 00        call   (0x1f|10007a <.text\+0x10007a>)
-[      ]*[a-f0-9]+:    e9 (00|60) 00 (00|10) 00        jmp    (0x24|100084 <.text\+0x100084>)
-[      ]*[a-f0-9]+:    66 e8 00 00 00 00       data16 call (0x2a|2a <.text\+0x2a>)
-[      ]*[a-f0-9]+:    66 e9 00 00 00 00       data16 jmp (0x30|30 <.text\+0x30>)
-[      ]*[a-f0-9]+:    66 0f 82 00 00 00 00    data16 jb (0x37|37 <.text\+0x37>)
+[      ]*[a-f0-9]+:    e8 (00|5b) 00 (00|10) 00        call   ((0x)?1f|10007a) <.*>
+[      ]*[a-f0-9]+:    e9 (00|60) 00 (00|10) 00        jmp    ((0x)?24|100084) <.*>
+[      ]*[a-f0-9]+:    66 e8 00 00 00 00       data16 call (0x2a|2a <.*>)
+[      ]*[a-f0-9]+:    66 e9 00 00 00 00       data16 jmp (0x30|30 <.*>)
+[      ]*[a-f0-9]+:    66 0f 82 00 00 00 00    data16 jb (0x37|37 <.*>)
 [      ]*[a-f0-9]+:    66 c3                   data16 ret *
 [      ]*[a-f0-9]+:    66 c2 08 00             data16 ret \$0x8
-[      ]*[a-f0-9]+:    3e 74 03[       ]+je,pt  +0x[0-9a-f]+
-[      ]*[a-f0-9]+:    2e 74 00[       ]+je,pn  +0x[0-9a-f]+
+[      ]*[a-f0-9]+:    3e 74 03[       ]+je,pt  +[0-9a-fx]+ <.*>
+[      ]*[a-f0-9]+:    2e 74 00[       ]+je,pn  +[0-9a-fx]+ <.*>
+[0-9a-f]+ <label>:
 [      ]*[a-f0-9]+:    ff d0                   call   \*%rax
 [      ]*[a-f0-9]+:    ff d0                   call   \*%rax
 [      ]*[a-f0-9]+:    66 ff d0                data16 call \*%rax
@@ -36,8 +37,8 @@ Disassembly of section .text:
 [      ]*[a-f0-9]+:    66 ff e0                data16 jmp \*%rax
 [      ]*[a-f0-9]+:    66 ff e0                data16 jmp \*%rax
 [      ]*[a-f0-9]+:    66 ff 20                data16 jmp \*\(%rax\)
-[      ]*[a-f0-9]+:    e8 .. 00 (00|10) 00             call   (0x[0-9a-f]*|100[0-9a-f]* <.text\+0x100[0-9a-f]*>)
-[      ]*[a-f0-9]+:    e9 .. 00 (00|10) 00             jmp    (0x[0-9a-f]*|100[0-9a-f]* <.text\+0x100[0-9a-f]*>)
+[      ]*[a-f0-9]+:    e8 .. 00 (00|10) 00             call   [0-9a-fx]* <.*>
+[      ]*[a-f0-9]+:    e9 .. 00 (00|10) 00             jmp    [0-9a-fx]* <.*>
 [      ]*[a-f0-9]+:    66 c3                   data16 ret *
 [      ]*[a-f0-9]+:    66 c2 08 00             data16 ret \$0x8
 #pass
index 496e1bb089fb7c3d5f00995f0ac4216b28b1de99..75db8f599942689f204d6906c8c6108407db6bf3 100644 (file)
@@ -22,9 +22,9 @@
        retw
        retw    $8
 
-       jz,pt .Llabel
-       jz,pn .Llabel
-.Llabel:
+       jz,pt label
+       jz,pn label
+label:
 
        .intel_syntax noprefix
        call    rax