summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2015-10-03 00:18:14 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2015-10-03 00:18:14 +0000
commit2f834372f49f5665ab8032c575c4f4d76d97da84 (patch)
tree234490db2c6f3baf2120c436c84fede7316c0e61 /llvm
parent21ea9bdc46a2dc09482f7373246fa8e5fd3a38b5 (diff)
downloadbcm5719-llvm-2f834372f49f5665ab8032c575c4f4d76d97da84.tar.gz
bcm5719-llvm-2f834372f49f5665ab8032c575c4f4d76d97da84.zip
Disallow assigning symbol a null section.
They are constructed without one and they can't go back, so this was effectively dead code. llvm-svn: 249220
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/MC/MCAsmStreamer.cpp6
-rw-r--r--llvm/lib/MC/MCMachOStreamer.cpp2
-rw-r--r--llvm/lib/MC/MCStreamer.cpp6
-rw-r--r--llvm/lib/MC/WinCOFFStreamer.cpp2
4 files changed, 2 insertions, 14 deletions
diff --git a/llvm/lib/MC/MCAsmStreamer.cpp b/llvm/lib/MC/MCAsmStreamer.cpp
index 0ed817c9809..7a30075bac9 100644
--- a/llvm/lib/MC/MCAsmStreamer.cpp
+++ b/llvm/lib/MC/MCAsmStreamer.cpp
@@ -533,9 +533,6 @@ void MCAsmStreamer::emitELFSize(MCSymbolELF *Symbol, const MCExpr *Value) {
void MCAsmStreamer::EmitCommonSymbol(MCSymbol *Symbol, uint64_t Size,
unsigned ByteAlignment) {
- // Common symbols do not belong to any actual section.
- AssignSection(Symbol, nullptr);
-
OS << "\t.comm\t";
Symbol->print(OS, MAI);
OS << ',' << Size;
@@ -555,9 +552,6 @@ void MCAsmStreamer::EmitCommonSymbol(MCSymbol *Symbol, uint64_t Size,
/// @param Size - The size of the common symbol.
void MCAsmStreamer::EmitLocalCommonSymbol(MCSymbol *Symbol, uint64_t Size,
unsigned ByteAlign) {
- // Common symbols do not belong to any actual section.
- AssignSection(Symbol, nullptr);
-
OS << "\t.lcomm\t";
Symbol->print(OS, MAI);
OS << ',' << Size;
diff --git a/llvm/lib/MC/MCMachOStreamer.cpp b/llvm/lib/MC/MCMachOStreamer.cpp
index 33045d0fcf7..0f65d51bb73 100644
--- a/llvm/lib/MC/MCMachOStreamer.cpp
+++ b/llvm/lib/MC/MCMachOStreamer.cpp
@@ -384,8 +384,6 @@ void MCMachOStreamer::EmitCommonSymbol(MCSymbol *Symbol, uint64_t Size,
// FIXME: Darwin 'as' does appear to allow redef of a .comm by itself.
assert(Symbol->isUndefined() && "Cannot define a symbol twice!");
- AssignSection(Symbol, nullptr);
-
getAssembler().registerSymbol(*Symbol);
Symbol->setExternal(true);
Symbol->setCommon(Size, ByteAlignment);
diff --git a/llvm/lib/MC/MCStreamer.cpp b/llvm/lib/MC/MCStreamer.cpp
index 57782eaaefc..d6b44a0297d 100644
--- a/llvm/lib/MC/MCStreamer.cpp
+++ b/llvm/lib/MC/MCStreamer.cpp
@@ -189,10 +189,8 @@ void MCStreamer::InitSections(bool NoExecStack) {
}
void MCStreamer::AssignSection(MCSymbol *Symbol, MCSection *Section) {
- if (Section)
- Symbol->setSection(*Section);
- else
- Symbol->setUndefined();
+ assert(Section);
+ Symbol->setSection(*Section);
// As we emit symbols into a section, track the order so that they can
// be sorted upon later. Zero is reserved to mean 'unemitted'.
diff --git a/llvm/lib/MC/WinCOFFStreamer.cpp b/llvm/lib/MC/WinCOFFStreamer.cpp
index a6e08443910..40c242ce866 100644
--- a/llvm/lib/MC/WinCOFFStreamer.cpp
+++ b/llvm/lib/MC/WinCOFFStreamer.cpp
@@ -214,8 +214,6 @@ void MCWinCOFFStreamer::EmitCommonSymbol(MCSymbol *Symbol, uint64_t Size,
Size = std::max(Size, static_cast<uint64_t>(ByteAlignment));
}
- AssignSection(Symbol, nullptr);
-
getAssembler().registerSymbol(*Symbol);
Symbol->setExternal(true);
Symbol->setCommon(Size, ByteAlignment);
OpenPOWER on IntegriCloud