diff options
author | Daniel Dunbar <daniel@zuster.org> | 2011-03-16 22:16:39 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2011-03-16 22:16:39 +0000 |
commit | fd95b016fbc1aee43be09566877d8223a2d3789d (patch) | |
tree | d6b0b0e6cbca415a30a5ea2dc103ae2f9818094d /llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp | |
parent | c871eff3f51b43bc88583cdbddd25c0f4ddd3e9e (diff) | |
download | bcm5719-llvm-fd95b016fbc1aee43be09566877d8223a2d3789d.tar.gz bcm5719-llvm-fd95b016fbc1aee43be09566877d8223a2d3789d.zip |
Revert r127757, "Patch to a fix dwarf relocation problem on ARM. One-line fix
plus the test where it used to break.", which broke Clang self-host of a
Debug+Asserts compiler, on OS X.
llvm-svn: 127763
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp')
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index cb542aef707..15330c28d2c 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -3272,9 +3272,7 @@ void DwarfDebug::emitDIE(DIE *Die) { case dwarf::DW_AT_location: { if (UseDotDebugLocEntry.count(Die) != 0) { DIELabel *L = cast<DIELabel>(Values[i]); - // Emitting reference to label directly, so the assembler can - // emit the relocations and the offset automatically. - Asm->EmitReference(L->getValue(), dwarf::DW_EH_PE_udata4); + Asm->EmitLabelDifference(L->getValue(), DwarfDebugLocSectionSym, 4); } else Values[i]->EmitValue(Asm, Form); break; @@ -3625,7 +3623,6 @@ void DwarfDebug::emitDebugLoc() { if (DotDebugLocEntries.empty()) return; - // Group debug entries. for (SmallVector<DotDebugLocEntry, 4>::iterator I = DotDebugLocEntries.begin(), E = DotDebugLocEntries.end(); I != E; ++I) { @@ -3634,7 +3631,7 @@ void DwarfDebug::emitDebugLoc() { Entry.Merge(I+1); } - // Start the dwarf location section. + // Start the dwarf loc section. Asm->OutStreamer.SwitchSection( Asm->getObjFileLowering().getDwarfLocSection()); unsigned char Size = Asm->getTargetData().getPointerSize(); |