mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-26 12:43:36 +01:00
464931df65
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
36 lines
719 B
Plaintext
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
|