1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 10:42:39 +01:00
llvm-mirror/test/Object/nm-shared-object.test
Petr Hosek 95955db0b5 [llvm-nm] Write "no symbol" output to stderr
This matches the output of binutils' nm and ensures that any scripts
or tools that use nm and expect empty output in case there no symbols
don't break.

Differential Revision: https://reviews.llvm.org/D52943

llvm-svn: 343887
2018-10-05 21:10:03 +00:00

36 lines
1.1 KiB
Plaintext

RUN: llvm-nm -D %p/Inputs/shared-object-test.elf-i386 \
RUN: | FileCheck %s -check-prefix ELF-32
ELF-32-NOT: U
ELF-32: 000012c8 A __bss_start
ELF-32: 000012c8 A _edata
ELF-32: 000012cc A _end
ELF-32: 000012c8 B common_sym
ELF-32: 000012c4 D defined_sym
ELF-32: 000001f0 T global_func
ELF-32: 00000000 D tls_sym
RUN: llvm-nm -D %p/Inputs/shared-object-test.elf-x86-64 \
RUN: | FileCheck %s -check-prefix ELF-64
ELF-64-NOT: U
ELF-64: 0000000000200454 A __bss_start
ELF-64: 0000000000200454 A _edata
ELF-64: 0000000000200458 A _end
ELF-64: 0000000000200454 B common_sym
ELF-64: 0000000000200450 D defined_sym
ELF-64: 00000000000002f0 T global_func
ELF-64: 0000000000000000 D tls_sym
RUN: not llvm-nm -D %p/Inputs/weak-global-symbol.macho-i386 2>&1 \
RUN: | FileCheck %s -check-prefix ERROR
RUN: not llvm-nm -D %p/Inputs/trivial-object-test.coff-i386 2>&1 \
RUN: | FileCheck %s -check-prefix ERROR
ERROR: File format has no dynamic symbol table.
RUN: llvm-nm -D %p/Inputs/trivial-object-test.elf-i386 2>&1 \
RUN: | FileCheck %s -check-prefix=NO-SYMBOLS
NO-SYMBOLS: no symbols