summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend
Commit message (Collapse)AuthorAgeFilesLines
...
* isMemberSpecialization -> setMemberSpecialization.Argyrios Kyrtzidis2010-07-091-1/+1
| | | | llvm-svn: 108015
* When given the -chained-pch option and a previous PCH file, have the ↵Sebastian Redl2010-07-092-12/+21
| | | | | | PCHWriter emit a CHAINED_METADATA record instead of METADATA, and write a link to the previous file there. llvm-svn: 108014
* Correctly initialize Reader to null.Sebastian Redl2010-07-091-1/+1
| | | | llvm-svn: 107994
* Really respect -chained-pch.Sebastian Redl2010-07-091-7/+5
| | | | llvm-svn: 107993
* Introduce -f{no-}spell-checking options to enable/disableDouglas Gregor2010-07-093-0/+3
| | | | | | | spell-checking. By default, spell-checking is enabled for Clang (obviously) but disabled in CIndex for performance reasons. llvm-svn: 107992
* Add a frontend option -chained-pch and don't pass an active PCH reader to ↵Sebastian Redl2010-07-092-1/+6
| | | | | | the PCH writer if it is not set, preventing creation of chained PCH files. Since the reader is so far unused, effectively no functionality change. llvm-svn: 107936
* Some preparatory work for chained PCH. No functionality change.Sebastian Redl2010-07-084-6/+15
| | | | llvm-svn: 107915
* Introduce PCHReader::GetTranslationUnitDecl() and use it instead of ↵Argyrios Kyrtzidis2010-07-081-1/+8
| | | | | | | | | ReadDeclRecord when initializing. ReadDeclRecord would hit assertion if the translation unit declaration was already loaded during IdentifierInfo initialization. llvm-svn: 107885
* Support TemplateTemplateParmDecl for PCH.Argyrios Kyrtzidis2010-07-082-4/+19
| | | | llvm-svn: 107884
* For TagType and TemplateSpecializationType, isDependent calculation may be ↵Argyrios Kyrtzidis2010-07-082-10/+24
| | | | | | | | | invalid because some decls that the calculation is using may still be initializing. Thus, store the isDependent flag to PCH and restore directly to Type. llvm-svn: 107873
* Read/write the C++ parts of DeclRefExpr and MemberExpr for PCH.Argyrios Kyrtzidis2010-07-082-16/+98
| | | | llvm-svn: 107872
* Fix reading of UsingDecl from PCH.Argyrios Kyrtzidis2010-07-081-1/+3
| | | | llvm-svn: 107871
* Reinstate the fix for PR7556. A silly use of isTrivial() wasDouglas Gregor2010-07-082-7/+7
| | | | | | suppressing copies of objects with trivial copy constructors. llvm-svn: 107857
* Revert r107828 and r107827, the fix for PR7556, which seems to beDouglas Gregor2010-07-072-7/+7
| | | | | | breaking bootstrap on Linux. llvm-svn: 107837
* Rename CXXZeroInitValueExpr to CXXScalarValueInitExpr, to reflect itsDouglas Gregor2010-07-072-7/+7
| | | | | | newly-narrowed scope. No functionality change. llvm-svn: 107828
* add driver support for minix, patch by Kees van ReeuwijkChris Lattner2010-07-071-0/+4
| | | | | | from PR7583 llvm-svn: 107788
* Fix broken reading of NestedNameSpecifiers from PCH.Argyrios Kyrtzidis2010-07-071-1/+1
| | | | llvm-svn: 107784
* Delay passing InterestingDecls to the Consumer until when we know we are not ↵Argyrios Kyrtzidis2010-07-072-16/+22
| | | | | | | | in recursive loading and the declarations are fully initialized. llvm-svn: 107783
* Simplify code. FunctionDecl and ObjCMethodDecl have some common interfaces.Argyrios Kyrtzidis2010-07-071-15/+4
| | | | llvm-svn: 107769
* Added a path-sensitive idempotent operation checker ↵Tom Care2010-07-061-0/+4
| | | | | | | | | | | | | | | | | | | (-analyzer-idempotent-operation). Finds idempotent and/or tautological operations in a path sensitive context, flagging operations that have no effect or a predictable effect. Example: { int a = 1; int b = 5; int c = b / a; // a is 1 on all paths } - New IdempotentOperationChecker class - Moved recursive Stmt functions in r107675 to IdempotentOperationChecker - Minor refactoring of SVal to allow checking for any integer - Added command line option for check - Added basic test cases llvm-svn: 107706
* Pacify versions of gcc that think these variables may be usedDuncan Sands2010-07-061-3/+3
| | | | | | | uninitialized (which doesn't seem to be the case), by giving them arbitrary initial values. llvm-svn: 107679
* Read/write function template specializations for PCH, properly this time.Argyrios Kyrtzidis2010-07-062-6/+12
| | | | llvm-svn: 107665
* Add to PCH missing Sema information about VTable uses and dynamic classes.Argyrios Kyrtzidis2010-07-062-0/+58
| | | | llvm-svn: 107664
* Allow a CXXRecordDecl to get a DefinitionData pointer even when its owner is ↵Argyrios Kyrtzidis2010-07-062-87/+118
| | | | | | still initializing. llvm-svn: 107663
* Read/write instantiated-from-member of EnumDecl for PCH.Argyrios Kyrtzidis2010-07-062-2/+3
| | | | llvm-svn: 107662
* Read/write the identifier namespace in PCH for decls that may modify it.Argyrios Kyrtzidis2010-07-052-6/+13
| | | | | | We can now use a PCH'ed <map>. llvm-svn: 107617
* Read/write some source location for PCH.Argyrios Kyrtzidis2010-07-052-1/+9
| | | | llvm-svn: 107616
* Fix a regression of a previous commit of mine (rdar://8158953).Argyrios Kyrtzidis2010-07-041-2/+2
| | | | | | | Some of the invariant checks for creating Record/Enum types don't hold true during PCH reading. Introduce more suitable ASTContext::getRecordType() and getEnumType(). llvm-svn: 107598
* Read/write more information of ASTContext for PCH. Overriden methods and ↵Argyrios Kyrtzidis2010-07-042-0/+28
| | | | | | instantiated-from information. llvm-svn: 107597
* Don't try to install the __[u]int128_t identifier if it is already installed ↵Argyrios Kyrtzidis2010-07-042-0/+4
| | | | | | | | | | by PCHReader. Currently, adding it to visible decls of a PCH'ed translation unit has no effect because adding visible decls before deserialization has no effect (the decls won't be visible). This will be fixed in a future commit; then it will force deserialization of visible decls, so avoid pointlessly installing it. llvm-svn: 107595
* Write/read ParmVarDecl's UninstantiatedDefaultArg for PCH.Argyrios Kyrtzidis2010-07-042-1/+8
| | | | llvm-svn: 107594
* Read/write specialization info of static data members for PCH.Argyrios Kyrtzidis2010-07-042-0/+20
| | | | llvm-svn: 107593
* When setting the anonymous namespace at PCH reading, it may still be ↵Argyrios Kyrtzidis2010-07-031-6/+2
| | | | | | | | initializing so avoid the invariant checks at NamespaceDecl::setAnonymousNamespace(). llvm-svn: 107566
* Lazily declare default constructors. We now delay the construction ofDouglas Gregor2010-07-032-0/+2
| | | | | | | | | | | | | | | | | | declarations for implicit default constructors, copy constructors, copy assignment operators, and destructors. On a "simple" translation unit that includes a bunch of C++ standard library headers, we generate relatively few of these implicit declarations now: 4/159 implicit default constructors created 18/236 implicit copy constructors created 70/241 implicit copy assignment operators created 0/173 implicit destructors created And, on this translation unit, this optimization doesn't really provide any benefit. I'll do some more performance measurements soon, but this completes the implementation work for <rdar://problem/8151045>. llvm-svn: 107551
* Lazily declare implicit copy constructors.Douglas Gregor2010-07-022-0/+2
| | | | llvm-svn: 107543
* Read/write CastExpr's CXXBaseSpecifierArray for PCH.Argyrios Kyrtzidis2010-07-026-25/+36
| | | | llvm-svn: 107542
* Fix broken PCH support for CXXDefaultArgExpr.Argyrios Kyrtzidis2010-07-022-12/+20
| | | | llvm-svn: 107541
* Lazily declare copy-assignment operators.Douglas Gregor2010-07-022-0/+2
| | | | llvm-svn: 107521
* Lazily declare the implicitly-declared destructor in a C++ class.Douglas Gregor2010-07-022-0/+2
| | | | llvm-svn: 107510
* Handle CXXConstructorDecl, CXXDestructorDecl, and CXXConversionDecl for PCH.Argyrios Kyrtzidis2010-07-022-17/+126
| | | | | | <vector> header can be used correctly through PCH now. llvm-svn: 107483
* Fix reading FunctionDecls from PCH.Argyrios Kyrtzidis2010-07-022-45/+47
| | | | llvm-svn: 107477
* Fix reading ClassTemplateDecl's ClassTemplateSpecializationDecls and ↵Argyrios Kyrtzidis2010-07-022-11/+23
| | | | | | | | ClassTemplatePartialSpecializationDecls. Store/read also their template arguments because they may be initializing and not be able to provide them. llvm-svn: 107476
* Fully read/write CXXRecordDecl for PCH.Argyrios Kyrtzidis2010-07-024-43/+109
| | | | llvm-svn: 107475
* Fix reading of DependentNameType.Argyrios Kyrtzidis2010-07-022-1/+5
| | | | llvm-svn: 107474
* Allow reading of InjectedClassNameType from PCH even when its decl is ↵Argyrios Kyrtzidis2010-07-021-1/+4
| | | | | | currently initializing. llvm-svn: 107473
* Fix broken reading of member pointer from PCH.Argyrios Kyrtzidis2010-07-021-1/+1
| | | | llvm-svn: 107472
* - Allow a typedef type to be read from PCH even if its decl is currently ↵Argyrios Kyrtzidis2010-07-022-7/+17
| | | | | | | | initializing. - Fix creation of TemplateSpecializationType. llvm-svn: 107471
* Fix broken reading of "#lines" from PCH.Argyrios Kyrtzidis2010-07-021-2/+3
| | | | llvm-svn: 107470
* Generally types expect an initialized TypeDecl; its safer and less ↵Argyrios Kyrtzidis2010-07-022-16/+16
| | | | | | complicated to delay PCH reading the type of a TypeDecl. llvm-svn: 107469
* Add some side-effect free Create methods for TypeDecl subclasses and use ↵Argyrios Kyrtzidis2010-07-021-8/+7
| | | | | | them for PCH reading. llvm-svn: 107468
OpenPOWER on IntegriCloud