History log of /external/clang/lib/CodeGen/CGDebugInfo.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
be6c6869a993536d4cd007f04e84ef74a1c3b229 11-Apr-2012 Eric Christopher <echristo@apple.com> Enable debug info for objective c implementations that may not have
an explicit instance variable.

rdar://10590352

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154481 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
7ff0c5d30d365ba5d4f08e1d2fcea0370b21699b 18-Feb-2012 Eric Christopher <echristo@apple.com> Add in a caching mechanism so that forward declarations are replaced
with full types if they exist.

rdar://10809898 and rdar://10209967 and rdar://10400981

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150858 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
51b2f6bae6847ccf4c48960c925316dccfb10190 18-Feb-2012 Eric Christopher <echristo@apple.com> Remove UpdateCompletedType from the debug info emission. We now
emit less than complete types on purpose on occasion and so
our caches aren't useful for this kind of lazy emitting.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150856 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
9965deaad40b08203e4cfacf9253fbe494dce81f 16-Feb-2012 Eric Christopher <echristo@apple.com> Reapply r150631:

"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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150752 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
64a043045874c9a054f9dfb8d37daf6e5e8d054c 16-Feb-2012 Eric Christopher <echristo@apple.com> Revert "Add a completed/incomplete type difference. This allows us to have"

This reverts commit 9a68d4584afcd0853b930bd80235b58736e785b4.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150637 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
9a68d4584afcd0853b930bd80235b58736e785b4 16-Feb-2012 Eric Christopher <echristo@apple.com> 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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150631 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
42e75daaefc11922c585053bfa5e5db6ff312c3e 13-Feb-2012 Eric Christopher <echristo@apple.com> Temporarily walk back a few of my recent debug info limiting changes
while reworking how we handle wanting to emit only parts of structures.

Fixes PR11970.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150388 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
9caf440928c16a8862de932fd19744dc8a6f4157 08-Feb-2012 Eric Christopher <echristo@apple.com> Constify the getClassName routine and variables that come out of it,
and then use it for forward decl names.

Part of rdar://10209967 and rdar://10400981

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150040 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
0086a5b44af6384b369f8660da69cf2775d09733 01-Feb-2012 Eric Christopher <echristo@apple.com> For pass-by-value record arguments to functions emit a forward decl
instead of the entire class definition.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149474 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
6faa5540dfd17388c62bef8e69f91b0e6bd86e9c 26-Jan-2012 Eric Christopher <echristo@apple.com> Refactor into its own function.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149012 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
5d613b57972a761973861f7c38b3e6442243a6ab 25-Jan-2012 Eric Christopher <echristo@apple.com> Refactor the record decl forward declaration code a bit.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148904 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
a70e2468865408df4f4a37212b40b85983aac4de 25-Jan-2012 Eric Christopher <echristo@apple.com> Typo.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
4ddca8ab795be2bb239a80b48a57d09f54dc07ba 20-Jan-2012 Eric Christopher <echristo@apple.com> When adding types to the context chain for record types, just emit
a forward declaration unless we already have a type. We can fill it in
later if it's actually used.

Fixes PR11345

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148584 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
973bbb6a8abdc8af99c9a0b78cdbf6e7adb684eb 17-Dec-2011 Eric Christopher <echristo@apple.com> When in a limited debug information situation if we can find the original
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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146779 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
d4c100e98d34e13fc6bd4f3a005533419f03a808 09-Nov-2011 Nick Lewycky <nicholas@mxc.ca> Minor cleanup, mostly reindenting. Remove one helper function that just called
the other helper functions, since we already differentiated the cases it was
testing between. No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144167 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
73fb35003aad027492e661a3749e921b5d1ecaf9 13-Oct-2011 Eric Christopher <echristo@apple.com> Recommit:

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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141893 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
28e06354b5d4dd539be6781e388ff27c0dffd807 12-Oct-2011 Eric Christopher <echristo@apple.com> Revert file/scope handling patches. gdb testing revealed a couple of bugs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141796 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
4b2d5498729a74a8e952bdf762e6f2d8c6b52690 12-Oct-2011 Eric Christopher <echristo@apple.com> 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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141732 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
a6b8b2c09610b8bc4330e948ece8b940c2386406 10-Oct-2011 Richard Smith <richard-llvm@metafoo.co.uk> Constant expression evaluation refactoring:
- 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.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141561 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
b001de7458d17c17e6d8b8034c7cfcefd3b70c00 07-Oct-2011 Eli Friedman <eli.friedman@gmail.com> Support for C1x _Atomic specifier (see testcase). This is primarily being 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!



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141330 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
aa2164cc2aecafb9efbddd72e6f25cea4995b330 29-Sep-2011 Eric Christopher <echristo@apple.com> Change "Regions" to be "LexicalBlocks" since that's what they
correspond to.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140740 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
5321bc492b2f29deecb6cb0bc68b7887164ee8a6 29-Sep-2011 Eric Christopher <echristo@apple.com> Rename EmitStopPoint in CGDebugInfo to EmitLocation. "stop points" don't
exist anymore.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140739 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
414ee4bb74957b4c5fe05e11848028e4701b51f7 29-Sep-2011 Eric Christopher <echristo@apple.com> Call UpdateLineDirectiveRegion every time we want to emit a stop
point in the code. Ensures that we don't miss any places and the
check is reasonably cheap.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140737 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
4111feff7ccefee4efda8832eb14a9e64b2ffc1a 16-Aug-2011 Devang Patel <dpatel@apple.com> Use new DIBuilder::finalize() at the end to wrap up debug info encoding for a translation unit.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137674 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
686775deca8b8685eb90801495880e3abdd844c2 20-Jul-2011 Chris Lattner <sabre@nondot.org> now that we have a centralized place to do so, add some using declarations for
some common llvm types: stringref and smallvector. This cleans up the codebase
quite a bit.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135576 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
1d323e0482889ad5f9637d62899f35f41a05df46 25-Jun-2011 Devang Patel <dpatel@apple.com> Fix struct member's scope. Patch by Xi Wang.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133829 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
fd05ca03abdfb38f78b9535d996ecc9c39d3b0db 14-Jun-2011 Peter Collingbourne <peter@pcc.me.uk> Move GlobalDecl to AST

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132973 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
1c29652fbcd097aa6c21511c9f4f886bb3f3a8af 31-May-2011 Devang Patel <dpatel@apple.com> List c++ class type as public type in dwarf debug info output.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132357 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
e2d0191afbe95f46abd21c3511a02a5a76106da4 26-Apr-2011 Devang Patel <dpatel@apple.com> Simplify. There is no need to have a method to just call another method.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130175 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
120bf32525829be4622fc85b67e38b2ff0276744 23-Apr-2011 Devang Patel <dpatel@apple.com> Tie debug information for method declaration with debug information for method definition.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130037 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
1f15c19005861b77cc52c14a3b294c6908b603bd 18-Apr-2011 Devang Patel <dpatel@apple.com> Fix typo in comment.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129703 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
90c1eedd060b33946a0c3ed7d25b6ae435c4aac9 16-Apr-2011 Devang Patel <dpatel@apple.com> Emit proper selector name in debug info.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129626 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
5ecb1dfb303c58138fdabeea00e73bee075b21ee 06-Apr-2011 Devang Patel <dpatel@apple.com> Emit debug info for function template parameters.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128948 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
9c1714ba3d668b6519f8211927976d777d716b95 05-Apr-2011 Devang Patel <dpatel@apple.com> Refactor.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128893 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
e80d56771736c85fd8365c394a6731923b17e91d 23-Mar-2011 Devang Patel <dpatel@apple.com> Update type cache when a type is completed.
Radar 9168773


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128150 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
093ac461b37a573dcf226fa55faed96f318169b9 03-Mar-2011 Devang Patel <dpatel@apple.com> Encode argument numbering in debug info so that code generator can emit them in order.
This fixes few blocks.exp regressions.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126960 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
41ba26701de859128ebe48a957c286e5dc01475f 02-Mar-2011 Devang Patel <dpatel@apple.com> revert r126858.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126874 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
810b07ccf7b19f532402d24064df543bb0518acd 02-Mar-2011 Devang Patel <dpatel@apple.com> Encode argument numbering in debug info so that code generator can emit them in order.
This fixes few blocks.exp regressions.

Reapply r126795 with a fix (one character change) for gdb testsuite regressions.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126858 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
3da5cb2d6e582ab3acb5dd0d2fd8ab31922750be 02-Mar-2011 Devang Patel <dpatel@apple.com> Revert r126794.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126848 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
8a04585eba8a87a660c9030c9cdef34c8c9f85c6 01-Mar-2011 Devang Patel <dpatel@apple.com> Encode argument numbering in debug info so that code generator can emit them in order.
This fixes few blocks.exp regressions.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
8178df3b39ab923ff5d24538812628abee33df79 22-Feb-2011 John McCall <rjmccall@apple.com> Emit the structure layout of the block literal parameter to a block
invocation function into the debug info. Rather than faking up a class,
which is tricky because of the custom layout we do, we just emit a struct
directly from the layout information we've already got.

Also, don't emit an unnecessarily parameter alloca for this "variable".



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126255 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
34753802931fddcf57bd62c5b83bdca1a23017d7 16-Feb-2011 Devang Patel <dpatel@apple.com> Simplify test to check an aggregate argument that has non trivial constructor or destructor.
This patch rewrites r125142.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125632 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
570729e71654f0564bf2ce6504f8629a96850914 09-Feb-2011 Devang Patel <dpatel@apple.com> If an aggregate argument is passed indirectly because it has non trivial
destructor or copy constructor than let debug info know about it.

Radar 8945514.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125142 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
6b5a61b6dc400027fd793dcadceeb9da944a37ea 07-Feb-2011 John McCall <rjmccall@apple.com> A few more tweaks to the blocks AST representation:
- BlockDeclRefExprs always store VarDecls
- BDREs no longer store copy expressions
- BlockDecls now store a list of captured variables, information about
how they're captured, and a copy expression if necessary

With that in hand, change IR generation to use the captures data in
blocks instead of walking the block independently.

Additionally, optimize block layout by emitting fields in descending
alignment order, with a heuristic for filling in words when alignment
of the end of the block header is insufficient for the most aligned
field.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125005 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
36b8ee6325b709dd301681fb281b6cf102a5e51a 22-Jan-2011 Douglas Gregor <dgregor@apple.com> Debug info generation for rvalue references

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124020 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
31f7d02f0d46207b077f9687fbfbf273dda4d5f5 17-Jan-2011 Devang Patel <dpatel@apple.com> Simplify.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123682 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
170cef3bff5b5659fac13e13bd824e1d61a64f5d 09-Dec-2010 Devang Patel <dpatel@apple.com> Remove unused parameter. getContextDescriptor() and getOrCreateNameSpace().


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@121333 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
344ff5d3dee44490abd7f4e767dd7b99c2050780 09-Dec-2010 Devang Patel <dpatel@apple.com> Remove unused parameter.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@121326 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
823d8e96cf3ff11775b8beb7f4d817a578972dc4 08-Dec-2010 Devang Patel <dpatel@apple.com> Start using DIBuilder. It provides cleaner interface.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@121302 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
f1d1d9ad72507a8ef1e97d2dccad8445f035e762 01-Nov-2010 Devang Patel <dpatel@apple.com> Simplify. Builtin types' context is always implied.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117928 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
532105f0257ec73e9bf75a3036bac1b37b5a5643 29-Oct-2010 Devang Patel <dpatel@apple.com> Basic types are language defined builtins. They are always defined at top most level.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117613 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
cebbedd237d4560099de3b5b7f7c03a1689b700e 13-Oct-2010 Devang Patel <dpatel@apple.com> Fix debug info for anon union.
This is tested by anon-union.exp.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116372 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
189d6ef40eff11b83b2cda941d5ed89a5cef09b2 09-Oct-2010 John McCall <rjmccall@apple.com> Permit constant evaluation of const floating-point variables with
constant initializers.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116138 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
d2829b76a87a70791184b3cac89900d2cda46ce4 06-Oct-2010 Devang Patel <dpatel@apple.com> Remove unused argument.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115789 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
c69e1cf04323f2e786d40e8a5ba84e77ee1c6827 30-Sep-2010 Devang Patel <dpatel@apple.com> Introduce -flimit-debug-info.
In this experimental mode try avoiding debug info emission for classes as much as possible. The goal is to reduce size of produced debuginfo without reducing quality of debug info in general. This is a work in progress.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115188 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
52044a2cb6d33705cb69577e5f202e794123ce81 02-Sep-2010 David Chisnall <csdavec@swan.ac.uk> Tidy up last commit, as per Devang's comments.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112840 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
2ed8f000869103b1adc05d6bc4c635604b6e66a7 27-Aug-2010 Devang Patel <dpatel@apple.com> Debug info for friends!
Patch originally by Alexander Herz.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112275 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
6237cea785144d4cdbe2a5e722788e0b4b9b30f9 24-Aug-2010 Devang Patel <dpatel@apple.com> Emit debug info for enum constants.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111852 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
4cac5b48e379a209d87aa9df191e6bb418e44a0f 21-Aug-2010 Dan Gohman <gohman@apple.com> Introduce a new temporary MDNode concept. Temporary MDNodes are
not part of the IR, are not uniqued, and may be safely RAUW'd.
This replaces a variety of alternate mechanisms for achieving
the same effect.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111682 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
25c2c8fb9309050612009a6571e2660e75531348 10-Aug-2010 Devang Patel <dpatel@apple.com> Simplify code and add comments, in code that generate debug info for constant integer globals, based on Chris's feedback.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110694 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
8d308384a220c7dc81755c47cdcbdd87dac25d5b 10-Aug-2010 Devang Patel <dpatel@apple.com> Even if a constant's evaluated value is used, emit debug info for the constant variable.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110660 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
58115009ba6406c2a0bcc5a5033592bd5f2fad30 27-Jul-2010 Devang Patel <dpatel@apple.com> Always use current working directory for DW_AT_comp_dir.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109535 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
ac4d13c0cc78a3b28a8af8001e4da6b18fa9029d 27-Jul-2010 Devang Patel <dpatel@apple.com> Reapply 109303.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109507 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
e9b711c39827d7dcba0fc4cb787a4a7395285634 26-Jul-2010 Devang Patel <dpatel@apple.com> Revert 109303.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109426 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
05b0f4195edf62af76795c92703a1d0c0fa936d9 24-Jul-2010 Devang Patel <dpatel@apple.com> Untangle filename/dirname confusion. Store constructed strings on the side. Avoid use of Path.makeAbsolute().

DW_TAG_compile_unit uses two attributes DW_AT_name and DW_AT_comp_dir. Their expected values are:

$ clang foo.c -g
DW_AT_name - foo.c
DW_AT_comp_dir - `pwd`

$ clang one/two/foo.c -g
DW_AT_name - one/two/foo.c
DW_AT_comp_dir - `pwd`

$ clang /tmp/one/foo.c -g
DW_AT_name - /tmp/one/foo.c
DW_AT_comp_dir - empty



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109303 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
5a6fbcfd8c15a2296f94a0473a68ec09d429827f 23-Jul-2010 Devang Patel <dpatel@apple.com> Keep track of artificial scopes introduced by line directives. For example,

#line 41 "bar.c"
dummy (1, i);
#line 24 "bar.h"
i = f2 (i);
#line 44 "bar.c"

This is tested by step-line.exp in gdb testsuite.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109189 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
4d939e64142126b872e39c11dc995aa993f137fe 21-Jul-2010 Devang Patel <dpatel@apple.com> Remove unused argument.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108946 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
700a1cb1d207e660fcd9c234cccfc78553f06802 20-Jul-2010 Devang Patel <dpatel@apple.com> Print template argument names for template class.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108916 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
c12c5bba6ceb6acd4e51e7a0fc03257da9cfd44e 15-May-2010 John McCall <rjmccall@apple.com> Substantially alter the design of the Objective C type AST by introducing
ObjCObjectType, which is basically just a pair of
one of {primitive-id, primitive-Class, user-defined @class}
with
a list of protocols.
An ObjCObjectPointerType is therefore just a pointer which always points to
one of these types (possibly sugared). ObjCInterfaceType is now just a kind
of ObjCObjectType which happens to not carry any protocols.

Alter a rather large number of use sites to use ObjCObjectType instead of
ObjCInterfaceType. Store an ObjCInterfaceType as a pointer on the decl rather
than hashing them in a FoldingSet. Remove some number of methods that are no
longer used, at least after this patch.

By simplifying ObjCObjectPointerType, we are now able to easily remove and apply
pointers to Objective-C types, which is crucial for a certain kind of ObjC++
metaprogramming common in WebKit.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103870 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
8ab870d34f02921e117e61de9ef7e78548635655 13-May-2010 Devang Patel <dpatel@apple.com> If given location is invalid then use current location.
This fixes recent regressions reported by gdb testsuite.
Tighter verification of debug info generated by FE found these regressions.

Refactor code to extract line number and column number from SourceLocation.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103678 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
d3651cc24fbcffd8f187c82e6a91e6e3de7fe26e 24-Apr-2010 Benjamin Kramer <benny.kra@googlemail.com> Fix pasto, add a comment.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102263 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
48c70f62dd7233a0ce5242dfb933b0d4638b3923 24-Apr-2010 Benjamin Kramer <benny.kra@googlemail.com> Factor code. No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102262 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
046c294a43024874ff35656c6e785b64e72f1f36 17-Apr-2010 Anders Carlsson <andersca@mac.com> Vtable -> VTable renames across the board.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101666 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
6876fe615e16b0e76c7711e129e470305b7e9d41 31-Mar-2010 Benjamin Kramer <benny.kra@googlemail.com> Minor include pruning.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100007 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
9c25039c4b93faf9cd09b62d41552cc3c5986d12 30-Mar-2010 Ted Kremenek <kremenek@apple.com> Cache results computed by CGDebugInfo::getOrCreateFile() in a DenseMap.
This reduces '-c -g' time on one file in 403.gcc by 12%.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99857 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
a1d2d397d64a9791f609532c995ad3eb9158d203 29-Mar-2010 Ted Kremenek <kremenek@apple.com> Remove FIXME comment.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99828 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
590838badd46e0559a6b709857fb87530e546276 29-Mar-2010 Ted Kremenek <kremenek@apple.com> Change 'TypeCache' from being an std::map to a llvm::DenseMap. This reduces codegen time
on one .i file from 403.gcc by 0.5%.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
7573f8b2f90ef65a253f7355fc466c93f0bc9832 09-Mar-2010 Devang Patel <dpatel@apple.com> More then one anonymous aggregates on one line creates chaos when MDNode uniquness is combined with RAUW operation. Right solution is to avoid using RAUW.

This fixes PR 6554.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98083 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
1780055f6dacd44ae9bd896c47a6424470b3ea2b 09-Mar-2010 Devang Patel <dpatel@apple.com> Start using DIFile. Corresponding llvm patch is r98020.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98021 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
70c23cdf12822edbbd04901f80133b2db9728226 23-Feb-2010 Devang Patel <dpatel@apple.com> Emit debug info for VectorType.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96999 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
809b9bb733d6b65883a89eae0cf20c1635cff141 10-Feb-2010 Devang Patel <dpatel@apple.com> Refactor code that generates debug info for variables that has BlocksAttr.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95786 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
abb485f0b58dd3d2da20f9b34f99695899a68cf2 01-Feb-2010 Devang Patel <dpatel@apple.com> Emit debug info for namespaces.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94991 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
3dd96a1489498deb03208f7011f48b9f3d7901db 29-Jan-2010 Devang Patel <dpatel@apple.com> Maintain a map of regions (lexical scopes) and use it to find context for a global variable.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
335830555806629d53c00a80ec3ecb61ead86f03 29-Jan-2010 Devang Patel <dpatel@apple.com> s/CGDebugInfo::getContext/CGDebugInfo::getContextDescriptor/g to avoid confusion.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94760 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
89f05f80233082b55aa7a8706c04be7e63ef78b3 28-Jan-2010 Devang Patel <dpatel@apple.com> s/FunctionNames/DebugInfoNames/g


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94753 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
4ce3f2026a8f1422e549089a58aa0a4d1cc76f99 28-Jan-2010 Devang Patel <dpatel@apple.com> Emit vtable info.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94751 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
a6da192bbb3cb2b99200f60726b78e2d3d1f1598 28-Jan-2010 Devang Patel <dpatel@apple.com> Include "this" pointer argument while emitting debug info for a C++ method.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94710 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
4433f1cf8a2704395e509d020d8f79da4e273458 26-Jan-2010 Anders Carlsson <andersca@mac.com> Fix the test I broke, and also fix a crash when declaring a virtual destructor. Add debug info support for pure virtual member functions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94519 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
d6f9a0d14b47e7ea9739623544d967682f41b86d 26-Jan-2010 Anders Carlsson <andersca@mac.com> Factor creating the DISubprogram for a member function out into a separate function.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94513 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
a245c5b36a12e7a879abc038964d0b9821c7e901 26-Jan-2010 Devang Patel <dpatel@apple.com> First cut at emitting inheritance info.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94473 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
4125fd20ef7e5ad6436c7b02bbbbe2e82c342c36 19-Jan-2010 Devang Patel <dpatel@apple.com> First cut at emitting debugging information for C++ member functions.
There is lot more work to do in this area.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93836 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
428deb524a262709095d5e5a088e924b9fd47202 19-Jan-2010 Devang Patel <dpatel@apple.com> Refactor.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93814 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
9c6c3a0e3ae09626d2d4b04e4ffa42c3d7cab32b 14-Jan-2010 Devang Patel <dpatel@apple.com> Emit human readable names for c/c++ functions. Avoid emitting linkage name if it matches regular name.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93383 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
155fd79b3a6dd25fbac1716fa3f8148de1e53c49 08-Dec-2009 Benjamin Kramer <benny.kra@googlemail.com> Use StringRef in CGDebugInfo::EmitFunctionStart.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90856 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
20f12a20ba9cfa6f8d53c8304e24f50903c45184 06-Dec-2009 Anders Carlsson <andersca@mac.com> Add rudimentary support for member pointers to CGDebugInfo.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90711 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
8fae060d6ef78d4cdd19ebff7dea9c3a566f8b23 13-Nov-2009 Devang Patel <dpatel@apple.com> Do not store DIDescriptor directly into a container. Store MDNode directly, through TrackingVH.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88677 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
a031b35ba4da13e105a349493f5351014cfb3354 06-Nov-2009 Anders Carlsson <andersca@mac.com> Simplify the debug info code, handle lvalue references and template specializations.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86277 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
91cc815ffd13d4a78ae1b5bd617e19dd555de4f4 23-Oct-2009 Mike Stump <mrs@apple.com> Fixup the return type of functions.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84922 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
bbd9fa4b4a0fea47f94ac3eb4eaf5cc8079defe1 06-Oct-2009 Devang Patel <dpatel@apple.com> Add support to attach debug info to an instruction.
This is not yet enabled.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83399 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
979ec2e5ee9e1a648e13c35510bb1cd437f90d24 06-Oct-2009 Devang Patel <dpatel@apple.com> Set appropriate context for a global variable while emitting debug info.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83352 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
b1a6e687967105bf1e18dfba196d0248e6700a4e 30-Sep-2009 Mike Stump <mrs@apple.com> Improve debugging information for BlockDeclRefExpr. WIP. Given this
scheme, we can switch the previous scheme over to using this code
path. There's a bit of simplifications yet to do as well.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83138 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
a180529e3d5d08dff2e2154d6a33a6c09f6af959 25-Sep-2009 John McCall <rjmccall@apple.com> Fix an infinite loop arising when trying to generate debug information
for a ObjC class with an ivar of weak self type.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82745 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
65f13c3381a31eae8a7219477c37c247ac9838fc 19-Sep-2009 Daniel Dunbar <daniel@zuster.org> Ok, an AssertingVH definitely doesn't work for now because we free our cache after the optimizer may have hacked on the module. Use a WeakVH instead.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82324 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
23e81bae8c91ccd408e31ca472dca25faed85028 19-Sep-2009 Daniel Dunbar <daniel@zuster.org> Switch CGDebugInfo type cache to using an AssertingVH.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82321 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
03faac3b8c85263804ffe501a01eb3da7c5198e9 19-Sep-2009 Daniel Dunbar <daniel@zuster.org> Factor out CGDebugInfo::CreateTypeNode method.
- No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82320 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
1eb4433ac451dc16f4133a88af2d002ac26c58ef 09-Sep-2009 Mike Stump <mrs@apple.com> Remove tabs, and whitespace cleanups.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
6dba432c7b862c2219e5d6e52b0cd188fbf84b01 14-Jul-2009 Devang Patel <dpatel@apple.com> Revert 75648 for now. It is causing test failures.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75684 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
61b5f3e12c0ab5dd2e8b98bb827855420bb9869b 14-Jul-2009 Devang Patel <dpatel@apple.com> Use LLVM mangler to get mangled name for debug info entry.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75589 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
9df4bb32dfafd963396155df8472904dde6a6827 14-Jul-2009 Daniel Dunbar <daniel@zuster.org> Update debug info generation for ObjCObjectPointer changes.
- Previously this would crash on recursive types, and it was also incorrectly
stripping off a level of indirection.
- I'm not 100% convinced this is all correct, but it should be a monotonic
improvment.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75582 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
72240d78e2510d981e7d986b9a1e50b1e09e10f0 26-Jun-2009 Devang Patel <dpatel@apple.com> Revrt PR4228 fix for now.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74304 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
998316908cf1f0d50257dcaf60dc8154a1e294c9 16-Jun-2009 Devang Patel <dpatel@apple.com> It is possible that main input file does not have any symbol with debug info. To handle this edge case, always create main compile unit first.
This fixes PR 4228.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73520 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
9bc093c9309e04ebfff4123790405241513da1b4 14-May-2009 Mike Stump <mrs@apple.com> Enhance debug information for block literals. Radar 6867696


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71763 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
87de6497f45243fbcef6dac5be6a641ca9331f61 23-Apr-2009 Devang Patel <dpatel@apple.com> Handle corner case where clang-cc is invoked directly to compile preprocessed source file without -main-file-name. In this case, CDDebugInfo is not able identify correct main source file becase SM.isFromMainFile() returns true for locations from header files as well as locations from main source file.
This patch takes conservative approach by not emitting more then one compile unit with isMain bit set.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69902 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
b700377f850a29a4fc8cb3e1b07809ef1afdcce5 23-Apr-2009 Chris Lattner <sabre@nondot.org> implement debug info for _Complex.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69873 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
446c619f37349815a3ccfb703b1ac08684279ae1 17-Apr-2009 Devang Patel <dpatel@apple.com> Appropriately set file name and directory name in debug info compile units.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69387 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
9ca36b66410f2f9155df9d573f6da3114ac685a2 26-Feb-2009 Devang Patel <dpatel@apple.com> Add support to emit debug info for objective-c interfaces.
(This is not yet used.)


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65573 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
9c85ba33ac85bbf5915f300a4b228bad7c693ee7 10-Nov-2008 Chris Lattner <sabre@nondot.org> reimplement debug info generation in terms of DebugInfo.h instead of
using MachineModuleInfo. This runs at about the same speed as the old
code, but fixes a bunch of bugs and is simpler and shorter.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58971 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
960627da5a98e788045b81cb32a7db7290c76c35 08-Nov-2008 Daniel Dunbar <daniel@zuster.org> Avoid redundant cast<>s / simplify type dispatch.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58892 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
86cd8afb03dea4c2e5011bd1866fa9eebf3c001f 03-Nov-2008 Chris Lattner <sabre@nondot.org> privatize some methods.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58602 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
45d196b8387dcefc4df26cda114fa34c6528e928 01-Nov-2008 Daniel Dunbar <daniel@zuster.org> Move IRBuilder type definition to common file.
- No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58546 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
bea06e4adb9fb7c2372058ee078c18db451b5a07 31-Oct-2008 Daniel Dunbar <daniel@zuster.org> Quick fix for PR2950, infinite loop generating debug info for
recursive types.
- Style will be clean up in further patches.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58490 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
3845f86d05e151ebb89a4d4e110c5cd12ececde9 31-Oct-2008 Daniel Dunbar <daniel@zuster.org> Formatting tweaks.
- No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58488 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
2104bf96271cb1b57e2af817acbdf4db63b4b171 24-Oct-2008 Daniel Dunbar <daniel@zuster.org> Map compilation units using FileEntry pointers instead of
FileIDs. This seems better conceptually and lets the SourceManager
handle details of mapping the location to a file ID.
- In practice, fixes an assert because this code wasn't using
getPhysicalLoc.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58055 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
2284ac9ec80299fcdefae9a2787cf85105a0f203 18-Oct-2008 Daniel Dunbar <daniel@zuster.org> Debug info bug fix, function start wasn't getting generated correctly
for Obj-C methods.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57769 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
66031a5594bc9a7dc0dc5137c3e7955f835e4639 17-Oct-2008 Daniel Dunbar <daniel@zuster.org> Change CGDebugInfo::setLocation to just ignore invalid locations. This
simplifies clients.

Also, add assert that RegionStack is empty when the CGDebugInfo is
destroyed.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57684 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
58bf6101062867ca4b3028f9e77e4ae642f09b44 11-Aug-2008 Daniel Dunbar <daniel@zuster.org> Update for IRBuilder template change (update LLVM!)


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54642 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
85e356825b291f86c6e926638914222b834b71a3 08-Aug-2008 Chris Lattner <sabre@nondot.org> update to make IRBuilder API change.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54548 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
507de85bc1cee904123ef99c58159c97df40a3ae 09-Jun-2008 Sanjiv Gupta <sanjiv.gupta@microchip.com> Generate debug descriptors for array types while generating the debug info.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52140 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
f58c27a64de75b152b54b88a7aee07867aaeda17 07-Jun-2008 Sanjiv Gupta <sanjiv.gupta@microchip.com> Create debug type descriptors for aggregate/enum types.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52070 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
686226b538e72c5059ab7c9a8f87eb883193b645 05-Jun-2008 Sanjiv Gupta <sanjiv.gupta@microchip.com> Emit debug information for global and static variables when -g is specified.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51993 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
cc9b16394fe6c9245dc4f8661a63d0c3937b62f0 30-May-2008 Sanjiv Gupta <sanjiv.gupta@microchip.com> Emit parameter and local variable debug information with -g.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51765 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
32ea35fee916ed73fe343bad2de9a609eb2cca38 29-May-2008 Eli Friedman <eli.friedman@gmail.com> A couple minor fixes to make debug info usable for arbitrary code: don't
emit incomplete types, because they crash llc, and always use the
logical location as the current location so we don't crash doing invalid
queries on CurLoc.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51675 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
1c6a38bcea17801e9a4738753aee845381af2b6c 25-May-2008 Sanjiv Gupta <sanjiv.gupta@microchip.com> Generate subprogram debug info with -g.
Also take care of freeing memory at the right places.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51553 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
3f2af1002249c8acc9ce17f1fc50324864feb8e1 22-May-2008 Eli Friedman <eli.friedman@gmail.com> Make debugging information usable. This is barebones, but it makes -g
actually work (instead of crashing llc), and there's enough info emitted
to get line number information in gdb. This should hopefully be helpful
for debugging non-working programs.

I got rid of the begin/endregion calls because the implementation wasn't
working; someone who knows the debugging info a bit better might try to
add it. I really have no clue how a compiler is supposed to emit them.

This commit shouldn't have any effect without -g.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51404 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h
e8b9f5b8ea60983c4a74cb8b63879616b914b65a 08-May-2008 Sanjiv Gupta <sanjiv.gupta@microchip.com> Added -g command line options to clang for generating source level debug information. This patch currently enables generation of line number debug information (stoppoints) and region begin/end debug information. The new files CGDebugInfo.h and CGDebugInfo.cpp implements the debug info manager class CGDebugInfo.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50848 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/CGDebugInfo.h