|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3 |
|
| #
a8d4cf1a |
| 09-Aug-2022 |
YingChi Long <[email protected]> |
[clang] add APValue type check in `TryPrintAsStringLiteral`
Fixes https://github.com/llvm/llvm-project/issues/57013
https://reviews.llvm.org/D115031 improved printing of non-type template parameter
[clang] add APValue type check in `TryPrintAsStringLiteral`
Fixes https://github.com/llvm/llvm-project/issues/57013
https://reviews.llvm.org/D115031 improved printing of non-type template parameter args. But checking if the end of Inits is 0 without checking if APValue is an integer, causes clang to segfault. This patch adds the code to check the type. (May not be a proper bugfix.)
Reviewed By: aaron.ballman, lichray
Differential Revision: https://reviews.llvm.org/D131466
(cherry picked from commit 55d3b79d159bab53b140860279486db8a1c0e4f3)
show more ...
|
|
Revision tags: llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6 |
|
| #
06decd0b |
| 19-Jun-2022 |
Kazu Hirata <[email protected]> |
[clang] Use value_or instead of getValueOr (NFC)
|
|
Revision tags: llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3 |
|
| #
44eee659 |
| 02-Mar-2022 |
Zhihao Yuan <[email protected]> |
[AST] Print NTTP args as string-literals when possible
C++20 non-type template parameter prints `MyType<{{116, 104, 105, 115}}>` when the code is as simple as `MyType<"this">`. This patch prints `My
[AST] Print NTTP args as string-literals when possible
C++20 non-type template parameter prints `MyType<{{116, 104, 105, 115}}>` when the code is as simple as `MyType<"this">`. This patch prints `MyType<{"this"}>`, with one layer of braces preserved for the intermediate structural type to trigger CTAD.
`StringLiteral` handles this case, but `StringLiteral` inside `APValue` code looks like a circular dependency. The proposed patch implements a cheap strategy to emit string literals in diagnostic messages only when they are readable and fall back to integer sequences.
Reviewed By: aaron.ballman
Differential Revision: https://reviews.llvm.org/D115031
show more ...
|
|
Revision tags: llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2, llvmorg-13.0.1-rc1 |
|
| #
7a2b1bdb |
| 10-Nov-2021 |
Adam Czachorowski <[email protected]> |
[clang] Do not crash in APValue::prettyPrint() on forward-decl structs.
The call to getTypeSizeInChars() is replaced with getTypeSizeInCharsIfKnown(), which does not crash on forward declared struct
[clang] Do not crash in APValue::prettyPrint() on forward-decl structs.
The call to getTypeSizeInChars() is replaced with getTypeSizeInCharsIfKnown(), which does not crash on forward declared structs. This only affects printing.
Differential Revision: https://reviews.llvm.org/D113570
show more ...
|
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1, llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4, llvmorg-12.0.0-rc3, llvmorg-12.0.0-rc2, llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1 |
|
| #
37e83bc6 |
| 06-Jan-2021 |
Varun Gandhi <[email protected]> |
[NFC] Move readAPValue/writeAPValue up the inheritance hierarchy
The implementation for (de)serialization of APValues can be shared between Clang and Swift, so we prefer pushing the methods up the i
[NFC] Move readAPValue/writeAPValue up the inheritance hierarchy
The implementation for (de)serialization of APValues can be shared between Clang and Swift, so we prefer pushing the methods up the inheritance hierarchy, instead of having the methods live in ASTReader/ASTWriter. Fixes rdar://72592937.
Reviewed By: rjmccall
Differential Revision: https://reviews.llvm.org/D94196
show more ...
|
|
Revision tags: llvmorg-11.0.1, llvmorg-11.0.1-rc2 |
|
| #
c4736b91 |
| 15-Dec-2020 |
Richard Smith <[email protected]> |
Don't memcpy from an empty ArrayRef; the base pointer could be null, and the C rules say memcpy can't accept a null pointer.
This should fix a test failure with the ubsan buildbots.
|
| #
5b267fb7 |
| 02-Dec-2020 |
Duncan P. N. Exon Smith <[email protected]> |
ADT: Stop peeking inside AlignedCharArrayUnion, NFC
Update all the users of `AlignedCharArrayUnion` to stop peeking inside (to look at `buffer`) so that a follow-up patch can replace it with an alia
ADT: Stop peeking inside AlignedCharArrayUnion, NFC
Update all the users of `AlignedCharArrayUnion` to stop peeking inside (to look at `buffer`) so that a follow-up patch can replace it with an alias to `std::aligned_union_t`.
This was reviewed as part of https://reviews.llvm.org/D92512, but I'm splitting this bit out to commit first to reduce churn in case the change to `AlignedCharArrayUnion` needs to be reverted for some unexpected reason.
show more ...
|
|
Revision tags: llvmorg-11.0.1-rc1 |
|
| #
0415cf47 |
| 18-Nov-2020 |
Simon Pilgrim <[email protected]> |
Fix unused variable warning. NFCI.
We're just performing a null pointer check, we don't need the actual variable.
|
| #
c43f8c77 |
| 10-Nov-2020 |
Richard Smith <[email protected]> |
Add PrintingPolicy overload to APValue::printPretty. NFC.
|
| #
438a27f2 |
| 10-Nov-2020 |
Richard Smith <[email protected]> |
Move code to determine the type of an LValueBase out of ExprConstant and into a member function on LValueBase. NFC.
|
|
Revision tags: llvmorg-11.0.0, llvmorg-11.0.0-rc6, llvmorg-11.0.0-rc5, llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3 |
|
| #
b637148e |
| 21-Sep-2020 |
Richard Smith <[email protected]> |
[c++20] For P0732R2 / P1907R1: Basic code generation and name mangling support for non-type template parameters of class type and template parameter objects.
The Itanium side of this follows the app
[c++20] For P0732R2 / P1907R1: Basic code generation and name mangling support for non-type template parameters of class type and template parameter objects.
The Itanium side of this follows the approach I proposed in https://github.com/itanium-cxx-abi/cxx-abi/issues/47 on 2020-09-06.
The MSVC side of this was determined empirically by observing MSVC's output.
Differential Revision: https://reviews.llvm.org/D89998
show more ...
|
| #
e04ba2bc |
| 22-Oct-2020 |
Richard Smith <[email protected]> |
Make APValue profiling a little more compact.
|
| #
0c417d4b |
| 21-Oct-2020 |
Richard Smith <[email protected]> |
Add more test coverage for APValue serialization / deserialization and fix a few exposed bugs.
|
| #
cf34dd0c |
| 01-Oct-2020 |
Tyker <[email protected]> |
[clang] Improve Serialization/Imporing/Dumping of APValues
Changes: - initializer expressions of constexpr variable are now wraped in a ConstantExpr. this is mainly used for testing purposes. the o
[clang] Improve Serialization/Imporing/Dumping of APValues
Changes: - initializer expressions of constexpr variable are now wraped in a ConstantExpr. this is mainly used for testing purposes. the old caching system has not yet been removed. - Add all the missing Serialization and Importing for APValue. - Improve dumping of APValue when ASTContext isn't available. - Cleanup leftover from last patch. - Add Tests for Import and serialization.
Differential Revision: https://reviews.llvm.org/D63640
show more ...
|
| #
53122ce2 |
| 15-Oct-2020 |
Tyker <[email protected]> |
[NFC] Correct name of profile function to Profile in APValue
Capitalize the profile function of APValue such that it can be used by FoldingSetNodeID
Reviewed By: rsmith
Differential Revision: http
[NFC] Correct name of profile function to Profile in APValue
Capitalize the profile function of APValue such that it can be used by FoldingSetNodeID
Reviewed By: rsmith
Differential Revision: https://reviews.llvm.org/D88643
show more ...
|
| #
913f6005 |
| 02-Sep-2020 |
Richard Smith <[email protected]> |
Canonicalize declaration pointers when forming APValues.
References to different declarations of the same entity aren't different values, so shouldn't have different representations.
Recommit of e6
Canonicalize declaration pointers when forming APValues.
References to different declarations of the same entity aren't different values, so shouldn't have different representations.
Recommit of e6393ee813178e9d3306b8e3c6949a4f32f8a2cb, most recently reverted in 9a33f027ac7d73e14ae287e78ab554142d1cbc8f due to a bug caused by ObjCInterfaceDecls not propagating availability attributes along their redeclaration chains; that bug was fixed in e2d4174e9c66251d1b408234b53f53d0903c0285.
show more ...
|
| #
9a33f027 |
| 12-Oct-2020 |
Arthur Eubanks <[email protected]> |
Revert "Canonicalize declaration pointers when forming APValues."
This reverts commit 9dcd96f728863d40d6f5922ed52732fdd728fb5f.
See https://crbug.com/1134762.
|
| #
df2a1f2a |
| 02-Sep-2020 |
Richard Smith <[email protected]> |
Add profiling support for APValues.
For C++20 P0732R2; unused so far. Will be used and tested by a follow-on commit.
|
| #
9dcd96f7 |
| 02-Sep-2020 |
Richard Smith <[email protected]> |
Canonicalize declaration pointers when forming APValues.
References to different declarations of the same entity aren't different values, so shouldn't have different representations.
Recommit of e6
Canonicalize declaration pointers when forming APValues.
References to different declarations of the same entity aren't different values, so shouldn't have different representations.
Recommit of e6393ee813178e9d3306b8e3c6949a4f32f8a2cb with fixed handling for weak declarations. We now look for attributes on the most recent declaration when determining whether a declaration is weak. (Second recommit with further fixes for mishandling of weak declarations. Our behavior here is fundamentally unsound -- see PR47663 -- but this approach attempts to not make things worse.)
show more ...
|
| #
15d94a7d |
| 23-Sep-2020 |
Leonard Chan <[email protected]> |
Revert "Canonicalize declaration pointers when forming APValues."
This reverts commit 905b9ca26c94fa86339451a528cedde5004fc1bb.
Reverting because this strips `weak` attributes off function declarat
Revert "Canonicalize declaration pointers when forming APValues."
This reverts commit 905b9ca26c94fa86339451a528cedde5004fc1bb.
Reverting because this strips `weak` attributes off function declarations, leading to the linker error we see at https://ci.chromium.org/p/fuchsia/builders/ci/clang_toolchain.fuchsia-arm64-debug-subbuild/b8868932035091473008.
See https://reviews.llvm.org/rG905b9ca26c94 for reproducer details.
show more ...
|
| #
905b9ca2 |
| 02-Sep-2020 |
Richard Smith <[email protected]> |
Canonicalize declaration pointers when forming APValues.
References to different declarations of the same entity aren't different values, so shouldn't have different representations.
Recommit of e6
Canonicalize declaration pointers when forming APValues.
References to different declarations of the same entity aren't different values, so shouldn't have different representations.
Recommit of e6393ee813178e9d3306b8e3c6949a4f32f8a2cb with fixed handling for weak declarations. We now look for attributes on the most recent declaration when determining whether a declaration is weak.
show more ...
|
| #
4d0312c8 |
| 06-Sep-2020 |
Benjamin Kramer <[email protected]> |
Add proper move ctor/move assign to APValue. NFCI.
Swapping 64 bytes to make a move isn't cheap.
|
| #
7b033238 |
| 04-Sep-2020 |
Nico Weber <[email protected]> |
Revert "Canonicalize declaration pointers when forming APValues."
This reverts commit e6393ee813178e9d3306b8e3c6949a4f32f8a2cb. It breaks Wunreachable for weak attributes, see http://lists.llvm.org/
Revert "Canonicalize declaration pointers when forming APValues."
This reverts commit e6393ee813178e9d3306b8e3c6949a4f32f8a2cb. It breaks Wunreachable for weak attributes, see http://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20200831/336645.html
show more ...
|
| #
e6393ee8 |
| 02-Sep-2020 |
Richard Smith <[email protected]> |
Canonicalize declaration pointers when forming APValues.
References to different declarations of the same entity aren't different values, so shouldn't have different representations.
|
| #
70923983 |
| 20-Aug-2020 |
Richard Smith <[email protected]> |
Improve pretty-printing for APValues of void type.
No functionality change intended: there doesn't seem to be any way to cause Clang to print such a value, but they can show up when dumping APValues
Improve pretty-printing for APValues of void type.
No functionality change intended: there doesn't seem to be any way to cause Clang to print such a value, but they can show up when dumping APValues from a debugger.
show more ...
|