mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-08 19:25:47 +00:00
[BasicAA] Add datalayouts to make some tests more useful. NFC.
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
This commit is contained in:
@@ -3,10 +3,12 @@
|
|||||||
|
|
||||||
; RUN: opt < %s -basicaa -aa-eval -print-may-aliases -disable-output 2>&1 | FileCheck %s
|
; 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] }
|
%T = type { i32, [10 x i8] }
|
||||||
|
|
||||||
; CHECK: Function: test
|
; CHECK: Function: test
|
||||||
; CHECK-NOT: May:
|
; CHECK-NOT: MayAlias:
|
||||||
|
|
||||||
define void @test(%T* %P) {
|
define void @test(%T* %P) {
|
||||||
%A = getelementptr %T* %P, i64 0
|
%A = getelementptr %T* %P, i64 0
|
||||||
|
@@ -3,12 +3,14 @@
|
|||||||
|
|
||||||
; RUN: opt < %s -basicaa -aa-eval -print-may-aliases -disable-output 2>&1 | FileCheck %s
|
; 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] }
|
%T = type { i32, [10 x i8] }
|
||||||
|
|
||||||
@G = external global %T
|
@G = external global %T
|
||||||
|
|
||||||
; CHECK: Function: test
|
; CHECK: Function: test
|
||||||
; CHECK-NOT: May:
|
; CHECK-NOT: MayAlias:
|
||||||
|
|
||||||
define void @test() {
|
define void @test() {
|
||||||
%D = getelementptr %T* @G, i64 0, i32 0
|
%D = getelementptr %T* @G, i64 0, i32 0
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
; RUN: opt < %s -basicaa -aa-eval -print-all-alias-modref-info -disable-output 2>&1 | FileCheck %s
|
; 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: Function: foo
|
||||||
; CHECK: MayAlias: i32* %Ipointer, i32* %Jpointer
|
; CHECK: PartialAlias: i32* %Ipointer, i32* %Jpointer
|
||||||
; CHECK: 9 no alias responses
|
; 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) {
|
define void @foo(i32* noalias %p, i32* noalias %q, i32 %i, i32 %j) {
|
||||||
%Ipointer = getelementptr i32* %p, i32 %i
|
%Ipointer = getelementptr i32* %p, i32 %i
|
||||||
|
@@ -1,10 +1,13 @@
|
|||||||
; RUN: opt < %s -basicaa -aa-eval -print-all-alias-modref-info 2>&1 | FileCheck %s
|
; RUN: opt < %s -basicaa -aa-eval -print-all-alias-modref-info 2>&1 | FileCheck %s
|
||||||
; PR4267
|
; 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,
|
; %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) {
|
define void @foo([3 x [3 x double]]* noalias %p) {
|
||||||
entry:
|
entry:
|
||||||
|
Reference in New Issue
Block a user