mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-21 18:29:46 +00:00
The internal shell was already threading around a 'cwd' parameter. We just have to make it mutable so that we can update it as the test script executes. If the shell ever grows support for environment variable substitution, we could also implement support for export. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231017 91177308-0d34-0410-b5e6-96231b3b80d8
172 lines
6.2 KiB
Plaintext
172 lines
6.2 KiB
Plaintext
RUN: yaml2obj %p/Inputs/COFF/i386.yaml | llvm-nm -a -S - \
|
|
RUN: | FileCheck %s -check-prefix COFF
|
|
RUN: yaml2obj %p/Inputs/COFF/x86-64.yaml | llvm-nm -a -S - \
|
|
RUN: | FileCheck %s -check-prefix COFF
|
|
RUN: llvm-nm %p/Inputs/trivial-object-test.elf-i386 \
|
|
RUN: | FileCheck %s -check-prefix ELF
|
|
RUN: llvm-nm -o %p/Inputs/trivial-object-test.elf-i386 \
|
|
RUN: | FileCheck %s -check-prefix ELF-o
|
|
RUN: llvm-nm -u %p/Inputs/trivial-object-test.elf-i386 \
|
|
RUN: | FileCheck %s -check-prefix ELF-u
|
|
RUN: llvm-nm %p/Inputs/trivial-object-test.elf-x86-64 \
|
|
RUN: | FileCheck %s -check-prefix ELF64
|
|
RUN: llvm-nm %p/Inputs/weak.elf-x86-64 \
|
|
RUN: | FileCheck %s -check-prefix WEAK-ELF64
|
|
RUN: llvm-nm %p/Inputs/absolute.elf-x86-64 \
|
|
RUN: | FileCheck %s -check-prefix ABSOLUTE-ELF64
|
|
RUN: llvm-nm %p/Inputs/trivial-object-test.macho-i386 \
|
|
RUN: | FileCheck %s -check-prefix macho
|
|
RUN: llvm-nm -U %p/Inputs/trivial-object-test.macho-i386 \
|
|
RUN: | FileCheck %s -check-prefix macho-U
|
|
RUN: llvm-nm %p/Inputs/trivial-object-test.macho-x86-64 \
|
|
RUN: | FileCheck %s -check-prefix macho64
|
|
RUN: llvm-nm %p/Inputs/macho-text-data-bss.macho-x86_64 \
|
|
RUN: | FileCheck %s -check-prefix macho-tdb
|
|
RUN: llvm-nm -j %p/Inputs/macho-text-data-bss.macho-x86_64 \
|
|
RUN: | FileCheck %s -check-prefix macho-j
|
|
RUN: llvm-nm -r %p/Inputs/macho-text-data-bss.macho-x86_64 \
|
|
RUN: | FileCheck %s -check-prefix macho-r
|
|
RUN: llvm-nm %p/Inputs/macho-text-data-bss.macho-x86_64 -s __DATA __data \
|
|
RUN: | FileCheck %s -check-prefix macho-s
|
|
RUN: llvm-nm -x %p/Inputs/macho-text-data-bss.macho-x86_64 \
|
|
RUN: | FileCheck %s -check-prefix macho-x
|
|
RUN: llvm-nm -o %p/Inputs/macho-text-data-bss.macho-x86_64 \
|
|
RUN: | FileCheck %s -check-prefix macho-o
|
|
RUN: llvm-nm -p -a %p/Inputs/macho-hello-g.macho-x86_64 \
|
|
RUN: | FileCheck %s -check-prefix macho-pa
|
|
RUN: llvm-nm -u %p/Inputs/macho-hello-g.macho-x86_64 \
|
|
RUN: | FileCheck %s -check-prefix macho-u
|
|
RUN: llvm-nm -S -a %p/Inputs/common.coff-i386 \
|
|
RUN: | FileCheck %s -check-prefix COFF-COMMON
|
|
RUN: llvm-nm %p/Inputs/relocatable-with-section-address.elf-x86-64 \
|
|
RUN: | FileCheck %s -check-prefix ELF-SEC-ADDR64
|
|
RUN: llvm-nm %p/Inputs/thumb-symbols.elf.arm \
|
|
RUN: | FileCheck %s -check-prefix ELF-THUMB
|
|
RUN: mkdir -p %t
|
|
RUN: cd %t
|
|
RUN: cp %p/Inputs/trivial-object-test.macho-i386 a.out
|
|
RUN: llvm-nm | FileCheck %s -check-prefix A-OUT
|
|
|
|
|
|
COFF: 00000000 {{.*}} d .data
|
|
COFF: 00000000 {{.*}} t .text
|
|
COFF: 00000000 0000000d d L{{_?}}.str
|
|
COFF: U {{_?}}SomeOtherFunction
|
|
COFF: 00000000 {{.*}} T {{_?}}main
|
|
COFF: U {{_?}}puts
|
|
|
|
COFF-COMMON: 00000000 00000000 b .bss
|
|
COFF-COMMON-NEXT: 00000000 00000000 d .data
|
|
COFF-COMMON-NEXT: 00000000 00000014 d .drectve
|
|
COFF-COMMON-NEXT: 00000000 00000000 n .file
|
|
COFF-COMMON-NEXT: 00000000 00000014 r .rdata$zzz
|
|
COFF-COMMON-NEXT: 00000000 00000000 t .text
|
|
COFF-COMMON-NEXT: 00000004 C _a
|
|
|
|
|
|
ELF-NOT: U
|
|
ELF: U SomeOtherFunction
|
|
ELF: 00000000 T main
|
|
ELF: U puts
|
|
|
|
ELF-o: {{.*}}/trivial-object-test.elf-i386: U SomeOtherFunction
|
|
ELF-o: {{.*}}/trivial-object-test.elf-i386: 00000000 T main
|
|
ELF-o: {{.*}}/trivial-object-test.elf-i386: U puts
|
|
|
|
ELF-u: U SomeOtherFunction
|
|
ELF-u: U puts
|
|
|
|
ELF64: U SomeOtherFunction
|
|
ELF64: 0000000000000000 T main
|
|
ELF64: U puts
|
|
|
|
WEAK-ELF64: w f1
|
|
WEAK-ELF64: 0000000000000000 W f2
|
|
WEAK-ELF64: v x1
|
|
WEAK-ELF64: 0000000000000000 V x2
|
|
|
|
ABSOLUTE-ELF64: 0000000000000123 a a1
|
|
ABSOLUTE-ELF64: 0000000000000123 A a2
|
|
|
|
macho: U _SomeOtherFunction
|
|
macho: 00000000 T _main
|
|
macho: U _puts
|
|
|
|
macho-U-NOT: U _SomeOtherFunction
|
|
macho-U: 00000000 T _main
|
|
macho-U-NOT: U _puts
|
|
|
|
macho64: 0000000000000028 s L_.str
|
|
macho64: U _SomeOtherFunction
|
|
macho64: 0000000000000000 T _main
|
|
macho64: U _puts
|
|
|
|
macho-tdb: 0000000000000030 s EH_frame0
|
|
macho-tdb: 0000000000000070 b _b
|
|
macho-tdb: 000000000000000c D _d
|
|
macho-tdb: 0000000000000000 T _t
|
|
macho-tdb: 0000000000000048 S _t.eh
|
|
|
|
macho-j: EH_frame0
|
|
macho-j: _b
|
|
macho-j: _d
|
|
macho-j: _t
|
|
macho-j: _t.eh
|
|
|
|
macho-r: 0000000000000048 S _t.eh
|
|
macho-r-NEXT: 0000000000000000 T _t
|
|
macho-r-NEXT: 000000000000000c D _d
|
|
macho-r-NEXT: 0000000000000070 b _b
|
|
macho-r-NEXT: 0000000000000030 s EH_frame0
|
|
|
|
macho-s: 000000000000000c D _d
|
|
macho-s-NOT: 0000000000000048 S _t.eh
|
|
macho-s-NOT: 0000000000000000 T _t
|
|
macho-s-NOT: 0000000000000070 b _b
|
|
macho-s-NOT: 0000000000000030 s EH_frame0
|
|
|
|
macho-x: 0000000000000030 0e 05 0000 00000010 EH_frame0
|
|
macho-x: 0000000000000070 0e 03 0000 0000000d _b
|
|
macho-x: 000000000000000c 0f 02 0000 00000004 _d
|
|
macho-x: 0000000000000000 0f 01 0000 00000001 _t
|
|
macho-x: 0000000000000048 0f 05 0000 00000007 _t.eh
|
|
|
|
|
|
macho-o: {{.*}}/macho-text-data-bss.macho-x86_64: 0000000000000030 s EH_frame0
|
|
macho-o: {{.*}}/macho-text-data-bss.macho-x86_64: 0000000000000070 b _b
|
|
macho-o: {{.*}}/macho-text-data-bss.macho-x86_64: 000000000000000c D _d
|
|
macho-o: {{.*}}/macho-text-data-bss.macho-x86_64: 0000000000000000 T _t
|
|
macho-o: {{.*}}/macho-text-data-bss.macho-x86_64: 0000000000000048 S _t.eh
|
|
|
|
macho-pa: 0000000000000000 - 00 0000 SO /Volumes/SandBox/
|
|
macho-pa: 0000000000000000 - 00 0000 SO hello.c
|
|
macho-pa: 0000000053c8408d - 03 0001 OSO /Volumes/SandBox/hello.o
|
|
macho-pa: 0000000100000f30 - 01 0000 BNSYM
|
|
macho-pa: 0000000100000f30 - 01 0000 FUN _main
|
|
macho-pa: 000000000000003b - 00 0000 FUN
|
|
macho-pa: 000000000000003b - 01 0000 ENSYM
|
|
macho-pa: 0000000000000000 - 01 0000 SO
|
|
macho-pa: 0000000100000000 T __mh_execute_header
|
|
macho-pa: 0000000100000f30 T _main
|
|
macho-pa: U _printf
|
|
macho-pa: U dyld_stub_binder
|
|
|
|
macho-u: _printf
|
|
macho-u: dyld_stub_binder
|
|
|
|
Test that nm uses addresses even with ELF .o files.
|
|
ELF-SEC-ADDR64: 0000000000000058 D a
|
|
ELF-SEC-ADDR64-NEXT: 000000000000005c D b
|
|
ELF-SEC-ADDR64-NEXT: 0000000000000040 T f
|
|
ELF-SEC-ADDR64-NEXT: 0000000000000050 T g
|
|
ELF-SEC-ADDR64-NEXT: 0000000000000060 D p
|
|
|
|
|
|
Test that we drop the thumb bit only from function addresses.
|
|
ELF-THUMB: 00000000 t f
|
|
ELF-THUMB: 00000003 t g
|
|
|
|
A-OUT: U _SomeOtherFunction
|
|
A-OUT: 00000000 T _main
|
|
A-OUT: U _puts
|