| Commit message (Collapse) | Author | Age | Files | Lines | 
| ... |  | 
| | 
| 
| 
| 
| 
|  | 
s/errs/dbgs/g except for certain special cases.
llvm-svn: 92042
 | 
| | 
| 
| 
| 
| 
|  | 
s/errs/dbgs/g except for certain special cases.
llvm-svn: 92040
 | 
| | 
| 
| 
| 
| 
|  | 
s/errs/dbgs/g except for certain special cases.
llvm-svn: 92039
 | 
| | 
| 
| 
| 
| 
|  | 
s/errs/dbgs/g except for certain special cases.
llvm-svn: 92037
 | 
| | 
| 
| 
| 
| 
|  | 
s/errs/dbgs/g except for certain special cases.
llvm-svn: 92035
 | 
| | 
| 
| 
| 
| 
|  | 
s/errs/dbgs/g except for certain special cases.
llvm-svn: 92034
 | 
| | 
| 
| 
| 
| 
|  | 
s/errs/dbgs/g except for certain special cases.
llvm-svn: 92033
 | 
| | 
| 
| 
| 
| 
|  | 
s/errs/dbgs/g except for certain special cases.
llvm-svn: 92032
 | 
| | 
| 
| 
| 
| 
|  | 
s/errs/dbgs/g except for certain special cases.
llvm-svn: 92029
 | 
| | 
| 
| 
| 
| 
|  | 
s/errs/dbgs/g except for certain special cases.
llvm-svn: 92026
 | 
| | 
| 
| 
| 
| 
|  | 
s/errs/dbgs/g except for certain special cases.
llvm-svn: 92024
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
result
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
 | 
| | 
| 
| 
| 
| 
|  | 
a call.  This speeds up memdep ~1.5%
llvm-svn: 91869
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
cache a pointer as being unavailable due to phi trans in the
wrong place.  This would cause later queries to fail even when
they didn't involve phi trans.
llvm-svn: 91787
 | 
| | 
| 
| 
|  | 
llvm-svn: 91742
 | 
| | 
| 
| 
|  | 
llvm-svn: 91729
 | 
| | 
| 
| 
|  | 
llvm-svn: 91722
 | 
| | 
| 
| 
| 
| 
|  | 
associative either.
llvm-svn: 91701
 | 
| | 
| 
| 
| 
| 
|  | 
is not reassociative.
llvm-svn: 91667
 | 
| | 
| 
| 
|  | 
llvm-svn: 91659
 | 
| | 
| 
| 
|  | 
llvm-svn: 91656
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
contains another loop, or an instruction. The loop form is
substantially more efficient on large loops than the typical
code it replaces.
llvm-svn: 91654
 | 
| | 
| 
| 
|  | 
llvm-svn: 91651
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
of 91296 that caused trouble -- the Processed list needs to be
preserved for the livetime of the pass, as AddUsersIfInteresting
is called from other passes.
llvm-svn: 91641
 | 
| | 
| 
| 
| 
| 
|  | 
introduced a non-deterministic behavior in the optimizer somewhere.
llvm-svn: 91598
 | 
| | 
| 
| 
| 
| 
| 
|  | 
real data, not metadata) and fix DbgInfoPrinter to not abuse
GetConstantStringInfo.
llvm-svn: 91444
 | 
| | 
| 
| 
|  | 
llvm-svn: 91440
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
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
 | 
| | 
| 
| 
| 
| 
|  | 
clang enforces it.
llvm-svn: 91397
 | 
| | 
| 
| 
| 
| 
|  | 
IVUses list in releaseMemory().
llvm-svn: 91296
 | 
| | 
| 
| 
| 
| 
|  | 
condition was inverted when the code was converted to contains().
llvm-svn: 91295
 | 
| | 
| 
| 
| 
| 
|  | 
former was just exposing a LoopInfoBase implementation detail.
llvm-svn: 91286
 | 
| | 
| 
| 
| 
| 
|  | 
avoid spurious failures. This fixes PR5758.
llvm-svn: 91147
 | 
| | 
| 
| 
| 
| 
|  | 
currently somewhat convenient for them to have the same value.
llvm-svn: 90980
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
add, there is no need to scan the world to find the same add again.
This invalidates the previous testcase, which wasn't wonderful anyway,
because it needed a run of instcombine to permute the use-lists in 
just the right way to before GVN was run (so it was really fragile).
Not a big loss.
llvm-svn: 90973
 | 
| | 
| 
| 
| 
| 
|  | 
binary operator that wasn't an add.  In this case, a xor.  Whoops.
llvm-svn: 90971
 | 
| | 
| 
| 
| 
| 
|  | 
of the query.
llvm-svn: 90958
 | 
| | 
| 
| 
| 
| 
|  | 
own small class.  No functionality change.
llvm-svn: 90956
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
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
 | 
| | 
| 
| 
|  | 
llvm-svn: 90920
 | 
| | 
| 
| 
|  | 
llvm-svn: 90915
 | 
| | 
| 
| 
| 
| 
|  | 
that Chris noticed.
llvm-svn: 90910
 | 
| | 
| 
| 
| 
| 
|  | 
the translated value back to it if an instruction.
llvm-svn: 90909
 | 
| | 
| 
| 
|  | 
llvm-svn: 90908
 | 
| | 
| 
| 
|  | 
llvm-svn: 90906
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
examines; fall back to a conservative answer if there are
more. This works around some several compile time problems
resulting from BasicAliasAnalysis calling PointerMayBeCaptured.
The value has been chosen arbitrarily.
This fixes rdar://7438917 and may partially address PR5708.
llvm-svn: 90905
 | 
| | 
| 
| 
| 
| 
|  | 
date when instsimplify kicks in.
llvm-svn: 90901
 | 
| | 
| 
| 
|  | 
llvm-svn: 90898
 | 
| | 
| 
| 
| 
| 
|  | 
side-effect the current object.
llvm-svn: 90837
 | 
| | 
| 
| 
|  | 
llvm-svn: 90807
 |