Mercurial > hg > CbC > CbC_llvm
diff test/Transforms/InstCombine/2008-06-13-ReadOnlyCallStore.ll @ 0:95c75e76d11b LLVM3.4
LLVM 3.4
author | Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 12 Dec 2013 13:56:28 +0900 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/Transforms/InstCombine/2008-06-13-ReadOnlyCallStore.ll Thu Dec 12 13:56:28 2013 +0900 @@ -0,0 +1,19 @@ +; RUN: opt < %s -instcombine -S | grep "store i8" | count 2 + +define i32 @a(i8* %s) nounwind { +entry: + store i8 0, i8* %s, align 1 ; This store cannot be eliminated! + %tmp3 = call i32 @strlen( i8* %s ) nounwind readonly + %tmp5 = icmp ne i32 %tmp3, 0 + br i1 %tmp5, label %bb, label %bb8 + +bb: ; preds = %entry + store i8 0, i8* %s, align 1 + br label %bb8 + +bb8: + ret i32 %tmp3 +} + +declare i32 @strlen(i8*) nounwind readonly +