OSDN Git Service

Merging r339636:
[android-x86/external-llvm.git] / test / Analysis / BasicAA / tail-byval.ll
1 ; RUN: opt -basicaa -aa-eval -print-all-alias-modref-info -disable-output < %s 2>&1 | FileCheck %s
2
3 declare void @takebyval(i32* byval %p)
4
5 define i32 @tailbyval() {
6 entry:
7   %p = alloca i32
8   store i32 42, i32* %p
9   tail call void @takebyval(i32* byval %p)
10   %rv = load i32, i32* %p
11   ret i32 %rv
12 }
13 ; FIXME: This should be Just Ref.
14 ; CHECK-LABEL: Function: tailbyval: 1 pointers, 1 call sites
15 ; CHECK-NEXT:   Both ModRef:  Ptr: i32* %p       <->  tail call void @takebyval(i32* byval %p)