diff options
author | Dale Johannesen <dalej@apple.com> | 2008-07-09 21:24:07 +0000 |
---|---|---|
committer | Dale Johannesen <dalej@apple.com> | 2008-07-09 21:24:07 +0000 |
commit | 757809a1709dc939ae875f08419de158df04913d (patch) | |
tree | d62ac8b37755a996e891b6c6d17644f6422660db /lib | |
parent | 492f276cbc7be564c6af7b302618ee5436e4619c (diff) | |
download | external_llvm-757809a1709dc939ae875f08419de158df04913d.zip external_llvm-757809a1709dc939ae875f08419de158df04913d.tar.gz external_llvm-757809a1709dc939ae875f08419de158df04913d.tar.bz2 |
Emit debug into for data-only files for Linux PPC.
I cannot test this target, let me know if it breaks!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53362 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Target/PowerPC/PPCAsmPrinter.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/lib/Target/PowerPC/PPCAsmPrinter.cpp b/lib/Target/PowerPC/PPCAsmPrinter.cpp index 98b4b4a..b7b2a95 100644 --- a/lib/Target/PowerPC/PPCAsmPrinter.cpp +++ b/lib/Target/PowerPC/PPCAsmPrinter.cpp @@ -293,10 +293,11 @@ namespace { struct VISIBILITY_HIDDEN LinuxAsmPrinter : public PPCAsmPrinter { DwarfWriter DW; + MachineModuleInfo *MMI; LinuxAsmPrinter(std::ostream &O, PPCTargetMachine &TM, const TargetAsmInfo *T) - : PPCAsmPrinter(O, TM, T), DW(O, this, T) { + : PPCAsmPrinter(O, TM, T), DW(O, this, T), MMI(0) { } virtual const char *getPassName() const { @@ -631,13 +632,19 @@ bool LinuxAsmPrinter::runOnMachineFunction(MachineFunction &MF) { bool LinuxAsmPrinter::doInitialization(Module &M) { bool Result = AsmPrinter::doInitialization(M); + // Emit initial debug information. + DW.BeginModule(&M); + + // AsmPrinter::doInitialization should have done this analysis. + MMI = getAnalysisToUpdate<MachineModuleInfo>(); + assert(MMI); + DW.SetModuleInfo(MMI); + // GNU as handles section names wrapped in quotes Mang->setUseQuotes(true); SwitchToTextSection(TAI->getTextSection()); - // Emit initial debug information. - DW.BeginModule(&M); return Result; } |