summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Do not bother to emit debug info for nameless global variable.Devang Patel2009-11-061-2/+2
| | | | llvm-svn: 86259
* Do not try to emit debug info entry for dead global variable.Devang Patel2009-11-061-1/+6
| | | | llvm-svn: 86212
* While calculating original type size for a derived type, handle type ↵Devang Patel2009-11-041-3/+1
| | | | | | | | variants encoded as DIDerivedType appropriately. This improves bitfield support. llvm-svn: 86073
* Fix DW_AT_data_member_location for bit-fields. It points to the location of ↵Devang Patel2009-11-041-5/+12
| | | | | | annonymous field that covers respective field. llvm-svn: 86054
* Array element size does not match array size but array is not a bitfield. Devang Patel2009-11-041-1/+3
| | | | llvm-svn: 86043
* Ignore unnamed variables.Devang Patel2009-11-031-1/+3
| | | | llvm-svn: 85909
* Fix a funky "declared with greater visibility than the type of its field"Jeffrey Yasskin2009-11-031-2/+2
| | | | | | warning from gcc by removing VISIBILITY_HIDDEN attributes. llvm-svn: 85873
* Do not held on to DenseMap slot accross map insertion. The insertion may ↵Devang Patel2009-10-271-17/+21
| | | | | | | | cause the map to grow rending the slot invalid. Use this opportunity to use ValueMap instead of DenseMap. llvm-svn: 85298
* Do not emit name entry for a pointer type.Devang Patel2009-10-161-1/+1
| | | | llvm-svn: 84276
* If there is not any llvm instruction associated with each lexical scope ↵Devang Patel2009-10-161-2/+10
| | | | | | encoded in debug info then create such scope on demand for variable info. llvm-svn: 84262
* Add support to record DbgScope as inlined scope.Devang Patel2009-10-141-24/+43
| | | | llvm-svn: 84134
* s/DebugLoc.CompileUnit/DebugLoc.Scope/gDevang Patel2009-10-131-7/+7
| | | | | | s/DebugLoc.InlinedLoc/DebugLoc.InlinedAtLoc/g llvm-svn: 84054
* 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
OpenPOWER on IntegriCloud