aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/PowerPC/PPCAsmPrinter.cpp
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2008-07-09 21:24:07 +0000
committerDale Johannesen <dalej@apple.com>2008-07-09 21:24:07 +0000
commit757809a1709dc939ae875f08419de158df04913d (patch)
treed62ac8b37755a996e891b6c6d17644f6422660db /lib/Target/PowerPC/PPCAsmPrinter.cpp
parent492f276cbc7be564c6af7b302618ee5436e4619c (diff)
downloadexternal_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/Target/PowerPC/PPCAsmPrinter.cpp')
-rw-r--r--lib/Target/PowerPC/PPCAsmPrinter.cpp13
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;
}