summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGDebugInfo.h
Commit message (Collapse)AuthorAgeFilesLines
* 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
* When in a limited debug information situation if we can find the originalEric Christopher2011-12-161-0/+1
| | | | | | | | | declaration for the type then go ahead and use that, it's still smaller than creating an all new derived type. Part of rdar://10335756 and others. llvm-svn: 146779
* Minor cleanup, mostly reindenting. Remove one helper function that just calledNick Lewycky2011-11-091-1/+0
| | | | | | | the other helper functions, since we already differentiated the cases it was testing between. No functionality change. llvm-svn: 144167
* Recommit:Eric Christopher2011-10-131-11/+7
| | | | | | | | | | | | | | | Start handling debug line and scope information better: Migrate most of the location setting within the larger API in CGDebugInfo and update a lot of callers. Remove the existing file/scope change machinery in UpdateLineDirectiveRegion and replace it with DILexicalBlockFile usage. Finishes off the rest of rdar://10246360 after fixing a few bugs that were exposed in gdb testsuite testing. llvm-svn: 141893
* Revert file/scope handling patches. gdb testing revealed a couple of bugs.Eric Christopher2011-10-121-7/+11
| | | | llvm-svn: 141796
* Start handling debug line and scope information better:Eric Christopher2011-10-111-11/+7
| | | | | | | | | | | Migrate most of the location setting within the larger API in CGDebugInfo and update a lot of callers. Remove the existing file/scope change machinery in UpdateLineDirectiveRegion and replace it with DILexicalBlockFile usage. Finishes off the rest of rdar://10246360 llvm-svn: 141732
* Constant expression evaluation refactoring:Richard Smith2011-10-101-1/+1
| | | | | | | | | | | - Remodel Expr::EvaluateAsInt to behave like the other EvaluateAs* functions, and add Expr::EvaluateKnownConstInt to capture the current fold-or-assert behaviour. - Factor out evaluation of bitfield bit widths. - Fix a few places which would evaluate an expression twice: once to determine whether it is a constant expression, then again to get the value. llvm-svn: 141561
* Support for C1x _Atomic specifier (see testcase). This is primarily being ↵Eli Friedman2011-10-061-0/+1
| | | | | | | | committed at the moment to help support C++0x <atomic>, but it should be a solid base for implementing the full specification of C1x _Atomic. Thanks to Jeffrey Yasskin for the thorough review! llvm-svn: 141330
* Change "Regions" to be "LexicalBlocks" since that's what theyEric Christopher2011-09-291-10/+11
| | | | | | correspond to. llvm-svn: 140740
* Rename EmitStopPoint in CGDebugInfo to EmitLocation. "stop points" don'tEric Christopher2011-09-291-3/+3
| | | | | | exist anymore. llvm-svn: 140739
* Call UpdateLineDirectiveRegion every time we want to emit a stopEric Christopher2011-09-291-4/+4
| | | | | | | point in the code. Ensures that we don't miss any places and the check is reasonably cheap. llvm-svn: 140737
* Use new DIBuilder::finalize() at the end to wrap up debug info encoding for ↵Devang Patel2011-08-151-0/+1
| | | | | | a translation unit. llvm-svn: 137674
* now that we have a centralized place to do so, add some using declarations forChris Lattner2011-07-201-14/+14
| | | | | | | some common llvm types: stringref and smallvector. This cleans up the codebase quite a bit. llvm-svn: 135576
* Fix struct member's scope. Patch by Xi Wang.Devang Patel2011-06-241-2/+4
| | | | llvm-svn: 133829
* Move GlobalDecl to ASTPeter Collingbourne2011-06-141-1/+1
| | | | llvm-svn: 132973
* List c++ class type as public type in dwarf debug info output.Devang Patel2011-05-311-0/+2
| | | | llvm-svn: 132357
* Simplify. There is no need to have a method to just call another method.Devang Patel2011-04-251-5/+0
| | | | llvm-svn: 130175
* Tie debug information for method declaration with debug information for ↵Devang Patel2011-04-231-0/+4
| | | | | | method definition. llvm-svn: 130037
* Fix typo in comment.Devang Patel2011-04-181-1/+1
| | | | llvm-svn: 129703
* Emit proper selector name in debug info.Devang Patel2011-04-161-0/+4
| | | | llvm-svn: 129626
* Emit debug info for function template parameters.Devang Patel2011-04-051-1/+7
| | | | llvm-svn: 128948
OpenPOWER on IntegriCloud