blob: cb9819cacea6f76b31ddc083ed41d5a6810a050f [file] [log] [blame]
Dan Gohman3c7d3082009-09-11 18:01:28 +00001; RUN: opt < %s -simplify-libcalls -S > %t
Nick Lewycky5ace5822009-02-13 15:31:46 +00002; RUN: grep nocapture %t | count 2
3; RUN: grep null %t | grep nocapture | count 1
Nick Lewycky05967c82009-02-13 17:08:33 +00004; RUN: grep null %t | grep call | grep readonly | count 1
Nick Lewycky5ace5822009-02-13 15:31:46 +00005
Nick Lewycky05967c82009-02-13 17:08:33 +00006; Test that we add nocapture to the declaration, and to the second call only.
Nick Lewycky5ace5822009-02-13 15:31:46 +00007
Nick Lewycky05967c82009-02-13 17:08:33 +00008declare float @strtol(i8* %s, i8** %endptr, i32 %base)
Nick Lewycky5ace5822009-02-13 15:31:46 +00009
10define void @foo(i8* %x, i8** %endptr) {
Nick Lewycky05967c82009-02-13 17:08:33 +000011 call float @strtol(i8* %x, i8** %endptr, i32 10)
12 call float @strtol(i8* %x, i8** null, i32 10)
Nick Lewycky5ace5822009-02-13 15:31:46 +000013 ret void
14}