diff options
author | Nick Lewycky <nicholas@mxc.ca> | 2009-02-13 15:31:46 +0000 |
---|---|---|
committer | Nick Lewycky <nicholas@mxc.ca> | 2009-02-13 15:31:46 +0000 |
commit | 5ace5827a7797a59e02b5384ad1ae1c0b81057f6 (patch) | |
tree | fc859fd7a2713267c986d57d53752c09052e360e /test | |
parent | 511a1946433d2c3dc049eba0f395cb79b54c1038 (diff) | |
download | external_llvm-5ace5827a7797a59e02b5384ad1ae1c0b81057f6.zip external_llvm-5ace5827a7797a59e02b5384ad1ae1c0b81057f6.tar.gz external_llvm-5ace5827a7797a59e02b5384ad1ae1c0b81057f6.tar.bz2 |
On strtod and friends, mark 'endptr' nocapture in the function prototype, and
mark the first argument nocapture if endptr=NULL for each particular call.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64453 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/Transforms/SimplifyLibCalls/2009-02-12-StrTo.ll | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/test/Transforms/SimplifyLibCalls/2009-02-12-StrTo.ll b/test/Transforms/SimplifyLibCalls/2009-02-12-StrTo.ll new file mode 100644 index 0000000..3d51d78 --- /dev/null +++ b/test/Transforms/SimplifyLibCalls/2009-02-12-StrTo.ll @@ -0,0 +1,13 @@ +; RUN: llvm-as < %s | opt -simplify-libcalls | llvm-dis > %t +; RUN: grep nocapture %t | count 2 +; RUN: grep null %t | grep nocapture | count 1 + +; Test that we do add nocapture to the declaration, and to the second call only. + +declare float @strtof(i8* %s, i8** %endptr, i32 %base) + +define void @foo(i8* %x, i8** %endptr) { + call float @strtof(i8* %x, i8** %endptr, i32 0) + call float @strtof(i8* %x, i8** null, i32 0) + ret void +} |