2009-02-13 15:31:46 +00:00
|
|
|
; RUN: llvm-as < %s | opt -simplify-libcalls | llvm-dis > %t
|
|
|
|
; RUN: grep nocapture %t | count 2
|
|
|
|
; RUN: grep null %t | grep nocapture | count 1
|
2009-02-13 17:08:33 +00:00
|
|
|
; RUN: grep null %t | grep call | grep readonly | count 1
|
2009-02-13 15:31:46 +00:00
|
|
|
|
2009-02-13 17:08:33 +00:00
|
|
|
; Test that we add nocapture to the declaration, and to the second call only.
|
2009-02-13 15:31:46 +00:00
|
|
|
|
2009-02-13 17:08:33 +00:00
|
|
|
declare float @strtol(i8* %s, i8** %endptr, i32 %base)
|
2009-02-13 15:31:46 +00:00
|
|
|
|
|
|
|
define void @foo(i8* %x, i8** %endptr) {
|
2009-02-13 17:08:33 +00:00
|
|
|
call float @strtol(i8* %x, i8** %endptr, i32 10)
|
|
|
|
call float @strtol(i8* %x, i8** null, i32 10)
|
2009-02-13 15:31:46 +00:00
|
|
|
ret void
|
|
|
|
}
|