1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 12:43:36 +01:00
llvm-mirror/test/tools/llvm-nm/nobits.test
Fangrui Song 464931df65 [llvm-nm] Fix handling of symbol types 't' 'd' 'r'
This restores part of r359311 that was reverted by r359830.

Rewrite the symbol types to fix several issues.

Notable difference is that the type of __init_array_start changes from
't' to 'd'.

GNU nm used to mark ELF symbols relative to .init_array as 't'
https://sourceware.org/bugzilla/show_bug.cgi?id=24505 (before 2.33)
because ".init" is the prefix. The bug was copied by r287803.

Reviewed By: jhenderson

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

llvm-svn: 360339
2019-05-09 12:43:37 +00:00

36 lines
719 B
Plaintext

# RUN: yaml2obj %s -o %t
# RUN: llvm-nm --no-sort %t | FileCheck %s
# CHECK: b mybss_local
# CHECK: b mytbss_local
# CHECK: B mybss_global
# CHECK: B mytbss_global
!ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_REL
Machine: EM_X86_64
Sections:
- Name: mybss
Type: SHT_NOBITS
Flags: [ SHF_ALLOC, SHF_WRITE ]
- Name: mytbss
Type: SHT_NOBITS
Flags: [ SHF_ALLOC, SHF_WRITE, SHF_TLS ]
Symbols:
- Name: mybss_local
Binding: STB_LOCAL
Section: mybss
- Name: mytbss_local
Binding: STB_LOCAL
Section: mytbss
- Name: mybss_global
Binding: STB_GLOBAL
Section: mybss
- Name: mytbss_global
Binding: STB_GLOBAL
Section: mytbss