summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/CellSPU/SPUAsmPrinter.cpp
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2008-07-09 21:25:06 +0000
committerDale Johannesen <dalej@apple.com>2008-07-09 21:25:06 +0000
commitf76138c71fba976e3ff340ee6c92d3ba155b5994 (patch)
treeaad8cafd39ed02836346650970b84f4ac331e16f /llvm/lib/Target/CellSPU/SPUAsmPrinter.cpp
parentdbd04c0783916a9396cd6b3f6a1b1a21cb7f9660 (diff)
downloadbcm5719-llvm-f76138c71fba976e3ff340ee6c92d3ba155b5994.tar.gz
bcm5719-llvm-f76138c71fba976e3ff340ee6c92d3ba155b5994.zip
Emit debug info for data-only files on Cell SPU.
I cannot test this target, let me know if it breaks! llvm-svn: 53363
Diffstat (limited to 'llvm/lib/Target/CellSPU/SPUAsmPrinter.cpp')
-rw-r--r--llvm/lib/Target/CellSPU/SPUAsmPrinter.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/Target/CellSPU/SPUAsmPrinter.cpp b/llvm/lib/Target/CellSPU/SPUAsmPrinter.cpp
index 4e4324bbefe..817b746ec11 100644
--- a/llvm/lib/Target/CellSPU/SPUAsmPrinter.cpp
+++ b/llvm/lib/Target/CellSPU/SPUAsmPrinter.cpp
@@ -273,11 +273,13 @@ namespace {
struct VISIBILITY_HIDDEN LinuxAsmPrinter : public SPUAsmPrinter {
DwarfWriter DW;
+ MachineModuleInfo *MMI;
LinuxAsmPrinter(std::ostream &O, SPUTargetMachine &TM,
const TargetAsmInfo *T) :
SPUAsmPrinter(O, TM, T),
- DW(O, this, T)
+ DW(O, this, T),
+ MMI(0)
{ }
virtual const char *getPassName() const {
@@ -422,8 +424,6 @@ std::string LinuxAsmPrinter::getSectionForFunction(const Function &F) const {
bool
LinuxAsmPrinter::runOnMachineFunction(MachineFunction &MF)
{
- DW.SetModuleInfo(&getAnalysis<MachineModuleInfo>());
-
SetupMachineFunction(MF);
O << "\n\n";
@@ -488,6 +488,8 @@ bool LinuxAsmPrinter::doInitialization(Module &M) {
SwitchToTextSection(TAI->getTextSection());
// Emit initial debug information.
DW.BeginModule(&M);
+ MMI = getAnalysisToUpdate<MachineModuleInfo>();
+ DW.SetModuleInfo(MMI);
return Result;
}
OpenPOWER on IntegriCloud