summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2015-06-26 11:31:13 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2015-06-26 11:31:13 +0000
commitc5fb508c9d01770e7198ab3a574ee6c771afe3f8 (patch)
treea75a44589d934a6f34eae2d6cf49e8ba60f0b9de /llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
parentc7512fdc1e35109122853aa2d0d51e267bb71ee6 (diff)
downloadbcm5719-llvm-c5fb508c9d01770e7198ab3a574ee6c771afe3f8.tar.gz
bcm5719-llvm-c5fb508c9d01770e7198ab3a574ee6c771afe3f8.zip
Optimize the creation of mapping symbols.
No need to create two symbols just to assign one to the other. llvm-svn: 240773
Diffstat (limited to 'llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp')
-rw-r--r--llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp9
1 files changed, 1 insertions, 8 deletions
diff --git a/llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp b/llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
index 7c28175fadc..61af583fd60 100644
--- a/llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
+++ b/llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
@@ -563,20 +563,13 @@ private:
}
void EmitMappingSymbol(StringRef Name) {
- MCSymbol *Start = getContext().createTempSymbol();
- EmitLabel(Start);
-
auto *Symbol = cast<MCSymbolELF>(getContext().getOrCreateSymbol(
Name + "." + Twine(MappingSymbolCounter++)));
+ EmitLabel(Symbol);
- getAssembler().registerSymbol(*Symbol);
Symbol->setType(ELF::STT_NOTYPE);
Symbol->setBinding(ELF::STB_LOCAL);
Symbol->setExternal(false);
- AssignSection(Symbol, getCurrentSection().first);
-
- const MCExpr *Value = MCSymbolRefExpr::create(Start, getContext());
- Symbol->setVariableValue(Value);
}
void EmitThumbFunc(MCSymbol *Func) override {
OpenPOWER on IntegriCloud