HomePhabricator

[llvm-nm] Fix handling of symbol types 't' 'd' 'r'
Concern RaisedrL359311

Description

[llvm-nm] Fix handling of symbol types 't' 'd' 'r'

In addition, fix and convert the two tests to yaml2obj based. This
allows us to delete two executables.

X86/weak.test: 'v' was not tested
X86/init-fini.test: symbol types of __bss_start _edata _end were wrong

GNU nm reports __init_array_start as 't', and __preinit_array_start as 'd'.
__init_array_start is 't' just because its section ".init_array" starts with ".init"

'd' makes more sense and allows us to drop the weird SHT_INIT_ARRAY rule.
So, change __init_array_start to 'd' instead.

Details

Auditors
rupprecht
Bigcheese
Committed
MaskRayApr 26 2019, 9:01 AM
Parents
rL359310: [BPF] do not generate predefined macro bpf
Branches
Unknown
Tags
Unknown

Event Timeline

This commit now requires audit.Apr 26 2019, 9:01 AM
rupprecht raised a concern with this commit.May 2 2019, 2:47 PM
rupprecht added a subscriber: rupprecht.

Reverted in r359830, this regresses GNU compatibility.

This commit now has outstanding concerns.May 2 2019, 2:47 PM