diff --git a/gas/ChangeLog b/gas/ChangeLog index 673d03fe10..2d68a2741d 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,18 @@ +2020-04-01 Rainer Orth + + PR gas/25732 + * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file. + * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file. + * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to + testsuite/gas/i386/x86-64-jump.d. + * gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d: + Incorporate changes to + gas/testsuite/gas/i386/x86-64-mpx-branch-1.d. + * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate + changes to testsuite/gas/i386/x86-64-mpx-branch-2.d. + * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*. + * testsuite/gas/i386/x86-64-branch-3.d: Likewise. + 2020-03-31 Maciej W. Rozycki PR 25611 diff --git a/gas/testsuite/gas/i386/solaris/x86-64-branch-2.d b/gas/testsuite/gas/i386/solaris/x86-64-branch-2.d new file mode 100644 index 0000000000..7c460c749b --- /dev/null +++ b/gas/testsuite/gas/i386/solaris/x86-64-branch-2.d @@ -0,0 +1,20 @@ +#as: -J +#objdump: -dwr +#source: ../x86-64-branch-2.s +#name: x86-64 branch 2 + +.*: +file format .* + +Disassembly of section .text: + +0+ : +[ ]*[a-f0-9]+: 66 e9 00 00 jmpw 4 2: R_X86_64_PC16 foo-0x2 +[ ]*[a-f0-9]+: 66 48 e9 00 00 00 00 data16 jmpq b 7: R_X86_64_PC32 foo-0x4 + +0+b : +[ ]*[a-f0-9]+: 89 c3 mov %eax,%ebx +[ ]*[a-f0-9]+: 66 e8 00 00 callw 11 f: R_X86_64_PC16 foo-0x2 +[ ]*[a-f0-9]+: 66 48 e8 00 00 00 00 data16 callq 18 14: R_X86_64_PC32 foo-0x4 +[ ]*[a-f0-9]+: 66 c3 retw * +[ ]*[a-f0-9]+: 66 c2 08 00 retw \$0x8 +#pass diff --git a/gas/testsuite/gas/i386/solaris/x86-64-branch-3.d b/gas/testsuite/gas/i386/solaris/x86-64-branch-3.d new file mode 100644 index 0000000000..d4852f1018 --- /dev/null +++ b/gas/testsuite/gas/i386/solaris/x86-64-branch-3.d @@ -0,0 +1,22 @@ +#as: -J -mintel64 +#objdump: -dwr -Mintel64 +#source: ../x86-64-branch-3.s +#name: x86-64 branch 3 + +.*: +file format .* + +Disassembly of section .text: + +0+ : +[ ]*[a-f0-9]+: 66 e9 00 00 00 00 data16 jmpq 6 2: R_X86_64_PC32 foo-0x4 +[ ]*[a-f0-9]+: 66 48 e9 00 00 00 00 data16 rex\.W jmpq d 9: R_X86_64_PC32 foo-0x4 + +0+d : +[ ]*[a-f0-9]+: 89 c3 mov %eax,%ebx +[ ]*[a-f0-9]+: 66 e8 00 00 00 00 data16 callq 15 11: R_X86_64_PC32 foo-0x4 +[ ]*[a-f0-9]+: 66 48 e8 00 00 00 00 data16 rex\.W callq 1c 18: R_X86_64_PC32 foo-0x4 +[ ]*[a-f0-9]+: 66 c7 f8 00 00 xbeginw 21 1f: R_X86_64_PC16 foo-0x2 +[ ]*[a-f0-9]+: 66 48 c7 f8 00 00 00 00 data16 xbeginq 29 25: R_X86_64_PC32 foo-0x4 +[ ]*[a-f0-9]+: 48 ff 18 lcallq \*\(%rax\) +[ ]*[a-f0-9]+: 48 ff 29 ljmpq \*\(%rcx\) +#pass diff --git a/gas/testsuite/gas/i386/solaris/x86-64-jump.d b/gas/testsuite/gas/i386/solaris/x86-64-jump.d index 861f1b47a0..723ef28e93 100644 --- a/gas/testsuite/gas/i386/solaris/x86-64-jump.d +++ b/gas/testsuite/gas/i386/solaris/x86-64-jump.d @@ -31,14 +31,22 @@ Disassembly of section .text: [ ]*[a-f0-9]+: e3 00 jrcxz 0x69 68: R_X86_64_PC8 \$\+0x1 [ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 66 ff 13 callw \*\(%rbx\) +[ ]*[a-f0-9]+: 66 ff 1b lcallw \*\(%rbx\) +[ ]*[a-f0-9]+: ff 1b lcall \*\(%rbx\) +[ ]*[a-f0-9]+: ff 13 callq \*\(%rbx\) +[ ]*[a-f0-9]+: ff 13 callq \*\(%rbx\) [ ]*[a-f0-9]+: ff 1b lcall \*\(%rbx\) [ ]*[a-f0-9]+: 66 ff 23 jmpw \*\(%rbx\) +[ ]*[a-f0-9]+: 66 ff 2b ljmpw \*\(%rbx\) [ ]*[a-f0-9]+: ff 2b ljmp \*\(%rbx\) -[ ]*[a-f0-9]+: eb 00 jmp 0x76 +[ ]*[a-f0-9]+: ff 23 jmpq \*\(%rbx\) +[ ]*[a-f0-9]+: ff 23 jmpq \*\(%rbx\) +[ ]*[a-f0-9]+: ff 2b ljmp \*\(%rbx\) +[ ]*[a-f0-9]+: eb 00 jmp 0x[0-9a-f]* [ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 67 e3 00 jecxz 0x7a +[ ]*[a-f0-9]+: 67 e3 00 jecxz 0x[0-9a-f]* [ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: e3 00 jrcxz 0x7d +[ ]*[a-f0-9]+: e3 00 jrcxz 0x[0-9a-f]* [ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: eb 00 jmp 0x80 +[ ]*[a-f0-9]+: eb 00 jmp 0x[0-9a-f]* #pass diff --git a/gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d b/gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d index 0c30add118..23bba67a6e 100644 --- a/gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d +++ b/gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d @@ -8,22 +8,24 @@ Disassembly of section .text: -0+ : -[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 6 2: R_X86_64_PC32 \*ABS\*\+0x10003c -[ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmpq c 8: R_X86_64_PC32 \*ABS\*\+0x10003c +0+ : +[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 6 2: R_X86_64_PC32 \*ABS\*\+0x10003c +[ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmpq c 8: R_X86_64_PC32 \*ABS\*\+0x10003c +[ ]*[a-f0-9]+: 66 f2 48 e8 00 00 00 00 data16 bnd callq 14 10: R_X86_64_PC32 \*ABS\*\+0x10003c +[ ]*[a-f0-9]+: 66 f2 48 e9 00 00 00 00 data16 bnd jmpq 1c 18: R_X86_64_PC32 \*ABS\*\+0x10003c -0+c : -[ ]*[a-f0-9]+: f2 eb fd bnd jmp c -[ ]*[a-f0-9]+: f2 72 fa bnd jb c -[ ]*[a-f0-9]+: f2 e8 f4 ff ff ff bnd callq c -[ ]*[a-f0-9]+: f2 eb 09 bnd jmp 24 -[ ]*[a-f0-9]+: f2 72 06 bnd jb 24 -[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 24 +0+1c : +[ ]*[a-f0-9]+: f2 eb fd bnd jmp 1c +[ ]*[a-f0-9]+: f2 72 fa bnd jb 1c +[ ]*[a-f0-9]+: f2 e8 f4 ff ff ff bnd callq 1c +[ ]*[a-f0-9]+: f2 eb 09 bnd jmp 34 +[ ]*[a-f0-9]+: f2 72 06 bnd jb 34 +[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 34 -0+24 : -[ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmpq 2a 26: R_X86_64_PC32 foo-0x4 -[ ]*[a-f0-9]+: f2 0f 82 00 00 00 00 bnd jb 31 2d: R_X86_64_PC32 foo-0x4 -[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 37 33: R_X86_64_PC32 foo-0x4 -[ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmpq 3d 39: R_X86_64_PLT32 foo-0x4 -[ ]*[a-f0-9]+: f2 0f 82 00 00 00 00 bnd jb 44 40: R_X86_64_PLT32 foo-0x4 -[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 4a 46: R_X86_64_PLT32 foo-0x4 +0+34 : +[ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmpq 3a 36: R_X86_64_PC32 foo-0x4 +[ ]*[a-f0-9]+: f2 0f 82 00 00 00 00 bnd jb 41 3d: R_X86_64_PC32 foo-0x4 +[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 47 43: R_X86_64_PC32 foo-0x4 +[ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmpq 4d 49: R_X86_64_PLT32 foo-0x4 +[ ]*[a-f0-9]+: f2 0f 82 00 00 00 00 bnd jb 54 50: R_X86_64_PLT32 foo-0x4 +[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 5a 56: R_X86_64_PLT32 foo-0x4 diff --git a/gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d b/gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d index db47ec6f6a..b6ff92c170 100644 --- a/gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d +++ b/gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d @@ -1,29 +1,5 @@ #as: -J -madd-bnd-prefix -#source: ../x86-64-mpx-branch-2.s +#source: ../x86-64-mpx-branch-1.s #objdump: -dwr #name: x86-64 branch with BND prefix - -.*: +file format .* - - -Disassembly of section .text: - -0+ : -[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 6 2: R_X86_64_PC32 \*ABS\*\+0x10003c -[ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmpq c 8: R_X86_64_PC32 \*ABS\*\+0x10003c - -0+c : -[ ]*[a-f0-9]+: f2 eb fd bnd jmp c -[ ]*[a-f0-9]+: f2 72 fa bnd jb c -[ ]*[a-f0-9]+: f2 e8 f4 ff ff ff bnd callq c -[ ]*[a-f0-9]+: f2 eb 09 bnd jmp 24 -[ ]*[a-f0-9]+: f2 72 06 bnd jb 24 -[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 24 - -0+24 : -[ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmpq 2a 26: R_X86_64_PC32 foo-0x4 -[ ]*[a-f0-9]+: f2 0f 82 00 00 00 00 bnd jb 31 2d: R_X86_64_PC32 foo-0x4 -[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 37 33: R_X86_64_PC32 foo-0x4 -[ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmpq 3d 39: R_X86_64_PLT32 foo-0x4 -[ ]*[a-f0-9]+: f2 0f 82 00 00 00 00 bnd jb 44 40: R_X86_64_PLT32 foo-0x4 -[ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 4a 46: R_X86_64_PLT32 foo-0x4 +#dump: x86-64-mpx-branch-1.d diff --git a/gas/testsuite/gas/i386/x86-64-branch-2.d b/gas/testsuite/gas/i386/x86-64-branch-2.d index be9aae412d..612cb69115 100644 --- a/gas/testsuite/gas/i386/x86-64-branch-2.d +++ b/gas/testsuite/gas/i386/x86-64-branch-2.d @@ -1,6 +1,7 @@ #as: -J #objdump: -dwr #name: x86-64 branch 2 +#notarget: *-*-solaris* .*: +file format .* diff --git a/gas/testsuite/gas/i386/x86-64-branch-3.d b/gas/testsuite/gas/i386/x86-64-branch-3.d index 1d0e64e4eb..48fef0083d 100644 --- a/gas/testsuite/gas/i386/x86-64-branch-3.d +++ b/gas/testsuite/gas/i386/x86-64-branch-3.d @@ -1,6 +1,7 @@ #as: -J -mintel64 #objdump: -dwr -Mintel64 #name: x86-64 branch 3 +#notarget: *-*-solaris* .*: +file format .*