diff options
author | Vitaly Buka <vitalybuka@google.com> | 2018-04-10 00:53:16 +0000 |
---|---|---|
committer | Vitaly Buka <vitalybuka@google.com> | 2018-04-10 00:53:16 +0000 |
commit | 6c05a3bb718d562859dcb164fe1a85756da12e8f (patch) | |
tree | 8ea6bc511e7a7ddb7f439ab3b1bf7c1bf070a2d2 /llvm/lib | |
parent | 0274632ee6eede14d2eb7efeb488c1775611a9dd (diff) | |
download | bcm5719-llvm-6c05a3bb718d562859dcb164fe1a85756da12e8f.tar.gz bcm5719-llvm-6c05a3bb718d562859dcb164fe1a85756da12e8f.zip |
Object: Don't mark alias unconditionally defined
Summary:
Can't remove EmitAssignment override as llvm/test/Object/X86/nm-bitcodeweak.test
expects this behavior.
Reviewers: pcc, espindola
Subscribers: mehdi_amini, hiraditya, llvm-commits
Differential Revision: https://reviews.llvm.org/D44596
llvm-svn: 329651
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Object/RecordStreamer.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/Object/RecordStreamer.cpp b/llvm/lib/Object/RecordStreamer.cpp index 74130901d32..21577bb5696 100644 --- a/llvm/lib/Object/RecordStreamer.cpp +++ b/llvm/lib/Object/RecordStreamer.cpp @@ -216,7 +216,10 @@ void RecordStreamer::flushSymverDirectives() { // TODO: Handle "@@@". Depending on SymbolAttribute value it needs to be // converted into @ or @@. const MCExpr *Value = MCSymbolRefExpr::create(Aliasee, getContext()); - EmitAssignment(Alias, Value); + if (IsDefined) + markDefined(*Alias); + // Don't use EmitAssignment override as it always marks alias as defined. + MCStreamer::EmitAssignment(Alias, Value); if (Attr != MCSA_Invalid) EmitSymbolAttribute(Alias, Attr); } |