diff options
author | Chris Lattner <sabre@nondot.org> | 2010-03-11 21:55:20 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-03-11 21:55:20 +0000 |
commit | 03627cb12c066a4aed81536a7b9f4af1a59e8fa1 (patch) | |
tree | d8f2ea9a908aa4835ed85c4417c5b4505d36ffba /llvm/lib/CodeGen | |
parent | 576aec4363ad12140f44f2e68abe90855270c4df (diff) | |
download | bcm5719-llvm-03627cb12c066a4aed81536a7b9f4af1a59e8fa1.tar.gz bcm5719-llvm-03627cb12c066a4aed81536a7b9f4af1a59e8fa1.zip |
fix a fixme in TargetLoweringObjectFile::getExprForDwarfReference
where we used ot create an MCSymbol for ".". Now emit an assembler
temporary label and reference it instead of "." textually.
rdar://7739457
llvm-svn: 98292
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/DwarfPrinter.cpp | 3 | ||||
-rw-r--r-- | llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp | 6 |
2 files changed, 5 insertions, 4 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfPrinter.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfPrinter.cpp index 0a314dd43e4..ed4772783d3 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfPrinter.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfPrinter.cpp @@ -189,7 +189,8 @@ void DwarfPrinter::EmitULEB128(unsigned Value, const char *Desc, void DwarfPrinter::EmitReference(const MCSymbol *Sym, unsigned Encoding) const { const TargetLoweringObjectFile &TLOF = Asm->getObjFileLowering(); - const MCExpr *Exp = TLOF.getExprForDwarfReference(Sym, Asm->MMI, Encoding, + const MCExpr *Exp = TLOF.getExprForDwarfReference(Sym, Asm->Mang, + Asm->MMI, Encoding, Asm->OutStreamer); Asm->OutStreamer.EmitValue(Exp, SizeOfEncodedValue(Encoding), /*addrspace*/0); } diff --git a/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp b/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp index c03ed4503e9..788bbf11908 100644 --- a/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp +++ b/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp @@ -421,7 +421,7 @@ getExprForDwarfGlobalReference(const GlobalValue *GV, Mangler *Mang, } return TargetLoweringObjectFile:: - getExprForDwarfReference(Sym, MMI, + getExprForDwarfReference(Sym, Mang, MMI, Encoding & ~dwarf::DW_EH_PE_indirect, Streamer); } @@ -784,8 +784,8 @@ getExprForDwarfGlobalReference(const GlobalValue *GV, Mangler *Mang, } return TargetLoweringObjectFile:: - getExprForDwarfReference(Sym, MMI, Encoding & ~dwarf::DW_EH_PE_indirect, - Streamer); + getExprForDwarfReference(Sym, Mang, MMI, + Encoding & ~dwarf::DW_EH_PE_indirect, Streamer); } return TargetLoweringObjectFile:: |