a4de17562d13d7a8188108243c4cfbd52f33229a |
|
04-Mar-2016 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r256229 http://b/26987366 (cherry picked from commit 87d948ecccffea9e9e37d0d053b246e2d6d6c47b) Change-Id: I10ca401a280e905253aafabad9118693a2f24ffb
/external/clang/include/clang/Basic/IdentifierTable.h
|
b6d6993e6e6d3daf4d9876794254d20a134e37c2 |
|
01-Jul-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r239765 Change-Id: I0393bcc952590a7226af8c4b58534a8ee5fd2d99
/external/clang/include/clang/Basic/IdentifierTable.h
|
3ea9e33ea25e0c2b12db56418ba3f994eb662c04 |
|
08-Apr-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r233350 Change-Id: I12d4823f10bc9e445b8b86e7721b71f98d1df442
/external/clang/include/clang/Basic/IdentifierTable.h
|
0e2c34f92f00628d48968dfea096d36381f494cb |
|
23-Mar-2015 |
Stephen Hines <srhines@google.com> |
Update aosp/master clang for rebase to r230699. Change-Id: I6a546ab3d4ae37119eebb735e102cca4f80ab520
/external/clang/include/clang/Basic/IdentifierTable.h
|
176edba5311f6eff0cad2631449885ddf4fbc9ea |
|
01-Dec-2014 |
Stephen Hines <srhines@google.com> |
Update aosp/master Clang for rebase to r222490. Change-Id: Ic557ac55e97fbf6ee08771c7b7c3594777b0aefd
/external/clang/include/clang/Basic/IdentifierTable.h
|
6bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89 |
|
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for 3.5 rebase (r209713). Change-Id: I8c9133b0f8f776dc915f270b60f94962e771bc83
/external/clang/include/clang/Basic/IdentifierTable.h
|
651f13cea278ec967336033dd032faef0e9fc2ec |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Updated to Clang 3.5a. Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
/external/clang/include/clang/Basic/IdentifierTable.h
|
9fcbd5e55a8029a0ca8a5d64457278ec716a8705 |
|
10-Oct-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator: For 'default' and 'shared' family of methods, infer their self's type as their result type. // rdar://15145218 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192377 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
a346eb1188419d3f1698092edfbd66890b74163c |
|
18-Sep-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator: For consistency, also infer 'instancetype' for known family of methods with related result type; such as 'init' methods. // rdar://14987948 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190956 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
d8e135876604c847d6e35be4d62a28e35cc776ee |
|
13-Sep-2013 |
James Dennett <jdennett@google.com> |
Documentation cleanup: Fixing \brief comments, migrating away from old style that duplicated the name of the entity being documented at the start of its comment, and other minor tidyups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190655 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
d0f2921c3211299a80c043a3251e6b34dddba061 |
|
29-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator: remove dead code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189592 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
8d3794e06a63578093bd71c3c2520bd01e6197a3 |
|
02-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator: Add another family of factory methods which can be migrated to instancetype. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187672 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
f647b69147c6e640bbccf501783fafc495bbefb2 |
|
02-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator: Fixes public buildbot failures, in my previous patch which was reverted in r187657 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187661 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
6803dbe1ec26539395951b75acbe595ad3e8cc8e |
|
02-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
revert patch I added in r187655. It still breaks public buildbot. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187657 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
906c7f78ee9026c1dc40e062667341f1dd194959 |
|
02-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migration. Check-in patch reverted in r187634. Also removed check for "NS" prefix for class name. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187655 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
cd683986e991f0e60afd6bc6f336cfc1fd844193 |
|
02-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Revert "ObjectiveC migrator. Migrate to instancetype return type for mehods with certain prefix selector matching their class names' suffix." This reverts commit r187626. It is breaking the bots. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187634 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
59944677b0576c19a08db92a6b45619077a00baa |
|
02-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator. Migrate to instancetype return type for mehods with certain prefix selector matching their class names' suffix. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187626 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
11638f7b922aa0182ab2028ec819001ed2fe8085 |
|
24-Jul-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjC migrator: more knobs toward doing instancetype migration. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187000 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
8d09216f13478b20f9d9088af22146e28c0cc4ce |
|
23-Jul-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjC migrator: Define family of methods which are candidate for migrating to 'instancetype'. wip. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186981 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
7044668ecb518496e463ea2dacae100d4badfd19 |
|
10-Jun-2013 |
Adrian Prantl <aprantl@apple.com> |
cleanup (address some more review comments for r183474): - reduce default buffer size to 64, which will still be large enough to hold any property names found in the wild. - get rid of the /*static*/ comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183697 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
80e8ea92d6dcaa05165dcb4730485db82dcd4629 |
|
08-Jun-2013 |
Adrian Prantl <aprantl@apple.com> |
address some comments on r183474: - factor the name construction part out from constructSetterName - rename constructSetterName to the more appropriate constructSetterSelector no functionality change intended. rdar://problem/14035789 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183582 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
87f9d81d0ab806dcf6ca50a0c068dcb2ba7f51b3 |
|
18-Apr-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[Modules] Use global index to improve typo correction performance Typo correction for an unqualified name needs to walk through all of the identifier tables of all modules. When we have a global index, just walk its identifier table only. rdar://13425732 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179730 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
7ca8e9160aca1616740e00954f742384a1622598 |
|
27-Mar-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Remove IdentifierInfo::setHadMacroDefinition() It's not used anymore. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178108 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
1b257afbae854c6817f26b7d61c4fed8ff7aebad |
|
11-Dec-2012 |
Douglas Gregor <dgregor@apple.com> |
Use @import rather than @__experimental_modules_import, since the latter is rather a mess to type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169919 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
30a2e16f6c27f888dd11eba6bbbae1e980078fcb |
|
04-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Sort #include lines for all files under include/... This is a simpler sort, entirely automatic with the help of llvm/utils/sort_includes.py -- no manual edits here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169238 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
18f236886b02e999bea6ceff3aa90951198007cb |
|
11-Nov-2012 |
Nico Weber <nicolasweber@gmx.de> |
Remove unneeded includes from IdentifierTable git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167694 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
3644d970095d9c638c658cfd17f8e19fc333aadc |
|
09-Oct-2012 |
Douglas Gregor <dgregor@apple.com> |
If a macro has been #undef'd in a precompiled header, we still need to write out the macro history for that macro. Similarly, we need to cope with reading a macro definition that has been #undef'd. Take advantage of this new ability so that global code-completion results can refer to #undef'd macros, rather than losing them entirely. For multiply defined/#undef'd macros, we will still get the wrong result, but it's better than getting no result. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165502 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
4d7e0ced7f16a04aabe2d8d91cbbb52fb1162810 |
|
25-Sep-2012 |
Alexander Kornienko <alexfh@google.com> |
Macro history (de-)serialization. Deserialization currently reads only the latest macro definition. Needs more work. Summary: Passes all tests (+ the new one with code completion), but needs a thorough review in part related to modules. Reviewers: doug.gregor Reviewed By: alexfh CC: cfe-commits, rsmith Differential Revision: http://llvm-reviews.chandlerc.com/D41 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164610 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
be2fa7ebf01259b63dc52fe46c8d101c18e72269 |
|
18-Sep-2012 |
Craig Topper <craig.topper@gmail.com> |
Mark unimplemented copy constructors and copy assignment operators with LLVM_DELETED_FUNCTION. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164102 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
f56faa01936b9cf909623d7f06e3c2569ca4a78e |
|
15-Sep-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Use LLVM_DELETED_FUNCTION in place of 'DO NOT IMPLEMENT' comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163983 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
af50aab0c317462129d73ae8000c6394c718598d |
|
03-Jul-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: * Primarily, added \brief to most of include/clang/Basic, instead of prefixing the comments with "DeclaredName - "; * Made some brief summaries significantly briefer; * Fixed up some erroneous uses of \see and \arg; * Fixed up some extraneous backslashes in \code...\endcode blocks; * Fixed up some typos/spelling errors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159616 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
2f7f5b1f5ff023cb8c4008ae53a12b09e3ea2622 |
|
02-Jul-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: reformatting/fixing up file comments so that they have \file and \brief markup and appear in Doxygen's summaries (and eventually at http://clang.llvm.org/doxygen/files.html). Fixed up another couple of minor glitches in the docs at the same time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159517 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
55bf69900afbd5dfb971c346b3712361e27e7b7f |
|
15-Jun-2012 |
James Dennett <jdennett@google.com> |
Ongoing documentation cleanup: * Added/tidied \brief summaries; * Escaped # as needed for Doxygen; * Drive-by: Fixed a rogue line > 80 columns. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158491 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
7ad5c996e9519ed4e9afd1f0166be1cd2be8415a |
|
05-May-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Use raw_ostream in TypePrinter and eliminate uses of temporary std::strings. Part of rdar://10796159 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156228 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
51603be62ba78adeb64246b222583dcde4b20b2a |
|
04-May-2012 |
Douglas Gregor <dgregor@apple.com> |
Synchronize the representations of DeclarationName and Selector so that bridging between the two is free. Saves ~4k of code size, although I don't see any measurable performance difference (unfortunately). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156187 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
f15e1143dcb39396a1b62e509e59cacaabbc4880 |
|
01-Mar-2012 |
Ted Kremenek <kremenek@apple.com> |
Moving tagging of '__experimental_modules_import' IdentifierInfo out of IndentifierTable::get() and into IdentifierTable's constructor. This gets a 0.7% reducing on lexing time for Cocoa.h, and about the same for PCH generation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151854 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
32ad2ee2618745ce3da51c2ae066ed5f21157c07 |
|
01-Mar-2012 |
Ted Kremenek <kremenek@apple.com> |
Change @import to @__experimental_modules_import. We are not ready to commit to a particular syntax for modules, and don't have time to push it forward in the near future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151841 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
8fe83e1df954d72c0f4ffc15d20a5222ec151c21 |
|
04-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move a method from IdentifierTable.h out of line and remove the SmallString include. Fix all the transitive include users. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149783 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
c13a34b690d2dc2a03c2fea75a0a1438636c19ce |
|
03-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Eliminate the uglified keyword __import_module__ for importing modules. This leaves us without an explicit syntax for importing modules in C/C++, because such a syntax needs to be discussed first. In Objective-C/Objective-C++, the @import syntax is used to import modules. Note that, under -fmodules, C/C++ programs can import modules via the #include mechanism when a module map is in place for that header. This allows us to work with modules in C/C++ without committing to a syntax. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147467 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
5948ae1021122164b22f74353bb7fe325a64f616 |
|
03-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Introduce a non-uglified syntax for module imports in Objective-C: @import identifier [. identifier]* ; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147452 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
eee242ff426bf79149f221798966e58688383c1e |
|
27-Oct-2011 |
Douglas Gregor <dgregor@apple.com> |
Make the loading of information attached to an IdentifierInfo from an AST file more lazy, so that we don't eagerly load that information for all known identifiers each time a new AST file is loaded. The eager reloading made some sense in the context of precompiled headers, since very few identifiers were defined before PCH load time. With modules, however, a huge amount of code can get parsed before we see an @import, so laziness becomes important here. The approach taken to make this information lazy is fairly simple: when we load a new AST file, we mark all of the existing identifiers as being out-of-date. Whenever we want to access information that may come from an AST (e.g., whether the identifier has a macro definition, or what top-level declarations have that name), we check the out-of-date bit and, if it's set, ask the AST reader to update the IdentifierInfo from the AST files. The update is a merge, and we now take care to merge declarations before/after imports with declarations from multiple imports. The results of this optimization are fairly dramatic. On a small application that brings in 14 non-trivial modules, this takes modules from being > 3x slower than a "perfect" PCH file down to 30% slower for a full rebuild. A partial rebuild (where the PCH file or modules can be re-used) is down to 7% slower. Making the PCH file just a little imperfect (e.g., adding two smallish modules used by a bunch of .m files that aren't in the PCH file) tips the scales in favor of the modules approach, with 24% faster partial rebuilds. This is just a first step; the lazy scheme could possibly be improved by adding versioning, so we don't search into modules we already searched. Moreover, we'll need similar lazy schemes for all of the other lookup data structures, such as DeclContexts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143100 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
98d86b98b3fd0bd9c546123b16fd9995509aaae1 |
|
11-Oct-2011 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add a -Wc++0x-compat warning for C++11 keywords used as identifiers when in C++98 mode. Only the first occurrence of each keyword will produce a warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141700 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
40847cfb58acc3cac7d68727df9455ac45f2e118 |
|
26-Sep-2011 |
David Blaikie <dblaikie@gmail.com> |
Rename DiagnosticInfo to Diagnostic as per issue 5397 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140493 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
b8db7cd9ac05c522855631670ec2e97255384f5a |
|
08-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Optimize the preprocessor's handling of the __import_module__ keyword. We now handle this keyword in HandleIdentifier, making a note for ourselves when we've seen the __import_module__ keyword so that the next lexed token can trigger a module import (if needed). This greatly simplifies Preprocessor::Lex(), and completely erases the 5.5% -Eonly slowdown Argiris noted when I originally implemented __import_module__. Big thanks to Argiris for noting that horrible regression! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139265 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
80cb6e69d9e85231588ae604e4bc2bc9a07389af |
|
29-Aug-2011 |
Nico Weber <nicolasweber@gmx.de> |
Warn on missing [super finalize] calls. This matches gcc's logic. Second half of PR10661. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138730 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
6be16fe900bdd1e5f677d23ae34fffead5bcfc77 |
|
27-Aug-2011 |
Douglas Gregor <dgregor@apple.com> |
Take an entirely different approach to handling the "parsing" of __import__ within the preprocessor, since the prior one foolishly assumed that Preprocessor::Lex() was re-entrant. We now handle __import__ at the top level (only), after macro expansion. This should fix the buildbot failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138704 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
16f6c03d67a1fbcce8a85eb3849fcf8234f99344 |
|
27-Aug-2011 |
Douglas Gregor <dgregor@apple.com> |
Silence a GCC warning git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138683 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
6aa52ec6b969faabf3764baf79d89810b8249a7e |
|
27-Aug-2011 |
Douglas Gregor <dgregor@apple.com> |
Introduce support for a simple module import declaration, which loads the named module. The syntax itself is intentionally hideous and will be replaced at some later point with something more palatable. For now, we're focusing on the semantics: - Module imports are handled first by the preprocessor (to get macro definitions) and then the same tokens are also handled by the parser (to get declarations). If both happen (as in normal compilation), the second one is redundant, because we currently have no way to hide macros or declarations when loading a module. Chris gets credit for this mad-but-workable scheme. - The Preprocessor now holds on to a reference to a module loader, which is responsible for loading named modules. CompilerInstance is the only important module loader: it now knows how to create and wire up an AST reader on demand to actually perform the module load. - We search for modules in the include path, using the module name with the suffix ".pcm" (precompiled module) for the file name. This is a temporary hack; we hope to improve the situation in the future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138679 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
730cfb18463d8c2f6d0e4d4380fdd67e4abe5d97 |
|
10-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: Using existing infrastructure for finding overridden methods to diagnose their type mismatch. This is a general solution for previous fixes for // rdar://6191214 and // rdar://9352731 and removes lots of duplicate code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137222 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
2112190efa85f50af84a3c4efe03c5bf69247ba2 |
|
08-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: diagnose protocol inconsistencies in following situation. When a class explicitly or implicitly (through inheritance) "conformsTo" two protocols which conflict (have methods which conflict). This patch fixes the previous patch where warnings were coming out in non-deterministic order. This is 2nd part of // rdar://6191214. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137055 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
270ba59c4111c9e9d040cf3b95f1f3e0a8440dff |
|
06-Aug-2011 |
Ted Kremenek <kremenek@apple.com> |
Revert 136984 and 136927. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136998 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
6a3bec320e5617922f1f15657dcdaeb22610ca23 |
|
04-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: diagnose protocol inconsistencies in following situation. When a class explicitly or implicitly (through inheritance) "conformsTo" two protocols which conflict (have methods which conflict). This is 2nd part of // rdar://6191214. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136927 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
d648d373d6c14dccadd3bef7b560f6a7296f949e |
|
27-Jul-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Silence gcc warning git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136258 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
5cee1195584fa8672253139c86e922daeda69b9e |
|
27-Jul-2011 |
Douglas Gregor <dgregor@apple.com> |
Add support for C++0x unicode string and character literals, from Craig Topper! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136210 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.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/include/clang/Basic/IdentifierTable.h
|
9670e179a67d868e171feac44fb8f9e2f108c5e8 |
|
06-Jul-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objc-arc: enforce performSelector rules in rejecting retaining selectors passed to it, and unknown selectors causing potential leak. // rdar://9659270 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134449 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
65aa6885818d4b4eea2e5a9d12085b2398148662 |
|
21-Jun-2011 |
Jay Foad <jay.foad@gmail.com> |
Make more use of llvm::StringRef in various APIs. In particular, don't use the deprecated forms of llvm::StringMap::GetOrCreateValue(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133515 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
926df6cfabf3eaa4afc990c097fa4619b76a9b57 |
|
11-Jun-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement Objective-C Related Result Type semantics. Related result types apply Cocoa conventions to the type of message sends and property accesses to Objective-C methods that are known to always return objects whose type is the same as the type of the receiving class (or a subclass thereof), such as +alloc and -init. This tightens up static type safety for Objective-C, so that we now diagnose mistakes like this: t.m:4:10: warning: incompatible pointer types initializing 'NSSet *' with an expression of type 'NSArray *' [-Wincompatible-pointer-types] NSSet *array = [[NSArray alloc] init]; ^ ~~~~~~~~~~~~~~~~~~~~~~ /System/Library/Frameworks/Foundation.framework/Headers/NSObject.h:72:1: note: instance method 'init' is assumed to return an instance of its receiver type ('NSArray *') - (id)init; ^ It also means that we get decent type inference when writing code in Objective-C++0x: auto array = [[NSMutableArray alloc] initWithObjects:@"one", @"two",nil]; // ^ now infers NSMutableArray* rather than id git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132868 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
28bbe4b8acc338476fe0825769b41fb32b423c72 |
|
28-Apr-2011 |
John Wiegley <johnw@boostpro.com> |
Parsing/AST support for Structured Exception Handling Patch authored by Sohail Somani. Provide parsing and AST support for Windows structured exception handling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
97f55d6ffd548d1777d790c84b358030682f9de2 |
|
19-Apr-2011 |
Ted Kremenek <kremenek@apple.com> |
Add SelectorTable::getTotalMemory() to allow clients to query how much memory is used by selectors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129728 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
fc8f0e14ad142ed811e90fbd9a30e419e301c717 |
|
15-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
fix a bunch of comment typos found by codespell. Patch by Luis Felipe Strano Moraes! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129559 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
85f3d76c0ecfdefcf83ea44a57b7a16119c8a045 |
|
02-Mar-2011 |
John McCall <rjmccall@apple.com> |
Move some of the logic about classifying Objective-C methods into conventional categories into Basic and AST. Update the self-init checker to use this logic; CFRefCountChecker is complicated enough that I didn't want to touch it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
813d8346529bf094eb2b249648906ba7fd226688 |
|
18-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Selector::getIdentifierInfoForSlot() can return NULL values, a fact that was ignored in a few places (most notably, code completion). Introduce Selector::getNameForSlot() for the common case where we only care about the name. Audit all uses of getIdentifierInfoForSlot(), switching many over to getNameForSlot(), fixing a few crashers. Fixed <rdar://problem/8939352>, a code-completion crasher. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125977 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
c81ca9852806e75972bbb246fa916152e8fba541 |
|
17-Feb-2011 |
Ted Kremenek <kremenek@apple.com> |
Bump up IdentifierInfo::ObjCOrBuiltinID to use 11 bits instead of 10. Fixes PR 9231. Apparently we can blow out the number of builtin IDs on FreeBSD with only 10 bits. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125713 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
403ba3522d1b1c97ae5fad81c1a2c4b3a754e1c1 |
|
19-Dec-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Add missing standard includes. Patch by Joerg Sonnenberger! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122194 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
295a2a617ac335f590e430ab7fcd98f8ce109251 |
|
30-Oct-2010 |
Douglas Gregor <dgregor@apple.com> |
Make the deserialization of macro definitions lazy, so that we can load identifiers without loading their corresponding macro definitions. This is likely to improve PCH performance slightly, and reduces deserialization stack depth considerably when using preprocessor metaprogramming. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117750 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
95f4292cc526c629fead321c7fcfd4fe0f3bc66e |
|
15-Oct-2010 |
Douglas Gregor <dgregor@apple.com> |
When performing typo correction, look through the set of known identifiers to determine good typo-correction candidates. Once we've identified those candidates, we perform name lookup on each of them and the consider the results. This optimization makes typo correction > 2x faster on a benchmark example using a single typo (NSstring) in a tiny file that includes Cocoa.h from a precompiled header, since we are deserializing far less information now during typo correction. There is a semantic change here, which is interesting. The presence of a similarly-named entity that is not visible can now affect typo correction. This is both good (you won't get weird corrections if the thing you wanted isn't in scope) and bad (you won't get good corrections if there is a similarly-named-but-completely-unrelated thing). Time will tell whether it was a good choice or not. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116528 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
d36adf553cd71df96fe869204482e0f0d68c6bbf |
|
16-Sep-2010 |
Douglas Gregor <dgregor@apple.com> |
Don't add two code-completion results for the same selector; it doesn't add any value. Instead, we'll just take the first method with that selector that we find and create a completion for it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114082 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
3c7f4134603d04b44f997b43c0a9def270f25386 |
|
19-Aug-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
More PCH -> AST renaming. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111472 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
f573084db5807f6003282bdf53ca9d58bab1ddc4 |
|
12-Aug-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add a comment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110913 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
646395bbcaa849c94bc2a3246c71d809ca719f01 |
|
12-Aug-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
-Make TokenID of IdentifierInfo read-only, remove setTokenID(). -There are 2 instances that change the TokenID for GNU libstdc++ 4.2 compatibility. To handler those cases introduce a RevertedTokenID bitfield, RevertTokenIDToIdentifier() and hasRevertedTokenIDToIdentifier() methods. Store the bitfield in PCH. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110868 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
ffaab3e2bb13991bb3357e80f14bcae3745b2347 |
|
30-Jul-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Make macro weirdness in chained PCH work. This required changing the way PCHReader and PCHWriter are initialized to correctly pick up all initializer. On the upside, this means that there is far less repetition in the dependent PCH now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
40844a8b5a89676fb61898d61ea4a7fa98eb9b6b |
|
17-Jun-2010 |
Gabor Greif <ggreif@gmail.com> |
use typedef to make hack more transparent and also appease gcc3.4 constness warning git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106215 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
6488292f5e204fed99bb43ab23b8342ddc03ce89 |
|
12-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Make IdentifierTable::get(StringRef) "primary" (no functionality change) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98347 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
811f4267aa1ebd727c31594b8ed94048e2c10ad6 |
|
12-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Add IdentifierTable::get() overload and start using it git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98343 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
2781deb126663ca1bd412044a1e66577585987b3 |
|
12-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Cleanup using StringRef git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98339 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
700030ebddb987936d4fee14d9412821d96e4840 |
|
12-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Switch over IdentifierInfoLookup to StringRef git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98337 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
06159e878569e5f39bf0e8f11b84ac3ad0970597 |
|
15-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
update to match LLVM API change: Remove isPod() from DenseMapInfo, splitting it out to its own isPodLike type trait. This is a generally useful type trait for more than just DenseMap, and we really care about whether something acts like a pod, not whether it really is a pod. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91422 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
3e518bda00d710754ca077cf9be8dd821e16a854 |
|
29-Nov-2009 |
Sean Hunt <rideau3@gmail.com> |
Add DeclarationName support for C++0x operator literals. They should now work as function names outside of templates - they'll probably cause some damage there as they're largely untested. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90064 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
01eb9b9683535d8a65c704ad2c545903409e2d36 |
|
18-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
PR5218: Replace IdentifierInfo::getName with StringRef version, now that clients are updated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84447 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
bfec576b1b8882b94670727cac2584b60962a607 |
|
18-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add FIXME. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84379 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
83885f7e3bf68d271e1e96726931814b836353a3 |
|
17-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add IdentifierTable::CreateIdentifierInfo(StringRef). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84361 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
7fe60650c1133ee74a3395cf1063690e274bb7ac |
|
17-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add IdentiferInfo::getNameStr() -> StringRef. Also, add getNameStart as a synonym for getName(). getName() is now deprecated, when all clients are updated then getNameStr() should be renamed to getName(). PR5218. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84306 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
c2ff3f85481fbfa79f56a444b5726d4ab394bf4d |
|
19-Sep-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Simplify code with a StringRef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82308 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.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/include/clang/Basic/IdentifierTable.h
|
beaaccd8e2a8748f77b66e2b330fb9136937e14c |
|
21-May-2009 |
Jay Foad <jay.foad@gmail.com> |
Use v.data() instead of &v[0] when SmallVector v might be empty. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72210 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
405bad07391494d2eb025f8222c256c66b56e5f8 |
|
27-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Some fixes for PCH (de-)serialization of Objective-C AST nodes: - Deal with the Receiver/ClassInfo shared storage in ObjCMessageExpr - Implement PCH support for ImplicitParamDecl - Fix the handling of the body of an ObjCMethodDecl - Several cast -> cast_or_null fixes - Make Selector::getIdentifierInfoForSlot work for 1-argument, NULL selectors. - Make Selector::getAsString() work with NULL selectors. - Fix the names of VisitObjCAtCatchStmt and VisitObjCAtFinallyStmt in the PCH reader and writer; these were never getting called. At this point, all of the pch-test tests pass for C and Objective-C. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70163 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
8c5a760b82e73ed90b560090772db97e2ae27b09 |
|
26-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Lazily load the controlling macros for all of the headers known in the PCH file. In the Cocoa-prefixed "Hello, World" benchmark, this takes us from reading 503 identifiers down to 37 and from 470 macros down to 4. It also results in an 8% performance improvement. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70094 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
5f8e3302242cf94de2f8e46d10167f57fcf747c3 |
|
25-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Revert my changes that try to avoid creating StringMap entries for identifiers. They don't yet work, but will inhibit future optimizations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70071 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
5da8161bdff1c81ab93b55ddd0fd45dc2123ef85 |
|
25-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Start implementing the PTH IdentifierInfo-saving trick in PCH, allocating IdentifierInfos with a pointer into the string data stored in the PCH file rather than having an entry in the identifier table's string map. However, we don't actually get these savings at the moment, because we go through the IdentifierTable when loading identifiers from the on-disk hash table. This commit is for record-keeping purposes only. I'll be reverting this change (and the PCH layout tweak that preceded it) because it appears that implementing this optimization will collide with another, future optimization to reduce the size of the on-disk hash table for identifiers. That optimization is likely to provide more benefit (with less voodoo). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70070 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
90cd1bb1baac2a0221f3642de0cbea3244b116e5 |
|
23-Apr-2009 |
Steve Naroff <snaroff@apple.com> |
Add PCH read/write support for Objective-C Selectors. Note: This support is non-lazy. Once we get "Cocoa.h" humming, we can optimize this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69884 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
370187c8a3e96517c943329f2511737a04b85450 |
|
22-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Remove the serialization code that predates precompiled headers. Future approaches to (de-)serializing ASTs will be based on the PCH infrastructure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69828 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
668c1a4fdcc56bdd050256b1688e116fe84b72db |
|
22-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Lazy deserialization of the declaration chains associated with identifiers from a precompiled header. This patch changes the primary name lookup method for entities within a precompiled header. Previously, we would load all of the names of declarations at translation unit scope into a large DenseMap (inside the TranslationUnitDecl's DeclContext), and then perform a special "last resort" lookup into this DeclContext when we knew there was a PCH file (see Sema::LookupName). Now, when we see an identifier named for the first time, we load all of the declarations with that name that are visible from the translation unit into the IdentifierInfo's chain of declarations. Thus, the explicit "look into the translation unit's DeclContext" code is gone, and Sema effectively uses the same IdentifierInfo-based name lookup mechanism whether we are using a PCH file or not. This approach should help PCH scale with the size of the input program rather than the size of the PCH file. The "Hello, World!" application with Carbon.h as a PCH file now loads 20% of the identifiers in the PCH file rather than 85% of the identifiers. 90% of the 20% of identifiers loaded are actually loaded when we deserialize the preprocessor state. The next step is to make the preprocessor load macros lazily, which should drastically reduce the number of types, declarations, and identifiers loaded for "Hello, World". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69737 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
3251ceb90b3fec68e86d6dcfa58836e20a7205c3 |
|
20-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Write the identifier table into the PCH file as an on-disk hash table that also includes the contents of the IdentifierInfo itself (the various fields and flags, along with the chain of identifiers visible at the top level that have that name). We don't make any use of the hash table yet, except that our identifier ID -> string mapping points into the hash table now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69625 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
1734317845d60307d474b5da8a8d33adbaf5e723 |
|
01-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Parsing, semantic analysis, and template instantiation for typename specifiers that terminate in a simple-template-id, e.g., typename MetaFun::template apply<T1, T2> Also, implement template instantiation for dependent nested-name-specifiers that involve unresolved identifiers, e.g., typename T::type::type git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68166 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
8af2c16571f3aade6d47ce81fa3857d01d375719 |
|
14-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Make Selector::getIdentifierInfo() private. I took a first attempt at this last week in: http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20090302/013580.html That patch caused the output of the diagnostics to change. Since 'DeclarationName' can already reason about Selectors and the Diagnostics logic reasons about DeclarationName, there is no additional code needed to get the diagnostics working by making Selector::getIdentifierInfo() private. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66992 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
fdc92b7877535e6264fe43cfbdc8f01e9b224f81 |
|
10-Mar-2009 |
Steve Naroff <snaroff@apple.com> |
Simplify SelectorTable::constructSetterName() usage... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66551 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
d43b333be82438102ff4c459b1fb5dfb764e5f0d |
|
10-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Reapply r66316, it got accidentally reverted in r66317. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66506 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
61f72cbd037e58f12cfe90cd442373f44092f030 |
|
09-Mar-2009 |
Steve Naroff <snaroff@apple.com> |
Implement property '.' notation on Factory/Class objects. Parser changes aren't very pretty:-( This fixes <rdar://problem/6496506> Implement class setter/getter for properties. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66465 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
d42ffbd22fc7eb61321f6a88173ee424991f01c6 |
|
07-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Revert my last couple patches until I can get them to not make the tests fail. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66317 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
ccb9bac3adb35a2dc78c1737e7b2dc6537a16393 |
|
07-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Cleanup/comment IdentifierInfo::get. - Shaves off a few instructions on x86_64. One notable change: this intentionally stops setting the II->Entry field of IdentifierInfo's retrieved by the ExternalLookup method. This is to maintain the invariant that .getName() has a constant value for any given IdentifierInfo. IRgen currently relies on this; which is quite questionable but will be cleaned up in time. Apologies for the lack of a test case; there really isn't a good way to make one. As IRgen will eventually be fixed to not rely on this, we can survive without one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66316 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
b9eb3afc9eafbb1c6815c8b63633065f370be6a5 |
|
07-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Teach Diagnostic about Selector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66314 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
150ec292a6e7995a711cedbe7a10a25d664a6c6b |
|
07-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Selector: (changes made after discussing this more with Steve Naroff) - Make Selector::getAsIdentifierInfo() private. Using IdentifierInfo* in Selector is an implementation detail that clients shouldn't think about. - Modify diagnostic emission in Sema::ProcessPropertyDecl to not use Selector::getAsIdentifierInfo() (which could crash when IdentifierInfo* is null) and instead use Selector::getAsString(). - Tidy up Selector::getAsString() implementation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66313 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
126c011f0f00e9221ce3cd5350ac75da2d2c239d |
|
07-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Remove false assertion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66306 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
9540717470121f8912c72f6d8ae4ab40a6e45c94 |
|
06-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Add null-check assertion in the constructor of Selector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66290 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
5f7d2284c4b2f08d155732454002e68dc40c33ef |
|
04-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
allocate MultiKeywordSelector's out of a bump pointer allocator instead of malloc. This has two advantages 1) no more leaking them, 2) fewer calls to malloc. This changes us from calling malloc 3685/1390/883/2974/1185 times respectively on 16/20/24/28/32 byte objects when parsing cocoa.h with pth and -disable-free to calling it 2816/1020/702/2903/1168 times each respectively. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66017 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
ea684e699ea84e61711e279f5fa7a1b9f3d46bc2 |
|
14-Feb-2009 |
Cedric Venet <cedric.venet@laposte.net> |
Fix the build on win32. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64556 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
7e3a004c6ed1fe87912203b9c5a113f8da89d261 |
|
11-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
PTH: Replace string identifier to persistent ID lookup with a hashtable. This is actually *slightly* slower than the binary search. Since this is algorithmically better, further performance tuning should be able to make this faster. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64326 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
a3824c6348794788094f8afa44dc1d2cf67ba440 |
|
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
simplify. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63708 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
2a3009a432bdcec59e6383d7b2b17494d6f91649 |
|
03-Feb-2009 |
Douglas Gregor <dgregor@apple.com> |
Semantic analysis, ASTs, and unqualified name lookup support for C++ using directives, from Piotr Rak! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63646 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
40b9b50b16e4728389bca78ded783d18d3adc1c9 |
|
28-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Update comment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63192 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
863c486fcb6162495a94fddf7ac8409de2638995 |
|
23-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
This is a follow-up to r62675: Refactor how the preprocessor changes a token from being an tok::identifier to a keyword (e.g. tok::kw_for). Instead of doing this in HandleIdentifier, hoist this common case out into the caller, so that every keyword doesn't have to go through HandleIdentifier. This drops time in HandleIdentifier from 1.25ms to .62ms, and speeds up clang -Eonly with PTH by about 1%. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62855 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
6a170eb3ea6d6319277becabef68eb1a26bf8766 |
|
21-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Add a bit to IdentifierInfo that acts as a simple predicate which tells us whether Preprocessor::HandleIdentifier needs to be called. Because this method is only rarely needed, this saves a call and a bunch of random checks. This drops the time in HandleIdentifier from 3.52ms to .98ms on cocoa.h on my machine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62675 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
ea9c26b3dbd74a1497f5609ae6e19a85f42b6073 |
|
21-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Fix: <rdar://problem/6510344> [pth] PTH slows down regular lexer considerably (when it has substantial work) Changes to IdentifierTable: - High-level summary: StringMap never owns IdentifierInfos. It just references them. - The string map now has StringMapEntry<IdentifierInfo*> instead of StringMapEntry<IdentifierInfo>. The IdentifierInfo object is allocated using the same bump pointer allocator as used by the StringMap. Changes to IdentifierInfo: - Added an extra pointer to point to the StringMapEntry<IdentifierInfo*> in the string map. This pointer will be null if the IdentifierInfo* is *only* used by the PTHLexer (that is it isn't in the StringMap). Algorithmic changes: - Non-PTH case: IdentifierInfo::get() will always consult the StringMap first to see if we have an IdentifierInfo object. If that StringMapEntry references a null pointer, we allocate a new one from the BumpPtrAllocator and update the reference in the StringMapEntry. - PTH case: We do the same lookup as with the non-PTH case, but if we don't get a hit in the StringMap we do a secondary lookup in the PTHManager for the IdentifierInfo. If we don't find an IdentifierInfo we create a new one as in the non-PTH case. If we do find and IdentifierInfo in the PTHManager, we update the StringMapEntry to refer to it so that the IdentifierInfo will be found on the next StringMap lookup. This way we only do a binary search in the PTH file at most once for a given IdentifierInfo. This greatly speeds things up for source files containing a non-trivial amount of code. Performance impact: While these changes do add some extra indirection in IdentifierTable to access an IdentifierInfo*, I saw speedups even in the non-PTH case as well. Non-PTH: For -fsyntax-only on Cocoa.h, we see a 6% speedup. PTH (with Cocoa.h in token cache): 11% speedup. I also did an experiment where we did -fsyntax-only on a source file including a large header and Cocoa.h, but the token cache did not contain the larger header. For this file, we were seeing a performance *regression* when using PTH of 3% over non-PTH. Now we are seeing a performance improvement of 9%! Tests: The serialization tests are now failing. I looked at this extensively, and I my belief is that this change is unmasking a bug rather than introducing a new one. I have disabled the serialization tests for now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62636 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
72b1b15ee88aac0a63e2c1dc53fe22f5ab297b20 |
|
15-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
IdentifierInfo: - IdentifierInfo can now (optionally) have its string data not be co-located with itself. This is for use with PTH. This aspect is a little gross, as getName() and getLength() now make assumptions about a possible alternate representation of IdentifierInfo. Perhaps we should make IdentifierInfo have virtual methods? IdentifierTable: - Added class "IdentifierInfoLookup" that can be used by IdentifierTable to perform "string -> IdentifierInfo" lookups using an auxilliary data structure. This is used by PTH. - Perform tests show that IdentifierTable::get() does not slow down because of the extra check for the IdentiferInfoLookup object (the regular StringMap lookup does enough work to mitigate the impact of an extra null pointer check). - The upshot is that now that some IdentifierInfo objects might be owned by the IdentiferInfoLookup object. This should be reviewed. PTH: - Modified PTHManager::GetIdentifierInfo to *not* insert entries in IdentifierTable's string map, and instead create IdentifierInfo objects on the fly when mapping from persistent IDs to IdentifierInfos. This saves a ton of work with string copies, hashing, and StringMap lookup and resizing. This change was motivated because when processing source files in the PTH cache we don't need to do any string -> IdentifierInfo lookups. - PTHManager now subclasses IdentifierInfoLookup, allowing clients of IdentifierTable to transparently use IdentifierInfo objects managed by the PTH file. PTHManager resolves "string -> IdentifierInfo" queries by doing a binary search over a sorted table of identifier strings in the PTH file (the exact algorithm we use can be changed as needed). These changes lead to the following performance changes when using PTH on Cocoa.h: - fsyntax-only: 10% performance improvement - Eonly: 30% performance improvement git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62273 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
077bf5e2f48acfa9e7d69429b6e4ba86ea14896d |
|
24-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Rename Selector::getName() to Selector::getAsString(), and add a new NamedDecl::getAsString() method. Change uses of Selector::getName() to just pass in a Selector where possible (e.g. to diagnostics) instead of going through an std::string. This also adds new formatters for objcinstance and objcclass as described in the dox. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59933 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
92e62b02226410bcad8584541b8f1ff4d35ebab9 |
|
20-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Rename IdentifierInfo::isName to ::isStr. Use a nifty trick from Sebastian to enforce that a literal string is passed in, and use this to avoid having to call strlen on it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59706 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
845222ccd992282bf74b2fca53e7c3b84a81c098 |
|
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
add a new helper method. It is unclear to me why this doesn't work, but GCC won't match it: template<std::size_t StrLen> bool isName(const char Str[StrLen]) const { return getLength() == StrLen-1 && !memcmp(getName(), Str, StrLen-1); } git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59605 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
e94ca9e4371c022329270436b3dd77adc4ddfa8f |
|
18-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Extend DeclarationName to support C++ overloaded operators, e.g., operator+, directly, using the same mechanism as all other special names. Removed the "special" identifiers for the overloaded operators from the identifier table and IdentifierInfo data structure. IdentifierInfo is back to representing only real identifiers. Added a new Action, ActOnOperatorFunctionIdExpr, that builds an expression from an parsed operator-function-id (e.g., "operator +"). ActOnIdentifierExpr used to do this job, but operator-function-ids are no longer represented by IdentifierInfo's. Extended Declarator to store overloaded operator names. Sema::GetNameForDeclarator now knows how to turn the operator name into a DeclarationName for the overloaded operator. Except for (perhaps) consolidating the functionality of ActOnIdentifier, ActOnOperatorFunctionIdExpr, and ActOnConversionFunctionExpr into a common routine that builds an appropriate DeclRefExpr by looking up a DeclarationName, all of the work on normalizing declaration names should be complete with this commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59526 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
10bd36882406cdf4805e35add1ce2f11ab9ae152 |
|
17-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Eliminate all of the placeholder identifiers used for constructors, destructors, and conversion functions. The placeholders were used to work around the fact that the parser and some of Sema really wanted declarators to have simple identifiers; now, the code that deals with declarators will use DeclarationNames. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59469 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
2e1cd4264d363ca869bf37ef160902f211d21b8c |
|
17-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Introduction the DeclarationName class, as a single, general method of representing the names of declarations in the C family of languages. DeclarationName is used in NamedDecl to store the name of the declaration (naturally), and ObjCMethodDecl is now a NamedDecl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59441 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
7d7e6727a5de032c86dcb58ae734e7c1603c26e6 |
|
13-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Don't build identifiers for C++ constructors, destructors, or conversion functions. Instead, we just use a placeholder identifier for these (e.g., "<constructor>") and override NamedDecl::getName() to provide a human-readable name. This is one potential solution to the problem; another solution would be to replace the use of IdentifierInfo* in NamedDecl with a different class that deals with identifiers better. I'm also prototyping that to see how it compares, but this commit is better than what we had previously. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59193 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
bf8cb361038c71a76f8ffa0f9986cebc43732e87 |
|
07-Nov-2008 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Shut off an unsigned/signed comparison warning for GCC. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58842 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
1cd1b1e987f5e2f060d7972b13d83239b36d77d6 |
|
06-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Parsing, ASTs, and semantic analysis for the declaration of overloaded operators in C++. Overloaded operators can be called directly via their operator-function-ids, e.g., "operator+(foo, bar)", but we don't yet implement the semantics of operator overloading to handle, e.g., "foo + bar". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
5142af38ed0dd2f592cbfa00fa6e2e14dd6cc516 |
|
06-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Reclaim some bits in IdentifierInfo, for later use as overloaded operator names. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58806 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
147d26f281409748efcd917292e571794c439d1c |
|
02-Oct-2008 |
Daniel Dunbar <daniel@zuster.org> |
Unbreak build: claim an extra bit for BuiltinID. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56952 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
dee8ecc93825062eb441bfeb7a338d3f2c5ea3f0 |
|
10-Aug-2008 |
Nico Weber <nicolasweber@gmx.de> |
fix spello git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54594 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
7caeabd868d46cf4e68478c6e9136dae4e735d21 |
|
22-Jul-2008 |
Chris Lattner <sabre@nondot.org> |
minor cleanup to the actions interface to pass around SmallVectorImpl instead of a specific smallvector size. Fix protocol lists to pass down proper location info, so we get diagnostics like this: t.m:3:35: error: cannot find protocol definition for 'NSCopying', referenced by 'NSWhatever' @interface NSWhatever : NSObject <NSCopying> ^ instead of this: t.m:3:44: error: cannot find protocol definition for 'NSCopying', referenced by 'NSWhatever' @interface NSWhatever : NSObject <NSCopying> ^ Add a new IdentifierLocPair typedef which is just a pair<IdentifierInfo*, SourceLocation> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53883 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
c65b8a3e1f8da6117a2b9ba57afe8b7a2ec887cc |
|
01-May-2008 |
Ted Kremenek <kremenek@apple.com> |
Added default ctor to Selector. REASON: Without a default ctor we cannot do "new Selector[xxx]" and similar operations with ADTs that need to default constructor selectors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50534 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
97b7f26a92d87e514530a5b652460190ce48c974 |
|
16-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Remove uses of "Selector&" and "const Selector&", since Selector is just an immutable smart pointer (we don't need to pass references, just pass Selector). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49773 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
42e6737f2efb113563140ad794c21c7709250402 |
|
05-Mar-2008 |
Chris Lattner <sabre@nondot.org> |
Remove the first layer of support for "portability" warnings. This is theoretically useful, but not useful in practice. It adds a bunch of complexity, and not much value. It's best to nuke it. One big advantage is that it means the target interfaces will soon lose their SLoc arguments and target queries can never emit diagnostics anymore (yay). Removing this also simplifies some of the core preprocessor which should make it slightly faster. Ted, I didn't simplify TripleProcessor, which can now have at most one triple, and can probably just be removed. Please poke at it when you have time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@47930 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
ca63fa00786e51c207c829f4182f11a6c6b552be |
|
24-Feb-2008 |
Ted Kremenek <kremenek@apple.com> |
Two more Windows-related fixes: - More enum signeness bitfield fixes (MSVC treats enums as signed). - Fixed in Lex/HeaderSearch.cpp an unsafe copy between two HeaderSearch::PerFileInfo entries in a common vector. The copy involved two calls to getFileInfo() within the assignment; these calls could have side-effects that enlarged the internal vector, and with MSVC this would invalidate one of the values in the assignment. Patch by Argiris Kirtzidis! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@47536 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
8e748ab52395328f2905855b295a22e33dc800b2 |
|
23-Feb-2008 |
Ted Kremenek <kremenek@apple.com> |
Change encoding of TokenKind in IdentifierTable to be of type "unsigned" instead of TokenKind because of signedness issues with MSVC and enums. Patch from Argiris Kirtzidis. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@47515 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
0bc735ffcfb223c0186419547abaa5c84482663e |
|
29-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Don't attribute in file headers anymore. See llvmdev for the discussion of this change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45410 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
bdbb285aed1bb1e20090a16929f4c1da33d2d5c5 |
|
30-Nov-2007 |
Ted Kremenek <kremenek@apple.com> |
Implemented serialization of SelectorTable and Selectors. Modified serialization of IdentifierTable to self-register itself with the Deserializer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44471 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
0f84c0059cec39fd1c73ac05bc2864dca664e7f4 |
|
13-Nov-2007 |
Ted Kremenek <kremenek@apple.com> |
Renamed all serialization "Materialize" methods to "Create" to conform with the new serialization API. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44035 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
93a9ab4bdc607b12fdcf6aa5cf56950dd45ae0f5 |
|
08-Nov-2007 |
Ted Kremenek <kremenek@apple.com> |
Rewrote serialization of IdentifierInfo and IdentifierTable to use methods Emit and Materialize/Read instead of using specializations of SerializeTrait<>. The resulting code is much cleaner. We are also setting the stage so that only the parts of the IdentifierTable that are ever referenced within the ASTs are serialized, and not the whole table. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43904 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
a2bfb91c55a9baeb368dec97cd5971484b1d0656 |
|
24-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Modified current clients of Bitcode-Object serialization to use the new split-header file configuration (Serialize.h and Deserialize.h) now in place in the core LLVM repository. Removed unneeded SerializeTrait specializations for enums in TokenKinds.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43306 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
79016528d20b6e95d94baefdee2d8f9b764e38f7 |
|
24-Oct-2007 |
Hartmut Kaiser <hartmut.kaiser@gmail.com> |
Silenced a VC++ warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43277 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
c637e6b7afeebc6b4f751e4373715b6a8ea77272 |
|
24-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Implemented serialization for IdentifierInfo and IdentifierTable. Updated serialization test code in the driver to test serialization of these types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43266 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
7b66000bdfc2684351fb03208e672f23012ed569 |
|
17-Oct-2007 |
Hartmut Kaiser <hartmut.kaiser@gmail.com> |
Updated VC++ build system. Silenced some VC++ warnings. Had to rephrase a partial specialization of the IntrospectionTrait struct in SerializationTest.cpp, please review. Added a compiler specific workaround in IdentifierTable.h. Is that the way to fix this kind of issues? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43074 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
bfa82c4c23ce96fdcf357a8f7ef70a9b71b69144 |
|
17-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Started work on clang object serialization. Experimental serialization logic as well as driver code is now in Driver/SerializationTest.cpp. The status of this code is that it should be used by no clients. Added --test-pickling option to driver to run the serialization code. Modified IdentifierInfo and IdentifierTable to have friend classes that permit object serialization. Such friendship may not be needed in the final design. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43052 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
2d29581d2b7ad5ec5df6ff3947fb0711339361a4 |
|
08-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
add a comment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@42771 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|
c7229c338c21ef26b01ef3ecf9eec4fd373fa9ec |
|
07-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
move IdentifierTable.h from liblex to libbasic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@42730 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang/Basic/IdentifierTable.h
|