From 8b9f9b3d60c71024be0e105fde609c32e9a9a0af Mon Sep 17 00:00:00 2001 From: Reid Spencer Date: Mon, 25 Apr 2005 21:08:34 +0000 Subject: [PATCH] Update the test case to handle a few more (degenerate) cases and remove the restriction that it is an XFAIL because it now passes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21545 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../SimplifyLibCalls/2005-04-24-strcat.ll | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/test/Transforms/SimplifyLibCalls/2005-04-24-strcat.ll b/test/Transforms/SimplifyLibCalls/2005-04-24-strcat.ll index 7c78dd12dc9..a0e7a6c10ee 100644 --- a/test/Transforms/SimplifyLibCalls/2005-04-24-strcat.ll +++ b/test/Transforms/SimplifyLibCalls/2005-04-24-strcat.ll @@ -1,9 +1,11 @@ ; Test that the StrCatOptimizer works correctly -; RUN: llvm-as < %s | opt -simplify-libcalls | llvm-dis | grep strlen -; XFAIL: * +; RUN: llvm-as < %s | opt -simplify-libcalls | llvm-dis | grep -v 'call.*strcat' declare sbyte* %strcat(sbyte*,sbyte*) +declare int %puts(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" implementation ; Functions: @@ -12,6 +14,11 @@ int %main () { %arg1 = getelementptr [1024 x sbyte]* %target, int 0, int 0 store sbyte 0, sbyte* %arg1 %arg2 = getelementptr [6 x sbyte]* %hello, int 0, int 0 - %rslt = call sbyte* %strcat(sbyte* %arg1, sbyte* %arg2) + %rslt1 = call sbyte* %strcat(sbyte* %arg1, sbyte* %arg2) + %arg3 = getelementptr [1 x sbyte]* %null, int 0, int 0 + %rslt2 = call sbyte* %strcat(sbyte* %rslt1, sbyte* %arg3) + %arg4 = getelementptr [7 x sbyte]* %null_hello, int 0, int 0 + %rslt3 = call sbyte* %strcat(sbyte* %rslt2, sbyte* %arg4) + call int %puts(sbyte* %rslt3) ret int 0 } -- 2.34.1