diff options
Diffstat (limited to 'llvm/test/Transforms/LICM/2007-10-01-PromoteSafeValue.ll')
| -rw-r--r-- | llvm/test/Transforms/LICM/2007-10-01-PromoteSafeValue.ll | 21 | 
1 files changed, 21 insertions, 0 deletions
diff --git a/llvm/test/Transforms/LICM/2007-10-01-PromoteSafeValue.ll b/llvm/test/Transforms/LICM/2007-10-01-PromoteSafeValue.ll new file mode 100644 index 00000000000..7359cc0695a --- /dev/null +++ b/llvm/test/Transforms/LICM/2007-10-01-PromoteSafeValue.ll @@ -0,0 +1,21 @@ +; RUN: llvm-as < %s | opt -licm | llvm-dis | grep promoted +; Promote value if at least one use is safe + + +define i32 @f2(i32* %p, i8* %q) { +entry: +        br label %loop.head + +loop.head:              ; preds = %cond.true, %entry +        store i32 20, i32* %p +        %tmp3.i = icmp eq i8* null, %q            ; <i1> [#uses=1] +        br i1 %tmp3.i, label %exit, label %cond.true +         +cond.true:              ; preds = %loop.head +        store i32 40, i32* %p +        br label %loop.head + +exit:           ; preds = %loop.head +        ret i32 0 +} +  | 

