summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGDebugInfo.h
Commit message (Collapse)AuthorAgeFilesLines
...
* Whitespace.Eric Christopher2013-05-161-11/+11
| | | | llvm-svn: 181966
* Replace a pile of calls with an instance variable that's setEric Christopher2013-05-161-1/+3
| | | | | | once. Should be no functional change. llvm-svn: 181964
* Set the debug location for landing pad code to the canonical EH location.Adrian Prantl2013-05-161-0/+3
| | | | | | | | | It used to point to the first call that caused the landing pad to be generated. rdar://problem/13888152 llvm-svn: 181958
* Revert "Debug Info: Using declarations/DW_TAG_imported_declaration of ↵David Blaikie2013-05-151-13/+0
| | | | | | | | | | | | | variables, types, and functions." This reverts commit r181393 (git 3923d6a87fe7b2c91cc4a7dbd90c4ec7e2316bcd). This seems to be emitting too much extra debug info for two (known) reasons: * full class definitions are emitted when only declarations are expected * unused using declarations still produce DW_TAG_imported_declarations llvm-svn: 181947
* Debug Info: Comment changes in r181393 by request of echristoDavid Blaikie2013-05-121-0/+2
| | | | llvm-svn: 181672
* Debug Info: Using declarations/DW_TAG_imported_declaration of variables, ↵David Blaikie2013-05-081-0/+11
| | | | | | | | | | | | types, and functions. Basic support is implemented here - it still doesn't account for declared-but-not-defined variables or functions. It cannot handle out of order (declared, 'using', then defined) cases for variables, but can handle that for functions (& can handle declared, 'using'd, and not defined at all cases for types). llvm-svn: 181393
* Revert "Revert "PR14606: Debug info for using ↵David Blaikie2013-04-221-0/+3
| | | | | | | | directives/DW_TAG_imported_module"" This reverts commit 179839 now that the corresponding LLVM patch has been fixed. llvm-svn: 179997
* Revert "PR14606: Debug info for using directives/DW_TAG_imported_module"Eric Christopher2013-04-191-3/+0
| | | | | | This reverts commit r179837 as it seems to be causing test failures. llvm-svn: 179839
* PR14606: Debug info for using directives/DW_TAG_imported_moduleDavid Blaikie2013-04-191-0/+3
| | | | | | More changes later for using declarations/DW_TAG_imported_declaration. llvm-svn: 179837
* Give CGDebugInfo::getContextDescriptor a more specific return typeDavid Blaikie2013-04-191-1/+1
| | | | | | | Not that the DI* hierarchy is terribly type safe, but this makes the contract a little clearer I think. llvm-svn: 179835
* Revert "Revert r178079, it caused PR15637."Eric Christopher2013-04-021-1/+1
| | | | | | | | This reverts commit r178497 since the backend has been fixed. Also add a test to ensure that we're emitting template information for unions. llvm-svn: 178587
* Revert r178079, it caused PR15637.Nico Weber2013-04-011-1/+1
| | | | | | Also add a test for PR15637. llvm-svn: 178497
* Improvement on r177086.Adrian Prantl2013-03-291-0/+1
| | | | | | | | * Let DIType for block-captured self to point to the completed cached interface type. rdar://problem/12767564 llvm-svn: 178360
* Debug Info: remove use of magic numbers to tweak specific debug info ↵David Blaikie2013-03-261-1/+1
| | | | | | metadata fields llvm-svn: 178079
* Allocate stack storage for .block_descriptor and captured self at -O0.Adrian Prantl2013-03-141-1/+2
| | | | | | | | | This way the register allocator will not optimize away the debug info for captured variables. Fixes rdar://problem/12767564 llvm-svn: 177086
* Force column info to be generated for call expressions so we canAdrian Prantl2013-03-121-2/+5
| | | | | | | | | differentiate multiple inlined call sites on the same line in the debug info. Fixes rdar://problem/13036237 llvm-svn: 176895
* Improve the caching of debuginfo Objective C interface types.Adrian Prantl2013-03-111-0/+4
| | | | | | | | Generate forward declarations that are RAUW'd by finalize(). We thus avoid outputting the same type several times in multiple stages of completion. llvm-svn: 176820
* Ensure that DIType is regenerated after we visit an implementationAdrian Prantl2013-03-061-0/+11
| | | | | | | | | | that adds ivars to an interface. Fixes rdar://13175234 This is an update to r176116 that performs a smart caching of interfaces. llvm-svn: 176584
* Temporarily revert r176116 for compile-time performance regression.Adrian Prantl2013-02-271-4/+0
| | | | | | This reverts commit ea95e4587fd13606fbf63b10a07a7d02026aa39c. llvm-svn: 176151
* Ensure that DIType is regenerated after we visited an implementation that ↵Adrian Prantl2013-02-261-0/+4
| | | | | | adds ivars to an interface. Fixes rdar://13175234 llvm-svn: 176116
* Revert r174246, accidentally committed.David Blaikie2013-02-021-4/+0
| | | | | | This reverts commit 1513eb9284c23acfd19cf742b95996fbb11ca741. llvm-svn: 174249
* BasicsDavid Blaikie2013-02-021-0/+4
| | | | llvm-svn: 174246
* Implement OpenCL event_t as Clang builtin type, including event_t related ↵Guy Benyei2013-01-201-0/+1
| | | | | | OpenCL restrictions (OpenCL 1.2 spec 6.9) llvm-svn: 172973
* Collect both normal and static data members of a class in sourceEric Christopher2013-01-161-1/+18
| | | | | | | | | | order. Describe static data members to metadata using new interfaces. Part of PR14471. Patch by Paul Robinson! llvm-svn: 172591
* Extract the instance-method case for debug info out into a separate function.David Blaikie2013-01-071-0/+2
| | | | | | | | | | This is in preparation for using this to construct the function type for pointers to member functions to include the implicit/artificial 'this' parameter in that case as well. (feedback from GDB indicates that this might be all that's necessary to get it to behave well with Clang's pointer-to-member function debug output) llvm-svn: 171809
* Re-commit r170428 changes with Linux style file endings.Guy Benyei2012-12-181-1/+6
| | | | | | Add OpenCL images as clang builtin types. llvm-svn: 170432
* Revert changes from r170428, as I accidentally changed the line endings of ↵Guy Benyei2012-12-181-330/+325
| | | | | | these files to Windows style. llvm-svn: 170431
* Add OpenCL images as clang builtin types.Guy Benyei2012-12-181-325/+330
| | | | llvm-svn: 170428
* Sort all of Clang's files under 'lib', and fix up the broken headersChandler Carruth2012-12-041-6/+5
| | | | | | | | | | | | | uncovered. This required manually correcting all of the incorrect main-module headers I could find, and running the new llvm/utils/sort_includes.py script over the files. I also manually added quite a few missing headers that were uncovered by shuffling the order or moving headers up to be main-module-headers. llvm-svn: 169237
* objective-C blocks: Make sure that identical logic is usedFariborz Jahanian2012-11-281-1/+1
| | | | | | | | | | in deciding a copy/dispose field is needed in a byref structure and when generating the copy/dispose helpers. In certain cases, these fields were being added but no copy/dispose was being generated. This was uncovered in ARC, but not in MRR. // rdar://12759433 llvm-svn: 168825
* Use empty parens for empty function parameter list instead of '(void)'.Dmitri Gribenko2012-11-151-1/+1
| | | | llvm-svn: 168041
* Reapply:Eric Christopher2012-08-201-0/+3
| | | | | | | | | | | | | | | Author: Eric Christopher <echristo@apple.com> Date: Thu Aug 16 23:50:46 2012 +0000 Add some caching here for the builtin types. rdar://12117935 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162066 91177308-0d34-0410-b5e6-96231b3b80d8 after fixing a thinko. llvm-svn: 162243
* Temporarily revert r162066 and r162062 to see if it brings the gdbEric Christopher2012-08-171-3/+0
| | | | | | bots back. llvm-svn: 162080
* Add some caching here for the builtin types.Eric Christopher2012-08-161-0/+3
| | | | | | rdar://12117935 llvm-svn: 162066
* Drop the ASTContext.h include from Stmt.h and fix up transitive users.Benjamin Kramer2012-07-041-0/+1
| | | | | | | | | | | | | | This required moving the ctors for IntegerLiteral and FloatingLiteral out of line which shouldn't change anything as they are usually called through Create methods that are already out of line. ASTContext::Deallocate has been a nop for a long time, drop it from ASTVector and make it independent from ASTContext.h Pass the StorageAllocator directly to AccessedEntity so it doesn't need to have a definition of ASTContext around. llvm-svn: 159718
* Update based on move of DIBuilder.h to include/llvm.Bill Wendling2012-06-291-1/+1
| | | | llvm-svn: 159415
* Update the #include to find the DebugInfo.h in the correct placeBill Wendling2012-06-281-1/+1
| | | | llvm-svn: 159315
* Enable debug info for objective c implementations that may not haveEric Christopher2012-04-111-0/+6
| | | | | | | | an explicit instance variable. rdar://10590352 llvm-svn: 154481
* Add in a caching mechanism so that forward declarations are replacedEric Christopher2012-02-181-1/+6
| | | | | | | | with full types if they exist. rdar://10809898 and rdar://10209967 and rdar://10400981 llvm-svn: 150858
* Remove UpdateCompletedType from the debug info emission. We nowEric Christopher2012-02-181-4/+0
| | | | | | | emit less than complete types on purpose on occasion and so our caches aren't useful for this kind of lazy emitting. llvm-svn: 150856
* Reapply r150631:Eric Christopher2012-02-161-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "Add a completed/incomplete type difference. This allows us to have partial types for contexts and forward decls while allowing us to complete types later on for debug purposes. This piggy-backs on the metadata replacement and rauw changes for temporary nodes and takes advantage of the incremental support I added in earlier. This allows us to, if we decide, to limit adding methods and variables to structures in order to limit the amount of debug information output into a .o file. The caching is a bit complicated though so any thoughts on untangling that are welcome." with a fix: - Remove all RAUW during type construction by adding stub versions of types that we later complete. and some TODOs: - Add an RAUW cache for forward declared types so that we can replace them at the end of compilation. - Remove the code that updates on completed types because we no longer need to have that happen. We emit incomplete types on purpose and only want to know when we want to complete them. llvm-svn: 150752
* Revert "Add a completed/incomplete type difference. This allows us to have"Eric Christopher2012-02-151-13/+0
| | | | | | This reverts commit 9a68d4584afcd0853b930bd80235b58736e785b4. llvm-svn: 150637
* Add a completed/incomplete type difference. This allows us to haveEric Christopher2012-02-151-0/+13
| | | | | | | | | | | | | | | | partial types for contexts and forward decls while allowing us to complete types later on for debug purposes. This piggy-backs on the metadata replacement and rauw changes for temporary nodes and takes advantage of the incremental support I added in earlier. This allows us to, if we decide, to limit adding methods and variables to structures in order to limit the amount of debug information output into a .o file. The caching is a bit complicated though so any thoughts on untangling that are welcome. llvm-svn: 150631
* Temporarily walk back a few of my recent debug info limiting changesEric Christopher2012-02-131-11/+0
| | | | | | | | while reworking how we handle wanting to emit only parts of structures. Fixes PR11970. llvm-svn: 150388
* Constify the getClassName routine and variables that come out of it,Eric Christopher2012-02-081-1/+1
| | | | | | | | and then use it for forward decl names. Part of rdar://10209967 and rdar://10400981 llvm-svn: 150040
* For pass-by-value record arguments to functions emit a forward declEric Christopher2012-02-011-0/+11
| | | | | | instead of the entire class definition. llvm-svn: 149474
* Refactor into its own function.Eric Christopher2012-01-261-0/+1
| | | | llvm-svn: 149012
* Refactor the record decl forward declaration code a bit.Eric Christopher2012-01-251-0/+4
| | | | llvm-svn: 148904
* Typo.Eric Christopher2012-01-251-1/+1
| | | | llvm-svn: 148903
* When adding types to the context chain for record types, just emitEric Christopher2012-01-201-0/+3
| | | | | | | | | a forward declaration unless we already have a type. We can fill it in later if it's actually used. Fixes PR11345 llvm-svn: 148584
OpenPOWER on IntegriCloud