summaryrefslogtreecommitdiff
path: root/polly
diff options
context:
space:
mode:
authorNikita Popov <npopov@redhat.com>2023-01-25 14:22:31 +0100
committerNikita Popov <npopov@redhat.com>2023-01-25 14:40:34 +0100
commit9de0086d4c3cdba79414054a34a9d7e42956cbb3 (patch)
tree3e972889883154298b5020fd34163e4078a23421 /polly
parent668c1f15ad883adcc2cbefe0a5a5f4d99192bc0c (diff)
downloadllvm-9de0086d4c3cdba79414054a34a9d7e42956cbb3.tar.gz
[Polly] Convert some tests to opaque pointers (NFC)
Convert ScopInfo tests.
Diffstat (limited to 'polly')
-rw-r--r--polly/test/ScopInfo/int2ptr_ptr2int.ll47
-rw-r--r--polly/test/ScopInfo/int2ptr_ptr2int_2.ll37
-rw-r--r--polly/test/ScopInfo/invariant_load_access_classes_different_base_type.ll26
-rw-r--r--polly/test/ScopInfo/invariant_load_access_classes_different_base_type_escaping.ll26
-rw-r--r--polly/test/ScopInfo/invariant_load_zext_parameter.ll30
-rw-r--r--polly/test/ScopInfo/memcpy.ll24
-rw-r--r--polly/test/ScopInfo/memmove.ll24
7 files changed, 104 insertions, 110 deletions
diff --git a/polly/test/ScopInfo/int2ptr_ptr2int.ll b/polly/test/ScopInfo/int2ptr_ptr2int.ll
index 1b5aca8bee3b..7cd6ec4c239f 100644
--- a/polly/test/ScopInfo/int2ptr_ptr2int.ll
+++ b/polly/test/ScopInfo/int2ptr_ptr2int.ll
@@ -1,5 +1,5 @@
-; RUN: opt -opaque-pointers=0 %loadPolly -polly-print-scops -disable-output < %s | FileCheck %s
-; RUN: opt -opaque-pointers=0 %loadPolly -S -polly-codegen < %s | FileCheck %s --check-prefix=IR
+; RUN: opt %loadPolly -polly-print-scops -disable-output < %s | FileCheck %s
+; RUN: opt %loadPolly -S -polly-codegen < %s | FileCheck %s --check-prefix=IR
;
; void f(long *A, long *ptr, long val) {
; for (long i = 0; i < 100; i++) {
@@ -17,31 +17,32 @@
; CHECK-NEXT: [val, ptr] -> { Stmt_for_body[i0] -> MemRef_A[9 + ptr] };
;
; IR: entry:
-; IR-NEXT: %ptr1 = ptrtoint i64* %ptr to i32
+; IR-NEXT: %ptr1 = ptrtoint ptr %ptr to i32
;
; IR: polly.stmt.for.body:
-; IR-NEXT: %p_tmp1 = inttoptr i64 %14 to i64*
-; IR-NEXT: %p_add.ptr2 = getelementptr inbounds i64, i64* %p_tmp1, i64 1
-; IR-NEXT: %p_tmp2 = ptrtoint i64* %p_add.ptr2 to i64
-; IR-NEXT: %p_arrayidx = getelementptr inbounds i64, i64* %A, i64 %p_tmp2
-; IR-NEXT: %tmp3_p_scalar_ = load i64, i64* %p_arrayidx, align 8, !alias.scope !0, !noalias !3
-; IR-NEXT: %tmp4_p_scalar_ = load i64, i64* %scevgep, align 8, !alias.scope !0, !noalias !3
+; IR-NEXT: %p_tmp1 = inttoptr i64 %14 to ptr
+; IR-NEXT: %p_add.ptr2 = getelementptr inbounds i64, ptr %p_tmp1, i64 1
+; IR-NEXT: %p_tmp2 = ptrtoint ptr %p_add.ptr2 to i64
+; IR-NEXT: %p_arrayidx = getelementptr inbounds i64, ptr %A, i64 %p_tmp2
+; IR-NEXT: %tmp3_p_scalar_ = load i64, ptr %p_arrayidx, align 8, !alias.scope !0, !noalias !3
+; IR-NEXT: %tmp4_p_scalar_ = load i64, ptr %uglygep, align 8, !alias.scope !0, !noalias !3
; IR-NEXT: %p_add4 = add nsw i64 %tmp4_p_scalar_, %tmp3_p_scalar_
-; IR-NEXT: store i64 %p_add4, i64* %scevgep, align 8, !alias.scope !0, !noalias !3
+; IR-NEXT: store i64 %p_add4, ptr %uglygep, align 8, !alias.scope !0, !noalias !3
; IR-NEXT: %polly.indvar_next = add nsw i64 %polly.indvar, 1
; IR-NEXT: %polly.loop_cond = icmp sle i64 %polly.indvar_next, 99
; IR-NEXT: br i1 %polly.loop_cond, label %polly.loop_header, label %polly.loop_exit
;
; IR: polly.loop_preheader:
; IR-NEXT: %14 = add i64 %val, 1
-; IR-NEXT: %15 = add i32 %ptr1, 9
-; IR-NEXT: %scevgep = getelementptr i64, i64* %A, i32 %15
+; IR-NEXT: %15 = shl i32 %ptr1, 3
+; IR-NEXT: %16 = add i32 %15, 72
+; IR-NEXT: %uglygep = getelementptr i8, ptr %A, i32 %16
; IR-NEXT: br label %polly.loop_header
;
target datalayout = "e-p:32:32:32-m:e-i64:64-f80:128-n8:16:32:64-S128"
-define void @f(i64* %A, i64* %ptr, i64 %val) {
+define void @f(ptr %A, ptr %ptr, i64 %val) {
entry:
br label %for.cond
@@ -51,19 +52,19 @@ for.cond: ; preds = %for.inc, %entry
br i1 %exitcond, label %for.body, label %for.end
for.body: ; preds = %for.cond
- %add.ptr = getelementptr inbounds i64, i64* %ptr, i64 1
- %tmp = ptrtoint i64* %add.ptr to i64
+ %add.ptr = getelementptr inbounds i64, ptr %ptr, i64 1
+ %tmp = ptrtoint ptr %add.ptr to i64
%add = add nsw i64 %tmp, 1
%add1 = add nsw i64 %val, 1
- %tmp1 = inttoptr i64 %add1 to i64*
- %add.ptr2 = getelementptr inbounds i64, i64* %tmp1, i64 1
- %tmp2 = ptrtoint i64* %add.ptr2 to i64
- %arrayidx = getelementptr inbounds i64, i64* %A, i64 %tmp2
- %tmp3 = load i64, i64* %arrayidx
- %arrayidx3 = getelementptr inbounds i64, i64* %A, i64 %add
- %tmp4 = load i64, i64* %arrayidx3
+ %tmp1 = inttoptr i64 %add1 to ptr
+ %add.ptr2 = getelementptr inbounds i64, ptr %tmp1, i64 1
+ %tmp2 = ptrtoint ptr %add.ptr2 to i64
+ %arrayidx = getelementptr inbounds i64, ptr %A, i64 %tmp2
+ %tmp3 = load i64, ptr %arrayidx
+ %arrayidx3 = getelementptr inbounds i64, ptr %A, i64 %add
+ %tmp4 = load i64, ptr %arrayidx3
%add4 = add nsw i64 %tmp4, %tmp3
- store i64 %add4, i64* %arrayidx3
+ store i64 %add4, ptr %arrayidx3
br label %for.inc
for.inc: ; preds = %for.body
diff --git a/polly/test/ScopInfo/int2ptr_ptr2int_2.ll b/polly/test/ScopInfo/int2ptr_ptr2int_2.ll
index e228e30b34ce..a9c3431270fb 100644
--- a/polly/test/ScopInfo/int2ptr_ptr2int_2.ll
+++ b/polly/test/ScopInfo/int2ptr_ptr2int_2.ll
@@ -1,6 +1,6 @@
-; RUN: opt -opaque-pointers=0 %loadPolly -polly-print-scops \
+; RUN: opt %loadPolly -polly-print-scops \
; RUN: -polly-invariant-load-hoisting=true -disable-output < %s | FileCheck %s
-; RUN: opt -opaque-pointers=0 %loadPolly -S -polly-codegen \
+; RUN: opt %loadPolly -S -polly-codegen \
; RUN: -polly-invariant-load-hoisting=true < %s | FileCheck %s --check-prefix=IR
;
; void f(long *A, long *B, long *ptr, long val) {
@@ -21,25 +21,26 @@
; CHECK-NEXT: [val, ptr] -> { Stmt_for_body[i0] -> MemRef_A[9 + ptr] };
; IR: entry:
-; IR-NEXT: %ptr13 = ptrtoint i64* %ptr to i16
+; IR-NEXT: %ptr13 = ptrtoint ptr %ptr to i16
;
; IR: polly.stmt.for.body:
-; IR-NEXT: %tmp4_p_scalar_ = load i64, i64* %scevgep, align 8, !alias.scope !3, !noalias !0
+; IR-NEXT: %tmp4_p_scalar_ = load i64, ptr %uglygep, align 8, !alias.scope !3, !noalias !0
; IR-NEXT: %p_add4 = add nsw i64 %tmp4_p_scalar_, %polly.preload.tmp3.merge
-; IR-NEXT: store i64 %p_add4, i64* %scevgep, align 8, !alias.scope !3, !noalias !0
+; IR-NEXT: store i64 %p_add4, ptr %uglygep, align 8, !alias.scope !3, !noalias !0
; IR-NEXT: %polly.indvar_next = add nsw i64 %polly.indvar, 1
; IR-NEXT: %polly.loop_cond = icmp sle i64 %polly.indvar_next, 99
; IR-NEXT: br i1 %polly.loop_cond, label %polly.loop_header, label %polly.loop_exit
; IR: polly.loop_preheader:
; IR-NEXT: %41 = add i16 %val, 1
-; IR-NEXT: %42 = add i16 %ptr13, 9
-; IR-NEXT: %scevgep = getelementptr i64, i64* %A, i16 %42
+; IR-NEXT: %42 = shl i16 %ptr13, 3
+; IR-NEXT: %43 = add i16 %42, 72
+; IR-NEXT: %uglygep = getelementptr i8, ptr %A, i16 %43
; IR-NEXT: br label %polly.loop_header
;
target datalayout = "e-p:16:16:16-m:e-i64:64-f80:128-n8:16:16:64-S128"
-define void @f(i64* %A, i64* %B, i64* %ptr, i16 %val) {
+define void @f(ptr %A, ptr %B, ptr %ptr, i16 %val) {
entry:
br label %for.cond
@@ -49,19 +50,19 @@ for.cond: ; preds = %for.inc, %entry
br i1 %exitcond, label %for.body, label %for.end
for.body: ; preds = %for.cond
- %add.ptr = getelementptr inbounds i64, i64* %ptr, i64 1
- %tmp = ptrtoint i64* %add.ptr to i16
+ %add.ptr = getelementptr inbounds i64, ptr %ptr, i64 1
+ %tmp = ptrtoint ptr %add.ptr to i16
%add = add nsw i16 %tmp, 1
%add1 = add nsw i16 %val, 1
- %tmp1 = inttoptr i16 %add1 to i64*
- %add.ptr2 = getelementptr inbounds i64, i64* %tmp1, i64 1
- %tmp2 = ptrtoint i64* %add.ptr2 to i16
- %arrayidx = getelementptr inbounds i64, i64* %B, i16 %tmp2
- %tmp3 = load i64, i64* %arrayidx
- %arrayidx3 = getelementptr inbounds i64, i64* %A, i16 %add
- %tmp4 = load i64, i64* %arrayidx3
+ %tmp1 = inttoptr i16 %add1 to ptr
+ %add.ptr2 = getelementptr inbounds i64, ptr %tmp1, i64 1
+ %tmp2 = ptrtoint ptr %add.ptr2 to i16
+ %arrayidx = getelementptr inbounds i64, ptr %B, i16 %tmp2
+ %tmp3 = load i64, ptr %arrayidx
+ %arrayidx3 = getelementptr inbounds i64, ptr %A, i16 %add
+ %tmp4 = load i64, ptr %arrayidx3
%add4 = add nsw i64 %tmp4, %tmp3
- store i64 %add4, i64* %arrayidx3
+ store i64 %add4, ptr %arrayidx3
br label %for.inc
for.inc: ; preds = %for.body
diff --git a/polly/test/ScopInfo/invariant_load_access_classes_different_base_type.ll b/polly/test/ScopInfo/invariant_load_access_classes_different_base_type.ll
index 4ace2e061cf2..ccc3ee3bdbaa 100644
--- a/polly/test/ScopInfo/invariant_load_access_classes_different_base_type.ll
+++ b/polly/test/ScopInfo/invariant_load_access_classes_different_base_type.ll
@@ -1,5 +1,5 @@
-; RUN: opt -opaque-pointers=0 %loadPolly -polly-print-scops -polly-invariant-load-hoisting=true -disable-output < %s | FileCheck %s
-; RUN: opt -opaque-pointers=0 %loadPolly -polly-codegen -polly-invariant-load-hoisting=true -S < %s | FileCheck %s --check-prefix=CODEGEN
+; RUN: opt %loadPolly -polly-print-scops -polly-invariant-load-hoisting=true -disable-output < %s | FileCheck %s
+; RUN: opt %loadPolly -polly-codegen -polly-invariant-load-hoisting=true -S < %s | FileCheck %s --check-prefix=CODEGEN
;
; struct {
; int a;
@@ -23,21 +23,21 @@
; CODEGEN: %S.b.preload.s2a = alloca float
; CODEGEN: %S.a.preload.s2a = alloca i32
;
-; CODEGEN: %.load = load i32, i32* getelementptr inbounds (%struct.anon, %struct.anon* @S, i32 0, i32 0)
-; CODEGEN: store i32 %.load, i32* %S.a.preload.s2a
-; CODEGEN: %.load1 = load float, float* bitcast (i32* getelementptr (i32, i32* getelementptr inbounds (%struct.anon, %struct.anon* @S, i32 0, i32 0), i64 1) to float*)
-; CODEGEN: store float %.load1, float* %S.b.preload.s2a
+; CODEGEN: %S.load = load i32, ptr @S
+; CODEGEN: store i32 %S.load, ptr %S.a.preload.s2a
+; CODEGEN: %.load = load float, ptr getelementptr inbounds (i32, ptr @S, i64 1)
+; CODEGEN: store float %.load, ptr %S.b.preload.s2a
;
; CODEGEN: polly.stmt.for.body:
-; CODEGEN: %p_conv = sitofp i32 %.load to float
-; CODEGEN: %p_add = fadd float %p_conv, %.load1
+; CODEGEN: %p_conv = sitofp i32 %S.load to float
+; CODEGEN: %p_add = fadd float %p_conv, %.load
; CODEGEN: %p_conv1 = fptosi float %p_add to i32
%struct.anon = type { i32, float }
@S = common global %struct.anon zeroinitializer, align 4
-define void @f(i32* %A) {
+define void @f(ptr %A) {
entry:
br label %for.cond
@@ -47,13 +47,13 @@ for.cond: ; preds = %for.inc, %entry
br i1 %exitcond, label %for.body, label %for.end
for.body: ; preds = %for.cond
- %S.a = load i32, i32* getelementptr inbounds (%struct.anon, %struct.anon* @S, i64 0, i32 0), align 4
+ %S.a = load i32, ptr @S, align 4
%conv = sitofp i32 %S.a to float
- %S.b = load float, float* getelementptr inbounds (%struct.anon, %struct.anon* @S, i64 0, i32 1), align 4
+ %S.b = load float, ptr getelementptr inbounds (%struct.anon, ptr @S, i64 0, i32 1), align 4
%add = fadd float %conv, %S.b
%conv1 = fptosi float %add to i32
- %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv
- store i32 %conv1, i32* %arrayidx, align 4
+ %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv
+ store i32 %conv1, ptr %arrayidx, align 4
br label %for.inc
for.inc: ; preds = %for.body
diff --git a/polly/test/ScopInfo/invariant_load_access_classes_different_base_type_escaping.ll b/polly/test/ScopInfo/invariant_load_access_classes_different_base_type_escaping.ll
index e3629acafcfa..4d4b64daed5d 100644
--- a/polly/test/ScopInfo/invariant_load_access_classes_different_base_type_escaping.ll
+++ b/polly/test/ScopInfo/invariant_load_access_classes_different_base_type_escaping.ll
@@ -1,5 +1,5 @@
-; RUN: opt -opaque-pointers=0 %loadPolly -polly-print-scops -polly-invariant-load-hoisting=true -disable-output < %s | FileCheck %s
-; RUN: opt -opaque-pointers=0 %loadPolly -polly-codegen -polly-invariant-load-hoisting=true -S < %s | FileCheck %s --check-prefix=CODEGEN
+; RUN: opt %loadPolly -polly-print-scops -polly-invariant-load-hoisting=true -disable-output < %s | FileCheck %s
+; RUN: opt %loadPolly -polly-codegen -polly-invariant-load-hoisting=true -S < %s | FileCheck %s --check-prefix=CODEGEN
;
; struct {
; int a;
@@ -42,10 +42,10 @@
; CODEGEN: %S.a.preload.s2a = alloca i32
;
; CODEGEN: polly.preload.begin:
-; CODEGEN: %.load = load i32, i32* getelementptr inbounds (%struct.anon, %struct.anon* @S, i32 0, i32 0)
-; CODEGEN: store i32 %.load, i32* %S.a.preload.s2a
-; CODEGEN: %.load1 = load float, float* bitcast (i32* getelementptr (i32, i32* getelementptr inbounds (%struct.anon, %struct.anon* @S, i32 0, i32 0), i64 1) to float*)
-; CODEGEN: store float %.load1, float* %S.b.preload.s2a
+; CODEGEN: %S.load = load i32, ptr @S
+; CODEGEN: store i32 %S.load, ptr %S.a.preload.s2a
+; CODEGEN: %.load = load float, ptr getelementptr inbounds (i32, ptr @S, i64 1)
+; CODEGEN: store float %.load, ptr %S.b.preload.s2a
;
; CODEGEN: polly.merge_new_and_old:
; CODEGEN-DAG: %S.b.merge = phi float [ %S.b.final_reload, %polly.exiting ], [ %S.b, %do.cond ]
@@ -57,8 +57,8 @@
; CODEGEN: ret float %add4
;
; CODEGEN: polly.loop_exit:
-; CODEGEN-DAG: %S.b.final_reload = load float, float* %S.b.preload.s2a
-; CODEGEN-DAG: %S.a.final_reload = load i32, i32* %S.a.preload.s2a
+; CODEGEN-DAG: %S.b.final_reload = load float, ptr %S.b.preload.s2a
+; CODEGEN-DAG: %S.a.final_reload = load i32, ptr %S.a.preload.s2a
;
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
@@ -67,19 +67,19 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
@S = common global %struct.anon zeroinitializer, align 4
-define float @f(i32* %A) {
+define float @f(ptr %A) {
entry:
br label %do.body
do.body: ; preds = %do.cond, %entry
%indvars.iv = phi i64 [ %indvars.iv.next, %do.cond ], [ 0, %entry ]
- %S.a = load i32, i32* getelementptr inbounds (%struct.anon, %struct.anon* @S, i64 0, i32 0), align 4
- %S.b = load float, float* getelementptr inbounds (%struct.anon, %struct.anon* @S, i64 0, i32 1), align 4
+ %S.a = load i32, ptr @S, align 4
+ %S.b = load float, ptr getelementptr inbounds (%struct.anon, ptr @S, i64 0, i32 1), align 4
%conv = sitofp i32 %S.a to float
%add = fadd float %conv, %S.b
%conv1 = fptosi float %add to i32
- %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv
- store i32 %conv1, i32* %arrayidx, align 4
+ %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv
+ store i32 %conv1, ptr %arrayidx, align 4
br label %do.cond
do.cond: ; preds = %do.body
diff --git a/polly/test/ScopInfo/invariant_load_zext_parameter.ll b/polly/test/ScopInfo/invariant_load_zext_parameter.ll
index 377152e8fc09..1bde70282d44 100644
--- a/polly/test/ScopInfo/invariant_load_zext_parameter.ll
+++ b/polly/test/ScopInfo/invariant_load_zext_parameter.ll
@@ -1,5 +1,5 @@
-; RUN: opt -opaque-pointers=0 %loadPolly -polly-print-scops -polly-invariant-load-hoisting=true -disable-output < %s | FileCheck %s
-; RUN: opt -opaque-pointers=0 %loadPolly -polly-codegen -polly-invariant-load-hoisting=true -S < %s | FileCheck %s --check-prefix=CODEGEN
+; RUN: opt %loadPolly -polly-print-scops -polly-invariant-load-hoisting=true -disable-output < %s | FileCheck %s
+; RUN: opt %loadPolly -polly-codegen -polly-invariant-load-hoisting=true -S < %s | FileCheck %s --check-prefix=CODEGEN
;
; void f(int *I0, int *I1, int *V) {
; for (int i = 0; i < 1000; i++) {
@@ -20,9 +20,9 @@
; CHECK-NEXT: [loadI0] -> { Stmt_if_then[i0] : loadI0 = 0 and 0 <= i0 <= 999 };
;
; CODEGEN: polly.preload.begin:
-; CODEGEN-NEXT: %polly.access.I0 = getelementptr i32, i32* %I0, i64 0
-; CODEGEN-NEXT: %polly.access.I0.load = load i32, i32* %polly.access.I0
-; CODEGEN-NEXT: store i32 %polly.access.I0.load, i32* %loadI1a.preload.s2a
+; CODEGEN-NEXT: %polly.access.I0 = getelementptr i32, ptr %I0, i64 0
+; CODEGEN-NEXT: %polly.access.I0.load = load i32, ptr %polly.access.I0
+; CODEGEN-NEXT: store i32 %polly.access.I0.load, ptr %loadI1a.preload.s2a
; CODEGEN-NEXT: %0 = sext i32 %polly.access.I0.load to i64
; CODEGEN-NEXT: %1 = icmp eq i64 %0, 0
; CODEGEN-NEXT: %polly.preload.cond.result = and i1 %1, true
@@ -33,7 +33,7 @@
;
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
-define void @f(i32* %I0, i32* %I1, i32* %V) {
+define void @f(ptr %I0, ptr %I1, ptr %V) {
entry:
br label %for.cond
@@ -43,22 +43,22 @@ for.cond: ; preds = %for.inc, %entry
br i1 %exitcond, label %for.body, label %for.end
for.body: ; preds = %for.cond
- %loadI1a = load i32, i32* %I0, align 4
- %arrayidx = getelementptr inbounds i32, i32* %V, i64 %indvars.iv
- %loadI1a1 = load i32, i32* %arrayidx, align 4
+ %loadI1a = load i32, ptr %I0, align 4
+ %arrayidx = getelementptr inbounds i32, ptr %V, i64 %indvars.iv
+ %loadI1a1 = load i32, ptr %arrayidx, align 4
%add = add nsw i32 %loadI1a1, %loadI1a
- store i32 %add, i32* %arrayidx, align 4
- %loadI0 = load i32, i32* %I0, align 4
+ store i32 %add, ptr %arrayidx, align 4
+ %loadI0 = load i32, ptr %I0, align 4
%loadI0ext = zext i32 %loadI0 to i64
%cmp1 = icmp eq i64 %loadI0ext, 0
br i1 %cmp1, label %if.then, label %if.end
if.then: ; preds = %for.body
- %loadI1b = load i32, i32* %I1, align 4
- %arrayidx4 = getelementptr inbounds i32, i32* %V, i64 %indvars.iv
- %loadI1a4 = load i32, i32* %arrayidx4, align 4
+ %loadI1b = load i32, ptr %I1, align 4
+ %arrayidx4 = getelementptr inbounds i32, ptr %V, i64 %indvars.iv
+ %loadI1a4 = load i32, ptr %arrayidx4, align 4
%add5 = add nsw i32 %loadI1a4, %loadI1b
- store i32 %add5, i32* %arrayidx4, align 4
+ store i32 %add5, ptr %arrayidx4, align 4
br label %if.end
if.end: ; preds = %if.then, %for.body
diff --git a/polly/test/ScopInfo/memcpy.ll b/polly/test/ScopInfo/memcpy.ll
index 27419f42801a..705dea769e42 100644
--- a/polly/test/ScopInfo/memcpy.ll
+++ b/polly/test/ScopInfo/memcpy.ll
@@ -1,5 +1,5 @@
-; RUN: opt -opaque-pointers=0 %loadPolly -basic-aa -polly-allow-differing-element-types -polly-print-scops -disable-output < %s | FileCheck %s
-; RUN: opt -opaque-pointers=0 %loadPolly -S -basic-aa -polly-allow-differing-element-types -polly-codegen < %s | FileCheck --check-prefix=IR %s
+; RUN: opt %loadPolly -basic-aa -polly-allow-differing-element-types -polly-print-scops -disable-output < %s | FileCheck %s
+; RUN: opt %loadPolly -S -basic-aa -polly-allow-differing-element-types -polly-codegen < %s | FileCheck --check-prefix=IR %s
;
; CHECK: Arrays {
; CHECK-NEXT: i8 MemRef_A[*]; // Element size 1
@@ -17,13 +17,11 @@
; CHECK-NEXT: { Stmt_for_body3[i0, i1] -> MemRef_B[o0] : 64 <= o0 <= 100 };
;
; IR: polly.loop_preheader:
-; IR: %[[r1:[a-zA-Z0-9]*]] = getelementptr i32, i32* %A, i64 -4
-; IR: %[[r2:[a-zA-Z0-9]*]] = bitcast i32* %scevgep to i8*
-; IR: %[[r3:[a-zA-Z0-9]*]] = getelementptr i64, i64* %B, i64 8
-; IR: %[[r4:[a-zA-Z0-9]*]] = bitcast i64* %scevgep8 to i8*
+; IR: %[[r1:[a-zA-Z0-9]*]] = getelementptr i8, ptr %A, i64 -16
+; IR: %[[r3:[a-zA-Z0-9]*]] = getelementptr i8, ptr %B, i64 64
;
; IR: polly.stmt.for.body3:
-; IR: call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %[[r2]], i8* align 4 %[[r4]], i64 37, i1 false)
+; IR: call void @llvm.memcpy.p0.p0.i64(ptr align 4 %[[r1]], ptr align 4 %[[r3]], i64 37, i1 false)
;
;
; #include <string.h>
@@ -36,7 +34,7 @@
;
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
-define void @jd(i32* noalias %A, i64* noalias %B) {
+define void @jd(ptr noalias %A, ptr noalias %B) {
entry:
br label %for.cond
@@ -54,11 +52,9 @@ for.cond1: ; preds = %for.inc, %for.body
br i1 %exitcond, label %for.body3, label %for.end
for.body3: ; preds = %for.cond1
- %add.ptr = getelementptr inbounds i32, i32* %A, i64 -4
- %tmp = bitcast i32* %add.ptr to i8*
- %add.ptr4 = getelementptr inbounds i64, i64* %B, i64 8
- %tmp2 = bitcast i64* %add.ptr4 to i8*
- call void @llvm.memcpy.p0i8.p0i8.i64(i8* %tmp, i8* %tmp2, i64 37, i32 4, i1 false)
+ %add.ptr = getelementptr inbounds i32, ptr %A, i64 -4
+ %add.ptr4 = getelementptr inbounds i64, ptr %B, i64 8
+ call void @llvm.memcpy.p0.p0.i64(ptr %add.ptr, ptr %add.ptr4, i64 37, i32 4, i1 false)
br label %for.inc
for.inc: ; preds = %for.body3
@@ -76,5 +72,5 @@ for.end7: ; preds = %for.cond
ret void
}
-declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture, i8* nocapture readonly, i64, i32, i1) #1
+declare void @llvm.memcpy.p0.p0.i64(ptr nocapture, ptr nocapture readonly, i64, i32, i1) #1
diff --git a/polly/test/ScopInfo/memmove.ll b/polly/test/ScopInfo/memmove.ll
index bee028aa05ff..15123422f419 100644
--- a/polly/test/ScopInfo/memmove.ll
+++ b/polly/test/ScopInfo/memmove.ll
@@ -1,5 +1,5 @@
-; RUN: opt -opaque-pointers=0 %loadPolly -basic-aa -polly-allow-differing-element-types -polly-print-scops -disable-output < %s | FileCheck %s
-; RUN: opt -opaque-pointers=0 %loadPolly -S -basic-aa -polly-allow-differing-element-types -polly-codegen < %s | FileCheck --check-prefix=IR %s
+; RUN: opt %loadPolly -basic-aa -polly-allow-differing-element-types -polly-print-scops -disable-output < %s | FileCheck %s
+; RUN: opt %loadPolly -S -basic-aa -polly-allow-differing-element-types -polly-codegen < %s | FileCheck --check-prefix=IR %s
;
; CHECK: Arrays {
; CHECK-NEXT: i8 MemRef_A[*]; // Element size 1
@@ -17,13 +17,11 @@
; CHECK-NEXT: { Stmt_for_body3[i0, i1] -> MemRef_B[o0] : 64 <= o0 <= 95 };
;
; IR: polly.loop_preheader:
-; IR: %[[r1:[a-zA-Z0-9]*]] = getelementptr i32, i32* %A, i64 -4
-; IR: %[[r2:[a-zA-Z0-9]*]] = bitcast i32* %scevgep to i8*
-; IR: %[[r3:[a-zA-Z0-9]*]] = getelementptr i64, i64* %B, i64 8
-; IR: %[[r4:[a-zA-Z0-9]*]] = bitcast i64* %scevgep8 to i8*
+; IR: %[[r1:[a-zA-Z0-9]*]] = getelementptr i8, ptr %A, i64 -16
+; IR: %[[r3:[a-zA-Z0-9]*]] = getelementptr i8, ptr %B, i64 64
;
; IR: polly.stmt.for.body3:
-; IR: call void @llvm.memmove.p0i8.p0i8.i64(i8* align 4 %[[r2]], i8* align 4 %[[r4]], i64 32, i1 false)
+; IR: call void @llvm.memmove.p0.p0.i64(ptr align 4 %[[r1]], ptr align 4 %[[r3]], i64 32, i1 false)
;
; #include <string.h>
;
@@ -35,7 +33,7 @@
;
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
-define void @jd(i32* noalias %A, i64* noalias %B) {
+define void @jd(ptr noalias %A, ptr noalias %B) {
entry:
br label %for.cond
@@ -53,11 +51,9 @@ for.cond1: ; preds = %for.inc, %for.body
br i1 %exitcond, label %for.body3, label %for.end
for.body3: ; preds = %for.cond1
- %add.ptr = getelementptr inbounds i32, i32* %A, i64 -4
- %tmp = bitcast i32* %add.ptr to i8*
- %add.ptr4 = getelementptr inbounds i64, i64* %B, i64 8
- %tmp2 = bitcast i64* %add.ptr4 to i8*
- call void @llvm.memmove.p0i8.p0i8.i64(i8* %tmp, i8* %tmp2, i64 32, i32 4, i1 false)
+ %add.ptr = getelementptr inbounds i32, ptr %A, i64 -4
+ %add.ptr4 = getelementptr inbounds i64, ptr %B, i64 8
+ call void @llvm.memmove.p0.p0.i64(ptr %add.ptr, ptr %add.ptr4, i64 32, i32 4, i1 false)
br label %for.inc
for.inc: ; preds = %for.body3
@@ -75,5 +71,5 @@ for.end7: ; preds = %for.cond
ret void
}
-declare void @llvm.memmove.p0i8.p0i8.i64(i8* nocapture, i8* nocapture readonly, i64, i32, i1) #1
+declare void @llvm.memmove.p0.p0.i64(ptr nocapture, ptr nocapture readonly, i64, i32, i1) #1