Fixes PR22462: two of the tests have regressed for a while,
but were using CHECK-NOT to match "May:". The actual output
was changed to "MayAlias:" at some point, which made the tests
useless.
Two others return MayAlias only because of a lack of analysis;
BasicAA returns PartialAlias in those cases, when a datalayout
is present.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@228346
91177308-0d34-0410-b5e6-
96231b3b80d8
; RUN: opt < %s -basicaa -aa-eval -print-may-aliases -disable-output 2>&1 | FileCheck %s
+target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+
%T = type { i32, [10 x i8] }
; CHECK: Function: test
-; CHECK-NOT: May:
+; CHECK-NOT: MayAlias:
define void @test(%T* %P) {
%A = getelementptr %T* %P, i64 0
; RUN: opt < %s -basicaa -aa-eval -print-may-aliases -disable-output 2>&1 | FileCheck %s
+target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+
%T = type { i32, [10 x i8] }
@G = external global %T
; CHECK: Function: test
-; CHECK-NOT: May:
+; CHECK-NOT: MayAlias:
define void @test() {
%D = getelementptr %T* @G, i64 0, i32 0
; RUN: opt < %s -basicaa -aa-eval -print-all-alias-modref-info -disable-output 2>&1 | FileCheck %s
+target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+
; CHECK: Function: foo
-; CHECK: MayAlias: i32* %Ipointer, i32* %Jpointer
+; CHECK: PartialAlias: i32* %Ipointer, i32* %Jpointer
; CHECK: 9 no alias responses
-; CHECK: 6 may alias responses
+; CHECK: 6 partial alias responses
define void @foo(i32* noalias %p, i32* noalias %q, i32 %i, i32 %j) {
%Ipointer = getelementptr i32* %p, i32 %i
; RUN: opt < %s -basicaa -aa-eval -print-all-alias-modref-info 2>&1 | FileCheck %s
; PR4267
-; CHECK: MayAlias: double* %p.0.i.0, double* %p3
+target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+
+; CHECK: PartialAlias: double* %p.0.i.0, double* %p3
; %p3 is equal to %p.0.i.0 on the second iteration of the loop,
-; so MayAlias is needed.
+; so MayAlias is needed. In practice, basicaa returns PartialAlias
+; for GEPs to ignore TBAA.
define void @foo([3 x [3 x double]]* noalias %p) {
entry: