| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 111279
|
| |
|
|
|
|
| |
Radar 8308053.
llvm-svn: 111275
|
| |
|
|
| |
llvm-svn: 111265
|
| |
|
|
|
|
| |
contain all the module code in the future. Update the Makefiles, CMake projects and the Xcode project. I hope I did everything right for Xcode. No functionality change.
llvm-svn: 111258
|
| |
|
|
|
|
| |
chained PCH to overwrite declarations from earlier PCH files in dependent ones. Tell Sema to note when it changes AST nodes so that they have to be reserialized. Finally, the ObjCProtocolDecls created in forward decls, like the ObjCInterfaceDecls in @class forward decls, are not lexically part of the decl context; only the definition is.
llvm-svn: 110989
|
| |
|
|
| |
llvm-svn: 110912
|
| |
|
|
| |
llvm-svn: 110860
|
| |
|
|
|
|
|
|
| |
and create separate decl nodes for forward declarations and the
definition," which appears to be causing significant Objective-C
breakage.
llvm-svn: 110803
|
| |
|
|
|
|
|
|
|
|
| |
forward declarations and the definition.
- Eagerly create ObjCInterfaceTypes for declarations.
- The two above changes lead to a 0.5% increase in memory use and no speed regression when parsing Cocoa.h. On the other hand, now chained PCH works when there's a forward declaration in one PCH and the interface definition in another.
- Add HandleInterestingDecl to ASTConsumer. PCHReader passes the "interesting" decls it finds to this function instead of HandleTopLevelDecl. The default implementation forwards to HandleTopLevelDecl, but ASTUnit's handler for example ignores them. This fixes a potential crash when lazy loading of PCH data would cause ASTUnit's "top level" declaration collection to change while being iterated.
llvm-svn: 110610
|
| |
|
|
| |
llvm-svn: 110570
|
| |
|
|
|
|
| |
Strictly speaking, implementations don't go in headers but there's no law against it.
llvm-svn: 110567
|
| |
|
|
|
|
| |
No functionality change.
llvm-svn: 110566
|
| |
|
|
| |
llvm-svn: 110432
|
| |
|
|
|
|
| |
loaded from PCH.
llvm-svn: 110322
|
| |
|
|
| |
llvm-svn: 110315
|
| |
|
|
|
|
|
|
|
|
|
|
| |
store/retrieve the most recent
redeclaration. That way we are sure that the full redeclarations chain is loaded.
When using chained PCHs, first declarations point to the most recent redeclarations in the same PCH.
To address this use a REDECLS_UPDATE_LATEST record block to keep track of which first declarations need
to point to a most recent redeclaration in another PCH.
llvm-svn: 110125
|
| |
|
|
|
|
|
|
|
|
| |
-Replace CurrentlyLoadingTypeOrDecl with a counting scheme (NumCurrentElementsDeserializing)
-Provide outside access to the mechanism by adding methods StartedDeserializing/FinishedDeserializing
to ExternalASTSource.
These are preparation for the next commit.
llvm-svn: 109856
|
| |
|
|
|
|
|
| |
This patch adds a Latest field to RedeclarableTemplateDecl's CommonBase
class which is used to store the latest redeclaration.
llvm-svn: 109755
|
| |
|
|
|
|
|
|
|
|
|
| |
This patch refactors much of the common code in ClassTemplateDecl and
FunctionTemplateDecl into a common base class RedeclarableTemplateDecl
together with support functions in a template class RedeclarableTemplate.
The patch also includes similar refactoring for these classes' PCH
reader and writer implementations.
llvm-svn: 109754
|
| |
|
|
|
|
| |
-ast-print show the decls from the dependent PCH.
llvm-svn: 109524
|
| |
|
|
|
|
|
| |
- Stop reading in (and thus deserializing) every declaration in the TU when creating a dependent PCH.
- Switch the storage of a decl context's lexical declarations to a blob containing the IDs instead of a record. This is the only sane way of supporting update records later on.
llvm-svn: 109474
|
| |
|
|
| |
llvm-svn: 109396
|
| |
|
|
|
|
| |
way, reading a trivial 2-element chained file actually works.
llvm-svn: 109191
|
| |
|
|
|
|
|
| |
warning flag in clang. Little more to do
for a PCH issue. Radar 6507158.
llvm-svn: 109129
|
| |
|
|
| |
llvm-svn: 109123
|
| |
|
|
|
|
| |
write source locations to dependent files. WIP
llvm-svn: 109119
|
| |
|
|
| |
llvm-svn: 109113
|
| |
|
|
|
|
| |
think.
llvm-svn: 108959
|
| |
|
|
| |
llvm-svn: 108956
|
| |
|
|
|
|
|
|
|
|
|
| |
detail and introduce
FunctionTemplateDecl::findSpecialization.
Redeclarations of specializations will not cause the previous decl to be removed from the set,
the set will keep the canonical decl. findSpecialization will return the most recent redeclaration.
llvm-svn: 108834
|
| |
|
|
|
|
|
|
| |
read from PCH,
is determined by a isCanonicalDecl check.
llvm-svn: 108833
|
| |
|
|
|
|
| |
PCHReader::getDelsCursor() into its sole caller and remove it. This reduces the attack surface of multiple PCH files towards code outside the PCH implementation.
llvm-svn: 108763
|
| |
|
|
| |
llvm-svn: 108627
|
| |
|
|
|
|
| |
files. WIP
llvm-svn: 108537
|
| |
|
|
| |
llvm-svn: 108198
|
| |
|
|
|
|
| |
probably try and switch more of these if I can.
llvm-svn: 108085
|
| |
|
|
| |
llvm-svn: 108068
|
| |
|
|
|
|
|
|
| |
avoid the
possibility of adding an unitialized one into the folding set.
llvm-svn: 108016
|
| |
|
|
| |
llvm-svn: 108015
|
| |
|
|
| |
llvm-svn: 107884
|
| |
|
|
| |
llvm-svn: 107871
|
| |
|
|
|
|
|
|
| |
in recursive loading and the
declarations are fully initialized.
llvm-svn: 107783
|
| |
|
|
|
|
|
| |
uninitialized (which doesn't seem to be the case), by giving
them arbitrary initial values.
llvm-svn: 107679
|
| |
|
|
| |
llvm-svn: 107665
|
| |
|
|
|
|
| |
still initializing.
llvm-svn: 107663
|
| |
|
|
| |
llvm-svn: 107662
|
| |
|
|
|
|
| |
We can now use a PCH'ed <map>.
llvm-svn: 107617
|
| |
|
|
| |
llvm-svn: 107616
|
| |
|
|
|
|
| |
instantiated-from information.
llvm-svn: 107597
|
| |
|
|
| |
llvm-svn: 107594
|