llvm/test/Transforms/SimplifyLibCalls/2009-02-11-NotInitialized.ll
Nick Lewycky 8968a07768 Reapply r64300:
Make sure the SCC pass manager initializes any contained
function pass managers.  Without this, simplify-libcalls
would add nocapture attributes when run on its own, but
not when run as part of -std-compile-opts or similar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64443 91177308-0d34-0410-b5e6-96231b3b80d8
2009-02-13 07:15:53 +00:00

14 lines
426 B
LLVM

; RUN: llvm-as < %s | opt -inline -simplify-libcalls -functionattrs | \
; RUN: llvm-dis | grep nocapture | count 2
; Check that nocapture attributes are added when run after an SCC pass.
; PR3520
define i32 @use(i8* %x) nounwind readonly {
entry:
%0 = tail call i64 @strlen(i8* %x) nounwind readonly ; <i64> [#uses=1]
%1 = trunc i64 %0 to i32 ; <i32> [#uses=1]
ret i32 %1
}
declare i64 @strlen(i8*) nounwind readonly