| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
pointer of MultiKeywordSelectors.
Added optimization to the serialization of SelectorTable where we only serialize
out MultiKeywordSelectors that are ever referenced by an object other than the
SelectorTable.
llvm-svn: 44483
|
| |
|
|
|
|
|
| |
Modified serialization of IdentifierTable to self-register itself with
the Deserializer.
llvm-svn: 44471
|
| |
|
|
| |
llvm-svn: 44164
|
| |
|
|
|
|
| |
the new serialization API.
llvm-svn: 44035
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that are referenced in the ASTs. This assumes that we serialize out the
decls/stmts first, and use the pointer-tracking logic in the Serializer to
determine if an IdentifierInfo (or its string key) is ever referenced.
This is a significant space optimization for serialized ASTs.
Consider the following program:
void foo(int x,int y) {
return x > y ? x : y+1;
}
Here are the sizes of the files for the serialized ASTs:
Full IdentifierTable: 23676 bytes
Only-referenced Identifiers: 304 bytes.
For this simple program, this is a 77% reduction in the file size of the
serialized ASTs.
llvm-svn: 43975
|
| |
|
|
| |
llvm-svn: 43917
|
| |
|
|
|
|
|
|
|
| |
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.
llvm-svn: 43904
|
| |
|
|
|
|
| |
IdentifierInfos are deserialized.
llvm-svn: 43741
|
| |
|
|
|
|
|
|
|
|
| |
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
llvm-svn: 43306
|
| |
|
|
|
|
|
| |
Updated serialization test code in the driver to test serialization of
these types.
llvm-svn: 43266
|
| |
|
|
| |
llvm-svn: 42841
|
|
|
llvm-svn: 42730
|