- Nov 29, 2007
-
-
Ted Kremenek authored
llvm-svn: 44438
-
Ted Kremenek authored
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
-
- Nov 28, 2007
-
-
Steve Naroff authored
Several fixes/simplifications surrounding how we stream top-level decl AST's. 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
-
Ted Kremenek authored
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
-
Ted Kremenek authored
(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
-
Anders Carlsson authored
llvm-svn: 44396
-
Chris Lattner authored
merge string literals when it is not provided. llvm-svn: 44394
-
Anders Carlsson authored
Add more intrinsics. We can now correctly parse both Carbon.h and Cocoa.h without having to do -arch ppc. llvm-svn: 44392
-
- Nov 27, 2007
-
-
Ted Kremenek authored
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
-
Anders Carlsson authored
Add builtin type signature support for vector types. Add correct type signatures for a bunch of MMX builtins. We now parse all the intrinsics in mmintrin.h llvm-svn: 44357
-
Anders Carlsson authored
llvm-svn: 44349
-
- Nov 26, 2007
-
-
Fariborz Jahanian authored
llvm-svn: 44335
-
Fariborz Jahanian authored
A potential API bug in ReplaceText pending (A FIXME is added). llvm-svn: 44333
-
Bill Wendling authored
looking only for { and } instead of {{ and }}. Changed it to check for this explicitly. llvm-svn: 44326
-
- Nov 25, 2007
-
-
Anders Carlsson authored
llvm-svn: 44309
-
Anders Carlsson authored
llvm-svn: 44308
-
- Nov 17, 2007
-
-
Steve Naroff authored
Make sure Sema::ParsedFreeStandingDeclSpec() returns a decl representing the type. Adding basic printing to StmtPrinter::PrintRawDecl(). llvm-svn: 44208
-
- Nov 15, 2007
-
-
Steve Naroff authored
No need to forward declare definition of objc_super... llvm-svn: 44173
-
Steve Naroff authored
Implement support for variadic methods (work in progress). llvm-svn: 44171
-
Steve Naroff authored
Extend RewriteTest::RewriteObjCIvarRefExpr() to cope with static typing (when using -> on a type which corresponds to the implementation type). llvm-svn: 44170
-
Steve Naroff authored
Tweak funky cast to accommodate messaging 'super'. This removes any spurious warnings. llvm-svn: 44169
-
Steve Naroff authored
Rewrite for messaging 'super'. The code gen. results in some spurious warnings...a cast is forthcoming. llvm-svn: 44168
-
Nate Begeman authored
llvm-svn: 44164
-
Steve Naroff authored
- Implement ivar rewrite (patch by Fariborz). - RewriteMessageExpr()...make implicit casts explicit with synthesizing call (removing warnings when calling objc_msgSend()). llvm-svn: 44156
-
Steve Naroff authored
Refinement to previous commit. Always cast the first argument to "id"...no need to special case self. llvm-svn: 44149
-
Steve Naroff authored
Cast implicit "self" argument to "id". This removes all warnings associated with implicit references to self. It doesn't yet deal withexplicit references to self... llvm-svn: 44148
-
Steve Naroff authored
Always generate a typedef for @class. The typedef removal logic that I'm 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
-
- Nov 14, 2007
-
-
Chris Lattner authored
between an @ and a p, just skip whitespace. llvm-svn: 44144
-
Fariborz Jahanian authored
llvm-svn: 44142
-
Steve Naroff authored
Fairly major surgery to RewriteTest::SynthesizeObjcInternalStruct(). 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
-
Ted Kremenek authored
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
-
Fariborz Jahanian authored
llvm-svn: 44123
-
Steve Naroff authored
Fix yesterday's regression with rewriting @optional/@required. llvm-svn: 44119
-
Steve Naroff authored
Rewrite methods that span multiple lines. llvm-svn: 44118
-
Steve Naroff authored
Comment out recent regression r44096. llvm-svn: 44098
-
Fariborz Jahanian authored
llvm-svn: 44096
-
Fariborz Jahanian authored
llvm-svn: 44095
-
Steve Naroff authored
llvm-svn: 44088
-
Steve Naroff authored
Rewrite method definition bodies. Also renamed a method to distinguish between method declarations and definitions. llvm-svn: 44080
-
- Nov 13, 2007
-
-
Ted Kremenek authored
llvm-svn: 44078
-