- Oct 06, 2008
-
-
Devang Patel authored
Patch By Matthijs Kooijman. llvm-svn: 57202
-
Ted Kremenek authored
Use "unsigned" instead of "int" for i to remove a "comparison between unsigned and signed" warning (potential integer overflow). llvm-svn: 57201
-
Evan Cheng authored
llvm-svn: 57200
-
Anders Carlsson authored
llvm-svn: 57198
-
Devang Patel authored
llvm-svn: 57197
-
Ted Kremenek authored
Use the DeclStmt::decl_iterator to get the first decl in a DeclStmt instead of using DeclStmt::getDecl(). llvm-svn: 57196
-
Ted Kremenek authored
In RewriteFunctionBody, using DeclStmt::decl_iterator to rewrite the Decls in a DeclStmt instead of using getDecl() to fetch the first Decl. Steve: Please review this patch. 'make test' passes, and my cursory scan of the rewriter leads me to believe this doesn't break anything, but I'm not sure. llvm-svn: 57195
-
Ted Kremenek authored
Don't use DeclStmt::getDecl(); this will eventually disappear. Just fetch the first decl using the DeclStmt::decl_iterator. llvm-svn: 57194
-
Evan Cheng authored
llvm-svn: 57193
-
Ted Kremenek authored
llvm-svn: 57192
-
Ted Kremenek authored
Added PrintRawDeclStmt; use this method to print out DeclStmt instead of using PrintRawDecl (which falsely assumes DeclStmts have only one Decl). llvm-svn: 57191
-
Ted Kremenek authored
llvm-svn: 57190
-
Ted Kremenek authored
Use DeclStmt::decl_iterator instead of using Decl::getDecl(). Soon DeclStmts will wrap group of Decls. Added FIXME. llvm-svn: 57189
-
Argyrios Kyrtzidis authored
Add a FIXME until class constructors are supported. llvm-svn: 57188
-
Ted Kremenek authored
llvm-svn: 57187
-
Ted Kremenek authored
llvm-svn: 57186
-
Dale Johannesen authored
Improve description of unsupported formats. llvm-svn: 57185
-
Devang Patel authored
optimized for size. Set OptForSize for each function separately. llvm-svn: 57182
-
Dan Gohman authored
ENABLE_EXPENSIVE_CHECKS for finding this. llvm-svn: 57181
-
Ted Kremenek authored
llvm-svn: 57180
-
Devang Patel authored
llvm-svn: 57179
-
Argyrios Kyrtzidis authored
This is how this kind of initializers appear in the AST: -The Init expression of the VarDecl is a functional type construction (of the VarDecl's type). -The new VarDecl::hasCXXDirectInitializer() returns true. e.g, for "int x(1);": -VarDecl 'x' has Init with expression "int(1)" (CXXFunctionalCastExpr). -hasCXXDirectInitializer() of VarDecl 'x' returns true. A major benefit is that clients that don't particularly care about which exactly form was the initializer can handle both cases without special case code. Note that codegening works now for "int x(1);" without any changes to CodeGen. llvm-svn: 57178
-
Matthijs Kooijman authored
This includes not marking a GEP involving a vector as unsafe, but only when it has all zero indices. This allows scalarrepl to work in a few more cases. llvm-svn: 57177
-
Ted Kremenek authored
llvm-svn: 57176
-
Duncan Sands authored
Before there were two problems: (1) configure turned "obj-c++" into "obj" in the langs line; (2) the dejagnu library called it objc++ not obj-c++. Now the problem is that some of these tests don't pass! llvm-svn: 57167
-
Duncan Sands authored
readnone. Make clearer that readnone functions do not dereference pointer arguments. Do not use the highly ambiguous "side-effects" in the readonly description (since such functions can have control flow side-effects, such as throwing an exception, or looping for ever). llvm-svn: 57166
-
Chris Lattner authored
llvm-svn: 57165
-
Chris Lattner authored
won't expand to the builtin. This fixes rdar://6248329 llvm-svn: 57164
-
Chris Lattner authored
constant lvalue. Implement this in codegen by moving the code out of CGBuiltin into EmitConstantExpr. llvm-svn: 57163
-
Chris Lattner authored
llvm-svn: 57162
-
Chris Lattner authored
it is possible that a builtin could sometimes be folded (e.g. __builtin_clz) if it's operand is a constant. llvm-svn: 57161
-
Chris Lattner authored
depend on the value of this flag, it should depend on whether tryEvaluate is able to *actually* fold a builtin. llvm-svn: 57160
-
Chris Lattner authored
which is checking for something that can be inconsistent with what we can constant fold. llvm-svn: 57159
-
Chris Lattner authored
interface into the constant folding interface. llvm-svn: 57158
-
Chris Lattner authored
llvm-svn: 57157
-
Chris Lattner authored
do it instead. We should still handle __builtin_nan etc, but don't yet. This fixes incorrect evaluation of __builtin_constant_p, a FIXME. llvm-svn: 57156
-
Chris Lattner authored
constants for them, just use the constant evaluator to do the job. This also fixes crashes on 'unknown constant builtins'. llvm-svn: 57155
-
Chris Lattner authored
llvm-svn: 57154
-
Chris Lattner authored
condition as a constant even if the unevaluated side is a not a constant. We don't do this when extensions are off, and we emit a warning when this happens: t.c:22:11: warning: expression is not a constant, but is accepted as one by GNU extensions short t = __builtin_constant_p(5353) ? 42 : somefunc(); ^ ~~~~~~~~~~ suggestions for improvement are welcome. This is obviously horrible, but is required for real-world code. llvm-svn: 57153
-
Chris Lattner authored
__builtin_constant_p properly, and add some scaffolding for FloatExprEvaluator to eventually handle huge_val and inf. llvm-svn: 57152
-