Lines Matching refs:strlen
2 ; Test that the strlen library call simplifier works correctly.
16 declare i32 @strlen(i8*)
18 ; Check strlen(string constant) -> integer constant.
25 %hello_l = call i32 @strlen(i8* %hello_p)
34 %null_l = call i32 @strlen(i8* %null_p)
43 %null_hello_l = call i32 @strlen(i8* %null_hello_p)
51 %len = tail call i32 @strlen(i8* @nullstring) nounwind
55 ; Check strlen(x) == 0 --> *x == 0.
62 %hello_l = call i32 @strlen(i8* %hello_p)
72 %null_l = call i32 @strlen(i8* %null_p)
77 ; Check strlen(x) != 0 --> *x != 0.
84 %hello_l = call i32 @strlen(i8* %hello_p)
94 %null_l = call i32 @strlen(i8* %null_p)
107 %l = call i32 @strlen(i8* %s)
112 ; strlen(@hello + x) --> 5 - x
120 %hello_l = call i32 @strlen(i8* %hello_p)
124 ; strlen(@null_hello_mid + (x & 7)) --> 9 - (x & 7)
134 %hello_l = call i32 @strlen(i8* %hello_p)
142 ; CHECK-NEXT: [[A_L:%.*]] = call i32 @strlen(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @…
146 %a_l = call i32 @strlen(i8* %a_p)
150 ; strlen(@null_hello + x) should not be simplified to a sub instruction.
155 ; CHECK-NEXT: [[HELLO_L:%.*]] = call i32 @strlen(i8* [[HELLO_P]])
159 %hello_l = call i32 @strlen(i8* %hello_p)
163 ; strlen(@null_hello_mid + (x & 15)) should not be simplified to a sub instruction.
169 ; CHECK-NEXT: [[HELLO_L:%.*]] = call i32 @strlen(i8* [[HELLO_P]])
174 %hello_l = call i32 @strlen(i8* %hello_p)