| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
| |
Modified serialization of IdentifierTable to self-register itself with
the Deserializer.
llvm-svn: 44471
|
|
|
|
| |
llvm-svn: 44468
|
|
|
|
| |
llvm-svn: 44449
|
|
|
|
| |
llvm-svn: 44438
|
|
|
|
|
|
|
|
|
| |
ASTs
both before and after serialization/deserialization. If the CFGs between the pre-
and post- serialized/deserialized ASTs differ, the serialization has failed.
llvm-svn: 44429
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The following code...
typedef struct cssm_data {} CSSM_DATA, *CSSM_DATA_PTR;
struct Y { int A; };
struct X { int A; } D;
struct X E, F;
...now produces the following output...
> ../../Debug/bin/clang xx.c -ast-print
Read top-level tag decl: 'cssm_data'
typedef struct cssm_data CSSM_DATA;
typedef struct cssm_data *CSSM_DATA_PTR;
Read top-level tag decl: 'Y'
Read top-level tag decl: 'X'
Read top-level variable decl: 'D'
Read top-level variable decl: 'E'
Read top-level variable decl: 'F'
...which is much more accurate than the previous -ast-print output...
typedef struct cssm_data CSSM_DATA;
typedef struct cssm_data CSSM_DATA;
Read top-level variable decl: 'D'
Read top-level variable decl: 'E'
Read top-level variable decl: 'E'
llvm-svn: 44421
|
|
|
|
|
|
|
|
|
| |
a bug where the statement pretty-printer used iostreams but the AST printer
did not. This was an issue when dumping ASTs to something other than stderr.
Updated SerializationTest to use the new iostreams interface for the AST printer.
llvm-svn: 44417
|
|
|
|
|
|
|
|
|
|
|
| |
(1) Parsed ASTs are pretty-printed to a text file.
(2) The ASTs are serialized to disk.
(3) The ASTs are deserialized from disk.
(4) The deserialized ASTs are pretty-printed to a text file.
(5) The two pretty-printed files are compared. If they are different, the test
fails.
llvm-svn: 44411
|
|
|
|
| |
llvm-svn: 44396
|
|
|
|
|
|
| |
merge string literals when it is not provided.
llvm-svn: 44394
|
|
|
|
|
|
| |
without having to do -arch ppc.
llvm-svn: 44392
|
|
|
|
|
|
|
|
|
|
| |
which is now used (or subclasssed) by the ASTConsumers. This new class
stores a FILE* that is used for writing, instead of just hardwiring output
to stderr (it defaults to stderr if no FILE* is provided).
Modified CreateASTPrinter() to accept a FILE* for printing.
llvm-svn: 44377
|
|
|
|
|
|
| |
signatures for a bunch of MMX builtins. We now parse all the intrinsics in mmintrin.h
llvm-svn: 44357
|
|
|
|
| |
llvm-svn: 44349
|
|
|
|
|
|
| |
API bug).
llvm-svn: 44335
|
|
|
|
|
|
| |
A potential API bug in ReplaceText pending (A FIXME is added).
llvm-svn: 44333
|
|
|
|
|
|
|
| |
looking only for { and } instead of {{ and }}. Changed it to check for
this explicitly.
llvm-svn: 44326
|
|
|
|
| |
llvm-svn: 44309
|
|
|
|
| |
llvm-svn: 44308
|
|
|
|
|
|
|
|
| |
type.
Adding basic printing to StmtPrinter::PrintRawDecl().
llvm-svn: 44208
|
|
|
|
| |
llvm-svn: 44173
|
|
|
|
| |
llvm-svn: 44171
|
|
|
|
|
|
| |
(when using -> on a type which corresponds to the implementation type).
llvm-svn: 44170
|
|
|
|
|
|
| |
warnings.
llvm-svn: 44169
|
|
|
|
|
|
| |
The code gen. results in some spurious warnings...a cast is forthcoming.
llvm-svn: 44168
|
|
|
|
| |
llvm-svn: 44164
|
|
|
|
|
|
| |
- RewriteMessageExpr()...make implicit casts explicit with synthesizing call (removing warnings when calling objc_msgSend()).
llvm-svn: 44156
|
|
|
|
|
|
| |
need to special case self.
llvm-svn: 44149
|
|
|
|
|
|
| |
with implicit references to self. It doesn't yet deal withexplicit references to self...
llvm-svn: 44148
|
|
|
|
|
|
| |
removing only made sense when we were operating on preprocess files without typedef guards. Now that we have guards, it is incorrect to ever remove one (since it may increase the likelihood that the rewritten header can't be included stand alone).
llvm-svn: 44145
|
|
|
|
|
|
| |
between an @ and a p, just skip whitespace.
llvm-svn: 44144
|
|
|
|
| |
llvm-svn: 44142
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows us to handle funky stuff like...
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3
@interface NSLayoutManager : NSObject <NSCoding, NSGlyphStorage> {
#else /* MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3 */
@interface NSLayoutManager : NSObject <NSCoding> {
#endif /* MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3 */
...which now rewrites to...
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3
#ifndef _REWRITER_typedef_NSLayoutManager
#define _REWRITER_typedef_NSLayoutManager
typedef struct objc_object NSLayoutManager;
#endif
struct NSLayoutManager {
struct NSObject _NSObject;
#else /* MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3 */
// @interface NSLayoutManager : NSObject <NSCoding> {
#endif /* MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3 */
llvm-svn: 44129
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
block separate from ASTContext. This block is serialized out AFTER writing out
ASTContext, but deserialized BEFORE reading in ASTContext. This permits the
optimization of the serialization of the IdentifierTable where we only write
out identifiers that are used.
This was needed because TagDecls are owned by Types, and TagDecls contain
identifiers. Thus types need to be written out first to register with the
serializer any identifiers they refer to (and hence need to be serialized out
with IdentifierTable).
llvm-svn: 44125
|
|
|
|
| |
llvm-svn: 44123
|
|
|
|
| |
llvm-svn: 44119
|
|
|
|
| |
llvm-svn: 44118
|
|
|
|
| |
llvm-svn: 44098
|
|
|
|
| |
llvm-svn: 44096
|
|
|
|
| |
llvm-svn: 44095
|
|
|
|
| |
llvm-svn: 44088
|
|
|
|
|
|
| |
between method declarations and definitions.
llvm-svn: 44080
|
|
|
|
| |
llvm-svn: 44078
|
|
|
|
|
|
| |
interface.
llvm-svn: 44072
|
|
|
|
| |
llvm-svn: 44066
|
|
|
|
| |
llvm-svn: 44062
|
|
|
|
| |
llvm-svn: 44060
|
|
|
|
| |
llvm-svn: 44055
|
|
|
|
|
|
|
|
|
| |
floating point comparisons using == or != an opt-in rather than a default
warning.
Updated test case to use -Wfloat-equal.
llvm-svn: 44053
|
|
|
|
|
|
| |
Cedric Venet.
llvm-svn: 44050
|