[InstCombine] X - 0 is equal to X, not undef
[oota-llvm.git] / test / Transforms / InstCombine / memset.ll
1 ; RUN: opt < %s -instcombine -S | not grep "call.*llvm.memset"
2
3 define i32 @main() {
4   %target = alloca [1024 x i8]
5   %target_p = getelementptr [1024 x i8], [1024 x i8]* %target, i32 0, i32 0
6   call void @llvm.memset.p0i8.i32(i8* %target_p, i8 1, i32 0, i32 1, i1 false)
7   call void @llvm.memset.p0i8.i32(i8* %target_p, i8 1, i32 1, i32 1, i1 false)
8   call void @llvm.memset.p0i8.i32(i8* %target_p, i8 1, i32 2, i32 2, i1 false)
9   call void @llvm.memset.p0i8.i32(i8* %target_p, i8 1, i32 4, i32 4, i1 false)
10   call void @llvm.memset.p0i8.i32(i8* %target_p, i8 1, i32 8, i32 8, i1 false)
11   ret i32 0
12 }
13
14 declare void @llvm.memset.p0i8.i32(i8* nocapture, i8, i32, i32, i1) nounwind