diff options
author | Eric Christopher <echristo@apple.com> | 2010-03-06 10:50:38 +0000 |
---|---|---|
committer | Eric Christopher <echristo@apple.com> | 2010-03-06 10:50:38 +0000 |
commit | a7fb58f5f5b24be9f3ed5eadcf10ad024b810859 (patch) | |
tree | 88cdd46e4a6927ad5cf071bcd4ba9eda4e07eec2 /llvm/test/Transforms/InstCombine/strcpy_chk.ll | |
parent | b0759be4d07b3dec03b527fe3b50260d6c6d6e86 (diff) | |
download | bcm5719-llvm-a7fb58f5f5b24be9f3ed5eadcf10ad024b810859.tar.gz bcm5719-llvm-a7fb58f5f5b24be9f3ed5eadcf10ad024b810859.zip |
Migrate _chk call lowering from SimplifyLibCalls to InstCombine. Stub
out the remainder of the calls that we should lower in some way and
move the tests to the new correct directory. Fix up tests that are now
optimized more than they were before by -instcombine.
llvm-svn: 97875
Diffstat (limited to 'llvm/test/Transforms/InstCombine/strcpy_chk.ll')
-rw-r--r-- | llvm/test/Transforms/InstCombine/strcpy_chk.ll | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/llvm/test/Transforms/InstCombine/strcpy_chk.ll b/llvm/test/Transforms/InstCombine/strcpy_chk.ll new file mode 100644 index 00000000000..a20a13c78b2 --- /dev/null +++ b/llvm/test/Transforms/InstCombine/strcpy_chk.ll @@ -0,0 +1,12 @@ +; RUN: opt < %s -instcombine -S | FileCheck %s +@a = common global [60 x i8] zeroinitializer, align 1 ; <[60 x i8]*> [#uses=1] +@.str = private constant [8 x i8] c"abcdefg\00" ; <[8 x i8]*> [#uses=1] + +define i8* @foo() nounwind { +; CHECK: @foo +; CHECK-NEXT: call i8* @strcpy + %call = call i8* @__strcpy_chk(i8* getelementptr inbounds ([60 x i8]* @a, i32 0, i32 0), i8* getelementptr inbounds ([8 x i8]* @.str, i32 0, i32 0), i32 60) ; <i8*> [#uses=1] + ret i8* %call +} + +declare i8* @__strcpy_chk(i8*, i8*, i32) nounwind |