Result of strlen is size_t which is either uint or ulong, not int.
authorReid Spencer <rspencer@reidspencer.com>
Tue, 26 Apr 2005 19:04:46 +0000 (19:04 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Tue, 26 Apr 2005 19:04:46 +0000 (19:04 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21567 91177308-0d34-0410-b5e6-96231b3b80d8

test/Transforms/SimplifyLibCalls/StrLen.ll

index 0e1750162f9d3fd34b9fef3f9ba1cca1f90d3e1b..3bae110475fe4e97fa32d48313cb9de4446e9a13 100644 (file)
@@ -1,7 +1,7 @@
 ; Test that the StrCatOptimizer works correctly
 ; RUN: llvm-as < %s | opt -simplify-libcalls | llvm-dis | not grep 'call.*strlen'
 
-declare int %strlen(sbyte*)
+declare uint %strlen(sbyte*)
 %hello = constant [6 x sbyte] c"hello\00"
 %null = constant [1 x sbyte] c"\00"
 %null_hello = constant [7 x sbyte] c"\00hello\00"
@@ -10,11 +10,11 @@ implementation   ; Functions:
 
 int %main () {
   %hello_p = getelementptr [6 x sbyte]* %hello, int 0, int 0
-  %hello_l = call int %strlen(sbyte* %hello_p)
+  %hello_l = call uint %strlen(sbyte* %hello_p)
   %null_p = getelementptr [1 x sbyte]* %null, int 0, int 0
-  %null_l = call int %strlen(sbyte* %null_p)
+  %null_l = call uint %strlen(sbyte* %null_p)
   %null_hello_p = getelementptr [7 x sbyte]* %null_hello, int 0, int 0
-  %null_hello_l = call int %strlen(sbyte* %null_hello_p)
+  %null_hello_l = call uint %strlen(sbyte* %null_hello_p)
   %sum1 = add int %hello_l, %null_l
   %sum2 = add int %sum1, %null_hello_l
   ret int %sum2