summaryrefslogtreecommitdiff
path: root/lib/MC/MCStreamer.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2011-05-19 22:05:56 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2011-05-19 22:05:56 +0000
commit78ff647e4471c88c3a3826e7ac24adcd8a9a2073 (patch)
treebf4b12276d3c6244e265c02a0272bde369146c4e /lib/MC/MCStreamer.cpp
parenta6f2678f08299f053feb58337fc4322131d99bf4 (diff)
downloadllvm-78ff647e4471c88c3a3826e7ac24adcd8a9a2073.tar.gz
llvm-78ff647e4471c88c3a3826e7ac24adcd8a9a2073.tar.bz2
llvm-78ff647e4471c88c3a3826e7ac24adcd8a9a2073.tar.xz
Looks like OS X assemblers (including MC) don't like
foo: bar = foo .quad bar Avoid producing it. Fixes PR9951. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131687 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/MC/MCStreamer.cpp')
-rw-r--r--lib/MC/MCStreamer.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/MC/MCStreamer.cpp b/lib/MC/MCStreamer.cpp
index 8aaad5ee0d..4e4cb8c4ce 100644
--- a/lib/MC/MCStreamer.cpp
+++ b/lib/MC/MCStreamer.cpp
@@ -43,7 +43,8 @@ const MCExpr *MCStreamer::BuildSymbolDiff(MCContext &Context,
}
const MCExpr *MCStreamer::ForceExpAbs(const MCExpr* Expr) {
- if (Context.getAsmInfo().hasAggressiveSymbolFolding())
+ if (Context.getAsmInfo().hasAggressiveSymbolFolding() ||
+ isa<MCSymbolRefExpr>(Expr))
return Expr;
MCSymbol *ABS = Context.CreateTempSymbol();