4967a710c84587c654b56c828382219c3937dacb |
|
20-Sep-2016 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master Clang for rebase to r275480 Bug: http://b/31320715 This merges commit ac9cc4764cf47a6c3f031687d8592e080c9f5001 from aosp/dev. Test: Build AOSP and run RenderScript tests (host tests for slang and libbcc, RsTest, CTS) Change-Id: Ic2875e5c3673c83448cd7d1013861e42947b1b55
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
87d948ecccffea9e9e37d0d053b246e2d6d6c47b |
|
04-Mar-2016 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r256229 http://b/26987366 Change-Id: I5d349c9843ea5c24d6e455956f8a446393b6873d
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
b6d6993e6e6d3daf4d9876794254d20a134e37c2 |
|
01-Jul-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r239765 Change-Id: I0393bcc952590a7226af8c4b58534a8ee5fd2d99
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
58878f85ab89b13e9eea4af3ccf055e42c557bc8 |
|
06-May-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r235153 Change-Id: Ia94bbcb6da7c75b6e7c2afedd1001094d62a7324
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
3ea9e33ea25e0c2b12db56418ba3f994eb662c04 |
|
08-Apr-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r233350 Change-Id: I12d4823f10bc9e445b8b86e7721b71f98d1df442
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
0e2c34f92f00628d48968dfea096d36381f494cb |
|
23-Mar-2015 |
Stephen Hines <srhines@google.com> |
Update aosp/master clang for rebase to r230699. Change-Id: I6a546ab3d4ae37119eebb735e102cca4f80ab520
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
176edba5311f6eff0cad2631449885ddf4fbc9ea |
|
01-Dec-2014 |
Stephen Hines <srhines@google.com> |
Update aosp/master Clang for rebase to r222490. Change-Id: Ic557ac55e97fbf6ee08771c7b7c3594777b0aefd
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
c568f1e98938584c0ef0b12ae5018ff7d90a4072 |
|
21-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for rebase to r212749. This also fixes a small issue with arm_neon.h not being generated always. Includes a cherry-pick of: r213450 - fixes mac-specific header issue r213126 - removes a default -Bsymbolic on Android Change-Id: I2a790a0f5d3b2aab11de596fc3a74e7cbc99081d
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
6bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89 |
|
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for 3.5 rebase (r209713). Change-Id: I8c9133b0f8f776dc915f270b60f94962e771bc83
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
651f13cea278ec967336033dd032faef0e9fc2ec |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Updated to Clang 3.5a. Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
9feedb862e46f46d302f250ade1cac7108ba880b |
|
04-Nov-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Attributes which accept a type as their sole argument are no longer hard coded into the parser. Instead, they are automatically listed through tablegen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193989 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
ddc2a53584f91b1fdcc466f1ea1345d97c428802 |
|
31-Oct-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Store a TypeArgument on an attribute as a TypeSourceInfo*, rather than as a QualType with a SourceLocation stashed alongside. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193803 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
d92aa2d2880d1c30baff996cb4c4f0836dbc355e |
|
24-Oct-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
PR17666: Instead of allowing an initial identifier argument in any attribute which we don't think can't have one, only allow it in the tiny number of attributes which opts into this weird parse rule. I've manually checked that the handlers for all these attributes can in fact cope with an identifier as the argument. This is still somewhat terrible; we should move more fully towards picking the parsing rules based on the attribute, and make the Parse -> Sema interface more type-safe. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193295 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
66540857c08de7f1be9bea48381548d3942cf9d1 |
|
04-Oct-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed Analysis: Change callable_when so that it can take a list of states that a function can be called in. This reduced the total number of annotations needed and makes writing more complicated behaviour less burdensome. Patch by chriswails@gmail.com. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191983 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
d068607c136298bec0891d750389a55bac9f5c98 |
|
11-Sep-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Tablegen now generates a StringSwitch for attributes containing enumeration arguments to map strings to the proper enumeration value. This makes error checking more consistent and reduces the amount of hand-written code required. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190545 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
ebaee6b74e56f28c088225b11a512e6e7d1fb9d8 |
|
11-Sep-2013 |
Aaron Ballman <aaron@aaronballman.com> |
The cleanup attribute no longer uses an unresolved, simple identifier as its argument. Instead, it takes an expression that is fully resolved. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190476 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
bbb3b3237df2284f6f3c34798944fcfa4b43fd34 |
|
10-Sep-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Attribute tablegen now understands that attribute arguments can be optional. This allows for automated checking of the number of arguments expected vs number of arguments given for attributes. Greatly reduces the amount of manual checking required. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190368 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
caa5ab264ddea332e8423af1ebcea50d0cb37206 |
|
03-Sep-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Switched FormatAttr to using an IdentifierArgument instead of a StringArgument since that is a more accurate modeling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189851 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
ce7565213b315fe12074b66ac12c530ff4a95fc9 |
|
31-Jul-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Fixing an unused variable warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187474 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
201bddcfeb53db9f0c84df46ec4afccc65286e5c |
|
30-Jul-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Added the notion of Type and TargetSpecific attributes to the clang tablegen. In turn, this fixes a mistake with Ptr32, Ptr64, UPtr and SPtr attribtues generating AST nodes that are never actually used. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187401 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
a3d813a8c292bee8349ef43065dab9b344650351 |
|
14-May-2013 |
Reid Kleckner <reid@kleckner.net> |
Fix copy-pasto in naming of LAST_MS_INHERITANCE[_ATTR] Richard Smith pointed this out over a month ago. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181830 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
4761b102de0defef110d760ff77bfc367eac93c9 |
|
03-May-2013 |
Douglas Gregor <dgregor@apple.com> |
Restore Richard's belief in me. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181042 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
92eb7d847cb1273a63d5e3b7dc98a7c97a81b703 |
|
03-May-2013 |
Douglas Gregor <dgregor@apple.com> |
Use attribute argument information to determine when to parse attribute arguments as expressions. This change partly addresses a heinous problem we have with the parsing of attribute arguments that are a lone identifier. Previously, we would end up parsing the 'align' attribute of this as an expression "(Align)": template<unsigned Size, unsigned Align> class my_aligned_storage { __attribute__((align((Align)))) char storage[Size]; }; while this would parse as a "parameter name" 'Align': template<unsigned Size, unsigned Align> class my_aligned_storage { __attribute__((align(Align))) char storage[Size]; }; The code that handles the alignment attribute would completely ignore the parameter name, so the while the first of these would do what's expected, the second would silently be equivalent to template<unsigned Size, unsigned Align> class my_aligned_storage { __attribute__((align)) char storage[Size]; }; i.e., use the maximal alignment rather than the specified alignment. Address this by sniffing the "Args" provided in the TableGen description of attributes. If the first argument is "obviously" something that should be treated as an expression (rather than an identifier to be matched later), parse it as an expression. Fixes <rdar://problem/13700933>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180973 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
fa5f03052bc39d9c8f2fa8b4002597a8219760a4 |
|
03-May-2013 |
Douglas Gregor <dgregor@apple.com> |
Revert r180970; it's causing breakage. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180972 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
3796d1539a39b999fd50bed7aea726ef6f845e17 |
|
03-May-2013 |
Douglas Gregor <dgregor@apple.com> |
Use attribute argument information to determine when to parse attribute arguments as expressions. This change partly addresses a heinous problem we have with the parsing of attribute arguments that are a lone identifier. Previously, we would end up parsing the 'align' attribute of this as an expression "(Align)": template<unsigned Size, unsigned Align> class my_aligned_storage { __attribute__((align((Align)))) char storage[Size]; }; while this would parse as a "parameter name" 'Align': template<unsigned Size, unsigned Align> class my_aligned_storage { __attribute__((align(Align))) char storage[Size]; }; The code that handles the alignment attribute would completely ignore the parameter name, so the while the first of these would do what's expected, the second would silently be equivalent to template<unsigned Size, unsigned Align> class my_aligned_storage { __attribute__((align)) char storage[Size]; }; i.e., use the maximal alignment rather than the specified alignment. Address this by sniffing the "Args" provided in the TableGen description of attributes. If the first argument is "obviously" something that should be treated as an expression (rather than an identifier to be matched later), parse it as an expression. Fixes <rdar://problem/13700933>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180970 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
852e3d7143cda1cdf6771c17559d38822cc296b3 |
|
26-Mar-2013 |
Reid Kleckner <reid@kleckner.net> |
[ms-cxxabi] Give the MS inheritance attributes a base class Required making a handful of changes to the table generator. Also adds an unspecified inheritance attribute. This opens the path for us to apply these attributes to C++ records implicitly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178054 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
a31f65b10e61ca8f2f427b1df176c10ea8a0efa2 |
|
01-Feb-2013 |
Michael Han <fragmentshaders@gmail.com> |
[Sema][Attr]Fix alignment attribute printing. Remove "IsMSDeclspec" argument from Align attribute since the arguments in Attr.td should only model those appear in source code. Introduce attribute Accessor, and teach TableGen to generate syntax kind accessors for Align attribute, and use those accessors to decide if an alignment attribute is a declspec attribute. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174133 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
e8d411997899a87e1a9f63ad3f52b38e7931687c |
|
31-Jan-2013 |
Richard Trieu <rtrieu@google.com> |
Add indents to AST dumping and removed parenthesis from AST nodes. Indents were given the color blue when outputting with color. AST dumping now looks like this: Node |-Node | `-Node `-Node `-Node Compared to the previous: (Node (Node (Node)) (Node (Node))) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174022 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
8f1fa25a9e9f3fa4f2d7ecc0a08ebb08c0c4e642 |
|
30-Jan-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
TableGen backends: use emitSourceFileHeader() to emit the warning about file contents being autogenerated git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173979 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
8f3aacc8c4849c9e0e7a236954725fffdeb917a6 |
|
29-Jan-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Propagate the spelling list index for an attribute across template instantiation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173768 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
5cd532ca0bc1cb8110e24586d064f72332d8b767 |
|
29-Jan-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Replace AS_MSTypespec with AS_Keyword, for representing any attribute spelled as a keyword. Rationalize existing attributes to use it as appropriate, and to not lie about some __declspec attributes being GNU attributes. In passing, remove a gross hack which was discarding attributes which we could handle. This results in us actually respecting the __pascal keyword again. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173746 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
7d470531fffc8072c358ec0ef8192fd02756fab1 |
|
27-Jan-2013 |
Michael Han <fragmentshaders@gmail.com> |
Add the missing line return to align parameters of printPretty. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173597 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
51d8c52ad36129760eaa586f85176037e2cd0d0e |
|
24-Jan-2013 |
Michael Han <fragmentshaders@gmail.com> |
PR14922: when printing an attribute, use the real syntax of the attribute (GNU, C++11, MS Declspec) instead of hardcoded GNU syntax. Introduce a spelling index to Attr class, which is an index into the attribute spelling list of an attribute defined in Attr.td. This index will determine the actual spelling used by an attribute, as it incorporates both the syntax and naming of the attribute. When constructing an attribute AST node, the spelling index is computed based on attribute kind, scope (if it's a C++11 attribute), and name, then passed to Attr that will use the index to print itself. Thanks to Richard Smith for the idea and review. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173358 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
cfa88f893915ceb8ae4ce2f17c46c24a4d67502f |
|
12-Jan-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Remove useless 'llvm::' qualifier from names like StringRef and others that are brought into 'clang' namespace by clang/Basic/LLVM.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172323 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
975b1203baeb04b13cdaa017b7fdd384f5adcad0 |
|
07-Jan-2013 |
Alexander Kornienko <alexfh@google.com> |
Fixed a number of -Wcovered-switch-default diagnostics in tools/clang/include/clang/AST/AttrDump.inc git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171768 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
c3cd2b0d538e4db78f1bcbedd0085e2005ce5c51 |
|
07-Jan-2013 |
Alexander Kornienko <alexfh@google.com> |
Implement Attr dumping for -ast-dump. http://llvm-reviews.chandlerc.com/D234 Patch by Philip Craig! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171760 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
350aea7b794e4824f61d92f96140fbdcc0393588 |
|
15-Nov-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[PCH] Reading expressions from attributes should be done using ReadExpr(), not ReadExpr(). Also add a test case making sure the thread safety attributes work as expected when they come from a PCH. Fixes rdar://12584141 & http://llvm.org/PR13982 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168017 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
b43d87b0646aa04951056c7e0d1ab9a58eb09f66 |
|
12-Oct-2012 |
Sean Silva <silvas@purdue.edu> |
Remove pointless classof()'s. Updates to llvm/Support/Casting.h have rendered these classof()'s irrelevant. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165770 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
1ab46323089f9a836a510521aab55ff958b67150 |
|
10-Oct-2012 |
Sean Silva <silvas@purdue.edu> |
tblgen: Use LLVM-style RTTI in clang-tblgen git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165649 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
0dae729a69c4fccc38c97d5dd44f7b20bb20de1c |
|
16-Aug-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Don't constant-fold when pretty-printing alignment attribute. This fixes a potential crasher -- Context is sometimes a null reference (!!) here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162007 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
cc4748a0cb633050fdfd0d8ba8ff4f8187a9e844 |
|
19-Jul-2012 |
Michael Han <Michael.Han@autodesk.com> |
Remove an unused header git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160492 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
41de13b3b6f7bb92d8d7aca965472086eee463cf |
|
03-Jul-2012 |
NAKAMURA Takumi <geek4civic@gmail.com> |
clang/utils/TableGen/ClangAttrEmitter.cpp: Fix abuse of StringRef (from getValueAsString()). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159662 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
8571897a792fcbc26d86c70d6c3ef835e75af984 |
|
20-Jun-2012 |
Sean Hunt <scshunt@csclub.uwaterloo.ca> |
Fix a thinko and a stray debugging hunk in my attributes patch. Thanks to Jordan Rose and Richard Smith for catching these. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158826 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
8e083e71d48f7f4d6ef40c00531c2e14df745486 |
|
20-Jun-2012 |
Sean Hunt <scshunt@csclub.uwaterloo.ca> |
Reapply r158700 and fixup patches, minus one hunk that slipped through and caused a crash in an obscure case. On the plus side, it caused me to catch another bug by inspection. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158767 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
3532936f4f50c15fcec4d00f4cbb81a7a9dd9b7e |
|
19-Jun-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Revert r158700 and dependent patches r158716, r158717, and r158731. The original r158700 caused crashes in the gcc test suite, g++.abi/vtable3a.C among others. It also caused failures in the libc++ test suite. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158749 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
b5aa17c5a118d371db49eb0af8866829b1aff678 |
|
19-Jun-2012 |
Sean Hunt <scshunt@csclub.uwaterloo.ca> |
Remove redundant uses of SmallString git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158731 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
c20c4e79ae1957ec5a88d7653a0aeda24b67ae3a |
|
19-Jun-2012 |
Sean Hunt <scshunt@csclub.uwaterloo.ca> |
Stop abusing StringRef. Fixes the Windows build. I've also removed the duplicate check for PARSED_ATTR since it seems unnecessary, and would have made the code more complicated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158716 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
bfcb037a3479de4a453a8275c64ae441c22d43f9 |
|
19-Jun-2012 |
Sean Hunt <scshunt@csclub.uwaterloo.ca> |
Improve the specification of spellings in Attr.td. Note that this is mostly a structural patch that handles the change from the old spelling style to the new one. One consequence of this is that all AT_foo_bar enum values have changed to not be based off of the first spelling, but rather off of the class name, so they are now AT_FooBar and the like (a straw poll on IRC showed support for this). Apologies for code churn. Most attributes have GNU spellings as a temporary solution until everything else is sorted out (such as a Keyword spelling, which I intend to add if someone else doesn't beat me to it). This is definitely a WIP. I've also killed BaseCheckAttr since it was unused, and I had to go through every attribute anyway. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158700 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
93f95f2a2cbb6bb3d17bfb5fc74ce1cccea751b6 |
|
18-Jun-2012 |
Sean Hunt <scshunt@csclub.uwaterloo.ca> |
Handle C++11 attribute namespaces automatically. Now, as long as the 'Namespaces' variable is correct inside Attr.td, the generated code will correctly admit a C++11 attribute only when it has the appropriate namespace(s). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158661 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
3cc509b5ac0e99ef44c1bf8b57cd403b546abc3d |
|
13-Jun-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Make clang-tblgen backends functions instead of TableGenBackends. Get rid of a bunch of header files. TableGen output should be unaffected. Patch by Sean Silva! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158388 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
31c195ac0f3869e742d42f9d02b6cd33442fb630 |
|
15-May-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Fix our handling of visibility in explicit template instantiations. * Don't copy the visibility attribute during instantiations. We have to be able to distinguish struct HIDDEN foo {}; template<class T> DEFAULT void bar() {} template DEFAULT void bar<foo>(); from struct HIDDEN foo {}; template<class T> DEFAULT void bar() {} template void bar<foo>(); * If an instantiation has an attribute, it takes precedence over an attribute in the template. * With instantiation attributes handled with the above logic, we can now select the minimum visibility when looking at template arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156821 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
703d412d192397b6fa17c5d99a4c1389aa2be2f3 |
|
12-May-2012 |
Douglas Gregor <dgregor@apple.com> |
Teach the parser to deal with multiple spellings for the same attribute, rather than requiring multiple cases in consumers of this information. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156666 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
0c19b3c38e356058aeb2424d175eae232bf014d9 |
|
02-May-2012 |
Douglas Gregor <dgregor@apple.com> |
Replace the StringSwitch in AttributeList::getKind() with a TableGen-generated StringMatcher, for a 1.2% speedup in -fparse-only time in <rdar://problem/11004361>. Thanks to Benjamin for pointing me at StringMatcher! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156003 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
331d2ec7cd4c6b5e29cc61fcdc617bf708223cd4 |
|
02-May-2012 |
Douglas Gregor <dgregor@apple.com> |
Introduce the notion of 'ignored' attributes, so that all attributes we accept are not modeled somehow via Attr.td. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155998 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
3e7d31aa6050a2fb6cb35912793eb3f1b3a22030 |
|
02-May-2012 |
Douglas Gregor <dgregor@apple.com> |
Introduce the notion of an attribute that has no direct representation as an AST node, and fold a number of such attributes into Attr.td. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155995 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
d6268ffe94e5159ef41c61fe7f750c22546d3ef3 |
|
02-May-2012 |
Douglas Gregor <dgregor@apple.com> |
Revert my optimization to AttributeList::getKind() in r155987; Benjamin has suggested a better approach. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155989 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
b6dd6055a4fb8646805ba8f385aa7c99acd47817 |
|
02-May-2012 |
Douglas Gregor <dgregor@apple.com> |
Replace the StringSwitch in AttributeList::getKind(const IdentifierInfo *) with a static StringMap, improving -fsyntax-only performance by 1% for the example in <rdar://problem/11004361>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155987 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
e53ac8aea2d9e8bbb11191398ea3cc2edb2d171a |
|
07-Mar-2012 |
Michael Han <Michael.Han@autodesk.com> |
Refactor Clang sema attribute handling. This submission improves Clang sema handling by using Clang tablegen to generate common boilerplate code. As a start, it implements AttributeList enumerator generation and case statements for AttributeList::getKind. A new field "SemaHandler" is introduced in Attr.td and by default set to 1 as most of attributes in Attr.td have semantic checking in Sema. For a small number of attributes that don't appear in Sema, the value is set to 0. Also there are a small number of attributes that only appear in Sema but not in Attr.td. Currently these attributes are still hardcoded in Sema AttributeList. Reviewed by Delesley Hutchins. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152169 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
b880609697b3db5ae3df77387532f8b0cec89274 |
|
10-Feb-2012 |
Daniel Dunbar <daniel@zuster.org> |
Remove stray semi-colon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150231 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
5bbc385ad2d8e487edfbc2756eaf4fb0b920cfe4 |
|
06-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move instantiateTemplateAttribute into the sema namespace, make helpers static. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149864 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
23323e0253716ff03c95a00fb6903019daafe3aa |
|
20-Jan-2012 |
DeLesley Hutchins <delesley@google.com> |
Delayed template instantiation of late-parsed attributes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148595 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
7b9ff0c09025dcbe48ec7db71330e2066d1e1863 |
|
20-Jan-2012 |
DeLesley Hutchins <delesley@google.com> |
Instantiate dependent attributes when instantiating templates. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148592 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
eb666737bae8a5af8fb6b485cd15e2e62caa5caf |
|
13-Jan-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
CodeInit was replaced by StringInit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148095 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
1bea8807bcd2be10bf6309a3a848489434464ced |
|
19-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
Add support for pretty-printing attributes, from Richard Membarth! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145002 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|
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/utils/TableGen/ClangAttrEmitter.cpp
|
51d7777a21b9706d503496c650af06f80d278c1a |
|
06-Oct-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Add the Clang tblgen backends to Clang, and flip the switch to cause the build systems to use clang-tblgen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141291 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/utils/TableGen/ClangAttrEmitter.cpp
|