summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix a -Asserts warning.Daniel Dunbar2009-10-131-2/+3
| | | | llvm-svn: 83950
* Find enclosing subprogram info.Devang Patel2009-10-121-1/+19
| | | | llvm-svn: 83922
* Extract scope information from the variable itself, instead of relying on ↵Devang Patel2009-10-091-21/+30
| | | | | | | | alloca or llvm.dbg.declare location. While recording beginning of a function, use scope info from the first location entry instead of just relying on first location entry itself. llvm-svn: 83684
* Check invalid debug info for enums. This may happen when underlyng enum is ↵Devang Patel2009-10-091-2/+4
| | | | | | optimized away. Eventually DwarfChecker will clean this up during llvm verification stage. llvm-svn: 83655
* Do not record line number to implicitly mark start of function if function ↵Devang Patel2009-10-081-11/+22
| | | | | | has arguments. Extra line number entries trip gdb in some cases. llvm-svn: 83563
* Add support to handle debug info attached to an instruction.Devang Patel2009-10-061-1/+6
| | | | | | This is not yet enabled. llvm-svn: 83400
* Fix cut-n-pasto.Devang Patel2009-10-061-1/+1
| | | | llvm-svn: 83367
* Remove dead code.Devang Patel2009-10-061-18/+0
| | | | llvm-svn: 83362
* Add utility routine to set begin and end labels for DbgScopes.Devang Patel2009-10-061-0/+24
| | | | | | This will be used by processDebugLoc(). llvm-svn: 83361
* Add utility routine to collect variable debug info. This is not yet used.Devang Patel2009-10-061-0/+14
| | | | llvm-svn: 83355
* Existence of a compile unit for input source file is a good indicator to ↵Devang Patel2009-10-061-10/+1
| | | | | | check debug info's presence in a module. llvm-svn: 83348
* If subprogram die is not available then construct new one.Devang Patel2009-10-051-0/+4
| | | | | | This can happen if debug info is processed lazily. llvm-svn: 83347
* Adjust context for the global variables that are not at file scope, e.g.Devang Patel2009-10-051-2/+18
| | | | | | | void foo() { static int bar = 42; } Here, foo's DIE is parent of bar's DIE. llvm-svn: 83344
* Set address while constructing DIE.Devang Patel2009-10-051-7/+8
| | | | llvm-svn: 83343
* Gracefully handle various scopes while recording source line info.Devang Patel2009-10-051-4/+21
| | | | llvm-svn: 83317
* Add support to extract lexical scope information from DebugLoc attached with ↵Devang Patel2009-10-011-0/+127
| | | | | | | | an machine instruction. This is not yet enabled. llvm-svn: 83210
* Record first and last instruction of a scope in DbgScope.Devang Patel2009-10-011-2/+8
| | | | llvm-svn: 83207
* Use MDNode * directly as an RecordSourceLine() argument.Devang Patel2009-09-301-4/+4
| | | | llvm-svn: 83182
* Add a way for a frontend to generate more complex dwarf locationMike Stump2009-09-301-4/+57
| | | | | | | | | | | | | | | | | | information. This allows arbitrary code involving DW_OP_plus_uconst and DW_OP_deref. The scheme allows for easy extention to include, any, or all of the DW_OP_ opcodes. I thought about just exposing all of them, but, wasn't sure if people wanted the dwarf opcodes exposed in the api. Is that a layering violation? With this scheme, the entire existing block scheme used by llvm-gcc can be switched over to the new scheme. I think that would be cleaner, as then the compiler specific bits are not present in llvm proper. Before the old code can be yanked however, similar code in clang would have to be removed. Next up, more testing. llvm-svn: 83120
* Remove std::string uses from DebugInfo interface.Devang Patel2009-09-291-63/+38
| | | | llvm-svn: 83083
* Delete space after function name, before (, reflow a comment andMike Stump2009-09-241-14/+6
| | | | | | delete a few blank lines. llvm-svn: 82729
* Fix spacing.Mike Stump2009-09-241-1/+1
| | | | llvm-svn: 82727
* This is overly constraining with respect to clang.Mike Stump2009-09-231-3/+0
| | | | llvm-svn: 82591
* Fix indentation.Daniel Dunbar2009-09-191-76/+76
| | | | llvm-svn: 82333
* Strip trailing whitespace.Daniel Dunbar2009-09-191-17/+17
| | | | llvm-svn: 82332
* eliminate the horrid AsmPrinter::getGlobalLinkName method, inliningChris Lattner2009-09-161-2/+2
| | | | | | it into all of its call sites and simplifying them. llvm-svn: 81962
* Don't generate Dwarf line table entries for source line 0.Caroline Tice2009-09-111-0/+6
| | | | llvm-svn: 81542
* remove DebugLoc from MCInst and eliminate "Comment printing" fromChris Lattner2009-09-091-0/+1
| | | | | | | | | | | | | the MCInst path of the asmprinter. Instead, pull comment printing out of the autogenerated asmprinter into each target that uses the autogenerated asmprinter. This causes code duplication into each target, but in a way that will be easier to clean up later when more asmprinter stuff is commonized into the base AsmPrinter class. This also fixes an xcore strangeness where it inserted two tabs before every instruction. llvm-svn: 81396
* Ignore malformed global variable debug info.Devang Patel2009-09-041-0/+4
| | | | llvm-svn: 81055
* Subprogram is a scope. Derive DISubprogram from DIScope.Devang Patel2009-08-311-0/+17
| | | | llvm-svn: 80637
* Rename DIBlock as DILexicalBlock.Devang Patel2009-08-311-1/+1
| | | | llvm-svn: 80633
* Add flag to mark structs for Apple Block "byref" variables; also add code toCaroline Tice2009-08-311-2/+241
| | | | | | | modify the type and location debug information for these variables to match the programmer's expectations. llvm-svn: 80625
* Simplify isDerivedType() and other predicate interface.Devang Patel2009-08-311-3/+3
| | | | llvm-svn: 80602
* Reapply 79977.Devang Patel2009-08-281-85/+89
| | | | | | Use MDNodes to encode debug info in llvm IR. llvm-svn: 80406
* Closure is a very generic name. Use AppleBlock instead.Devang Patel2009-08-271-1/+1
| | | | llvm-svn: 80307
* Revert 79977. It causes llvm-gcc bootstrap failures on some platforms.Devang Patel2009-08-261-89/+85
| | | | llvm-svn: 80073
* Add isClosure() predicate. This is used to add DW_AT_APPLE_block attribute.Devang Patel2009-08-261-4/+1
| | | | | | Patch by Caroline Tice. llvm-svn: 80061
* Update DebugInfo interface to use metadata, instead of special named ↵Devang Patel2009-08-251-85/+89
| | | | | | | | llvm.dbg.... global variables, to encode debugging information in llvm IR. This is mostly a mechanical change that tests metadata support very well. This change speeds up llvm-gcc by more then 6% at "-O0 -g" (measured by compiling InstructionCombining.cpp!) llvm-svn: 79977
* prune the #includes in raw_ostream.h by moving a Chris Lattner2009-08-241-0/+1
| | | | | | | member out of line. ftostr is not particularly speedy, so that method is presumably not perf sensitive. llvm-svn: 79885
* Prune #includes from llvm/Linker.h and llvm/System/Path.h,Chris Lattner2009-08-231-1/+1
| | | | | | | | | | | | | | | | | | forcing them down into various .cpp files. This change also: 1. Renames TimeValue::toString() and Path::toString() to ::str() for similarity with the STL. 2. Removes all stream insertion support for sys::Path, forcing clients to call .str(). 3. Removes a use of Config/alloca.h from bugpoint, using smallvector instead. 4. Weans llvm-db off <iostream> sys::Path really needs to be gutted, but I don't have the desire to do it at this point. llvm-svn: 79869
* remove some random indentation stuff, yay for efficiency.Chris Lattner2009-08-231-4/+4
| | | | llvm-svn: 79797
* rename TAI -> MAI, being careful not to make MAILJMP instructions :)Chris Lattner2009-08-221-12/+12
| | | | llvm-svn: 79777
* Rename TargetAsmInfo (and its subclasses) to MCAsmInfo.Chris Lattner2009-08-221-3/+3
| | | | llvm-svn: 79763
* Record variable debug info at ISel time directly.Devang Patel2009-08-221-42/+17
| | | | llvm-svn: 79742
* Add missing includes.David Greene2009-08-191-0/+1
| | | | llvm-svn: 79473
* eliminate AsmPrinter::SwitchToSection and just have clientsChris Lattner2009-08-191-35/+50
| | | | | | talk to the MCStreamer directly instead. llvm-svn: 79405
* Do not completely skip subrange info for a zero sized array.Devang Patel2009-08-141-6/+5
| | | | llvm-svn: 79044
* sink the 'name' and 'isdirective' state out of MCSection into its derived ↵Chris Lattner2009-08-081-4/+3
| | | | | | | | classes. This totally optimizes PIC16 sections by not having an 'isdirective' bit anymore!! ;-) llvm-svn: 78517
* eliminate CurrentSection, rename CurrentSection_ -> CurrentSection, make it ↵Chris Lattner2009-08-031-1/+1
| | | | | | | | private, eliminate IsInTextSection. llvm-svn: 78017
* move dwarf debug info section selection stuff from TAI toChris Lattner2009-08-021-24/+26
| | | | | | TLOF, unifying all the dwarf targets at the same time. llvm-svn: 77889
OpenPOWER on IntegriCloud