- Dec 09, 2009
-
-
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 08, 2009
-
-
Bob Wilson authored
llvm-svn: 90866
-
Bob Wilson authored
I'm not aware that this does anything significant on its own, but it's needed for another patch that I'm working on. llvm-svn: 90864
-
Duncan Sands authored
forwarding any uses). GlobalDCE can also do this, but is only run at -O3. llvm-svn: 90850
-
Nick Lewycky authored
llvm-svn: 90836
-
- Dec 06, 2009
-
-
Chris Lattner authored
llvm-svn: 90708
-
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 05, 2009
-
-
Nick Lewycky authored
integers that are constant except for a single bit (the same n-th bit in each). llvm-svn: 90646
-
- Dec 04, 2009
-
-
Bob Wilson authored
llvm-svn: 90603
-
Bob Wilson authored
llvm-svn: 90601
-
Chris Lattner authored
a compile time perf optimization to avoid a load. llvm-svn: 90507
-
- Dec 03, 2009
-
-
Bob Wilson authored
llvm-svn: 90487
-
Owen Anderson authored
llvm-svn: 90408
-
Chris Lattner authored
Patch by Howard Hinnant! llvm-svn: 90365
-
- Dec 02, 2009
-
-
Jim Grosbach authored
llvm-svn: 90324
-
Andreas Neustifter authored
This is necessary for tests so the results are comparable. llvm-svn: 90320
-
Owen Anderson authored
per Chris' comments. Adjust testcases to match. llvm-svn: 90304
-
Chris Lattner authored
llvm-svn: 90299
-
Chris Lattner authored
llvm-svn: 90298
-
Chris Lattner authored
llvm-svn: 90297
-
- Dec 01, 2009
-
-
Chris Lattner authored
precisely, which prevents us from infinitely peeling the loop. llvm-svn: 90211
-
- Nov 29, 2009
-
-
Benjamin Kramer authored
llvm-svn: 90097
-
Benjamin Kramer authored
llvm-svn: 90089
-
Chris Lattner authored
fix bugs exposed by the tests. Testcases from Alastair Lynn! llvm-svn: 90056
-
Chris Lattner authored
llvm-svn: 90046
-
- Nov 28, 2009
-
-
Chris Lattner authored
handle cases like this: void test(int N, double* G) { long j; for (j = 1; j < N - 1; j++) G[j+1] = G[j] + G[j+1]; } where G[1] isn't live into the loop. llvm-svn: 90041
-
Chris Lattner authored
inserted instructions. No functionality change until someone starts using it. llvm-svn: 90039
-
- Nov 27, 2009
-
-
Chris Lattner authored
to inform GVN about the newly inserted values. This fixes PR5631. llvm-svn: 90022
-
Chris Lattner authored
fixes PR5630 and sets the stage for the next phase of goodness (testcase pending). llvm-svn: 90019
-
Chris Lattner authored
llvm-svn: 90011
-
Chris Lattner authored
array indexes. The "complex" case of SRoA still handles them, and correctly. This fixes a weirdness where we'd correctly avoid transforming A[0][42] if the 42 was too large, but we'd only do it if it was one gep, not two separate ones. llvm-svn: 90007
-
Chris Lattner authored
where it is not available. It's unclear how to get this inserted computation into GVN's scalar availability sets, Owen, help? :) llvm-svn: 89997
-
Chris Lattner authored
translation done by memdep, and reenable gep translation again. llvm-svn: 89992
-
Chris Lattner authored
SimplifyGEPInst method in InstructionSimplify.h. No functionality change. llvm-svn: 89980
-
- Nov 26, 2009
-
-
Chris Lattner authored
llvm-svn: 89972
-