1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
llvm-mirror/lib
Chris Lattner 1dcd811d36 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
2005-08-03 22:51:21 +00:00
..
Analysis add support for Graphviz when viewing CFGs 2005-08-03 17:55:05 +00:00
AsmParser Fix grammar 2005-06-24 18:00:40 +00:00
Bytecode Eliminate all remaining tabs and trailing spaces. 2005-07-27 06:12:32 +00:00
CodeGen Fix PR611, codegen'ing SREM of FP operands to fmod or fmodf instead of 2005-08-03 20:31:37 +00:00
Debugger For PR495: 2005-07-07 23:21:43 +00:00
ExecutionEngine one cannot allocate a global, until one is done initializing the global pointers 2005-08-01 17:35:40 +00:00
Linker For PR495: 2005-07-07 23:21:43 +00:00
Support 200.sixtrack prints FP numbers with a very strange notation that uses D 2005-08-02 00:11:53 +00:00
System Fix grammar: it's == "it is". 2005-08-02 16:04:59 +00:00
Target Alpha ABI specifies stack is always 16 byte alligned, and gcc does it, so I will too 2005-08-03 22:33:21 +00:00
Transforms Move from Stage 0 to Stage 1. 2005-08-03 22:51:21 +00:00
VMCore Eliminate all remaining tabs and trailing spaces. 2005-07-27 06:12:32 +00:00
Makefile