diff options
| author | Reid Spencer <rspencer@reidspencer.com> | 2006-10-30 22:32:30 +0000 |
|---|---|---|
| committer | Reid Spencer <rspencer@reidspencer.com> | 2006-10-30 22:32:30 +0000 |
| commit | b51b5c0b1f13630a5a9b00d14bfc8fc4d283cfd0 (patch) | |
| tree | 10a86b173292536a31542286042db8675145b969 /llvm/lib/Target/X86/X86AsmPrinter.cpp | |
| parent | 7443600ef885eca18d5f77119748e6897cbbd547 (diff) | |
| download | bcm5719-llvm-b51b5c0b1f13630a5a9b00d14bfc8fc4d283cfd0.tar.gz bcm5719-llvm-b51b5c0b1f13630a5a9b00d14bfc8fc4d283cfd0.zip | |
Add debug support for X86/ELF targets (Linux). This allows llvm-gcc4
generated object modules to be debugged with gdb. Hopefully this helps
pre-release debugging.
llvm-svn: 31299
Diffstat (limited to 'llvm/lib/Target/X86/X86AsmPrinter.cpp')
| -rw-r--r-- | llvm/lib/Target/X86/X86AsmPrinter.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/X86AsmPrinter.cpp b/llvm/lib/Target/X86/X86AsmPrinter.cpp index 38dbe57aed0..60316517a82 100644 --- a/llvm/lib/Target/X86/X86AsmPrinter.cpp +++ b/llvm/lib/Target/X86/X86AsmPrinter.cpp @@ -116,6 +116,9 @@ bool X86SharedAsmPrinter::doInitialization(Module &M) { // Emit initial debug information. DW.BeginModule(&M); + } else if (Subtarget->isTargetELF()) { + // Emit initial debug information. + DW.BeginModule(&M); } return AsmPrinter::doInitialization(M); @@ -278,7 +281,7 @@ bool X86SharedAsmPrinter::doFinalization(Module &M) { O << "\t.long\t0\n"; } - // Emit initial debug information. + // Emit final debug information. DW.EndModule(); // Funny Darwin hack: This flag tells the linker that no global symbols @@ -287,6 +290,9 @@ bool X86SharedAsmPrinter::doFinalization(Module &M) { // linker can safely perform dead code stripping. Since LLVM never // generates code that does this, it is always safe to set. O << "\t.subsections_via_symbols\n"; + } else if (Subtarget->isTargetELF()) { + // Emit final debug information. + DW.EndModule(); } AsmPrinter::doFinalization(M); |

