summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/DebugInfo.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Convert debug messages to use dbgs(). Generally this meansDavid Greene2009-12-231-32/+33
| | | | | | s/errs/dbgs/g except for certain special cases. llvm-svn: 92032
* Add support to emit debug info for C++ namespaces.Devang Patel2009-12-151-0/+28
| | | | llvm-svn: 91440
* Revert 90858 90875 and 90805 for now.Devang Patel2009-12-081-28/+0
| | | | llvm-svn: 90898
* Rename DIFactory::InsertValue() as DIFactory::InsertDbgValueIntrinsic()Victor Hernandez2009-12-071-6/+8
| | | | llvm-svn: 90807
* Add support to emit debug info for c++ style namespaces.Devang Patel2009-12-071-0/+28
| | | | llvm-svn: 90805
* Introduce the "@llvm.dbg.value" debug intrinsic.Victor Hernandez2009-12-071-0/+29
| | | | | | | | | | | The semantics of llvm.dbg.value are that starting from where it is executed, an offset into the specified user source variable is specified to get a new value. An example: call void @llvm.dbg.value(metadata !{ i32 7 }, i64 0, metadata !2) Here the user source variable associated with metadata #2 gets the value "i32 7" at offset 0. llvm-svn: 90788
* Add support to emit debug info for virtual functions and virtual base classes.Devang Patel2009-12-031-5/+13
| | | | llvm-svn: 90474
* Add utility routine to create subprogram definition entry from subprogram ↵Devang Patel2009-12-011-0/+23
| | | | | | declaration entry. llvm-svn: 90282
* Use StringRef (again) in DebugInfo interface.Devang Patel2009-11-251-45/+51
| | | | llvm-svn: 89866
* Emit pubtypes.Devang Patel2009-11-241-0/+32
| | | | llvm-svn: 89725
* Add CreateLocation varinat that accepts MDNode (with a default value).Devang Patel2009-11-231-0/+11
| | | | llvm-svn: 89689
* Remove dead code.Devang Patel2009-11-171-55/+1
| | | | llvm-svn: 89156
* Revert r87059 for now. It is failing clang tests.Devang Patel2009-11-131-3/+11
| | | | llvm-svn: 87070
* Remove unnecessary llvm.dbg.declare bitcastVictor Hernandez2009-11-131-11/+3
| | | | llvm-svn: 87059
* "Attach debug info with llvm instructions" mode was enabled a month ago. Now ↵Devang Patel2009-11-121-37/+2
| | | | | | make it permanent and remove old way of inserting intrinsics to encode debug info for line number and scopes. llvm-svn: 87014
* Do not use StringRef in DebugInfo interface. Devang Patel2009-11-121-17/+17
| | | | | | | This allows StringRef to skip controversial if(str) check in constructor. Buildbots, wait for corresponding clang and llvm-gcc FE check-ins! llvm-svn: 86914
* Implement support to debug inlined functions.Devang Patel2009-11-101-18/+0
| | | | llvm-svn: 86748
* Process InlinedAt location info.Devang Patel2009-11-101-16/+21
| | | | | | Update InsertDeclare to return newly inserted llvm.dbg.declare intrinsic. llvm-svn: 86727
* Tolerate invalid derived type.Devang Patel2009-11-061-0/+4
| | | | llvm-svn: 86269
* Do not bother to emit debug info for nameless global variable.Devang Patel2009-11-061-0/+3
| | | | llvm-svn: 86259
* While calculating original type size for a derived type, handle type ↵Devang Patel2009-11-041-6/+12
| | | | | | | | variants encoded as DIDerivedType appropriately. This improves bitfield support. llvm-svn: 86073
* If string field is empty then return NULL.Devang Patel2009-10-301-1/+4
| | | | llvm-svn: 85630
* If a type is derived from a derived type then calculate size appropriately.Devang Patel2009-10-301-3/+3
| | | | llvm-svn: 85619
* First bitcase use may not lead to a dbg.declare intrinsic. Iterate uses ↵Devang Patel2009-10-291-3/+4
| | | | | | | | until one find's dbg.declare intrinsic. Patch by Sunae Seo. llvm-svn: 85518
* Add support to encode type info using llvm::Constant.Devang Patel2009-10-261-0/+87
| | | | | | Patch by Talin! llvm-svn: 85126
* "there is not any instruction with attached debug info in this module" does ↵Devang Patel2009-10-131-11/+11
| | | | | | not mean "there is no debug info in this module". :) llvm-svn: 83984
* It's possible for a global variable to be optimized out of a metadata object. SoBill Wendling2009-10-081-1/+1
| | | | | | we should allow a "null" with this dyn_cast. llvm-svn: 83573
* Extract subprogram and compile unit information from the debug info attached ↵Devang Patel2009-10-071-0/+29
| | | | | | to an instruction. llvm-svn: 83491
* Expand api out in the usual inserter way, though, I do have aMike Stump2009-10-011-3/+17
| | | | | | | question, can we get rid of the BasicBlock versions of all inserters and use Head == 0 to indicate the old case when GetInsertBlock == 0? llvm-svn: 83216
* Add another MDNode into DebugLocTuple. This will be used to keep track of ↵Devang Patel2009-10-011-5/+6
| | | | | | inlined functions. llvm-svn: 83190
* Add isFOO() helpers. Fix getDirectory() and getFilename() for DIScope.Devang Patel2009-09-301-0/+50
| | | | llvm-svn: 83180
* Add a way for a frontend to generate more complex dwarf locationMike Stump2009-09-301-0/+22
| | | | | | | | | | | | | | | | | | 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-47/+43
| | | | llvm-svn: 83083
* Switch DIDescriptor to use a TrackingVH. - This makes it much safer to work ↵Daniel Dunbar2009-09-221-3/+12
| | | | | | with debug info, since it was extraordinarily easy to have dangling pointers thanks to MDNode uniquing. llvm-svn: 82507
* Tabs -> spaces, and remove trailing whitespace.Daniel Dunbar2009-09-201-2/+2
| | | | llvm-svn: 82355
* Strip trailing whitespace.Daniel Dunbar2009-09-191-58/+58
| | | | llvm-svn: 82332
* Provide a way to extract location info from DILocation.Devang Patel2009-09-161-0/+23
| | | | llvm-svn: 82064
* Introduce DILocation.Devang Patel2009-09-011-0/+12
| | | | llvm-svn: 80648
* Subprogram is a scope. Derive DISubprogram from DIScope.Devang Patel2009-08-311-1/+18
| | | | llvm-svn: 80637
* Rename DIBlock as DILexicalBlock.Devang Patel2009-08-311-2/+10
| | | | llvm-svn: 80633
* Derive DICompileUnit from DIScope.Devang Patel2009-08-311-0/+8
| | | | llvm-svn: 80627
* Introduce DIScope.Devang Patel2009-08-311-0/+16
| | | | llvm-svn: 80620
* Oops. Fix inverted logic in assertion check.Devang Patel2009-08-311-6/+6
| | | | llvm-svn: 80618
* Simplify isDerivedType() and other predicate interface.Devang Patel2009-08-311-22/+59
| | | | llvm-svn: 80602
* Reapply 79977.Devang Patel2009-08-281-333/+176
| | | | | | Use MDNodes to encode debug info in llvm IR. llvm-svn: 80406
* Revert 79977. It causes llvm-gcc bootstrap failures on some platforms.Devang Patel2009-08-261-179/+329
| | | | llvm-svn: 80073
* Update DebugInfo interface to use metadata, instead of special named ↵Devang Patel2009-08-251-329/+179
| | | | | | | | 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
* remove uses of llvm/Support/Streams.h.Chris Lattner2009-08-231-32/+33
| | | | llvm-svn: 79838
* bug 4530: Make debug information static to it is preservered during bitcode ↵Richard Pennington2009-08-211-2/+2
| | | | | | linking. llvm-svn: 79616
* Oops. find all llvm.dbg.global_variables.Devang Patel2009-08-171-1/+1
| | | | llvm-svn: 79274
OpenPOWER on IntegriCloud