- Feb 26, 2010
-
-
Bob Wilson authored
argument of createGVNPass and set it automatically for -O3. llvm-svn: 97245
-
Bob Wilson authored
llvm-svn: 97235
-
- Feb 24, 2010
-
-
Daniel Dunbar authored
llvm-svn: 97036
-
Daniel Dunbar authored
the DominatorTree. ...", in hopes of restoring poor old PPC bootstrap. llvm-svn: 97027
-
Bob Wilson authored
argument is non-null, pass it along to PHITranslateSubExpr so that it can prefer using existing values that dominate the PredBB, instead of just blindly picking the first equivalent value that it finds on a uselist. Also when the DominatorTree is specified, have PHITranslateValue filter out any result that does not dominate the PredBB. This is basically just refactoring the check that used to be in GetAvailablePHITranslatedSubExpr and also in GVN. Despite my initial expectations, this change does not affect the results of GVN for any testcases that I could find, but it should help compile time. Before this change, if PHITranslateSubExpr picked a value that does not dominate, PHITranslateWithInsertion would then insert a new value, which GVN would later determine to be redundant and would replace. By picking a good value to begin with, we save GVN the extra work of inserting and then replacing a new value. llvm-svn: 97010
-
- Feb 23, 2010
-
-
Bob Wilson authored
I don't have a small testcase for this. llvm-svn: 96890
-
- Feb 22, 2010
-
-
Bob Wilson authored
failures from ValueTable::verifyRemoved() when using -debug. llvm-svn: 96805
-
- Feb 16, 2010
-
-
Bob Wilson authored
llvm-svn: 96387
-
Bob Wilson authored
llvm-svn: 96378
-
Bob Wilson authored
terminator's list of successors. llvm-svn: 96377
-
Duncan Sands authored
and T->isPointerTy(). Convert most instances of the first form to the second form. Requested by Chris. llvm-svn: 96344
-
- Feb 11, 2010
-
-
Devang Patel authored
llvm-svn: 95828
-
- Feb 03, 2010
-
-
Bob Wilson authored
llvm-svn: 95170
-
- Feb 01, 2010
-
-
Bob Wilson authored
disabled by default. This divides the existing load PRE code into 2 phases: first it checks that it is safe to move the load to each of the predecessors where it is unavailable, and then if it is safe, the code is changed to move the load. Radar 7571861. llvm-svn: 95007
-
- Jan 30, 2010
-
-
Bob Wilson authored
unconditionally. Besides checking the offset, also check that the underlying object is aligned as much as the load itself. llvm-svn: 94875
-
- Jan 29, 2010
-
-
Bob Wilson authored
indices are safe if the result is known to be within the bounds of the underlying object. llvm-svn: 94829
-
- Jan 25, 2010
-
-
Bob Wilson authored
already checked that TmpBB->getSinglePredecessor() is non-null. llvm-svn: 94451
-
- Jan 17, 2010
-
-
Owen Anderson authored
llvm-svn: 93693
-
- Jan 05, 2010
-
-
Dan Gohman authored
non-zero trip count. Use SmallVector's pop_back_val(). llvm-svn: 92734
-
David Greene authored
llvm-svn: 92613
-
- Dec 28, 2009
-
-
Chris Lattner authored
non-templated IRBuilderBase class. Move that large CreateGlobalString out of line, eliminating the need to #include GlobalVariable.h in IRBuilder.h llvm-svn: 92227
-
- Dec 22, 2009
-
-
Chris Lattner authored
instead of stored. This reduces memdep memory usage, and also eliminates a bunch of weakvh's. This speeds up gvn on gcc.c-torture/20001226-1.c from 23.9s to 8.45s (2.8x) on a different machine than earlier. llvm-svn: 91885
-
Chris Lattner authored
load to avoid even messing around with SSAUpdate at all. In this case (which is very common, we can just use the input value directly). This speeds up GVN time on gcc.c-torture/20001226-1.c from 36.4s to 16.3s, which still isn't great, but substantially better and this is a simple speedup that applies to lots of different cases. llvm-svn: 91851
-
Chris Lattner authored
llvm-svn: 91849
-
- Dec 18, 2009
-
-
Dan Gohman authored
llvm-svn: 91666
-
- Dec 15, 2009
-
-
Chris Lattner authored
isPodLike type trait. This is a generally useful type trait for more than just DenseMap, and we really care about whether something acts like a pod, not whether it really is a pod. llvm-svn: 91421
-
- Dec 10, 2009
-
-
Chris Lattner authored
value size. This only manifested when memdep inprecisely returns clobber, which is do to a caching issue in the PR5744 testcase. We can 'efficiently emulate' this by using '-no-aa' llvm-svn: 91004
-
Chris Lattner authored
llvm-svn: 90999
-
- Dec 09, 2009
-
-
Chris Lattner authored
clobbers to forward pieces of large stores to small loads, we need to consider the properly phi translated pointer in the store block. llvm-svn: 90978
-
Chris Lattner authored
implicitly constant folds. llvm-svn: 90977
-
Chris Lattner authored
to require the load ty/ptr to be passed in, no functionality change. llvm-svn: 90960
-
Chris Lattner authored
and pointer instead of the load. No functionality change. llvm-svn: 90959
-
Chris Lattner authored
own small class. No functionality change. llvm-svn: 90956
-
Chris Lattner authored
llvm-svn: 90929
-
Chris Lattner authored
phi translation of complex expressions like &A[i+1]. This has the following benefits: 1. The phi translation logic is all contained in its own class with a strong interface and verification that it is self consistent. 2. The logic is more correct than before. Previously, if intermediate expressions got PHI translated, we'd miss the update and scan for the wrong pointers in predecessor blocks. @phi_trans2 is a testcase for this. 3. We have a lot less code in memdep. We can handle phi translation across blocks of things like @phi_trans3, which is pretty insane :). This patch should fix the miscompiles of 255.vortex, and I tested it with a bootstrap of llvm-gcc, llvm-test and dejagnu of course. llvm-svn: 90926
-
- Dec 06, 2009
-
-
Chris Lattner authored
because clang lowers nontrivial automatic struct/array inits to memcpy from a global array. llvm-svn: 90698
-
Chris Lattner authored
llvm-svn: 90697
-
Chris Lattner authored
short x(short *A) { memset(A, 1, sizeof(*A)*100); return A[42]; } to 'return 257' instead of doing the load. llvm-svn: 90695
-
- Dec 03, 2009
-
-
Owen Anderson authored
llvm-svn: 90408
-
- Dec 02, 2009
-
-
Owen Anderson authored
per Chris' comments. Adjust testcases to match. llvm-svn: 90304
-