diff options
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); } |