diff options
| author | Chris Lattner <sabre@nondot.org> | 2005-08-03 22:51:21 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2005-08-03 22:51:21 +0000 |
| commit | db23c74e5e4a2105137a9c673755438ba2849c07 (patch) | |
| tree | 837f7c7a4e982c674a81d55db2ef53896b987ef3 /llvm/lib/Transforms/Hello | |
| parent | 3a18a39587e830f3fb6fb0bdbbde12080ccb93ba (diff) | |
| download | bcm5719-llvm-db23c74e5e4a2105137a9c673755438ba2849c07.tar.gz bcm5719-llvm-db23c74e5e4a2105137a9c673755438ba2849c07.zip | |
Move from Stage 0 to Stage 1.
Only emit one PHI node for IV uses with identical bases and strides (after
moving foldable immediates to the load/store instruction).
This implements LoopStrengthReduce/dont_insert_redundant_ops.ll, allowing
us to generate this PPC code for test1:
or r30, r3, r3
.LBB_test1_1: ; Loop
li r2, 0
stw r2, 0(r30)
stw r2, 4(r30)
bl L_pred$stub
addi r30, r30, 8
cmplwi cr0, r3, 0
bne .LBB_test1_1 ; Loop
instead of this code:
or r30, r3, r3
or r29, r3, r3
.LBB_test1_1: ; Loop
li r2, 0
stw r2, 0(r29)
stw r2, 4(r30)
bl L_pred$stub
addi r30, r30, 8 ;; Two iv's with step of 8
addi r29, r29, 8
cmplwi cr0, r3, 0
bne .LBB_test1_1 ; Loop
llvm-svn: 22635
Diffstat (limited to 'llvm/lib/Transforms/Hello')
0 files changed, 0 insertions, 0 deletions

