1
1
; RUN: opt < %s -aa-pipeline=basic-aa -passes=aa-eval -print-all-alias-modref-info -disable-output 2>&1 | FileCheck %s
2
2
; REQUIRES: arm-registered-target
3
- ; This hasn't been run in a long time and it no longer matches reality.
4
- ; Filed issue #58738.
5
- ; XFAIL: *
6
3
7
4
target datalayout = "e-p:32:32:32-i1:8:32-i8:8:32-i16:16:32-i32:32:32-i64:32:32-f32:32:32-f64:32:32-v64:32:64-v128:32:128-a0:0:32-n32"
8
5
target triple = "arm-apple-ios"
@@ -17,16 +14,18 @@ entry:
17
14
call void @llvm.arm.neon.vst1.p0i8.v8i16 (i8* %q , <8 x i16 > %y , i32 16 )
18
15
%b = call <8 x i16 > @llvm.arm.neon.vld1.v8i16.p0i8 (i8* %p , i32 16 ) nounwind
19
16
%c = add <8 x i16 > %a , %b
17
+ load i8 , i8* %p
18
+ load i8 , i8* %q
20
19
ret <8 x i16 > %c
21
20
22
21
; CHECK-LABEL: Function: test1:
23
22
24
23
; CHECK: NoAlias: i8* %p, i8* %q
25
- ; CHECK: Just Ref (MustAlias) : Ptr: i8* %p <-> %a = call <8 x i16> @llvm.arm.neon.vld1.v8i16.p0i8(i8* %p, i32 16)
24
+ ; CHECK: Just Ref: Ptr: i8* %p <-> %a = call <8 x i16> @llvm.arm.neon.vld1.v8i16.p0i8(i8* %p, i32 16)
26
25
; CHECK: NoModRef: Ptr: i8* %q <-> %a = call <8 x i16> @llvm.arm.neon.vld1.v8i16.p0i8(i8* %p, i32 16)
27
26
; CHECK: NoModRef: Ptr: i8* %p <-> call void @llvm.arm.neon.vst1.p0i8.v8i16(i8* %q, <8 x i16> %y, i32 16)
28
- ; CHECK: Both ModRef (MustAlias) : Ptr: i8* %q <-> call void @llvm.arm.neon.vst1.p0i8.v8i16(i8* %q, <8 x i16> %y, i32 16)
29
- ; CHECK: Just Ref (MustAlias) : Ptr: i8* %p <-> %b = call <8 x i16> @llvm.arm.neon.vld1.v8i16.p0i8(i8* %p, i32 16)
27
+ ; CHECK: Both ModRef: Ptr: i8* %q <-> call void @llvm.arm.neon.vst1.p0i8.v8i16(i8* %q, <8 x i16> %y, i32 16)
28
+ ; CHECK: Just Ref: Ptr: i8* %p <-> %b = call <8 x i16> @llvm.arm.neon.vld1.v8i16.p0i8(i8* %p, i32 16)
30
29
; CHECK: NoModRef: Ptr: i8* %q <-> %b = call <8 x i16> @llvm.arm.neon.vld1.v8i16.p0i8(i8* %p, i32 16)
31
30
; CHECK: NoModRef: %a = call <8 x i16> @llvm.arm.neon.vld1.v8i16.p0i8(i8* %p, i32 16) #{{[0-9]+}} <-> call void @llvm.arm.neon.vst1.p0i8.v8i16(i8* %q, <8 x i16> %y, i32 16)
32
31
; CHECK: NoModRef: %a = call <8 x i16> @llvm.arm.neon.vld1.v8i16.p0i8(i8* %p, i32 16) #{{[0-9]+}} <-> %b = call <8 x i16> @llvm.arm.neon.vld1.v8i16.p0i8(i8* %p, i32 16)
0 commit comments