1 ; RUN: opt < %s -basic-aa -aa-eval -print-all-alias-modref-info 2>&1 | FileCheck %s
3 declare i32* @captures(i32* %cap) nounwind readonly
6 ; CHECK: NoAlias: i32* %a, i32* %b
7 define void @no(i32* noalias %a, i32* %b) nounwind {
10 %cap = call i32* @captures(i32* %a) nounwind readonly
11 %l = load i32, i32* %b
16 ; CHECK: MayAlias: i32* %c, i32* %d
17 define void @yes(i32* %c, i32* %d) nounwind {
20 %cap = call i32* @captures(i32* %c) nounwind readonly
21 %l = load i32, i32* %d
25 ; Result should be the same for byval instead of noalias.
27 ; CHECK: NoAlias: i32* %a, i32* %b
28 define void @byval(i32* byval(i32) %a, i32* %b) nounwind {
31 %cap = call i32* @captures(i32* %a) nounwind readonly
32 %l = load i32, i32* %b