convert the non-"ispcrel" case of EmitReference to MC,

significant debug info testcases are now all going through
MCStreamer, though they print a lot of extraneous newlines to "O".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98101 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2010-03-09 23:19:15 +00:00
parent 2e5dd9b741
commit fcdae492ea

View File

@ -213,6 +213,14 @@ void DwarfPrinter::EmitULEB128(unsigned Value, const char *Desc,
///
void DwarfPrinter::EmitReference(const MCSymbol *Sym, bool IsPCRelative,
bool Force32Bit) const {
unsigned Size = Force32Bit ? 4 : TD->getPointerSize();
if (!IsPCRelative) {
Asm->OutStreamer.EmitSymbolValue(Sym, Size, 0/*AddrSpace*/);
return;
}
// FIXME: Need an MCExpr for ".".
PrintRelDirective(Force32Bit);
O << *Sym;
if (IsPCRelative) O << "-" << MAI->getPCSymbol();