summaryrefslogtreecommitdiffstats
path: root/clang/Driver
Commit message (Collapse)AuthorAgeFilesLines
...
* Implemented serialization of SelectorTable and Selectors.Ted Kremenek2007-11-301-14/+24
| | | | | | | Modified serialization of IdentifierTable to self-register itself with the Deserializer. llvm-svn: 44471
* pass diagnostics into the rewrite test client.Chris Lattner2007-11-303-4/+12
| | | | llvm-svn: 44468
* Support lax vector conversions.Anders Carlsson2007-11-301-0/+7
| | | | llvm-svn: 44449
* Only serialize top-level decls that appear at the head of a decl chain.Ted Kremenek2007-11-291-12/+17
| | | | llvm-svn: 44438
* Enhanced serialization testing by also pretty-printing CFGs constructed from ↵Ted Kremenek2007-11-291-0/+16
| | | | | | | | | 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
* Several fixes/simplifications surrounding how we stream top-level decl AST's.Steve Naroff2007-11-281-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Converted AST Pretty-Printer to use iostreams instead of FILE*. This fixesTed Kremenek2007-11-283-129/+120
| | | | | | | | | 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
* Modified --test-pickling to perform an actual cross-check of serialized ASTs:Ted Kremenek2007-11-281-48/+144
| | | | | | | | | | | (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
* Add correct types for the last remaining intrinsics.Anders Carlsson2007-11-281-87/+79
| | | | llvm-svn: 44396
* Implement support for -fwritable-strings and make the code generatorChris Lattner2007-11-283-6/+15
| | | | | | merge string literals when it is not provided. llvm-svn: 44394
* Add more intrinsics. We can now correctly parse both Carbon.h and Cocoa.h ↵Anders Carlsson2007-11-281-237/+237
| | | | | | without having to do -arch ppc. llvm-svn: 44392
* Migrated static functions that print decls into a DeclPrinter class,Ted Kremenek2007-11-272-77/+115
| | | | | | | | | | 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
* Add builtin type signature support for vector types. Add correct type ↵Anders Carlsson2007-11-271-60/+63
| | | | | | signatures for a bunch of MMX builtins. We now parse all the intrinsics in mmintrin.h llvm-svn: 44357
* Add more semantic analysis for inline asm statements.Anders Carlsson2007-11-271-1/+76
| | | | llvm-svn: 44349
* Fixed a rewrite bug in class synthesis (which I first thought was a rewrite ↵Fariborz Jahanian2007-11-261-4/+6
| | | | | | API bug). llvm-svn: 44335
* Patch to fix a regression caused by recent rewrite changes.Fariborz Jahanian2007-11-261-7/+13
| | | | | | A potential API bug in ReplaceText pending (A FIXME is added). llvm-svn: 44333
* The checking for the delimiters of expected error/warning messages wasBill Wendling2007-11-261-2/+2
| | | | | | | looking only for { and } instead of {{ and }}. Changed it to check for this explicitly. llvm-svn: 44326
* Forgot some X86 registersAnders Carlsson2007-11-251-0/+1
| | | | llvm-svn: 44309
* Add tables for GCC register names and aliases. This will be used for inline asmAnders Carlsson2007-11-241-2/+146
| | | | llvm-svn: 44308
* Make sure Sema::ParsedFreeStandingDeclSpec() returns a decl representing the ↵Steve Naroff2007-11-171-1/+1
| | | | | | | | type. Adding basic printing to StmtPrinter::PrintRawDecl(). llvm-svn: 44208
* No need to forward declare definition of objc_super...Steve Naroff2007-11-151-2/+1
| | | | llvm-svn: 44173
* Implement support for variadic methods (work in progress).Steve Naroff2007-11-151-2/+2
| | | | llvm-svn: 44171
* Extend RewriteTest::RewriteObjCIvarRefExpr() to cope with static typing ↵Steve Naroff2007-11-151-2/+20
| | | | | | (when using -> on a type which corresponds to the implementation type). llvm-svn: 44170
* Tweak funky cast to accommodate messaging 'super'. This removes any spurious ↵Steve Naroff2007-11-151-1/+4
| | | | | | warnings. llvm-svn: 44169
* Rewrite for messaging 'super'.Steve Naroff2007-11-151-7/+140
| | | | | | The code gen. results in some spurious warnings...a cast is forthcoming. llvm-svn: 44168
* Break out bool/true/false support into a LangOptionNate Begeman2007-11-151-0/+1
| | | | llvm-svn: 44164
* - Implement ivar rewrite (patch by Fariborz).Steve Naroff2007-11-151-10/+22
| | | | | | - RewriteMessageExpr()...make implicit casts explicit with synthesizing call (removing warnings when calling objc_msgSend()). llvm-svn: 44156
* Refinement to previous commit. Always cast the first argument to "id"...no ↵Steve Naroff2007-11-151-6/+1
| | | | | | need to special case self. llvm-svn: 44149
* Cast implicit "self" argument to "id". This removes all warnings associated ↵Steve Naroff2007-11-141-3/+20
| | | | | | with implicit references to self. It doesn't yet deal withexplicit references to self... llvm-svn: 44148
* Always generate a typedef for @class. The typedef removal logic that I'm ↵Steve Naroff2007-11-141-6/+1
| | | | | | 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
* Fix a rewriter bug that steve noticed. Don't skip arbitrary thingsChris Lattner2007-11-141-1/+4
| | | | | | between an @ and a p, just skip whitespace. llvm-svn: 44144
* Patch to comment out use of protocol qualifiers when rewriting ivars.Fariborz Jahanian2007-11-141-11/+16
| | | | llvm-svn: 44142
* Fairly major surgery to RewriteTest::SynthesizeObjcInternalStruct().Steve Naroff2007-11-141-49/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* SourceManager, IdentifierTable, Selectors are now serialized in their ownTed Kremenek2007-11-141-11/+27
| | | | | | | | | | | | | | 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
* Removed unused variabel.Fariborz Jahanian2007-11-141-1/+0
| | | | llvm-svn: 44123
* Fix yesterday's regression with rewriting @optional/@required.Steve Naroff2007-11-141-6/+3
| | | | llvm-svn: 44119
* Rewrite methods that span multiple lines.Steve Naroff2007-11-141-4/+8
| | | | llvm-svn: 44118
* Comment out recent regression r44096.Steve Naroff2007-11-141-2/+4
| | | | llvm-svn: 44098
* Rewrite @optional/@required directives used inside protocol definitions.Fariborz Jahanian2007-11-141-1/+28
| | | | llvm-svn: 44096
* Rewrite of forward protocol declaration.Fariborz Jahanian2007-11-141-0/+10
| | | | llvm-svn: 44095
* Fix regression with ObjC method definitions and -ast-printSteve Naroff2007-11-131-0/+3
| | | | llvm-svn: 44088
* Rewrite method definition bodies. Also renamed a method to distinguish ↵Steve Naroff2007-11-131-15/+19
| | | | | | between method declarations and definitions. llvm-svn: 44080
* Added pretty-printing of statements during serialization.Ted Kremenek2007-11-131-1/+8
| | | | llvm-svn: 44078
* Fixed a rewrite of metadata bug when category implementation has no matching ↵Fariborz Jahanian2007-11-131-8/+8
| | | | | | interface. llvm-svn: 44072
* Populate metadata with adrress of method code.Fariborz Jahanian2007-11-131-11/+21
| | | | llvm-svn: 44066
* Rewrite of method definitions in categories.Fariborz Jahanian2007-11-131-10/+33
| | | | llvm-svn: 44062
* Order of methods are OK and generated .c file can be compiled.Fariborz Jahanian2007-11-131-7/+19
| | | | llvm-svn: 44060
* First patch in rewrie of method definitions. This is work in progress.Fariborz Jahanian2007-11-131-0/+98
| | | | llvm-svn: 44055
* Added -Wfloat-equal option to the driver. This makes warnings aboutTed Kremenek2007-11-131-0/+8
| | | | | | | | | floating point comparisons using == or != an opt-in rather than a default warning. Updated test case to use -Wfloat-equal. llvm-svn: 44053
* Clean up types, removing some casts. Patch contributed byChris Lattner2007-11-131-1/+1
| | | | | | Cedric Venet. llvm-svn: 44050
OpenPOWER on IntegriCloud