History log of /external/clang/test/CodeGenCXX/debug-info-template.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
3ea9e33ea25e0c2b12db56418ba3f994eb662c04 08-Apr-2015 Pirama Arumuga Nainar <pirama@google.com> Update aosp/master clang for rebase to r233350

Change-Id: I12d4823f10bc9e445b8b86e7721b71f98d1df442
/external/clang/test/CodeGenCXX/debug-info-template.cpp
0e2c34f92f00628d48968dfea096d36381f494cb 23-Mar-2015 Stephen Hines <srhines@google.com> Update aosp/master clang for rebase to r230699.

Change-Id: I6a546ab3d4ae37119eebb735e102cca4f80ab520
/external/clang/test/CodeGenCXX/debug-info-template.cpp
176edba5311f6eff0cad2631449885ddf4fbc9ea 01-Dec-2014 Stephen Hines <srhines@google.com> Update aosp/master Clang for rebase to r222490.

Change-Id: Ic557ac55e97fbf6ee08771c7b7c3594777b0aefd
/external/clang/test/CodeGenCXX/debug-info-template.cpp
651f13cea278ec967336033dd032faef0e9fc2ec 24-Apr-2014 Stephen Hines <srhines@google.com> Updated to Clang 3.5a.

Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
/external/clang/test/CodeGenCXX/debug-info-template.cpp
ae2394718290b05128c5682d41dae59d20569c06 09-Oct-2013 Manman Ren <manman.ren@gmail.com> Debug Info: update testing cases when the context field of
DICompositeType is updated to use DIScopeRef.

Paired commit with r192256.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192257 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
8e0f65fc23bb668b9e3322bd699f305d8c90b367 05-Oct-2013 Manman Ren <manman.ren@gmail.com> Debug Info: update testing cases when the derived-from field of a
DW_TAG_pointer_type is updated to use DITypeRef.

Paired commit with r192018.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192019 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
dadbd4797ce12c914580dec51d8973cfed5d37b3 04-Oct-2013 Eric Christopher <echristo@gmail.com> Temporarily revert r191801 due to conflicts with the revert of r191792.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191968 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
865750e2be4833eb904d8f54d23a8078ac9309dd 02-Oct-2013 Manman Ren <manman.ren@gmail.com> Debug Info: update testing cases when the derived-from field of a
DW_TAG_pointer_type is updated to use DITypeRef.

Paired commit with r191800.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191801 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
832e92176805a2d654fe8e5630525ebbda5ccbee 05-Sep-2013 Manman Ren <manman.ren@gmail.com> Debug Info: Update testing case.

DIBuilder now uses an identifier to reference DIType in base type field of
ptr_to_member (in r190081).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190082 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
83369bf8f6244f20ae8bfa2fcb3a556f94da27de 30-Aug-2013 Manman Ren <manman.ren@gmail.com> Debug Info: generate a unique identifier for C++ struct, class, union, and enum.

We use CXX mangler to generate unique identifier for external C++ struct,
union, class and enum. Types with unique identifier are added to retained
types by DIBuilder.

Testing cases are updated to reflect the unique identifier generated for types.
The order of MDNodes is changed because of retained types and testing cases
are updated accordingly.

Testing case debug-info-uuid.cpp now emits error with Itanium mangler, since
uuid is not yet handled in Itanium mangler. And it will check for the error
message.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189622 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
18760453868e9b831b8575ae64119b07ab4dcdf5 29-Aug-2013 Manman Ren <manman.ren@gmail.com> Debug Info: this reverts commit r189600.

We had further discussions on how to retain types, whether to do it in front end
or in DIBuilder. And we agree to do it in DIBuilder so front ends
generating unique identifier do not need to worry about retaining them.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189609 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
f1acc31e4586dfec00a20e82094f7ad782d50cc3 29-Aug-2013 Manman Ren <manman.ren@gmail.com> Debug Info: generate a unique identifier for C++ struct, class, union, and enum.

We use CXX mangler to generate unique identifier for external C++ struct,
union, class and enum. Types with unique identifier are added to RetainedTypes
to make sure they are treated as used even when all uses are replaced with
the identifiers.

A single type can be added to RetainedTypes multiple times. For example, both
createForwardDecl and createLimitedType can add the same type to RetainedTypes.
A set is used to avoid duplication when updating AllRetainTypes in DIBuilder.

Testing cases are updated to reflect the unique identifier generated for types.
The order of MDNodes is changed because of retained types and testing cases
are updated accordingly.

Testing case debug-info-uuid.cpp now emits error with Itanium mangler, since
uuid is not yet handled in Itanium mangler.

We choose to update RetainedTypes in clang, then at finalize(), we update
AllRetainTypes in DIBuilder. The other choice is to update AllRetainTypes
in DIBuilder when creating a DICompositeType with unique identifier. This
option requires using ValueHandle for AllRetainTypes in DIBuilder since
the created DICompositeType can be modified later on by setContainingType etc.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189600 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
7b1e9b423a5138d0d54709b902bbfc42f6270fcb 28-Aug-2013 Manman Ren <manman.ren@gmail.com> Debug Info testing case: move uuid-related testing to a separate file.

Seperate the parts related to uuid from debug-info-template.cpp to
debug-info-uuid.cpp since Itanium mangler does not have support for mangling
uuid yet.

Remove -fms-extensions from RUN line of debug-info-template.cpp.
RUN line of debug-info-uuid.cpp has -fms-extensions and -cxx-abi microsoft.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189498 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
d7feb049c8a7674b274c83c3e3979e8886a54788 27-Aug-2013 Manman Ren <manman.ren@gmail.com> Debug Info: follow-up patch to r189283.

Thanks David for his suggestion. This commit updates testing cases
to have more specific CHECKs.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189286 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
0858246d180a9e654ca6d755f5c12202cef4fc0b 27-Aug-2013 Manman Ren <manman.ren@gmail.com> Debug Info: add an identifier field to DICompositeType.

Paired with llvm r189282.
Update testing cases to handle an extra field for DICompositeType.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189283 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
5db8b3138f36e11bca835881e81cc56bbd7b4fa4 26-Aug-2013 David Majnemer <david.majnemer@gmail.com> DebugInfo: Emit info for casted decls in template args

Summary:
Previously the backend wouldn't get to see the underlying GlobalValue
that corresponds to the template argument because it would be hidden by
a cast at the IR level. Instead strip the pointer casts off of the
value until we see the underlying GlobalValue.

Reviewers: dblaikie, echristo, majnemer

Reviewed By: majnemer

CC: cfe-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D1508

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189200 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
ae3d7a10c884daf85341ec0f89969d38d0fb5672 24-Aug-2013 David Majnemer <david.majnemer@gmail.com> Fix test, make the template type a const pointer.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189166 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
87b1f6d1901036602bcbccaeea341d175e7f900d 24-Aug-2013 David Majnemer <david.majnemer@gmail.com> DebugInfo: Emit info for constant expressions in template arguments

Summary:
This allows us to handle the general case where a non-type template
argument evaluates to a constant expression which isn't integral or a
declaration.

This fixes PR16939.

Reviewers: dblaikie, rsmith

Reviewed By: dblaikie

CC: cfe-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D1453

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189165 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
8058833e12dd9cd38107f6dde3d5a17021ad3a5d 01-Aug-2013 David Blaikie <dblaikie@gmail.com> DebugInfo: Emit template arguments for limited types used for context.

We emit definitions with no members when a nested type is
referenced/required (GCC does the same, to be fair) but failed to attach
the template arguments in such a case.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187608 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
35178dc09d97bb2e0612813def09833866e3ad82 22-Jun-2013 David Blaikie <dblaikie@gmail.com> DebugInfo: Support (using GNU extensions) for template template parameters and parameter packs

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184644 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
f8aa155e40bc98844f46ecbfdbe430696c36ce24 13-May-2013 David Blaikie <dblaikie@gmail.com> Debug Info: PR14992: Support values for non-type template parameters of function type

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181685 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
776a36453a48f3d1f305b83fbdf1632dde808ab5 11-May-2013 David Blaikie <dblaikie@gmail.com> Debug Info: Silently accept template argument packs

We could support the GCC extension DW_TAG_GNU_template_parameter_pack if
we're feeling adventurous, at some point - but I don't think GDB's doing
anything useful with it yet anyway.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181644 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
9dfd24324c079b564dda936c6ae46898b82121e2 10-May-2013 David Blaikie <dblaikie@gmail.com> PR14992: Debug Info: Support more non-type template parameters

* Provide DW_TAG_template_value_parameter for pointers, function
pointers, member pointers, and member function pointers (still missing
support for template template parameters which GCC encodes as a
DW_TAG_GNU_template_template_param)
* Provide values for all but the (member & non-member) function pointer case.
Simple constant integer values for member pointers (offset within the
object) and address for the value pointer case. GCC doesn't provide a
value for the member function pointer case so I'm not sure how, if at
all, GDB supports encoding that. & non-member function pointers should
follow shortly in a subsequent patch.
* Null pointer value encodings of all of these types, including
correctly encoding null data member pointers as -1.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181634 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
f1e08ac58e72257f0e50e9bda1f1f232ed823ce2 10-May-2013 David Blaikie <dblaikie@gmail.com> Debug Info: include address-of ('&') operator and qualified names in template argument lists

This fixes several (7 out of 16) cases of PR14492 in the GDB 7.5 test
suite. It seems GDB was bailing out whenever it had even the slightest
problem with the template argument list (& I assume it didn't like
seeing template value parameters that were just simple names - perhaps
assuming that lone names must be types, not values)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181556 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
eac29c855f7d6bf119d651190e7cbab5f7cb31a1 10-May-2013 David Blaikie <dblaikie@gmail.com> Fix some test cases I broke in r181552

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181554 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
0cd9edecec00e9f8ba78ed5af1fbfbcdafb5fb6c 09-May-2013 David Blaikie <dblaikie@gmail.com> DebugInfo: Simply & constrain test(s) for PR9600/PR9608

Both these tests were ultimately fixed by the check for
"isIncompleteType" & neither test case was really reduced to a minimal
form. On doing so it becomes apparent that the problem wasn't specific
to templates at all, so I've moved the test case to a more appropriate
test file and added FileCheck verification to it (to show the forward
declaration of the array element type as well as the array alignment and
size being 0 since it cannot be computed). That's about as far down this
rabbithole as I'm willing to go today, so the rest of the un-FileChecked
tests in test/CodeGenCXX/debug-info.cpp will have to go another day
without actually testing anything other than the fact that they don't
crash.

& improve the actually interesting test case in
test/CodeGenCXX/debug-info-templates.cpp which was my original goal (in
preparation for expanding it/fixing some related bugs in non-type
template parameters)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181552 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
ad022b03a1de1d89bfab171e619665c5a8589cc7 09-May-2013 David Blaikie <dblaikie@gmail.com> Remove trailing whitespace

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181525 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
ba690a4112be4f0abde48ce51d41e92c79f96f3e 05-Apr-2011 Devang Patel <dpatel@apple.com> Incomplete type does not have any size.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128855 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
ae503df62bde42440a9c4495d26d6142c4af7bcb 01-Apr-2011 Devang Patel <dpatel@apple.com> Do not try calculate the size of forward-declared template type array.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128725 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
0ce34c6ba0aa79708a62179c0fdf96891b62b5dc 02-Feb-2011 Devang Patel <dpatel@apple.com> Emit debug info for template value parameters.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124756 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
fa275dfad7c4eb053ffef423a863afbe15534476 02-Feb-2011 Devang Patel <dpatel@apple.com> Emit debug info for template type parameters.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124753 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CodeGenCXX/debug-info-template.cpp
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/test/CodeGenCXX/debug-info-template.cpp