diff options
author | Fangrui Song <maskray@google.com> | 2019-09-29 15:26:12 +0000 |
---|---|---|
committer | Fangrui Song <maskray@google.com> | 2019-09-29 15:26:12 +0000 |
commit | c5133606627036df0275849ac3d140a86908e310 (patch) | |
tree | 581aa9d8e22f2409945dc005d7405cdbbc7a6713 /lldb/packages/Python/lldbsuite/test/python_api/module_section | |
parent | d30093bb8a3f12d35d176a85cf93e354a38ff116 (diff) | |
download | bcm5719-llvm-c5133606627036df0275849ac3d140a86908e310.tar.gz bcm5719-llvm-c5133606627036df0275849ac3d140a86908e310.zip |
[MC] Emit unused undefined symbol even if its binding is not set
For the following two cases, we currently suppress the symbols. This
patch emits them (compatible with GNU as).
* `test2_a = undef`: if `undef` is otherwise unused.
* `.hidden hidden`: if `hidden` is unused. This is the main point of the
patch, because omitting the symbol would cause a linker semantic
difference.
It causes a behavior change that is not compatible with GNU as:
.weakref foo1, bar1
When neither foo1 nor bar1 is used, we now emit bar1, which is arguably
more consistent.
Another change is that we will emit .TOC. for .TOC.@tocbase . For this
directive, suppressing .TOC. can be seen as a size optimization, but we
choose to drop it for simplicity and consistency.
llvm-svn: 373168
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/module_section')
0 files changed, 0 insertions, 0 deletions