diff --git a/test/Analysis/GlobalsModRef/purecse.ll b/test/Analysis/GlobalsModRef/purecse.ll index f812494f1aa..bed282338d6 100644 --- a/test/Analysis/GlobalsModRef/purecse.ll +++ b/test/Analysis/GlobalsModRef/purecse.ll @@ -7,9 +7,17 @@ int %pure(int %X) { ret int %Y } -int %test(int %X) { +int %test1(int %X) { %A = call int %pure(int %X) %B = call int %pure(int %X) %C = sub int %A, %B ret int %C } + +int %test2(int %X, int* %P) { + %A = call int %pure(int %X) + store int %X, int* %P ;; Does not invalidate 'pure' call. + %B = call int %pure(int %X) + %C = sub int %A, %B + ret int %C +}