- Dec 02, 2007
-
-
Oliver Hunt authored
We now use the CodeGenModule logic for generating the constant initialiser expression, so happily further initialiser fixes should automatically work for statics as well. llvm-svn: 44495
-
- Dec 01, 2007
-
-
Fariborz Jahanian authored
llvm-svn: 44492
-
Chris Lattner authored
llvm-svn: 44491
-
Christopher Lamb authored
llvm-svn: 44490
-
Christopher Lamb authored
name if a tag type name is not available for the type. This matches how llvm-gcc chooses CodeGen type names. This means that "typedef struct {...} foo" now results in a CodeGen name of "struct.foo" rather than "struct." llvm-svn: 44489
-
Seo Sanghyeon authored
llvm-svn: 44488
-
Chris Lattner authored
LHS and RHS both have side effects. llvm-svn: 44486
-
Chris Lattner authored
llvm-svn: 44485
-
Chris Lattner authored
llvm-svn: 44484
-
Ted Kremenek authored
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
-
- Nov 30, 2007
-
-
Chris Lattner authored
that are builtin and those that are aren't. This is a bunch of API refactoring that will make this possible, but there is no functionality change yet. llvm-svn: 44473
-
Anders Carlsson authored
llvm-svn: 44472
-
Ted Kremenek authored
Modified serialization of IdentifierTable to self-register itself with the Deserializer. llvm-svn: 44471
-
Chris Lattner authored
llvm-svn: 44468
-
Anders Carlsson authored
llvm-svn: 44463
-
Anders Carlsson authored
GCC has an extension where the left hand side of the ? : operator can be omitted. Handle this in a few more places. llvm-svn: 44462
-
Anders Carlsson authored
llvm-svn: 44459
-
Chris Lattner authored
by Seo Sanghyeon llvm-svn: 44455
-
Chris Lattner authored
llvm-svn: 44454
-
Chris Lattner authored
llvm-svn: 44453
-
Christopher Lamb authored
llvm-svn: 44450
-
Anders Carlsson authored
llvm-svn: 44449
-
Steve Naroff authored
Yesterday, I simplified how we stream top-level decls. After a discussion with Ted, we both came to the conclusion that adding a "HandleTopLevelDeclaration" hook to ASConsumer is far more elegant. The default implementation of HandleTopLevelDeclaration will be responsible for iterating over the ScopedDecl (which has a chain of the decls:-). TODO: Once Ted adds HandleTopLevelDeclaration, make sure TagDecls are chainged appropriately... llvm-svn: 44445
-
Ted Kremenek authored
be the new hook that ASTStreamer calls to feed top-level Decls to ASTConsumers. The difference between "HandleTopLevelDeclaration" and "HandleTopLevelDecl" is that "HandleTopLevelDecl" is currently called by ASTStreamer for every top-level declaration, including those that appear within a Decl chain. Using the new interface, ASTStreamer would only call HandleTopLevelDeclaration for Decls that appear that the beginning of a Decl chain (i.e., a group of related decls). To preserve the behavior that all subclasses of ASTConsumer currently expect, the default implementation of HandleTopLevelDeclaration simply calls HandleTopLevelDecl, and for decl chains it calls HandleTopLevelDecl for each Decl* in a chain of Decls. The advantage of this interface is that some subclasses of ASTConsumer only really want the Decl chain, and not each individual Decl passed to them. This extra level of indirection allows subclasses to override the default behavior if they so desire. llvm-svn: 44444
-
- Nov 29, 2007
-
-
Christopher Lamb authored
Update the initializer's type, in addition to the decl, if we've changed the type of the decl based on it. llvm-svn: 44440
-
Ted Kremenek authored
test suite. llvm-svn: 44439
-
Ted Kremenek authored
llvm-svn: 44438
-
Christopher Lamb authored
Support floating point literals of the form "1e-16f" which specify an exponent but no decimal point. llvm-svn: 44431
-
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
-
Ted Kremenek authored
Removed redundant test case. llvm-svn: 44426
-
Ted Kremenek authored
represented exactly and inexactly by APFloats. For the former, we do not emit a warning. llvm-svn: 44425
-
Ted Kremenek authored
floating-point literals that are represented exactly by the APFloat in FloatingLiteral. For such literals, we do not emit a warning since such checks are often performed in real code to see if a variable has changed from its original value. This heuristic clearly can lead to false negatives, but the hope is it will significantly reduce false positives to help make the compiler flag more useful. llvm-svn: 44424
-
Ted Kremenek authored
the APFloat representing the parsed literal can represent the literal value exactly. This is useful when performing various semantic checks on the code, and issuing appropriate warnings to users. llvm-svn: 44423
-
Ted Kremenek authored
converts a parsed literal into an APFloat. We are still performing a copy of the string, which hopefully will be removed eventually for performance reasons. This version now is at least safe. Changed rounding in APFloat construction in NumericLiteralParser from rmTowardsZero to rmNearestTiesToEven. llvm-svn: 44422
-
- 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
llvm-svn: 44416
-
Ted Kremenek authored
Introduced a few line breaks to make the Makefile easier to read. llvm-svn: 44413
-
Ted Kremenek authored
case simply performs --test-pickling on the code found in Sema/stmt_exprs.c. llvm-svn: 44412
-
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
-