- Jan 04, 2011
-
-
Michael J. Spencer authored
llvm-svn: 122812
-
Cameron Zwarich authored
makes getLeader() nonrecursive. llvm-svn: 122811
-
Tobias Grosser authored
This ensures that always the recently compiled tools are picked for testing. llvm-svn: 122810
-
Duncan Sands authored
llvm-svn: 122809
-
Francois Pichet authored
llvm-svn: 122808
-
Abramo Bagnara authored
Prefer getAs<ComplexType> rather than cast<ComplexType> on canonical type. Suggestion by Douglas Gregor! llvm-svn: 122807
-
Chris Lattner authored
when safe. The testcase is basically this nested loop: void foo(char *X) { for (int i = 0; i != 100; ++i) for (int j = 0; j != 100; ++j) X[j+i*100] = 0; } which gets turned into a single memset now. clang -O3 doesn't optimize this yet though due to a phase ordering issue I haven't analyzed yet. llvm-svn: 122806
-
Chris Lattner authored
instruction *after* the store. The store will always be deleted if the transformation kicks in, so we'd do an N^2 scan of every loop block. Whoops. llvm-svn: 122805
-
Chandler Carruth authored
int x = 42; x = x; // Warns here. The warning avoids macro expansions, templates, user-defined assignment operators, and volatile types, so false positives are expected to be low. The common (mis-)use of this code pattern is to silence unused variable warnings, but a more idiomatic way of doing that is '(void)x;'. A follow-up to this will add a note and fix-it hint suggesting this replacement in cases where the StmtExpr consists precisely of the self assignment. llvm-svn: 122804
-
Cameron Zwarich authored
spent in StrongPHIElimination on 403.gcc. llvm-svn: 122803
-
Chandler Carruth authored
declaration name of the array when present. This ensures that a poor-man's C++03 static_assert will include the user error message often embedded in the name. Update all the tests to reflect the new wording, and add a test for the name behavior. llvm-svn: 122802
-
Cameron Zwarich authored
CodeGenPrepare (which is the default behavior). llvm-svn: 122801
-
Sean Callanan authored
were not being created in the proper way, meaning results were getting lost. llvm-svn: 122800
-
Douglas Gregor authored
non-type template parameter pack, make sure to create a pack expansion for the corresponding template argument. llvm-svn: 122799
-
Greg Clayton authored
llvm-svn: 122797
-
David Greene authored
Don't pattern match "/clang" so we don't mangle directory names. Some tests use absolute paths to clang. llvm-svn: 122796
-
Owen Anderson authored
llvm-svn: 122795
-
Andrew Trick authored
llvm-svn: 122794
-
Douglas Gregor authored
initialize those lovely mixins that come from pack expansions of base specifiers. llvm-svn: 122793
-
Argyrios Kyrtzidis authored
Rename MaybeSkipFunctionBodyForCodeCompletion -> trySkippingFunctionBodyForCodeCompletion and check isCodeCompletionEnabled() before doing the call. Suggestions by Chris. llvm-svn: 122792
-
Cameron Zwarich authored
FunctionPass. It probably doesn't have a reason to be a LoopPass, as it will probably drop the simple fixed point and either use RPO iteration or Duncan's approach in instsimplify of only revisiting instructions that have changed. The next step is to preserve LoopSimplify. This looks like it won't be too hard, although the pass manager doesn't actually seem to respect when non-loop passes claim to preserve LCSSA or LoopSimplify. This will have to be fixed. llvm-svn: 122791
-
Chris Lattner authored
stop setting NSW: signed overflow is possible. Thanks to Dan for pointing these out. llvm-svn: 122790
-
Bill Wendling authored
llvm-svn: 122789
-
Owen Anderson authored
llvm-svn: 122788
-
Owen Anderson authored
Use the new addEscapingValue callback to update GlobalsModRef when GVN adds PHIs of GEPs. For the moment, have GlobalsModRef handle this conservatively by simply removing the value from its maps. llvm-svn: 122787
-
Evan Cheng authored
llvm-svn: 122786
-
Chris Lattner authored
invalidated by stores, so they can be handled as 'simple' operations. llvm-svn: 122785
-
Argyrios Kyrtzidis authored
llvm-svn: 122784
-
- Jan 03, 2011
-
-
Evan Cheng authored
prologue and epilogue if the adjustment is 8. Similarly, use pushl / popl if the adjustment is 4 in 32-bit mode. In the epilogue, takes care to pop to a caller-saved register that's not live at the exit (either return or tailcall instruction). rdar://8771137 llvm-svn: 122783
-
Douglas Gregor authored
llvm-svn: 122782
-
Argyrios Kyrtzidis authored
llvm-svn: 122781
-
Douglas Gregor authored
llvm-svn: 122780
-
David Greene authored
Don't pattern match "clang-" as it may be part of a tool name with a triple suffix. llvm-svn: 122779
-
Wesley Peck authored
llvm-svn: 122778
-
Owen Anderson authored
a pointer value has potentially become escaping. Implementations can choose to either fall back to conservative responses for that value, or may recompute their analysis to accomodate the change. llvm-svn: 122777
-
Douglas Gregor authored
argument. As part of this, be more careful when determining if there are any parameter packs that cannot be expanded. llvm-svn: 122776
-
Douglas Gregor authored
a class template partial specialiation, and look through pack expansions when checking the conditions of C++0x [temp.class.spec]p8. llvm-svn: 122774
-
Owen Anderson authored
llvm-svn: 122773
-
rdar://8813415Chris Lattner authored
exposed. It turns out to be a latent bug in basicaa, scary. llvm-svn: 122772
-
Chris Lattner authored
llvm-svn: 122771
-