Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.139 - 1.140
---
Log message:
Use DominatorTree instead of ETForest.
---
Diffs of the changes: (+7 -8)
LoopStrengthReduce.cpp | 15 +++
1 files changed, 7 insertions(+), 8 deletions(-)
Index:
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.138 - 1.139
---
Log message:
Fix PR1495: http://llvm.org/PR1495 and CodeGen/X86/2007-06-05-LSR-Dominator.ll
---
Diffs of the changes: (+6 -0)
LoopStrengthReduce.cpp |6 ++
1 files changed, 6
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.137 - 1.138
---
Log message:
Handle negative strides much more optimally. This compiles
X86/lsr-negative-stride.ll
into:
_t:
movl 8(%esp), %ecx
movl 4(%esp), %eax
cmpl %ecx, %eax
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.136 - 1.137
---
Log message:
significantly improve debug output of lsr
---
Diffs of the changes: (+13 -6)
LoopStrengthReduce.cpp | 19 +--
1 files changed, 13 insertions(+), 6 deletions(-)
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.135 - 1.136
---
Log message:
Use IntrinsicInst to test for prefetch instructions, which is ever so
slightly nicer than using CallInst with an extra check; thanks Chris.
---
Diffs of the changes: (+5 -6)
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.134 - 1.135
---
Log message:
Allow strength reduction to make use of addressing modes for the
address operand in a prefetch intrinsic.
---
Diffs of the changes: (+10 -1)
LoopStrengthReduce.cpp | 11
+ } else if (CallInst *CI = dyn_castCallInst(UsersToProcess
[i].Inst)) {
+// Addressing modes can also be folded into prefetches.
+Function *CalledFunc = CI-getCalledFunction();
+if (CalledFunc != NULL
+CalledFunc-getIntrinsicID() ==
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.130 - 1.131
---
Log message:
Fix
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070423/048333.html
---
Diffs of the changes: (+9 -5)
LoopStrengthReduce.cpp | 14 +-
1 files
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.129 - 1.130
---
Log message:
Remove ImmediateDominator analysis. The same information can be obtained from
DomTree. A lot of code for
constructing ImmediateDominator is now folded into DomTree construction.
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.128 - 1.129
---
Log message:
Now that codegen prepare isn't defeating me, I can finally fix what I set
out to do! :)
This fixes a problem where LSR would insert a bunch of code into each MBB
that uses a
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.127 - 1.128
---
Log message:
switch LSR to use isLegalAddressingMode instead of other simpler hooks
---
Diffs of the changes: (+21 -18)
LoopStrengthReduce.cpp | 39 +--
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.126 - 1.127
---
Log message:
Completely purge DomSet. This is the (hopefully) final patch for PR1171:
http://llvm.org/PR1171 .
---
Diffs of the changes: (+0 -1)
LoopStrengthReduce.cpp |1 -
1 files
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.123 - 1.124
---
Log message:
Pass the type of the store access, not the type of the store, into the
target hook. This allows us to codegen a loop as:
LBB1_1: @cond_next
mov r2, #0
str r2, [r0,
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.124 - 1.125
---
Log message:
allow -1 strides to reuse 1 strides.
---
Diffs of the changes: (+2 -1)
LoopStrengthReduce.cpp |3 ++-
1 files changed, 2 insertions(+), 1 deletion(-)
Index:
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.125 - 1.126
---
Log message:
split some code out into a helper function
---
Diffs of the changes: (+30 -18)
LoopStrengthReduce.cpp | 48 ++--
1 files changed,
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.122 - 1.123
---
Log message:
print the type of an inserted IV in -debug mode.
---
Diffs of the changes: (+4 -3)
LoopStrengthReduce.cpp |7 ---
1 files changed, 4 insertions(+), 3 deletions(-)
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.121 - 1.122
---
Log message:
Look through bitcast when finding IVs. (Chris' patch really.)
---
Diffs of the changes: (+10 -0)
LoopStrengthReduce.cpp | 10 ++
1 files changed, 10 insertions(+)
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.119 - 1.120
---
Log message:
Fix some VC++ warnings.
---
Diffs of the changes: (+1 -1)
LoopStrengthReduce.cpp |2 +-
1 files changed, 1 insertion(+), 1 deletion(-)
Index:
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.120 - 1.121
---
Log message:
do not share old induction variables when this would result in invalid
instructions (that would have to be split later)
---
Diffs of the changes: (+26 -18)
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.118 - 1.119
---
Log message:
use types of loads and stores, not address, in CheckForIVReuse
---
Diffs of the changes: (+28 -7)
LoopStrengthReduce.cpp | 35 ---
1 files
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.117 - 1.118
---
Log message:
Correct type info for isLegalAddressImmediate() check.
---
Diffs of the changes: (+18 -12)
LoopStrengthReduce.cpp | 30 ++
1 files changed, 18
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.116 - 1.117
---
Log message:
Use new TargetLowering addressing modes hooks.
---
Diffs of the changes: (+18 -20)
LoopStrengthReduce.cpp | 38 ++
1 files changed, 18
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.115 - 1.116
---
Log message:
Increment iterator now because IVUseShouldUsePostIncValue may remove
User from the list of I users.
---
Diffs of the changes: (+6 -2)
LoopStrengthReduce.cpp |8 ++--
1
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.114 - 1.115
---
Log message:
Now LoopStrengthReduce is a LoopPass.
---
Diffs of the changes: (+14 -23)
LoopStrengthReduce.cpp | 37 ++---
1 files changed, 14 insertions(+),
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.111 - 1.112
LoopUnswitch.cpp updated: 1.63 - 1.64
---
Log message:
Use more efficient test for one value in a ConstantInt.
---
Diffs of the changes: (+14 -13)
LoopStrengthReduce.cpp | 23
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.112 - 1.113
---
Log message:
Dang, I've done that twice now! Undo previous commit.
---
Diffs of the changes: (+11 -12)
LoopStrengthReduce.cpp | 23 +++
1 files changed, 11
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.113 - 1.114
---
Log message:
Finally get this patch right :)
Replace expensive getZExtValue() == 0 calls with isZero() calls.
---
Diffs of the changes: (+5 -5)
LoopStrengthReduce.cpp | 10 +-
1
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.108 - 1.109
ScalarReplAggregates.cpp updated: 1.70 - 1.71
---
Log message:
Privatize StructLayout::MemberOffsets, adding an accessor
---
Diffs of the changes: (+3 -2)
LoopStrengthReduce.cpp |2 +-
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.104 - 1.105
---
Log message:
For PR1097: http://llvm.org/PR1097 :
Enable complex addressing modes on 64-bit platforms involving two induction
variables by keeping a size and scale in 64-bits not 32.
Patch by
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.103 - 1.104
---
Log message:
no need to worry about int vs uint any more.
---
Diffs of the changes: (+1 -2)
LoopStrengthReduce.cpp |3 +--
1 files changed, 1 insertion(+), 2 deletions(-)
Index:
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.99 - 1.100
---
Log message:
Change the interface to SCEVExpander::InsertCastOfTo to take a cast opcode
so the decision of which opcode to use is pushed upward to the caller.
Adjust the callers to pass the
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.98 - 1.99
SCCP.cpp updated: 1.140 - 1.141
---
Log message:
Change inferred getCast into specific getCast. Passes all tests.
---
Diffs of the changes: (+9 -3)
LoopStrengthReduce.cpp |9 +++--
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.86 - 1.87
---
Log message:
Changes:
1. Update an obsolete comment.
2. Make the sorting by base an explicit (though still N^2) step, so
that the code is more clear on what it is doing.
3. Partition
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.84 - 1.85
LowerAllocations.cpp updated: 1.58 - 1.59
ScalarReplAggregates.cpp updated: 1.39 - 1.40
---
Log message:
Use hidden visibility to make symbols in an anonymous namespace get
dropped. This shrinks
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.83 - 1.84
---
Log message:
RewriteExpr, either the new PHI node of induction variable or the
post-increment value, should be first cast to the appropriated type (to the
type of the common expr). Otherwise, the
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.81 - 1.82
---
Log message:
Fix spello
---
Diffs of the changes: (+2 -2)
LoopStrengthReduce.cpp |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
Index:
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.80 - 1.81
---
Log message:
silence a bogus gcc warning
---
Diffs of the changes: (+2 -2)
LoopStrengthReduce.cpp |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
Index:
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.79 - 1.80
---
Log message:
- Fixed a bogus if condition.
- Added more debugging info.
- Allow reuse of IV of negative stride. e.g. -4 stride == 2 * iv of -2 stride.
---
Diffs of the changes: (+25 -19)
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.77 - 1.78
---
Log message:
Allow users of iv / stride to be rewritten with expression that is a multiply
of a smaller stride even if they have a common loop invariant expression part.
---
Diffs of the changes:
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.78 - 1.79
---
Log message:
Sort StrideOrder so we can process the smallest strides first. This allows
for more IV reuses.
---
Diffs of the changes: (+27 -0)
LoopStrengthReduce.cpp | 27
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.76 - 1.77
---
Log message:
For each loop, keep track of all the IV expressions inserted indexed by
stride. For a set of uses of the IV of a stride which is a multiple
of another stride, do not insert a new IV
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.73 - 1.74
---
Log message:
Fix two significant bugs in LSR:
1. When rewriting code in outer loops, sometimes we would insert code into
inner loops that is invariant in that loop.
2. Notice that 4*(2+x) is
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.70 - 1.71
---
Log message:
getRawValue zero extens for unsigned values, use getsextvalue so that we
know that small negative values fit into the immediate field of addressing
modes.
---
Diffs of the changes:
43 matches
Mail list logo