Please review the enclosed patch for Sparc debug info. I have been able to view source files, set breakpoints, and single step source lines after applying this patch. I can't view variables because I haven't implemented Dwarf type data, yet. -Rich -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: sparcdebug.patch URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090906/e2d04387/attachment.ksh>
On Sep 6, 2009, at 1:34 PM, Richard Pennington wrote:> Please review the enclosed patch for Sparc debug info. > I have been able to view source files, set breakpoints, and single > step source lines after applying this patch. I can't view variables > because I haven't implemented Dwarf type data, yet.Cool! I'm glad to see progress on the sparc backend: +++ lib/Target/Sparc/AsmPrinter/SparcAsmPrinter.cpp (working copy) @@ -44,6 +44,8 @@ namespace { class VISIBILITY_HIDDEN SparcAsmPrinter : public AsmPrinter { + DwarfWriter *DW; + This shouldn't be needed, the AsmPrinter base class now has this. This allows you to remove SparcAsmPrinter::doInitialization. Otherwise, looks great, please apply. -Chris
Richard Pennington
2009-Sep-08 11:45 UTC
[LLVMdev] Status update (was Re: Sparc debug info patch)
Chris Lattner wrote:> Cool! I'm glad to see progress on the sparc backend: > > +++ lib/Target/Sparc/AsmPrinter/SparcAsmPrinter.cpp (working copy) > @@ -44,6 +44,8 @@ > > namespace { > class VISIBILITY_HIDDEN SparcAsmPrinter : public AsmPrinter { > + DwarfWriter *DW; > + > > This shouldn't be needed, the AsmPrinter base class now has this. This > allows you to remove SparcAsmPrinter::doInitialization. > > Otherwise, looks great, please apply.Thanks Chris, I'm in the process of syncing up with TOT, after which I'll test and apply the patch. Just to keep you up to date about what I'm doing... I'm trying to set up a code generator test bed, initially for all the targets supported by both LLVM and qemu. I've put together a standard library consisting of newlib, soft-flt, and compiler-rt. Currently I'm targeting Linux, but I'm trying to isolate the OS specific bits so that eventually I'll be targeting other OSes and bare metal. I can use qemu in Linux user mode to execute and debug programs for the x86, ARM, and Sparc so far. I have some code generation issues with powerpc and mips (e.g. http://llvm.org/bugs/show_bug.cgi?id=4851) but I think things are progressing fairly well. I do have a question however: Which code generators currently fully support debug information? I know the x86 generator does, but ARM and Sparc seem to ignore local variable information. since I'm coming in with little familiarity with the LLVM debug info stuff, where should I look to come up to speed? -Rich
Reasonably Related Threads
- [LLVMdev] Sparc debug info patch
- [LLVMdev] Error when running llc to compile .bc to .s
- [LLVMdev] Status update (was Re: Sparc debug info patch)
- [LLVMdev] How to check for "SPARC code generation" in MachineBasicBlock.cpp?
- [LLVMdev] Patch for llvm::DepthFirstIterator.h and llvm::PostOrderIterator.h