From 5ebee2558bd82511b8c2cb56f5f35113f94bb0c9 Mon Sep 17 00:00:00 2001 From: Fangrui Song Date: Wed, 7 Aug 2019 09:43:54 +0000 Subject: [PATCH] [ELF][X86] Add --no-show-raw-insn and -soname to some i386 tests llvm-svn: 368142 --- lld/test/ELF/gnu-ifunc-i386.s | 26 ++++---- lld/test/ELF/gnu-ifunc-plt-i386.s | 52 +++++++-------- lld/test/ELF/i386-gotoff-shared.s | 6 +- lld/test/ELF/i386-tls-gdiele.s | 26 ++++---- lld/test/ELF/plt-i686.s | 126 ++++++++++++++++++------------------ lld/test/ELF/relocation-copy-i686.s | 8 +-- lld/test/ELF/relocation-i686.s | 30 ++++----- 7 files changed, 138 insertions(+), 136 deletions(-) diff --git a/lld/test/ELF/gnu-ifunc-i386.s b/lld/test/ELF/gnu-ifunc-i386.s index a142f15..553d67e 100644 --- a/lld/test/ELF/gnu-ifunc-i386.s +++ b/lld/test/ELF/gnu-ifunc-i386.s @@ -1,7 +1,7 @@ // REQUIRES: x86 // RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %s -o %t.o // RUN: ld.lld -static %t.o -o %tout -// RUN: llvm-objdump -d %tout | FileCheck %s --check-prefix=DISASM +// RUN: llvm-objdump -d --no-show-raw-insn %tout | FileCheck %s --check-prefix=DISASM // RUN: llvm-readobj -r --symbols --sections %tout | FileCheck %s // CHECK: Sections [ @@ -109,25 +109,25 @@ // DISASM: Disassembly of section .text: // DISASM-EMPTY: // DISASM-NEXT: foo_resolver: -// DISASM-NEXT: 401000: c3 retl +// DISASM-NEXT: 401000: retl // DISASM: bar_resolver: -// DISASM-NEXT: 401001: c3 retl +// DISASM-NEXT: 401001: retl // DISASM: _start: -// DISASM-NEXT: 401002: e8 19 00 00 00 calll 25 -// DISASM-NEXT: 401007: e8 24 00 00 00 calll 36 -// DISASM-NEXT: 40100c: ba d4 00 40 00 movl $4194516, %edx -// DISASM-NEXT: 401011: ba e4 00 40 00 movl $4194532, %edx +// DISASM-NEXT: 401002: calll 25 +// DISASM-NEXT: calll 36 +// DISASM-NEXT: movl $4194516, %edx +// DISASM-NEXT: movl $4194532, %edx // DISASM-EMPTY: // DISASM-NEXT: Disassembly of section .plt: // DISASM-EMPTY: // DISASM-NEXT: foo: -// DISASM-NEXT: 401020: ff 25 00 20 40 00 jmpl *4202496 -// DISASM-NEXT: 401026: 68 10 00 00 00 pushl $16 -// DISASM-NEXT: 40102b: e9 e0 ff ff ff jmp -32 <_start+0xe> +// DISASM-NEXT: 401020: jmpl *4202496 +// DISASM-NEXT: pushl $16 +// DISASM-NEXT: jmp -32 <_start+0xe> // DISASM: bar: -// DISASM-NEXT: 401030: ff 25 04 20 40 00 jmpl *4202500 -// DISASM-NEXT: 401036: 68 18 00 00 00 pushl $24 -// DISASM-NEXT: 40103b: e9 d0 ff ff ff jmp -48 <_start+0xe> +// DISASM-NEXT: 401030: jmpl *4202500 +// DISASM-NEXT: pushl $24 +// DISASM-NEXT: jmp -48 <_start+0xe> .text .type foo STT_GNU_IFUNC diff --git a/lld/test/ELF/gnu-ifunc-plt-i386.s b/lld/test/ELF/gnu-ifunc-plt-i386.s index 0ad25a3..1e63ca7 100644 --- a/lld/test/ELF/gnu-ifunc-plt-i386.s +++ b/lld/test/ELF/gnu-ifunc-plt-i386.s @@ -1,9 +1,9 @@ // REQUIRES: x86 // RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %S/Inputs/shared2-x86-64.s -o %t1.o -// RUN: ld.lld %t1.o --shared -o %t.so +// RUN: ld.lld %t1.o --shared --soname=t.so -o %t.so // RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %s -o %t.o // RUN: ld.lld --hash-style=sysv %t.so %t.o -o %tout -// RUN: llvm-objdump -d %tout | FileCheck %s --check-prefix=DISASM +// RUN: llvm-objdump -d --no-show-raw-insn %tout | FileCheck %s --check-prefix=DISASM // RUN: llvm-objdump -s %tout | FileCheck %s --check-prefix=GOTPLT // RUN: llvm-readobj -r --dynamic-table %tout | FileCheck %s @@ -33,40 +33,40 @@ // DISASM: Disassembly of section .text: // DISASM-EMPTY: // DISASM-NEXT: foo: -// DISASM-NEXT: 401000: c3 retl +// DISASM-NEXT: 401000: retl // DISASM: bar: -// DISASM-NEXT: 401001: c3 retl +// DISASM-NEXT: 401001: retl // DISASM: _start: -// DISASM-NEXT: 401002: e8 49 00 00 00 calll 73 -// DISASM-NEXT: 401007: e8 54 00 00 00 calll 84 -// DISASM-NEXT: 40100c: e8 1f 00 00 00 calll 31 -// DISASM-NEXT: 401011: e8 2a 00 00 00 calll 42 +// DISASM-NEXT: 401002: calll 73 +// DISASM-NEXT: calll 84 +// DISASM-NEXT: calll 31 +// DISASM-NEXT: calll 42 // DISASM-EMPTY: // DISASM-NEXT: Disassembly of section .plt: // DISASM-EMPTY: // DISASM-NEXT: .plt: -// DISASM-NEXT: 401020: ff 35 04 30 40 00 pushl 4206596 -// DISASM-NEXT: 401026: ff 25 08 30 40 00 jmpl *4206600 -// DISASM-NEXT: 40102c: 90 nop -// DISASM-NEXT: 40102d: 90 nop -// DISASM-NEXT: 40102e: 90 nop -// DISASM-NEXT: 40102f: 90 nop +// DISASM-NEXT: 401020: pushl 4206596 +// DISASM-NEXT: jmpl *4206600 +// DISASM-NEXT: nop +// DISASM-NEXT: nop +// DISASM-NEXT: nop +// DISASM-NEXT: nop // DISASM-EMPTY: // DISASM-NEXT: bar2@plt: -// DISASM-NEXT: 401030: ff 25 0c 30 40 00 jmpl *4206604 -// DISASM-NEXT: 401036: 68 00 00 00 00 pushl $0 -// DISASM-NEXT: 40103b: e9 e0 ff ff ff jmp -32 <.plt> +// DISASM-NEXT: 401030: jmpl *4206604 +// DISASM-NEXT: pushl $0 +// DISASM-NEXT: jmp -32 <.plt> // DISASM-EMPTY: // DISASM-NEXT: zed2@plt: -// DISASM-NEXT: 401040: ff 25 10 30 40 00 jmpl *4206608 -// DISASM-NEXT: 401046: 68 08 00 00 00 pushl $8 -// DISASM-NEXT: 40104b: e9 d0 ff ff ff jmp -48 <.plt> -// DISASM-NEXT: 401050: ff 25 14 30 40 00 jmpl *4206612 -// DISASM-NEXT: 401056: 68 30 00 00 00 pushl $48 -// DISASM-NEXT: 40105b: e9 e0 ff ff ff jmp -32 -// DISASM-NEXT: 401060: ff 25 18 30 40 00 jmpl *4206616 -// DISASM-NEXT: 401066: 68 38 00 00 00 pushl $56 -// DISASM-NEXT: 40106b: e9 d0 ff ff ff jmp -48 +// DISASM-NEXT: 401040: jmpl *4206608 +// DISASM-NEXT: pushl $8 +// DISASM-NEXT: jmp -48 <.plt> +// DISASM-NEXT: jmpl *4206612 +// DISASM-NEXT: pushl $48 +// DISASM-NEXT: jmp -32 +// DISASM-NEXT: jmpl *4206616 +// DISASM-NEXT: pushl $56 +// DISASM-NEXT: jmp -48 .text .type foo STT_GNU_IFUNC diff --git a/lld/test/ELF/i386-gotoff-shared.s b/lld/test/ELF/i386-gotoff-shared.s index 59369b3..7903b94 100644 --- a/lld/test/ELF/i386-gotoff-shared.s +++ b/lld/test/ELF/i386-gotoff-shared.s @@ -1,8 +1,8 @@ // REQUIRES: x86 // RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %s -o %t.o -// RUN: ld.lld --hash-style=sysv %t.o -o %t.so -shared +// RUN: ld.lld %t.o -o %t.so -shared // RUN: llvm-readelf -S %t.so | FileCheck %s -// RUN: llvm-objdump -d %t.so | FileCheck --check-prefix=DISASM %s +// RUN: llvm-objdump -d --no-show-raw-insn %t.so | FileCheck --check-prefix=DISASM %s bar: movl bar@GOTOFF(%ebx), %eax @@ -12,4 +12,4 @@ bar: // 0x1000 - 0x3000 (.got.plt) = -8192 -// DISASM: 1000: {{.*}} movl -8192(%ebx), %eax +// DISASM: 1000: movl -8192(%ebx), %eax diff --git a/lld/test/ELF/i386-tls-gdiele.s b/lld/test/ELF/i386-tls-gdiele.s index c9df1d0..2e77c77 100644 --- a/lld/test/ELF/i386-tls-gdiele.s +++ b/lld/test/ELF/i386-tls-gdiele.s @@ -1,10 +1,10 @@ // REQUIRES: x86 -// RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %p/Inputs/tls-opt-gdiele-i686.s -o %tso.o -// RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %s -o %t.o -// RUN: ld.lld -shared %tso.o -o %tso -// RUN: ld.lld --hash-style=sysv %t.o %tso -o %tout +// RUN: llvm-mc -filetype=obj -triple=i686 %p/Inputs/tls-opt-gdiele-i686.s -o %t.o +// RUN: llvm-mc -filetype=obj -triple=i686 %s -o %t1.o +// RUN: ld.lld -shared %t.o -soname=t.so -o %t.so +// RUN: ld.lld --hash-style=sysv %t1.o %t.so -o %tout // RUN: llvm-readobj -r %tout | FileCheck --check-prefix=NORELOC %s -// RUN: llvm-objdump -d %tout | FileCheck --check-prefix=DISASM %s +// RUN: llvm-objdump -d --no-show-raw-insn %tout | FileCheck --check-prefix=DISASM %s // NORELOC: Relocations [ // NORELOC-NEXT: Section ({{.*}}) .rel.dyn { @@ -16,14 +16,14 @@ // DISASM: Disassembly of section .text: // DISASM-EMPTY: // DISASM-NEXT: _start: -// DISASM-NEXT: 401000: 65 a1 00 00 00 00 movl %gs:0, %eax -// DISASM-NEXT: 401006: 03 83 58 f0 ff ff addl -4008(%ebx), %eax -// DISASM-NEXT: 40100c: 65 a1 00 00 00 00 movl %gs:0, %eax -// DISASM-NEXT: 401012: 03 83 5c f0 ff ff addl -4004(%ebx), %eax -// DISASM-NEXT: 401018: 65 a1 00 00 00 00 movl %gs:0, %eax -// DISASM-NEXT: 40101e: 81 e8 08 00 00 00 subl $8, %eax -// DISASM-NEXT: 401024: 65 a1 00 00 00 00 movl %gs:0, %eax -// DISASM-NEXT: 40102a: 81 e8 04 00 00 00 subl $4, %eax +// DISASM-NEXT: 401000: movl %gs:0, %eax +// DISASM-NEXT: addl -4008(%ebx), %eax +// DISASM-NEXT: movl %gs:0, %eax +// DISASM-NEXT: addl -4004(%ebx), %eax +// DISASM-NEXT: movl %gs:0, %eax +// DISASM-NEXT: subl $8, %eax +// DISASM-NEXT: movl %gs:0, %eax +// DISASM-NEXT: subl $4, %eax .type tlsexe1,@object .section .tbss,"awT",@nobits diff --git a/lld/test/ELF/plt-i686.s b/lld/test/ELF/plt-i686.s index 615bd1e..d402b1e 100644 --- a/lld/test/ELF/plt-i686.s +++ b/lld/test/ELF/plt-i686.s @@ -1,15 +1,15 @@ // REQUIRES: x86 // RUN: llvm-mc -filetype=obj -triple=i686-unknown-linux %s -o %t.o // RUN: llvm-mc -filetype=obj -triple=i686-unknown-linux %p/Inputs/shared.s -o %t2.o -// RUN: ld.lld -shared %t2.o -o %t2.so +// RUN: ld.lld -shared %t2.o -soname=t2.so -o %t2.so // RUN: ld.lld %t.o %t2.so -o %t // RUN: llvm-readobj -S -r %t | FileCheck %s -// RUN: llvm-objdump -d %t | FileCheck --check-prefix=DISASM %s +// RUN: llvm-objdump -d --no-show-raw-insn %t | FileCheck --check-prefix=DISASM %s // RUN: ld.lld -shared %t.o %t2.so -o %t // RUN: llvm-readobj -S -r %t | FileCheck --check-prefix=CHECKSHARED %s -// RUN: llvm-objdump -d %t | FileCheck --check-prefix=DISASMSHARED %s +// RUN: llvm-objdump -d --no-show-raw-insn %t | FileCheck --check-prefix=DISASMSHARED %s // RUN: ld.lld -pie %t.o %t2.so -o %t -// RUN: llvm-objdump -d %t | FileCheck --check-prefix=DISASMPIE %s +// RUN: llvm-objdump -d --no-show-raw-insn %t | FileCheck --check-prefix=DISASMPIE %s // CHECK: Name: .plt // CHECK-NEXT: Type: SHT_PROGBITS @@ -56,14 +56,14 @@ // (0x401020 + 16) - (0x40100a + 1) - 4 = 33 // DISASM: local: -// DISASM-NEXT: 401000: {{.*}} -// DISASM-NEXT: 401002: {{.*}} +// DISASM-NEXT: 401000: +// DISASM-NEXT: 401002: // DISASM: _start: // 0x401013 + 5 - 24 = 0x401000 -// DISASM-NEXT: 401004: e9 27 00 00 00 jmp 39 -// DISASM-NEXT: 401009: e9 22 00 00 00 jmp 34 -// DISASM-NEXT: 40100e: e9 2d 00 00 00 jmp 45 -// DISASM-NEXT: 401013: e9 e8 ff ff ff jmp -24 +// DISASM-NEXT: 401004: jmp 39 +// DISASM-NEXT: 401009: jmp 34 +// DISASM-NEXT: 40100e: jmp 45 +// DISASM-NEXT: 401013: jmp -24 // 0x401010 - 0x40102b - 5 = -32 // 0x401010 - 0x40103b - 5 = -48 @@ -74,22 +74,22 @@ // DISASM: Disassembly of section .plt: // DISASM-EMPTY: // DISASM-NEXT: .plt: -// DISASM-NEXT: 401020: ff 35 04 30 40 00 pushl 4206596 -// DISASM-NEXT: 401026: ff 25 08 30 40 00 jmpl *4206600 -// DISASM-NEXT: 40102c: 90 nop -// DISASM-NEXT: 40102d: 90 nop -// DISASM-NEXT: 40102e: 90 nop -// DISASM-NEXT: 40102f: 90 nop +// DISASM-NEXT: 401020: pushl 4206596 +// DISASM-NEXT: jmpl *4206600 +// DISASM-NEXT: nop +// DISASM-NEXT: nop +// DISASM-NEXT: nop +// DISASM-NEXT: nop // DISASM-EMPTY: -// DISASM-NEXT: bar@plt: -// DISASM-NEXT: 401030: ff 25 0c 30 40 00 jmpl *4206604 -// DISASM-NEXT: 401036: 68 00 00 00 00 pushl $0 -// DISASM-NEXT: 40103b: e9 e0 ff ff ff jmp -32 <.plt> +// DISASM-NEXT: bar@plt: +// DISASM-NEXT: 401030: jmpl *4206604 +// DISASM-NEXT: pushl $0 +// DISASM-NEXT: jmp -32 <.plt> // DISASM-EMPTY: -// DISASM-NEXT: zed@plt: -// DISASM-NEXT: 401040: ff 25 10 30 40 00 jmpl *4206608 -// DISASM-NEXT: 401046: 68 08 00 00 00 pushl $8 -// DISASM-NEXT: 40104b: e9 d0 ff ff ff jmp -48 <.plt> +// DISASM-NEXT: zed@plt: +// DISASM-NEXT: 401040: jmpl *4206608 +// DISASM-NEXT: pushl $8 +// DISASM-NEXT: jmp -48 <.plt> // CHECKSHARED: Name: .plt // CHECKSHARED-NEXT: Type: SHT_PROGBITS @@ -129,51 +129,53 @@ // CHECKSHARED-NEXT: } // CHECKSHARED-NEXT: ] -// DISASMSHARED: local: -// DISASMSHARED-NEXT: 1000: {{.*}} -// DISASMSHARED-NEXT: 1002: {{.*}} -// DISASMSHARED: _start: +// DISASMSHARED: local: +// DISASMSHARED-NEXT: 1000: +// DISASMSHARED-NEXT: 1002: +// DISASMSHARED: _start: // 0x1013 + 5 - 24 = 0x1000 -// DISASMSHARED-NEXT: 1004: e9 27 00 00 00 jmp 39 -// DISASMSHARED-NEXT: 1009: e9 22 00 00 00 jmp 34 -// DISASMSHARED-NEXT: 100e: e9 2d 00 00 00 jmp 45 -// DISASMSHARED-NEXT: 1013: e9 e8 ff ff ff jmp -24 +// DISASMSHARED-NEXT: 1004: jmp 39 +// DISASMSHARED-NEXT: jmp 34 +// DISASMSHARED-NEXT: jmp 45 +// DISASMSHARED-NEXT: jmp -24 // DISASMSHARED-EMPTY: -// DISASMSHARED-NEXT: Disassembly of section .plt: +// DISASMSHARED-NEXT: Disassembly of section .plt: // DISASMSHARED-EMPTY: -// DISASMSHARED-NEXT: .plt: -// DISASMSHARED-NEXT: 1020: ff b3 04 00 00 00 pushl 4(%ebx) -// DISASMSHARED-NEXT: 1026: ff a3 08 00 00 00 jmpl *8(%ebx) -// DISASMSHARED-NEXT: 102c: 90 nop -// DISASMSHARED-NEXT: 102d: 90 nop -// DISASMSHARED-NEXT: 102e: 90 nop -// DISASMSHARED-NEXT: 102f: 90 nop -// DISASMSHARED: bar@plt: -// DISASMSHARED-NEXT: 1030: ff a3 0c 00 00 00 jmpl *12(%ebx) -// DISASMSHARED-NEXT: 1036: 68 00 00 00 00 pushl $0 -// DISASMSHARED-NEXT: 103b: e9 e0 ff ff ff jmp -32 <.plt> -// DISASMSHARED: zed@plt: -// DISASMSHARED-NEXT: 1040: ff a3 10 00 00 00 jmpl *16(%ebx) -// DISASMSHARED-NEXT: 1046: 68 08 00 00 00 pushl $8 -// DISASMSHARED-NEXT: 104b: e9 d0 ff ff ff jmp -48 <.plt> +// DISASMSHARED-NEXT: .plt: +// DISASMSHARED-NEXT: 1020: pushl 4(%ebx) +// DISASMSHARED-NEXT: jmpl *8(%ebx) +// DISASMSHARED-NEXT: nop +// DISASMSHARED-NEXT: nop +// DISASMSHARED-NEXT: nop +// DISASMSHARED-NEXT: nop +// DISASMSHARED: bar@plt: +// DISASMSHARED-NEXT: 1030: jmpl *12(%ebx) +// DISASMSHARED-NEXT: pushl $0 +// DISASMSHARED-NEXT: jmp -32 <.plt> +// DISASMSHARED: zed@plt: +// DISASMSHARED-NEXT: 1040: jmpl *16(%ebx) +// DISASMSHARED-NEXT: pushl $8 +// DISASMSHARED-NEXT: jmp -48 <.plt> // DISASMPIE: Disassembly of section .plt: // DISASMPIE-EMPTY: // DISASMPIE-NEXT: .plt: -// DISASMPIE-NEXT: 1020: ff b3 04 00 00 00 pushl 4(%ebx) -// DISASMPIE-NEXT: 1026: ff a3 08 00 00 00 jmpl *8(%ebx) -// DISASMPIE-NEXT: 102c: 90 nop -// DISASMPIE-NEXT: 102d: 90 nop -// DISASMPIE-NEXT: 102e: 90 nop -// DISASMPIE-NEXT: 102f: 90 nop -// DISASMPIE: bar@plt: -// DISASMPIE-NEXT: 1030: ff a3 0c 00 00 00 jmpl *12(%ebx) -// DISASMPIE-NEXT: 1036: 68 00 00 00 00 pushl $0 -// DISASMPIE-NEXT: 103b: e9 e0 ff ff ff jmp -32 <.plt> -// DISASMPIE: zed@plt: -// DISASMPIE-NEXT: 1040: ff a3 10 00 00 00 jmpl *16(%ebx) -// DISASMPIE-NEXT: 1046: 68 08 00 00 00 pushl $8 -// DISASMPIE-NEXT: 104b: e9 d0 ff ff ff jmp -48 <.plt> +// DISASMPIE-NEXT: 1020: pushl 4(%ebx) +// DISASMPIE-NEXT: jmpl *8(%ebx) +// DISASMPIE-NEXT: nop +// DISASMPIE-NEXT: nop +// DISASMPIE-NEXT: nop +// DISASMPIE-NEXT: nop +// DISASMPIE-EMPTY: +// DISASMPIE-NEXT: bar@plt: +// DISASMPIE-NEXT: 1030: jmpl *12(%ebx) +// DISASMPIE-NEXT: pushl $0 +// DISASMPIE-NEXT: jmp -32 <.plt> +// DISASMPIE-EMPTY: +// DISASMPIE-NEXT: zed@plt: +// DISASMPIE-NEXT: 1040: jmpl *16(%ebx) +// DISASMPIE-NEXT: pushl $8 +// DISASMPIE-NEXT: jmp -48 <.plt> local: .long 0 diff --git a/lld/test/ELF/relocation-copy-i686.s b/lld/test/ELF/relocation-copy-i686.s index e5ec99d..f52e66c 100644 --- a/lld/test/ELF/relocation-copy-i686.s +++ b/lld/test/ELF/relocation-copy-i686.s @@ -4,7 +4,7 @@ // RUN: ld.lld -shared %t2.o -o %t.so // RUN: ld.lld -e main %t.o %t.so -o %t3 // RUN: llvm-readobj -S -r --expand-relocs %t3 | FileCheck %s -// RUN: llvm-objdump -d %t3 | FileCheck -check-prefix=CODE %s +// RUN: llvm-objdump -d --no-show-raw-insn %t3 | FileCheck -check-prefix=CODE %s .text .globl main @@ -59,6 +59,6 @@ movl $9, z // CODE: Disassembly of section .text: // CODE-EMPTY: // CODE-NEXT: main: -// CODE-NEXT: 401000: c7 05 00 30 40 00 05 00 00 00 movl $5, 4206592 -// CODE-NEXT: 40100a: c7 05 10 30 40 00 07 00 00 00 movl $7, 4206608 -// CODE-NEXT: 401014: c7 05 14 30 40 00 09 00 00 00 movl $9, 4206612 +// CODE-NEXT: 401000: movl $5, 4206592 +// CODE-NEXT: 40100a: movl $7, 4206608 +// CODE-NEXT: 401014: movl $9, 4206612 diff --git a/lld/test/ELF/relocation-i686.s b/lld/test/ELF/relocation-i686.s index 388dd9c..a78c7b6 100644 --- a/lld/test/ELF/relocation-i686.s +++ b/lld/test/ELF/relocation-i686.s @@ -1,10 +1,10 @@ // REQUIRES: x86 -// RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %s -o %t -// RUN: llvm-mc -filetype=obj -triple=i686-unknown-linux %p/Inputs/shared.s -o %t2.o -// RUN: ld.lld -shared %t2.o -o %t2.so -// RUN: ld.lld --hash-style=sysv %t %t2.so -o %t2 -// RUN: llvm-readobj -S %t2 | FileCheck --check-prefix=ADDR %s -// RUN: llvm-objdump -d %t2 | FileCheck %s +// RUN: llvm-mc -filetype=obj -triple=i686 %s -o %t.o +// RUN: llvm-mc -filetype=obj -triple=i686 %p/Inputs/shared.s -o %t2.o +// RUN: ld.lld -shared %t2.o -soname=t2.so -o %t2.so +// RUN: ld.lld --hash-style=sysv %t.o %t2.so -o %t +// RUN: llvm-readobj -S %t | FileCheck --check-prefix=ADDR %s +// RUN: llvm-objdump -d --no-show-raw-insn %t | FileCheck %s .global _start _start: @@ -28,15 +28,15 @@ R_386_PC32_2: // CHECK: Disassembly of section .R_386_32: // CHECK-EMPTY: // CHECK-NEXT: R_386_32: -// CHECK-NEXT: 401000: {{.*}} movl $4198401, %edx +// CHECK-NEXT: movl $4198401, %edx // CHECK: Disassembly of section .R_386_PC32: // CHECK-EMPTY: // CHECK-NEXT: R_386_PC32: -// CHECK-NEXT: 401005: e8 04 00 00 00 calll 4 +// CHECK-NEXT: calll 4 // CHECK: R_386_PC32_2: -// CHECK-NEXT: 40100e: 90 nop +// CHECK-NEXT: nop // Create a .got movl bar@GOT, %eax @@ -70,7 +70,7 @@ R_386_GOTPC: // CHECK: Disassembly of section .R_386_GOTPC: // CHECK-EMPTY: // CHECK-NEXT: R_386_GOTPC: -// CHECK-NEXT: 401014: {{.*}} movl $8172, %eax +// CHECK-NEXT: movl $8172, %eax .section .dynamic_reloc, "ax",@progbits call bar @@ -78,7 +78,7 @@ R_386_GOTPC: // CHECK: Disassembly of section .dynamic_reloc: // CHECK-EMPTY: // CHECK-NEXT: .dynamic_reloc: -// CHECK-NEXT: 401019: e8 32 00 00 00 calll 50 +// CHECK-NEXT: 401019: calll 50 .section .R_386_GOT32,"ax",@progbits .global R_386_GOT32 @@ -93,7 +93,7 @@ R_386_GOT32: // CHECK: Disassembly of section .R_386_GOT32: // CHECK-EMPTY: // CHECK-NEXT: R_386_GOT32: -// CHECK-NEXT: 40101e: a1 78 f0 ff ff movl 4294963320, %eax -// CHECK-NEXT: 401023: a1 7c f0 ff ff movl 4294963324, %eax -// CHECK-NEXT: 401028: a1 80 f0 ff ff movl 4294963328, %eax -// CHECK-NEXT: 40102d: a1 80 f0 ff ff movl 4294963328, %eax +// CHECK-NEXT: 40101e: movl 4294963320, %eax +// CHECK-NEXT: 401023: movl 4294963324, %eax +// CHECK-NEXT: 401028: movl 4294963328, %eax +// CHECK-NEXT: 40102d: movl 4294963328, %eax -- 2.7.4