- Jan 16, 2009
-
-
Chris Lattner authored
llvm-svn: 62315
-
Chris Lattner authored
Slightly speed up sema of numbers like '1' by going directly to TargetInfo instead of through ASTContext. llvm-svn: 62314
-
Chris Lattner authored
llvm-svn: 62313
-
Chris Lattner authored
llvm-svn: 62311
-
Chris Lattner authored
the "physical" location of tokens, refer to the "spelling" location. This is more concrete and useful, tokens aren't really physical objects! llvm-svn: 62309
-
Douglas Gregor authored
llvm-svn: 62306
-
Zhongxing Xu authored
No functionality change. llvm-svn: 62303
-
Zhongxing Xu authored
No functionality change. llvm-svn: 62300
-
Daniel Dunbar authored
llvm-svn: 62295
-
Fariborz Jahanian authored
llvm-svn: 62292
-
Zhongxing Xu authored
Sema::ActOnFunctionDeclarator(). No functionality change. llvm-svn: 62290
-
Fariborz Jahanian authored
llvm-svn: 62289
-
Douglas Gregor authored
llvm-svn: 62287
-
- Jan 15, 2009
-
-
Nuno Lopes authored
init of static vars still not working. I'll get back to it tomorrow or so llvm-svn: 62278
-
Ted Kremenek authored
llvm-svn: 62277
-
Chris Lattner authored
enum E { A = 1U, B }; Don't make an implicit cast expr of null for B. llvm-svn: 62274
-
Ted Kremenek authored
- 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 llvm-svn: 62273
-
Daniel Dunbar authored
and uninitialized use options. llvm-svn: 62270
-
Daniel Dunbar authored
llvm-svn: 62268
-
Nuno Lopes authored
llvm-svn: 62261
-
Seo Sanghyeon authored
llvm-svn: 62255
-
Douglas Gregor authored
llvm-svn: 62250
-
Ted Kremenek authored
lexical order of the corresponding identifier strings. This will be used for a forthcoming optimization. This slows down PTH generation time by 7%. We can revert this change if the optimization proves to not be valuable. llvm-svn: 62248
-
Douglas Gregor authored
llvm-svn: 62247
-
- Jan 14, 2009
-
-
Douglas Gregor authored
This change refactors and cleans up our handling of name lookup with LookupDecl. There are several aspects to this refactoring: - The criteria for name lookup is now encapsulated into the class LookupCriteria, which replaces the hideous set of boolean values that LookupDecl currently has. - The results of name lookup are returned in a new class LookupResult, which can lazily build OverloadedFunctionDecls for overloaded function sets (and, eventually, eliminate the need to allocate member for OverloadedFunctionDecls) and contains a placeholder for handling ambiguous name lookup (for C++). - The primary entry points for name lookup are now LookupName (for unqualified name lookup) and LookupQualifiedName (for qualified name lookup). There is also a convenience function LookupParsedName that handles qualified/unqualified name lookup when given a scope specifier. Together, these routines are meant to gradually replace the kludgy LookupDecl, but this won't happen until after we have base class lookup (which forces us to cope with ambiguities). - Documented the heck out of name lookup. Experimenting a little with using Doxygen's member groups to make some sense of the Sema class. Feedback welcome! - Fixes some lingering issues with name lookup for nested-name-specifiers, which now goes through LookupName/LookupQualifiedName. llvm-svn: 62245
-
Fariborz Jahanian authored
explicit return type on block literals. llvm-svn: 62240
-
Douglas Gregor authored
Small cleanup in the handling of user-defined conversions. Also, implement an optimization when constructing a call. We avoid recomputing implicit conversion sequences and instead use those conversion sequences that we computed as part of overload resolution. llvm-svn: 62231
-
Steve Naroff authored
llvm-svn: 62205
-
Ted Kremenek authored
FunctionDecl::setParams() now uses the allocator associated with ASTContext to allocate the array of ParmVarDecl*'s. llvm-svn: 62203
-
Fariborz Jahanian authored
objects as an objective-c object. llvm-svn: 62197
-
Ted Kremenek authored
- Use canonical FileID when using getSpelling() caching. This addresses some cache misses we were seeing with -fsyntax-only on Cocoa.h - Added Preprocessor::getPhysicalCharacterAt() utility method for clients to grab the first character at a specified sourcelocation. This uses the PTH spelling cache. - Modified Sema::ActOnNumericConstant() to use Preprocessor::getPhysicalCharacterAt() instead of SourceManager::getCharacterData() (to get PTH hits). These changes cause -fsyntax-only to not page in any sources from Cocoa.h. We see a speedup of 27%. llvm-svn: 62193
-
Douglas Gregor authored
llvm-svn: 62192
-
- Jan 13, 2009
-
-
Ted Kremenek authored
llvm-svn: 62187
-
Ted Kremenek authored
PTH: Fix remaining cases where the spelling cache in the PTH file was being missed when it shouldn't. This shaves another 7% off PTH time for -Eonly on Cocoa.h llvm-svn: 62186
-
Douglas Gregor authored
Turn off some Destroy calls that are currenly causing double-destruction of ScopedDecls. We will re-enable this later, when we have time to fully solve the ownership issue. llvm-svn: 62175
-
Anders Carlsson authored
llvm-svn: 62170
-
Anders Carlsson authored
llvm-svn: 62148
-
Douglas Gregor authored
llvm-svn: 62147
-
Zhongxing Xu authored
llvm-svn: 62142
-
Daniel Dunbar authored
llvm-svn: 62139
-