diff options
author | Nikita Popov <npopov@redhat.com> | 2023-01-17 10:12:02 +0100 |
---|---|---|
committer | Nikita Popov <npopov@redhat.com> | 2023-01-17 10:15:18 +0100 |
commit | b332499a94df11870dfc7598645c59656deb933d (patch) | |
tree | 4b33a473c840a0a0026c4c2f9030fd2307e5cf85 /polly/test | |
parent | b164b047f2b41ff0c0a3ede3baa29c230c78cd32 (diff) | |
download | llvm-b332499a94df11870dfc7598645c59656deb933d.tar.gz |
[Polly] Convert some tests to opaque pointers (NFC)
Diffstat (limited to 'polly/test')
1035 files changed, 8635 insertions, 8972 deletions
diff --git a/polly/test/CodeGen/20100707_2.ll b/polly/test/CodeGen/20100707_2.ll index adbfd2b773f4..df784c6d7957 100644 --- a/polly/test/CodeGen/20100707_2.ll +++ b/polly/test/CodeGen/20100707_2.ll @@ -1,8 +1,8 @@ ; RUN: opt %loadPolly -polly-codegen < %s target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -@win193 = external global [4 x [36 x double]], align 32 ; <[4 x [36 x double]]*> [#uses=3] -@sb_sample = external global [2 x [2 x [18 x [32 x double]]]], align 32 ; <[2 x [2 x [18 x [32 x double]]]]*> [#uses=2] +@win193 = external global [4 x [36 x double]], align 32 ; <ptr> [#uses=3] +@sb_sample = external global [2 x [2 x [18 x [32 x double]]]], align 32 ; <ptr> [#uses=2] define void @mdct_sub48() nounwind { entry: @@ -36,45 +36,45 @@ bb32: ; preds = %bb27 br label %bb37 bb34: ; preds = %bb35 - %0 = getelementptr inbounds [36 x double], [36 x double]* undef, i64 0, i64 0 ; <double*> [#uses=0] - %1 = getelementptr inbounds [18 x [32 x double]], [18 x [32 x double]]* undef, i64 0, i64 0 ; <[32 x double]*> [#uses=1] - %2 = getelementptr inbounds [32 x double], [32 x double]* %1, i64 0, i64 0 ; <double*> [#uses=0] - %3 = getelementptr inbounds [36 x double], [36 x double]* undef, i64 0, i64 0 ; <double*> [#uses=0] + %0 = getelementptr inbounds [36 x double], ptr undef, i64 0, i64 0 ; <ptr> [#uses=0] + %1 = getelementptr inbounds [18 x [32 x double]], ptr undef, i64 0, i64 0 ; <ptr> [#uses=1] + %2 = getelementptr inbounds [32 x double], ptr %1, i64 0, i64 0 ; <ptr> [#uses=0] + %3 = getelementptr inbounds [36 x double], ptr undef, i64 0, i64 0 ; <ptr> [#uses=0] %4 = sub nsw i32 17, %k.4 ; <i32> [#uses=1] - %5 = getelementptr inbounds [2 x [2 x [18 x [32 x double]]]], [2 x [2 x [18 x [32 x double]]]]* @sb_sample, i64 0, i64 0 ; <[2 x [18 x [32 x double]]]*> [#uses=1] - %6 = getelementptr inbounds [2 x [18 x [32 x double]]], [2 x [18 x [32 x double]]]* %5, i64 0, i64 0 ; <[18 x [32 x double]]*> [#uses=1] + %5 = getelementptr inbounds [2 x [2 x [18 x [32 x double]]]], ptr @sb_sample, i64 0, i64 0 ; <ptr> [#uses=1] + %6 = getelementptr inbounds [2 x [18 x [32 x double]]], ptr %5, i64 0, i64 0 ; <ptr> [#uses=1] %7 = sext i32 %4 to i64 ; <i64> [#uses=1] - %8 = getelementptr inbounds [18 x [32 x double]], [18 x [32 x double]]* %6, i64 0, i64 %7 ; <[32 x double]*> [#uses=1] - %9 = getelementptr inbounds [32 x double], [32 x double]* %8, i64 0, i64 0 ; <double*> [#uses=1] - %10 = load double, double* %9, align 8 ; <double> [#uses=0] + %8 = getelementptr inbounds [18 x [32 x double]], ptr %6, i64 0, i64 %7 ; <ptr> [#uses=1] + %9 = getelementptr inbounds [32 x double], ptr %8, i64 0, i64 0 ; <ptr> [#uses=1] + %10 = load double, ptr %9, align 8 ; <double> [#uses=0] %11 = fsub double 0.000000e+00, undef ; <double> [#uses=1] - %12 = getelementptr inbounds double, double* getelementptr inbounds ([4 x [36 x double]], [4 x [36 x double]]* @win193, i64 0, i64 2, i64 4), i64 0 ; <double*> [#uses=1] - store double %11, double* %12, align 8 + %12 = getelementptr inbounds double, ptr getelementptr inbounds ([4 x [36 x double]], ptr @win193, i64 0, i64 2, i64 4), i64 0 ; <ptr> [#uses=1] + store double %11, ptr %12, align 8 %13 = add nsw i32 %k.4, 9 ; <i32> [#uses=1] %14 = add nsw i32 %k.4, 18 ; <i32> [#uses=1] - %15 = getelementptr inbounds [4 x [36 x double]], [4 x [36 x double]]* @win193, i64 0, i64 0 ; <[36 x double]*> [#uses=1] + %15 = getelementptr inbounds [4 x [36 x double]], ptr @win193, i64 0, i64 0 ; <ptr> [#uses=1] %16 = sext i32 %14 to i64 ; <i64> [#uses=1] - %17 = getelementptr inbounds [36 x double], [36 x double]* %15, i64 0, i64 %16 ; <double*> [#uses=1] - %18 = load double, double* %17, align 8 ; <double> [#uses=0] + %17 = getelementptr inbounds [36 x double], ptr %15, i64 0, i64 %16 ; <ptr> [#uses=1] + %18 = load double, ptr %17, align 8 ; <double> [#uses=0] %19 = sext i32 %k.4 to i64 ; <i64> [#uses=1] - %20 = getelementptr inbounds [18 x [32 x double]], [18 x [32 x double]]* undef, i64 0, i64 %19 ; <[32 x double]*> [#uses=1] + %20 = getelementptr inbounds [18 x [32 x double]], ptr undef, i64 0, i64 %19 ; <ptr> [#uses=1] %21 = sext i32 %band.2 to i64 ; <i64> [#uses=1] - %22 = getelementptr inbounds [32 x double], [32 x double]* %20, i64 0, i64 %21 ; <double*> [#uses=1] - %23 = load double, double* %22, align 8 ; <double> [#uses=0] + %22 = getelementptr inbounds [32 x double], ptr %20, i64 0, i64 %21 ; <ptr> [#uses=1] + %23 = load double, ptr %22, align 8 ; <double> [#uses=0] %24 = sext i32 %39 to i64 ; <i64> [#uses=1] - %25 = getelementptr inbounds [4 x [36 x double]], [4 x [36 x double]]* @win193, i64 0, i64 %24 ; <[36 x double]*> [#uses=1] - %26 = getelementptr inbounds [36 x double], [36 x double]* %25, i64 0, i64 0 ; <double*> [#uses=1] - %27 = load double, double* %26, align 8 ; <double> [#uses=0] + %25 = getelementptr inbounds [4 x [36 x double]], ptr @win193, i64 0, i64 %24 ; <ptr> [#uses=1] + %26 = getelementptr inbounds [36 x double], ptr %25, i64 0, i64 0 ; <ptr> [#uses=1] + %27 = load double, ptr %26, align 8 ; <double> [#uses=0] %28 = sub nsw i32 17, %k.4 ; <i32> [#uses=1] - %29 = getelementptr inbounds [2 x [2 x [18 x [32 x double]]]], [2 x [2 x [18 x [32 x double]]]]* @sb_sample, i64 0, i64 0 ; <[2 x [18 x [32 x double]]]*> [#uses=1] - %30 = getelementptr inbounds [2 x [18 x [32 x double]]], [2 x [18 x [32 x double]]]* %29, i64 0, i64 0 ; <[18 x [32 x double]]*> [#uses=1] + %29 = getelementptr inbounds [2 x [2 x [18 x [32 x double]]]], ptr @sb_sample, i64 0, i64 0 ; <ptr> [#uses=1] + %30 = getelementptr inbounds [2 x [18 x [32 x double]]], ptr %29, i64 0, i64 0 ; <ptr> [#uses=1] %31 = sext i32 %28 to i64 ; <i64> [#uses=1] - %32 = getelementptr inbounds [18 x [32 x double]], [18 x [32 x double]]* %30, i64 0, i64 %31 ; <[32 x double]*> [#uses=1] - %33 = getelementptr inbounds [32 x double], [32 x double]* %32, i64 0, i64 0 ; <double*> [#uses=1] - %34 = load double, double* %33, align 8 ; <double> [#uses=0] + %32 = getelementptr inbounds [18 x [32 x double]], ptr %30, i64 0, i64 %31 ; <ptr> [#uses=1] + %33 = getelementptr inbounds [32 x double], ptr %32, i64 0, i64 0 ; <ptr> [#uses=1] + %34 = load double, ptr %33, align 8 ; <double> [#uses=0] %35 = sext i32 %13 to i64 ; <i64> [#uses=1] - %36 = getelementptr inbounds double, double* getelementptr inbounds ([4 x [36 x double]], [4 x [36 x double]]* @win193, i64 0, i64 2, i64 4), i64 %35 ; <double*> [#uses=1] - store double 0.000000e+00, double* %36, align 8 + %36 = getelementptr inbounds double, ptr getelementptr inbounds ([4 x [36 x double]], ptr @win193, i64 0, i64 2, i64 4), i64 %35 ; <ptr> [#uses=1] + store double 0.000000e+00, ptr %36, align 8 %37 = sub nsw i32 %k.4, 1 ; <i32> [#uses=1] br label %bb35 @@ -91,7 +91,7 @@ bb37: ; preds = %bb32, %bb26 bb48: ; preds = %bb37, %bb9 %band.2 = phi i32 [ %38, %bb37 ], [ 0, %bb9 ] ; <i32> [#uses=2] - %39 = load i32, i32* null, align 8 ; <i32> [#uses=1] + %39 = load i32, ptr null, align 8 ; <i32> [#uses=1] br i1 undef, label %bb26, label %bb25 bb50: ; preds = %bb54 diff --git a/polly/test/CodeGen/20100708_2.ll b/polly/test/CodeGen/20100708_2.ll index 58ef5a4fe3ce..2f4807d9e4d7 100644 --- a/polly/test/CodeGen/20100708_2.ll +++ b/polly/test/CodeGen/20100708_2.ll @@ -15,7 +15,7 @@ bb2: ; preds = %bb3, %bb1 bb3: ; preds = %bb2 %tmp = srem i32 %tmp3, 1024 ; <i32> [#uses=0] - store double undef, double* undef + store double undef, ptr undef %indvar.next = add i64 %indvar, 1 ; <i64> [#uses=1] br label %bb2 diff --git a/polly/test/CodeGen/20100713.ll b/polly/test/CodeGen/20100713.ll index c322db1d4bd3..edd352a4c4cc 100644 --- a/polly/test/CodeGen/20100713.ll +++ b/polly/test/CodeGen/20100713.ll @@ -12,7 +12,7 @@ bb19: ; preds = %bb18 br label %bb21 bb20: ; preds = %bb21 - %1 = load float, float* undef, align 4 ; <float> [#uses=0] + %1 = load float, ptr undef, align 4 ; <float> [#uses=0] %2 = fpext float undef to double ; <double> [#uses=1] %3 = fdiv double %2, %a ; <double> [#uses=0] %indvar.next = add i64 %indvar, 1 ; <i64> [#uses=1] diff --git a/polly/test/CodeGen/20100713_2.ll b/polly/test/CodeGen/20100713_2.ll index 62cbc67623ed..92f8959d91d6 100644 --- a/polly/test/CodeGen/20100713_2.ll +++ b/polly/test/CodeGen/20100713_2.ll @@ -25,7 +25,7 @@ bb5: ; preds = %bb4 unreachable bb6: ; preds = %bb4 - %1 = getelementptr inbounds i8, i8* undef, i64 %0 ; <i8*> [#uses=0] + %1 = getelementptr inbounds i8, ptr undef, i64 %0 ; <ptr> [#uses=0] ret void return: ; preds = %bb, %entry diff --git a/polly/test/CodeGen/20100717.ll b/polly/test/CodeGen/20100717.ll index 36ca35ed3209..a400eeaa3370 100644 --- a/polly/test/CodeGen/20100717.ll +++ b/polly/test/CodeGen/20100717.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-codegen -disable-output < %s target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @matrixTranspose(double** %A) nounwind { +define void @matrixTranspose(ptr %A) nounwind { entry: br label %bb4 @@ -10,12 +10,12 @@ bb: ; preds = %bb4 br label %bb2 bb1: ; preds = %bb2 - %1 = getelementptr inbounds double*, double** %A, i64 0 ; <double**> [#uses=0] - %2 = getelementptr inbounds double*, double** %A, i64 0 ; <double**> [#uses=0] - %3 = getelementptr inbounds double*, double** %A, i64 0 ; <double**> [#uses=0] + %1 = getelementptr inbounds ptr, ptr %A, i64 0 ; <ptr> [#uses=0] + %2 = getelementptr inbounds ptr, ptr %A, i64 0 ; <ptr> [#uses=0] + %3 = getelementptr inbounds ptr, ptr %A, i64 0 ; <ptr> [#uses=0] %4 = sext i32 %j.0 to i64 ; <i64> [#uses=1] - %5 = getelementptr inbounds double*, double** %A, i64 %4 ; <double**> [#uses=1] - %6 = load double*, double** %5, align 8 ; <double*> [#uses=0] + %5 = getelementptr inbounds ptr, ptr %A, i64 %4 ; <ptr> [#uses=1] + %6 = load ptr, ptr %5, align 8 ; <ptr> [#uses=0] %7 = add nsw i32 %j.0, 1 ; <i32> [#uses=1] br label %bb2 diff --git a/polly/test/CodeGen/20100720-MultipleConditions.ll b/polly/test/CodeGen/20100720-MultipleConditions.ll index eeb54f67de94..9f2268713853 100644 --- a/polly/test/CodeGen/20100720-MultipleConditions.ll +++ b/polly/test/CodeGen/20100720-MultipleConditions.ll @@ -26,8 +26,8 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -@A = common global [100 x i32] zeroinitializer, align 16 ; <[100 x i32]*> [#uses=2] -@k = common global i32 0, align 4 ; <i32*> [#uses=0] +@A = common global [100 x i32] zeroinitializer, align 16 ; <ptr> [#uses=2] +@k = common global i32 0, align 4 ; <ptr> [#uses=0] define i32 @main() nounwind { ; <label>:0 @@ -36,7 +36,7 @@ define i32 @main() nounwind { ; <label>:1 ; preds = %12, %0 %indvar = phi i64 [ %indvar.next, %12 ], [ 0, %0 ] ; <i64> [#uses=4] - %scevgep = getelementptr [100 x i32], [100 x i32]* @A, i64 0, i64 %indvar ; <i32*> [#uses=3] + %scevgep = getelementptr [100 x i32], ptr @A, i64 0, i64 %indvar ; <ptr> [#uses=3] %i.0 = trunc i64 %indvar to i32 ; <i32> [#uses=3] %exitcond = icmp ne i64 %indvar, 100 ; <i1> [#uses=1] br i1 %exitcond, label %2, label %13 @@ -46,7 +46,7 @@ define i32 @main() nounwind { br i1 %3, label %4, label %5 ; <label>:4 ; preds = %2 - store i32 8, i32* %scevgep + store i32 8, ptr %scevgep br label %5 ; <label>:5 ; preds = %4, %2 @@ -54,7 +54,7 @@ define i32 @main() nounwind { br i1 %6, label %7, label %8 ; <label>:7 ; preds = %5 - store i32 9, i32* %scevgep + store i32 9, ptr %scevgep br label %8 ; <label>:8 ; preds = %7, %5 @@ -62,7 +62,7 @@ define i32 @main() nounwind { br i1 %9, label %10, label %11 ; <label>:10 ; preds = %8 - store i32 10, i32* %scevgep + store i32 10, ptr %scevgep br label %11 ; <label>:11 ; preds = %10, %8 @@ -75,8 +75,8 @@ define i32 @main() nounwind { ; <label>:13 ; preds = %1 fence seq_cst %14 = sext i32 undef to i64 ; <i64> [#uses=1] - %15 = getelementptr inbounds i32, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0), i64 %14 ; <i32*> [#uses=1] - %16 = load i32, i32* %15 ; <i32> [#uses=1] + %15 = getelementptr inbounds i32, ptr @A, i64 %14 ; <ptr> [#uses=1] + %16 = load i32, ptr %15 ; <i32> [#uses=1] ret i32 %16 } diff --git a/polly/test/CodeGen/20100809-IndependentBlock.ll b/polly/test/CodeGen/20100809-IndependentBlock.ll index 4d143e12c30e..8d596689d8ae 100644 --- a/polly/test/CodeGen/20100809-IndependentBlock.ll +++ b/polly/test/CodeGen/20100809-IndependentBlock.ll @@ -1,28 +1,28 @@ ; RUN: opt %loadPolly -polly-codegen -disable-output < %s target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @cfft2([2 x float]* %x) nounwind { +define void @cfft2(ptr %x) nounwind { entry: - %d.1.reg2mem = alloca [2 x float]* ; <[2 x float]**> [#uses=3] + %d.1.reg2mem = alloca ptr ; <ptr> [#uses=3] br i1 undef, label %bb2, label %bb34 bb2: ; preds = %bb34, %entry ret void bb20: ; preds = %bb34 - store [2 x float]* undef, [2 x float]** %d.1.reg2mem + store ptr undef, ptr %d.1.reg2mem br i1 false, label %bb21, label %bb23 bb21: ; preds = %bb20 - %0 = getelementptr inbounds [2 x float], [2 x float]* %x, i64 undef ; <[2 x float]*> [#uses=1] - store [2 x float]* %0, [2 x float]** %d.1.reg2mem + %0 = getelementptr inbounds [2 x float], ptr %x, i64 undef ; <ptr> [#uses=1] + store ptr %0, ptr %d.1.reg2mem br label %bb23 bb23: ; preds = %bb21, %bb20 - %d.1.reload = load [2 x float]*, [2 x float]** %d.1.reg2mem ; <[2 x float]*> [#uses=1] + %d.1.reload = load ptr, ptr %d.1.reg2mem ; <ptr> [#uses=1] br i1 undef, label %bb29, label %bb34 bb29: ; preds = %bb23 - %1 = getelementptr inbounds [2 x float], [2 x float]* %d.1.reload, i64 undef ; <[2 x float]*> [#uses=0] + %1 = getelementptr inbounds [2 x float], ptr %d.1.reload, i64 undef ; <ptr> [#uses=0] br label %bb34 bb34: ; preds = %bb29, %bb23, %entry diff --git a/polly/test/CodeGen/20101030-Overflow.ll b/polly/test/CodeGen/20101030-Overflow.ll index 6ea83e31a9c8..caaa4851f93e 100644 --- a/polly/test/CodeGen/20101030-Overflow.ll +++ b/polly/test/CodeGen/20101030-Overflow.ll @@ -4,7 +4,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 define void @compdecomp() nounwind { entry: %max = alloca i64 - %i = load i64, i64* undef + %i = load i64, ptr undef br label %bb37 bb37: ; preds = %bb36, %bb28 @@ -12,7 +12,7 @@ bb37: ; preds = %bb36, %bb28 br i1 %tmp, label %bb38, label %bb39 bb38: ; preds = %bb37 - store i64 %i, i64* %max + store i64 %i, ptr %max br label %bb39 bb39: ; preds = %bb38, %bb37 diff --git a/polly/test/CodeGen/20101103-Overflow3.ll b/polly/test/CodeGen/20101103-Overflow3.ll index e81d7720e6fd..b2faf14fba0b 100644 --- a/polly/test/CodeGen/20101103-Overflow3.ll +++ b/polly/test/CodeGen/20101103-Overflow3.ll @@ -1,15 +1,14 @@ ; RUN: opt %loadPolly -polly-codegen < %s target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @Reflection_coefficients(i16* %r) nounwind { +define void @Reflection_coefficients(ptr %r) nounwind { bb20: - %indvar3.lcssa20.reload = load i64, i64* undef + %indvar3.lcssa20.reload = load i64, ptr undef %tmp = mul i64 %indvar3.lcssa20.reload, -1 %tmp5 = add i64 %tmp, 8 br label %bb22 bb21: ; preds = %bb22 - %r_addr.1.moved.to.bb21 = getelementptr i16, i16* %r, i64 0 - store i16 0, i16* %r_addr.1.moved.to.bb21, align 2 + store i16 0, ptr %r, align 2 %indvar.next = add i64 %indvar, 1 br label %bb22 diff --git a/polly/test/CodeGen/20101103-signmissmatch.ll b/polly/test/CodeGen/20101103-signmissmatch.ll index 4f32a6b0e308..e157d292dc8a 100644 --- a/polly/test/CodeGen/20101103-signmissmatch.ll +++ b/polly/test/CodeGen/20101103-signmissmatch.ll @@ -10,7 +10,7 @@ bb7: ; preds = %bb7, %entry br i1 undef, label %bb7, label %bb8 bb8: ; preds = %bb7 - %indvar5.lcssa.reload = load i64, i64* undef + %indvar5.lcssa.reload = load i64, ptr undef %tmp17 = mul i64 %indvar5.lcssa.reload, -1 %tmp18 = add i64 0, %tmp17 br label %bb18 @@ -20,7 +20,7 @@ bb13: ; preds = %bb18 br i1 %0, label %bb14, label %bb17 bb14: ; preds = %bb13 - store i64 %i.1, i64* %firstVia.0.reg2mem + store i64 %i.1, ptr %firstVia.0.reg2mem br label %bb17 bb17: ; preds = %bb14, %bb13 diff --git a/polly/test/CodeGen/20120316-InvalidCast.ll b/polly/test/CodeGen/20120316-InvalidCast.ll index 165b9102f04f..8355cc51c468 100644 --- a/polly/test/CodeGen/20120316-InvalidCast.ll +++ b/polly/test/CodeGen/20120316-InvalidCast.ll @@ -4,16 +4,16 @@ target datalayout = "e-p:32:32:32-i64:64:64-i32:32:32-i16:16:16-i1:32:32-f64:64:64-f32:32:32-a0:0-n32" -define void @fixup_gotos(i32* %A, i32* %data) nounwind { +define void @fixup_gotos(ptr %A, ptr %data) nounwind { entry: br label %if if: - %cond = icmp eq i32* %A, null + %cond = icmp eq ptr %A, null br i1 %cond, label %last, label %then then: - store i32 1, i32* %data, align 4 + store i32 1, ptr %data, align 4 br label %last last: diff --git a/polly/test/CodeGen/20120403-RHS-type-mismatch.ll b/polly/test/CodeGen/20120403-RHS-type-mismatch.ll index f612d44ea7b3..1d629e388452 100644 --- a/polly/test/CodeGen/20120403-RHS-type-mismatch.ll +++ b/polly/test/CodeGen/20120403-RHS-type-mismatch.ll @@ -18,7 +18,7 @@ for.body: ; preds = %for.body, %entry for.body7: ; preds = %for.body7, %for.cond5.preheader %i.128 = phi i64 [ 0, %for.cond5.preheader ], [ %inc07, %for.body7 ] %inc07 = add nsw i64 %i.128, 1 - store i64 undef, i64* %hi.129.reg2mem + store i64 undef, ptr %hi.129.reg2mem br i1 false, label %for.body7, label %for.end18 for.end18: ; preds = %for.body7 diff --git a/polly/test/CodeGen/20130211-getNumberOfIterations.ll b/polly/test/CodeGen/20130211-getNumberOfIterations.ll index fda164b86de3..cef0dd559e95 100644 --- a/polly/test/CodeGen/20130211-getNumberOfIterations.ll +++ b/polly/test/CodeGen/20130211-getNumberOfIterations.ll @@ -16,8 +16,8 @@ for.cond: ; preds = %for.body, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds [2048 x i64], [2048 x i64]* @b, i64 0, i64 %indvar - store i64 1, i64* %arrayidx + %arrayidx = getelementptr inbounds [2048 x i64], ptr @b, i64 0, i64 %indvar + store i64 1, ptr %arrayidx %inc = add nsw i64 %indvar, 1 br label %for.cond diff --git a/polly/test/CodeGen/20130221.ll b/polly/test/CodeGen/20130221.ll index 1714048d529d..45414671081a 100644 --- a/polly/test/CodeGen/20130221.ll +++ b/polly/test/CodeGen/20130221.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-codegen -S < %s target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" -define void @list_sequence(i32* %A) { +define void @list_sequence(ptr %A) { entry: br label %for.body @@ -12,7 +12,7 @@ for.body: br i1 %cmp5, label %for.body, label %for.next for.next: - store i32 %i.inc, i32* %A + store i32 %i.inc, ptr %A br label %for.end for.end: diff --git a/polly/test/CodeGen/20150328-SCEVExpanderIntroducesNewIV.ll b/polly/test/CodeGen/20150328-SCEVExpanderIntroducesNewIV.ll index 57eba11204ad..d54be5c3f35f 100644 --- a/polly/test/CodeGen/20150328-SCEVExpanderIntroducesNewIV.ll +++ b/polly/test/CodeGen/20150328-SCEVExpanderIntroducesNewIV.ll @@ -28,8 +28,8 @@ unreachableA: for.body121: %indvar = phi i32 [ 0, %switchbb ], [ %indvar.next, %for.body121 ] - %ptr = getelementptr [1536 x float], [1536 x float]* @A, i64 0, i32 %indvar - store float undef, float* %ptr + %ptr = getelementptr [1536 x float], ptr @A, i64 0, i32 %indvar + store float undef, ptr %ptr %indvar.next = add nsw i32 %indvar, 1 br i1 false, label %for.body121, label %while.cond.loopexit3 diff --git a/polly/test/CodeGen/LoopParallelMD/do_not_mutate_debug_info.ll b/polly/test/CodeGen/LoopParallelMD/do_not_mutate_debug_info.ll index 893b12bd16bb..b04319550938 100644 --- a/polly/test/CodeGen/LoopParallelMD/do_not_mutate_debug_info.ll +++ b/polly/test/CodeGen/LoopParallelMD/do_not_mutate_debug_info.ll @@ -4,21 +4,21 @@ ; CHECK-NOT: !7 = !{!7} target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -@A = common global i32* null, align 8 +@A = common global ptr null, align 8 ; Function Attrs: nounwind uwtable define void @foo() !dbg !4 { entry: tail call void @llvm.dbg.value(metadata i32 0, i64 0, metadata !9, metadata !19), !dbg !20 - %0 = load i32*, i32** @A, align 8, !dbg !21, !tbaa !23 + %0 = load ptr, ptr @A, align 8, !dbg !21, !tbaa !23 br label %for.body, !dbg !27 for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32, i32* %0, i64 %indvars.iv, !dbg !21 - %1 = load i32, i32* %arrayidx, align 4, !dbg !21, !tbaa !30 + %arrayidx = getelementptr inbounds i32, ptr %0, i64 %indvars.iv, !dbg !21 + %1 = load i32, ptr %arrayidx, align 4, !dbg !21, !tbaa !30 %add = add nsw i32 %1, 1, !dbg !21 - store i32 %add, i32* %arrayidx, align 4, !dbg !21, !tbaa !30 + store i32 %add, ptr %arrayidx, align 4, !dbg !21, !tbaa !30 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1, !dbg !27 %exitcond = icmp eq i64 %indvars.iv, 1, !dbg !27 br i1 %exitcond, label %for.end, label %for.body, !dbg !27 diff --git a/polly/test/CodeGen/LoopParallelMD/loop_nest_param_parallel.ll b/polly/test/CodeGen/LoopParallelMD/loop_nest_param_parallel.ll index 617aaa755535..7b131c5ebcbd 100644 --- a/polly/test/CodeGen/LoopParallelMD/loop_nest_param_parallel.ll +++ b/polly/test/CodeGen/LoopParallelMD/loop_nest_param_parallel.ll @@ -8,7 +8,7 @@ ; CHECK-DAG: %polly.loop_cond[[CInner:[0-9]*]] = icmp sle i64 %polly.indvar_next{{[0-9]*}}, 511 ; CHECK-DAG: br i1 %polly.loop_cond[[CInner]], label %polly.loop_header{{[0-9]*}}, label %polly.loop_exit{{[0-9]*}}, !llvm.loop ![[IDInner:[0-9]*]] ; -; CHECK-DAG: store i32 %{{[a-z_0-9]*}}, i32* %{{[a-z_0-9]*}}, {{[ ._!,a-zA-Z0-9]*}}, !llvm.access.group ![[GROUPLST6:[0-9]+]] +; CHECK-DAG: store i32 %{{[a-z_0-9]*}}, ptr %{{[a-z_0-9]*}}, {{[ ._!,a-zA-Z0-9]*}}, !llvm.access.group ![[GROUPLST6:[0-9]+]] ; ; CHECK-DAG: ![[IDOuter]] = distinct !{![[IDOuter]], ![[ACCGROUP1:[0-9]+]]} ; CHECK-DAG: ![[ACCGROUP1]] = !{!"llvm.loop.parallel_accesses", ![[GROUP2:[0-9]+]]} @@ -28,7 +28,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A) { +define void @jd(ptr %A) { entry: br label %for.cond @@ -49,9 +49,9 @@ for.body3: ; preds = %for.cond1 %tmp = add nsw i64 %indvars.iv3, %indvars.iv %tmp7 = shl nsw i64 %indvars.iv3, 9 %tmp8 = add nsw i64 %tmp7, %indvars.iv - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %tmp8 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %tmp8 %tmp9 = trunc i64 %tmp to i32 - store i32 %tmp9, i32* %arrayidx, align 4 + store i32 %tmp9, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/CodeGen/MemAccess/bad_alignment.ll b/polly/test/CodeGen/MemAccess/bad_alignment.ll index ab519aa333f6..32f3cfe963b7 100644 --- a/polly/test/CodeGen/MemAccess/bad_alignment.ll +++ b/polly/test/CodeGen/MemAccess/bad_alignment.ll @@ -12,7 +12,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @bad_alignment(i32* %A) { +define void @bad_alignment(ptr %A) { entry: br label %for.cond @@ -22,9 +22,9 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv %tmp = trunc i64 %indvars.iv to i32 - store i32 %tmp, i32* %arrayidx, align 8 + store i32 %tmp, ptr %arrayidx, align 8 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/CodeGen/MemAccess/default_aligned_new_access_function.ll b/polly/test/CodeGen/MemAccess/default_aligned_new_access_function.ll index 873c3d547d9b..7d8083cc5584 100644 --- a/polly/test/CodeGen/MemAccess/default_aligned_new_access_function.ll +++ b/polly/test/CodeGen/MemAccess/default_aligned_new_access_function.ll @@ -14,7 +14,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @simple_stride(i32* noalias %A, i32* noalias %B) { +define void @simple_stride(ptr noalias %A, ptr noalias %B) { entry: br label %for.cond @@ -25,11 +25,11 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %tmp = shl nsw i64 %indvars.iv, 1 - %arrayidx = getelementptr inbounds i32, i32* %B, i64 %tmp - %tmp4 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %B, i64 %tmp + %tmp4 = load i32, ptr %arrayidx, align 4 %tmp5 = shl nsw i64 %indvars.iv, 1 - %arrayidx3 = getelementptr inbounds i32, i32* %A, i64 %tmp5 - store i32 %tmp4, i32* %arrayidx3, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %A, i64 %tmp5 + store i32 %tmp4, ptr %arrayidx3, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/CodeGen/MemAccess/simple.ll b/polly/test/CodeGen/MemAccess/simple.ll index 0b01310728e3..39e8a2c91b79 100644 --- a/polly/test/CodeGen/MemAccess/simple.ll +++ b/polly/test/CodeGen/MemAccess/simple.ll @@ -30,12 +30,12 @@ entry: for.cond: ; preds = %for.inc, %entry %0 = phi i32 [ 0, %entry ], [ %inc, %for.inc ] - %arrayidx = getelementptr [100 x i32], [100 x i32]* @A, i32 0, i32 %0 + %arrayidx = getelementptr [100 x i32], ptr @A, i32 0, i32 %0 %exitcond1 = icmp ne i32 %0, 12 br i1 %exitcond1, label %for.body, label %for.end for.body: ; preds = %for.cond - store i32 %0, i32* %arrayidx + store i32 %0, ptr %arrayidx br label %for.inc for.inc: ; preds = %for.body @@ -47,12 +47,12 @@ for.end: ; preds = %for.cond for.cond4: ; preds = %for.inc11, %for.end %1 = phi i32 [ 0, %for.end ], [ %inc13, %for.inc11 ] - %arrayidx10 = getelementptr [100 x i32], [100 x i32]* @B, i32 0, i32 %1 + %arrayidx10 = getelementptr [100 x i32], ptr @B, i32 0, i32 %1 %exitcond = icmp ne i32 %1, 12 br i1 %exitcond, label %for.body7, label %for.end14 for.body7: ; preds = %for.cond4 - store i32 %1, i32* %arrayidx10 + store i32 %1, ptr %arrayidx10 br label %for.inc11 for.inc11: ; preds = %for.body7 diff --git a/polly/test/CodeGen/MemAccess/simple_analyze.ll b/polly/test/CodeGen/MemAccess/simple_analyze.ll index bdea9a53a60f..00c90822d656 100644 --- a/polly/test/CodeGen/MemAccess/simple_analyze.ll +++ b/polly/test/CodeGen/MemAccess/simple_analyze.ll @@ -11,12 +11,12 @@ entry: for.cond: ; preds = %for.inc, %entry %0 = phi i32 [ 0, %entry ], [ %inc, %for.inc ] - %arrayidx = getelementptr [100 x i32], [100 x i32]* @A, i32 0, i32 %0 + %arrayidx = getelementptr [100 x i32], ptr @A, i32 0, i32 %0 %exitcond1 = icmp ne i32 %0, 12 br i1 %exitcond1, label %for.body, label %for.end for.body: ; preds = %for.cond - store i32 %0, i32* %arrayidx + store i32 %0, ptr %arrayidx br label %for.inc for.inc: ; preds = %for.body @@ -29,12 +29,12 @@ for.end: ; preds = %for.cond for.cond4: ; preds = %for.inc11, %for.end %1 = phi i32 [ 0, %for.end ], [ %inc13, %for.inc11 ] - %arrayidx10 = getelementptr [100 x i32], [100 x i32]* @B, i32 0, i32 %1 + %arrayidx10 = getelementptr [100 x i32], ptr @B, i32 0, i32 %1 %exitcond = icmp ne i32 %1, 12 br i1 %exitcond, label %for.body7, label %for.end14 for.body7: ; preds = %for.cond4 - store i32 %1, i32* %arrayidx10 + store i32 %1, ptr %arrayidx10 br label %for.inc11 for.inc11: ; preds = %for.body7 @@ -49,28 +49,28 @@ for.end14: ; preds = %for.cond4 ; Verify that the new access function (see above) is actually used during vector code generation. -; JSCOPVEC: store i32 0, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @B, i32 0, i32 0) -; JSCOPVEC: store i32 1, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @B, i32 0, i32 0) -; JSCOPVEC: store i32 2, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @B, i32 0, i32 0) -; JSCOPVEC: store i32 3, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @B, i32 0, i32 0) -; JSCOPVEC: store i32 4, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @B, i32 0, i32 0) -; JSCOPVEC: store i32 5, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @B, i32 0, i32 0) -; JSCOPVEC: store i32 6, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @B, i32 0, i32 0) -; JSCOPVEC: store i32 7, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @B, i32 0, i32 0) -; JSCOPVEC: store i32 8, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @B, i32 0, i32 0) -; JSCOPVEC: store i32 9, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @B, i32 0, i32 0) -; JSCOPVEC: store i32 10, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @B, i32 0, i32 0) -; JSCOPVEC: store i32 11, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @B, i32 0, i32 0) +; JSCOPVEC: store i32 0, ptr @B +; JSCOPVEC: store i32 1, ptr @B +; JSCOPVEC: store i32 2, ptr @B +; JSCOPVEC: store i32 3, ptr @B +; JSCOPVEC: store i32 4, ptr @B +; JSCOPVEC: store i32 5, ptr @B +; JSCOPVEC: store i32 6, ptr @B +; JSCOPVEC: store i32 7, ptr @B +; JSCOPVEC: store i32 8, ptr @B +; JSCOPVEC: store i32 9, ptr @B +; JSCOPVEC: store i32 10, ptr @B +; JSCOPVEC: store i32 11, ptr @B -; JSCOPVEC: store i32 0, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0) -; JSCOPVEC: store i32 1, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0) -; JSCOPVEC: store i32 2, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0) -; JSCOPVEC: store i32 3, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0) -; JSCOPVEC: store i32 4, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0) -; JSCOPVEC: store i32 5, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0) -; JSCOPVEC: store i32 6, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0) -; JSCOPVEC: store i32 7, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0) -; JSCOPVEC: store i32 8, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0) -; JSCOPVEC: store i32 9, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0) -; JSCOPVEC: store i32 10, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0) -; JSCOPVEC: store i32 11, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i32 0, i32 0) +; JSCOPVEC: store i32 0, ptr @A +; JSCOPVEC: store i32 1, ptr @A +; JSCOPVEC: store i32 2, ptr @A +; JSCOPVEC: store i32 3, ptr @A +; JSCOPVEC: store i32 4, ptr @A +; JSCOPVEC: store i32 5, ptr @A +; JSCOPVEC: store i32 6, ptr @A +; JSCOPVEC: store i32 7, ptr @A +; JSCOPVEC: store i32 8, ptr @A +; JSCOPVEC: store i32 9, ptr @A +; JSCOPVEC: store i32 10, ptr @A +; JSCOPVEC: store i32 11, ptr @A diff --git a/polly/test/CodeGen/MemAccess/update_access_functions.ll b/polly/test/CodeGen/MemAccess/update_access_functions.ll index 969b8e2d6896..05d208708a36 100644 --- a/polly/test/CodeGen/MemAccess/update_access_functions.ll +++ b/polly/test/CodeGen/MemAccess/update_access_functions.ll @@ -5,46 +5,46 @@ ; CHECK-LABEL: polly.stmt.loop1: ; CHECK-NEXT: %3 = mul nsw i64 5, %polly.indvar{{[0-9]*}} ; CHECK-NEXT: %4 = sub nsw i64 %3, 10 -; CHECK-NEXT: %polly.access.A = getelementptr double, double* %A, i64 %4 -; CHECK-NEXT: store double 4.200000e+01, double* %polly.access.A, align 8 +; CHECK-NEXT: %polly.access.A = getelementptr double, ptr %A, i64 %4 +; CHECK-NEXT: store double 4.200000e+01, ptr %polly.access.A, align 8 ; CHECK-LABEL: polly.stmt.loop2: -; CHECK-NEXT: %polly.access.A[[Num0:[0-9]*]] = getelementptr double, double* %A, i64 42 -; CHECK-NEXT: %val_p_scalar_ = load double, double* %polly.access.A[[Num0]], align 8 +; CHECK-NEXT: %polly.access.A[[Num0:[0-9]*]] = getelementptr double, ptr %A, i64 42 +; CHECK-NEXT: %val_p_scalar_ = load double, ptr %polly.access.A[[Num0]], align 8 ; CHECK-LABEL: polly.stmt.loop3: -; CHECK-NEXT: %val.s2a.reload = load double, double* %val.s2a +; CHECK-NEXT: %val.s2a.reload = load double, ptr %val.s2a ; CHECK-NEXT: [[REG0:%.*]] = mul nsw i64 13, %polly.indvar{{[0-9]*}} ; CHECK-NEXT: [[REG1:%.*]] = add nsw i64 [[REG0]], 5 -; CHECK-NEXT: %polly.access.A[[Num1:[0-9]*]] = getelementptr double, double* %A, i64 [[REG1]] -; CHECK-NEXT: store double %val.s2a.reload, double* %polly.access.A[[Num1]], align 8, +; CHECK-NEXT: %polly.access.A[[Num1:[0-9]*]] = getelementptr double, ptr %A, i64 [[REG1]] +; CHECK-NEXT: store double %val.s2a.reload, ptr %polly.access.A[[Num1]], align 8, target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @update_access_functions(i64 %arg, double* %A) { +define void @update_access_functions(i64 %arg, ptr %A) { bb3: br label %loop1 loop1: %indvar = phi i64 [ %indvar.next, %loop1 ], [ 1, %bb3 ] - %ptr1 = getelementptr inbounds double, double* %A, i64 %indvar - store double 42.0, double* %ptr1, align 8 + %ptr1 = getelementptr inbounds double, ptr %A, i64 %indvar + store double 42.0, ptr %ptr1, align 8 %indvar.next = add nuw nsw i64 %indvar, 1 %cmp = icmp ne i64 %indvar.next, %arg br i1 %cmp, label %loop1, label %loop2 loop2: %indvar.2 = phi i64 [ %indvar.2.next, %loop2 ], [ 1, %loop1 ] - %ptr2 = getelementptr inbounds double, double* %A, i64 %indvar.2 - %val = load double, double* %ptr2, align 8 + %ptr2 = getelementptr inbounds double, ptr %A, i64 %indvar.2 + %val = load double, ptr %ptr2, align 8 %indvar.2.next = add nuw nsw i64 %indvar.2, 1 %cmp.2 = icmp ne i64 %indvar.2.next, %arg br i1 %cmp.2, label %loop2, label %loop3 loop3: %indvar.3 = phi i64 [ %indvar.3.next, %loop3 ], [ 1, %loop2 ] - %ptr3 = getelementptr inbounds double, double* %A, i64 %indvar.3 - store double %val, double* %ptr3, align 8 + %ptr3 = getelementptr inbounds double, ptr %A, i64 %indvar.3 + store double %val, ptr %ptr3, align 8 %indvar.3.next = add nuw nsw i64 %indvar.3, 1 %cmp.3 = icmp ne i64 %indvar.3.next, %arg br i1 %cmp.3, label %loop3, label %exit diff --git a/polly/test/CodeGen/OpenMP/floord-as-argument-to-subfunction.ll b/polly/test/CodeGen/OpenMP/floord-as-argument-to-subfunction.ll index 01497566f798..eb9dfcd9e920 100644 --- a/polly/test/CodeGen/OpenMP/floord-as-argument-to-subfunction.ll +++ b/polly/test/CodeGen/OpenMP/floord-as-argument-to-subfunction.ll @@ -8,49 +8,46 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @III_hybrid([32 x double]* %tsOut) #0 { +define void @III_hybrid(ptr %tsOut) #0 { entry: - %0 = getelementptr inbounds [32 x double], [32 x double]* %tsOut, i64 0, i64 0 br label %if.end if.end: ; preds = %entry br i1 undef, label %for.body42, label %for.cond66.preheader for.cond39.for.cond66.preheader.loopexit67_crit_edge: ; preds = %for.body42 - %add.ptr62.lcssa = phi double* [ undef, %for.body42 ] + %add.ptr62.lcssa = phi ptr [ undef, %for.body42 ] br label %for.cond66.preheader for.cond66.preheader: ; preds = %for.cond39.for.cond66.preheader.loopexit67_crit_edge, %if.end - %rawout1.3.ph = phi double* [ %add.ptr62.lcssa, %for.cond39.for.cond66.preheader.loopexit67_crit_edge ], [ undef, %if.end ] + %rawout1.3.ph = phi ptr [ %add.ptr62.lcssa, %for.cond39.for.cond66.preheader.loopexit67_crit_edge ], [ undef, %if.end ] %sb.3.ph = phi i32 [ 0, %for.cond39.for.cond66.preheader.loopexit67_crit_edge ], [ 0, %if.end ] - %tspnt.3.ph = phi double* [ undef, %for.cond39.for.cond66.preheader.loopexit67_crit_edge ], [ %0, %if.end ] + %tspnt.3.ph = phi ptr [ undef, %for.cond39.for.cond66.preheader.loopexit67_crit_edge ], [ %tsOut, %if.end ] br label %for.cond69.preheader for.body42: ; preds = %if.end br label %for.cond39.for.cond66.preheader.loopexit67_crit_edge for.cond69.preheader: ; preds = %for.end76, %for.cond66.preheader - %tspnt.375 = phi double* [ %incdec.ptr79, %for.end76 ], [ %tspnt.3.ph, %for.cond66.preheader ] + %tspnt.375 = phi ptr [ %incdec.ptr79, %for.end76 ], [ %tspnt.3.ph, %for.cond66.preheader ] %sb.374 = phi i32 [ %inc78, %for.end76 ], [ %sb.3.ph, %for.cond66.preheader ] - %rawout1.373 = phi double* [ undef, %for.end76 ], [ %rawout1.3.ph, %for.cond66.preheader ] + %rawout1.373 = phi ptr [ undef, %for.end76 ], [ %rawout1.3.ph, %for.cond66.preheader ] br label %for.body71 for.body71: ; preds = %for.body71, %for.cond69.preheader %indvars.iv = phi i64 [ 0, %for.cond69.preheader ], [ %indvars.iv.next, %for.body71 ] - %rawout1.469 = phi double* [ %rawout1.373, %for.cond69.preheader ], [ undef, %for.body71 ] - %1 = bitcast double* %rawout1.469 to i64* - %2 = load i64, i64* %1, align 8 - %3 = shl nsw i64 %indvars.iv, 5 - %arrayidx73 = getelementptr inbounds double, double* %tspnt.375, i64 %3 - %4 = bitcast double* %arrayidx73 to i64* - store i64 %2, i64* %4, align 8 + %rawout1.469 = phi ptr [ %rawout1.373, %for.cond69.preheader ], [ undef, %for.body71 ] + %0 = load i64, ptr %rawout1.469, align 8 + %1 = shl nsw i64 %indvars.iv, 5 + %arrayidx73 = getelementptr inbounds double, ptr %tspnt.375, i64 %1 + store i64 %0, ptr %arrayidx73, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 18 br i1 %exitcond, label %for.body71, label %for.end76 for.end76: ; preds = %for.body71 %inc78 = add nsw i32 %sb.374, 1 - %incdec.ptr79 = getelementptr inbounds double, double* %tspnt.375, i64 1 + %incdec.ptr79 = getelementptr inbounds double, ptr %tspnt.375, i64 1 %exitcond95 = icmp ne i32 %inc78, 32 br i1 %exitcond95, label %for.cond69.preheader, label %for.end80 diff --git a/polly/test/CodeGen/OpenMP/inlineasm.ll b/polly/test/CodeGen/OpenMP/inlineasm.ll index 2e936307c556..69b1b0aa53f3 100644 --- a/polly/test/CodeGen/OpenMP/inlineasm.ll +++ b/polly/test/CodeGen/OpenMP/inlineasm.ll @@ -8,7 +8,7 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define i32 @foo([1 x i32]* %bar) { +define i32 @foo(ptr %bar) { for.cond1.preheader.preheader: br label %for.cond1.preheader @@ -19,8 +19,8 @@ for.cond1.preheader: for.body3: %indvars.iv = phi i64 [ %indvars.iv.next, %for.body3 ], [ 0, %for.cond1.preheader ] %xyzzy = tail call i32 asm "664:\0A", "={ax},{di},~{dirflag},~{fpsr},~{flags}"(i32 0) #0 - %arrayidx5 = getelementptr inbounds [1 x i32], [1 x i32]* %bar, i64 0, i64 %indvars.iv - store i32 %xyzzy, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds [1 x i32], ptr %bar, i64 0, i64 %indvars.iv + store i32 %xyzzy, ptr %arrayidx5, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond.not = icmp eq i64 %indvars.iv, 1 br i1 %exitcond.not, label %for.inc6, label %for.body3 diff --git a/polly/test/CodeGen/OpenMP/invariant_base_pointer_preloaded.ll b/polly/test/CodeGen/OpenMP/invariant_base_pointer_preloaded.ll index 91d956dacc8a..30beef5b0709 100644 --- a/polly/test/CodeGen/OpenMP/invariant_base_pointer_preloaded.ll +++ b/polly/test/CodeGen/OpenMP/invariant_base_pointer_preloaded.ll @@ -8,12 +8,12 @@ ; A[i] += A[0]; ; } ; -; CHECK: %polly.subfn.storeaddr.polly.access.A.load = getelementptr inbounds { float, float* }, { float, float* }* %polly.par.userContext, i32 0 -; CHECK: store float %polly.access.A.load, float* %polly.subfn.storeaddr.polly.access.A.load +; CHECK: %polly.subfn.storeaddr.polly.access.A.load = getelementptr inbounds { float, ptr }, ptr %polly.par.userContext, i32 0 +; CHECK: store float %polly.access.A.load, ptr %polly.subfn.storeaddr.polly.access.A.load ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(float* nocapture %A) { +define void @f(ptr nocapture %A) { entry: br label %for.body @@ -22,11 +22,11 @@ for.cond.cleanup: ; preds = %for.body for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 1, %entry ], [ %indvars.iv.next, %for.body ] - %tmp = load float, float* %A, align 4 - %arrayidx1 = getelementptr inbounds float, float* %A, i64 %indvars.iv - %tmp1 = load float, float* %arrayidx1, align 4 + %tmp = load float, ptr %A, align 4 + %arrayidx1 = getelementptr inbounds float, ptr %A, i64 %indvars.iv + %tmp1 = load float, ptr %arrayidx1, align 4 %add = fadd float %tmp, %tmp1 - store float %add, float* %arrayidx1, align 4 + store float %add, ptr %arrayidx1, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 1000 br i1 %exitcond, label %for.cond.cleanup, label %for.body diff --git a/polly/test/CodeGen/OpenMP/invariant_base_pointer_preloaded_different_bb.ll b/polly/test/CodeGen/OpenMP/invariant_base_pointer_preloaded_different_bb.ll index aabaad433cd0..fe5d2ab8c96d 100644 --- a/polly/test/CodeGen/OpenMP/invariant_base_pointer_preloaded_different_bb.ll +++ b/polly/test/CodeGen/OpenMP/invariant_base_pointer_preloaded_different_bb.ll @@ -8,14 +8,14 @@ ; A[i] += /* split bb */ A[0]; ; } ; A[0] tmp (unused) A -; CHECK: %polly.par.userContext = alloca { float, float*, float* } +; CHECK: %polly.par.userContext = alloca { float, ptr, ptr } ; ; CHECK: %polly.subfn.storeaddr.polly.access.A.load = getelementptr inbounds -; CHECK: store float %polly.access.A.load, float* %polly.subfn.storeaddr.polly.access.A.load +; CHECK: store float %polly.access.A.load, ptr %polly.subfn.storeaddr.polly.access.A.load ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(float* nocapture %A) { +define void @f(ptr nocapture %A) { entry: br label %for.body @@ -24,14 +24,14 @@ for.cond.cleanup: ; preds = %for.body for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 1, %entry ], [ %indvars.iv.next, %for.body.split ] - %tmp = load float, float* %A, align 4 + %tmp = load float, ptr %A, align 4 br label %for.body.split for.body.split: - %arrayidx1 = getelementptr inbounds float, float* %A, i64 %indvars.iv - %tmp1 = load float, float* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds float, ptr %A, i64 %indvars.iv + %tmp1 = load float, ptr %arrayidx1, align 4 %add = fadd float %tmp, %tmp1 - store float %add, float* %arrayidx1, align 4 + store float %add, ptr %arrayidx1, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 1000 br i1 %exitcond, label %for.cond.cleanup, label %for.body diff --git a/polly/test/CodeGen/OpenMP/invariant_base_pointer_preloaded_pass_only_needed.ll b/polly/test/CodeGen/OpenMP/invariant_base_pointer_preloaded_pass_only_needed.ll index b668c8480119..49b9321c40b8 100644 --- a/polly/test/CodeGen/OpenMP/invariant_base_pointer_preloaded_pass_only_needed.ll +++ b/polly/test/CodeGen/OpenMP/invariant_base_pointer_preloaded_pass_only_needed.ll @@ -15,16 +15,16 @@ ; } ; ; i A[0] A -; CHECK: %polly.par.userContext = alloca { i64, float, float* } +; CHECK: %polly.par.userContext = alloca { i64, float, ptr } ; ; CHECK: %polly.access.B.load = ; CHECK: %polly.subfn.storeaddr.polly.access.A.load = getelementptr inbounds -; CHECK: store float %polly.access.A.load, float* %polly.subfn.storeaddr.polly.access.A.load -; CHECK-NOT: store float %polly.access.B.load, float* %polly.subfn.storeaddr.polly.access.B.load +; CHECK: store float %polly.access.A.load, ptr %polly.subfn.storeaddr.polly.access.A.load +; CHECK-NOT: store float %polly.access.B.load, ptr %polly.subfn.storeaddr.polly.access.B.load ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(float* %A, float* %B) { +define void @f(ptr %A, ptr %B) { entry: br label %for.cond @@ -34,13 +34,13 @@ for.cond: ; preds = %for.inc.9, %entry br i1 %exitcond3, label %for.body, label %for.end.11 for.body: ; preds = %for.cond - %tmp = load float, float* %B, align 4 - %arrayidx1 = getelementptr inbounds float, float* %B, i64 %indvars.iv1 + %tmp = load float, ptr %B, align 4 + %arrayidx1 = getelementptr inbounds float, ptr %B, i64 %indvars.iv1 %iv.add = add nsw i64 %indvars.iv1, 1 - %arrayidx2 = getelementptr inbounds float, float* %B, i64 %iv.add - %tmp4 = load float, float* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds float, ptr %B, i64 %iv.add + %tmp4 = load float, ptr %arrayidx2, align 4 %add = fadd float %tmp4, %tmp - store float %add, float* %arrayidx1, align 4 + store float %add, ptr %arrayidx1, align 4 br label %for.cond.2 for.cond.2: ; preds = %for.inc, %for.body @@ -49,11 +49,11 @@ for.cond.2: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body.4, label %for.end for.body.4: ; preds = %for.cond.2 - %tmp5 = load float, float* %A, align 4 - %arrayidx7 = getelementptr inbounds float, float* %A, i64 %indvars.iv - %tmp6 = load float, float* %arrayidx7, align 4 + %tmp5 = load float, ptr %A, align 4 + %arrayidx7 = getelementptr inbounds float, ptr %A, i64 %indvars.iv + %tmp6 = load float, ptr %arrayidx7, align 4 %add8 = fadd float %tmp6, %tmp5 - store float %add8, float* %arrayidx7, align 4 + store float %add8, ptr %arrayidx7, align 4 br label %for.inc for.inc: ; preds = %for.body.4 diff --git a/polly/test/CodeGen/OpenMP/invariant_base_pointers_preloaded.ll b/polly/test/CodeGen/OpenMP/invariant_base_pointers_preloaded.ll index 483e302852e6..06c4cdab45f1 100644 --- a/polly/test/CodeGen/OpenMP/invariant_base_pointers_preloaded.ll +++ b/polly/test/CodeGen/OpenMP/invariant_base_pointers_preloaded.ll @@ -9,11 +9,11 @@ ; } ; ; CHECK: %polly.subfn.storeaddr.polly.access.A.load = getelementptr inbounds -; CHECK: store float %polly.access.A.load, float* %polly.subfn.storeaddr.polly.access.A.load +; CHECK: store float %polly.access.A.load, ptr %polly.subfn.storeaddr.polly.access.A.load ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(float* nocapture %A) { +define void @f(ptr nocapture %A) { entry: br label %for.body @@ -22,13 +22,13 @@ for.cond.cleanup: ; preds = %for.body for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 1, %entry ], [ %indvars.iv.next, %for.body ] - %tmp = load float, float* %A, align 4 - %tmp2 = load float, float* %A, align 4 + %tmp = load float, ptr %A, align 4 + %tmp2 = load float, ptr %A, align 4 %tmpadd = fadd float %tmp, %tmp2 - %arrayidx1 = getelementptr inbounds float, float* %A, i64 %indvars.iv - %tmp1 = load float, float* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds float, ptr %A, i64 %indvars.iv + %tmp1 = load float, ptr %arrayidx1, align 4 %add = fadd float %tmp2, %tmp1 - store float %add, float* %arrayidx1, align 4 + store float %add, ptr %arrayidx1, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 1000 br i1 %exitcond, label %for.cond.cleanup, label %for.body diff --git a/polly/test/CodeGen/OpenMP/loop-body-references-outer-iv.ll b/polly/test/CodeGen/OpenMP/loop-body-references-outer-iv.ll index 884fdbee3812..db58c3ab7593 100644 --- a/polly/test/CodeGen/OpenMP/loop-body-references-outer-iv.ll +++ b/polly/test/CodeGen/OpenMP/loop-body-references-outer-iv.ll @@ -26,8 +26,8 @@ for.i: for.j: %indvar.j = phi i64 [ %indvar.j.next, %for.j], [ 0, %for.i ] %sum = add i64 %indvar.j, %indvar.i - %scevgep = getelementptr [1024 x float], [1024 x float]* @A, i64 0, i64 %sum - store float 0.0, float *%scevgep + %scevgep = getelementptr [1024 x float], ptr @A, i64 0, i64 %sum + store float 0.0, ptr %scevgep %indvar.j.next = add i64 %indvar.j, 1 %exitcond.j = icmp slt i64 %indvar.j.next, 1024 br i1 %exitcond.j, label %for.j, label %for.i.inc diff --git a/polly/test/CodeGen/OpenMP/loop-body-references-outer-values-2.ll b/polly/test/CodeGen/OpenMP/loop-body-references-outer-values-2.ll index 75a09a4348bc..c2ddc1e26496 100644 --- a/polly/test/CodeGen/OpenMP/loop-body-references-outer-values-2.ll +++ b/polly/test/CodeGen/OpenMP/loop-body-references-outer-values-2.ll @@ -6,11 +6,11 @@ ; AST: for (int c0 = 0; c0 <= 1023; c0 += 1) ; AST: Stmt_for_i(c0); -; IR: getelementptr inbounds { [1024 x double]* }, { [1024 x double]* }* %polly.par.userContext, i32 0, i32 0 +; IR: getelementptr inbounds { ptr }, ptr %polly.par.userContext, i32 0, i32 0 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @kernel_trmm([1024 x double]* %B) { +define void @kernel_trmm(ptr %B) { entry: br label %for.cond1.preheader @@ -20,8 +20,8 @@ for.cond1.preheader: for.i: %indvar.i = phi i64 [ %indvar.i.next, %for.i ], [ 0, %for.cond1.preheader ] - %getelementptr = getelementptr [1024 x double], [1024 x double]* %B, i64 %extern, i64 %indvar.i - store double 0.000000e+00, double* %getelementptr + %getelementptr = getelementptr [1024 x double], ptr %B, i64 %extern, i64 %indvar.i + store double 0.000000e+00, ptr %getelementptr %indvar.i.next = add i64 %indvar.i, 1 %exitcond.i = icmp ne i64 %indvar.i.next, 1024 br i1 %exitcond.i, label %for.i, label %end diff --git a/polly/test/CodeGen/OpenMP/loop-body-references-outer-values-3.ll b/polly/test/CodeGen/OpenMP/loop-body-references-outer-values-3.ll index fba23b40419c..0f025bb94112 100644 --- a/polly/test/CodeGen/OpenMP/loop-body-references-outer-values-3.ll +++ b/polly/test/CodeGen/OpenMP/loop-body-references-outer-values-3.ll @@ -17,17 +17,15 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %cols, i8* noalias %call) { +define void @foo(i64 %cols, ptr noalias %call) { entry: - %tmp = bitcast i8* %call to i64** br label %for.body for.body: %indvar = phi i64 [ %indvar.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i64*, i64** %tmp, i64 0 - %tmp1 = load i64*, i64** %arrayidx, align 8 - %arrayidx.2 = getelementptr inbounds i64, i64* %tmp1, i64 %indvar - store i64 1, i64* %arrayidx.2, align 4 + %tmp1 = load ptr, ptr %call, align 8 + %arrayidx.2 = getelementptr inbounds i64, ptr %tmp1, i64 %indvar + store i64 1, ptr %arrayidx.2, align 4 %indvar.next = add nsw i64 %indvar, 1 %cmp = icmp slt i64 %indvar.next, %cols br i1 %cmp, label %for.body, label %end @@ -47,17 +45,15 @@ end: ; IR: @bar_polly_subfn -define void @bar(i64 %cols, i8* noalias %call) { +define void @bar(i64 %cols, ptr noalias %call) { entry: - %tmp = bitcast i8* %call to i64** - %arrayidx = getelementptr inbounds i64*, i64** %tmp, i64 0 br label %for.body for.body: %indvar = phi i64 [ %indvar.next, %for.body ], [ 0, %entry ] - %tmp1 = load i64*, i64** %arrayidx, align 8 - %arrayidx.2 = getelementptr inbounds i64, i64* %tmp1, i64 %indvar - store i64 1, i64* %arrayidx.2, align 4 + %tmp1 = load ptr, ptr %call, align 8 + %arrayidx.2 = getelementptr inbounds i64, ptr %tmp1, i64 %indvar + store i64 1, ptr %arrayidx.2, align 4 %indvar.next = add nsw i64 %indvar, 1 %cmp = icmp slt i64 %indvar.next, %cols br i1 %cmp, label %for.body, label %end diff --git a/polly/test/CodeGen/OpenMP/matmul-parallel.ll b/polly/test/CodeGen/OpenMP/matmul-parallel.ll index 29a093901f14..5ee9a7c7a824 100644 --- a/polly/test/CodeGen/OpenMP/matmul-parallel.ll +++ b/polly/test/CodeGen/OpenMP/matmul-parallel.ll @@ -10,7 +10,7 @@ target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-pc-windows-msvc19.16.27034" -define i32 @foo([1536 x float]* nocapture readonly %A, [1536 x float]* nocapture readonly %B, [1536 x float]* nocapture %C) { +define i32 @foo(ptr nocapture readonly %A, ptr nocapture readonly %B, ptr nocapture %C) { entry: br label %entry.split @@ -26,7 +26,7 @@ for.cond.cleanup: for.cond5.preheader: %indvars.iv47 = phi i64 [ 0, %for.cond1.preheader ], [ %indvars.iv.next48, %for.cond.cleanup7 ] - %arrayidx10 = getelementptr inbounds [1536 x float], [1536 x float]* %C, i64 %indvars.iv50, i64 %indvars.iv47 + %arrayidx10 = getelementptr inbounds [1536 x float], ptr %C, i64 %indvars.iv50, i64 %indvars.iv47 br label %for.body8 for.cond.cleanup3: @@ -41,14 +41,14 @@ for.cond.cleanup7: for.body8: %indvars.iv = phi i64 [ 0, %for.cond5.preheader ], [ %indvars.iv.next, %for.body8 ] - %0 = load float, float* %arrayidx10, align 4 - %arrayidx14 = getelementptr inbounds [1536 x float], [1536 x float]* %A, i64 %indvars.iv50, i64 %indvars.iv - %1 = load float, float* %arrayidx14, align 4 - %arrayidx18 = getelementptr inbounds [1536 x float], [1536 x float]* %B, i64 %indvars.iv, i64 %indvars.iv47 - %2 = load float, float* %arrayidx18, align 4 + %0 = load float, ptr %arrayidx10, align 4 + %arrayidx14 = getelementptr inbounds [1536 x float], ptr %A, i64 %indvars.iv50, i64 %indvars.iv + %1 = load float, ptr %arrayidx14, align 4 + %arrayidx18 = getelementptr inbounds [1536 x float], ptr %B, i64 %indvars.iv, i64 %indvars.iv47 + %2 = load float, ptr %arrayidx18, align 4 %mul = fmul float %1, %2 %add = fadd float %0, %mul - store float %add, float* %arrayidx10, align 4 + store float %add, ptr %arrayidx10, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 1536 br i1 %exitcond, label %for.cond.cleanup7, label %for.body8 diff --git a/polly/test/CodeGen/OpenMP/reference-argument-from-non-affine-region.ll b/polly/test/CodeGen/OpenMP/reference-argument-from-non-affine-region.ll index 7c71b7dfdf72..f243c3a04949 100644 --- a/polly/test/CodeGen/OpenMP/reference-argument-from-non-affine-region.ll +++ b/polly/test/CodeGen/OpenMP/reference-argument-from-non-affine-region.ll @@ -15,7 +15,7 @@ ; IR: @GOMP_parallel_loop_runtime_start -; LIBOMP-IR: call void (%struct.ident_t*, i32, void (i32*, i32*, ...)*, ...) @__kmpc_fork_call +; LIBOMP-IR: call void (ptr, i32, ptr, ...) @__kmpc_fork_call ; LIBOMP-IR: call void @__kmpc_dispatch_init_{{[4|8]}} target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @@ -35,17 +35,17 @@ for.cond.533.preheader: ; preds = %for.inc.530 for.cond.499.preheader: ; preds = %for.inc.530, %for.cond.463.preheader %indvars.iv140 = phi i64 [ 0, %for.cond.463.preheader ], [ %indvars.iv.next141, %for.inc.530 ] - %arrayidx483 = getelementptr inbounds [9 x [23 x i32]], [9 x [23 x i32]]* @longLimit, i64 0, i64 %indvars.iv140, i64 0 - store i32 undef, i32* %arrayidx483, align 4, !tbaa !1 - %arrayidx487 = getelementptr inbounds [9 x [23 x i32]], [9 x [23 x i32]]* @longLimit, i64 0, i64 %indvars.iv140, i64 0 - %tmp = load i32, i32* %arrayidx487, align 4, !tbaa !1 + %arrayidx483 = getelementptr inbounds [9 x [23 x i32]], ptr @longLimit, i64 0, i64 %indvars.iv140, i64 0 + store i32 undef, ptr %arrayidx483, align 4, !tbaa !1 + %arrayidx487 = getelementptr inbounds [9 x [23 x i32]], ptr @longLimit, i64 0, i64 %indvars.iv140, i64 0 + %tmp = load i32, ptr %arrayidx487, align 4, !tbaa !1 %indvars.iv.next135 = add nuw nsw i64 0, 1 br label %for.body.502 for.body.502: ; preds = %for.inc.527, %for.cond.499.preheader %indvars.iv137 = phi i64 [ 0, %for.cond.499.preheader ], [ %indvars.iv.next138, %for.inc.527 ] - %arrayidx518 = getelementptr inbounds [9 x [14 x i32]], [9 x [14 x i32]]* @shortLimit, i64 0, i64 %indvars.iv140, i64 %indvars.iv137 - %tmp1 = load i32, i32* %arrayidx518, align 4, !tbaa !1 + %arrayidx518 = getelementptr inbounds [9 x [14 x i32]], ptr @shortLimit, i64 0, i64 %indvars.iv140, i64 %indvars.iv137 + %tmp1 = load i32, ptr %arrayidx518, align 4, !tbaa !1 %cmp519 = icmp sgt i32 %tmp1, %down_sample_sblimit br i1 %cmp519, label %if.then.521, label %for.inc.527 diff --git a/polly/test/CodeGen/OpenMP/reference-other-bb.ll b/polly/test/CodeGen/OpenMP/reference-other-bb.ll index b5370d8bf29d..b7abdc23d258 100644 --- a/polly/test/CodeGen/OpenMP/reference-other-bb.ll +++ b/polly/test/CodeGen/OpenMP/reference-other-bb.ll @@ -3,20 +3,19 @@ ; IR: @foo_polly_subfn target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i32 %sendcount, i8* %recvbuf) { +define void @foo(i32 %sendcount, ptr %recvbuf) { entry: br label %sw.bb3 sw.bb3: - %tmp = bitcast i8* %recvbuf to double* %cmp75 = icmp sgt i32 %sendcount, 0 br i1 %cmp75, label %for.body, label %end for.body: %i.16 = phi i32 [ %inc04, %for.body ], [ 0, %sw.bb3 ] %idxprom11 = sext i32 %i.16 to i64 - %arrayidx12 = getelementptr inbounds double, double* %tmp, i64 %idxprom11 - store double 1.0, double* %arrayidx12, align 8 + %arrayidx12 = getelementptr inbounds double, ptr %recvbuf, i64 %idxprom11 + store double 1.0, ptr %arrayidx12, align 8 %inc04 = add nsw i32 %i.16, 1 %cmp7 = icmp slt i32 %inc04, %sendcount br i1 %cmp7, label %for.body, label %end diff --git a/polly/test/CodeGen/OpenMP/reference-preceeding-loop.ll b/polly/test/CodeGen/OpenMP/reference-preceeding-loop.ll index 659b9ad566c4..b88589f39a6f 100644 --- a/polly/test/CodeGen/OpenMP/reference-preceeding-loop.ll +++ b/polly/test/CodeGen/OpenMP/reference-preceeding-loop.ll @@ -33,8 +33,8 @@ for.one: while.body: %indvar = phi i64 [ %sub42, %while.body ], [ %i.1, %for.one ] %sub42 = add nsw i64 %indvar, -1 - %arrayidx44 = getelementptr inbounds [258 x i64], [258 x i64]* @cum_freq, i64 0, i64 %sub42 - store i64 1, i64* %arrayidx44, align 4 + %arrayidx44 = getelementptr inbounds [258 x i64], ptr @cum_freq, i64 0, i64 %sub42 + store i64 1, ptr %arrayidx44, align 4 %cmp40 = icmp sgt i64 %sub42, 0 br i1 %cmp40, label %while.body, label %while.end diff --git a/polly/test/CodeGen/OpenMP/reference_latest.ll b/polly/test/CodeGen/OpenMP/reference_latest.ll index 4622fbf2e0b5..54875c2630f0 100644 --- a/polly/test/CodeGen/OpenMP/reference_latest.ll +++ b/polly/test/CodeGen/OpenMP/reference_latest.ll @@ -6,7 +6,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @reference_latest(float* nocapture readonly %data, i32 %n, i32 %m) { +define void @reference_latest(ptr nocapture readonly %data, i32 %n, i32 %m) { entry: %0 = alloca double, i64 undef, align 16 %conv1 = sext i32 %m to i64 @@ -18,8 +18,7 @@ while.body: for.body: %indvars.iv207 = phi i64 [ %indvars.iv211, %while.body ], [ %indvars.iv.next208, %for.body ] - %arrayidx7 = getelementptr inbounds float, float* %data, i64 0 - %1 = load float, float* %arrayidx7, align 4 + %1 = load float, ptr %data, align 4 %add10 = fadd double undef, undef %indvars.iv.next208 = add nsw i64 %indvars.iv207, 1 %lftr.wideiv = trunc i64 %indvars.iv.next208 to i32 @@ -27,8 +26,8 @@ for.body: br i1 %exitcond210, label %for.end, label %for.body for.end: - %arrayidx12 = getelementptr inbounds double, double* %0, i64 %indvars.iv211 - store double %add10, double* %arrayidx12, align 8 + %arrayidx12 = getelementptr inbounds double, ptr %0, i64 %indvars.iv211 + store double %add10, ptr %arrayidx12, align 8 %indvars.iv.next212 = add nsw i64 %indvars.iv211, -1 %2 = trunc i64 %indvars.iv211 to i32 %tobool = icmp eq i32 %2, 0 @@ -38,7 +37,7 @@ while.end: ret void } -; CHECK-LABEL: define internal void @reference_latest_polly_subfn(i8* %polly.par.userContext) +; CHECK-LABEL: define internal void @reference_latest_polly_subfn(ptr %polly.par.userContext) -; CHECK: %polly.access.polly.subfunc.arg. = getelementptr double, double* %polly.subfunc.arg., i64 %{{[0-9]+}} -; CHECK-NEXT: store double %p_add{{[0-9]*}}, double* %polly.access.polly.subfunc.arg. +; CHECK: %polly.access.polly.subfunc.arg. = getelementptr double, ptr %polly.subfunc.arg., i64 %{{[0-9]+}} +; CHECK-NEXT: store double %p_add{{[0-9]*}}, ptr %polly.access.polly.subfunc.arg. diff --git a/polly/test/CodeGen/OpenMP/single_loop_with_param.ll b/polly/test/CodeGen/OpenMP/single_loop_with_param.ll index 4c3bc0ff1ede..d01b7a2fdcad 100644 --- a/polly/test/CodeGen/OpenMP/single_loop_with_param.ll +++ b/polly/test/CodeGen/OpenMP/single_loop_with_param.ll @@ -26,17 +26,17 @@ ; ; IR-LABEL: polly.start: -; IR-NEXT: store float %alpha, float* %alpha.s2a +; IR-NEXT: store float %alpha, ptr %alpha.s2a ; IR: GOMP_parallel_loop_runtime_start ; LIBOMP-IR-LABEL: polly.start: -; LIBOMP-IR-NEXT: store float %alpha, float* %alpha.s2a +; LIBOMP-IR-NEXT: store float %alpha, ptr %alpha.s2a -; LIBOMP-IR: call void (%struct.ident_t*, i32, void (i32*, i32*, ...)*, ...) @__kmpc_fork_call +; LIBOMP-IR: call void (ptr, i32, ptr, ...) @__kmpc_fork_call ; LIBOMP-IR: call void @__kmpc_dispatch_init_{{[4|8]}} -; LIBOMP-STATIC-IR: call void (%struct.ident_t*, i32, void (i32*, i32*, ...)*, ...) @__kmpc_fork_call +; LIBOMP-STATIC-IR: call void (ptr, i32, ptr, ...) @__kmpc_fork_call ; LIBOMP-STATIC-IR: call void @__kmpc_for_static_init_{{[4|8]}} target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" @@ -49,13 +49,13 @@ entry: for.i: %indvar = phi i64 [ %indvar.next, %for.inc], [ 0, %entry ] - %scevgep = getelementptr [1024 x float], [1024 x float]* @A, i64 0, i64 %indvar + %scevgep = getelementptr [1024 x float], ptr @A, i64 0, i64 %indvar %exitcond = icmp ne i64 %indvar, 1024 br i1 %exitcond, label %S, label %exit S: %alphaplus = fadd float 1.0, %alpha - store float %alphaplus, float* %scevgep + store float %alphaplus, ptr %scevgep br label %for.inc for.inc: diff --git a/polly/test/CodeGen/OpenMP/two-parallel-loops-reference-outer-indvar.ll b/polly/test/CodeGen/OpenMP/two-parallel-loops-reference-outer-indvar.ll index eeb98c00c62c..05c6ed177e9c 100644 --- a/polly/test/CodeGen/OpenMP/two-parallel-loops-reference-outer-indvar.ll +++ b/polly/test/CodeGen/OpenMP/two-parallel-loops-reference-outer-indvar.ll @@ -15,7 +15,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %nj, [512 x double]* %R) { +define void @foo(i64 %nj, ptr %R) { entry: br label %for.cond1.preheader @@ -26,8 +26,8 @@ for.cond1.preheader: for.body35: %j.012 = phi i64 [ %j.0, %for.body35 ], [ %j.010, %for.cond1.preheader ] - %arrayidx39 = getelementptr inbounds [512 x double], [512 x double]* %R, i64 0, i64 %j.012 - store double 0.000000e+00, double* %arrayidx39 + %arrayidx39 = getelementptr inbounds [512 x double], ptr %R, i64 0, i64 %j.012 + store double 0.000000e+00, ptr %arrayidx39 %j.0 = add nsw i64 %j.012, 1 %cmp34 = icmp slt i64 %j.0, %nj br i1 %cmp34, label %for.body35, label %for.inc86 diff --git a/polly/test/CodeGen/PHIInExit.ll b/polly/test/CodeGen/PHIInExit.ll index 84ecaf30feed..eadd6054386b 100644 --- a/polly/test/CodeGen/PHIInExit.ll +++ b/polly/test/CodeGen/PHIInExit.ll @@ -2,25 +2,25 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" %struct..0__pthread_mutex_s = type { i32, i32, i32, i32, i32, i32, %struct.__pthread_list_t } -%struct.__pthread_list_t = type { %struct.__pthread_list_t*, %struct.__pthread_list_t* } +%struct.__pthread_list_t = type { ptr, ptr } %union.pthread_attr_t = type { i64, [12 x i32] } %union.pthread_mutex_t = type { %struct..0__pthread_mutex_s } %union.pthread_mutexattr_t = type { i32 } -@_ZL20__gthrw_pthread_oncePiPFvvE = weak alias i32 (i32*, void ()*), i32 (i32*, void ()*)* @pthread_once ; <i32 (i32*, void ()*)*> [#uses=0] -@_ZL27__gthrw_pthread_getspecificj = weak alias i8* (i32), i8* (i32)* @pthread_getspecific ; <i8* (i32)*> [#uses=0] -@_ZL27__gthrw_pthread_setspecificjPKv = weak alias i32 (i32, i8*), i32 (i32, i8*)* @pthread_setspecific ; <i32 (i32, i8*)*> [#uses=0] -@_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_ = weak alias i32 (i64*, %union.pthread_attr_t*, i8* (i8*)*, i8*), i32 (i64*, %union.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create ; <i32 (i64*, %union.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0] -@_ZL22__gthrw_pthread_cancelm = weak alias i32 (i64), i32 (i64)* @pthread_cancel ; <i32 (i64)*> [#uses=0] -@_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t = weak alias i32 (%union.pthread_mutex_t*), i32 (%union.pthread_mutex_t*)* @pthread_mutex_lock ; <i32 (%union.pthread_mutex_t*)*> [#uses=0] -@_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t = weak alias i32 (%union.pthread_mutex_t*), i32 (%union.pthread_mutex_t*)* @pthread_mutex_trylock ; <i32 (%union.pthread_mutex_t*)*> [#uses=0] -@_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t = weak alias i32 (%union.pthread_mutex_t*), i32 (%union.pthread_mutex_t*)* @pthread_mutex_unlock ; <i32 (%union.pthread_mutex_t*)*> [#uses=0] -@_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t = weak alias i32 (%union.pthread_mutex_t*, %union.pthread_mutexattr_t*), i32 (%union.pthread_mutex_t*, %union.pthread_mutexattr_t*)* @pthread_mutex_init ; <i32 (%union.pthread_mutex_t*, %union.pthread_mutexattr_t*)*> [#uses=0] -@_ZL26__gthrw_pthread_key_createPjPFvPvE = weak alias i32 (i32*, void (i8*)*), i32 (i32*, void (i8*)*)* @pthread_key_create ; <i32 (i32*, void (i8*)*)*> [#uses=0] -@_ZL26__gthrw_pthread_key_deletej = weak alias i32 (i32), i32 (i32)* @pthread_key_delete ; <i32 (i32)*> [#uses=0] -@_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t = weak alias i32 (%union.pthread_mutexattr_t*), i32 (%union.pthread_mutexattr_t*)* @pthread_mutexattr_init ; <i32 (%union.pthread_mutexattr_t*)*> [#uses=0] -@_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti = weak alias i32 (%union.pthread_mutexattr_t*, i32), i32 (%union.pthread_mutexattr_t*, i32)* @pthread_mutexattr_settype ; <i32 (%union.pthread_mutexattr_t*, i32)*> [#uses=0] -@_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t = weak alias i32 (%union.pthread_mutexattr_t*), i32 (%union.pthread_mutexattr_t*)* @pthread_mutexattr_destroy ; <i32 (%union.pthread_mutexattr_t*)*> [#uses=0] +@_ZL20__gthrw_pthread_oncePiPFvvE = weak alias i32 (ptr, ptr), ptr @pthread_once ; <ptr> [#uses=0] +@_ZL27__gthrw_pthread_getspecificj = weak alias ptr (i32), ptr @pthread_getspecific ; <ptr> [#uses=0] +@_ZL27__gthrw_pthread_setspecificjPKv = weak alias i32 (i32, ptr), ptr @pthread_setspecific ; <ptr> [#uses=0] +@_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_ = weak alias i32 (ptr, ptr, ptr, ptr), ptr @pthread_create ; <ptr> [#uses=0] +@_ZL22__gthrw_pthread_cancelm = weak alias i32 (i64), ptr @pthread_cancel ; <ptr> [#uses=0] +@_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t = weak alias i32 (ptr), ptr @pthread_mutex_lock ; <ptr> [#uses=0] +@_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t = weak alias i32 (ptr), ptr @pthread_mutex_trylock ; <ptr> [#uses=0] +@_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t = weak alias i32 (ptr), ptr @pthread_mutex_unlock ; <ptr> [#uses=0] +@_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t = weak alias i32 (ptr, ptr), ptr @pthread_mutex_init ; <ptr> [#uses=0] +@_ZL26__gthrw_pthread_key_createPjPFvPvE = weak alias i32 (ptr, ptr), ptr @pthread_key_create ; <ptr> [#uses=0] +@_ZL26__gthrw_pthread_key_deletej = weak alias i32 (i32), ptr @pthread_key_delete ; <ptr> [#uses=0] +@_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t = weak alias i32 (ptr), ptr @pthread_mutexattr_init ; <ptr> [#uses=0] +@_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti = weak alias i32 (ptr, i32), ptr @pthread_mutexattr_settype ; <ptr> [#uses=0] +@_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t = weak alias i32 (ptr), ptr @pthread_mutexattr_destroy ; <ptr> [#uses=0] define void @_ZL6createP6node_tii3v_tS1_d() { entry: @@ -46,19 +46,19 @@ return: ; preds = %bb5 ret void } -define i32 @pthread_once(i32*, void ()*) { +define i32 @pthread_once(ptr, ptr) { ret i32 0 } -define i8* @pthread_getspecific(i32) { - ret i8* null +define ptr @pthread_getspecific(i32) { + ret ptr null } -define i32 @pthread_setspecific(i32, i8*) { +define i32 @pthread_setspecific(i32, ptr) { ret i32 0 } -define i32 @pthread_create(i64*, %union.pthread_attr_t*, i8* (i8*)*, i8*) { +define i32 @pthread_create(ptr, ptr, ptr, ptr) { ret i32 0 } @@ -66,23 +66,23 @@ define i32 @pthread_cancel(i64) { ret i32 0 } -define i32 @pthread_mutex_lock(%union.pthread_mutex_t*) { +define i32 @pthread_mutex_lock(ptr) { ret i32 0 } -define i32 @pthread_mutex_trylock(%union.pthread_mutex_t*) { +define i32 @pthread_mutex_trylock(ptr) { ret i32 0 } -define i32 @pthread_mutex_unlock(%union.pthread_mutex_t*) { +define i32 @pthread_mutex_unlock(ptr) { ret i32 0 } -define i32 @pthread_mutex_init(%union.pthread_mutex_t*, %union.pthread_mutexattr_t*) { +define i32 @pthread_mutex_init(ptr, ptr) { ret i32 0 } -define i32 @pthread_key_create(i32*, void (i8*)*) { +define i32 @pthread_key_create(ptr, ptr) { ret i32 0 } @@ -90,14 +90,14 @@ define i32 @pthread_key_delete(i32) { ret i32 0 } -define i32 @pthread_mutexattr_init(%union.pthread_mutexattr_t*) { +define i32 @pthread_mutexattr_init(ptr) { ret i32 0 } -define i32 @pthread_mutexattr_settype(%union.pthread_mutexattr_t*, i32) { +define i32 @pthread_mutexattr_settype(ptr, i32) { ret i32 0 } -define i32 @pthread_mutexattr_destroy(%union.pthread_mutexattr_t*) { +define i32 @pthread_mutexattr_destroy(ptr) { ret i32 0 } diff --git a/polly/test/CodeGen/RuntimeDebugBuilder/stmt_tracing.ll b/polly/test/CodeGen/RuntimeDebugBuilder/stmt_tracing.ll index 456b33a0b7eb..822eccc306ef 100644 --- a/polly/test/CodeGen/RuntimeDebugBuilder/stmt_tracing.ll +++ b/polly/test/CodeGen/RuntimeDebugBuilder/stmt_tracing.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-codegen-trace-stmts -polly-codegen-trace-scalars -polly-codegen -S < %s | FileCheck %s ; -define void @func(i32 %n, double* %A) { +define void @func(i32 %n, ptr %A) { entry: br label %for @@ -11,8 +11,8 @@ for: br i1 %j.cmp, label %body, label %exit body: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double 0.0, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double 0.0, ptr %A_idx br label %inc inc: @@ -34,5 +34,5 @@ return: ; CHECK: @4 = private unnamed_addr constant [12 x i8] c"%s%s%ld%s%s\00" ; CHECK: polly.stmt.body: -; CHECK: call i32 (...) @printf(i8* getelementptr inbounds ([12 x i8], [12 x i8]* @4, i32 0, i32 0), i8 addrspace(4)* getelementptr inbounds ([10 x i8], [10 x i8] addrspace(4)* @0, i32 0, i32 0), i8 addrspace(4)* getelementptr inbounds ([2 x i8], [2 x i8] addrspace(4)* @1, i32 0, i32 0), i64 %polly.indvar, i8 addrspace(4)* getelementptr inbounds ([2 x i8], [2 x i8] addrspace(4)* @2, i32 0, i32 0), i8 addrspace(4)* getelementptr inbounds ([2 x i8], [2 x i8] addrspace(4)* @3, i32 0, i32 0)) -; CHECK-NEXT: call i32 @fflush(i8* null) +; CHECK: call i32 (...) @printf(ptr @4, ptr addrspace(4) @0, ptr addrspace(4) @1, i64 %polly.indvar, ptr addrspace(4) @2, ptr addrspace(4) @3) +; CHECK-NEXT: call i32 @fflush(ptr null) diff --git a/polly/test/CodeGen/alias-check-multi-dim.ll b/polly/test/CodeGen/alias-check-multi-dim.ll index 8dddb996aa73..d923a4cc14fd 100644 --- a/polly/test/CodeGen/alias-check-multi-dim.ll +++ b/polly/test/CodeGen/alias-check-multi-dim.ll @@ -4,19 +4,17 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; CHECK: sext i32 %indvar.init to i64 -define void @foo(double* %A, double* %B, i32 %p, i32 %indvar.init) { +define void @foo(ptr %A, ptr %B, i32 %p, i32 %indvar.init) { preheader: br label %for.body for.body: %indvar = phi i32 [ %indvar.next, %for.body ], [ %indvar.init, %preheader ] - %B.ptr0 = getelementptr inbounds double, double* %B, i64 0 - %tmp1 = load double, double* %B.ptr0 - %A.ptr = getelementptr inbounds double, double* %A, i64 0 - store double undef, double* %A.ptr + %tmp1 = load double, ptr %B + store double undef, ptr %A %idxprom1329 = sext i32 %indvar to i64 - %B.ptr1 = getelementptr inbounds double, double* %B, i64 %idxprom1329 - store double 0.000000e+00, double* %B.ptr1 + %B.ptr1 = getelementptr inbounds double, ptr %B, i64 %idxprom1329 + store double 0.000000e+00, ptr %B.ptr1 %indvar.next = add nsw i32 %indvar, %p br i1 false, label %for.body, label %exit diff --git a/polly/test/CodeGen/alias_metadata_too_many_arrays.ll b/polly/test/CodeGen/alias_metadata_too_many_arrays.ll index 89b91ec1e10e..7c5ca012a378 100644 --- a/polly/test/CodeGen/alias_metadata_too_many_arrays.ll +++ b/polly/test/CodeGen/alias_metadata_too_many_arrays.ll @@ -59,7 +59,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @manyarrays(float* %A1, float* %A2, float* %A3, float* %A4, float* %A5, float* %A6, float* %A7, float* %A8, float* %A9) { +define void @manyarrays(ptr %A1, ptr %A2, ptr %A3, ptr %A4, ptr %A5, ptr %A6, ptr %A7, ptr %A8, ptr %A9) { bb: br label %bb1 @@ -70,50 +70,50 @@ bb1: ; preds = %bb38, %bb bb2: ; preds = %bb1 %tmp = sitofp i64 %i.0 to float - %tmp3 = getelementptr inbounds float, float* %A1, i64 %i.0 - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A1, i64 %i.0 + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, %tmp - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 %tmp6 = sitofp i64 %i.0 to float - %tmp7 = getelementptr inbounds float, float* %A2, i64 %i.0 - %tmp8 = load float, float* %tmp7, align 4 + %tmp7 = getelementptr inbounds float, ptr %A2, i64 %i.0 + %tmp8 = load float, ptr %tmp7, align 4 %tmp9 = fadd float %tmp8, %tmp6 - store float %tmp9, float* %tmp7, align 4 + store float %tmp9, ptr %tmp7, align 4 %tmp10 = sitofp i64 %i.0 to float - %tmp11 = getelementptr inbounds float, float* %A3, i64 %i.0 - %tmp12 = load float, float* %tmp11, align 4 + %tmp11 = getelementptr inbounds float, ptr %A3, i64 %i.0 + %tmp12 = load float, ptr %tmp11, align 4 %tmp13 = fadd float %tmp12, %tmp10 - store float %tmp13, float* %tmp11, align 4 + store float %tmp13, ptr %tmp11, align 4 %tmp14 = sitofp i64 %i.0 to float - %tmp15 = getelementptr inbounds float, float* %A4, i64 %i.0 - %tmp16 = load float, float* %tmp15, align 4 + %tmp15 = getelementptr inbounds float, ptr %A4, i64 %i.0 + %tmp16 = load float, ptr %tmp15, align 4 %tmp17 = fadd float %tmp16, %tmp14 - store float %tmp17, float* %tmp15, align 4 + store float %tmp17, ptr %tmp15, align 4 %tmp18 = sitofp i64 %i.0 to float - %tmp19 = getelementptr inbounds float, float* %A5, i64 %i.0 - %tmp20 = load float, float* %tmp19, align 4 + %tmp19 = getelementptr inbounds float, ptr %A5, i64 %i.0 + %tmp20 = load float, ptr %tmp19, align 4 %tmp21 = fadd float %tmp20, %tmp18 - store float %tmp21, float* %tmp19, align 4 + store float %tmp21, ptr %tmp19, align 4 %tmp22 = sitofp i64 %i.0 to float - %tmp23 = getelementptr inbounds float, float* %A6, i64 %i.0 - %tmp24 = load float, float* %tmp23, align 4 + %tmp23 = getelementptr inbounds float, ptr %A6, i64 %i.0 + %tmp24 = load float, ptr %tmp23, align 4 %tmp25 = fadd float %tmp24, %tmp22 - store float %tmp25, float* %tmp23, align 4 + store float %tmp25, ptr %tmp23, align 4 %tmp26 = sitofp i64 %i.0 to float - %tmp27 = getelementptr inbounds float, float* %A7, i64 %i.0 - %tmp28 = load float, float* %tmp27, align 4 + %tmp27 = getelementptr inbounds float, ptr %A7, i64 %i.0 + %tmp28 = load float, ptr %tmp27, align 4 %tmp29 = fadd float %tmp28, %tmp26 - store float %tmp29, float* %tmp27, align 4 + store float %tmp29, ptr %tmp27, align 4 %tmp30 = sitofp i64 %i.0 to float - %tmp31 = getelementptr inbounds float, float* %A8, i64 %i.0 - %tmp32 = load float, float* %tmp31, align 4 + %tmp31 = getelementptr inbounds float, ptr %A8, i64 %i.0 + %tmp32 = load float, ptr %tmp31, align 4 %tmp33 = fadd float %tmp32, %tmp30 - store float %tmp33, float* %tmp31, align 4 + store float %tmp33, ptr %tmp31, align 4 %tmp34 = sitofp i64 %i.0 to float - %tmp35 = getelementptr inbounds float, float* %A9, i64 %i.0 - %tmp36 = load float, float* %tmp35, align 4 + %tmp35 = getelementptr inbounds float, ptr %A9, i64 %i.0 + %tmp36 = load float, ptr %tmp35, align 4 %tmp37 = fadd float %tmp36, %tmp34 - store float %tmp37, float* %tmp35, align 4 + store float %tmp37, ptr %tmp35, align 4 br label %bb38 bb38: ; preds = %bb2 @@ -124,7 +124,7 @@ bb40: ; preds = %bb1 ret void } -define void @toomanyarrays(float* %A1, float* %A2, float* %A3, float* %A4, float* %A5, float* %A6, float* %A7, float* %A8, float* %A9, float* %A10, float* %A11) { +define void @toomanyarrays(ptr %A1, ptr %A2, ptr %A3, ptr %A4, ptr %A5, ptr %A6, ptr %A7, ptr %A8, ptr %A9, ptr %A10, ptr %A11) { bb: br label %bb1 @@ -135,60 +135,60 @@ bb1: ; preds = %bb46, %bb bb2: ; preds = %bb1 %tmp = sitofp i64 %i.0 to float - %tmp3 = getelementptr inbounds float, float* %A1, i64 %i.0 - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A1, i64 %i.0 + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, %tmp - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 %tmp6 = sitofp i64 %i.0 to float - %tmp7 = getelementptr inbounds float, float* %A2, i64 %i.0 - %tmp8 = load float, float* %tmp7, align 4 + %tmp7 = getelementptr inbounds float, ptr %A2, i64 %i.0 + %tmp8 = load float, ptr %tmp7, align 4 %tmp9 = fadd float %tmp8, %tmp6 - store float %tmp9, float* %tmp7, align 4 + store float %tmp9, ptr %tmp7, align 4 %tmp10 = sitofp i64 %i.0 to float - %tmp11 = getelementptr inbounds float, float* %A3, i64 %i.0 - %tmp12 = load float, float* %tmp11, align 4 + %tmp11 = getelementptr inbounds float, ptr %A3, i64 %i.0 + %tmp12 = load float, ptr %tmp11, align 4 %tmp13 = fadd float %tmp12, %tmp10 - store float %tmp13, float* %tmp11, align 4 + store float %tmp13, ptr %tmp11, align 4 %tmp14 = sitofp i64 %i.0 to float - %tmp15 = getelementptr inbounds float, float* %A4, i64 %i.0 - %tmp16 = load float, float* %tmp15, align 4 + %tmp15 = getelementptr inbounds float, ptr %A4, i64 %i.0 + %tmp16 = load float, ptr %tmp15, align 4 %tmp17 = fadd float %tmp16, %tmp14 - store float %tmp17, float* %tmp15, align 4 + store float %tmp17, ptr %tmp15, align 4 %tmp18 = sitofp i64 %i.0 to float - %tmp19 = getelementptr inbounds float, float* %A5, i64 %i.0 - %tmp20 = load float, float* %tmp19, align 4 + %tmp19 = getelementptr inbounds float, ptr %A5, i64 %i.0 + %tmp20 = load float, ptr %tmp19, align 4 %tmp21 = fadd float %tmp20, %tmp18 - store float %tmp21, float* %tmp19, align 4 + store float %tmp21, ptr %tmp19, align 4 %tmp22 = sitofp i64 %i.0 to float - %tmp23 = getelementptr inbounds float, float* %A6, i64 %i.0 - %tmp24 = load float, float* %tmp23, align 4 + %tmp23 = getelementptr inbounds float, ptr %A6, i64 %i.0 + %tmp24 = load float, ptr %tmp23, align 4 %tmp25 = fadd float %tmp24, %tmp22 - store float %tmp25, float* %tmp23, align 4 + store float %tmp25, ptr %tmp23, align 4 %tmp26 = sitofp i64 %i.0 to float - %tmp27 = getelementptr inbounds float, float* %A7, i64 %i.0 - %tmp28 = load float, float* %tmp27, align 4 + %tmp27 = getelementptr inbounds float, ptr %A7, i64 %i.0 + %tmp28 = load float, ptr %tmp27, align 4 %tmp29 = fadd float %tmp28, %tmp26 - store float %tmp29, float* %tmp27, align 4 + store float %tmp29, ptr %tmp27, align 4 %tmp30 = sitofp i64 %i.0 to float - %tmp31 = getelementptr inbounds float, float* %A8, i64 %i.0 - %tmp32 = load float, float* %tmp31, align 4 + %tmp31 = getelementptr inbounds float, ptr %A8, i64 %i.0 + %tmp32 = load float, ptr %tmp31, align 4 %tmp33 = fadd float %tmp32, %tmp30 - store float %tmp33, float* %tmp31, align 4 + store float %tmp33, ptr %tmp31, align 4 %tmp34 = sitofp i64 %i.0 to float - %tmp35 = getelementptr inbounds float, float* %A9, i64 %i.0 - %tmp36 = load float, float* %tmp35, align 4 + %tmp35 = getelementptr inbounds float, ptr %A9, i64 %i.0 + %tmp36 = load float, ptr %tmp35, align 4 %tmp37 = fadd float %tmp36, %tmp34 - store float %tmp37, float* %tmp35, align 4 + store float %tmp37, ptr %tmp35, align 4 %tmp38 = sitofp i64 %i.0 to float - %tmp39 = getelementptr inbounds float, float* %A10, i64 %i.0 - %tmp40 = load float, float* %tmp39, align 4 + %tmp39 = getelementptr inbounds float, ptr %A10, i64 %i.0 + %tmp40 = load float, ptr %tmp39, align 4 %tmp41 = fadd float %tmp40, %tmp38 - store float %tmp41, float* %tmp39, align 4 + store float %tmp41, ptr %tmp39, align 4 %tmp42 = sitofp i64 %i.0 to float - %tmp43 = getelementptr inbounds float, float* %A11, i64 %i.0 - %tmp44 = load float, float* %tmp43, align 4 + %tmp43 = getelementptr inbounds float, ptr %A11, i64 %i.0 + %tmp44 = load float, ptr %tmp43, align 4 %tmp45 = fadd float %tmp44, %tmp42 - store float %tmp45, float* %tmp43, align 4 + store float %tmp45, ptr %tmp43, align 4 br label %bb46 bb46: ; preds = %bb2 diff --git a/polly/test/CodeGen/aliasing_multidimensional_access.ll b/polly/test/CodeGen/aliasing_multidimensional_access.ll index 9048c7588f47..48768399e850 100644 --- a/polly/test/CodeGen/aliasing_multidimensional_access.ll +++ b/polly/test/CodeGen/aliasing_multidimensional_access.ll @@ -18,7 +18,7 @@ ; CHECK: %[[TMP3O:[._0-9a-zA-Z]*]] = extractvalue { i64, i1 } %[[TMP3]], 1 ; CHECK: %[[OS3:[._0-9a-zA-Z]*]] = or i1 %[[OS2]], %[[TMP3O]] ; CHECK: %[[TMP3R:[._0-9a-zA-Z]*]] = extractvalue { i64, i1 } %[[TMP3]], 0 -; CHECK: %polly.access.A{{[0-9]*}} = getelementptr double, double* %A, i64 %[[TMP3R]] +; CHECK: %polly.access.A{{[0-9]*}} = getelementptr double, ptr %A, i64 %[[TMP3R]] ; ; CHECK: %polly.rtc.overflown = xor i1 %[[OS3]], true ; CHECK: %polly.rtc.result = and i1 %{{[^,]*}}, %polly.rtc.overflown @@ -33,7 +33,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %n, i64 %m, i64 %p, double* %A, i32* %B) { +define void @foo(i64 %n, i64 %m, i64 %p, ptr %A, ptr %B) { entry: br label %for.cond @@ -59,16 +59,16 @@ for.cond4: ; preds = %for.inc, %for.body3 br i1 %exitcond, label %for.body6, label %for.end for.body6: ; preds = %for.cond4 - %arrayidx = getelementptr inbounds i32, i32* %B, i64 %k.0 - %tmp3 = load i32, i32* %arrayidx, align 2 + %arrayidx = getelementptr inbounds i32, ptr %B, i64 %k.0 + %tmp3 = load i32, ptr %arrayidx, align 2 %conv = sitofp i32 %tmp3 to double %tmp4 = mul nuw i64 %m, %p %tmp5 = mul nsw i64 %i.0, %tmp4 %tmp6 = mul nsw i64 %j.0, %p %arrayidx7.sum = add i64 %tmp5, %tmp6 %arrayidx8.sum = add i64 %arrayidx7.sum, %k.0 - %arrayidx9 = getelementptr inbounds double, double* %A, i64 %arrayidx8.sum - store double %conv, double* %arrayidx9, align 8 + %arrayidx9 = getelementptr inbounds double, ptr %A, i64 %arrayidx8.sum + store double %conv, ptr %arrayidx9, align 8 br label %for.inc for.inc: ; preds = %for.body6 diff --git a/polly/test/CodeGen/aliasing_struct_element.ll b/polly/test/CodeGen/aliasing_struct_element.ll index ceec5ee8796d..2219ca9d28bb 100644 --- a/polly/test/CodeGen/aliasing_struct_element.ll +++ b/polly/test/CodeGen/aliasing_struct_element.ll @@ -10,8 +10,7 @@ ; Verify that we do not use the offset 1423 into a non existent S array when we ; compute runtime alias checks but treat it as if it was a char array. ; -; CHECK: %polly.access.cast.S = bitcast %struct.st* %S to i8* -; CHECK: %polly.access.S = getelementptr i8, i8* %polly.access.cast.S, i64 1424 +; CHECK: %polly.access.S = getelementptr i8, ptr %S, i64 1424 ; ; struct st { ; int Dummy[100]; @@ -27,7 +26,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" %struct.st = type { [100 x i32], [100 x i8] } -define void @jd(i32* %A, %struct.st* %S) { +define void @jd(ptr %A, ptr %S) { entry: br label %for.cond @@ -37,11 +36,11 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds %struct.st, %struct.st* %S, i64 0, i32 1, i64 %indvars.iv - %tmp = load i8, i8* %arrayidx, align 1 + %arrayidx = getelementptr inbounds %struct.st, ptr %S, i64 0, i32 1, i64 %indvars.iv + %tmp = load i8, ptr %arrayidx, align 1 %conv = sext i8 %tmp to i32 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %conv, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %conv, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/CodeGen/alignment.ll b/polly/test/CodeGen/alignment.ll index 5a54fffe06bc..a94b1f7e2883 100644 --- a/polly/test/CodeGen/alignment.ll +++ b/polly/test/CodeGen/alignment.ll @@ -12,7 +12,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A) { +define void @jd(ptr %A) { entry: br label %for.cond @@ -22,9 +22,9 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv %tmp = trunc i64 %indvars.iv to i32 - store i32 %tmp, i32* %arrayidx, align 8 + store i32 %tmp, ptr %arrayidx, align 8 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/CodeGen/blas_sscal_simplified.ll b/polly/test/CodeGen/blas_sscal_simplified.ll index 6ad954bbb586..a370fcff46f8 100644 --- a/polly/test/CodeGen/blas_sscal_simplified.ll +++ b/polly/test/CodeGen/blas_sscal_simplified.ll @@ -14,7 +14,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define i32 @sscal(i32 %n, float %sa, float* %sx) { +define i32 @sscal(i32 %n, float %sa, ptr %sx) { entry: br label %entry.split @@ -28,10 +28,10 @@ for.body.lr.ph: ; preds = %entry.split for.body: ; preds = %for.body.lr.ph, %for.body %indvar = phi i64 [ 0, %for.body.lr.ph ], [ %indvar.next, %for.body ] - %sx.addr.02 = getelementptr float, float* %sx, i64 %indvar - %tmp = load float, float* %sx.addr.02, align 4 + %sx.addr.02 = getelementptr float, ptr %sx, i64 %indvar + %tmp = load float, ptr %sx.addr.02, align 4 %mul = fmul float %tmp, %sa - store float %mul, float* %sx.addr.02, align 4 + store float %mul, ptr %sx.addr.02, align 4 %indvar.next = add i64 %indvar, 1 %exitcond = icmp ne i64 %indvar.next, %0 br i1 %exitcond, label %for.body, label %for.cond.for.end_crit_edge diff --git a/polly/test/CodeGen/conflict-between-loop-invariant-code-hosting-and-escape-map-computation.ll b/polly/test/CodeGen/conflict-between-loop-invariant-code-hosting-and-escape-map-computation.ll index 85dbbdd82cbc..e0f8c435879a 100644 --- a/polly/test/CodeGen/conflict-between-loop-invariant-code-hosting-and-escape-map-computation.ll +++ b/polly/test/CodeGen/conflict-between-loop-invariant-code-hosting-and-escape-map-computation.ll @@ -1,14 +1,14 @@ ; RUN: opt %loadPolly -polly-process-unprofitable -polly-codegen -disable-output < %s ; -; CHECK: store i32 %tmp14_p_scalar_, i32* %tmp14.s2a -; CHECK: %tmp14.final_reload = load i32, i32* %tmp14.s2a -; CHECK: %tmp17b.final_reload = load i32, i32* %tmp17b.preload.s2a -; CHECK: %tmp17.final_reload = load i32, i32* %tmp17.preload.s2a +; CHECK: store i32 %tmp14_p_scalar_, ptr %tmp14.s2a +; CHECK: %tmp14.final_reload = load i32, ptr %tmp14.s2a +; CHECK: %tmp17b.final_reload = load i32, ptr %tmp17b.preload.s2a +; CHECK: %tmp17.final_reload = load i32, ptr %tmp17.preload.s2a ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @hoge(i8* %arg, i32 %arg4) #0 { +define void @hoge(ptr %arg, i32 %arg4) #0 { bb: br label %bb5 @@ -16,9 +16,8 @@ bb5: ; preds = %bb br i1 undef, label %bb6, label %bb18 bb6: ; preds = %bb5 - %tmp7 = getelementptr i8, i8* %arg, i64 0 - %tmp8 = getelementptr inbounds i8, i8* %tmp7, i64 4 - %tmp9 = getelementptr inbounds i8, i8* %tmp8, i64 20 + %tmp8 = getelementptr inbounds i8, ptr %arg, i64 4 + %tmp9 = getelementptr inbounds i8, ptr %tmp8, i64 20 br label %bb10 bb10: ; preds = %bb10, %bb6 @@ -27,16 +26,13 @@ bb10: ; preds = %bb10, %bb6 br i1 false, label %bb10, label %bb13 bb13: ; preds = %bb10 - %tmp = bitcast i8* %tmp9 to i32* - %tmp14 = load i32, i32* %tmp, align 4 - %tmp15 = getelementptr inbounds i8, i8* %tmp9, i64 4 - %tmp16 = bitcast i8* %tmp15 to i32* - %tmp17 = load i32, i32* %tmp16, align 4 - store i32 %tmp17, i32* %tmp, align 4 - %tmp15b = getelementptr inbounds i8, i8* %tmp9, i64 8 - %tmp16b = bitcast i8* %tmp15b to i32* - %tmp17b = load i32, i32* %tmp16b, align 4 - store i32 %tmp17b, i32* %tmp, align 4 + %tmp14 = load i32, ptr %tmp9, align 4 + %tmp15 = getelementptr inbounds i8, ptr %tmp9, i64 4 + %tmp17 = load i32, ptr %tmp15, align 4 + store i32 %tmp17, ptr %tmp9, align 4 + %tmp15b = getelementptr inbounds i8, ptr %tmp9, i64 8 + %tmp17b = load i32, ptr %tmp15b, align 4 + store i32 %tmp17b, ptr %tmp9, align 4 br label %bb19 bb18: ; preds = %bb5 diff --git a/polly/test/CodeGen/constant_condition.ll b/polly/test/CodeGen/constant_condition.ll index 1f61556d9de3..dad1f6cffd17 100644 --- a/polly/test/CodeGen/constant_condition.ll +++ b/polly/test/CodeGen/constant_condition.ll @@ -24,7 +24,7 @@ ;} target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -@A = common global [1 x i32] zeroinitializer, align 4 ; <[1 x i32]*> [#uses=1] +@A = common global [1 x i32] zeroinitializer, align 4 ; <ptr> [#uses=1] define void @constant_condition() nounwind { bb: @@ -32,11 +32,11 @@ bb: br i1 true, label %bb1, label %bb2 bb1: ; preds = %bb - store i32 0, i32* getelementptr inbounds ([1 x i32], [1 x i32]* @A, i32 0, i32 0) + store i32 0, ptr @A br label %bb3 bb2: ; preds = %bb - store i32 1, i32* getelementptr inbounds ([1 x i32], [1 x i32]* @A, i32 0, i32 0) + store i32 1, ptr @A br label %bb3 bb3: ; preds = %bb2, %bb1 @@ -45,9 +45,9 @@ bb3: ; preds = %bb2, %bb1 define i32 @main() nounwind { bb: - store i32 2, i32* getelementptr inbounds ([1 x i32], [1 x i32]* @A, i32 0, i32 0) + store i32 2, ptr @A call void @constant_condition() - %tmp = load i32, i32* getelementptr inbounds ([1 x i32], [1 x i32]* @A, i32 0, i32 0) ; <i32> [#uses=1] + %tmp = load i32, ptr @A ; <i32> [#uses=1] ret i32 %tmp } diff --git a/polly/test/CodeGen/create-conditional-scop.ll b/polly/test/CodeGen/create-conditional-scop.ll index df5847773145..f51a2dcc9b3c 100644 --- a/polly/test/CodeGen/create-conditional-scop.ll +++ b/polly/test/CodeGen/create-conditional-scop.ll @@ -18,8 +18,8 @@ for.body7.single_entry.single_entry: ; preds = %for.inc02, %entry while.body: ; preds = %while.body, %for.body7.single_entry.single_entry %indvar35 = phi i32 [ %0, %while.body ], [ 0, %for.body7.single_entry.single_entry ] - %ptr = getelementptr [1536 x float], [1536 x float]* @A, i64 0, i32 %indvar35 - store float undef, float* %ptr + %ptr = getelementptr [1536 x float], ptr @A, i64 0, i32 %indvar35 + store float undef, ptr %ptr %0 = add i32 %indvar35, 1 %exitcond2 = icmp eq i32 %0, 42 br i1 %exitcond2, label %for.inc02, label %while.body diff --git a/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_1.ll b/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_1.ll index aae85da9b381..991e3c83eef1 100644 --- a/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_1.ll +++ b/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_1.ll @@ -5,24 +5,24 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.hoge = type { %struct.widget*, i32, i32, i32, %struct.hoge*, %struct.hoge*, %struct.barney, %struct.ham, %struct.wombat } -%struct.widget = type { i32, i32, i32, i32, %struct.quux* } -%struct.quux = type { i8*, i32, i32, i32, %struct.hoge.0 } +%struct.hoge = type { ptr, i32, i32, i32, ptr, ptr, %struct.barney, %struct.ham, %struct.wombat } +%struct.widget = type { i32, i32, i32, i32, ptr } +%struct.quux = type { ptr, i32, i32, i32, %struct.hoge.0 } %struct.hoge.0 = type { [2 x i64] } -%struct.barney = type { %struct.hoge* } +%struct.barney = type { ptr } %struct.ham = type { i32 } -%struct.wombat = type { %struct.hoge** } -%struct.foo = type { %struct.wibble*, %struct.wibble*, i32, i32, i32, %struct.hoge.2, %struct.blam, %struct.wombat.5, i16, i8*, i8*, i16, i8*, i16, i16*, i16, %struct.blam.6**, i16, %struct.foo.7**, i8*, i16, i8**, i8* } -%struct.wibble = type { i32, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, %struct.foo.1*, %struct.wibble*, i32, i32, i64, i16, i8, [1 x i8], i8*, i64, i8*, i8*, i8*, i8*, i64, i32, [20 x i8] } -%struct.foo.1 = type { %struct.foo.1*, %struct.wibble*, i32 } +%struct.wombat = type { ptr } +%struct.foo = type { ptr, ptr, i32, i32, i32, %struct.hoge.2, %struct.blam, %struct.wombat.5, i16, ptr, ptr, i16, ptr, i16, ptr, i16, ptr, i16, ptr, ptr, i16, ptr, ptr } +%struct.wibble = type { i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i64, i16, i8, [1 x i8], ptr, i64, ptr, ptr, ptr, ptr, i64, i32, [20 x i8] } +%struct.foo.1 = type { ptr, ptr, i32 } %struct.hoge.2 = type { i16, i16 } -%struct.blam = type { i16, %struct.barney.3* } +%struct.blam = type { i16, ptr } %struct.barney.3 = type { i8, %struct.foo.4 } %struct.foo.4 = type { i64 } %struct.wombat.5 = type { i16 } -%struct.blam.6 = type <{ %struct.wombat.5, [6 x i8], i8*, i8*, i32, i16, [2 x i8] }> -%struct.foo.7 = type { %struct.wombat.5, i8*, i8*, i8, i8, i32, i8*, i16, %struct.bar*, i16, %struct.barney.9*, i16, %struct.hoge.10*, i8**, i8**, i32*, i32*, i8*, i32, i32, i32* } -%struct.bar = type { i32, i16, i16, %struct.wibble.8, i16, %struct.hoge* } +%struct.blam.6 = type <{ %struct.wombat.5, [6 x i8], ptr, ptr, i32, i16, [2 x i8] }> +%struct.foo.7 = type { %struct.wombat.5, ptr, ptr, i8, i8, i32, ptr, i16, ptr, i16, ptr, i16, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, ptr } +%struct.bar = type { i32, i16, i16, %struct.wibble.8, i16, ptr } %struct.wibble.8 = type { i32 } %struct.barney.9 = type { i16, i16 } %struct.hoge.10 = type { i16, i16, i16, i16, i16 } @@ -30,17 +30,17 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @global = external global i32, align 4 @global1 = external global i32, align 4 -@global2 = external global i8*, align 8 -@global3 = external global %struct.hoge**, align 8 -@global4 = external global %struct.hoge**, align 8 +@global2 = external global ptr, align 8 +@global3 = external global ptr, align 8 +@global4 = external global ptr, align 8 ; Function Attrs: uwtable -define i32 @foo(%struct.foo* %arg) #0 personality i8* bitcast (i32 (...)* @blam to i8*) { +define i32 @foo(ptr %arg) #0 personality ptr @blam { bb: br label %bb3 bb3: ; preds = %bb - %tmp = load i32, i32* @global, align 4, !tbaa !1 + %tmp = load i32, ptr @global, align 4, !tbaa !1 %tmp4 = add i32 %tmp, -1 %tmp5 = icmp eq i32 0, 0 br i1 %tmp5, label %bb12, label %bb6 @@ -49,7 +49,7 @@ bb6: ; preds = %bb3 br label %bb7 bb7: ; preds = %bb7, %bb6 - %tmp8 = load i32, i32* @global, align 4, !tbaa !1 + %tmp8 = load i32, ptr @global, align 4, !tbaa !1 %tmp9 = and i32 %tmp8, 3 %tmp10 = icmp eq i32 %tmp9, 0 br i1 %tmp10, label %bb11, label %bb7 @@ -58,7 +58,7 @@ bb11: ; preds = %bb7 br label %bb12 bb12: ; preds = %bb11, %bb3 - invoke void @zot(%struct.hoge* nonnull undef, i32 %tmp4, i32 undef, i32 9, i32 0, i32 39, %struct.hoge* undef, i32 undef, i32 undef, %struct.bar.11* nonnull undef) + invoke void @zot(ptr nonnull undef, i32 %tmp4, i32 undef, i32 9, i32 0, i32 39, ptr undef, i32 undef, i32 undef, ptr nonnull undef) to label %bb13 unwind label %bb17 bb13: ; preds = %bb12 @@ -74,42 +74,42 @@ bb16: ; preds = %bb15, %bb13 ret i32 0 bb17: ; preds = %bb12 - %tmp18 = landingpad { i8*, i32 } + %tmp18 = landingpad { ptr, i32 } cleanup - resume { i8*, i32 } %tmp18 + resume { ptr, i32 } %tmp18 bb19: ; preds = %bb19, %bb14 br i1 undef, label %bb15, label %bb19 } ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.start(i64, i8* nocapture) #1 +declare void @llvm.lifetime.start(i64, ptr nocapture) #1 ; Function Attrs: nounwind readnone declare { i64, i1 } @llvm.umul.with.overflow.i64(i64, i64) #2 ; Function Attrs: nobuiltin -declare noalias i8* @eggs(i64) #3 +declare noalias ptr @eggs(i64) #3 ; Function Attrs: nobuiltin -declare noalias i8* @bar(i64) #3 +declare noalias ptr @bar(i64) #3 ; Function Attrs: uwtable -declare void @zot(%struct.hoge*, i32, i32, i32, i32, i32, %struct.hoge*, i32, i32, %struct.bar.11*) unnamed_addr #0 align 2 +declare void @zot(ptr, i32, i32, i32, i32, i32, ptr, i32, i32, ptr) unnamed_addr #0 align 2 declare i32 @blam(...) ; Function Attrs: nobuiltin nounwind -declare void @zot5(i8*) #4 +declare void @zot5(ptr) #4 ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.end(i64, i8* nocapture) #1 +declare void @llvm.lifetime.end(i64, ptr nocapture) #1 ; Function Attrs: uwtable -declare i32 @eggs6(%struct.foo*) #0 +declare i32 @eggs6(ptr) #0 ; Function Attrs: nounwind uwtable -declare void @eggs7(%struct.widget*, i32, i32, i32) unnamed_addr #5 align 2 +declare void @eggs7(ptr, i32, i32, i32) unnamed_addr #5 align 2 attributes #0 = { uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" } attributes #1 = { argmemonly nounwind } diff --git a/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_2.ll b/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_2.ll index ec78edecb372..153f6912cea5 100644 --- a/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_2.ll +++ b/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_2.ll @@ -14,23 +14,23 @@ entry: br label %entry.split entry.split: ; preds = %entry - %0 = load i32, i32* getelementptr inbounds ([10 x i32], [10 x i32]* @REGISTER, i64 0, i64 8), align 16 + %0 = load i32, ptr getelementptr inbounds ([10 x i32], ptr @REGISTER, i64 0, i64 8), align 16 %add = add nsw i32 %0, 2 %cmp = icmp sgt i32 %add, 1048575 br i1 %cmp, label %if.end.36, label %if.else if.else: ; preds = %entry.split - call void (i32, i32, i32*, ...) bitcast (void (...)* @BYTES_TO_BITS to void (i32, i32, i32*, ...)*)(i32 undef, i32 1, i32* undef) #2 - %1 = load i32, i32* undef, align 4 + call void (i32, i32, ptr, ...) @BYTES_TO_BITS(i32 undef, i32 1, ptr undef) #2 + %1 = load i32, ptr undef, align 4 %cmp14 = icmp eq i32 %1, 1 br i1 %cmp14, label %land.lhs.true, label %if.end.36 land.lhs.true: ; preds = %if.else - %arrayidx16 = getelementptr inbounds [32 x i32], [32 x i32]* %INSTR, i64 0, i64 6 + %arrayidx16 = getelementptr inbounds [32 x i32], ptr %INSTR, i64 0, i64 6 br i1 false, label %land.lhs.true.19, label %if.then.23 land.lhs.true.19: ; preds = %land.lhs.true - %arrayidx20 = getelementptr inbounds [32 x i32], [32 x i32]* %INSTR, i64 0, i64 7 + %arrayidx20 = getelementptr inbounds [32 x i32], ptr %INSTR, i64 0, i64 7 br i1 false, label %if.end.36, label %if.then.23 if.then.23: ; preds = %land.lhs.true.19, %land.lhs.true diff --git a/polly/test/CodeGen/debug-intrinsics.ll b/polly/test/CodeGen/debug-intrinsics.ll index 1f194a6c0516..2feeb7c838b0 100644 --- a/polly/test/CodeGen/debug-intrinsics.ll +++ b/polly/test/CodeGen/debug-intrinsics.ll @@ -9,12 +9,12 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @foo(float* %A, i64 %N) #0 !dbg !4 { +define void @foo(ptr %A, i64 %N) #0 !dbg !4 { entry: br label %entry.split entry.split: ; preds = %entry - tail call void @llvm.dbg.value(metadata float* %A, metadata !14, metadata !DIExpression()), !dbg !15 + tail call void @llvm.dbg.value(metadata ptr %A, metadata !14, metadata !DIExpression()), !dbg !15 tail call void @llvm.dbg.value(metadata i64 %N, metadata !16, metadata !DIExpression()), !dbg !15 tail call void @llvm.dbg.value(metadata i64 0, metadata !18, metadata !DIExpression()), !dbg !20 %cmp1 = icmp sgt i64 %N, 0, !dbg !20 @@ -25,9 +25,9 @@ for.body.lr.ph: ; preds = %entry.split for.body: ; preds = %for.body.lr.ph, %for.body %0 = phi i64 [ 0, %for.body.lr.ph ], [ %1, %for.body ], !dbg !21 - %arrayidx = getelementptr float, float* %A, i64 %0, !dbg !21 + %arrayidx = getelementptr float, ptr %A, i64 %0, !dbg !21 %conv = sitofp i64 %0 to float, !dbg !21 - store float %conv, float* %arrayidx, align 4, !dbg !21 + store float %conv, ptr %arrayidx, align 4, !dbg !21 %1 = add nsw i64 %0, 1, !dbg !20 tail call void @llvm.dbg.value(metadata i64 %1, metadata !18, metadata !DIExpression()), !dbg !20 %exitcond = icmp ne i64 %1, %N, !dbg !20 diff --git a/polly/test/CodeGen/dominance_problem_after_early_codegen_bailout.ll b/polly/test/CodeGen/dominance_problem_after_early_codegen_bailout.ll index ff9b87b11755..c9e006a01204 100644 --- a/polly/test/CodeGen/dominance_problem_after_early_codegen_bailout.ll +++ b/polly/test/CodeGen/dominance_problem_after_early_codegen_bailout.ll @@ -10,19 +10,19 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @hashheader = external global %struct.hashheader.0.5.10.165.180.185, align 4 ; Function Attrs: nounwind uwtable -define void @strtoichar(i8* %in) #0 { +define void @strtoichar(ptr %in) #0 { entry: br i1 undef, label %land.rhs, label %for.end land.rhs: ; preds = %for.inc, %entry - %in.addr.012 = phi i8* [ undef, %for.inc ], [ %in, %entry ] - %0 = load i8, i8* %in.addr.012, align 1 + %in.addr.012 = phi ptr [ undef, %for.inc ], [ %in, %entry ] + %0 = load i8, ptr %in.addr.012, align 1 br i1 undef, label %for.end, label %for.body for.body: ; preds = %land.rhs %idxprom = zext i8 %0 to i64 - %arrayidx = getelementptr inbounds %struct.hashheader.0.5.10.165.180.185, %struct.hashheader.0.5.10.165.180.185* @hashheader, i64 0, i32 27, i64 %idxprom - %1 = load i8, i8* %arrayidx, align 1 + %arrayidx = getelementptr inbounds %struct.hashheader.0.5.10.165.180.185, ptr @hashheader, i64 0, i32 27, i64 %idxprom + %1 = load i8, ptr %arrayidx, align 1 %tobool = icmp eq i8 %1, 0 br i1 %tobool, label %if.else, label %land.rhs.7 @@ -34,7 +34,7 @@ if.then: ; preds = %land.rhs.7 br label %for.inc if.else: ; preds = %land.rhs.7, %for.body - %2 = load i8, i8* %in.addr.012, align 1 + %2 = load i8, ptr %in.addr.012, align 1 br label %for.inc for.inc: ; preds = %if.else, %if.then diff --git a/polly/test/CodeGen/empty_domain_in_context.ll b/polly/test/CodeGen/empty_domain_in_context.ll index c4d250a0fcb9..c67ace9502e1 100644 --- a/polly/test/CodeGen/empty_domain_in_context.ll +++ b/polly/test/CodeGen/empty_domain_in_context.ll @@ -13,7 +13,7 @@ target datalayout = "e-m:w-i64:64-f80:128-n8:16:32:64-S128" define void @fn1() { entry: - %a.promoted = load i16, i16* @a + %a.promoted = load i16, ptr @a br label %for.cond for.cond: ; preds = %for.cond3.for.end_crit_edge, %entry @@ -32,7 +32,7 @@ if.end: ; preds = %for.body br label %for.body5.lr.ph for.body5.lr.ph: ; preds = %if.end - %tmp = load i8, i8* @b, align 1 + %tmp = load i8, ptr @b, align 1 %cmp = icmp eq i32 %div, 1 br i1 %cmp, label %for.body5.lr.ph.split.us, label %for.body5.lr.ph.split @@ -70,7 +70,7 @@ lor.end: ; preds = %lor.end, %for.body5 for.cond3.for.end_crit_edge: ; preds = %lor.end, %lor.end.peel, %lor.end.us, %lor.end.us.peel %tmp3 = phi i8 [ %tmp, %lor.end.us.peel ], [ %tmp, %lor.end.peel ], [ %tmp, %lor.end.us ], [ %tmp, %lor.end ] - store i8 4, i8* @c + store i8 4, ptr @c br label %for.cond } @@ -81,6 +81,6 @@ for.cond3.for.end_crit_edge: ; preds = %lor.end, %lor.end.p ; It is not important since this code will never be executed. ; CHECK: polly.stmt.lor.end.us.peel: -; CHECK-NEXT: %tmp_p_scalar_2 = load i8, i8* @b -; CHECK-NEXT: store i8 %tmp_p_scalar_2, i8* %tmp3.phiops +; CHECK-NEXT: %tmp_p_scalar_2 = load i8, ptr @b +; CHECK-NEXT: store i8 %tmp_p_scalar_2, ptr %tmp3.phiops ; CHECK-NEXT: br label %polly.merge diff --git a/polly/test/CodeGen/entry_with_trivial_phi.ll b/polly/test/CodeGen/entry_with_trivial_phi.ll index 4398d1513efd..b057690ab29b 100644 --- a/polly/test/CodeGen/entry_with_trivial_phi.ll +++ b/polly/test/CodeGen/entry_with_trivial_phi.ll @@ -6,19 +6,19 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @test(i64 %n, float* noalias nonnull %A, float %a) { +define void @test(i64 %n, ptr noalias nonnull %A, float %a) { entry: br label %entry.split ; CHECK-LABEL: %polly.split_new_and_old -; CHECK-NEXT: store float %a, float* %b.phiops +; CHECK-NEXT: store float %a, ptr %b.phiops ; CHECK-LABEL: polly.stmt.entry.split -; CHECK-NEXT: %b.phiops.reload = load float, float* %b.phiops +; CHECK-NEXT: %b.phiops.reload = load float, ptr %b.phiops entry.split: %b = phi float [ %a, %entry ] - store float %b, float* %A, align 4 + store float %b, ptr %A, align 4 %cmp2 = icmp slt i64 %n, 5 br i1 %cmp2, label %for.cond, label %for.end @@ -28,8 +28,8 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0 - store float %a, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0 + store float %a, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/CodeGen/entry_with_trivial_phi_other_bb.ll b/polly/test/CodeGen/entry_with_trivial_phi_other_bb.ll index 6d83a0a5b58d..5673cc746b5f 100644 --- a/polly/test/CodeGen/entry_with_trivial_phi_other_bb.ll +++ b/polly/test/CodeGen/entry_with_trivial_phi_other_bb.ll @@ -7,12 +7,12 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @test(i64 %n, float* noalias nonnull %A, float %a) { +define void @test(i64 %n, ptr noalias nonnull %A, float %a) { entry: br label %entry.split ; CHECK-LABEL: polly.start: -; CHECK: store float %a, float* %b.phiops +; CHECK: store float %a, ptr %b.phiops entry.split: %b = phi float [ %a, %entry ] @@ -25,8 +25,8 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0 - store float %b, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0 + store float %b, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/CodeGen/error-stmt-in-non-affine-region.ll b/polly/test/CodeGen/error-stmt-in-non-affine-region.ll index a386718c8189..9832afe7a5fd 100644 --- a/polly/test/CodeGen/error-stmt-in-non-affine-region.ll +++ b/polly/test/CodeGen/error-stmt-in-non-affine-region.ll @@ -16,7 +16,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i64 %N) { +define void @f(ptr %A, i64 %N) { entry: br label %for.cond @@ -26,8 +26,8 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp = load i32, ptr %arrayidx, align 4 %cmp.outer = icmp eq i64 %indvars.iv, %N br i1 %cmp.outer, label %if.then.outer, label %for.inc @@ -40,9 +40,9 @@ if.then: ; preds = %for.body unreachable if.else: ; preds = %for.body - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv %tmp1 = trunc i64 %indvars.iv to i32 - store i32 %tmp1, i32* %arrayidx2, align 4 + store i32 %tmp1, ptr %arrayidx2, align 4 br label %if.end if.end: ; preds = %if.else diff --git a/polly/test/CodeGen/error_block_contains_invalid_memory_access.ll b/polly/test/CodeGen/error_block_contains_invalid_memory_access.ll index a5cbc1714355..048847f3e322 100644 --- a/polly/test/CodeGen/error_block_contains_invalid_memory_access.ll +++ b/polly/test/CodeGen/error_block_contains_invalid_memory_access.ll @@ -2,28 +2,28 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.img_par.12.33.54.243.348.558.600.852.999.1209.2070.2154.2175.2238.2259.2280.2322 = type { i32, i32, i32, i32, i32*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [16 x [16 x i16]], [6 x [32 x i32]], [16 x [16 x i32]], [4 x [12 x [4 x [4 x i32]]]], [16 x i32], i8**, i32*, i32***, i32**, i32, i32, i32, i32, %struct.Slice.8.29.50.239.344.554.596.848.995.1205.2066.2150.2171.2234.2255.2276.2318*, %struct.macroblock.9.30.51.240.345.555.597.849.996.1206.2067.2151.2172.2235.2256.2277.2319*, i32, i32, i32, i32, i32, i32, %struct.DecRefPicMarking_s.10.31.52.241.346.556.598.850.997.1207.2068.2152.2173.2236.2257.2278.2320*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [3 x i32], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32***, i32***, i32****, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [3 x [2 x i32]], [3 x [2 x i32]], i32, i32, i64, i64, %struct.timeb.11.32.53.242.347.557.599.851.998.1208.2069.2153.2174.2237.2258.2279.2321, %struct.timeb.11.32.53.242.347.557.599.851.998.1208.2069.2153.2174.2237.2258.2279.2321, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 } -%struct.Slice.8.29.50.239.344.554.596.848.995.1205.2066.2150.2171.2234.2255.2276.2318 = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, %struct.datapartition.3.24.45.234.339.549.591.843.990.1200.2061.2145.2166.2229.2250.2271.2313*, %struct.MotionInfoContexts.5.26.47.236.341.551.593.845.992.1202.2063.2147.2168.2231.2252.2273.2315*, %struct.TextureInfoContexts.6.27.48.237.342.552.594.846.993.1203.2064.2148.2169.2232.2253.2274.2316*, i32, i32*, i32*, i32*, i32, i32*, i32*, i32*, i32 (%struct.img_par.12.33.54.243.348.558.600.852.999.1209.2070.2154.2175.2238.2259.2280.2322*, %struct.inp_par.7.28.49.238.343.553.595.847.994.1204.2065.2149.2170.2233.2254.2275.2317*)*, i32, i32, i32, i32 } -%struct.datapartition.3.24.45.234.339.549.591.843.990.1200.2061.2145.2166.2229.2250.2271.2313 = type { %struct.Bitstream.0.21.42.231.336.546.588.840.987.1197.2058.2142.2163.2226.2247.2268.2310*, %struct.DecodingEnvironment.1.22.43.232.337.547.589.841.988.1198.2059.2143.2164.2227.2248.2269.2311, i32 (%struct.syntaxelement.2.23.44.233.338.548.590.842.989.1199.2060.2144.2165.2228.2249.2270.2312*, %struct.img_par.12.33.54.243.348.558.600.852.999.1209.2070.2154.2175.2238.2259.2280.2322*, %struct.datapartition.3.24.45.234.339.549.591.843.990.1200.2061.2145.2166.2229.2250.2271.2313*)* } -%struct.Bitstream.0.21.42.231.336.546.588.840.987.1197.2058.2142.2163.2226.2247.2268.2310 = type { i32, i32, i32, i32, i8*, i32 } -%struct.DecodingEnvironment.1.22.43.232.337.547.589.841.988.1198.2059.2143.2164.2227.2248.2269.2311 = type { i32, i32, i32, i32, i32, i8*, i32* } -%struct.syntaxelement.2.23.44.233.338.548.590.842.989.1199.2060.2144.2165.2228.2249.2270.2312 = type { i32, i32, i32, i32, i32, i32, i32, i32, void (i32, i32, i32*, i32*)*, void (%struct.syntaxelement.2.23.44.233.338.548.590.842.989.1199.2060.2144.2165.2228.2249.2270.2312*, %struct.img_par.12.33.54.243.348.558.600.852.999.1209.2070.2154.2175.2238.2259.2280.2322*, %struct.DecodingEnvironment.1.22.43.232.337.547.589.841.988.1198.2059.2143.2164.2227.2248.2269.2311*)* } +%struct.img_par.12.33.54.243.348.558.600.852.999.1209.2070.2154.2175.2238.2259.2280.2322 = type { i32, i32, i32, i32, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [16 x [16 x i16]], [6 x [32 x i32]], [16 x [16 x i32]], [4 x [12 x [4 x [4 x i32]]]], [16 x i32], ptr, ptr, ptr, ptr, i32, i32, i32, i32, ptr, ptr, i32, i32, i32, i32, i32, i32, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [3 x i32], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [3 x [2 x i32]], [3 x [2 x i32]], i32, i32, i64, i64, %struct.timeb.11.32.53.242.347.557.599.851.998.1208.2069.2153.2174.2237.2258.2279.2321, %struct.timeb.11.32.53.242.347.557.599.851.998.1208.2069.2153.2174.2237.2258.2279.2321, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 } +%struct.Slice.8.29.50.239.344.554.596.848.995.1205.2066.2150.2171.2234.2255.2276.2318 = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr, ptr, i32, ptr, ptr, ptr, i32, ptr, ptr, ptr, ptr, i32, i32, i32, i32 } +%struct.datapartition.3.24.45.234.339.549.591.843.990.1200.2061.2145.2166.2229.2250.2271.2313 = type { ptr, %struct.DecodingEnvironment.1.22.43.232.337.547.589.841.988.1198.2059.2143.2164.2227.2248.2269.2311, ptr } +%struct.Bitstream.0.21.42.231.336.546.588.840.987.1197.2058.2142.2163.2226.2247.2268.2310 = type { i32, i32, i32, i32, ptr, i32 } +%struct.DecodingEnvironment.1.22.43.232.337.547.589.841.988.1198.2059.2143.2164.2227.2248.2269.2311 = type { i32, i32, i32, i32, i32, ptr, ptr } +%struct.syntaxelement.2.23.44.233.338.548.590.842.989.1199.2060.2144.2165.2228.2249.2270.2312 = type { i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr } %struct.MotionInfoContexts.5.26.47.236.341.551.593.845.992.1202.2063.2147.2168.2231.2252.2273.2315 = type { [4 x [11 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314]], [2 x [9 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314]], [2 x [10 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314]], [2 x [6 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314]], [4 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314], [4 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314], [3 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314] } %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314 = type { i16, i8 } %struct.TextureInfoContexts.6.27.48.237.342.552.594.846.993.1203.2064.2148.2169.2232.2253.2274.2316 = type { [2 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314], [4 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314], [3 x [4 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314]], [10 x [4 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314]], [10 x [15 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314]], [10 x [15 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314]], [10 x [5 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314]], [10 x [5 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314]], [10 x [15 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314]], [10 x [15 x %struct.BiContextType.4.25.46.235.340.550.592.844.991.1201.2062.2146.2167.2230.2251.2272.2314]] } %struct.inp_par.7.28.49.238.343.553.595.847.994.1204.2065.2149.2170.2233.2254.2275.2317 = type { [1000 x i8], [1000 x i8], [1000 x i8], i32, i32, i32, i32, i32, i32, i32, i32 } -%struct.macroblock.9.30.51.240.345.555.597.849.996.1206.2067.2151.2172.2235.2256.2277.2319 = type { i32, [2 x i32], i32, i32, %struct.macroblock.9.30.51.240.345.555.597.849.996.1206.2067.2151.2172.2235.2256.2277.2319*, %struct.macroblock.9.30.51.240.345.555.597.849.996.1206.2067.2151.2172.2235.2256.2277.2319*, i32, [2 x [4 x [4 x [2 x i32]]]], i32, i64, i64, i32, i32, [4 x i8], [4 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 } -%struct.DecRefPicMarking_s.10.31.52.241.346.556.598.850.997.1207.2068.2152.2173.2236.2257.2278.2320 = type { i32, i32, i32, i32, i32, %struct.DecRefPicMarking_s.10.31.52.241.346.556.598.850.997.1207.2068.2152.2173.2236.2257.2278.2320* } +%struct.macroblock.9.30.51.240.345.555.597.849.996.1206.2067.2151.2172.2235.2256.2277.2319 = type { i32, [2 x i32], i32, i32, ptr, ptr, i32, [2 x [4 x [4 x [2 x i32]]]], i32, i64, i64, i32, i32, [4 x i8], [4 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 } +%struct.DecRefPicMarking_s.10.31.52.241.346.556.598.850.997.1207.2068.2152.2173.2236.2257.2278.2320 = type { i32, i32, i32, i32, i32, ptr } %struct.timeb.11.32.53.242.347.557.599.851.998.1208.2069.2153.2174.2237.2258.2279.2321 = type { i64, i16, i16, i16 } %struct.pix_pos.13.34.55.244.349.559.601.853.1000.1210.2071.2155.2176.2239.2260.2281.2323 = type { i32, i32, i32, i32, i32, i32 } declare void @getLuma4x4Neighbour() #0 ; Function Attrs: nounwind uwtable -define void @readCBP_CABAC(%struct.img_par.12.33.54.243.348.558.600.852.999.1209.2070.2154.2175.2238.2259.2280.2322* %img) #1 { +define void @readCBP_CABAC(ptr %img) #1 { entry: %block_a = alloca %struct.pix_pos.13.34.55.244.349.559.601.853.1000.1210.2071.2155.2176.2239.2260.2281.2323, align 4 - %mb_data = getelementptr inbounds %struct.img_par.12.33.54.243.348.558.600.852.999.1209.2070.2154.2175.2238.2259.2280.2322, %struct.img_par.12.33.54.243.348.558.600.852.999.1209.2070.2154.2175.2238.2259.2280.2322* %img, i64 0, i32 39 + %mb_data = getelementptr inbounds %struct.img_par.12.33.54.243.348.558.600.852.999.1209.2070.2154.2175.2238.2259.2280.2322, ptr %img, i64 0, i32 39 br label %for.cond.1.preheader for.cond.1.preheader: ; preds = %for.inc.84, %entry @@ -46,14 +46,14 @@ if.end.35: ; preds = %if.else.19, %if.els if.then.38: ; preds = %if.end.35 call void @getLuma4x4Neighbour() #2 - %0 = load i32, i32* null, align 4 + %0 = load i32, ptr null, align 4 %tobool = icmp eq i32 %0, 0 br i1 %tobool, label %if.end.72, label %if.then.42 if.then.42: ; preds = %if.then.38 - %mb_addr = getelementptr inbounds %struct.pix_pos.13.34.55.244.349.559.601.853.1000.1210.2071.2155.2176.2239.2260.2281.2323, %struct.pix_pos.13.34.55.244.349.559.601.853.1000.1210.2071.2155.2176.2239.2260.2281.2323* %block_a, i64 0, i32 1 - %1 = load %struct.macroblock.9.30.51.240.345.555.597.849.996.1206.2067.2151.2172.2235.2256.2277.2319*, %struct.macroblock.9.30.51.240.345.555.597.849.996.1206.2067.2151.2172.2235.2256.2277.2319** %mb_data, align 8 - %mb_type46 = getelementptr inbounds %struct.macroblock.9.30.51.240.345.555.597.849.996.1206.2067.2151.2172.2235.2256.2277.2319, %struct.macroblock.9.30.51.240.345.555.597.849.996.1206.2067.2151.2172.2235.2256.2277.2319* %1, i64 0, i32 6 + %mb_addr = getelementptr inbounds %struct.pix_pos.13.34.55.244.349.559.601.853.1000.1210.2071.2155.2176.2239.2260.2281.2323, ptr %block_a, i64 0, i32 1 + %1 = load ptr, ptr %mb_data, align 8 + %mb_type46 = getelementptr inbounds %struct.macroblock.9.30.51.240.345.555.597.849.996.1206.2067.2151.2172.2235.2256.2277.2319, ptr %1, i64 0, i32 6 br i1 false, label %if.end.72, label %if.else.50 if.else.50: ; preds = %if.then.42 diff --git a/polly/test/CodeGen/exprModDiv.ll b/polly/test/CodeGen/exprModDiv.ll index ace61feda4fd..936b018bc1ad 100644 --- a/polly/test/CodeGen/exprModDiv.ll +++ b/polly/test/CodeGen/exprModDiv.ll @@ -18,7 +18,7 @@ ; A[i % 127] ; CHECK: %pexp.pdiv_r = urem i64 %polly.indvar, 127 -; CHECK: %polly.access.A9 = getelementptr float, float* %A, i64 %pexp.pdiv_r +; CHECK: %polly.access.A9 = getelementptr float, ptr %A, i64 %pexp.pdiv_r ; A[floor(i / 127)] ; @@ -28,33 +28,31 @@ ; each value of i to indeed be mapped to a value. ; ; CHECK: %pexp.p_div_q = udiv i64 %polly.indvar, 127 -; CHECK: %polly.access.B10 = getelementptr float, float* %B, i64 %pexp.p_div_q +; CHECK: %polly.access.B10 = getelementptr float, ptr %B, i64 %pexp.p_div_q ; A[p % 128] -; CHECK: %polly.access.A11 = getelementptr float, float* %A, i64 0 ; A[p / 127] ; CHECK: %pexp.div = sdiv exact i64 %p, 127 -; CHECK: %polly.access.B12 = getelementptr float, float* %B, i64 %pexp.div +; CHECK: %polly.access.B12 = getelementptr float, ptr %B, i64 %pexp.div ; A[i % 128] ; POW2: %pexp.pdiv_r = urem i64 %polly.indvar, 128 -; POW2: %polly.access.A9 = getelementptr float, float* %A, i64 %pexp.pdiv_r +; POW2: %polly.access.A9 = getelementptr float, ptr %A, i64 %pexp.pdiv_r ; A[floor(i / 128)] ; POW2: %pexp.p_div_q = udiv i64 %polly.indvar, 128 -; POW2: %polly.access.B10 = getelementptr float, float* %B, i64 %pexp.p_div_q +; POW2: %polly.access.B10 = getelementptr float, ptr %B, i64 %pexp.p_div_q ; A[p % 128] -; POW2: %polly.access.A11 = getelementptr float, float* %A, i64 0 ; A[p / 128] ; POW2: %pexp.div = sdiv exact i64 %p, 128 -; POW2: %polly.access.B12 = getelementptr float, float* %B, i64 %pexp.div +; POW2: %polly.access.B12 = getelementptr float, ptr %B, i64 %pexp.div target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @exprModDiv(float* %A, float* %B, float* %C, i64 %N, i64 %p) { +define void @exprModDiv(ptr %A, ptr %B, ptr %C, i64 %N, i64 %p) { entry: br label %for.cond @@ -64,22 +62,22 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp = load float, float* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds float, float* %B, i64 %i.0 - %tmp1 = load float, float* %arrayidx1, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp = load float, ptr %arrayidx, align 4 + %arrayidx1 = getelementptr inbounds float, ptr %B, i64 %i.0 + %tmp1 = load float, ptr %arrayidx1, align 4 %add = fadd float %tmp, %tmp1 - %arrayidx2 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp2 = load float, float* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp2 = load float, ptr %arrayidx2, align 4 %add3 = fadd float %add, %tmp2 %padd = add nsw i64 %p, %i.0 - %arrayidx4 = getelementptr inbounds float, float* %B, i64 %padd - %tmp3 = load float, float* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds float, ptr %B, i64 %padd + %tmp3 = load float, ptr %arrayidx4, align 4 %add5 = fadd float %add3, %tmp3 - %arrayidx6 = getelementptr inbounds float, float* %C, i64 %i.0 - %tmp4 = load float, float* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds float, ptr %C, i64 %i.0 + %tmp4 = load float, ptr %arrayidx6, align 4 %add7 = fadd float %tmp4, %add5 - store float %add7, float* %arrayidx6, align 4 + store float %add7, ptr %arrayidx6, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/CodeGen/hoisted_load_escapes_through_phi.ll b/polly/test/CodeGen/hoisted_load_escapes_through_phi.ll index e8fa68893f92..d7588b3b8e00 100644 --- a/polly/test/CodeGen/hoisted_load_escapes_through_phi.ll +++ b/polly/test/CodeGen/hoisted_load_escapes_through_phi.ll @@ -11,9 +11,9 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct1 = type { i32, %union1, %struct.2*, i32, i32 } -%union1 = type { %struct.2* } -%struct.2 = type { %struct.2*, i8* } +%struct1 = type { i32, %union1, ptr, i32, i32 } +%union1 = type { ptr } +%struct.2 = type { ptr, ptr } @cont_STACKPOINTER = external global i32, align 4 @cont_STACK = external global [1000 x i32], align 16 @@ -23,14 +23,14 @@ entry: br label %if.else.i.i if.else.i.i: ; preds = %entry - %tmp = load %struct1*, %struct1** undef, align 8 + %tmp = load ptr, ptr undef, align 8 br label %while.body.i99.i.i while.body.i99.i.i: ; preds = %while.body.i99.i.i, %if.else.i.i br i1 false, label %while.body.i99.i.i, label %while.end.i103.i.i while.end.i103.i.i: ; preds = %while.body.i99.i.i - %tmp1 = load i32, i32* @cont_STACKPOINTER, align 4 + %tmp1 = load i32, ptr @cont_STACKPOINTER, align 4 %dec.i.i102.i.i = add nsw i32 %tmp1, -1 br i1 false, label %cont_BackTrack.exit107.i.i, label %if.then.i106.i.i @@ -39,13 +39,12 @@ if.then.i106.i.i: ; preds = %while.end.i103.i.i cont_BackTrack.exit107.i.i: ; preds = %if.then.i106.i.i, %while.end.i103.i.i %tmp2 = phi i32 [ %dec.i.i102.i.i, %if.then.i106.i.i ], [ 0, %while.end.i103.i.i ] - %symbol.i.i.i = getelementptr inbounds %struct1, %struct1* %tmp, i64 0, i32 0 br i1 undef, label %land.lhs.true23.i.i, label %for.inc.i.i land.lhs.true23.i.i: ; preds = %cont_BackTrack.exit107.i.i %idxprom.i.i57.i.i = sext i32 %tmp2 to i64 - %arrayidx.i.i58.i.i = getelementptr inbounds [1000 x i32], [1000 x i32]* @cont_STACK, i64 0, i64 %idxprom.i.i57.i.i - store i32 undef, i32* %arrayidx.i.i58.i.i, align 4 + %arrayidx.i.i58.i.i = getelementptr inbounds [1000 x i32], ptr @cont_STACK, i64 0, i64 %idxprom.i.i57.i.i + store i32 undef, ptr %arrayidx.i.i58.i.i, align 4 br i1 false, label %if.then.i45.i.i, label %fol_Atom.exit47.i.i if.then.i45.i.i: ; preds = %land.lhs.true23.i.i diff --git a/polly/test/CodeGen/hoisting_1.ll b/polly/test/CodeGen/hoisting_1.ll index 3cbd7159d34e..86b56637bc2c 100644 --- a/polly/test/CodeGen/hoisting_1.ll +++ b/polly/test/CodeGen/hoisting_1.ll @@ -2,42 +2,41 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.hoge = type { %struct.widget*, %struct.barney*, %struct.foo*, i32, i32, %struct.wibble*, i32, i32, i32, i32, double, i32, i32, i32, %struct.foo.1*, [4 x %struct.hoge.2*], [4 x %struct.blam*], [4 x %struct.blam*], [16 x i8], [16 x i8], [16 x i8], i32, %struct.barney.3*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8, i16, i16, i32, i32, i32, i32, i32, i32, i32, [4 x %struct.foo.1*], i32, i32, i32, [10 x i32], i32, i32, i32, i32, %struct.foo.4*, %struct.wombat.5*, %struct.blam.6*, %struct.foo.7*, %struct.bar*, %struct.wibble.8*, %struct.barney.9*, %struct.hoge.10*, %struct.bar.11* } -%struct.widget = type { void (%struct.quux*)*, void (%struct.quux*, i32)*, void (%struct.quux*)*, void (%struct.quux*, i8*)*, void (%struct.quux*)*, i32, %struct.hoge.0, i32, i64, i8**, i32, i8**, i32, i32 } -%struct.quux = type { %struct.widget*, %struct.barney*, %struct.foo*, i32, i32 } +%struct.hoge = type { ptr, ptr, ptr, i32, i32, ptr, i32, i32, i32, i32, double, i32, i32, i32, ptr, [4 x ptr], [4 x ptr], [4 x ptr], [16 x i8], [16 x i8], [16 x i8], i32, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8, i16, i16, i32, i32, i32, i32, i32, i32, i32, [4 x ptr], i32, i32, i32, [10 x i32], i32, i32, i32, i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr } +%struct.widget = type { ptr, ptr, ptr, ptr, ptr, i32, %struct.hoge.0, i32, i64, ptr, i32, ptr, i32, i32 } +%struct.quux = type { ptr, ptr, ptr, i32, i32 } %struct.hoge.0 = type { [8 x i32], [48 x i8] } -%struct.barney = type { i8* (%struct.quux*, i32, i64)*, i8* (%struct.quux*, i32, i64)*, i8** (%struct.quux*, i32, i32, i32)*, [64 x i16]** (%struct.quux*, i32, i32, i32)*, %struct.ham* (%struct.quux*, i32, i32, i32, i32, i32)*, %struct.wombat* (%struct.quux*, i32, i32, i32, i32, i32)*, {}*, i8** (%struct.quux*, %struct.ham*, i32, i32, i32)*, [64 x i16]** (%struct.quux*, %struct.wombat*, i32, i32, i32)*, void (%struct.quux*, i32)*, {}*, i64 } +%struct.barney = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64 } %struct.ham = type opaque %struct.wombat = type opaque -%struct.foo = type { {}*, i64, i64, i32, i32 } -%struct.wibble = type { i8*, i64, void (%struct.hoge*)*, i32 (%struct.hoge*)*, void (%struct.hoge*)* } -%struct.foo.1 = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, %struct.hoge.2*, i8* } +%struct.foo = type { ptr, i64, i64, i32, i32 } +%struct.wibble = type { ptr, i64, ptr, ptr, ptr } +%struct.foo.1 = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr } %struct.hoge.2 = type { [64 x i16], i32 } %struct.blam = type { [17 x i8], [256 x i8], i32 } %struct.barney.3 = type { i32, [4 x i32], i32, i32, i32, i32 } -%struct.foo.4 = type { void (%struct.hoge*)*, void (%struct.hoge*)*, void (%struct.hoge*)*, i32, i32 } -%struct.wombat.5 = type { void (%struct.hoge*, i32)*, void (%struct.hoge*, i8**, i32*, i32)* } -%struct.blam.6 = type { void (%struct.hoge*, i32)*, void (%struct.hoge*, i8**, i32*, i32, i8***, i32*, i32)* } -%struct.foo.7 = type { void (%struct.hoge*, i32)*, i32 (%struct.hoge*, i8***)* } -%struct.bar = type { void (%struct.hoge*, i32, i8*, i32)*, void (%struct.hoge*)*, void (%struct.hoge*)*, void (%struct.hoge*)*, void (%struct.hoge*)*, void (%struct.hoge*)* } -%struct.wibble.8 = type { void (%struct.hoge*)*, void (%struct.hoge*, i8**, i8***, i32, i32)* } -%struct.barney.9 = type { void (%struct.hoge*)*, void (%struct.hoge*, i8***, i32, i8***, i32)*, i32 } -%struct.hoge.10 = type { void (%struct.hoge*)*, void (%struct.hoge*, %struct.foo.1*, i8**, [64 x i16]*, i32, i32, i32)* } -%struct.bar.11 = type { {}*, i32 (%struct.hoge*, [64 x i16]**)*, void (%struct.hoge*)* } +%struct.foo.4 = type { ptr, ptr, ptr, i32, i32 } +%struct.wombat.5 = type { ptr, ptr } +%struct.blam.6 = type { ptr, ptr } +%struct.foo.7 = type { ptr, ptr } +%struct.bar = type { ptr, ptr, ptr, ptr, ptr, ptr } +%struct.wibble.8 = type { ptr, ptr } +%struct.barney.9 = type { ptr, ptr, i32 } +%struct.hoge.10 = type { ptr, ptr } +%struct.bar.11 = type { ptr, ptr, ptr } ; Function Attrs: nounwind uwtable -define void @foo(%struct.hoge* %arg) #0 { +define void @foo(ptr %arg) #0 { bb: br label %bb2 bb2: ; preds = %bb - %tmp3 = getelementptr inbounds %struct.hoge, %struct.hoge* %arg, i32 0, i32 42 - %tmp4 = getelementptr inbounds [4 x %struct.foo.1*], [4 x %struct.foo.1*]* %tmp3, i64 0, i64 0 - %tmp = load %struct.foo.1*, %struct.foo.1** %tmp4, align 8, !tbaa !1 - %tmp5 = getelementptr inbounds %struct.foo.1, %struct.foo.1* %tmp, i32 0, i32 7 - %tmp6 = load i32, i32* %tmp5, align 4, !tbaa !5 - %tmp7 = getelementptr inbounds %struct.hoge, %struct.hoge* %arg, i32 0, i32 43 - store i32 %tmp6, i32* %tmp7, align 8, !tbaa !8 + %tmp3 = getelementptr inbounds %struct.hoge, ptr %arg, i32 0, i32 42 + %tmp = load ptr, ptr %tmp3, align 8, !tbaa !1 + %tmp5 = getelementptr inbounds %struct.foo.1, ptr %tmp, i32 0, i32 7 + %tmp6 = load i32, ptr %tmp5, align 4, !tbaa !5 + %tmp7 = getelementptr inbounds %struct.hoge, ptr %arg, i32 0, i32 43 + store i32 %tmp6, ptr %tmp7, align 8, !tbaa !8 br i1 false, label %bb8, label %bb9 bb8: ; preds = %bb2 diff --git a/polly/test/CodeGen/hoisting_2.ll b/polly/test/CodeGen/hoisting_2.ll index b9ed30ba24b9..1f1be11c2d98 100644 --- a/polly/test/CodeGen/hoisting_2.ll +++ b/polly/test/CodeGen/hoisting_2.ll @@ -2,45 +2,42 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.hoge = type { %struct.widget*, %struct.barney*, %struct.foo*, i32, i32, %struct.wibble*, i32, i32, i32, i32, double, i32, i32, i32, %struct.foo.1*, [4 x %struct.hoge.2*], [4 x %struct.blam*], [4 x %struct.blam*], [16 x i8], [16 x i8], [16 x i8], i32, %struct.barney.3*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8, i16, i16, i32, i32, i32, i32, i32, i32, i32, [4 x %struct.foo.1*], i32, i32, i32, [10 x i32], i32, i32, i32, i32, %struct.foo.4*, %struct.wombat.5*, %struct.blam.6*, %struct.foo.7*, %struct.bar*, %struct.wibble.8*, %struct.barney.9*, %struct.hoge.10*, %struct.bar.11* } -%struct.widget = type { void (%struct.quux*)*, void (%struct.quux*, i32)*, void (%struct.quux*)*, void (%struct.quux*, i8*)*, void (%struct.quux*)*, i32, %struct.hoge.0, i32, i64, i8**, i32, i8**, i32, i32 } -%struct.quux = type { %struct.widget*, %struct.barney*, %struct.foo*, i32, i32 } +%struct.hoge = type { ptr, ptr, ptr, i32, i32, ptr, i32, i32, i32, i32, double, i32, i32, i32, ptr, [4 x ptr], [4 x ptr], [4 x ptr], [16 x i8], [16 x i8], [16 x i8], i32, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8, i16, i16, i32, i32, i32, i32, i32, i32, i32, [4 x ptr], i32, i32, i32, [10 x i32], i32, i32, i32, i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr } +%struct.widget = type { ptr, ptr, ptr, ptr, ptr, i32, %struct.hoge.0, i32, i64, ptr, i32, ptr, i32, i32 } +%struct.quux = type { ptr, ptr, ptr, i32, i32 } %struct.hoge.0 = type { [8 x i32], [48 x i8] } -%struct.barney = type { i8* (%struct.quux*, i32, i64)*, i8* (%struct.quux*, i32, i64)*, i8** (%struct.quux*, i32, i32, i32)*, [64 x i16]** (%struct.quux*, i32, i32, i32)*, %struct.ham* (%struct.quux*, i32, i32, i32, i32, i32)*, %struct.wombat* (%struct.quux*, i32, i32, i32, i32, i32)*, {}*, i8** (%struct.quux*, %struct.ham*, i32, i32, i32)*, [64 x i16]** (%struct.quux*, %struct.wombat*, i32, i32, i32)*, void (%struct.quux*, i32)*, {}*, i64 } +%struct.barney = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i64 } %struct.ham = type opaque %struct.wombat = type opaque -%struct.foo = type { {}*, i64, i64, i32, i32 } -%struct.wibble = type { i8*, i64, void (%struct.hoge*)*, i32 (%struct.hoge*)*, void (%struct.hoge*)* } -%struct.foo.1 = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, %struct.hoge.2*, i8* } +%struct.foo = type { ptr, i64, i64, i32, i32 } +%struct.wibble = type { ptr, i64, ptr, ptr, ptr } +%struct.foo.1 = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr } %struct.hoge.2 = type { [64 x i16], i32 } %struct.blam = type { [17 x i8], [256 x i8], i32 } %struct.barney.3 = type { i32, [4 x i32], i32, i32, i32, i32 } -%struct.foo.4 = type { void (%struct.hoge*)*, void (%struct.hoge*)*, void (%struct.hoge*)*, i32, i32 } -%struct.wombat.5 = type { void (%struct.hoge*, i32)*, void (%struct.hoge*, i8**, i32*, i32)* } -%struct.blam.6 = type { void (%struct.hoge*, i32)*, void (%struct.hoge*, i8**, i32*, i32, i8***, i32*, i32)* } -%struct.foo.7 = type { void (%struct.hoge*, i32)*, i32 (%struct.hoge*, i8***)* } -%struct.bar = type { void (%struct.hoge*, i32, i8*, i32)*, void (%struct.hoge*)*, void (%struct.hoge*)*, void (%struct.hoge*)*, void (%struct.hoge*)*, void (%struct.hoge*)* } -%struct.wibble.8 = type { void (%struct.hoge*)*, void (%struct.hoge*, i8**, i8***, i32, i32)* } -%struct.barney.9 = type { void (%struct.hoge*)*, void (%struct.hoge*, i8***, i32, i8***, i32)*, i32 } -%struct.hoge.10 = type { void (%struct.hoge*)*, void (%struct.hoge*, %struct.foo.1*, i8**, [64 x i16]*, i32, i32, i32)* } -%struct.bar.11 = type { {}*, i32 (%struct.hoge*, [64 x i16]**)*, void (%struct.hoge*)* } +%struct.foo.4 = type { ptr, ptr, ptr, i32, i32 } +%struct.wombat.5 = type { ptr, ptr } +%struct.blam.6 = type { ptr, ptr } +%struct.foo.7 = type { ptr, ptr } +%struct.bar = type { ptr, ptr, ptr, ptr, ptr, ptr } +%struct.wibble.8 = type { ptr, ptr } +%struct.barney.9 = type { ptr, ptr, i32 } +%struct.hoge.10 = type { ptr, ptr } +%struct.bar.11 = type { ptr, ptr, ptr } %struct.foo.12 = type { %struct.foo.4, i32, i32, i32, i32 } ; Function Attrs: nounwind uwtable -define void @eggs(%struct.hoge* %arg) #0 { +define void @eggs(ptr %arg) #0 { bb: - %tmp = load %struct.barney.3*, %struct.barney.3** undef, align 8, !tbaa !1 + %tmp = load ptr, ptr undef, align 8, !tbaa !1 br label %bb5 bb5: ; preds = %bb - %tmp6 = getelementptr inbounds %struct.hoge, %struct.hoge* %arg, i32 0, i32 51 - %tmp7 = load %struct.foo.4*, %struct.foo.4** %tmp6, align 8, !tbaa !9 - %tmp8 = bitcast %struct.foo.4* %tmp7 to %struct.foo.12* - %tmp9 = getelementptr inbounds %struct.foo.12, %struct.foo.12* %tmp8, i32 0, i32 4 - %tmp10 = load i32, i32* %tmp9, align 4, !tbaa !10 - %tmp11 = getelementptr inbounds %struct.barney.3, %struct.barney.3* %tmp, i64 0 - %tmp12 = getelementptr inbounds %struct.barney.3, %struct.barney.3* %tmp11, i32 0, i32 0 - %tmp151 = load i32, i32* %tmp12, align 4, !tbaa !13 + %tmp6 = getelementptr inbounds %struct.hoge, ptr %arg, i32 0, i32 51 + %tmp7 = load ptr, ptr %tmp6, align 8, !tbaa !9 + %tmp9 = getelementptr inbounds %struct.foo.12, ptr %tmp7, i32 0, i32 4 + %tmp10 = load i32, ptr %tmp9, align 4, !tbaa !10 + %tmp151 = load i32, ptr %tmp, align 4, !tbaa !13 %tmp162 = icmp slt i32 0, %tmp151 br i1 %tmp162, label %bb17.lr.ph, label %bb22 @@ -50,11 +47,11 @@ bb17.lr.ph: ; preds = %bb5 bb17: ; preds = %bb17.lr.ph, %bb17 %tmp143 = phi i32 [ 0, %bb17.lr.ph ], [ %tmp21, %bb17 ] %tmp18 = sext i32 %tmp143 to i64 - %tmp19 = getelementptr inbounds %struct.hoge, %struct.hoge* %arg, i32 0, i32 42 - %tmp20 = getelementptr inbounds [4 x %struct.foo.1*], [4 x %struct.foo.1*]* %tmp19, i64 0, i64 %tmp18 - store %struct.foo.1* undef, %struct.foo.1** %tmp20, align 8, !tbaa !15 + %tmp19 = getelementptr inbounds %struct.hoge, ptr %arg, i32 0, i32 42 + %tmp20 = getelementptr inbounds [4 x ptr], ptr %tmp19, i64 0, i64 %tmp18 + store ptr undef, ptr %tmp20, align 8, !tbaa !15 %tmp21 = add nsw i32 %tmp143, 1 - %tmp15 = load i32, i32* %tmp12, align 4, !tbaa !13 + %tmp15 = load i32, ptr %tmp, align 4, !tbaa !13 %tmp16 = icmp slt i32 %tmp21, %tmp15 br i1 %tmp16, label %bb17, label %bb13.bb22_crit_edge diff --git a/polly/test/CodeGen/if-conditions-in-vector-code.ll b/polly/test/CodeGen/if-conditions-in-vector-code.ll index 7deaca0515dc..0b1897e48c49 100644 --- a/polly/test/CodeGen/if-conditions-in-vector-code.ll +++ b/polly/test/CodeGen/if-conditions-in-vector-code.ll @@ -23,7 +23,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; CHECK: polly.split_new_and_old -define void @foo(float* %A) { +define void @foo(ptr %A) { bb: br label %bb1 @@ -38,10 +38,10 @@ bb2: ; preds = %bb1 br i1 %tmp3, label %bb8, label %bb4 bb4: ; preds = %bb2 - %tmp5 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp6 = load float, float* %tmp5, align 4 + %tmp5 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp6 = load float, ptr %tmp5, align 4 %tmp7 = fadd float %tmp6, 2.000000e+00 - store float %tmp7, float* %tmp5, align 4 + store float %tmp7, ptr %tmp5, align 4 br label %bb8 bb8: ; preds = %bb2, %bb4 @@ -50,10 +50,10 @@ bb8: ; preds = %bb2, %bb4 br i1 %tmp10, label %bb15, label %bb11 bb11: ; preds = %bb8 - %tmp12 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp13 = load float, float* %tmp12, align 4 + %tmp12 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp13 = load float, ptr %tmp12, align 4 %tmp14 = fadd float %tmp13, 3.000000e+00 - store float %tmp14, float* %tmp12, align 4 + store float %tmp14, ptr %tmp12, align 4 br label %bb15 bb15: ; preds = %bb8, %bb11 diff --git a/polly/test/CodeGen/inner_scev_sdiv_1.ll b/polly/test/CodeGen/inner_scev_sdiv_1.ll index 29c8dc2d63b3..1a463fc178d1 100644 --- a/polly/test/CodeGen/inner_scev_sdiv_1.ll +++ b/polly/test/CodeGen/inner_scev_sdiv_1.ll @@ -13,9 +13,9 @@ ; target triple = "x86_64-unknown-linux-gnu" -define void @_vorbis_apply_window(float* %d) { +define void @_vorbis_apply_window(ptr %d) { entry: - %0 = load float*, float** undef, align 8 + %0 = load ptr, ptr undef, align 8 %div23.neg = sdiv i64 0, -4 %sub24 = add i64 0, %div23.neg br label %for.cond.30.preheader @@ -38,10 +38,9 @@ for.cond.60.preheader: ; preds = %for.body.51, %for.c for.body.51: ; preds = %for.body.51, %for.body.51.lr.ph %indvars.iv86 = phi i64 [ %2, %for.body.51.lr.ph ], [ undef, %for.body.51 ] - %arrayidx53 = getelementptr inbounds float, float* %0, i64 %indvars.iv86 - %3 = load float, float* %arrayidx53, align 4 - %arrayidx55 = getelementptr inbounds float, float* %d, i64 0 + %arrayidx53 = getelementptr inbounds float, ptr %0, i64 %indvars.iv86 + %3 = load float, ptr %arrayidx53, align 4 %mul56 = fmul float %3, undef - store float %mul56, float* %arrayidx55, align 4 + store float %mul56, ptr %d, align 4 br i1 false, label %for.body.51, label %for.cond.60.preheader } diff --git a/polly/test/CodeGen/inner_scev_sdiv_2.ll b/polly/test/CodeGen/inner_scev_sdiv_2.ll index 9b9254433006..76138034603e 100644 --- a/polly/test/CodeGen/inner_scev_sdiv_2.ll +++ b/polly/test/CodeGen/inner_scev_sdiv_2.ll @@ -9,9 +9,9 @@ ; target triple = "x86_64-unknown-linux-gnu" -define void @_vorbis_apply_window(float* %d, i64 %param) { +define void @_vorbis_apply_window(ptr %d, i64 %param) { entry: - %0 = load float*, float** undef, align 8 + %0 = load ptr, ptr undef, align 8 %div23.neg = sdiv i64 0, -4 %sub24 = add i64 0, %div23.neg br label %for.cond.30.preheader @@ -35,10 +35,9 @@ for.cond.60.preheader: ; preds = %for.body.51, %for.c for.body.51: ; preds = %for.body.51, %for.body.51.lr.ph %indvars.iv86 = phi i64 [ %2, %for.body.51.lr.ph ], [ undef, %for.body.51 ] - %arrayidx53 = getelementptr inbounds float, float* %0, i64 %indvars.iv86 - %3 = load float, float* %arrayidx53, align 4 - %arrayidx55 = getelementptr inbounds float, float* %d, i64 0 + %arrayidx53 = getelementptr inbounds float, ptr %0, i64 %indvars.iv86 + %3 = load float, ptr %arrayidx53, align 4 %mul56 = fmul float %3, undef - store float %mul56, float* %arrayidx55, align 4 + store float %mul56, ptr %d, align 4 br i1 false, label %for.body.51, label %for.cond.60.preheader } diff --git a/polly/test/CodeGen/inner_scev_sdiv_3.ll b/polly/test/CodeGen/inner_scev_sdiv_3.ll index 50e9861c03be..874ead14ded2 100644 --- a/polly/test/CodeGen/inner_scev_sdiv_3.ll +++ b/polly/test/CodeGen/inner_scev_sdiv_3.ll @@ -7,9 +7,9 @@ ; target triple = "x86_64-unknown-linux-gnu" -define i64 @_vorbis_apply_window(float* %d, i64 %param) { +define i64 @_vorbis_apply_window(ptr %d, i64 %param) { entry: - %0 = load float*, float** undef, align 8 + %0 = load ptr, ptr undef, align 8 %div23.neg = sdiv i64 0, -4 %sub24 = add i64 0, %div23.neg br label %for.cond.30.preheader @@ -37,10 +37,9 @@ end: for.body.51: ; preds = %for.body.51, %for.body.51.lr.ph %indvars.iv86 = phi i64 [ %2, %for.body.51.lr.ph ], [ undef, %for.body.51 ] - %arrayidx53 = getelementptr inbounds float, float* %0, i64 %indvars.iv86 - %3 = load float, float* %arrayidx53, align 4 - %arrayidx55 = getelementptr inbounds float, float* %d, i64 0 + %arrayidx53 = getelementptr inbounds float, ptr %0, i64 %indvars.iv86 + %3 = load float, ptr %arrayidx53, align 4 %mul56 = fmul float %3, undef - store float %mul56, float* %arrayidx55, align 4 + store float %mul56, ptr %d, align 4 br i1 false, label %for.body.51, label %for.cond.60.preheader } diff --git a/polly/test/CodeGen/inner_scev_sdiv_in_lb.ll b/polly/test/CodeGen/inner_scev_sdiv_in_lb.ll index 12727b94ca49..6514e18687e4 100644 --- a/polly/test/CodeGen/inner_scev_sdiv_in_lb.ll +++ b/polly/test/CodeGen/inner_scev_sdiv_in_lb.ll @@ -12,7 +12,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { bb: %tmp = sext i32 %N to i64 br label %bb3 @@ -34,12 +34,12 @@ bb6: ; preds = %bb17, %bb5 br i1 %tmp10, label %bb11, label %bb18 bb11: ; preds = %bb6 - %tmp12 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp13 = load i32, i32* %tmp12, align 4 - %tmp14 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv1 - %tmp15 = load i32, i32* %tmp14, align 4 + %tmp12 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp13 = load i32, ptr %tmp12, align 4 + %tmp14 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv1 + %tmp15 = load i32, ptr %tmp14, align 4 %tmp16 = add nsw i32 %tmp15, %tmp13 - store i32 %tmp16, i32* %tmp14, align 4 + store i32 %tmp16, ptr %tmp14, align 4 br label %bb17 bb17: ; preds = %bb11 diff --git a/polly/test/CodeGen/inner_scev_sdiv_in_lb_invariant.ll b/polly/test/CodeGen/inner_scev_sdiv_in_lb_invariant.ll index dff165326dcb..032942923379 100644 --- a/polly/test/CodeGen/inner_scev_sdiv_in_lb_invariant.ll +++ b/polly/test/CodeGen/inner_scev_sdiv_in_lb_invariant.ll @@ -12,7 +12,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { bb: %tmp = sdiv i32 %N, 4 %tmp2 = sext i32 %tmp to i64 @@ -25,12 +25,12 @@ bb1: ; preds = %bb11, %bb bb4: ; preds = %bb1 %tmp5 = add nsw i64 %indvars.iv, -1 - %tmp6 = getelementptr inbounds i32, i32* %A, i64 %tmp5 - %tmp7 = load i32, i32* %tmp6, align 4 - %tmp8 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp9 = load i32, i32* %tmp8, align 4 + %tmp6 = getelementptr inbounds i32, ptr %A, i64 %tmp5 + %tmp7 = load i32, ptr %tmp6, align 4 + %tmp8 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp9 = load i32, ptr %tmp8, align 4 %tmp10 = add nsw i32 %tmp9, %tmp7 - store i32 %tmp10, i32* %tmp8, align 4 + store i32 %tmp10, ptr %tmp8, align 4 br label %bb11 bb11: ; preds = %bb4 diff --git a/polly/test/CodeGen/inner_scev_sdiv_in_rtc.ll b/polly/test/CodeGen/inner_scev_sdiv_in_rtc.ll index 9481a4b50f03..f7292ca3073a 100644 --- a/polly/test/CodeGen/inner_scev_sdiv_in_rtc.ll +++ b/polly/test/CodeGen/inner_scev_sdiv_in_rtc.ll @@ -12,7 +12,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %B, i32 %N) { +define void @f(ptr %A, ptr %B, i32 %N) { bb: br label %bb1 @@ -24,12 +24,12 @@ bb1: ; preds = %bb9, %bb bb2: ; preds = %bb1 %tmp = sdiv i32 %i.0, 42 %tmp3 = sext i32 %tmp to i64 - %tmp4 = getelementptr inbounds i32, i32* %B, i64 %tmp3 - %tmp5 = load i32, i32* %tmp4, align 4 + %tmp4 = getelementptr inbounds i32, ptr %B, i64 %tmp3 + %tmp5 = load i32, ptr %tmp4, align 4 %tmp6 = srem i32 %i.0, 3 %tmp7 = sext i32 %tmp6 to i64 - %tmp8 = getelementptr inbounds i32, i32* %A, i64 %tmp7 - store i32 %tmp5, i32* %tmp8, align 4 + %tmp8 = getelementptr inbounds i32, ptr %A, i64 %tmp7 + store i32 %tmp5, ptr %tmp8, align 4 br label %bb9 bb9: ; preds = %bb2 diff --git a/polly/test/CodeGen/intrinsics_lifetime.ll b/polly/test/CodeGen/intrinsics_lifetime.ll index 9aea62b87d82..6141b3abdd8a 100644 --- a/polly/test/CodeGen/intrinsics_lifetime.ll +++ b/polly/test/CodeGen/intrinsics_lifetime.ll @@ -24,7 +24,6 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" define void @jd() #0 { entry: %tmp = alloca [1024 x i32], align 16 - %tmp3 = bitcast [1024 x i32]* %tmp to i8* br label %for.cond for.cond: ; preds = %for.inc11, %entry @@ -33,7 +32,7 @@ for.cond: ; preds = %for.inc11, %entry br i1 %exitcond5, label %for.body, label %for.end13 for.body: ; preds = %for.cond - call void @llvm.lifetime.start(i64 4096, i8* %tmp3) #1 + call void @llvm.lifetime.start(i64 4096, ptr %tmp) #1 br label %for.cond2 for.cond2: ; preds = %for.inc, %for.body @@ -43,12 +42,12 @@ for.cond2: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body4, label %for.end for.body4: ; preds = %for.cond2 - %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv1 - %tmp6 = load i32, i32* %arrayidx, align 4 - %arrayidx6 = getelementptr inbounds [1024 x i32], [1024 x i32]* %tmp, i64 0, i64 %indvars.iv3 - %tmp7 = load i32, i32* %arrayidx6, align 4 + %arrayidx = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv1 + %tmp6 = load i32, ptr %arrayidx, align 4 + %arrayidx6 = getelementptr inbounds [1024 x i32], ptr %tmp, i64 0, i64 %indvars.iv3 + %tmp7 = load i32, ptr %arrayidx6, align 4 %add = add nsw i32 %tmp7, %tmp6 - store i32 %add, i32* %arrayidx6, align 4 + store i32 %add, ptr %arrayidx6, align 4 br label %for.inc for.inc: ; preds = %for.body4 @@ -56,11 +55,11 @@ for.inc: ; preds = %for.body4 br label %for.cond2 for.end: ; preds = %for.cond2 - %arrayidx8 = getelementptr inbounds [1024 x i32], [1024 x i32]* %tmp, i64 0, i64 %indvars.iv3 - %tmp8 = load i32, i32* %arrayidx8, align 4 - %arrayidx10 = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv3 - store i32 %tmp8, i32* %arrayidx10, align 4 - call void @llvm.lifetime.end(i64 4096, i8* %tmp3) #1 + %arrayidx8 = getelementptr inbounds [1024 x i32], ptr %tmp, i64 0, i64 %indvars.iv3 + %tmp8 = load i32, ptr %arrayidx8, align 4 + %arrayidx10 = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv3 + store i32 %tmp8, ptr %arrayidx10, align 4 + call void @llvm.lifetime.end(i64 4096, ptr %tmp) #1 br label %for.inc11 for.inc11: ; preds = %for.end @@ -72,10 +71,10 @@ for.end13: ; preds = %for.cond } ; Function Attrs: nounwind -declare void @llvm.lifetime.start(i64, i8* nocapture) #1 +declare void @llvm.lifetime.start(i64, ptr nocapture) #1 ; Function Attrs: nounwind -declare void @llvm.lifetime.end(i64, i8* nocapture) #1 +declare void @llvm.lifetime.end(i64, ptr nocapture) #1 attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" } attributes #1 = { nounwind } diff --git a/polly/test/CodeGen/intrinsics_misc.ll b/polly/test/CodeGen/intrinsics_misc.ll index bb5c15c850ef..c0a52fe97329 100644 --- a/polly/test/CodeGen/intrinsics_misc.ll +++ b/polly/test/CodeGen/intrinsics_misc.ll @@ -3,7 +3,7 @@ ; Verify that we remove the misc intrinsics from the optimized SCoP. ; ; CHECK: for.body: -; CHECK: call {}* @llvm.invariant.start +; CHECK: call ptr @llvm.invariant.start ; CHECK: for.body4: ; CHECK: call void @llvm.assume ; CHECK: call i1 @llvm.expect.i1 @@ -31,7 +31,6 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" define void @jd() #0 { entry: %tmp = alloca [1024 x i32], align 16 - %tmp3 = bitcast [1024 x i32]* @A to i8* br label %for.cond for.cond: ; preds = %for.inc11, %entry @@ -40,7 +39,7 @@ for.cond: ; preds = %for.inc11, %entry br i1 %exitcond5, label %for.body, label %for.end13 for.body: ; preds = %for.cond - %lis = call {}* @llvm.invariant.start(i64 4096, i8* %tmp3) #1 + %lis = call ptr @llvm.invariant.start(i64 4096, ptr @A) #1 br label %for.cond2 for.cond2: ; preds = %for.inc, %for.body @@ -52,13 +51,13 @@ for.cond2: ; preds = %for.inc, %for.body for.body4: ; preds = %for.cond2 call void @llvm.assume(i1 %exitcond) call i1 @llvm.expect.i1(i1 %exitcond, i1 1) - %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv1 - %tmp6 = load i32, i32* %arrayidx, align 4 - %arrayidx6 = getelementptr inbounds [1024 x i32], [1024 x i32]* %tmp, i64 0, i64 %indvars.iv3 + %arrayidx = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv1 + %tmp6 = load i32, ptr %arrayidx, align 4 + %arrayidx6 = getelementptr inbounds [1024 x i32], ptr %tmp, i64 0, i64 %indvars.iv3 call void @llvm.donothing() - %tmp7 = load i32, i32* %arrayidx6, align 4 + %tmp7 = load i32, ptr %arrayidx6, align 4 %add = add nsw i32 %tmp7, %tmp6 - store i32 %add, i32* %arrayidx6, align 4 + store i32 %add, ptr %arrayidx6, align 4 br label %for.inc for.inc: ; preds = %for.body4 @@ -66,11 +65,11 @@ for.inc: ; preds = %for.body4 br label %for.cond2 for.end: ; preds = %for.cond2 - %arrayidx8 = getelementptr inbounds [1024 x i32], [1024 x i32]* %tmp, i64 0, i64 %indvars.iv3 - %tmp8 = load i32, i32* %arrayidx8, align 4 - %arrayidx10 = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv3 - call void @llvm.invariant.end({}* %lis, i64 4096, i8* %tmp3) #1 - store i32 %tmp8, i32* %arrayidx10, align 4 + %arrayidx8 = getelementptr inbounds [1024 x i32], ptr %tmp, i64 0, i64 %indvars.iv3 + %tmp8 = load i32, ptr %arrayidx8, align 4 + %arrayidx10 = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv3 + call void @llvm.invariant.end(ptr %lis, i64 4096, ptr @A) #1 + store i32 %tmp8, ptr %arrayidx10, align 4 br label %for.inc11 for.inc11: ; preds = %for.end @@ -91,10 +90,10 @@ declare void @llvm.assume(i1) #1 declare i1 @llvm.expect.i1(i1, i1) #1 ; Function Attrs: nounwind -declare {}* @llvm.invariant.start(i64, i8* nocapture) #1 +declare ptr @llvm.invariant.start(i64, ptr nocapture) #1 ; Function Attrs: nounwind -declare void @llvm.invariant.end({}*, i64, i8* nocapture) #1 +declare void @llvm.invariant.end(ptr, i64, ptr nocapture) #1 attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" } attributes #1 = { nounwind } diff --git a/polly/test/CodeGen/inv-load-lnt-crash-wrong-order-2.ll b/polly/test/CodeGen/inv-load-lnt-crash-wrong-order-2.ll index 1c81d6469b82..6727247a7f04 100644 --- a/polly/test/CodeGen/inv-load-lnt-crash-wrong-order-2.ll +++ b/polly/test/CodeGen/inv-load-lnt-crash-wrong-order-2.ll @@ -7,41 +7,40 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.EqState.41.74.107.272.602.635.701.734.767.899.998.1229.2449.2482.2647.2680.2779.2911.3010.3036 = type { %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035*, %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018*, %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035* } -%struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018 = type { i32, %struct.Production.29.62.95.260.590.623.689.722.755.887.986.1217.2437.2470.2635.2668.2767.2899.2998.3014*, i32, i32, i32, i32, %struct.anon.0.30.63.96.261.591.624.690.723.756.888.987.1218.2438.2471.2636.2669.2768.2900.2999.3015, %struct.Elem.12.45.78.243.573.606.672.705.738.870.969.1200.2420.2453.2618.2651.2750.2882.2981.3021*, %struct.Code.31.64.97.262.592.625.691.724.757.889.988.1219.2439.2472.2637.2670.2769.2901.3000.3016, %struct.Code.31.64.97.262.592.625.691.724.757.889.988.1219.2439.2472.2637.2670.2769.2901.3000.3016, %struct.anon.1.32.65.98.263.593.626.692.725.758.890.989.1220.2440.2473.2638.2671.2770.2902.3001.3017, i32, %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018* } -%struct.Production.29.62.95.260.590.623.689.722.755.887.986.1217.2437.2470.2635.2668.2767.2899.2998.3014 = type { i8*, i32, %struct.anon.9.42.75.240.570.603.669.702.735.867.966.1197.2417.2450.2615.2648.2747.2879.2978.3011, i32, i8, %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018*, [8 x %struct.Production.29.62.95.260.590.623.689.722.755.887.986.1217.2437.2470.2635.2668.2767.2899.2998.3014*], [8 x %struct.Declaration.13.46.79.244.574.607.673.706.739.871.970.1201.2421.2454.2619.2652.2751.2883.2982.3012*], %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035*, %struct.Elem.12.45.78.243.573.606.672.705.738.870.969.1200.2420.2453.2618.2651.2750.2882.2981.3021*, %struct.Term.18.51.84.249.579.612.678.711.744.876.975.1206.2426.2459.2624.2657.2756.2888.2987.3013*, %struct.Production.29.62.95.260.590.623.689.722.755.887.986.1217.2437.2470.2635.2668.2767.2899.2998.3014* } -%struct.anon.9.42.75.240.570.603.669.702.735.867.966.1197.2417.2450.2615.2648.2747.2879.2978.3011 = type { i32, i32, %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018**, [3 x %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018*] } -%struct.Declaration.13.46.79.244.574.607.673.706.739.871.970.1201.2421.2454.2619.2652.2751.2883.2982.3012 = type { %struct.Elem.12.45.78.243.573.606.672.705.738.870.969.1200.2420.2453.2618.2651.2750.2882.2981.3021*, i32, i32 } -%struct.Term.18.51.84.249.579.612.678.711.744.876.975.1206.2426.2459.2624.2657.2756.2888.2987.3013 = type { i32, i32, i32, i32, i32, i8*, i32, i8, %struct.Production.29.62.95.260.590.623.689.722.755.887.986.1217.2437.2470.2635.2668.2767.2899.2998.3014* } -%struct.anon.0.30.63.96.261.591.624.690.723.756.888.987.1218.2438.2471.2636.2669.2768.2900.2999.3015 = type { i32, i32, %struct.Elem.12.45.78.243.573.606.672.705.738.870.969.1200.2420.2453.2618.2651.2750.2882.2981.3021**, [3 x %struct.Elem.12.45.78.243.573.606.672.705.738.870.969.1200.2420.2453.2618.2651.2750.2882.2981.3021*] } -%struct.Elem.12.45.78.243.573.606.672.705.738.870.969.1200.2420.2453.2618.2651.2750.2882.2981.3021 = type { i32, i32, %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018*, %union.anon.11.44.77.242.572.605.671.704.737.869.968.1199.2419.2452.2617.2650.2749.2881.2980.3020 } +%struct.EqState.41.74.107.272.602.635.701.734.767.899.998.1229.2449.2482.2647.2680.2779.2911.3010.3036 = type { ptr, ptr, ptr } +%struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018 = type { i32, ptr, i32, i32, i32, i32, %struct.anon.0.30.63.96.261.591.624.690.723.756.888.987.1218.2438.2471.2636.2669.2768.2900.2999.3015, ptr, %struct.Code.31.64.97.262.592.625.691.724.757.889.988.1219.2439.2472.2637.2670.2769.2901.3000.3016, %struct.Code.31.64.97.262.592.625.691.724.757.889.988.1219.2439.2472.2637.2670.2769.2901.3000.3016, %struct.anon.1.32.65.98.263.593.626.692.725.758.890.989.1220.2440.2473.2638.2671.2770.2902.3001.3017, i32, ptr } +%struct.Production.29.62.95.260.590.623.689.722.755.887.986.1217.2437.2470.2635.2668.2767.2899.2998.3014 = type { ptr, i32, %struct.anon.9.42.75.240.570.603.669.702.735.867.966.1197.2417.2450.2615.2648.2747.2879.2978.3011, i32, i8, ptr, [8 x ptr], [8 x ptr], ptr, ptr, ptr, ptr } +%struct.anon.9.42.75.240.570.603.669.702.735.867.966.1197.2417.2450.2615.2648.2747.2879.2978.3011 = type { i32, i32, ptr, [3 x ptr] } +%struct.Declaration.13.46.79.244.574.607.673.706.739.871.970.1201.2421.2454.2619.2652.2751.2883.2982.3012 = type { ptr, i32, i32 } +%struct.Term.18.51.84.249.579.612.678.711.744.876.975.1206.2426.2459.2624.2657.2756.2888.2987.3013 = type { i32, i32, i32, i32, i32, ptr, i32, i8, ptr } +%struct.anon.0.30.63.96.261.591.624.690.723.756.888.987.1218.2438.2471.2636.2669.2768.2900.2999.3015 = type { i32, i32, ptr, [3 x ptr] } +%struct.Elem.12.45.78.243.573.606.672.705.738.870.969.1200.2420.2453.2618.2651.2750.2882.2981.3021 = type { i32, i32, ptr, %union.anon.11.44.77.242.572.605.671.704.737.869.968.1199.2419.2452.2617.2650.2749.2881.2980.3020 } %union.anon.11.44.77.242.572.605.671.704.737.869.968.1199.2419.2452.2617.2650.2749.2881.2980.3020 = type { %struct.Unresolved.10.43.76.241.571.604.670.703.736.868.967.1198.2418.2451.2616.2649.2748.2880.2979.3019 } -%struct.Unresolved.10.43.76.241.571.604.670.703.736.868.967.1198.2418.2451.2616.2649.2748.2880.2979.3019 = type { i8*, i32 } -%struct.Code.31.64.97.262.592.625.691.724.757.889.988.1219.2439.2472.2637.2670.2769.2901.3000.3016 = type { i8*, i32 } -%struct.anon.1.32.65.98.263.593.626.692.725.758.890.989.1220.2440.2473.2638.2671.2770.2902.3001.3017 = type { i32, i32, %struct.Code.31.64.97.262.592.625.691.724.757.889.988.1219.2439.2472.2637.2670.2769.2901.3000.3016**, [3 x %struct.Code.31.64.97.262.592.625.691.724.757.889.988.1219.2439.2472.2637.2670.2769.2901.3000.3016*] } -%struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035 = type { i32, i64, %struct.anon.2.14.47.80.245.575.608.674.707.740.872.971.1202.2422.2455.2620.2653.2752.2884.2983.3022, %struct.anon.3.15.48.81.246.576.609.675.708.741.873.972.1203.2423.2456.2621.2654.2753.2885.2984.3023, %struct.VecGoto.17.50.83.248.578.611.677.710.743.875.974.1205.2425.2458.2623.2656.2755.2887.2986.3025, %struct.VecAction.20.53.86.251.581.614.680.713.746.878.977.1208.2428.2461.2626.2659.2758.2890.2989.3027, %struct.VecAction.20.53.86.251.581.614.680.713.746.878.977.1208.2428.2461.2626.2659.2758.2890.2989.3027, %struct.VecHint.22.55.88.253.583.616.682.715.748.880.979.1210.2430.2463.2628.2661.2760.2892.2991.3029, %struct.VecHint.22.55.88.253.583.616.682.715.748.880.979.1210.2430.2463.2628.2661.2760.2892.2991.3029, %struct.Scanner.27.60.93.258.588.621.687.720.753.885.984.1215.2435.2468.2633.2666.2765.2897.2996.3034, i8, i8*, i32, %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035*, %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035*, %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018*, %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018* } -%struct.anon.2.14.47.80.245.575.608.674.707.740.872.971.1202.2422.2455.2620.2653.2752.2884.2983.3022 = type { i32, i32, %struct.Elem.12.45.78.243.573.606.672.705.738.870.969.1200.2420.2453.2618.2651.2750.2882.2981.3021**, [3 x %struct.Elem.12.45.78.243.573.606.672.705.738.870.969.1200.2420.2453.2618.2651.2750.2882.2981.3021*] } -%struct.anon.3.15.48.81.246.576.609.675.708.741.873.972.1203.2423.2456.2621.2654.2753.2885.2984.3023 = type { i32, i32, %struct.Elem.12.45.78.243.573.606.672.705.738.870.969.1200.2420.2453.2618.2651.2750.2882.2981.3021**, [3 x %struct.Elem.12.45.78.243.573.606.672.705.738.870.969.1200.2420.2453.2618.2651.2750.2882.2981.3021*] } -%struct.VecGoto.17.50.83.248.578.611.677.710.743.875.974.1205.2425.2458.2623.2656.2755.2887.2986.3025 = type { i32, i32, %struct.Goto.16.49.82.247.577.610.676.709.742.874.973.1204.2424.2457.2622.2655.2754.2886.2985.3024**, [3 x %struct.Goto.16.49.82.247.577.610.676.709.742.874.973.1204.2424.2457.2622.2655.2754.2886.2985.3024*] } -%struct.Goto.16.49.82.247.577.610.676.709.742.874.973.1204.2424.2457.2622.2655.2754.2886.2985.3024 = type { %struct.Elem.12.45.78.243.573.606.672.705.738.870.969.1200.2420.2453.2618.2651.2750.2882.2981.3021*, %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035* } -%struct.VecAction.20.53.86.251.581.614.680.713.746.878.977.1208.2428.2461.2626.2659.2758.2890.2989.3027 = type { i32, i32, %struct.Action.19.52.85.250.580.613.679.712.745.877.976.1207.2427.2460.2625.2658.2757.2889.2988.3026**, [3 x %struct.Action.19.52.85.250.580.613.679.712.745.877.976.1207.2427.2460.2625.2658.2757.2889.2988.3026*] } -%struct.Action.19.52.85.250.580.613.679.712.745.877.976.1207.2427.2460.2625.2658.2757.2889.2988.3026 = type { i32, %struct.Term.18.51.84.249.579.612.678.711.744.876.975.1206.2426.2459.2624.2657.2756.2888.2987.3013*, %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018*, %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035*, i32, i8* } -%struct.VecHint.22.55.88.253.583.616.682.715.748.880.979.1210.2430.2463.2628.2661.2760.2892.2991.3029 = type { i32, i32, %struct.Hint.21.54.87.252.582.615.681.714.747.879.978.1209.2429.2462.2627.2660.2759.2891.2990.3028**, [3 x %struct.Hint.21.54.87.252.582.615.681.714.747.879.978.1209.2429.2462.2627.2660.2759.2891.2990.3028*] } -%struct.Hint.21.54.87.252.582.615.681.714.747.879.978.1209.2429.2462.2627.2660.2759.2891.2990.3028 = type { i32, %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035*, %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018* } +%struct.Unresolved.10.43.76.241.571.604.670.703.736.868.967.1198.2418.2451.2616.2649.2748.2880.2979.3019 = type { ptr, i32 } +%struct.Code.31.64.97.262.592.625.691.724.757.889.988.1219.2439.2472.2637.2670.2769.2901.3000.3016 = type { ptr, i32 } +%struct.anon.1.32.65.98.263.593.626.692.725.758.890.989.1220.2440.2473.2638.2671.2770.2902.3001.3017 = type { i32, i32, ptr, [3 x ptr] } +%struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035 = type { i32, i64, %struct.anon.2.14.47.80.245.575.608.674.707.740.872.971.1202.2422.2455.2620.2653.2752.2884.2983.3022, %struct.anon.3.15.48.81.246.576.609.675.708.741.873.972.1203.2423.2456.2621.2654.2753.2885.2984.3023, %struct.VecGoto.17.50.83.248.578.611.677.710.743.875.974.1205.2425.2458.2623.2656.2755.2887.2986.3025, %struct.VecAction.20.53.86.251.581.614.680.713.746.878.977.1208.2428.2461.2626.2659.2758.2890.2989.3027, %struct.VecAction.20.53.86.251.581.614.680.713.746.878.977.1208.2428.2461.2626.2659.2758.2890.2989.3027, %struct.VecHint.22.55.88.253.583.616.682.715.748.880.979.1210.2430.2463.2628.2661.2760.2892.2991.3029, %struct.VecHint.22.55.88.253.583.616.682.715.748.880.979.1210.2430.2463.2628.2661.2760.2892.2991.3029, %struct.Scanner.27.60.93.258.588.621.687.720.753.885.984.1215.2435.2468.2633.2666.2765.2897.2996.3034, i8, ptr, i32, ptr, ptr, ptr, ptr } +%struct.anon.2.14.47.80.245.575.608.674.707.740.872.971.1202.2422.2455.2620.2653.2752.2884.2983.3022 = type { i32, i32, ptr, [3 x ptr] } +%struct.anon.3.15.48.81.246.576.609.675.708.741.873.972.1203.2423.2456.2621.2654.2753.2885.2984.3023 = type { i32, i32, ptr, [3 x ptr] } +%struct.VecGoto.17.50.83.248.578.611.677.710.743.875.974.1205.2425.2458.2623.2656.2755.2887.2986.3025 = type { i32, i32, ptr, [3 x ptr] } +%struct.Goto.16.49.82.247.577.610.676.709.742.874.973.1204.2424.2457.2622.2655.2754.2886.2985.3024 = type { ptr, ptr } +%struct.VecAction.20.53.86.251.581.614.680.713.746.878.977.1208.2428.2461.2626.2659.2758.2890.2989.3027 = type { i32, i32, ptr, [3 x ptr] } +%struct.Action.19.52.85.250.580.613.679.712.745.877.976.1207.2427.2460.2625.2658.2757.2889.2988.3026 = type { i32, ptr, ptr, ptr, i32, ptr } +%struct.VecHint.22.55.88.253.583.616.682.715.748.880.979.1210.2430.2463.2628.2661.2760.2892.2991.3029 = type { i32, i32, ptr, [3 x ptr] } +%struct.Hint.21.54.87.252.582.615.681.714.747.879.978.1209.2429.2462.2627.2660.2759.2891.2990.3028 = type { i32, ptr, ptr } %struct.Scanner.27.60.93.258.588.621.687.720.753.885.984.1215.2435.2468.2633.2666.2765.2897.2996.3034 = type { %struct.VecScanState.25.58.91.256.586.619.685.718.751.883.982.1213.2433.2466.2631.2664.2763.2895.2994.3032, %struct.VecScanStateTransition.26.59.92.257.587.620.686.719.752.884.983.1214.2434.2467.2632.2665.2764.2896.2995.3033 } -%struct.VecScanState.25.58.91.256.586.619.685.718.751.883.982.1213.2433.2466.2631.2664.2763.2895.2994.3032 = type { i32, i32, %struct.ScanState.24.57.90.255.585.618.684.717.750.882.981.1212.2432.2465.2630.2663.2762.2894.2993.3031**, [3 x %struct.ScanState.24.57.90.255.585.618.684.717.750.882.981.1212.2432.2465.2630.2663.2762.2894.2993.3031*] } -%struct.ScanState.24.57.90.255.585.618.684.717.750.882.981.1212.2432.2465.2630.2663.2762.2894.2993.3031 = type { i32, [256 x %struct.ScanState.24.57.90.255.585.618.684.717.750.882.981.1212.2432.2465.2630.2663.2762.2894.2993.3031*], %struct.VecAction.20.53.86.251.581.614.680.713.746.878.977.1208.2428.2461.2626.2659.2758.2890.2989.3027, %struct.VecAction.20.53.86.251.581.614.680.713.746.878.977.1208.2428.2461.2626.2659.2758.2890.2989.3027, [256 x %struct.ScanStateTransition.23.56.89.254.584.617.683.716.749.881.980.1211.2431.2464.2629.2662.2761.2893.2992.3030*] } +%struct.VecScanState.25.58.91.256.586.619.685.718.751.883.982.1213.2433.2466.2631.2664.2763.2895.2994.3032 = type { i32, i32, ptr, [3 x ptr] } +%struct.ScanState.24.57.90.255.585.618.684.717.750.882.981.1212.2432.2465.2630.2663.2762.2894.2993.3031 = type { i32, [256 x ptr], %struct.VecAction.20.53.86.251.581.614.680.713.746.878.977.1208.2428.2461.2626.2659.2758.2890.2989.3027, %struct.VecAction.20.53.86.251.581.614.680.713.746.878.977.1208.2428.2461.2626.2659.2758.2890.2989.3027, [256 x ptr] } %struct.ScanStateTransition.23.56.89.254.584.617.683.716.749.881.980.1211.2431.2464.2629.2662.2761.2893.2992.3030 = type { i32, %struct.VecAction.20.53.86.251.581.614.680.713.746.878.977.1208.2428.2461.2626.2659.2758.2890.2989.3027, %struct.VecAction.20.53.86.251.581.614.680.713.746.878.977.1208.2428.2461.2626.2659.2758.2890.2989.3027 } -%struct.VecScanStateTransition.26.59.92.257.587.620.686.719.752.884.983.1214.2434.2467.2632.2665.2764.2896.2995.3033 = type { i32, i32, %struct.ScanStateTransition.23.56.89.254.584.617.683.716.749.881.980.1211.2431.2464.2629.2662.2761.2893.2992.3030**, [3 x %struct.ScanStateTransition.23.56.89.254.584.617.683.716.749.881.980.1211.2431.2464.2629.2662.2761.2893.2992.3030*] } +%struct.VecScanStateTransition.26.59.92.257.587.620.686.719.752.884.983.1214.2434.2467.2632.2665.2764.2896.2995.3033 = type { i32, i32, ptr, [3 x ptr] } ; Function Attrs: nounwind -declare noalias i8* @malloc() #0 +declare noalias ptr @malloc() #0 ; Function Attrs: nounwind uwtable define void @build_eq() #1 { entry: - %call = tail call noalias i8* @malloc() #2 - %0 = bitcast i8* %call to %struct.EqState.41.74.107.272.602.635.701.734.767.899.998.1229.2449.2482.2647.2680.2779.2911.3010.3036* + %call = tail call noalias ptr @malloc() #2 br label %for.cond.preheader for.cond.preheader: ; preds = %for.cond.preheader, %entry @@ -60,31 +59,27 @@ for.cond.400.preheader: ; preds = %for.inc.397, %for.c ret void for.body.321: ; preds = %for.inc.397, %for.cond.316.preheader - %1 = load %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035*, %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035** undef, align 8 - %eq329 = getelementptr inbounds %struct.EqState.41.74.107.272.602.635.701.734.767.899.998.1229.2449.2482.2647.2680.2779.2911.3010.3036, %struct.EqState.41.74.107.272.602.635.701.734.767.899.998.1229.2449.2482.2647.2680.2779.2911.3010.3036* %0, i64 0, i32 0 + %0 = load ptr, ptr undef, align 8 br i1 undef, label %for.inc.397, label %land.lhs.true.331 land.lhs.true.331: ; preds = %for.body.321 br i1 undef, label %for.inc.397, label %if.then.334 if.then.334: ; preds = %land.lhs.true.331 - %2 = load %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018*, %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018** undef, align 8 + %1 = load ptr, ptr undef, align 8 br i1 undef, label %for.inc.397, label %land.lhs.true.369 land.lhs.true.369: ; preds = %if.then.334 - %n380 = getelementptr inbounds %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018, %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018* %2, i64 0, i32 6, i32 0 - %3 = load i32, i32* %n380, align 8 + %n380 = getelementptr inbounds %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018, ptr %1, i64 0, i32 6, i32 0 + %2 = load i32, ptr %n380, align 8 br i1 true, label %if.then.383, label %for.inc.397 if.then.383: ; preds = %land.lhs.true.369 - %reduces_with387 = getelementptr inbounds %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035, %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035* %1, i64 0, i32 15 - %4 = bitcast %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018** %reduces_with387 to i64* - %5 = load %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035*, %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035** %eq329, align 8 - %index389 = getelementptr inbounds %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035, %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035* %5, i64 0, i32 0 - %6 = load i32, i32* %index389, align 8 - store i32 0, i32* %index389, align 8 - %diff_rule392 = getelementptr inbounds %struct.EqState.41.74.107.272.602.635.701.734.767.899.998.1229.2449.2482.2647.2680.2779.2911.3010.3036, %struct.EqState.41.74.107.272.602.635.701.734.767.899.998.1229.2449.2482.2647.2680.2779.2911.3010.3036* %0, i64 0, i32 1 - %7 = bitcast %struct.Rule.33.66.99.264.594.627.693.726.759.891.990.1221.2441.2474.2639.2672.2771.2903.3002.3018** %diff_rule392 to i64* + %reduces_with387 = getelementptr inbounds %struct.State.28.61.94.259.589.622.688.721.754.886.985.1216.2436.2469.2634.2667.2766.2898.2997.3035, ptr %0, i64 0, i32 15 + %3 = load ptr, ptr %call, align 8 + %4 = load i32, ptr %3, align 8 + store i32 0, ptr %3, align 8 + %diff_rule392 = getelementptr inbounds %struct.EqState.41.74.107.272.602.635.701.734.767.899.998.1229.2449.2482.2647.2680.2779.2911.3010.3036, ptr %call, i64 0, i32 1 br label %for.inc.397 for.inc.397: ; preds = %if.then.383, %land.lhs.true.369, %if.then.334, %land.lhs.true.331, %for.body.321 diff --git a/polly/test/CodeGen/inv-load-lnt-crash-wrong-order-3.ll b/polly/test/CodeGen/inv-load-lnt-crash-wrong-order-3.ll index 426b59fda722..a573049c8f67 100644 --- a/polly/test/CodeGen/inv-load-lnt-crash-wrong-order-3.ll +++ b/polly/test/CodeGen/inv-load-lnt-crash-wrong-order-3.ll @@ -7,27 +7,25 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.colocated_params = type { i32, i32, i32, [6 x [33 x i64]], i8***, i64***, i16****, i8**, [6 x [33 x i64]], i8***, i64***, i16****, i8**, [6 x [33 x i64]], i8***, i64***, i16****, i8**, i8, i8** } -%struct.storable_picture9 = type { i32, i32, i32, i32, i32, [50 x [6 x [33 x i64]]], [50 x [6 x [33 x i64]]], [50 x [6 x [33 x i64]]], [50 x [6 x [33 x i64]]], i32, i32, i32, i32, i32, i32, i32, i32, i32, i16, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i16**, i16***, i8*, i16**, i8***, i64***, i64***, i16****, i8**, i8**, %struct.storable_picture9*, %struct.storable_picture9*, %struct.storable_picture9*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [2 x i32], i32, %struct.DecRefPicMarking_s*, i32 } -%struct.DecRefPicMarking_s = type { i32, i32, i32, i32, i32, %struct.DecRefPicMarking_s* } +%struct.colocated_params = type { i32, i32, i32, [6 x [33 x i64]], ptr, ptr, ptr, ptr, [6 x [33 x i64]], ptr, ptr, ptr, ptr, [6 x [33 x i64]], ptr, ptr, ptr, ptr, i8, ptr } +%struct.storable_picture9 = type { i32, i32, i32, i32, i32, [50 x [6 x [33 x i64]]], [50 x [6 x [33 x i64]]], [50 x [6 x [33 x i64]]], [50 x [6 x [33 x i64]]], i32, i32, i32, i32, i32, i32, i32, i32, i32, i16, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [2 x i32], i32, ptr, i32 } +%struct.DecRefPicMarking_s = type { i32, i32, i32, i32, i32, ptr } ; Function Attrs: nounwind uwtable -define void @compute_colocated(%struct.colocated_params* %p) #0 { +define void @compute_colocated(ptr %p) #0 { entry: - %tmp = load %struct.storable_picture9*, %struct.storable_picture9** undef, align 8 + %tmp = load ptr, ptr undef, align 8 br label %for.body.393 for.body.393: ; preds = %if.end.549, %entry br i1 undef, label %if.then.397, label %if.else.643 if.then.397: ; preds = %for.body.393 - %ref_idx456 = getelementptr inbounds %struct.storable_picture9, %struct.storable_picture9* %tmp, i64 0, i32 36 - %tmp1 = load i8***, i8**** %ref_idx456, align 8 - %tmp2 = load i8**, i8*** %tmp1, align 8 - %arrayidx458 = getelementptr inbounds i8*, i8** %tmp2, i64 0 - %tmp3 = load i8*, i8** %arrayidx458, align 8 - %arrayidx459 = getelementptr inbounds i8, i8* %tmp3, i64 0 - %tmp4 = load i8, i8* %arrayidx459, align 1 + %ref_idx456 = getelementptr inbounds %struct.storable_picture9, ptr %tmp, i64 0, i32 36 + %tmp1 = load ptr, ptr %ref_idx456, align 8 + %tmp2 = load ptr, ptr %tmp1, align 8 + %tmp3 = load ptr, ptr %tmp2, align 8 + %tmp4 = load i8, ptr %tmp3, align 1 %cmp461 = icmp eq i8 %tmp4, -1 br i1 %cmp461, label %if.then.463, label %if.else.476 @@ -35,35 +33,31 @@ if.then.463: ; preds = %if.then.397 br label %if.end.501 if.else.476: ; preds = %if.then.397 - %ref_id491 = getelementptr inbounds %struct.storable_picture9, %struct.storable_picture9* %tmp, i64 0, i32 38 - %tmp5 = load i64***, i64**** %ref_id491, align 8 + %ref_id491 = getelementptr inbounds %struct.storable_picture9, ptr %tmp, i64 0, i32 38 + %tmp5 = load ptr, ptr %ref_id491, align 8 br label %if.end.501 if.end.501: ; preds = %if.else.476, %if.then.463 - %tmp6 = load i8***, i8**** %ref_idx456, align 8 - %arrayidx505 = getelementptr inbounds i8**, i8*** %tmp6, i64 1 - %tmp7 = load i8**, i8*** %arrayidx505, align 8 - %arrayidx506 = getelementptr inbounds i8*, i8** %tmp7, i64 0 - %tmp8 = load i8*, i8** %arrayidx506, align 8 - %arrayidx507 = getelementptr inbounds i8, i8* %tmp8, i64 0 - %tmp9 = load i8, i8* %arrayidx507, align 1 + %tmp6 = load ptr, ptr %ref_idx456, align 8 + %arrayidx505 = getelementptr inbounds ptr, ptr %tmp6, i64 1 + %tmp7 = load ptr, ptr %arrayidx505, align 8 + %tmp8 = load ptr, ptr %tmp7, align 8 + %tmp9 = load i8, ptr %tmp8, align 1 %cmp509 = icmp eq i8 %tmp9, -1 - %ref_idx514 = getelementptr inbounds %struct.colocated_params, %struct.colocated_params* %p, i64 0, i32 4 - %tmp10 = load i8***, i8**** %ref_idx514, align 8 - %arrayidx515 = getelementptr inbounds i8**, i8*** %tmp10, i64 1 - %tmp11 = load i8**, i8*** %arrayidx515, align 8 - %arrayidx516 = getelementptr inbounds i8*, i8** %tmp11, i64 0 - %tmp12 = load i8*, i8** %arrayidx516, align 8 - %arrayidx517 = getelementptr inbounds i8, i8* %tmp12, i64 0 + %ref_idx514 = getelementptr inbounds %struct.colocated_params, ptr %p, i64 0, i32 4 + %tmp10 = load ptr, ptr %ref_idx514, align 8 + %arrayidx515 = getelementptr inbounds ptr, ptr %tmp10, i64 1 + %tmp11 = load ptr, ptr %arrayidx515, align 8 + %tmp12 = load ptr, ptr %tmp11, align 8 br i1 %cmp509, label %if.then.511, label %if.else.524 if.then.511: ; preds = %if.end.501 br label %if.end.549 if.else.524: ; preds = %if.end.501 - store i8 %tmp9, i8* %arrayidx517, align 1 - %ref_id539 = getelementptr inbounds %struct.storable_picture9, %struct.storable_picture9* %tmp, i64 0, i32 38 - %tmp13 = load i64***, i64**** %ref_id539, align 8 + store i8 %tmp9, ptr %tmp12, align 1 + %ref_id539 = getelementptr inbounds %struct.storable_picture9, ptr %tmp, i64 0, i32 38 + %tmp13 = load ptr, ptr %ref_id539, align 8 br label %if.end.549 if.end.549: ; preds = %if.else.524, %if.then.511 diff --git a/polly/test/CodeGen/inv-load-lnt-crash-wrong-order.ll b/polly/test/CodeGen/inv-load-lnt-crash-wrong-order.ll index bcc504c9e3f3..e05ca9951434 100644 --- a/polly/test/CodeGen/inv-load-lnt-crash-wrong-order.ll +++ b/polly/test/CodeGen/inv-load-lnt-crash-wrong-order.ll @@ -7,41 +7,40 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.EqState.41.74.107.338.503.866.932.965.998.1064.2052.2151.2184.2606 = type { %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605*, %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588*, %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605* } -%struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588 = type { i32, %struct.Production.29.62.95.326.491.854.920.953.986.1052.2040.2139.2172.2584*, i32, i32, i32, i32, %struct.anon.0.30.63.96.327.492.855.921.954.987.1053.2041.2140.2173.2585, %struct.Elem.12.45.78.309.474.837.903.936.969.1035.2023.2122.2155.2591*, %struct.Code.31.64.97.328.493.856.922.955.988.1054.2042.2141.2174.2586, %struct.Code.31.64.97.328.493.856.922.955.988.1054.2042.2141.2174.2586, %struct.anon.1.32.65.98.329.494.857.923.956.989.1055.2043.2142.2175.2587, i32, %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588* } -%struct.Production.29.62.95.326.491.854.920.953.986.1052.2040.2139.2172.2584 = type { i8*, i32, %struct.anon.9.42.75.306.471.834.900.933.966.1032.2020.2119.2152.2581, i32, i8, %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588*, [8 x %struct.Production.29.62.95.326.491.854.920.953.986.1052.2040.2139.2172.2584*], [8 x %struct.Declaration.13.46.79.310.475.838.904.937.970.1036.2024.2123.2156.2582*], %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605*, %struct.Elem.12.45.78.309.474.837.903.936.969.1035.2023.2122.2155.2591*, %struct.Term.18.51.84.315.480.843.909.942.975.1041.2029.2128.2161.2583*, %struct.Production.29.62.95.326.491.854.920.953.986.1052.2040.2139.2172.2584* } -%struct.anon.9.42.75.306.471.834.900.933.966.1032.2020.2119.2152.2581 = type { i32, i32, %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588**, [3 x %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588*] } -%struct.Declaration.13.46.79.310.475.838.904.937.970.1036.2024.2123.2156.2582 = type { %struct.Elem.12.45.78.309.474.837.903.936.969.1035.2023.2122.2155.2591*, i32, i32 } -%struct.Term.18.51.84.315.480.843.909.942.975.1041.2029.2128.2161.2583 = type { i32, i32, i32, i32, i32, i8*, i32, i8, %struct.Production.29.62.95.326.491.854.920.953.986.1052.2040.2139.2172.2584* } -%struct.anon.0.30.63.96.327.492.855.921.954.987.1053.2041.2140.2173.2585 = type { i32, i32, %struct.Elem.12.45.78.309.474.837.903.936.969.1035.2023.2122.2155.2591**, [3 x %struct.Elem.12.45.78.309.474.837.903.936.969.1035.2023.2122.2155.2591*] } -%struct.Elem.12.45.78.309.474.837.903.936.969.1035.2023.2122.2155.2591 = type { i32, i32, %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588*, %union.anon.11.44.77.308.473.836.902.935.968.1034.2022.2121.2154.2590 } +%struct.EqState.41.74.107.338.503.866.932.965.998.1064.2052.2151.2184.2606 = type { ptr, ptr, ptr } +%struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588 = type { i32, ptr, i32, i32, i32, i32, %struct.anon.0.30.63.96.327.492.855.921.954.987.1053.2041.2140.2173.2585, ptr, %struct.Code.31.64.97.328.493.856.922.955.988.1054.2042.2141.2174.2586, %struct.Code.31.64.97.328.493.856.922.955.988.1054.2042.2141.2174.2586, %struct.anon.1.32.65.98.329.494.857.923.956.989.1055.2043.2142.2175.2587, i32, ptr } +%struct.Production.29.62.95.326.491.854.920.953.986.1052.2040.2139.2172.2584 = type { ptr, i32, %struct.anon.9.42.75.306.471.834.900.933.966.1032.2020.2119.2152.2581, i32, i8, ptr, [8 x ptr], [8 x ptr], ptr, ptr, ptr, ptr } +%struct.anon.9.42.75.306.471.834.900.933.966.1032.2020.2119.2152.2581 = type { i32, i32, ptr, [3 x ptr] } +%struct.Declaration.13.46.79.310.475.838.904.937.970.1036.2024.2123.2156.2582 = type { ptr, i32, i32 } +%struct.Term.18.51.84.315.480.843.909.942.975.1041.2029.2128.2161.2583 = type { i32, i32, i32, i32, i32, ptr, i32, i8, ptr } +%struct.anon.0.30.63.96.327.492.855.921.954.987.1053.2041.2140.2173.2585 = type { i32, i32, ptr, [3 x ptr] } +%struct.Elem.12.45.78.309.474.837.903.936.969.1035.2023.2122.2155.2591 = type { i32, i32, ptr, %union.anon.11.44.77.308.473.836.902.935.968.1034.2022.2121.2154.2590 } %union.anon.11.44.77.308.473.836.902.935.968.1034.2022.2121.2154.2590 = type { %struct.Unresolved.10.43.76.307.472.835.901.934.967.1033.2021.2120.2153.2589 } -%struct.Unresolved.10.43.76.307.472.835.901.934.967.1033.2021.2120.2153.2589 = type { i8*, i32 } -%struct.Code.31.64.97.328.493.856.922.955.988.1054.2042.2141.2174.2586 = type { i8*, i32 } -%struct.anon.1.32.65.98.329.494.857.923.956.989.1055.2043.2142.2175.2587 = type { i32, i32, %struct.Code.31.64.97.328.493.856.922.955.988.1054.2042.2141.2174.2586**, [3 x %struct.Code.31.64.97.328.493.856.922.955.988.1054.2042.2141.2174.2586*] } -%struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605 = type { i32, i64, %struct.anon.2.14.47.80.311.476.839.905.938.971.1037.2025.2124.2157.2592, %struct.anon.3.15.48.81.312.477.840.906.939.972.1038.2026.2125.2158.2593, %struct.VecGoto.17.50.83.314.479.842.908.941.974.1040.2028.2127.2160.2595, %struct.VecAction.20.53.86.317.482.845.911.944.977.1043.2031.2130.2163.2597, %struct.VecAction.20.53.86.317.482.845.911.944.977.1043.2031.2130.2163.2597, %struct.VecHint.22.55.88.319.484.847.913.946.979.1045.2033.2132.2165.2599, %struct.VecHint.22.55.88.319.484.847.913.946.979.1045.2033.2132.2165.2599, %struct.Scanner.27.60.93.324.489.852.918.951.984.1050.2038.2137.2170.2604, i8, i8*, i32, %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605*, %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605*, %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588*, %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588* } -%struct.anon.2.14.47.80.311.476.839.905.938.971.1037.2025.2124.2157.2592 = type { i32, i32, %struct.Elem.12.45.78.309.474.837.903.936.969.1035.2023.2122.2155.2591**, [3 x %struct.Elem.12.45.78.309.474.837.903.936.969.1035.2023.2122.2155.2591*] } -%struct.anon.3.15.48.81.312.477.840.906.939.972.1038.2026.2125.2158.2593 = type { i32, i32, %struct.Elem.12.45.78.309.474.837.903.936.969.1035.2023.2122.2155.2591**, [3 x %struct.Elem.12.45.78.309.474.837.903.936.969.1035.2023.2122.2155.2591*] } -%struct.VecGoto.17.50.83.314.479.842.908.941.974.1040.2028.2127.2160.2595 = type { i32, i32, %struct.Goto.16.49.82.313.478.841.907.940.973.1039.2027.2126.2159.2594**, [3 x %struct.Goto.16.49.82.313.478.841.907.940.973.1039.2027.2126.2159.2594*] } -%struct.Goto.16.49.82.313.478.841.907.940.973.1039.2027.2126.2159.2594 = type { %struct.Elem.12.45.78.309.474.837.903.936.969.1035.2023.2122.2155.2591*, %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605* } -%struct.VecAction.20.53.86.317.482.845.911.944.977.1043.2031.2130.2163.2597 = type { i32, i32, %struct.Action.19.52.85.316.481.844.910.943.976.1042.2030.2129.2162.2596**, [3 x %struct.Action.19.52.85.316.481.844.910.943.976.1042.2030.2129.2162.2596*] } -%struct.Action.19.52.85.316.481.844.910.943.976.1042.2030.2129.2162.2596 = type { i32, %struct.Term.18.51.84.315.480.843.909.942.975.1041.2029.2128.2161.2583*, %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588*, %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605*, i32, i8* } -%struct.VecHint.22.55.88.319.484.847.913.946.979.1045.2033.2132.2165.2599 = type { i32, i32, %struct.Hint.21.54.87.318.483.846.912.945.978.1044.2032.2131.2164.2598**, [3 x %struct.Hint.21.54.87.318.483.846.912.945.978.1044.2032.2131.2164.2598*] } -%struct.Hint.21.54.87.318.483.846.912.945.978.1044.2032.2131.2164.2598 = type { i32, %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605*, %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588* } +%struct.Unresolved.10.43.76.307.472.835.901.934.967.1033.2021.2120.2153.2589 = type { ptr, i32 } +%struct.Code.31.64.97.328.493.856.922.955.988.1054.2042.2141.2174.2586 = type { ptr, i32 } +%struct.anon.1.32.65.98.329.494.857.923.956.989.1055.2043.2142.2175.2587 = type { i32, i32, ptr, [3 x ptr] } +%struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605 = type { i32, i64, %struct.anon.2.14.47.80.311.476.839.905.938.971.1037.2025.2124.2157.2592, %struct.anon.3.15.48.81.312.477.840.906.939.972.1038.2026.2125.2158.2593, %struct.VecGoto.17.50.83.314.479.842.908.941.974.1040.2028.2127.2160.2595, %struct.VecAction.20.53.86.317.482.845.911.944.977.1043.2031.2130.2163.2597, %struct.VecAction.20.53.86.317.482.845.911.944.977.1043.2031.2130.2163.2597, %struct.VecHint.22.55.88.319.484.847.913.946.979.1045.2033.2132.2165.2599, %struct.VecHint.22.55.88.319.484.847.913.946.979.1045.2033.2132.2165.2599, %struct.Scanner.27.60.93.324.489.852.918.951.984.1050.2038.2137.2170.2604, i8, ptr, i32, ptr, ptr, ptr, ptr } +%struct.anon.2.14.47.80.311.476.839.905.938.971.1037.2025.2124.2157.2592 = type { i32, i32, ptr, [3 x ptr] } +%struct.anon.3.15.48.81.312.477.840.906.939.972.1038.2026.2125.2158.2593 = type { i32, i32, ptr, [3 x ptr] } +%struct.VecGoto.17.50.83.314.479.842.908.941.974.1040.2028.2127.2160.2595 = type { i32, i32, ptr, [3 x ptr] } +%struct.Goto.16.49.82.313.478.841.907.940.973.1039.2027.2126.2159.2594 = type { ptr, ptr } +%struct.VecAction.20.53.86.317.482.845.911.944.977.1043.2031.2130.2163.2597 = type { i32, i32, ptr, [3 x ptr] } +%struct.Action.19.52.85.316.481.844.910.943.976.1042.2030.2129.2162.2596 = type { i32, ptr, ptr, ptr, i32, ptr } +%struct.VecHint.22.55.88.319.484.847.913.946.979.1045.2033.2132.2165.2599 = type { i32, i32, ptr, [3 x ptr] } +%struct.Hint.21.54.87.318.483.846.912.945.978.1044.2032.2131.2164.2598 = type { i32, ptr, ptr } %struct.Scanner.27.60.93.324.489.852.918.951.984.1050.2038.2137.2170.2604 = type { %struct.VecScanState.25.58.91.322.487.850.916.949.982.1048.2036.2135.2168.2602, %struct.VecScanStateTransition.26.59.92.323.488.851.917.950.983.1049.2037.2136.2169.2603 } -%struct.VecScanState.25.58.91.322.487.850.916.949.982.1048.2036.2135.2168.2602 = type { i32, i32, %struct.ScanState.24.57.90.321.486.849.915.948.981.1047.2035.2134.2167.2601**, [3 x %struct.ScanState.24.57.90.321.486.849.915.948.981.1047.2035.2134.2167.2601*] } -%struct.ScanState.24.57.90.321.486.849.915.948.981.1047.2035.2134.2167.2601 = type { i32, [256 x %struct.ScanState.24.57.90.321.486.849.915.948.981.1047.2035.2134.2167.2601*], %struct.VecAction.20.53.86.317.482.845.911.944.977.1043.2031.2130.2163.2597, %struct.VecAction.20.53.86.317.482.845.911.944.977.1043.2031.2130.2163.2597, [256 x %struct.ScanStateTransition.23.56.89.320.485.848.914.947.980.1046.2034.2133.2166.2600*] } +%struct.VecScanState.25.58.91.322.487.850.916.949.982.1048.2036.2135.2168.2602 = type { i32, i32, ptr, [3 x ptr] } +%struct.ScanState.24.57.90.321.486.849.915.948.981.1047.2035.2134.2167.2601 = type { i32, [256 x ptr], %struct.VecAction.20.53.86.317.482.845.911.944.977.1043.2031.2130.2163.2597, %struct.VecAction.20.53.86.317.482.845.911.944.977.1043.2031.2130.2163.2597, [256 x ptr] } %struct.ScanStateTransition.23.56.89.320.485.848.914.947.980.1046.2034.2133.2166.2600 = type { i32, %struct.VecAction.20.53.86.317.482.845.911.944.977.1043.2031.2130.2163.2597, %struct.VecAction.20.53.86.317.482.845.911.944.977.1043.2031.2130.2163.2597 } -%struct.VecScanStateTransition.26.59.92.323.488.851.917.950.983.1049.2037.2136.2169.2603 = type { i32, i32, %struct.ScanStateTransition.23.56.89.320.485.848.914.947.980.1046.2034.2133.2166.2600**, [3 x %struct.ScanStateTransition.23.56.89.320.485.848.914.947.980.1046.2034.2133.2166.2600*] } +%struct.VecScanStateTransition.26.59.92.323.488.851.917.950.983.1049.2037.2136.2169.2603 = type { i32, i32, ptr, [3 x ptr] } ; Function Attrs: nounwind -declare noalias i8* @malloc() #0 +declare noalias ptr @malloc() #0 ; Function Attrs: nounwind uwtable define void @build_eq() #1 { entry: - %call = tail call noalias i8* @malloc() #2 - %0 = bitcast i8* %call to %struct.EqState.41.74.107.338.503.866.932.965.998.1064.2052.2151.2184.2606* + %call = tail call noalias ptr @malloc() #2 br label %for.cond.preheader for.cond.preheader: ; preds = %for.cond.preheader, %entry @@ -54,30 +53,28 @@ for.cond.400.preheader: ; preds = %for.inc.397, %for.c br i1 undef, label %for.end.423, label %for.body.405 for.body.321: ; preds = %for.inc.397, %for.cond.316.preheader - %eq329 = getelementptr inbounds %struct.EqState.41.74.107.338.503.866.932.965.998.1064.2052.2151.2184.2606, %struct.EqState.41.74.107.338.503.866.932.965.998.1064.2052.2151.2184.2606* %0, i64 0, i32 0 br i1 undef, label %for.inc.397, label %land.lhs.true.331 land.lhs.true.331: ; preds = %for.body.321 br i1 undef, label %for.inc.397, label %if.then.334 if.then.334: ; preds = %land.lhs.true.331 - %1 = load %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605*, %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605** %eq329, align 8 - %2 = load %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588*, %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588** undef, align 8 + %0 = load ptr, ptr %call, align 8 + %1 = load ptr, ptr undef, align 8 br i1 undef, label %for.inc.397, label %land.lhs.true.369 land.lhs.true.369: ; preds = %if.then.334 - %n380 = getelementptr inbounds %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588, %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588* %2, i64 0, i32 6, i32 0 - %3 = load i32, i32* %n380, align 8 - %cmp381 = icmp eq i32 %3, 2 + %n380 = getelementptr inbounds %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588, ptr %1, i64 0, i32 6, i32 0 + %2 = load i32, ptr %n380, align 8 + %cmp381 = icmp eq i32 %2, 2 br i1 %cmp381, label %if.then.383, label %for.inc.397 if.then.383: ; preds = %land.lhs.true.369 - %reduces_to385 = getelementptr inbounds %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605, %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605* %1, i64 0, i32 14 - store %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605* undef, %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605** %reduces_to385, align 8 - %diff_rule386 = getelementptr inbounds %struct.EqState.41.74.107.338.503.866.932.965.998.1064.2052.2151.2184.2606, %struct.EqState.41.74.107.338.503.866.932.965.998.1064.2052.2151.2184.2606* %0, i64 0, i32 1 - %4 = bitcast %struct.Rule.33.66.99.330.495.858.924.957.990.1056.2044.2143.2176.2588** %diff_rule386 to i64* - %5 = load i64, i64* %4, align 8 - %6 = load %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605*, %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605** %eq329, align 8 + %reduces_to385 = getelementptr inbounds %struct.State.28.61.94.325.490.853.919.952.985.1051.2039.2138.2171.2605, ptr %0, i64 0, i32 14 + store ptr undef, ptr %reduces_to385, align 8 + %diff_rule386 = getelementptr inbounds %struct.EqState.41.74.107.338.503.866.932.965.998.1064.2052.2151.2184.2606, ptr %call, i64 0, i32 1 + %3 = load i64, ptr %diff_rule386, align 8 + %4 = load ptr, ptr %call, align 8 br label %for.inc.397 for.inc.397: ; preds = %if.then.383, %land.lhs.true.369, %if.then.334, %land.lhs.true.331, %for.body.321 diff --git a/polly/test/CodeGen/invariant-load-dimension.ll b/polly/test/CodeGen/invariant-load-dimension.ll index 4c9399dcf60f..7793c3b3bee3 100644 --- a/polly/test/CodeGen/invariant-load-dimension.ll +++ b/polly/test/CodeGen/invariant-load-dimension.ll @@ -6,7 +6,7 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n8:16:32-S64" %S = type { i32, i32, [12 x %L] } %L = type { i32, i32, double, i32, i32, i32, i32, i32 } -define void @test(%S* %cpi, i1 %b) { +define void @test(ptr %cpi, i1 %b) { ; SCOPS-LABEL: Region: %if.then14---%exit ; SCOPS: Invariant Accesses: { ; SCOPS-NEXT: ReadAccess := [Reduction Type: NONE] [Scalar: 0] @@ -26,26 +26,25 @@ define void @test(%S* %cpi, i1 %b) { ; CODEGEN-NEXT: br i1 false entry: - %nt = getelementptr inbounds %S, %S* %cpi, i32 0, i32 1 + %nt = getelementptr inbounds %S, ptr %cpi, i32 0, i32 1 br i1 %b, label %if.then14, label %exit if.then14: - %ns = getelementptr inbounds %S, %S* %cpi, i32 0, i32 0 - %l0 = load i32, i32* %ns, align 8 + %l0 = load i32, ptr %cpi, align 8 %cmp12.i = icmp sgt i32 %l0, 0 br i1 %cmp12.i, label %for.body.lr.ph.i, label %exit for.body.lr.ph.i: - %l1 = load i32, i32* %nt, align 4 + %l1 = load i32, ptr %nt, align 4 br label %for.body.i for.body.i: %phi = phi i32 [ 0, %for.body.lr.ph.i ], [ %inc, %for.body.i ] %mul.i163 = mul nsw i32 %phi, %l1 - %cv = getelementptr inbounds %S, %S* %cpi, i32 0, i32 2, i32 %mul.i163, i32 0 - store i32 0, i32* %cv, align 8 + %cv = getelementptr inbounds %S, ptr %cpi, i32 0, i32 2, i32 %mul.i163, i32 0 + store i32 0, ptr %cv, align 8 %inc = add nuw nsw i32 %phi, 1 - %l2 = load i32, i32* %ns, align 8 + %l2 = load i32, ptr %cpi, align 8 %cmp.i164 = icmp slt i32 %inc, %l2 br i1 %cmp.i164, label %for.body.i, label %exit diff --git a/polly/test/CodeGen/invariant-load-preload-base-pointer-origin-first.ll b/polly/test/CodeGen/invariant-load-preload-base-pointer-origin-first.ll index f9054954c6eb..474100995fd8 100644 --- a/polly/test/CodeGen/invariant-load-preload-base-pointer-origin-first.ll +++ b/polly/test/CodeGen/invariant-load-preload-base-pointer-origin-first.ll @@ -5,8 +5,8 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -@TOP = external global i64*, align 8 -@BOT = external global i64*, align 8 +@TOP = external global ptr, align 8 +@BOT = external global ptr, align 8 define void @RemoveConstraintVCG() { entry: @@ -28,23 +28,23 @@ land.lhs.true: ; preds = %for.body.11 br i1 undef, label %if.then.20, label %for.inc if.then.20: ; preds = %land.lhs.true - %tmp = load i64*, i64** @TOP, align 8 - %tmp1 = load i64, i64* %tmp, align 8 + %tmp = load ptr, ptr @TOP, align 8 + %tmp1 = load i64, ptr %tmp, align 8 %cmp25 = icmp eq i64 %tmp1, 1 %cmp47 = icmp eq i64 %tmp1, 0 br i1 false, label %if.end.117, label %lor.lhs.false.85 lor.lhs.false.85: ; preds = %if.then.20 %add94 = add i64 %tmp1, 1 - %tmp2 = load i64*, i64** @TOP, align 8 - %arrayidx95 = getelementptr inbounds i64, i64* %tmp2, i64 %add94 - %tmp3 = load i64, i64* %arrayidx95, align 8 + %tmp2 = load ptr, ptr @TOP, align 8 + %arrayidx95 = getelementptr inbounds i64, ptr %tmp2, i64 %add94 + %tmp3 = load i64, ptr %arrayidx95, align 8 br i1 false, label %if.else.103, label %land.lhs.true.97 land.lhs.true.97: ; preds = %lor.lhs.false.85 - %tmp4 = load i64*, i64** @BOT, align 8 - %arrayidx99 = getelementptr inbounds i64, i64* %tmp4, i64 %add94 - %tmp5 = load i64, i64* %arrayidx99, align 8 + %tmp4 = load ptr, ptr @BOT, align 8 + %arrayidx99 = getelementptr inbounds i64, ptr %tmp4, i64 %add94 + %tmp5 = load i64, ptr %arrayidx99, align 8 %tobool100 = icmp eq i64 %tmp5, 0 br i1 %tobool100, label %if.else.103, label %if.then.101 @@ -52,14 +52,14 @@ if.then.101: ; preds = %land.lhs.true.97 br label %if.end.117 if.else.103: ; preds = %land.lhs.true.97, %lor.lhs.false.85 - %tmp6 = load i64*, i64** @TOP, align 8 - %arrayidx105 = getelementptr inbounds i64, i64* %tmp6, i64 %add94 - %tmp7 = load i64, i64* %arrayidx105, align 8 + %tmp6 = load ptr, ptr @TOP, align 8 + %arrayidx105 = getelementptr inbounds i64, ptr %tmp6, i64 %add94 + %tmp7 = load i64, ptr %arrayidx105, align 8 br i1 false, label %lor.lhs.false.107, label %if.else.112 lor.lhs.false.107: ; preds = %if.else.103 - %tmp8 = load i64*, i64** @BOT, align 8 - %arrayidx109 = getelementptr inbounds i64, i64* %tmp8, i64 %add94 + %tmp8 = load ptr, ptr @BOT, align 8 + %arrayidx109 = getelementptr inbounds i64, ptr %tmp8, i64 %add94 br i1 false, label %if.end.117, label %if.else.112 if.else.112: ; preds = %lor.lhs.false.107, %if.else.103 diff --git a/polly/test/CodeGen/invariant_cannot_handle_void.ll b/polly/test/CodeGen/invariant_cannot_handle_void.ll index db3853372f3c..de5d13d6a69a 100644 --- a/polly/test/CodeGen/invariant_cannot_handle_void.ll +++ b/polly/test/CodeGen/invariant_cannot_handle_void.ll @@ -17,16 +17,14 @@ ; SCOP: } ; ; CHECK-LABEL: polly.preload.begin: -; CHECK-NEXT: %polly.access.cast.buff = bitcast i8* %buff to i16* -; CHECK-NEXT: %polly.access.buff = getelementptr i16, i16* %polly.access.cast.buff, i64 31 -; CHECK-NEXT: %polly.access.buff.cast = bitcast i16* %polly.access.buff to i32* -; CHECK-NEXT: %polly.access.buff.load = load i32, i32* %polly.access.buff.cast, align 4 -; CHECK-NEXT: store i32 %polly.access.buff.load, i32* %tmp1.preload.s2a +; CHECK-NEXT: %polly.access.buff = getelementptr i16, ptr %buff, i64 31 +; CHECK-NEXT: %polly.access.buff.load = load i32, ptr %polly.access.buff, align 4 +; CHECK-NEXT: store i32 %polly.access.buff.load, ptr %tmp1.preload.s2a ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @sudecrypt(i8* %buff) #0 { +define void @sudecrypt(ptr %buff) #0 { entry: br i1 undef, label %cleanup, label %if.end @@ -37,9 +35,8 @@ if.then.5: ; preds = %if.end unreachable if.end.6: ; preds = %if.end - %add.ptr = getelementptr inbounds i8, i8* %buff, i64 62 - %tmp = bitcast i8* %add.ptr to i32* - %tmp1 = load i32, i32* %tmp, align 4, !tbaa !1 + %add.ptr = getelementptr inbounds i8, ptr %buff, i64 62 + %tmp1 = load i32, ptr %add.ptr, align 4, !tbaa !1 br i1 false, label %if.then.13, label %switch.early.test switch.early.test: ; preds = %if.end.6 diff --git a/polly/test/CodeGen/invariant_load_alias_metadata.ll b/polly/test/CodeGen/invariant_load_alias_metadata.ll index e71349b86f4e..5a82d82d43f8 100644 --- a/polly/test/CodeGen/invariant_load_alias_metadata.ll +++ b/polly/test/CodeGen/invariant_load_alias_metadata.ll @@ -4,7 +4,7 @@ ; This test case checks whether Polly generates alias metadata in case of ; the ublas gemm kernel and polly-invariant-load-hoisting. ; -; CHECK: store float 4.200000e+01, float* %polly.access.A.load, align 4, !alias.scope !3, !noalias !0 +; CHECK: store float 4.200000e+01, ptr %polly.access.A.load, align 4, !alias.scope !3, !noalias !0 ; ; CHECK: !0 = !{!1} ; CHECK-NEXT: !1 = distinct !{!1, !2, !"polly.alias.scope.MemRef_A"} @@ -15,15 +15,15 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @nometadata(float** %A) { +define void @nometadata(ptr %A) { entry: br label %for for: %indvar = phi i64 [0, %entry], [%indvar.next, %for] %indvar.next = add i64 %indvar, 1 - %ptrA = load float*, float** %A - store float 42.0, float* %ptrA + %ptrA = load ptr, ptr %A + store float 42.0, ptr %ptrA %icmp = icmp sle i64 %indvar, 1024 br i1 %icmp, label %for, label %exit diff --git a/polly/test/CodeGen/invariant_load_different_sized_types.ll b/polly/test/CodeGen/invariant_load_different_sized_types.ll index b2e7afd1a6f7..5b91a1901061 100644 --- a/polly/test/CodeGen/invariant_load_different_sized_types.ll +++ b/polly/test/CodeGen/invariant_load_different_sized_types.ll @@ -4,10 +4,9 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; CHECK: polly.preload.begin: ; preds = %polly.split_new_and_old -; CHECK-NEXT: %polly.access.cast.tmp2 = bitcast %struct.hoge* %tmp2 to i32* -; CHECK-NEXT: %polly.access.tmp2 = getelementptr i32, i32* %polly.access.cast.tmp2, i64 1 -; CHECK-NEXT: %polly.access.tmp2.load = load i32, i32* %polly.access.tmp2, align 1 -; CHECK-NEXT: store i32 %polly.access.tmp2.load, i32* %tmp.preload.s2a +; CHECK-NEXT: %polly.access.tmp2 = getelementptr i32, ptr %tmp2, i64 1 +; CHECK-NEXT: %polly.access.tmp2.load = load i32, ptr %polly.access.tmp2, align 1 +; CHECK-NEXT: store i32 %polly.access.tmp2.load, ptr %tmp.preload.s2a %struct.hoge = type { [4 x i8], i32, i32, i32, i32, i32, [16 x i8], [16 x i8], i64, i64, i64, i64, i64 } @@ -19,15 +18,15 @@ bb: br label %bb3 bb3: ; preds = %bb - %tmp4 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp2, i64 0, i32 10 + %tmp4 = getelementptr inbounds %struct.hoge, ptr %tmp2, i64 0, i32 10 %tmp5 = add nsw i32 undef, 1 - %tmp6 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp2, i64 0, i32 1 - %tmp = load i32, i32* %tmp6, align 1, !tbaa !1 + %tmp6 = getelementptr inbounds %struct.hoge, ptr %tmp2, i64 0, i32 1 + %tmp = load i32, ptr %tmp6, align 1, !tbaa !1 %tmp7 = icmp slt i32 %tmp, 3 br i1 %tmp7, label %bb8, label %bb10 bb8: ; preds = %bb3 - %tmp9 = load i64, i64* %tmp4, align 1, !tbaa !7 + %tmp9 = load i64, ptr %tmp4, align 1, !tbaa !7 br label %bb10 bb10: ; preds = %bb8, %bb3 diff --git a/polly/test/CodeGen/invariant_load_escaping_second_scop.ll b/polly/test/CodeGen/invariant_load_escaping_second_scop.ll index 4e042ec47ac2..c0ea888acdde 100644 --- a/polly/test/CodeGen/invariant_load_escaping_second_scop.ll +++ b/polly/test/CodeGen/invariant_load_escaping_second_scop.ll @@ -23,17 +23,17 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %B) { +define void @f(ptr %A, ptr %B) { entry: br label %stmt.S stmt.S: ; preds = %do.cond, %entry %indvars.iv2 = phi i64 [ %indvars.iv.next3, %do.cond ], [ 0, %entry ] - %tmp = load i32, i32* %B, align 4 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv2 - %tmp4 = load i32, i32* %arrayidx, align 4 + %tmp = load i32, ptr %B, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv2 + %tmp4 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp4, %tmp - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %do.cond do.cond: ; preds = %do.body @@ -49,10 +49,10 @@ do.end: ; preds = %do.cond stmt.P: ; preds = %do.cond.5, %do.end %indvars.iv = phi i64 [ %indvars.iv.next, %do.cond.5 ], [ %tmp6, %do.end ] - %arrayidx3 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp7 = load i32, i32* %arrayidx3, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp7 = load i32, ptr %arrayidx3, align 4 %inc4 = add nsw i32 %tmp7, 1 - store i32 %inc4, i32* %arrayidx3, align 4 + store i32 %inc4, ptr %arrayidx3, align 4 br label %do.cond.5 do.cond.5: ; preds = %do.body.1 diff --git a/polly/test/CodeGen/invariant_load_loop_ub.ll b/polly/test/CodeGen/invariant_load_loop_ub.ll index 0bd19276e42e..ab9aa0dc69a7 100644 --- a/polly/test/CodeGen/invariant_load_loop_ub.ll +++ b/polly/test/CodeGen/invariant_load_loop_ub.ll @@ -9,20 +9,20 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %UB) { +define void @f(ptr %A, ptr %UB) { bb: br label %bb1 bb1: ; preds = %bb6, %bb %indvars.iv = phi i64 [ %indvars.iv.next, %bb6 ], [ 0, %bb ] - %tmp = load i32, i32* %UB, align 4 + %tmp = load i32, ptr %UB, align 4 %tmp2 = sext i32 %tmp to i64 %tmp3 = icmp slt i64 %indvars.iv, %tmp2 br i1 %tmp3, label %bb4, label %bb7 bb4: ; preds = %bb1 - %tmp5 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 0, i32* %tmp5, align 4 + %tmp5 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 0, ptr %tmp5, align 4 br label %bb6 bb6: ; preds = %bb4 diff --git a/polly/test/CodeGen/invariant_load_not_executed_but_in_parameters.ll b/polly/test/CodeGen/invariant_load_not_executed_but_in_parameters.ll index a79dbc68378f..08ff0871b610 100644 --- a/polly/test/CodeGen/invariant_load_not_executed_but_in_parameters.ll +++ b/polly/test/CodeGen/invariant_load_not_executed_but_in_parameters.ll @@ -5,24 +5,24 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.Exp.204.248.358 = type { %struct.Exp_.200.244.354*, i32, i32, i32, %struct.Exp.204.248.358*, %struct.Exp.204.248.358*, %union.anon.2.201.245.355, %union.anon.3.202.246.356, %union.anon.4.203.247.357 } -%struct.Exp_.200.244.354 = type { i32, i32, i32, i32, %struct.Id.199.243.353* } -%struct.Id.199.243.353 = type { i8*, i32, i32, i32, %union.anon.1.198.242.352 } +%struct.Exp.204.248.358 = type { ptr, i32, i32, i32, ptr, ptr, %union.anon.2.201.245.355, %union.anon.3.202.246.356, %union.anon.4.203.247.357 } +%struct.Exp_.200.244.354 = type { i32, i32, i32, i32, ptr } +%struct.Id.199.243.353 = type { ptr, i32, i32, i32, %union.anon.1.198.242.352 } %union.anon.1.198.242.352 = type { [2 x i64] } -%union.anon.2.201.245.355 = type { %struct.Exp.204.248.358* } +%union.anon.2.201.245.355 = type { ptr } %union.anon.3.202.246.356 = type { i32 } -%union.anon.4.203.247.357 = type { %struct.Exp.204.248.358** } -%struct.Classfile.218.262.372 = type { %struct._IO_FILE.206.250.360*, %struct._IO_FILE.206.250.360*, i32, i32, i32, %struct.ClassVersion.207.251.361, %struct.ConstPool.210.254.364, %struct.AccessFlags.211.255.365, i16, i8*, i8*, i16, i8*, i16, i16*, i16, %struct.field_info.212.256.366**, i16, %struct.method_info.217.261.371**, i8*, i16, i8**, i8* } -%struct._IO_FILE.206.250.360 = type { i32, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, %struct._IO_marker.205.249.359*, %struct._IO_FILE.206.250.360*, i32, i32, i64, i16, i8, [1 x i8], i8*, i64, i8*, i8*, i8*, i8*, i64, i32, [20 x i8] } -%struct._IO_marker.205.249.359 = type { %struct._IO_marker.205.249.359*, %struct._IO_FILE.206.250.360*, i32 } +%union.anon.4.203.247.357 = type { ptr } +%struct.Classfile.218.262.372 = type { ptr, ptr, i32, i32, i32, %struct.ClassVersion.207.251.361, %struct.ConstPool.210.254.364, %struct.AccessFlags.211.255.365, i16, ptr, ptr, i16, ptr, i16, ptr, i16, ptr, i16, ptr, ptr, i16, ptr, ptr } +%struct._IO_FILE.206.250.360 = type { i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i64, i16, i8, [1 x i8], ptr, i64, ptr, ptr, ptr, ptr, i64, i32, [20 x i8] } +%struct._IO_marker.205.249.359 = type { ptr, ptr, i32 } %struct.ClassVersion.207.251.361 = type { i16, i16 } -%struct.ConstPool.210.254.364 = type { i16, %struct.cp_info.209.253.363* } +%struct.ConstPool.210.254.364 = type { i16, ptr } %struct.cp_info.209.253.363 = type { i8, %union.anon.208.252.362 } %union.anon.208.252.362 = type { i64 } %struct.AccessFlags.211.255.365 = type { i16 } -%struct.field_info.212.256.366 = type <{ %struct.AccessFlags.211.255.365, [6 x i8], i8*, i8*, i32, i16, [2 x i8] }> -%struct.method_info.217.261.371 = type { %struct.AccessFlags.211.255.365, i8*, i8*, i8, i8, i32, i8*, i16, %struct.Block.214.258.368*, i16, %struct.LineNumberTableEntry.215.259.369*, i16, %struct.LocalVariableTableEntry.216.260.370*, i8**, i8**, i32*, i32*, i8*, i32, i32, i32* } -%struct.Block.214.258.368 = type { i32, i16, i16, %union.anon.0.213.257.367, i16, %struct.Exp.204.248.358* } +%struct.field_info.212.256.366 = type <{ %struct.AccessFlags.211.255.365, [6 x i8], ptr, ptr, i32, i16, [2 x i8] }> +%struct.method_info.217.261.371 = type { %struct.AccessFlags.211.255.365, ptr, ptr, i8, i8, i32, ptr, i16, ptr, i16, ptr, i16, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, ptr } +%struct.Block.214.258.368 = type { i32, i16, i16, %union.anon.0.213.257.367, i16, ptr } %union.anon.0.213.257.367 = type { i32 } %struct.LineNumberTableEntry.215.259.369 = type { i16, i16 } %struct.LocalVariableTableEntry.216.260.370 = type { i16, i16, i16, i16, i16 } @@ -30,12 +30,12 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @currpc = external global i32, align 4 @bufflength = external global i32, align 4 -@inbuff = external global i8*, align 8 -@stkptr = external global %struct.Exp.204.248.358**, align 8 -@donestkptr = external global %struct.Exp.204.248.358**, align 8 +@inbuff = external global ptr, align 8 +@stkptr = external global ptr, align 8 +@donestkptr = external global ptr, align 8 ; Function Attrs: uwtable -define i32 @_Z13dotableswitchP9Classfile(%struct.Classfile.218.262.372* %c) #0 personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) { +define i32 @_Z13dotableswitchP9Classfile(ptr %c) #0 personality ptr @__gxx_personality_v0 { entry: br label %entry.split @@ -48,7 +48,7 @@ while.body.lr.ph: ; preds = %entry.split br label %while.body while.body: ; preds = %while.body, %while.body.lr.ph - %0 = load i32, i32* @currpc, align 4 + %0 = load i32, ptr @currpc, align 4 %rem = and i32 %0, 3 %tobool = icmp eq i32 %rem, 0 br i1 %tobool, label %while.cond.while.end_crit_edge, label %while.body @@ -57,7 +57,7 @@ while.cond.while.end_crit_edge: ; preds = %while.body br label %while.end while.end: ; preds = %while.cond.while.end_crit_edge, %entry.split - invoke void @_ZN3ExpC2Ejj7Exptype4Type2OpPS_jjP4Case(%struct.Exp.204.248.358* nonnull undef, i32 %sub, i32 undef, i32 9, i32 0, i32 39, %struct.Exp.204.248.358* undef, i32 undef, i32 undef, %struct.Case.219.263.373* nonnull undef) + invoke void @_ZN3ExpC2Ejj7Exptype4Type2OpPS_jjP4Case(ptr nonnull undef, i32 %sub, i32 undef, i32 9, i32 0, i32 39, ptr undef, i32 undef, i32 undef, ptr nonnull undef) to label %invoke.cont unwind label %lpad invoke.cont: ; preds = %while.end @@ -70,9 +70,9 @@ for.body: ; preds = %for.body, %for.body br i1 undef, label %for.cond.for.end_crit_edge, label %for.body lpad: ; preds = %while.end - %1 = landingpad { i8*, i32 } + %1 = landingpad { ptr, i32 } cleanup - resume { i8*, i32 } undef + resume { ptr, i32 } undef for.cond.for.end_crit_edge: ; preds = %for.body br label %for.end @@ -85,24 +85,24 @@ for.end: ; preds = %for.cond.for.end_cr declare { i64, i1 } @llvm.umul.with.overflow.i64(i64, i64) #1 ; Function Attrs: nobuiltin -declare noalias i8* @_Znam(i64) #2 +declare noalias ptr @_Znam(i64) #2 ; Function Attrs: nobuiltin -declare noalias i8* @_Znwm(i64) #2 +declare noalias ptr @_Znwm(i64) #2 ; Function Attrs: uwtable -declare void @_ZN3ExpC2Ejj7Exptype4Type2OpPS_jjP4Case(%struct.Exp.204.248.358*, i32, i32, i32, i32, i32, %struct.Exp.204.248.358*, i32, i32, %struct.Case.219.263.373*) unnamed_addr #0 align 2 +declare void @_ZN3ExpC2Ejj7Exptype4Type2OpPS_jjP4Case(ptr, i32, i32, i32, i32, i32, ptr, i32, i32, ptr) unnamed_addr #0 align 2 declare i32 @__gxx_personality_v0(...) ; Function Attrs: nobuiltin nounwind -declare void @_ZdlPv(i8*) #3 +declare void @_ZdlPv(ptr) #3 ; Function Attrs: uwtable -declare i32 @_Z10doluswitchP9Classfile(%struct.Classfile.218.262.372*) #0 +declare i32 @_Z10doluswitchP9Classfile(ptr) #0 ; Function Attrs: nounwind uwtable -declare void @_ZN4Exp_C2E7Exptype4Type2Op(%struct.Exp_.200.244.354*, i32, i32, i32) unnamed_addr #4 align 2 +declare void @_ZN4Exp_C2E7Exptype4Type2Op(ptr, i32, i32, i32) unnamed_addr #4 align 2 attributes #0 = { uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" } attributes #1 = { nounwind readnone } diff --git a/polly/test/CodeGen/invariant_load_outermost.ll b/polly/test/CodeGen/invariant_load_outermost.ll index eadd6ec3187e..f42135c09014 100644 --- a/polly/test/CodeGen/invariant_load_outermost.ll +++ b/polly/test/CodeGen/invariant_load_outermost.ll @@ -11,27 +11,27 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %entry.split entry.split: - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %cmp = icmp sgt i32 %tmp, 42 br i1 %cmp, label %if.then, label %if.else if.then: ; preds = %entry - %tmp1 = load i32, i32* %A, align 4 + %tmp1 = load i32, ptr %A, align 4 %add = add nsw i32 %tmp1, 1 br label %if.end if.else: ; preds = %entry - %tmp2 = load i32, i32* %A, align 4 + %tmp2 = load i32, ptr %A, align 4 %sub = add nsw i32 %tmp2, -1 br label %if.end if.end: ; preds = %if.else, %if.then %storemerge = phi i32 [ %sub, %if.else ], [ %add, %if.then ] - store i32 %storemerge, i32* %A, align 4 + store i32 %storemerge, ptr %A, align 4 ret void } diff --git a/polly/test/CodeGen/invariant_load_scalar_escape_alloca_sharing.ll b/polly/test/CodeGen/invariant_load_scalar_escape_alloca_sharing.ll index 212792afd6fa..44c035855b76 100644 --- a/polly/test/CodeGen/invariant_load_scalar_escape_alloca_sharing.ll +++ b/polly/test/CodeGen/invariant_load_scalar_escape_alloca_sharing.ll @@ -8,19 +8,19 @@ ; CHECK: %tmp0.preload.s2a = alloca i32 ; CHECK-NOT: alloca ; -; CHECK: %ncol.load = load i32, i32* @ncol -; CHECK-NEXT: store i32 %ncol.load, i32* %tmp0.preload.s2a +; CHECK: %ncol.load = load i32, ptr @ncol +; CHECK-NEXT: store i32 %ncol.load, ptr %tmp0.preload.s2a ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @ncol = external global i32, align 4 -define void @melt_data(i32* %data1, i32* %data2) { +define void @melt_data(ptr %data1, ptr %data2) { entry: br label %entry.split entry.split: ; preds = %entry - %tmp0 = load i32, i32* @ncol, align 4 + %tmp0 = load i32, ptr @ncol, align 4 %tobool.2 = icmp eq i32 %tmp0, 0 br i1 %tobool.2, label %while.end, label %while.body.lr.ph @@ -31,21 +31,21 @@ while.body: ; preds = %while.body.lr.ph, % %dec3.in = phi i32 [ %tmp0, %while.body.lr.ph ], [ %dec3, %while.cond.backedge ] %dec3 = add nsw i32 %dec3.in, -1 %idxprom = sext i32 %dec3 to i64 - %arrayidx = getelementptr inbounds i32, i32* %data1, i64 %idxprom - %tmp1 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %data1, i64 %idxprom + %tmp1 = load i32, ptr %arrayidx, align 4 %idxprom1 = sext i32 %dec3 to i64 - %arrayidx2 = getelementptr inbounds i32, i32* %data2, i64 %idxprom1 - %tmp2 = load i32, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %data2, i64 %idxprom1 + %tmp2 = load i32, ptr %arrayidx2, align 4 %cmp = icmp sgt i32 %tmp1, %tmp2 br i1 %cmp, label %if.then, label %while.cond.backedge if.then: ; preds = %while.body %idxprom3 = sext i32 %dec3 to i64 - %arrayidx4 = getelementptr inbounds i32, i32* %data2, i64 %idxprom3 - %tmp3 = load i32, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %data2, i64 %idxprom3 + %tmp3 = load i32, ptr %arrayidx4, align 4 %idxprom5 = sext i32 %dec3 to i64 - %arrayidx6 = getelementptr inbounds i32, i32* %data1, i64 %idxprom5 - store i32 %tmp3, i32* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %data1, i64 %idxprom5 + store i32 %tmp3, ptr %arrayidx6, align 4 br label %while.cond.backedge while.cond.backedge: ; preds = %if.then, %while.body diff --git a/polly/test/CodeGen/invariant_loads_from_struct_with_different_types_1.ll b/polly/test/CodeGen/invariant_loads_from_struct_with_different_types_1.ll index 4d0639ca499a..0b6929a5fd3f 100644 --- a/polly/test/CodeGen/invariant_loads_from_struct_with_different_types_1.ll +++ b/polly/test/CodeGen/invariant_loads_from_struct_with_different_types_1.ll @@ -5,21 +5,21 @@ ; target datalayout = "e-m:o-p:32:32-f64:32:64-f80:128-n8:16:32-S128" -%struct.FFIIRFilterCoeffs.0.3.6.12.15.27.36.54.57.84.87.90 = type { i32, float, i32*, float* } +%struct.FFIIRFilterCoeffs.0.3.6.12.15.27.36.54.57.84.87.90 = type { i32, float, ptr, ptr } ; Function Attrs: nounwind ssp -define void @ff_iir_filter(%struct.FFIIRFilterCoeffs.0.3.6.12.15.27.36.54.57.84.87.90* %c, i16* %dst, i32 %dstep) #0 { +define void @ff_iir_filter(ptr %c, ptr %dst, i32 %dstep) #0 { entry: br i1 undef, label %if.end.325, label %for.body.38 for.body.38: ; preds = %for.body.38, %entry - %dst034.0180 = phi i16* [ undef, %for.body.38 ], [ %dst, %entry ] - %gain42 = getelementptr inbounds %struct.FFIIRFilterCoeffs.0.3.6.12.15.27.36.54.57.84.87.90, %struct.FFIIRFilterCoeffs.0.3.6.12.15.27.36.54.57.84.87.90* %c, i32 0, i32 1 - %cy44 = getelementptr inbounds %struct.FFIIRFilterCoeffs.0.3.6.12.15.27.36.54.57.84.87.90, %struct.FFIIRFilterCoeffs.0.3.6.12.15.27.36.54.57.84.87.90* %c, i32 0, i32 3 - %add.ptr88 = getelementptr inbounds i16, i16* %dst034.0180, i32 %dstep - store i16 undef, i16* %add.ptr88, align 2 - %0 = load float, float* %gain42, align 4 - %1 = load float*, float** %cy44, align 4 + %dst034.0180 = phi ptr [ undef, %for.body.38 ], [ %dst, %entry ] + %gain42 = getelementptr inbounds %struct.FFIIRFilterCoeffs.0.3.6.12.15.27.36.54.57.84.87.90, ptr %c, i32 0, i32 1 + %cy44 = getelementptr inbounds %struct.FFIIRFilterCoeffs.0.3.6.12.15.27.36.54.57.84.87.90, ptr %c, i32 0, i32 3 + %add.ptr88 = getelementptr inbounds i16, ptr %dst034.0180, i32 %dstep + store i16 undef, ptr %add.ptr88, align 2 + %0 = load float, ptr %gain42, align 4 + %1 = load ptr, ptr %cy44, align 4 br i1 false, label %for.body.38, label %if.end.325 if.end.325: ; preds = %for.body.38, %entry diff --git a/polly/test/CodeGen/invariant_loads_from_struct_with_different_types_2.ll b/polly/test/CodeGen/invariant_loads_from_struct_with_different_types_2.ll index 6312e399e255..2eb913fed447 100644 --- a/polly/test/CodeGen/invariant_loads_from_struct_with_different_types_2.ll +++ b/polly/test/CodeGen/invariant_loads_from_struct_with_different_types_2.ll @@ -5,10 +5,10 @@ ; target datalayout = "e-m:o-p:32:32-f64:32:64-f80:128-n8:16:32-S128" -%struct.FFIIRFilterCoeffs.0.3.6.63.78.81.87.102.150.162.165.168.171 = type { i32, float, i32*, float* } +%struct.FFIIRFilterCoeffs.0.3.6.63.78.81.87.102.150.162.165.168.171 = type { i32, float, ptr, ptr } ; Function Attrs: nounwind ssp -define void @butterworth_init_coeffs(%struct.FFIIRFilterCoeffs.0.3.6.63.78.81.87.102.150.162.165.168.171* %c) #0 { +define void @butterworth_init_coeffs(ptr %c) #0 { entry: br i1 undef, label %if.end, label %if.then @@ -28,13 +28,13 @@ for.body.35: ; preds = %if.end.2 unreachable for.end.126: ; preds = %if.end.2 - %gain = getelementptr inbounds %struct.FFIIRFilterCoeffs.0.3.6.63.78.81.87.102.150.162.165.168.171, %struct.FFIIRFilterCoeffs.0.3.6.63.78.81.87.102.150.162.165.168.171* %c, i32 0, i32 1 + %gain = getelementptr inbounds %struct.FFIIRFilterCoeffs.0.3.6.63.78.81.87.102.150.162.165.168.171, ptr %c, i32 0, i32 1 br i1 undef, label %for.body.133, label %for.end.169 for.body.133: ; preds = %for.body.133, %for.end.126 - store float undef, float* %gain, align 4 - %cy = getelementptr inbounds %struct.FFIIRFilterCoeffs.0.3.6.63.78.81.87.102.150.162.165.168.171, %struct.FFIIRFilterCoeffs.0.3.6.63.78.81.87.102.150.162.165.168.171* %c, i32 0, i32 3 - %0 = load float*, float** %cy, align 4 + store float undef, ptr %gain, align 4 + %cy = getelementptr inbounds %struct.FFIIRFilterCoeffs.0.3.6.63.78.81.87.102.150.162.165.168.171, ptr %c, i32 0, i32 3 + %0 = load ptr, ptr %cy, align 4 br i1 false, label %for.body.133, label %for.end.169 for.end.169: ; preds = %for.body.133, %for.end.126 diff --git a/polly/test/CodeGen/invariant_loads_ignore_parameter_bounds.ll b/polly/test/CodeGen/invariant_loads_ignore_parameter_bounds.ll index 9a7e3254de58..a0c1f891bdf6 100644 --- a/polly/test/CodeGen/invariant_loads_ignore_parameter_bounds.ll +++ b/polly/test/CodeGen/invariant_loads_ignore_parameter_bounds.ll @@ -2,8 +2,8 @@ ; RUN: -polly-ignore-parameter-bounds -S < %s | FileCheck %s ; CHECK: polly.preload.begin: -; CHECK-NEXT: %global.load = load i32, i32* @global, align 4, !alias.scope !0, !noalias !3 -; CHECK-NEXT: store i32 %global.load, i32* %tmp24.preload.s2a +; CHECK-NEXT: %global.load = load i32, ptr @global, align 4, !alias.scope !0, !noalias !3 +; CHECK-NEXT: store i32 %global.load, ptr %tmp24.preload.s2a target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f16:16:16-f32:32:32-f64:64:64-f128:128:128-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" @@ -15,7 +15,7 @@ bb: br label %bb18 bb18: ; preds = %bb16 - %tmp19 = load i32, i32* @global, align 4 + %tmp19 = load i32, ptr @global, align 4 br label %bb20 bb20: ; preds = %bb21, %bb18 @@ -23,12 +23,12 @@ bb20: ; preds = %bb21, %bb18 br i1 %tmp22, label %bb23, label %bb20 bb23: ; preds = %bb21 - %tmp24 = load i32, i32* @global, align 4 + %tmp24 = load i32, ptr @global, align 4 %tmp25 = add i32 %tmp24, 1 %tmp26 = sext i32 %tmp25 to i64 %tmp27 = add nsw i64 %tmp26, -1 - %tmp28 = getelementptr [4 x double], [4 x double]* %tmp, i64 0, i64 %tmp27 - store double undef, double* %tmp28 + %tmp28 = getelementptr [4 x double], ptr %tmp, i64 0, i64 %tmp27 + store double undef, ptr %tmp28 br label %bb29 bb29: ; preds = %bb23 diff --git a/polly/test/CodeGen/invariant_verify_function_failed.ll b/polly/test/CodeGen/invariant_verify_function_failed.ll index 94025f13bd84..6020caeee85d 100644 --- a/polly/test/CodeGen/invariant_verify_function_failed.ll +++ b/polly/test/CodeGen/invariant_verify_function_failed.ll @@ -23,8 +23,8 @@ if.end: ; preds = %entry br i1 undef, label %land.lhs.true, label %if.end.18 land.lhs.true: ; preds = %if.end - %call9 = tail call i32* @__errno_location() #2 - %tmp = load i32, i32* %call9, align 4, !tbaa !1 + %call9 = tail call ptr @__errno_location() #2 + %tmp = load i32, ptr %call9, align 4, !tbaa !1 br i1 false, label %if.then.12, label %if.end.18 if.then.12: ; preds = %land.lhs.true @@ -45,7 +45,7 @@ cleanup: ; preds = %if.end.27, %entry } ; Function Attrs: nounwind readnone -declare i32* @__errno_location() #1 +declare ptr @__errno_location() #1 attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" } attributes #1 = { nounwind readnone "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" } diff --git a/polly/test/CodeGen/invariant_verify_function_failed_2.ll b/polly/test/CodeGen/invariant_verify_function_failed_2.ll index c1f4646dc3a8..81a4bd1dc153 100644 --- a/polly/test/CodeGen/invariant_verify_function_failed_2.ll +++ b/polly/test/CodeGen/invariant_verify_function_failed_2.ll @@ -34,12 +34,12 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -%struct.s = type { i32, i32, i32, i32, i32, i32, [6 x [33 x i64]], [6 x [33 x i64]], [6 x [33 x i64]], [6 x [33 x i64]], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i16**, i16*, i16*, i16**, i16**, i16***, i8*, i16***, i64***, i64***, i16****, i8**, i8**, %struct.s*, %struct.s*, %struct.s*, i32, i32, i32, i32, i32, i32, i32 } +%struct.s = type { i32, i32, i32, i32, i32, i32, [6 x [33 x i64]], [6 x [33 x i64]], [6 x [33 x i64]], [6 x [33 x i64]], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32 } -@enc_picture = external global %struct.s*, align 8 +@enc_picture = external global ptr, align 8 ; Function Attrs: nounwind uwtable -define void @compute_colocated(%struct.s*** %listX, i1* %A, i32* %B) #0 { +define void @compute_colocated(ptr %listX, ptr %A, ptr %B) #0 { entry: br label %for.body2414 @@ -52,28 +52,26 @@ if.else2454: ; preds = %for.body2414 br i1 %cmp2455, label %if.then2457, label %if.else2493 if.then2457: ; preds = %if.else2454 - %arrayidx2461 = getelementptr inbounds %struct.s**, %struct.s*** %listX, i64 %indvars.iv902 - %tmp1 = load %struct.s**, %struct.s*** %arrayidx2461, align 8, !tbaa !1 - %arrayidx2462 = getelementptr inbounds %struct.s*, %struct.s** %tmp1, i64 0 - %tmp2 = load %struct.s*, %struct.s** %arrayidx2462, align 8, !tbaa !1 - %poc2463 = getelementptr inbounds %struct.s, %struct.s* %tmp2, i64 0, i32 1 - %tmp3 = load i32, i32* %poc2463, align 4, !tbaa !5 + %arrayidx2461 = getelementptr inbounds ptr, ptr %listX, i64 %indvars.iv902 + %tmp1 = load ptr, ptr %arrayidx2461, align 8, !tbaa !1 + %tmp2 = load ptr, ptr %tmp1, align 8, !tbaa !1 + %poc2463 = getelementptr inbounds %struct.s, ptr %tmp2, i64 0, i32 1 + %tmp3 = load i32, ptr %poc2463, align 4, !tbaa !5 %sub2464 = sub nsw i32 0, %tmp3 br label %cond.false2468 cond.false2468: ; preds = %if.then2457 %cmp2477 = icmp sgt i32 %sub2464, 127 - store i1 %cmp2477, i1* %A + store i1 %cmp2477, ptr %A br label %for.inc2621 if.else2493: ; preds = %if.else2454 - %arrayidx2497 = getelementptr inbounds %struct.s**, %struct.s*** %listX, i64 %indvars.iv902 - %tmp4 = load %struct.s**, %struct.s*** %arrayidx2497, align 8, !tbaa !1 - %arrayidx2498 = getelementptr inbounds %struct.s*, %struct.s** %tmp4, i64 0 - %tmp5 = load %struct.s*, %struct.s** %arrayidx2498, align 8, !tbaa !1 - %poc2499 = getelementptr inbounds %struct.s, %struct.s* %tmp5, i64 0, i32 1 - %tmp6 = load i32, i32* %poc2499, align 4, !tbaa !5 - store i32 %tmp6, i32* %B + %arrayidx2497 = getelementptr inbounds ptr, ptr %listX, i64 %indvars.iv902 + %tmp4 = load ptr, ptr %arrayidx2497, align 8, !tbaa !1 + %tmp5 = load ptr, ptr %tmp4, align 8, !tbaa !1 + %poc2499 = getelementptr inbounds %struct.s, ptr %tmp5, i64 0, i32 1 + %tmp6 = load i32, ptr %poc2499, align 4, !tbaa !5 + store i32 %tmp6, ptr %B br label %for.inc2621 for.inc2621: ; preds = %if.else2493, %cond.false2468 diff --git a/polly/test/CodeGen/large-numbers-in-boundary-context.ll b/polly/test/CodeGen/large-numbers-in-boundary-context.ll index 9db7a0ef7db8..a0328dfec651 100644 --- a/polly/test/CodeGen/large-numbers-in-boundary-context.ll +++ b/polly/test/CodeGen/large-numbers-in-boundary-context.ll @@ -14,17 +14,17 @@ target triple = "x86_64-unknown-linux-gnu" @global1 = external global i32, align 4 ; Function Attrs: nounwind uwtable -define void @hoge(i8* %arg) #0 { +define void @hoge(ptr %arg) #0 { bb: br label %bb5 bb5: ; preds = %bb - %tmp = load i32, i32* @global, align 4 + %tmp = load i32, ptr @global, align 4 %tmp6 = sext i32 %tmp to i64 br label %bb11 bb7: ; preds = %bb19 - %tmp8 = load i32, i32* @global1, align 4 + %tmp8 = load i32, ptr @global1, align 4 %tmp9 = sext i32 %tmp8 to i64 %tmp10 = icmp slt i64 %tmp13, %tmp9 br i1 %tmp10, label %bb11, label %bb20 @@ -32,8 +32,8 @@ bb7: ; preds = %bb19 bb11: ; preds = %bb7, %bb5 %tmp12 = phi i64 [ %tmp6, %bb5 ], [ %tmp13, %bb7 ] %tmp13 = add i64 %tmp12, 1 - %tmp14 = getelementptr inbounds i8, i8* %arg, i64 %tmp13 - %tmp15 = load i8, i8* %tmp14, align 1 + %tmp14 = getelementptr inbounds i8, ptr %arg, i64 %tmp13 + %tmp15 = load i8, ptr %tmp14, align 1 br i1 false, label %bb16, label %bb17 bb16: ; preds = %bb11 diff --git a/polly/test/CodeGen/loop-invariant-load-type-mismatch.ll b/polly/test/CodeGen/loop-invariant-load-type-mismatch.ll index 27317dfe7b84..90c61c591623 100644 --- a/polly/test/CodeGen/loop-invariant-load-type-mismatch.ll +++ b/polly/test/CodeGen/loop-invariant-load-type-mismatch.ll @@ -5,7 +5,7 @@ target triple = "x86_64-unknown-linux-gnu" ; Just make sure this test passes correctly. -define void @kernel_ludcmp(double* %b, double* %y) #0 { +define void @kernel_ludcmp(ptr %b, ptr %y) #0 { entry: br label %entry.split @@ -71,15 +71,12 @@ for.end.54: ; preds = %for.cond.38.for.end br i1 false, label %for.body.32, label %for.cond.30.for.cond.loopexit_crit_edge for.end.65: ; preds = %for.cond.loopexit - %tmp1 = bitcast double* %b to i64* - %tmp2 = load i64, i64* %tmp1, align 8, !tbaa !1 - %tmp3 = bitcast double* %y to i64* - store i64 %tmp2, i64* %tmp3, align 8, !tbaa !1 + %tmp2 = load i64, ptr %b, align 8, !tbaa !1 + store i64 %tmp2, ptr %y, align 8, !tbaa !1 br label %for.body.70 for.body.70: ; preds = %for.end.86, %for.end.65 - %arrayidx72 = getelementptr inbounds double, double* %b, i64 0 - %tmp4 = load double, double* %arrayidx72, align 8, !tbaa !1 + %tmp4 = load double, ptr %b, align 8, !tbaa !1 br i1 true, label %for.body.75.lr.ph, label %for.end.86 for.body.75.lr.ph: ; preds = %for.body.70 diff --git a/polly/test/CodeGen/loop_with_condition.ll b/polly/test/CodeGen/loop_with_condition.ll index 2dbd4400b9bc..618a542c179a 100644 --- a/polly/test/CodeGen/loop_with_condition.ll +++ b/polly/test/CodeGen/loop_with_condition.ll @@ -41,8 +41,8 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -@A = common global [1024 x i32] zeroinitializer, align 16 ; <[1024 x i32]*> [#uses=4] -@B = common global [1024 x i32] zeroinitializer, align 16 ; <[1024 x i32]*> [#uses=4] +@A = common global [1024 x i32] zeroinitializer, align 16 ; <ptr> [#uses=4] +@B = common global [1024 x i32] zeroinitializer, align 16 ; <ptr> [#uses=4] define void @loop_with_condition() nounwind { bb0: @@ -51,8 +51,8 @@ bb0: bb1: %indvar = phi i64 [ %indvar.next, %bb7 ], [ 0, %bb0 ] ; <i64> [#uses=5] - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvar ; <i32*> [#uses=2] - %scevgep1 = getelementptr [1024 x i32], [1024 x i32]* @B, i64 0, i64 %indvar ; <i32*> [#uses=1] + %scevgep = getelementptr [1024 x i32], ptr @A, i64 0, i64 %indvar ; <ptr> [#uses=2] + %scevgep1 = getelementptr [1024 x i32], ptr @B, i64 0, i64 %indvar ; <ptr> [#uses=1] %i.0 = trunc i64 %indvar to i32 ; <i32> [#uses=1] %exitcond = icmp ne i64 %indvar, 1024 ; <i1> [#uses=1] br i1 %exitcond, label %bb2, label %bb8 @@ -62,15 +62,15 @@ bb2: br i1 %var3, label %bb4, label %bb5 bb4: - store i32 1, i32* %scevgep + store i32 1, ptr %scevgep br label %bb6 bb5: - store i32 2, i32* %scevgep + store i32 2, ptr %scevgep br label %bb6 bb6: - store i32 3, i32* %scevgep1 + store i32 3, ptr %scevgep1 br label %bb7 bb7: @@ -84,20 +84,20 @@ bb8: define i32 @main() nounwind { ; <label>:0 - call void @llvm.memset.p0i8.i64(i8* bitcast ([1024 x i32]* @A to i8*), i8 0, i64 4096, i32 1, i1 false) - call void @llvm.memset.p0i8.i64(i8* bitcast ([1024 x i32]* @B to i8*), i8 0, i64 4096, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr @A, i8 0, i64 4096, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr @B, i8 0, i64 4096, i32 1, i1 false) call void @loop_with_condition() br label %1 ; <label>:1 ; preds = %8, %0 %indvar1 = phi i64 [ %indvar.next2, %8 ], [ 0, %0 ] ; <i64> [#uses=3] - %scevgep3 = getelementptr [1024 x i32], [1024 x i32]* @B, i64 0, i64 %indvar1 ; <i32*> [#uses=1] + %scevgep3 = getelementptr [1024 x i32], ptr @B, i64 0, i64 %indvar1 ; <ptr> [#uses=1] %i.0 = trunc i64 %indvar1 to i32 ; <i32> [#uses=1] %2 = icmp slt i32 %i.0, 1024 ; <i1> [#uses=1] br i1 %2, label %3, label %9 ; <label>:3 ; preds = %1 - %4 = load i32, i32* %scevgep3 ; <i32> [#uses=1] + %4 = load i32, ptr %scevgep3 ; <i32> [#uses=1] %5 = icmp ne i32 %4, 3 ; <i1> [#uses=1] br i1 %5, label %6, label %7 @@ -116,7 +116,7 @@ define i32 @main() nounwind { ; <label>:10 ; preds = %26, %9 %indvar = phi i64 [ %indvar.next, %26 ], [ 0, %9 ] ; <i64> [#uses=3] - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvar ; <i32*> [#uses=2] + %scevgep = getelementptr [1024 x i32], ptr @A, i64 0, i64 %indvar ; <ptr> [#uses=2] %i.1 = trunc i64 %indvar to i32 ; <i32> [#uses=3] %11 = icmp slt i32 %i.1, 1024 ; <i1> [#uses=1] br i1 %11, label %12, label %27 @@ -126,7 +126,7 @@ define i32 @main() nounwind { br i1 %13, label %14, label %18 ; <label>:14 ; preds = %12 - %15 = load i32, i32* %scevgep ; <i32> [#uses=1] + %15 = load i32, ptr %scevgep ; <i32> [#uses=1] %16 = icmp ne i32 %15, 1 ; <i1> [#uses=1] br i1 %16, label %17, label %18 @@ -138,7 +138,7 @@ define i32 @main() nounwind { br i1 %19, label %20, label %24 ; <label>:20 ; preds = %18 - %21 = load i32, i32* %scevgep ; <i32> [#uses=1] + %21 = load i32, ptr %scevgep ; <i32> [#uses=1] %22 = icmp ne i32 %21, 2 ; <i1> [#uses=1] br i1 %22, label %23, label %24 @@ -163,7 +163,7 @@ define i32 @main() nounwind { ret i32 %.0 } -declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) nounwind +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) nounwind ; CHECK: for (int c0 = 0; c0 <= 1023; c0 += 1) { ; CHECK: if (c0 >= 513) { diff --git a/polly/test/CodeGen/loop_with_condition_2.ll b/polly/test/CodeGen/loop_with_condition_2.ll index 864ffc61241c..b1a116785069 100644 --- a/polly/test/CodeGen/loop_with_condition_2.ll +++ b/polly/test/CodeGen/loop_with_condition_2.ll @@ -26,8 +26,8 @@ entry: for.cond: ; preds = %for.inc, %entry %indvar = phi i64 [ %indvar.next, %for.inc ], [ 0, %entry ] - %arrayidx = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvar - %arrayidx10 = getelementptr [1024 x i32], [1024 x i32]* @B, i64 0, i64 %indvar + %arrayidx = getelementptr [1024 x i32], ptr @A, i64 0, i64 %indvar + %arrayidx10 = getelementptr [1024 x i32], ptr @B, i64 0, i64 %indvar %tmp2 = add i64 %tmp1, %indvar %sub = trunc i64 %tmp2 to i32 %exitcond = icmp ne i64 %indvar, 1024 @@ -38,15 +38,15 @@ for.body: ; preds = %for.cond br i1 %cmp3, label %if.then, label %if.else if.then: ; preds = %for.body - store i32 1, i32* %arrayidx + store i32 1, ptr %arrayidx br label %if.end if.else: ; preds = %for.body - store i32 2, i32* %arrayidx + store i32 2, ptr %arrayidx br label %if.end if.end: ; preds = %if.else, %if.then - store i32 3, i32* %arrayidx10 + store i32 3, ptr %arrayidx10 br label %for.inc for.inc: ; preds = %if.end @@ -60,20 +60,20 @@ for.end: ; preds = %for.cond define i32 @main() nounwind { entry: - call void @llvm.memset.p0i8.i64(i8* bitcast ([1024 x i32]* @A to i8*), i8 0, i64 4096, i32 1, i1 false) - call void @llvm.memset.p0i8.i64(i8* bitcast ([1024 x i32]* @B to i8*), i8 0, i64 4096, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr @A, i8 0, i64 4096, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr @B, i8 0, i64 4096, i32 1, i1 false) call void @loop_with_condition(i32 5) br label %for.cond for.cond: ; preds = %for.inc, %entry %indvar1 = phi i64 [ %indvar.next2, %for.inc ], [ 0, %entry ] - %arrayidx = getelementptr [1024 x i32], [1024 x i32]* @B, i64 0, i64 %indvar1 + %arrayidx = getelementptr [1024 x i32], ptr @B, i64 0, i64 %indvar1 %i.0 = trunc i64 %indvar1 to i32 %cmp = icmp slt i32 %i.0, 1024 br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %tmp3 = load i32, i32* %arrayidx + %tmp3 = load i32, ptr %arrayidx %cmp4 = icmp ne i32 %tmp3, 3 br i1 %cmp4, label %if.then, label %if.end @@ -92,7 +92,7 @@ for.end: ; preds = %for.cond for.cond6: ; preds = %for.inc12, %for.end %indvar = phi i64 [ %indvar.next, %for.inc12 ], [ 0, %for.end ] - %arrayidx15 = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvar + %arrayidx15 = getelementptr [1024 x i32], ptr @A, i64 0, i64 %indvar %i.1 = trunc i64 %indvar to i32 %cmp8 = icmp slt i32 %i.1, 1024 br i1 %cmp8, label %for.body9, label %for.end35 @@ -101,7 +101,7 @@ for.body9: ; preds = %for.cond6 br i1 true, label %land.lhs.true, label %if.else land.lhs.true: ; preds = %for.body9 - %tmp16 = load i32, i32* %arrayidx15 + %tmp16 = load i32, ptr %arrayidx15 %cmp17 = icmp ne i32 %tmp16, 1 br i1 %cmp17, label %if.then18, label %if.else @@ -112,7 +112,7 @@ if.else: ; preds = %land.lhs.true, %for br i1 false, label %land.lhs.true23, label %if.end30 land.lhs.true23: ; preds = %if.else - %tmp27 = load i32, i32* %arrayidx15 + %tmp27 = load i32, ptr %arrayidx15 %cmp28 = icmp ne i32 %tmp27, 2 br i1 %cmp28, label %if.then29, label %if.end30 @@ -137,4 +137,4 @@ return: ; preds = %for.end35, %if.then ret i32 %retval.0 } -declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) nounwind +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) nounwind diff --git a/polly/test/CodeGen/loop_with_condition_ineq.ll b/polly/test/CodeGen/loop_with_condition_ineq.ll index b0341d5c3750..c35208c72dfe 100644 --- a/polly/test/CodeGen/loop_with_condition_ineq.ll +++ b/polly/test/CodeGen/loop_with_condition_ineq.ll @@ -41,8 +41,8 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -@A = common global [1024 x i32] zeroinitializer, align 16 ; <[1024 x i32]*> [#uses=4] -@B = common global [1024 x i32] zeroinitializer, align 16 ; <[1024 x i32]*> [#uses=4] +@A = common global [1024 x i32] zeroinitializer, align 16 ; <ptr> [#uses=4] +@B = common global [1024 x i32] zeroinitializer, align 16 ; <ptr> [#uses=4] define void @loop_with_condition_ineq() nounwind { bb0: @@ -51,8 +51,8 @@ bb0: bb1: %indvar = phi i64 [ %indvar.next, %bb7 ], [ 0, %bb0 ] ; <i64> [#uses=5] - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvar ; <i32*> [#uses=2] - %scevgep1 = getelementptr [1024 x i32], [1024 x i32]* @B, i64 0, i64 %indvar ; <i32*> [#uses=1] + %scevgep = getelementptr [1024 x i32], ptr @A, i64 0, i64 %indvar ; <ptr> [#uses=2] + %scevgep1 = getelementptr [1024 x i32], ptr @B, i64 0, i64 %indvar ; <ptr> [#uses=1] %i.0 = trunc i64 %indvar to i32 ; <i32> [#uses=1] %exitcond = icmp ne i64 %indvar, 1024 ; <i1> [#uses=1] br i1 %exitcond, label %bb2, label %bb8 @@ -62,15 +62,15 @@ bb2: br i1 %var3, label %bb4, label %bb5 bb4: - store i32 1, i32* %scevgep + store i32 1, ptr %scevgep br label %bb6 bb5: - store i32 2, i32* %scevgep + store i32 2, ptr %scevgep br label %bb6 bb6: - store i32 3, i32* %scevgep1 + store i32 3, ptr %scevgep1 br label %bb7 bb7: @@ -84,20 +84,20 @@ bb8: define i32 @main() nounwind { ; <label>:0 - call void @llvm.memset.p0i8.i64(i8* bitcast ([1024 x i32]* @A to i8*), i8 0, i64 4096, i32 1, i1 false) - call void @llvm.memset.p0i8.i64(i8* bitcast ([1024 x i32]* @B to i8*), i8 0, i64 4096, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr @A, i8 0, i64 4096, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr @B, i8 0, i64 4096, i32 1, i1 false) call void @loop_with_condition_ineq() br label %1 ; <label>:1 ; preds = %8, %0 %indvar1 = phi i64 [ %indvar.next2, %8 ], [ 0, %0 ] ; <i64> [#uses=3] - %scevgep3 = getelementptr [1024 x i32], [1024 x i32]* @B, i64 0, i64 %indvar1 ; <i32*> [#uses=1] + %scevgep3 = getelementptr [1024 x i32], ptr @B, i64 0, i64 %indvar1 ; <ptr> [#uses=1] %i.0 = trunc i64 %indvar1 to i32 ; <i32> [#uses=1] %2 = icmp slt i32 %i.0, 1024 ; <i1> [#uses=1] br i1 %2, label %3, label %9 ; <label>:3 ; preds = %1 - %4 = load i32, i32* %scevgep3 ; <i32> [#uses=1] + %4 = load i32, ptr %scevgep3 ; <i32> [#uses=1] %5 = icmp ne i32 %4, 3 ; <i1> [#uses=1] br i1 %5, label %6, label %7 @@ -116,7 +116,7 @@ define i32 @main() nounwind { ; <label>:10 ; preds = %26, %9 %indvar = phi i64 [ %indvar.next, %26 ], [ 0, %9 ] ; <i64> [#uses=3] - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvar ; <i32*> [#uses=2] + %scevgep = getelementptr [1024 x i32], ptr @A, i64 0, i64 %indvar ; <ptr> [#uses=2] %i.1 = trunc i64 %indvar to i32 ; <i32> [#uses=3] %11 = icmp slt i32 %i.1, 1024 ; <i1> [#uses=1] br i1 %11, label %12, label %27 @@ -126,7 +126,7 @@ define i32 @main() nounwind { br i1 %13, label %14, label %18 ; <label>:14 ; preds = %12 - %15 = load i32, i32* %scevgep ; <i32> [#uses=1] + %15 = load i32, ptr %scevgep ; <i32> [#uses=1] %16 = icmp ne i32 %15, 1 ; <i1> [#uses=1] br i1 %16, label %17, label %18 @@ -138,7 +138,7 @@ define i32 @main() nounwind { br i1 %19, label %20, label %24 ; <label>:20 ; preds = %18 - %21 = load i32, i32* %scevgep ; <i32> [#uses=1] + %21 = load i32, ptr %scevgep ; <i32> [#uses=1] %22 = icmp ne i32 %21, 2 ; <i1> [#uses=1] br i1 %22, label %23, label %24 @@ -163,7 +163,7 @@ define i32 @main() nounwind { ret i32 %.0 } -declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) nounwind +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) nounwind ; CHECK: for (int c0 = 0; c0 <= 1023; c0 += 1) { ; CHECK: if (c0 == 512) { diff --git a/polly/test/CodeGen/loop_with_conditional_entry_edge_split_hard_case.ll b/polly/test/CodeGen/loop_with_conditional_entry_edge_split_hard_case.ll index a0679c26e999..4444cf1dc4dd 100644 --- a/polly/test/CodeGen/loop_with_conditional_entry_edge_split_hard_case.ll +++ b/polly/test/CodeGen/loop_with_conditional_entry_edge_split_hard_case.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32 %b, i32* %A) { +define void @jd(i32 %b, ptr %A) { entry: br label %while.begin @@ -47,9 +47,9 @@ for.cond: ; preds = %for.inc, %if br i1 %exitcond, label %for.body, label %while.begin for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv %tmp = trunc i64 %indvars.iv to i32 - store i32 %tmp, i32* %arrayidx, align 4 + store i32 %tmp, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/CodeGen/memcpy_annotations.ll b/polly/test/CodeGen/memcpy_annotations.ll index 6507ecbf2e51..a0a09b75c82e 100644 --- a/polly/test/CodeGen/memcpy_annotations.ll +++ b/polly/test/CodeGen/memcpy_annotations.ll @@ -9,9 +9,9 @@ ; } ; -declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture writeonly, i8* nocapture readonly, i64, i32, i1) +declare void @llvm.memcpy.p0.p0.i64(ptr nocapture writeonly, ptr nocapture readonly, i64, i32, i1) -define void @func(i32 %n, i8* noalias nonnull %A, i8* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -21,7 +21,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - call void @llvm.memcpy.p0i8.p0i8.i64(i8* nonnull %A, i8* %B, i64 8, i32 4, i1 false) + call void @llvm.memcpy.p0.p0.i64(ptr nonnull %A, ptr %B, i64 8, i32 4, i1 false) br label %inc inc: diff --git a/polly/test/CodeGen/multidim-non-matching-typesize-2.ll b/polly/test/CodeGen/multidim-non-matching-typesize-2.ll index 9b769c8aa39b..63afad6e2f41 100644 --- a/polly/test/CodeGen/multidim-non-matching-typesize-2.ll +++ b/polly/test/CodeGen/multidim-non-matching-typesize-2.ll @@ -3,21 +3,20 @@ ; CHECK: polly target datalayout = "e-m:o-p:32:32-f64:32:64-f80:128-n8:16:32-S128" -define void @hoge(i16* %arg, i32 %arg1, i16* %arg2) { +define void @hoge(ptr %arg, i32 %arg1, ptr %arg2) { bb: %tmp = alloca i32 - %tmp3 = load i32, i32* undef + %tmp3 = load i32, ptr undef br label %bb7 bb7: %tmp8 = phi i32 [ %tmp3, %bb ], [ %tmp13, %bb7 ] - %tmp9 = getelementptr inbounds i16, i16* %arg2, i32 0 - %tmp10 = load i16, i16* %tmp9, align 2 + %tmp10 = load i16, ptr %arg2, align 2 %tmp11 = mul nsw i32 %tmp8, %arg1 - %tmp12 = getelementptr inbounds i16, i16* %arg, i32 %tmp11 - store i16 undef, i16* %tmp12, align 2 + %tmp12 = getelementptr inbounds i16, ptr %arg, i32 %tmp11 + store i16 undef, ptr %tmp12, align 2 %tmp13 = add nsw i32 %tmp8, 1 - store i32 undef, i32* %tmp + store i32 undef, ptr %tmp br i1 false, label %bb7, label %bb5 bb5: diff --git a/polly/test/CodeGen/multidim-non-matching-typesize.ll b/polly/test/CodeGen/multidim-non-matching-typesize.ll index 9c285a71181a..d117cefe3376 100644 --- a/polly/test/CodeGen/multidim-non-matching-typesize.ll +++ b/polly/test/CodeGen/multidim-non-matching-typesize.ll @@ -5,7 +5,7 @@ target datalayout = "e-m:o-p:32:32-f64:32:64-f80:128-n8:16:32-S128" ; CHECK: polly -define void @hoge(i16* %arg, i32 %arg1) { +define void @hoge(ptr %arg, i32 %arg1) { bb: %tmp = alloca i16 br label %bb2 @@ -13,9 +13,9 @@ bb: bb2: %tmp3 = phi i32 [ %tmp7, %bb2 ], [ 0, %bb ] %tmp4 = mul nsw i32 %tmp3, %arg1 - %tmp5 = getelementptr inbounds i16, i16* %arg, i32 %tmp4 - %tmp6 = load i16, i16* %tmp5, align 2 - store i16 %tmp6, i16* %tmp + %tmp5 = getelementptr inbounds i16, ptr %arg, i32 %tmp4 + %tmp6 = load i16, ptr %tmp5, align 2 + store i16 %tmp6, ptr %tmp %tmp7 = add nsw i32 %tmp3, 1 br i1 false, label %bb2, label %bb8 diff --git a/polly/test/CodeGen/multidim_2d_parametric_array_static_loop_bounds.ll b/polly/test/CodeGen/multidim_2d_parametric_array_static_loop_bounds.ll index 481dd32c7f3a..464ddb3740f7 100644 --- a/polly/test/CodeGen/multidim_2d_parametric_array_static_loop_bounds.ll +++ b/polly/test/CodeGen/multidim_2d_parametric_array_static_loop_bounds.ll @@ -15,7 +15,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK: %polly.rtc.result = and i1 %0, true ; CHECK: br i1 %polly.rtc.result, label %polly.start, label %for.i -define void @foo(i64 %n, i64 %m, double* %A) { +define void @foo(i64 %n, i64 %m, ptr %A) { entry: br label %for.i @@ -27,8 +27,8 @@ for.i: for.j: %j = phi i64 [ 0, %for.i ], [ %j.inc, %for.j ] %vlaarrayidx.sum = add i64 %j, %tmp - %arrayidx = getelementptr inbounds double, double* %A, i64 %vlaarrayidx.sum - store double 1.0, double* %arrayidx + %arrayidx = getelementptr inbounds double, ptr %A, i64 %vlaarrayidx.sum + store double 1.0, ptr %arrayidx %j.inc = add nsw i64 %j, 1 %j.exitcond = icmp eq i64 %j.inc, 150 br i1 %j.exitcond, label %for.i.inc, label %for.j diff --git a/polly/test/CodeGen/multidim_alias_check.ll b/polly/test/CodeGen/multidim_alias_check.ll index 063aa1957d7a..585577da0e6d 100644 --- a/polly/test/CodeGen/multidim_alias_check.ll +++ b/polly/test/CodeGen/multidim_alias_check.ll @@ -4,12 +4,11 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; CHECK: %polly.access.sext.A = sext i32 %n to i64 ; CHECK: %polly.access.mul.A = mul i64 %polly.access.sext.A, %0 ; CHECK: %polly.access.add.A = add i64 %polly.access.mul.A, 1 -; CHECK: %polly.access.A = getelementptr double, double* %A, i64 %polly.access.add.A -; CHECK: %polly.access.y = getelementptr double, double* %y, i64 0 -; CHECK: icmp ule double* %polly.access.A, %polly.access.y +; CHECK: %polly.access.A = getelementptr double, ptr %A, i64 %polly.access.add.A +; CHECK: icmp ule ptr %polly.access.A, %y -define void @init_array(i32 %n, double* %A, double* %y) { +define void @init_array(i32 %n, ptr %A, ptr %y) { entry: %add3 = add nsw i32 %n, 1 %tmp = zext i32 %add3 to i64 @@ -17,8 +16,7 @@ entry: for.body: %i.04 = phi i32 [ %inc39, %for.cond.loopexit ], [ 0, %entry ] - %arrayidx16 = getelementptr inbounds double, double* %y, i64 0 - store double 1.0, double* %arrayidx16 + store double 1.0, ptr %y %cmp251 = icmp slt i32 %n, 0 %inc39 = add nsw i32 %i.04, 1 br i1 %cmp251, label %for.cond.loopexit, label %for.body27 @@ -27,8 +25,8 @@ for.body27: %idxprom35 = sext i32 %i.04 to i64 %tmp1 = mul nsw i64 %idxprom35, %tmp %arrayidx36.sum = add i64 0, %tmp1 - %arrayidx37 = getelementptr inbounds double, double* %A, i64 %arrayidx36.sum - store double 1.0, double* %arrayidx37 + %arrayidx37 = getelementptr inbounds double, ptr %A, i64 %arrayidx36.sum + store double 1.0, ptr %arrayidx37 br label %for.cond.loopexit for.cond.loopexit: diff --git a/polly/test/CodeGen/multiple-codegens.ll b/polly/test/CodeGen/multiple-codegens.ll index 3198dfc6c5af..f950fa4a3e1d 100644 --- a/polly/test/CodeGen/multiple-codegens.ll +++ b/polly/test/CodeGen/multiple-codegens.ll @@ -31,24 +31,24 @@ target datalayout = "e-m:w-i64:64-f80:128-n8:16:32:64-S128" define i32 @main() { entry: %retval = alloca i32, align 4 - store i32 0, i32* %retval, align 4 - %.pre = load i32, i32* @a, align 4 + store i32 0, ptr %retval, align 4 + %.pre = load i32, ptr @a, align 4 br label %while.cond while.cond: ; preds = %while.end, %entry %0 = phi i32 [ %inc, %while.end ], [ %.pre, %entry ] %inc = add nsw i32 %0, 1 - store i32 %inc, i32* @a, align 4 + store i32 %inc, ptr @a, align 4 %tobool = icmp ne i32 %0, 0 br i1 %tobool, label %while.body, label %while.end4 while.body: ; preds = %while.cond - %1 = load i32, i32* @b, align 4 + %1 = load i32, ptr @b, align 4 %tobool2 = icmp ne i32 %1, 0 br i1 %tobool2, label %while.body3, label %while.end while.body3: ; preds = %while.body - store i32 0, i32* @c, align 4 + store i32 0, ptr @c, align 4 br label %while.end while.end: ; preds = %while.body3, %while.body diff --git a/polly/test/CodeGen/multiple-scops-in-a-row.ll b/polly/test/CodeGen/multiple-scops-in-a-row.ll index 376044eabd0b..a24a2e71ad4e 100644 --- a/polly/test/CodeGen/multiple-scops-in-a-row.ll +++ b/polly/test/CodeGen/multiple-scops-in-a-row.ll @@ -15,13 +15,13 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @hoge(i8* %arg) { +define void @hoge(ptr %arg) { bb: br label %bb1 bb1: ; preds = %bb - %tmp = getelementptr inbounds i8, i8* %arg, i64 5 - %tmp2 = getelementptr inbounds i8, i8* %arg, i64 6 + %tmp = getelementptr inbounds i8, ptr %arg, i64 5 + %tmp2 = getelementptr inbounds i8, ptr %arg, i64 6 br i1 false, label %bb3, label %bb4 bb3: ; preds = %bb1 diff --git a/polly/test/CodeGen/multiple-types-invariant-load-2.ll b/polly/test/CodeGen/multiple-types-invariant-load-2.ll index 007fb7958453..0fd1df75e2ec 100644 --- a/polly/test/CodeGen/multiple-types-invariant-load-2.ll +++ b/polly/test/CodeGen/multiple-types-invariant-load-2.ll @@ -5,17 +5,16 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @hoge(i8* %arg) #0 { +define void @hoge(ptr %arg) #0 { bb: br label %bb3 bb3: ; preds = %bb - %tmp = load i8, i8* %arg, align 1, !tbaa !1 + %tmp = load i8, ptr %arg, align 1, !tbaa !1 br i1 false, label %bb7, label %bb4 bb4: ; preds = %bb3 - %tmp5 = bitcast i8* %arg to i32* - %tmp6 = load i32, i32* %tmp5, align 4, !tbaa !4 + %tmp6 = load i32, ptr %arg, align 4, !tbaa !4 br label %bb7 bb7: ; preds = %bb4, %bb3 diff --git a/polly/test/CodeGen/multiple_sai_fro_same_base_address.ll b/polly/test/CodeGen/multiple_sai_fro_same_base_address.ll index 8beb4a6482f2..0163f248229e 100644 --- a/polly/test/CodeGen/multiple_sai_fro_same_base_address.ll +++ b/polly/test/CodeGen/multiple_sai_fro_same_base_address.ll @@ -9,36 +9,36 @@ %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962 = type { i16, i16, %union.anon.1.289.321.337.353.481.545.593.625.817.897.913.961 } %union.anon.1.289.321.337.353.481.545.593.625.817.897.913.961 = type { %struct.anon.0.288.320.336.352.480.544.592.624.816.896.912.960 } -%struct.anon.0.288.320.336.352.480.544.592.624.816.896.912.960 = type { %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962*, %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962* } +%struct.anon.0.288.320.336.352.480.544.592.624.816.896.912.960 = type { ptr, ptr } define void @leval_or() { entry: br label %while.cond while.cond: ; preds = %sw.bb1.i30, %cond.end.i28, %entry - %next.0 = phi %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962* [ null, %entry ], [ %1, %sw.bb1.i30 ], [ null, %cond.end.i28 ] + %next.0 = phi ptr [ null, %entry ], [ %1, %sw.bb1.i30 ], [ null, %cond.end.i28 ] br i1 undef, label %cond.end.i28, label %if.then if.then: ; preds = %while.cond ret void cond.end.i28: ; preds = %while.cond - %type.i24 = getelementptr inbounds %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962, %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962* %next.0, i64 0, i32 1 - %0 = load i16, i16* %type.i24, align 2 + %type.i24 = getelementptr inbounds %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962, ptr %next.0, i64 0, i32 1 + %0 = load i16, ptr %type.i24, align 2 br i1 false, label %sw.bb1.i30, label %while.cond sw.bb1.i30: ; preds = %cond.end.i28 - %cdr.i29 = getelementptr inbounds %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962, %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962* %next.0, i64 0, i32 2, i32 0, i32 1 - %1 = load %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962*, %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962** %cdr.i29, align 8 + %cdr.i29 = getelementptr inbounds %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962, ptr %next.0, i64 0, i32 2, i32 0, i32 1 + %1 = load ptr, ptr %cdr.i29, align 8 br label %while.cond } ; SCOP: Arrays { -; SCOP-NEXT: %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962* MemRef_next_0; +; SCOP-NEXT: ptr MemRef_next_0; ; SCOP-NEXT: i16 MemRef_next_0[*]; ; SCOP-NEXT: } ; IR: polly.merge_new_and_old: -; IR-NEXT: %next.0.ph.merge = phi %struct.obj.2.290.322.338.354.482.546.594.626.818.898.914.962* [ %next.0.ph.final_reload, %polly.exiting ], [ %next.0.ph, %while.cond.region_exiting ] +; IR-NEXT: %next.0.ph.merge = phi ptr [ %next.0.ph.final_reload, %polly.exiting ], [ %next.0.ph, %while.cond.region_exiting ] ; IR-NEXT: %indvar.next = add i64 %indvar, 1 ; IR-NEXT: br label %while.cond diff --git a/polly/test/CodeGen/no_guard_bb.ll b/polly/test/CodeGen/no_guard_bb.ll index 6d2bebbc179d..47c87ff7c868 100644 --- a/polly/test/CodeGen/no_guard_bb.ll +++ b/polly/test/CodeGen/no_guard_bb.ll @@ -9,7 +9,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A) { +define void @jd(ptr %A) { entry: br label %for.cond @@ -19,9 +19,9 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv %tmp = trunc i64 %indvars.iv to i32 - store i32 %tmp, i32* %arrayidx, align 4 + store i32 %tmp, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/CodeGen/non-affine-dominance-generated-entering.ll b/polly/test/CodeGen/non-affine-dominance-generated-entering.ll index 4ca7d7b36ebb..ebf36acc8d96 100644 --- a/polly/test/CodeGen/non-affine-dominance-generated-entering.ll +++ b/polly/test/CodeGen/non-affine-dominance-generated-entering.ll @@ -7,15 +7,15 @@ ; being copied. We check whether it is reusing the reloaded scalar. ; ; CHECK-LABEL: polly.stmt.subregionB_entry.exit: -; CHECK: store i1 %polly.cond, i1* %cond.s2a +; CHECK: store i1 %polly.cond, ptr %cond.s2a ; ; CHECK-LABEL: polly.stmt.subregionB_entry.entry: -; CHECK: %cond.s2a.reload = load i1, i1* %cond.s2a +; CHECK: %cond.s2a.reload = load i1, ptr %cond.s2a ; ; CHECK-LABEL: polly.stmt.subregionB_entry: ; CHECK: br i1 %cond.s2a.reload -define void @func(i32* %A) { +define void @func(ptr %A) { entry: br label %subregionA_entry @@ -30,7 +30,7 @@ subregionA_else: br label %subregionB_entry subregionB_entry: - store i32 0, i32* %A + store i32 0, ptr %A br i1 %cond, label %subregionB_if, label %subregionB_exit subregionB_if: diff --git a/polly/test/CodeGen/non-affine-phi-node-expansion-2.ll b/polly/test/CodeGen/non-affine-phi-node-expansion-2.ll index c0d30fb6bc56..2aca316d4c88 100644 --- a/polly/test/CodeGen/non-affine-phi-node-expansion-2.ll +++ b/polly/test/CodeGen/non-affine-phi-node-expansion-2.ll @@ -4,7 +4,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; CHECK: polly.stmt.bb3: ; preds = %polly.stmt.bb3.entry -; CHECK: %tmp6_p_scalar_ = load double, double* %arg1{{[0-9]*}}, align 8, !alias.scope !0, !noalias !3 +; CHECK: %tmp6_p_scalar_ = load double, ptr %arg1{{[0-9]*}}, align 8, !alias.scope !0, !noalias !3 ; CHECK: %p_tmp7 = fadd double 1.000000e+00, %tmp6_p_scalar_ ; CHECK: %p_tmp8 = fcmp olt double 1.400000e+01, %p_tmp7 ; CHECK: br i1 %p_tmp8, label %polly.stmt.bb9, label %polly.stmt.bb10 @@ -17,9 +17,9 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; CHECK: polly.stmt.bb11.exit: ; preds = %polly.stmt.bb10, %polly.stmt.bb9 ; CHECK: %polly.tmp12 = phi double [ 1.000000e+00, %polly.stmt.bb9 ], [ 2.000000e+00, %polly.stmt.bb10 ] -; CHECK: store double %polly.tmp12, double* %tmp12.phiops +; CHECK: store double %polly.tmp12, ptr %tmp12.phiops -define void @hoge(i32 %arg, [1024 x double]* %arg1) { +define void @hoge(i32 %arg, ptr %arg1) { bb: br label %bb2 @@ -29,8 +29,7 @@ bb2: ; preds = %bb bb3: ; preds = %bb11, %bb2 %tmp = phi i64 [ 0, %bb11 ], [ 0, %bb2 ] %tmp4 = icmp sgt i32 %arg, 0 - %tmp5 = getelementptr inbounds [1024 x double], [1024 x double]* %arg1, i64 0, i64 0 - %tmp6 = load double, double* %tmp5 + %tmp6 = load double, ptr %arg1 %tmp7 = fadd double 1.0, %tmp6 %tmp8 = fcmp olt double 14.0, %tmp7 br i1 %tmp8, label %bb9, label %bb10 @@ -43,8 +42,8 @@ bb10: ; preds = %bb3 bb11: ; preds = %bb10, %bb9 %tmp12 = phi double [ 1.0, %bb9 ], [ 2.0, %bb10 ] - %tmp13 = getelementptr inbounds [1024 x double], [1024 x double]* %arg1, i64 %tmp, i64 0 - store double %tmp12, double* %tmp13 + %tmp13 = getelementptr inbounds [1024 x double], ptr %arg1, i64 %tmp, i64 0 + store double %tmp12, ptr %tmp13 %tmp14 = add nuw nsw i64 0, 1 %tmp15 = trunc i64 %tmp14 to i32 br i1 false, label %bb3, label %bb16 diff --git a/polly/test/CodeGen/non-affine-phi-node-expansion-3.ll b/polly/test/CodeGen/non-affine-phi-node-expansion-3.ll index 3296bff97012..18a4b6e4ed4a 100644 --- a/polly/test/CodeGen/non-affine-phi-node-expansion-3.ll +++ b/polly/test/CodeGen/non-affine-phi-node-expansion-3.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-codegen \ ; RUN: -S < %s | FileCheck %s -define void @foo(float* %A, i1 %cond0, i1 %cond1) { +define void @foo(ptr %A, i1 %cond0, i1 %cond1) { entry: br label %loop @@ -36,7 +36,7 @@ branch2: backedge: %merge = phi float [%val0, %loop], [%val1, %branch1], [%val2, %branch2] %indvar.next = add i64 %indvar, 1 - store float %merge, float* %A + store float %merge, ptr %A %cmp = icmp sle i64 %indvar.next, 100 br i1 %cmp, label %loop, label %exit diff --git a/polly/test/CodeGen/non-affine-phi-node-expansion-4.ll b/polly/test/CodeGen/non-affine-phi-node-expansion-4.ll index 6943711ffb16..8a07ee7c7424 100644 --- a/polly/test/CodeGen/non-affine-phi-node-expansion-4.ll +++ b/polly/test/CodeGen/non-affine-phi-node-expansion-4.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-codegen \ ; RUN: -S < %s | FileCheck %s -define void @foo(float* %A, i1 %cond0, i1 %cond1) { +define void @foo(ptr %A, i1 %cond0, i1 %cond1) { entry: br label %loop @@ -40,7 +40,7 @@ branch2: backedge: %merge = phi float [%val0, %loop], [%val1, %branch1], [%val2, %branch2] %indvar.next = add i64 %indvar, 1 - store float %merge, float* %A + store float %merge, ptr %A %cmp = icmp sle i64 %indvar.next, 100 br i1 %cmp, label %loop, label %exit diff --git a/polly/test/CodeGen/non-affine-phi-node-expansion.ll b/polly/test/CodeGen/non-affine-phi-node-expansion.ll index 246cd8c89de8..091fc3e323dc 100644 --- a/polly/test/CodeGen/non-affine-phi-node-expansion.ll +++ b/polly/test/CodeGen/non-affine-phi-node-expansion.ll @@ -20,10 +20,10 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; CHECK: br label %polly.stmt.bb13.exit ; CHECK: polly.stmt.bb5: ; preds = %polly.stmt.bb3 -; CHECK: load i32, i32* %B +; CHECK: load i32, ptr %B ; Function Attrs: nounwind uwtable -define void @quux(%struct.wombat* %arg, i32* %B) { +define void @quux(ptr %arg, ptr %B) { bb: br i1 undef, label %bb2, label %bb1 @@ -41,9 +41,8 @@ bb4: ; preds = %bb3 br label %bb13 bb5: ; preds = %bb3 - %tmp7 = load i32, i32* %B - %tmp12 = getelementptr inbounds %struct.wombat, %struct.wombat* %arg, i64 0, i32 0, i64 0 - store i32 %tmp7, i32* %tmp12 + %tmp7 = load i32, ptr %B + store i32 %tmp7, ptr %arg br label %bb13 bb13: ; preds = %bb5, %bb4 diff --git a/polly/test/CodeGen/non-affine-region-exit-phi-incoming-synthesize-2.ll b/polly/test/CodeGen/non-affine-region-exit-phi-incoming-synthesize-2.ll index 1a6fb4d537bc..6a1d1f12ba9c 100644 --- a/polly/test/CodeGen/non-affine-region-exit-phi-incoming-synthesize-2.ll +++ b/polly/test/CodeGen/non-affine-region-exit-phi-incoming-synthesize-2.ll @@ -21,8 +21,8 @@ for.end20: ; preds = %entry for.body24: ; preds = %for.body61.preheader, %for.end20 %indvars.iv = phi i64 [ 0, %for.end20 ], [ %indvars.iv.next, %for.body61.preheader ] - %arrayidx26 = getelementptr inbounds [256 x i8], [256 x i8]* @connected_passed, i64 0, i64 %indvars.iv - store i8 0, i8* %arrayidx26, align 1 + %arrayidx26 = getelementptr inbounds [256 x i8], ptr @connected_passed, i64 0, i64 %indvars.iv + store i8 0, ptr %arrayidx26, align 1 %0 = trunc i64 %indvars.iv to i32 br i1 false, label %for.inc56.4, label %if.then51 diff --git a/polly/test/CodeGen/non-affine-region-phi-references-in-scop-value.ll b/polly/test/CodeGen/non-affine-region-phi-references-in-scop-value.ll index 6c28208a5f59..f6e4eb57319d 100644 --- a/polly/test/CodeGen/non-affine-region-phi-references-in-scop-value.ll +++ b/polly/test/CodeGen/non-affine-region-phi-references-in-scop-value.ll @@ -5,7 +5,7 @@ ; PHI-nodes in non-affine regions are code generated correctly. ; CHECK: polly.stmt.bb3.entry: -; CHECK-NEXT: %j.0.phiops.reload = load i64, i64* %j.0.phiops +; CHECK-NEXT: %j.0.phiops.reload = load i64, ptr %j.0.phiops ; CHECK-NEXT: br label %polly.stmt.bb3 ; CHECK: polly.stmt.bb3: @@ -20,7 +20,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64* %A, float* %B, i64* %xptr) { +define void @foo(ptr %A, ptr %B, ptr %xptr) { bb: br label %bb1 @@ -30,7 +30,7 @@ bb1: ; preds = %bb12, %bb br i1 %exitcond, label %bb2, label %bb14 bb2: ; preds = %bb1 - %x = load i64, i64* %xptr + %x = load i64, ptr %xptr br label %bb3 bb3: ; preds = %bb9, %bb2 @@ -40,10 +40,10 @@ bb3: ; preds = %bb9, %bb2 br i1 %tmp4, label %bb5, label %bb11 bb5: ; preds = %bb3 - %tmp6 = getelementptr inbounds float, float* %B, i64 42 - %tmp7 = load float, float* %tmp6, align 4 + %tmp6 = getelementptr inbounds float, ptr %B, i64 42 + %tmp7 = load float, ptr %tmp6, align 4 %tmp8 = fadd float %tmp7, 1.000000e+00 - store float %tmp8, float* %tmp6, align 4 + store float %tmp8, ptr %tmp6, align 4 br label %bb9 bb9: ; preds = %bb5 diff --git a/polly/test/CodeGen/non-hoisted-load-needed-as-base-ptr.ll b/polly/test/CodeGen/non-hoisted-load-needed-as-base-ptr.ll index 265363c0735d..5f6642b0630d 100644 --- a/polly/test/CodeGen/non-hoisted-load-needed-as-base-ptr.ll +++ b/polly/test/CodeGen/non-hoisted-load-needed-as-base-ptr.ll @@ -2,12 +2,12 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.1 = type { %struct.2*, %struct.2*, %struct.3*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8*, i8*, i8*, i8*, i8*, i32, [38 x i8], [128 x i8], [38 x i32], [256 x i8], [256 x i8], [256 x i8], %struct.4, [25 x [16 x %struct.4]], [128 x [64 x i16]] } +%struct.1 = type { ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr, ptr, ptr, ptr, i32, [38 x i8], [128 x i8], [38 x i32], [256 x i8], [256 x i8], [256 x i8], %struct.4, [25 x [16 x %struct.4]], [128 x [64 x i16]] } %struct.2 = type { i16, i16, i32, i32 } %struct.3 = type { i8, i8, i16, i16 } %struct.4 = type { i16, i8, i8 } -define void @AllocUnitsRare(%struct.1* %p, i32 %indx) { +define void @AllocUnitsRare(ptr %p, i32 %indx) { entry: br label %do.body @@ -17,16 +17,14 @@ do.body: ; preds = %do.body, %entry br i1 undef, label %do.body, label %do.end do.end: ; preds = %do.body - %Base.i = getelementptr inbounds %struct.1, %struct.1* %p, i32 0, i32 12 - %tmp.i = load i8*, i8** %Base.i, align 8, !tbaa !0 + %Base.i = getelementptr inbounds %struct.1, ptr %p, i32 0, i32 12 + %tmp.i = load ptr, ptr %Base.i, align 8, !tbaa !0 %idxprom.i = zext i32 %inc to i64 - %FreeList.i = getelementptr inbounds %struct.1, %struct.1* %p, i32 0, i32 20 - %arrayidx.i = getelementptr inbounds [38 x i32], [38 x i32]* %FreeList.i, i64 0, i64 %idxprom.i - %tmp1.i = bitcast i8* %tmp.i to i32* - %tmp2.i = load i32, i32* %tmp1.i, align 4, !tbaa !8 - store i32 %tmp2.i, i32* %arrayidx.i, align 4, !tbaa !8 - %Indx2Units.i = getelementptr inbounds %struct.1, %struct.1* %p, i32 0, i32 18 - %arrayidx.i1 = getelementptr inbounds [38 x i8], [38 x i8]* %Indx2Units.i, i64 0, i64 0 + %FreeList.i = getelementptr inbounds %struct.1, ptr %p, i32 0, i32 20 + %arrayidx.i = getelementptr inbounds [38 x i32], ptr %FreeList.i, i64 0, i64 %idxprom.i + %tmp2.i = load i32, ptr %tmp.i, align 4, !tbaa !8 + store i32 %tmp2.i, ptr %arrayidx.i, align 4, !tbaa !8 + %Indx2Units.i = getelementptr inbounds %struct.1, ptr %p, i32 0, i32 18 %cmp.i = icmp ne i32 0, 3 br i1 %cmp.i, label %if.then.i, label %SplitBlock.exit diff --git a/polly/test/CodeGen/only_non_affine_error_region.ll b/polly/test/CodeGen/only_non_affine_error_region.ll index e8ba7686343c..64f53bcda2c2 100644 --- a/polly/test/CodeGen/only_non_affine_error_region.ll +++ b/polly/test/CodeGen/only_non_affine_error_region.ll @@ -5,7 +5,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @f(i32 %argc, i32* %A) #0 { +define void @f(i32 %argc, ptr %A) #0 { entry: br i1 undef, label %for.end, label %for.body @@ -18,7 +18,7 @@ for.end: ; preds = %for.body, %entry br i1 %cmp170, label %if.then172, label %if.end174 if.then172: ; preds = %for.end - %0 = load i32, i32* %A + %0 = load i32, ptr %A tail call void @usage() br label %if.end174 diff --git a/polly/test/CodeGen/openmp_limit_threads.ll b/polly/test/CodeGen/openmp_limit_threads.ll index b3c2f3f73d11..e8eb819f13d9 100644 --- a/polly/test/CodeGen/openmp_limit_threads.ll +++ b/polly/test/CodeGen/openmp_limit_threads.ll @@ -14,18 +14,18 @@ ; A[i + j * 1024] = 0; ; } -; AUTO: call void @GOMP_parallel_loop_runtime_start(void (i8*)* @storePosition_polly_subfn, i8* %polly.par.userContext{{[0-9]*}}, i32 0, i64 0, i64 1024, i64 1) -; ONE: call void @GOMP_parallel_loop_runtime_start(void (i8*)* @storePosition_polly_subfn, i8* %polly.par.userContext{{[0-9]*}}, i32 1, i64 0, i64 1024, i64 1) -; FOUR: call void @GOMP_parallel_loop_runtime_start(void (i8*)* @storePosition_polly_subfn, i8* %polly.par.userContext{{[0-9]*}}, i32 4, i64 0, i64 1024, i64 1) +; AUTO: call void @GOMP_parallel_loop_runtime_start(ptr @storePosition_polly_subfn, ptr %polly.par.userContext{{[0-9]*}}, i32 0, i64 0, i64 1024, i64 1) +; ONE: call void @GOMP_parallel_loop_runtime_start(ptr @storePosition_polly_subfn, ptr %polly.par.userContext{{[0-9]*}}, i32 1, i64 0, i64 1024, i64 1) +; FOUR: call void @GOMP_parallel_loop_runtime_start(ptr @storePosition_polly_subfn, ptr %polly.par.userContext{{[0-9]*}}, i32 4, i64 0, i64 1024, i64 1) ; In automatic mode, no threads are pushed explicitly. ; LIBOMP-AUTO-NOT: call void @__kmpc_push_num_threads -; LIBOMP-ONE: call void @__kmpc_push_num_threads(%struct.ident_t* @.loc.dummy{{[.0-9]*}}, i32 %{{[0-9]+}}, i32 1) -; LIBOMP-FOUR: call void @__kmpc_push_num_threads(%struct.ident_t* @.loc.dummy{{[.0-9]*}}, i32 %{{[0-9]+}}, i32 4) +; LIBOMP-ONE: call void @__kmpc_push_num_threads(ptr @.loc.dummy{{[.0-9]*}}, i32 %{{[0-9]+}}, i32 1) +; LIBOMP-FOUR: call void @__kmpc_push_num_threads(ptr @.loc.dummy{{[.0-9]*}}, i32 %{{[0-9]+}}, i32 4) target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @storePosition(i32* %A) { +define void @storePosition(ptr %A) { entry: br label %for.cond @@ -45,8 +45,8 @@ for.cond1: ; preds = %for.inc, %for.body for.body3: ; preds = %for.cond1 %tmp = shl nsw i64 %indvars.iv, 10 %tmp6 = add nsw i64 %indvars.iv3, %tmp - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %tmp6 - store i32 0, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %tmp6 + store i32 0, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/CodeGen/param_div_div_div_2.ll b/polly/test/CodeGen/param_div_div_div_2.ll index b9a061a611a0..764ca241f166 100644 --- a/polly/test/CodeGen/param_div_div_div_2.ll +++ b/polly/test/CodeGen/param_div_div_div_2.ll @@ -26,7 +26,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %a, i32 %b, i32 %c, i32 %d) { +define void @f(ptr %A, i32 %a, i32 %b, i32 %c, i32 %d) { entry: br label %for.cond @@ -40,12 +40,12 @@ for.body: ; preds = %for.cond %div1 = udiv i32 %c, %d %div2 = udiv i32 %div, %div1 %idxprom = zext i32 %div2 to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - %tmp = load i32, i32* %arrayidx, align 4 - %arrayidx4 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx4, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + %tmp = load i32, ptr %arrayidx, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx4, align 4 %add = add i32 %tmp1, %tmp - store i32 %add, i32* %arrayidx4, align 4 + store i32 %add, ptr %arrayidx4, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/CodeGen/partial_write_emptyset.ll b/polly/test/CodeGen/partial_write_emptyset.ll index 4624976ececb..a25195f11ed7 100644 --- a/polly/test/CodeGen/partial_write_emptyset.ll +++ b/polly/test/CodeGen/partial_write_emptyset.ll @@ -8,7 +8,7 @@ ; A[0] = 42.0 ; -define void @partial_write_emptyset(i32 %n, double* noalias nonnull %A) { +define void @partial_write_emptyset(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -18,7 +18,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/CodeGen/partial_write_in_region_with_loop.ll b/polly/test/CodeGen/partial_write_in_region_with_loop.ll index 3c6ebaffad34..5af09852944b 100644 --- a/polly/test/CodeGen/partial_write_in_region_with_loop.ll +++ b/polly/test/CodeGen/partial_write_in_region_with_loop.ll @@ -22,16 +22,16 @@ ; CHECK-NEXT: br i1 %p_tmp4, label %polly.stmt.bb5, label %polly.stmt.bb11.exit ; CHECK:polly.stmt.bb5: -; CHECK-NEXT: %p_tmp6 = getelementptr inbounds float, float* %B, i64 42 -; CHECK-NEXT: %tmp7_p_scalar_ = load float, float* %p_tmp6 +; CHECK-NEXT: %p_tmp6 = getelementptr inbounds float, ptr %B, i64 42 +; CHECK-NEXT: %tmp7_p_scalar_ = load float, ptr %p_tmp6 ; CHECK-NEXT: %p_tmp8 = fadd float %tmp7_p_scalar_, 1.000000e+00 ; CHECK-NEXT: %16 = icmp sle i64 %polly.indvar, 9 ; CHECK-NEXT: %polly.Stmt_bb3__TO__bb11_MayWrite2.cond = icmp ne i1 %16, false ; CHECK-NEXT: br i1 %polly.Stmt_bb3__TO__bb11_MayWrite2.cond, label %polly.stmt.bb5.Stmt_bb3__TO__bb11_MayWrite2.partial, label %polly.stmt.bb5.cont ; CHECK:polly.stmt.bb5.Stmt_bb3__TO__bb11_MayWrite2.partial: ; preds = %polly.stmt.bb5 -; CHECK-NEXT: %polly.access.B3 = getelementptr float, float* %B, i64 42 -; CHECK-NEXT: store float %p_tmp8, float* %polly.access.B3 +; CHECK-NEXT: %polly.access.B3 = getelementptr float, ptr %B, i64 42 +; CHECK-NEXT: store float %p_tmp8, ptr %polly.access.B3 ; CHECK-NEXT: br label %polly.stmt.bb5.cont ; CHECK:polly.stmt.bb5.cont: @@ -48,7 +48,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @partial_write_in_region_with_loop(i64* %A, float* %B, i64* %xptr) { +define void @partial_write_in_region_with_loop(ptr %A, ptr %B, ptr %xptr) { bb: br label %bb1 @@ -58,7 +58,7 @@ bb1: ; preds = %bb12, %bb br i1 %exitcond, label %bb2, label %bb14 bb2: ; preds = %bb1 - %x = load i64, i64* %xptr + %x = load i64, ptr %xptr br label %bb3 bb3: ; preds = %bb9, %bb2 @@ -68,10 +68,10 @@ bb3: ; preds = %bb9, %bb2 br i1 %tmp4, label %bb5, label %bb11 bb5: ; preds = %bb3 - %tmp6 = getelementptr inbounds float, float* %B, i64 42 - %tmp7 = load float, float* %tmp6, align 4 + %tmp6 = getelementptr inbounds float, ptr %B, i64 42 + %tmp7 = load float, ptr %tmp6, align 4 %tmp8 = fadd float %tmp7, 1.000000e+00 - store float %tmp8, float* %tmp6, align 4 + store float %tmp8, ptr %tmp6, align 4 %tmp10 = add nuw nsw i64 %j.0, 1 br label %bb3 diff --git a/polly/test/CodeGen/partial_write_mapped_scalar.ll b/polly/test/CodeGen/partial_write_mapped_scalar.ll index c343f15d81c3..9137ef2123c8 100644 --- a/polly/test/CodeGen/partial_write_mapped_scalar.ll +++ b/polly/test/CodeGen/partial_write_mapped_scalar.ll @@ -10,7 +10,7 @@ ; A[0] = val; ; } -define void @partial_write_mapped_scalar(i32 %n, double* noalias nonnull %A) { +define void @partial_write_mapped_scalar(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -25,7 +25,7 @@ for: br i1 %if.cond, label %user, label %inc user: - store double %val, double* %A + store double %val, ptr %A br label %inc inc: @@ -49,8 +49,8 @@ return: ; CHECK-NEXT: br i1 %polly.Stmt_body_Write0.cond, label %polly.stmt.body.Stmt_body_Write0.partial, label %polly.stmt.body.cont ; CHECK: polly.stmt.body.Stmt_body_Write0.partial: -; CHECK-NEXT: %polly.access.A = getelementptr double, double* %A, i64 1 -; CHECK-NEXT: store double %p_val, double* %polly.access.A +; CHECK-NEXT: %polly.access.A = getelementptr double, ptr %A, i64 1 +; CHECK-NEXT: store double %p_val, ptr %polly.access.A ; CHECK-NEXT: br label %polly.stmt.body.cont ; CHECK: polly.stmt.body.cont: diff --git a/polly/test/CodeGen/partial_write_mapped_scalar_subregion.ll b/polly/test/CodeGen/partial_write_mapped_scalar_subregion.ll index 0d41046f213b..e054b65eadf3 100644 --- a/polly/test/CodeGen/partial_write_mapped_scalar_subregion.ll +++ b/polly/test/CodeGen/partial_write_mapped_scalar_subregion.ll @@ -14,7 +14,7 @@ ; A[0] = val; ; } -define void @partial_write_mapped_scalar_subregion(i32 %n, double* noalias nonnull %A) { +define void @partial_write_mapped_scalar_subregion(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -36,7 +36,7 @@ for: br i1 %if.cond, label %user, label %inc user: - store double %val, double* %A + store double %val, ptr %A br label %inc inc: @@ -57,8 +57,8 @@ return: ; CHECK-NEXT: br i1 %polly.Stmt_subregion__TO__subregion_exit_Write0.cond, label %polly.stmt.subregion_exit.exit.Stmt_subregion__TO__subregion_exit_Write0.partial, label %polly.stmt.subregion_exit.exit.cont ; CHECK-LABEL: polly.stmt.subregion_exit.exit.Stmt_subregion__TO__subregion_exit_Write0.partial: -; CHECK-NEXT: %polly.access.A = getelementptr double, double* %A, i64 1 -; CHECK-NEXT: store double %p_val, double* %polly.access.A +; CHECK-NEXT: %polly.access.A = getelementptr double, ptr %A, i64 1 +; CHECK-NEXT: store double %p_val, ptr %polly.access.A ; CHECK-NEXT: br label %polly.stmt.subregion_exit.exit.cont ; CHECK-LABEL: polly.stmt.subregion_exit.exit.cont: diff --git a/polly/test/CodeGen/partial_write_mapped_vector.ll b/polly/test/CodeGen/partial_write_mapped_vector.ll index b40f72b35bf8..27d3a74bd6ba 100644 --- a/polly/test/CodeGen/partial_write_mapped_vector.ll +++ b/polly/test/CodeGen/partial_write_mapped_vector.ll @@ -10,7 +10,7 @@ ; A[0] = val; ; } -define void @partial_write_mapped_vector(double* noalias nonnull %A) { +define void @partial_write_mapped_vector(ptr noalias nonnull %A) { entry: br label %for @@ -25,8 +25,8 @@ for: br i1 %if.cond, label %user, label %inc user: - %elt= getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %elt + %elt= getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %elt br label %inc inc: @@ -50,8 +50,8 @@ return: ; CHECK-NEXT: br i1 %polly.Stmt_body_Write0.cond, label %polly.stmt.body.Stmt_body_Write0.partial, label %polly.stmt.body.cont ; CHECK-LABEL: polly.stmt.body.Stmt_body_Write0.partial: -; CHECK-NEXT: %polly.access.A = getelementptr double, double* %A, i64 1 -; CHECK-NEXT: store double %p_val, double* %polly.access.A +; CHECK-NEXT: %polly.access.A = getelementptr double, ptr %A, i64 1 +; CHECK-NEXT: store double %p_val, ptr %polly.access.A ; CHECK-NEXT: br label %polly.stmt.body.cont ; CHECK-LABEL: polly.stmt.body.cont: diff --git a/polly/test/CodeGen/perf_monitoring.ll b/polly/test/CodeGen/perf_monitoring.ll index 6c687233e220..2abbf24f5e78 100644 --- a/polly/test/CodeGen/perf_monitoring.ll +++ b/polly/test/CodeGen/perf_monitoring.ll @@ -11,7 +11,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" target triple = "x86_64-unknown-linux-gnu" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br label %next @@ -21,8 +21,8 @@ next: for.i: %indvar = phi i64 [ 0, %next], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i @@ -40,48 +40,48 @@ return: ; CHECK: polly.split_new_and_old: ; preds = %entry ; CHECK-NEXT: %0 = call { i64, i32 } @llvm.x86.rdtscp() ; CHECK-NEXT: %1 = extractvalue { i64, i32 } %0, 0 -; CHECK-NEXT: store volatile i64 %1, i64* @__polly_perf_cycles_in_scop_start +; CHECK-NEXT: store volatile i64 %1, ptr @__polly_perf_cycles_in_scop_start ; CHECK: polly.merge_new_and_old: ; preds = %polly.exiting, %return.region_exiting -; CHECK-NEXT: %6 = load volatile i64, i64* @__polly_perf_cycles_in_scop_start +; CHECK-NEXT: %6 = load volatile i64, ptr @__polly_perf_cycles_in_scop_start ; CHECK-NEXT: %7 = call { i64, i32 } @llvm.x86.rdtscp() ; CHECK-NEXT: %8 = extractvalue { i64, i32 } %7, 0 ; CHECK-NEXT: %9 = sub i64 %8, %6 -; CHECK-NEXT: %10 = load volatile i64, i64* @__polly_perf_cycles_in_scops +; CHECK-NEXT: %10 = load volatile i64, ptr @__polly_perf_cycles_in_scops ; CHECK-NEXT: %11 = add i64 %10, %9 -; CHECK-NEXT: store volatile i64 %11, i64* @__polly_perf_cycles_in_scops +; CHECK-NEXT: store volatile i64 %11, ptr @__polly_perf_cycles_in_scops ; CHECK: define weak_odr void @__polly_perf_final() { ; CHECK-NEXT: start: ; CHECK-NEXT: %0 = call { i64, i32 } @llvm.x86.rdtscp() ; CHECK-NEXT: %1 = extractvalue { i64, i32 } %0, 0 -; CHECK-NEXT: %2 = load volatile i64, i64* @__polly_perf_cycles_total_start +; CHECK-NEXT: %2 = load volatile i64, ptr @__polly_perf_cycles_total_start ; CHECK-NEXT: %3 = sub i64 %1, %2 -; CHECK-NEXT: %4 = load volatile i64, i64* @__polly_perf_cycles_in_scops -; CHECK-NEXT: %5 = call i32 (...) @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @1, i32 0, i32 0), i8 addrspace(4)* getelementptr inbounds ([27 x i8], [27 x i8] addrspace(4)* @0, i32 0, i32 0)) -; CHECK-NEXT: %6 = call i32 @fflush(i8* null) -; CHECK-NEXT: %7 = call i32 (...) @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @3, i32 0, i32 0), i8 addrspace(4)* getelementptr inbounds ([27 x i8], [27 x i8] addrspace(4)* @2, i32 0, i32 0)) -; CHECK-NEXT: %8 = call i32 @fflush(i8* null) -; CHECK-NEXT: %9 = call i32 (...) @printf(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @6, i32 0, i32 0), i8 addrspace(4)* getelementptr inbounds ([8 x i8], [8 x i8] addrspace(4)* @4, i32 0, i32 0), i64 %3, i8 addrspace(4)* getelementptr inbounds ([2 x i8], [2 x i8] addrspace(4)* @5, i32 0, i32 0)) -; CHECK-NEXT: %10 = call i32 @fflush(i8* null) -; CHECK-NEXT: %11 = call i32 (...) @printf(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @9, i32 0, i32 0), i8 addrspace(4)* getelementptr inbounds ([8 x i8], [8 x i8] addrspace(4)* @7, i32 0, i32 0), i64 %4, i8 addrspace(4)* getelementptr inbounds ([2 x i8], [2 x i8] addrspace(4)* @8, i32 0, i32 0)) -; CHECK-NEXT: %12 = call i32 @fflush(i8* null) +; CHECK-NEXT: %4 = load volatile i64, ptr @__polly_perf_cycles_in_scops +; CHECK-NEXT: %5 = call i32 (...) @printf(ptr @1, ptr addrspace(4) @0) +; CHECK-NEXT: %6 = call i32 @fflush(ptr null) +; CHECK-NEXT: %7 = call i32 (...) @printf(ptr @3, ptr addrspace(4) @2) +; CHECK-NEXT: %8 = call i32 @fflush(ptr null) +; CHECK-NEXT: %9 = call i32 (...) @printf(ptr @6, ptr addrspace(4) @4, i64 %3, ptr addrspace(4) @5) +; CHECK-NEXT: %10 = call i32 @fflush(ptr null) +; CHECK-NEXT: %11 = call i32 (...) @printf(ptr @9, ptr addrspace(4) @7, i64 %4, ptr addrspace(4) @8) +; CHECK-NEXT: %12 = call i32 @fflush(ptr null) ; CHECK: define weak_odr void @__polly_perf_init() { ; CHECK-NEXT: start: -; CHECK-NEXT: %0 = load i1, i1* @__polly_perf_initialized +; CHECK-NEXT: %0 = load i1, ptr @__polly_perf_initialized ; CHECK-NEXT: br i1 %0, label %earlyreturn, label %initbb ; CHECK: earlyreturn: ; preds = %start ; CHECK-NEXT: ret void ; CHECK: initbb: ; preds = %start -; CHECK-NEXT: store i1 true, i1* @__polly_perf_initialized -; CHECK-NEXT: %1 = call i32 @atexit(i8* bitcast (void ()* @__polly_perf_final to i8*)) +; CHECK-NEXT: store i1 true, ptr @__polly_perf_initialized +; CHECK-NEXT: %1 = call i32 @atexit(ptr @__polly_perf_final) ; CHECK-NEXT: %2 = call { i64, i32 } @llvm.x86.rdtscp() ; CHECK-NEXT: %3 = extractvalue { i64, i32 } %2, 0 -; CHECK-NEXT: store volatile i64 %3, i64* @__polly_perf_cycles_total_start +; CHECK-NEXT: store volatile i64 %3, ptr @__polly_perf_cycles_total_start ; CHECK-NEXT: ret void ; CHECK-NEXT: } diff --git a/polly/test/CodeGen/perf_monitoring_cycles_per_scop.ll b/polly/test/CodeGen/perf_monitoring_cycles_per_scop.ll index 6c496d24d6c0..11d63fc47658 100644 --- a/polly/test/CodeGen/perf_monitoring_cycles_per_scop.ll +++ b/polly/test/CodeGen/perf_monitoring_cycles_per_scop.ll @@ -17,7 +17,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" target triple = "x86_64-unknown-linux-gnu" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br label %next @@ -27,8 +27,8 @@ next: for.i: %indvar = phi i64 [ 0, %next], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i @@ -39,7 +39,7 @@ return: } -define void @g(i64* %A, i64 %N) nounwind { +define void @g(ptr %A, i64 %N) nounwind { entry: fence seq_cst br label %next @@ -49,8 +49,8 @@ next: for.i: %indvar = phi i64 [ 0, %next], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i @@ -65,11 +65,11 @@ return: ; @"__polly_perf_in_g_from__%next__to__%polly.merge_new_and_old_cycles" = weak thread_local(initialexec) constant i64 0 ; Bumping up number of cycles in f -; CHECK: %12 = load volatile i64, i64* @"__polly_perf_in_f_from__%next__to__%polly.merge_new_and_old_cycles" +; CHECK: %12 = load volatile i64, ptr @"__polly_perf_in_f_from__%next__to__%polly.merge_new_and_old_cycles" ; CHECK-NEXT: %13 = add i64 %12, %9 -; CHECK-NEXT: store volatile i64 %13, i64* @"__polly_perf_in_f_from__%next__to__%polly.merge_new_and_old_cycles" +; CHECK-NEXT: store volatile i64 %13, ptr @"__polly_perf_in_f_from__%next__to__%polly.merge_new_and_old_cycles" ; Bumping up number of cycles in g -; CHECK: %12 = load volatile i64, i64* @"__polly_perf_in_g_from__%next__to__%polly.merge_new_and_old_cycles" +; CHECK: %12 = load volatile i64, ptr @"__polly_perf_in_g_from__%next__to__%polly.merge_new_and_old_cycles" ; CHECK-NEXT: %13 = add i64 %12, %9 -; CHECK-NEXT: store volatile i64 %13, i64* @"__polly_perf_in_g_from__%next__to__%polly.merge_new_and_old_cycles" +; CHECK-NEXT: store volatile i64 %13, ptr @"__polly_perf_in_g_from__%next__to__%polly.merge_new_and_old_cycles" diff --git a/polly/test/CodeGen/perf_monitoring_trip_counts_per_scop.ll b/polly/test/CodeGen/perf_monitoring_trip_counts_per_scop.ll index 582903c2ea76..9b7f324df8e4 100644 --- a/polly/test/CodeGen/perf_monitoring_trip_counts_per_scop.ll +++ b/polly/test/CodeGen/perf_monitoring_trip_counts_per_scop.ll @@ -17,7 +17,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" target triple = "x86_64-unknown-linux-gnu" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br label %next @@ -27,8 +27,8 @@ next: for.i: %indvar = phi i64 [ 0, %next], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i @@ -39,7 +39,7 @@ return: } -define void @g(i64* %A, i64 %N) nounwind { +define void @g(ptr %A, i64 %N) nounwind { entry: fence seq_cst br label %next @@ -49,8 +49,8 @@ next: for.i: %indvar = phi i64 [ 0, %next], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i @@ -65,11 +65,11 @@ return: ; CHECK: @"__polly_perf_in_g_from__%next__to__%polly.merge_new_and_old_trip_count" = weak thread_local(initialexec) constant i64 0 ; Bumping up number of cycles in f -; CHECK: %14 = load volatile i64, i64* @"__polly_perf_in_f_from__%next__to__%polly.merge_new_and_old_trip_count" +; CHECK: %14 = load volatile i64, ptr @"__polly_perf_in_f_from__%next__to__%polly.merge_new_and_old_trip_count" ; CHECK-NEXT: %15 = add i64 %14, 1 -; CHECK-NEXT: store volatile i64 %15, i64* @"__polly_perf_in_f_from__%next__to__%polly.merge_new_and_old_trip_count" +; CHECK-NEXT: store volatile i64 %15, ptr @"__polly_perf_in_f_from__%next__to__%polly.merge_new_and_old_trip_count" ; Bumping up number of cycles in g -; CHECK: %14 = load volatile i64, i64* @"__polly_perf_in_g_from__%next__to__%polly.merge_new_and_old_trip_count" +; CHECK: %14 = load volatile i64, ptr @"__polly_perf_in_g_from__%next__to__%polly.merge_new_and_old_trip_count" ; CHECK-NEXT: %15 = add i64 %14, 1 -; CHECK-NEXT: store volatile i64 %15, i64* @"__polly_perf_in_g_from__%next__to__%polly.merge_new_and_old_trip_count" +; CHECK-NEXT: store volatile i64 %15, ptr @"__polly_perf_in_g_from__%next__to__%polly.merge_new_and_old_trip_count" diff --git a/polly/test/CodeGen/phi-defined-before-scop.ll b/polly/test/CodeGen/phi-defined-before-scop.ll index bee814e2b280..a3b1ba264f04 100644 --- a/polly/test/CodeGen/phi-defined-before-scop.ll +++ b/polly/test/CodeGen/phi-defined-before-scop.ll @@ -1,17 +1,17 @@ ; RUN: opt %loadPolly -polly-codegen -S < %s | FileCheck %s ; CHECK-LABEL: polly.merge_new_and_old: -; CHECK-NEXT: %tmp7.ph.merge = phi %struct.wibble* [ %tmp7.ph.final_reload, %polly.exiting ], [ %tmp7.ph, %bb6.region_exiting ] +; CHECK-NEXT: %tmp7.ph.merge = phi ptr [ %tmp7.ph.final_reload, %polly.exiting ], [ %tmp7.ph, %bb6.region_exiting ] ; CHECK-LABEL: polly.stmt.bb3: -; CHECK-NEXT: store %struct.wibble* %tmp2, %struct.wibble** %tmp7.s2a +; CHECK-NEXT: store ptr %tmp2, ptr %tmp7.s2a target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" %struct.blam = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 } -%struct.wibble = type { i32, %struct.wibble*, %struct.wibble* } +%struct.wibble = type { i32, ptr, ptr } -@global = external global %struct.blam*, align 8 +@global = external global ptr, align 8 ; Function Attrs: nounwind uwtable define void @wobble() #0 { @@ -19,19 +19,19 @@ bb: br label %bb1 bb1: ; preds = %bb6, %bb - %tmp2 = phi %struct.wibble* [ %tmp7, %bb6 ], [ undef, %bb ] - %tmp = load %struct.blam*, %struct.blam** @global, align 8, !tbaa !1 + %tmp2 = phi ptr [ %tmp7, %bb6 ], [ undef, %bb ] + %tmp = load ptr, ptr @global, align 8, !tbaa !1 br label %bb3 bb3: ; preds = %bb1 - %tmp4 = getelementptr inbounds %struct.blam, %struct.blam* %tmp, i64 0, i32 1 + %tmp4 = getelementptr inbounds %struct.blam, ptr %tmp, i64 0, i32 1 br i1 false, label %bb6, label %bb5 bb5: ; preds = %bb3 br label %bb6 bb6: ; preds = %bb5, %bb3 - %tmp7 = phi %struct.wibble* [ %tmp2, %bb3 ], [ undef, %bb5 ] + %tmp7 = phi ptr [ %tmp2, %bb3 ], [ undef, %bb5 ] br i1 undef, label %bb8, label %bb1 bb8: ; preds = %bb6 diff --git a/polly/test/CodeGen/phi_after_error_block_outside_of_scop.ll b/polly/test/CodeGen/phi_after_error_block_outside_of_scop.ll index fd198eddd8de..c34ebfc3ca02 100644 --- a/polly/test/CodeGen/phi_after_error_block_outside_of_scop.ll +++ b/polly/test/CodeGen/phi_after_error_block_outside_of_scop.ll @@ -4,9 +4,9 @@ ; outside of the scope. In this situation, we should not affect code generation. ; CHECK: polly.cond: -; CHECK-NEXT: ptrtoint float* %tmp8 to i64 +; CHECK-NEXT: ptrtoint ptr %tmp8 to i64 ; CHECK-NEXT: icmp sle i64 -; CHECK-NEXT: ptrtoint float* %tmp8 to i64 +; CHECK-NEXT: ptrtoint ptr %tmp8 to i64 ; CHECK-NEXT: icmp sge i64 ; CHECK-NEXT: or i1 ; CHECK-NEXT: label %polly.then, label %polly.else @@ -23,8 +23,7 @@ bb1: br i1 undef, label %bb5, label %bb2 bb2: - %tmp = call i8* @pluto() - %tmp4 = bitcast i8* %tmp to float* + %tmp = call ptr @pluto() br label %bb6 bb5: @@ -35,19 +34,19 @@ bb6: br label %bb7 bb7: - %tmp8 = phi float* [ %tmp4, %bb6 ], [ null, %bb5 ] + %tmp8 = phi ptr [ %tmp, %bb6 ], [ null, %bb5 ] br label %bb9 bb9: - %tmp10 = icmp eq float* %tmp8, null + %tmp10 = icmp eq ptr %tmp8, null br i1 %tmp10, label %bb12, label %bb11 bb11: br label %bb12 bb12: - %tmp13 = phi float* [ undef, %bb9 ], [ undef, %bb11 ] + %tmp13 = phi ptr [ undef, %bb9 ], [ undef, %bb11 ] ret void } -declare i8* @pluto() +declare ptr @pluto() diff --git a/polly/test/CodeGen/phi_condition_modeling_1.ll b/polly/test/CodeGen/phi_condition_modeling_1.ll index 92dd1612ac85..b14d32921cf7 100644 --- a/polly/test/CodeGen/phi_condition_modeling_1.ll +++ b/polly/test/CodeGen/phi_condition_modeling_1.ll @@ -14,16 +14,16 @@ ; CHECK-LABEL: bb: ; CHECK: %tmp.0.phiops = alloca i32 ; CHECK-LABEL: polly.stmt.bb8: -; CHECK: %tmp.0.phiops.reload = load i32, i32* %tmp.0.phiops -; CHECK: store i32 %tmp.0.phiops.reload, i32* +; CHECK: %tmp.0.phiops.reload = load i32, ptr %tmp.0.phiops +; CHECK: store i32 %tmp.0.phiops.reload, ptr ; CHECK-LABEL: polly.stmt.bb7: -; CHECK: store i32 5, i32* %tmp.0.phiops +; CHECK: store i32 5, ptr %tmp.0.phiops ; CHECK-LABEL: polly.stmt.bb6: -; CHECK: store i32 3, i32* %tmp.0.phiops +; CHECK: store i32 3, ptr %tmp.0.phiops target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %c, i32 %N) { +define void @f(ptr %A, i32 %c, i32 %N) { bb: %tmp = sext i32 %N to i64 %tmp1 = sext i32 %c to i64 @@ -46,8 +46,8 @@ bb7: ; preds = %bb4 bb8: ; preds = %bb7, %bb6 %tmp.0 = phi i32 [ 3, %bb6 ], [ 5, %bb7 ] - %tmp9 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp.0, i32* %tmp9, align 4 + %tmp9 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp.0, ptr %tmp9, align 4 br label %bb10 bb10: ; preds = %bb8 diff --git a/polly/test/CodeGen/phi_condition_modeling_2.ll b/polly/test/CodeGen/phi_condition_modeling_2.ll index 1b30e4dbafdc..dab2977bf065 100644 --- a/polly/test/CodeGen/phi_condition_modeling_2.ll +++ b/polly/test/CodeGen/phi_condition_modeling_2.ll @@ -15,19 +15,19 @@ ; CHECK-DAG: %tmp.0.s2a = alloca i32 ; CHECK-DAG: %tmp.0.phiops = alloca i32 ; CHECK-LABEL: polly.stmt.bb8: -; CHECK: %tmp.0.phiops.reload = load i32, i32* %tmp.0.phiops -; CHECK: store i32 %tmp.0.phiops.reload, i32* %tmp.0.s2a +; CHECK: %tmp.0.phiops.reload = load i32, ptr %tmp.0.phiops +; CHECK: store i32 %tmp.0.phiops.reload, ptr %tmp.0.s2a ; CHECK-LABEL: polly.stmt.bb8b: -; CHECK: %tmp.0.s2a.reload = load i32, i32* %tmp.0.s2a +; CHECK: %tmp.0.s2a.reload = load i32, ptr %tmp.0.s2a ; CHECK: store i32 %tmp.0.s2a.reload, ; CHECK-LABEL: polly.stmt.bb7: -; CHECK: store i32 5, i32* %tmp.0.phiops +; CHECK: store i32 5, ptr %tmp.0.phiops ; CHECK-LABEL: polly.stmt.bb6: -; CHECK: store i32 3, i32* %tmp.0.phiops +; CHECK: store i32 3, ptr %tmp.0.phiops target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %c, i32 %N) { +define void @f(ptr %A, i32 %c, i32 %N) { bb: %tmp = sext i32 %N to i64 %tmp1 = sext i32 %c to i64 @@ -53,8 +53,8 @@ bb8: ; preds = %bb7, %bb6 br label %bb8b bb8b: - %tmp9 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp.0, i32* %tmp9, align 4 + %tmp9 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp.0, ptr %tmp9, align 4 br label %bb10 bb10: ; preds = %bb8 diff --git a/polly/test/CodeGen/phi_in_exit_early_lnt_failure_1.ll b/polly/test/CodeGen/phi_in_exit_early_lnt_failure_1.ll index 549a5047676e..13688480e315 100644 --- a/polly/test/CodeGen/phi_in_exit_early_lnt_failure_1.ll +++ b/polly/test/CodeGen/phi_in_exit_early_lnt_failure_1.ll @@ -10,7 +10,7 @@ ; @recd = external hidden global [255 x i32], align 16 -define void @rsdec_204(i8* %data_in) { +define void @rsdec_204(ptr %data_in) { entry: br i1 undef, label %if.then, label %for.body @@ -19,11 +19,9 @@ if.then: ; preds = %entry for.body: ; preds = %for.body, %entry %i.05 = phi i32 [ %inc, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i8, i8* %data_in, i64 0 - %0 = load i8, i8* %arrayidx, align 1 + %0 = load i8, ptr %data_in, align 1 %conv = zext i8 %0 to i32 - %arrayidx2 = getelementptr inbounds [255 x i32], [255 x i32]* @recd, i64 0, i64 0 - store i32 %conv, i32* %arrayidx2, align 4 + store i32 %conv, ptr @recd, align 4 %inc = add nuw nsw i32 %i.05, 1 br i1 false, label %for.body, label %for.body.6 diff --git a/polly/test/CodeGen/phi_in_exit_early_lnt_failure_2.ll b/polly/test/CodeGen/phi_in_exit_early_lnt_failure_2.ll index 939b8a79fa99..01dd450590d9 100644 --- a/polly/test/CodeGen/phi_in_exit_early_lnt_failure_2.ll +++ b/polly/test/CodeGen/phi_in_exit_early_lnt_failure_2.ll @@ -10,22 +10,21 @@ ; CHECK: %eps1.addr.0.ph.merge = phi double [ %eps1.addr.0.ph.final_reload, %polly.exiting ], [ %eps1.addr.0.ph, %if.end.47.region_exiting ] ; ; CHECK-LABEL: polly.start: -; CHECK-NEXT: store double %eps1, double* %eps1.s2a +; CHECK-NEXT: store double %eps1, ptr %eps1.s2a ; ; CHECK-LABEL: polly.exiting: -; CHECK-NEXT: %eps1.addr.0.ph.final_reload = load double, double* %eps1.addr.0.s2a +; CHECK-NEXT: %eps1.addr.0.ph.final_reload = load double, ptr %eps1.addr.0.s2a ; -define void @dbisect(double* %c, double* %b, double %eps1, double* %eps2) { +define void @dbisect(ptr %c, ptr %b, double %eps1, ptr %eps2) { entry: br label %entry.split entry.split: ; preds = %entry - store double 0.000000e+00, double* %b, align 8 + store double 0.000000e+00, ptr %b, align 8 br i1 false, label %for.inc, label %for.end if.end: ; preds = %if.then, %for.body - %arrayidx33 = getelementptr inbounds double, double* %c, i64 0 - %0 = load double, double* %arrayidx33, align 8 + %0 = load double, ptr %c, align 8 br label %for.inc for.inc: ; preds = %if.then.36, %if.end @@ -39,7 +38,7 @@ for.end: ; preds = %for.cond.for.end_cr br i1 %cmp45, label %if.end.47, label %if.then.46 if.then.46: ; preds = %for.end - %1 = load double, double* %eps2, align 8 + %1 = load double, ptr %eps2, align 8 br label %if.end.47 if.end.47: ; preds = %if.then.46, %for.end diff --git a/polly/test/CodeGen/phi_in_exit_early_lnt_failure_3.ll b/polly/test/CodeGen/phi_in_exit_early_lnt_failure_3.ll index 45a765b9035b..66b95b0e0317 100644 --- a/polly/test/CodeGen/phi_in_exit_early_lnt_failure_3.ll +++ b/polly/test/CodeGen/phi_in_exit_early_lnt_failure_3.ll @@ -4,27 +4,25 @@ ; produce the PHI node in the exit we are looking for. ; ; CHECK-LABEL: polly.merge_new_and_old: -; CHECK-NEXT: %n2ptr.2.ph.merge = phi i8* [ %n2ptr.2.ph.final_reload, %polly.exiting ], [ %n2ptr.2.ph, %if.end.45.region_exiting ] +; CHECK-NEXT: %n2ptr.2.ph.merge = phi ptr [ %n2ptr.2.ph.final_reload, %polly.exiting ], [ %n2ptr.2.ph, %if.end.45.region_exiting ] ; ; CHECK-LABEL: if.end.45: -; CHECK-NEXT: %n2ptr.2 = phi i8* [ %add.ptr25, %entry ], [ %add.ptr25, %while.cond.preheader ], [ %n2ptr.2.ph.merge, %polly.merge_new_and_old ] +; CHECK-NEXT: %n2ptr.2 = phi ptr [ %add.ptr25, %entry ], [ %add.ptr25, %while.cond.preheader ], [ %n2ptr.2.ph.merge, %polly.merge_new_and_old ] %struct.bc_struct.0.2.4.6.8.15.24.27.29.32.38.46.48.92.93.94.95.97.99.100.102.105.107.111.118.119.121 = type { i32, i32, i32, i32, [1024 x i8] } ; Function Attrs: nounwind uwtable -declare %struct.bc_struct.0.2.4.6.8.15.24.27.29.32.38.46.48.92.93.94.95.97.99.100.102.105.107.111.118.119.121* @new_num() #0 +declare ptr @new_num() #0 ; Function Attrs: nounwind uwtable -define void @_do_add(%struct.bc_struct.0.2.4.6.8.15.24.27.29.32.38.46.48.92.93.94.95.97.99.100.102.105.107.111.118.119.121* %n2) #0 { +define void @_do_add(ptr %n2) #0 { entry: - %call = tail call %struct.bc_struct.0.2.4.6.8.15.24.27.29.32.38.46.48.92.93.94.95.97.99.100.102.105.107.111.118.119.121* @new_num() - %0 = load i32, i32* undef, align 4 - %add.ptr22 = getelementptr inbounds %struct.bc_struct.0.2.4.6.8.15.24.27.29.32.38.46.48.92.93.94.95.97.99.100.102.105.107.111.118.119.121, %struct.bc_struct.0.2.4.6.8.15.24.27.29.32.38.46.48.92.93.94.95.97.99.100.102.105.107.111.118.119.121* %n2, i64 0, i32 4, i64 0 - %add.ptr24 = getelementptr inbounds i8, i8* %add.ptr22, i64 0 - %add.ptr25 = getelementptr inbounds i8, i8* %add.ptr24, i64 -1 - %add.ptr29 = getelementptr inbounds %struct.bc_struct.0.2.4.6.8.15.24.27.29.32.38.46.48.92.93.94.95.97.99.100.102.105.107.111.118.119.121, %struct.bc_struct.0.2.4.6.8.15.24.27.29.32.38.46.48.92.93.94.95.97.99.100.102.105.107.111.118.119.121* %call, i64 0, i32 4, i64 0 - %add.ptr31 = getelementptr inbounds i8, i8* %add.ptr29, i64 0 - %add.ptr32 = getelementptr inbounds i8, i8* %add.ptr31, i64 -1 + %call = tail call ptr @new_num() + %0 = load i32, ptr undef, align 4 + %add.ptr22 = getelementptr inbounds %struct.bc_struct.0.2.4.6.8.15.24.27.29.32.38.46.48.92.93.94.95.97.99.100.102.105.107.111.118.119.121, ptr %n2, i64 0, i32 4, i64 0 + %add.ptr25 = getelementptr inbounds i8, ptr %add.ptr22, i64 -1 + %add.ptr29 = getelementptr inbounds %struct.bc_struct.0.2.4.6.8.15.24.27.29.32.38.46.48.92.93.94.95.97.99.100.102.105.107.111.118.119.121, ptr %call, i64 0, i32 4, i64 0 + %add.ptr32 = getelementptr inbounds i8, ptr %add.ptr29, i64 -1 br i1 undef, label %if.end.45, label %if.then if.then: ; preds = %entry @@ -47,18 +45,18 @@ while.body: ; preds = %while.body, %while. br label %while.body while.body.40: ; preds = %while.body.40, %while.body.40.lr.ph - %sumptr.141 = phi i8* [ %add.ptr32, %while.body.40.lr.ph ], [ %incdec.ptr42, %while.body.40 ] - %n2ptr.040 = phi i8* [ %add.ptr25, %while.body.40.lr.ph ], [ %incdec.ptr41, %while.body.40 ] - %incdec.ptr41 = getelementptr inbounds i8, i8* %n2ptr.040, i64 -1 - %1 = load i8, i8* %n2ptr.040, align 1 - %incdec.ptr42 = getelementptr inbounds i8, i8* %sumptr.141, i64 -1 - store i8 %1, i8* %sumptr.141, align 1 + %sumptr.141 = phi ptr [ %add.ptr32, %while.body.40.lr.ph ], [ %incdec.ptr42, %while.body.40 ] + %n2ptr.040 = phi ptr [ %add.ptr25, %while.body.40.lr.ph ], [ %incdec.ptr41, %while.body.40 ] + %incdec.ptr41 = getelementptr inbounds i8, ptr %n2ptr.040, i64 -1 + %1 = load i8, ptr %n2ptr.040, align 1 + %incdec.ptr42 = getelementptr inbounds i8, ptr %sumptr.141, i64 -1 + store i8 %1, ptr %sumptr.141, align 1 br i1 false, label %while.body.40, label %while.cond.38.if.end.45.loopexit9_crit_edge while.cond.38.if.end.45.loopexit9_crit_edge: ; preds = %while.body.40 br label %if.end.45 if.end.45: ; preds = %while.cond.38.if.end.45.loopexit9_crit_edge, %while.cond.preheader, %while.cond.38.preheader, %entry - %n2ptr.2 = phi i8* [ %add.ptr25, %entry ], [ %add.ptr25, %while.cond.preheader ], [ undef, %while.cond.38.if.end.45.loopexit9_crit_edge ], [ %add.ptr25, %while.cond.38.preheader ] + %n2ptr.2 = phi ptr [ %add.ptr25, %entry ], [ %add.ptr25, %while.cond.preheader ], [ undef, %while.cond.38.if.end.45.loopexit9_crit_edge ], [ %add.ptr25, %while.cond.38.preheader ] ret void } diff --git a/polly/test/CodeGen/phi_in_exit_early_lnt_failure_5.ll b/polly/test/CodeGen/phi_in_exit_early_lnt_failure_5.ll index bbf62e4f6200..9a046367e768 100644 --- a/polly/test/CodeGen/phi_in_exit_early_lnt_failure_5.ll +++ b/polly/test/CodeGen/phi_in_exit_early_lnt_failure_5.ll @@ -10,14 +10,13 @@ ; CHECK-LABEL: if.end.47: ; CHECK-NEXT: %eps1.addr.0 = phi double [ %eps1.addr.0.ph.merge, %polly.merge_new_and_old ] ; -define void @dbisect(double* %c, double* %b, double %eps1, double* %eps2) { +define void @dbisect(ptr %c, ptr %b, double %eps1, ptr %eps2) { entry: br label %entry.split entry.split: ; preds = %entry - store double 0.000000e+00, double* %b, align 8 - %arrayidx9 = getelementptr inbounds double, double* %c, i64 0 - %0 = load double, double* %arrayidx9, align 8 + store double 0.000000e+00, ptr %b, align 8 + %0 = load double, ptr %c, align 8 br i1 false, label %for.body.lr.ph, label %for.end for.body.lr.ph: ; preds = %entry.split @@ -42,7 +41,7 @@ for.cond.for.end_crit_edge: ; preds = %for.inc br label %for.end for.end: ; preds = %for.cond.for.end_crit_edge, %entry.split - store double undef, double* %eps2, align 8 + store double undef, ptr %eps2, align 8 %cmp45 = fcmp ugt double %eps1, 0.000000e+00 br i1 %cmp45, label %if.end.47, label %if.then.46 diff --git a/polly/test/CodeGen/phi_scalar_simple_1.ll b/polly/test/CodeGen/phi_scalar_simple_1.ll index 895d32902ddc..d62975b6a7b3 100644 --- a/polly/test/CodeGen/phi_scalar_simple_1.ll +++ b/polly/test/CodeGen/phi_scalar_simple_1.ll @@ -9,7 +9,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define i32 @jd(i32* noalias %A, i32 %x, i32 %N) { +define i32 @jd(ptr noalias %A, i32 %x, i32 %N) { entry: ; CHECK-LABEL: entry: ; CHECK-DAG: %x.addr.1.lcssa.s2a = alloca i32 @@ -26,15 +26,15 @@ entry: ; CHECK: ret i32 %x.addr.0.merge ; CHECK-LABEL: polly.start: -; CHECK: store i32 %x, i32* %x.addr.0.phiops +; CHECK: store i32 %x, ptr %x.addr.0.phiops ; CHECK-LABEL: polly.exiting: -; CHECK: %x.addr.0.final_reload = load i32, i32* %x.addr.0.s2a +; CHECK: %x.addr.0.final_reload = load i32, ptr %x.addr.0.s2a for.cond: ; preds = %for.inc4, %entry ; CHECK-LABEL: polly.stmt.for.cond{{[0-9]*}}: -; CHECK: %x.addr.0.phiops.reload[[R1:[0-9]*]] = load i32, i32* %x.addr.0.phiops -; CHECK: store i32 %x.addr.0.phiops.reload[[R1]], i32* %x.addr.0.s2a +; CHECK: %x.addr.0.phiops.reload[[R1:[0-9]*]] = load i32, ptr %x.addr.0.phiops +; CHECK: store i32 %x.addr.0.phiops.reload[[R1]], ptr %x.addr.0.s2a %indvars.iv = phi i64 [ %indvars.iv.next, %for.inc4 ], [ 1, %entry ] %x.addr.0 = phi i32 [ %x, %entry ], [ %x.addr.1.lcssa, %for.inc4 ] %cmp = icmp slt i64 %indvars.iv, %tmp @@ -42,15 +42,15 @@ for.cond: ; preds = %for.inc4, %entry for.body: ; preds = %for.cond ; CHECK-LABEL: polly.stmt.for.body: -; CHECK: %x.addr.0.s2a.reload[[R2:[0-9]*]] = load i32, i32* %x.addr.0.s2a -; CHECK: store i32 %x.addr.0.s2a.reload[[R2]], i32* %x.addr.1.phiops +; CHECK: %x.addr.0.s2a.reload[[R2:[0-9]*]] = load i32, ptr %x.addr.0.s2a +; CHECK: store i32 %x.addr.0.s2a.reload[[R2]], ptr %x.addr.1.phiops br label %for.cond1 for.cond1: ; preds = %for.inc, %for.body ; CHECK-LABEL: polly.stmt.for.cond1: -; CHECK: %x.addr.1.phiops.reload = load i32, i32* %x.addr.1.phiops -; CHECK: store i32 %x.addr.1.phiops.reload, i32* %x.addr.1.s2a[[R6:[0-9]*]] -; CHECK: store i32 %x.addr.1.phiops.reload, i32* %x.addr.1.lcssa.phiops +; CHECK: %x.addr.1.phiops.reload = load i32, ptr %x.addr.1.phiops +; CHECK: store i32 %x.addr.1.phiops.reload, ptr %x.addr.1.s2a[[R6:[0-9]*]] +; CHECK: store i32 %x.addr.1.phiops.reload, ptr %x.addr.1.lcssa.phiops %x.addr.1 = phi i32 [ %x.addr.0, %for.body ], [ %add, %for.inc ] %j.0 = phi i32 [ 3, %for.body ], [ %inc, %for.inc ] %exitcond = icmp ne i32 %j.0, %N @@ -58,26 +58,26 @@ for.cond1: ; preds = %for.inc, %for.body for.inc: ; preds = %for.body3 ; CHECK-LABEL: polly.stmt.for.inc: -; CHECK: %x.addr.1.s2a.reload[[R3:[0-9]*]] = load i32, i32* %x.addr.1.s2a +; CHECK: %x.addr.1.s2a.reload[[R3:[0-9]*]] = load i32, ptr %x.addr.1.s2a ; CHECK: %p_add = add nsw i32 %x.addr.1.s2a.reload[[R3]], %tmp1_p_scalar_ -; CHECK: store i32 %p_add, i32* %x.addr.1.phiops - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx, align 4 +; CHECK: store i32 %p_add, ptr %x.addr.1.phiops + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %x.addr.1, %tmp1 %inc = add nsw i32 %j.0, 1 br label %for.cond1 for.end: ; preds = %for.cond1 ; CHECK-LABEL: polly.stmt.for.end: -; CHECK-NEXT: %x.addr.1.lcssa.phiops.reload = load i32, i32* %x.addr.1.lcssa.phiops -; CHECK-NEXT: store i32 %x.addr.1.lcssa.phiops.reload, i32* %x.addr.1.lcssa.s2a[[R4:[0-9]*]] +; CHECK-NEXT: %x.addr.1.lcssa.phiops.reload = load i32, ptr %x.addr.1.lcssa.phiops +; CHECK-NEXT: store i32 %x.addr.1.lcssa.phiops.reload, ptr %x.addr.1.lcssa.s2a[[R4:[0-9]*]] %x.addr.1.lcssa = phi i32 [ %x.addr.1, %for.cond1 ] br label %for.inc4 for.inc4: ; preds = %for.end ; CHECK-LABEL: polly.stmt.for.inc4: -; CHECK: %x.addr.1.lcssa.s2a.reload[[R5:[0-9]*]] = load i32, i32* %x.addr.1.lcssa.s2a[[R4]] -; CHECK: store i32 %x.addr.1.lcssa.s2a.reload[[R5]], i32* %x.addr.0.phiops +; CHECK: %x.addr.1.lcssa.s2a.reload[[R5:[0-9]*]] = load i32, ptr %x.addr.1.lcssa.s2a[[R4]] +; CHECK: store i32 %x.addr.1.lcssa.s2a.reload[[R5]], ptr %x.addr.0.phiops %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 br label %for.cond diff --git a/polly/test/CodeGen/phi_scalar_simple_2.ll b/polly/test/CodeGen/phi_scalar_simple_2.ll index 941bd2c800ce..e58945d39960 100644 --- a/polly/test/CodeGen/phi_scalar_simple_2.ll +++ b/polly/test/CodeGen/phi_scalar_simple_2.ll @@ -10,7 +10,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define i32 @jd(i32* noalias %A, i32 %x, i32 %N, i32 %c) { +define i32 @jd(ptr noalias %A, i32 %x, i32 %N, i32 %c) { entry: ; CHECK-LABEL: entry: ; CHECK-DAG: %x.addr.2.s2a = alloca i32 @@ -28,16 +28,16 @@ entry: ; CHECK: ret i32 %x.addr.0.merge ; CHECK-LABEL: polly.start: -; CHECK-NEXT: store i32 %x, i32* %x.addr.0.phiops +; CHECK-NEXT: store i32 %x, ptr %x.addr.0.phiops ; CHECK-NEXT: sext ; CHECK-LABEL: polly.merge{{[a-z_0-9]*}}: -; CHECK: %x.addr.0.final_reload = load i32, i32* %x.addr.0.s2a +; CHECK: %x.addr.0.final_reload = load i32, ptr %x.addr.0.s2a for.cond: ; preds = %for.inc5, %entry ; CHECK-LABEL: polly.stmt.for.cond{{[0-9]*}}: -; CHECK: %x.addr.0.phiops.reload[[R1:[0-9]*]] = load i32, i32* %x.addr.0.phiops -; CHECK: store i32 %x.addr.0.phiops.reload[[R1]], i32* %x.addr.0.s2a +; CHECK: %x.addr.0.phiops.reload[[R1:[0-9]*]] = load i32, ptr %x.addr.0.phiops +; CHECK: store i32 %x.addr.0.phiops.reload[[R1]], ptr %x.addr.0.s2a %indvars.iv = phi i64 [ %indvars.iv.next, %for.inc5 ], [ 0, %entry ] %x.addr.0 = phi i32 [ %x, %entry ], [ %x.addr.1, %for.inc5 ] %cmp = icmp slt i64 %indvars.iv, %tmp @@ -45,21 +45,21 @@ for.cond: ; preds = %for.inc5, %entry for.body: ; preds = %for.cond ; CHECK-LABEL: polly.stmt.for.body: -; CHECK: %x.addr.0.s2a.reload[[R2:[0-9]*]] = load i32, i32* %x.addr.0.s2a -; CHECK: store i32 %x.addr.0.s2a.reload[[R2]], i32* %x.addr.1.phiops +; CHECK: %x.addr.0.s2a.reload[[R2:[0-9]*]] = load i32, ptr %x.addr.0.s2a +; CHECK: store i32 %x.addr.0.s2a.reload[[R2]], ptr %x.addr.1.phiops br label %for.cond1 for.inc5: ; preds = %for.end ; CHECK-LABEL: polly.stmt.for.inc5: -; CHECK: %x.addr.1.s2a.reload[[R5:[0-9]*]] = load i32, i32* %x.addr.1.s2a -; CHECK: store i32 %x.addr.1.s2a.reload[[R5]], i32* %x.addr.0.phiops +; CHECK: %x.addr.1.s2a.reload[[R5:[0-9]*]] = load i32, ptr %x.addr.1.s2a +; CHECK: store i32 %x.addr.1.s2a.reload[[R5]], ptr %x.addr.0.phiops %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 br label %for.cond for.cond1: ; preds = %for.inc, %for.body ; CHECK-LABEL: polly.stmt.for.cond1: -; CHECK: %x.addr.1.phiops.reload = load i32, i32* %x.addr.1.phiops -; CHECK: store i32 %x.addr.1.phiops.reload, i32* %x.addr.1.s2a +; CHECK: %x.addr.1.phiops.reload = load i32, ptr %x.addr.1.phiops +; CHECK: store i32 %x.addr.1.phiops.reload, ptr %x.addr.1.s2a %x.addr.1 = phi i32 [ %x.addr.0, %for.body ], [ %x.addr.2, %for.inc ] %j.0 = phi i32 [ 0, %for.body ], [ %inc, %for.inc ] %exitcond = icmp ne i32 %j.0, %N @@ -67,32 +67,32 @@ for.cond1: ; preds = %for.inc, %for.body for.body3: ; preds = %for.cond1 ; CHECK-LABEL: polly.stmt.for.body3: -; CHECK: %x.addr.1.s2a.reload = load i32, i32* %x.addr.1.s2a -; CHECK: store i32 %x.addr.1.s2a.reload, i32* %x.addr.2.phiops +; CHECK: %x.addr.1.s2a.reload = load i32, ptr %x.addr.1.s2a +; CHECK: store i32 %x.addr.1.s2a.reload, ptr %x.addr.2.phiops %cmp4 = icmp slt i64 %indvars.iv, %tmp1 br i1 %cmp4, label %if.then, label %if.end if.end: ; preds = %if.then, %for.body3 ; CHECK-LABEL: polly.stmt.if.end: -; CHECK: %x.addr.2.phiops.reload = load i32, i32* %x.addr.2.phiops -; CHECK: store i32 %x.addr.2.phiops.reload, i32* %x.addr.2.s2a +; CHECK: %x.addr.2.phiops.reload = load i32, ptr %x.addr.2.phiops +; CHECK: store i32 %x.addr.2.phiops.reload, ptr %x.addr.2.s2a %x.addr.2 = phi i32 [ %add, %if.then ], [ %x.addr.1, %for.body3 ] br label %for.inc for.inc: ; preds = %if.end ; CHECK-LABEL: polly.stmt.for.inc: -; CHECK: %x.addr.2.s2a.reload[[R3:[0-9]*]] = load i32, i32* %x.addr.2.s2a -; CHECK: store i32 %x.addr.2.s2a.reload[[R3]], i32* %x.addr.1.phiops +; CHECK: %x.addr.2.s2a.reload[[R3:[0-9]*]] = load i32, ptr %x.addr.2.s2a +; CHECK: store i32 %x.addr.2.s2a.reload[[R3]], ptr %x.addr.1.phiops %inc = add nsw i32 %j.0, 1 br label %for.cond1 if.then: ; preds = %for.body3 ; CHECK-LABEL: polly.stmt.if.then: -; CHECK: %x.addr.1.s2a.reload[[R5:[0-9]*]] = load i32, i32* %x.addr.1.s2a +; CHECK: %x.addr.1.s2a.reload[[R5:[0-9]*]] = load i32, ptr %x.addr.1.s2a ; CHECK: %p_add = add nsw i32 %x.addr.1.s2a.reload[[R5]], %tmp2_p_scalar_ -; CHECK: store i32 %p_add, i32* %x.addr.2.phiops - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 +; CHECK: store i32 %p_add, ptr %x.addr.2.phiops + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %x.addr.1, %tmp2 br label %if.end diff --git a/polly/test/CodeGen/phi_with_multi_exiting_edges_2.ll b/polly/test/CodeGen/phi_with_multi_exiting_edges_2.ll index dd02de10865f..17e4b7d6b4de 100644 --- a/polly/test/CodeGen/phi_with_multi_exiting_edges_2.ll +++ b/polly/test/CodeGen/phi_with_multi_exiting_edges_2.ll @@ -8,7 +8,7 @@ ; CHECK: %result = phi float [ %result.ph.merge, %polly.merge_new_and_old ] ; CHECK: ret float %result -define float @foo(float* %A, i64 %param) { +define float @foo(ptr %A, i64 %param) { entry: br label %entry.split @@ -19,18 +19,18 @@ entry.split: loopA: %indvarA = phi i64 [0, %entry.split], [%indvar.nextA, %loopA] %indvar.nextA = add i64 %indvarA, 1 - %valA = load float, float* %A + %valA = load float, ptr %A %sumA = fadd float %valA, %valA - store float %valA, float* %A + store float %valA, ptr %A %cndA = icmp eq i64 %indvar.nextA, 100 br i1 %cndA, label %next, label %loopA loopB: %indvarB = phi i64 [0, %entry.split], [%indvar.nextB, %loopB] %indvar.nextB = add i64 %indvarB, 1 - %valB = load float, float* %A + %valB = load float, ptr %A %sumB = fadd float %valB, %valB - store float %valB, float* %A + store float %valB, ptr %A %cndB = icmp eq i64 %indvar.nextB, 100 br i1 %cndB, label %next, label %loopB diff --git a/polly/test/CodeGen/phi_with_one_exit_edge.ll b/polly/test/CodeGen/phi_with_one_exit_edge.ll index 129e0ffbdb62..81fd73b51c79 100644 --- a/polly/test/CodeGen/phi_with_one_exit_edge.ll +++ b/polly/test/CodeGen/phi_with_one_exit_edge.ll @@ -9,7 +9,7 @@ ; CHECK: %result = phi float [ %sumA.merge, %polly.merge_new_and_old ] ; CHECK: ret float %result ; -define float @foo(float* %A, i64 %param) { +define float @foo(ptr %A, i64 %param) { entry: br label %entry.split @@ -19,9 +19,9 @@ entry.split: loopA: %indvarA = phi i64 [0, %entry.split], [%indvar.nextA, %loopA] %indvar.nextA = add i64 %indvarA, 1 - %valA = load float, float* %A + %valA = load float, ptr %A %sumA = fadd float %valA, %valA - store float %valA, float* %A + store float %valA, ptr %A %cndA = icmp eq i64 %indvar.nextA, 100 br i1 %cndA, label %next, label %loopA diff --git a/polly/test/CodeGen/pointer-type-expressions-2.ll b/polly/test/CodeGen/pointer-type-expressions-2.ll index 08d90d4121ef..b261cfe53321 100644 --- a/polly/test/CodeGen/pointer-type-expressions-2.ll +++ b/polly/test/CodeGen/pointer-type-expressions-2.ll @@ -2,16 +2,16 @@ ; RUN: opt %loadPolly -polly-codegen -S < %s | FileCheck %s -check-prefix=CODEGEN target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i8* %start, i8* %end) { +define void @foo(ptr %start, ptr %end) { entry: %A = alloca i32 br label %body body: - %ptr = phi i8* [ %start, %entry ], [ %ptr2, %body ] - %ptr2 = getelementptr inbounds i8, i8* %ptr, i64 1 - %cmp = icmp eq i8* %ptr2, %end - store i32 42, i32* %A + %ptr = phi ptr [ %start, %entry ], [ %ptr2, %body ] + %ptr2 = getelementptr inbounds i8, ptr %ptr, i64 1 + %cmp = icmp eq ptr %ptr2, %end + store i32 42, ptr %A br i1 %cmp, label %exit, label %body exit: @@ -22,8 +22,8 @@ exit: ; CHECK: Stmt_body(c0); ; CODEGEN-LABEL: polly.start: -; CODEGEN-NEXT: %[[r0:[._a-zA-Z0-9]*]] = ptrtoint i8* %start to i64 +; CODEGEN-NEXT: %[[r0:[._a-zA-Z0-9]*]] = ptrtoint ptr %start to i64 ; CODEGEN-NEXT: %[[r1:[._a-zA-Z0-9]*]] = sub nsw i64 0, %[[r0]] -; CODEGEN-NEXT: %[[r2:[._a-zA-Z0-9]*]] = ptrtoint i8* %end to i64 +; CODEGEN-NEXT: %[[r2:[._a-zA-Z0-9]*]] = ptrtoint ptr %end to i64 ; CODEGEN-NEXT: %[[r4:[._a-zA-Z0-9]*]] = add nsw i64 %[[r1]], %[[r2]] diff --git a/polly/test/CodeGen/pointer-type-expressions.ll b/polly/test/CodeGen/pointer-type-expressions.ll index fa5bd4c13f43..6bb3fa242362 100644 --- a/polly/test/CodeGen/pointer-type-expressions.ll +++ b/polly/test/CodeGen/pointer-type-expressions.ll @@ -10,18 +10,18 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* nocapture %a, i64 %N, float * %P) nounwind { +define void @f(ptr nocapture %a, i64 %N, ptr %P) nounwind { entry: br label %bb bb: %i = phi i64 [ 0, %entry ], [ %i.inc, %bb.backedge ] - %brcond = icmp ne float* %P, null + %brcond = icmp ne ptr %P, null br i1 %brcond, label %store, label %bb.backedge store: - %scevgep = getelementptr i64, i64* %a, i64 %i - store i64 %i, i64* %scevgep + %scevgep = getelementptr i64, ptr %a, i64 %i + store i64 %i, ptr %scevgep br label %bb.backedge bb.backedge: @@ -38,9 +38,9 @@ return: ; CHECK-NEXT: Stmt_store(c0); ; CODEGEN-LABEL: polly.cond: -; CODEGEN-NEXT: %[[R1:[0-9]*]] = ptrtoint float* %P to i64 +; CODEGEN-NEXT: %[[R1:[0-9]*]] = ptrtoint ptr %P to i64 ; CODEGEN-NEXT: %[[R2:[0-9]*]] = icmp sle i64 %[[R1]], -1 -; CODEGEN-NEXT: %[[R3:[0-9]*]] = ptrtoint float* %P to i64 +; CODEGEN-NEXT: %[[R3:[0-9]*]] = ptrtoint ptr %P to i64 ; CODEGEN-NEXT: %[[R4:[0-9]*]] = icmp sge i64 %[[R3]], 1 ; CODEGEN-NEXT: %[[R5:[0-9]*]] = or i1 %[[R2]], %[[R4]] ; CODEGEN-NEXT: br i1 %[[R5]] diff --git a/polly/test/CodeGen/pointer-type-pointer-type-comparison.ll b/polly/test/CodeGen/pointer-type-pointer-type-comparison.ll index 6886fca17d1a..eaef64017aa7 100644 --- a/polly/test/CodeGen/pointer-type-pointer-type-comparison.ll +++ b/polly/test/CodeGen/pointer-type-pointer-type-comparison.ll @@ -11,18 +11,18 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i64* nocapture %a, i64 %N, float * %P, float * %Q) nounwind { +define void @f(ptr nocapture %a, i64 %N, ptr %P, ptr %Q) nounwind { entry: br label %bb bb: %i = phi i64 [ 0, %entry ], [ %i.inc, %bb.backedge ] - %brcond = icmp ne float* %P, %Q + %brcond = icmp ne ptr %P, %Q br i1 %brcond, label %store, label %bb.backedge store: - %scevgep = getelementptr inbounds i64, i64* %a, i64 %i - store i64 %i, i64* %scevgep + %scevgep = getelementptr inbounds i64, ptr %a, i64 %i + store i64 %i, ptr %scevgep br label %bb.backedge bb.backedge: @@ -39,12 +39,12 @@ return: ; CHECK-NEXT: Stmt_store(c0); ; CODEGEN: polly.cond: -; CODEGEN-NEXT: %[[Q:[_a-zA-Z0-9]+]] = ptrtoint float* %Q to i64 -; CODEGEN-NEXT: %[[P:[_a-zA-Z0-9]+]] = ptrtoint float* %P to i64 +; CODEGEN-NEXT: %[[Q:[_a-zA-Z0-9]+]] = ptrtoint ptr %Q to i64 +; CODEGEN-NEXT: %[[P:[_a-zA-Z0-9]+]] = ptrtoint ptr %P to i64 ; CODEGEN-NEXT: %[[PInc:[_a-zA-Z0-9]+]] = add nsw i64 %[[P]], 1 ; CODEGEN-NEXT: %[[CMP:[_a-zA-Z0-9]+]] = icmp sge i64 %[[Q]], %[[PInc]] -; CODEGEN-NEXT: %[[P2:[_a-zA-Z0-9]+]] = ptrtoint float* %P to i64 -; CODEGEN-NEXT: %[[Q2:[_a-zA-Z0-9]+]] = ptrtoint float* %Q to i64 +; CODEGEN-NEXT: %[[P2:[_a-zA-Z0-9]+]] = ptrtoint ptr %P to i64 +; CODEGEN-NEXT: %[[Q2:[_a-zA-Z0-9]+]] = ptrtoint ptr %Q to i64 ; CODEGEN-NEXT: %[[QInc:[_a-zA-Z0-9]+]] = add nsw i64 %[[Q2]], 1 ; CODEGEN-NEXT: %[[CMP2:[_a-zA-Z0-9]+]] = icmp sge i64 %[[P2]], %[[QInc]] ; CODEGEN-NEXT: %[[CMP3:[_a-zA-Z0-9]+]] = or i1 %[[CMP]], %[[CMP2]] diff --git a/polly/test/CodeGen/pointer_rem.ll b/polly/test/CodeGen/pointer_rem.ll index 66d0011d7e9a..5c92ee52da2c 100644 --- a/polly/test/CodeGen/pointer_rem.ll +++ b/polly/test/CodeGen/pointer_rem.ll @@ -17,12 +17,12 @@ target triple = "aarch64--linux-gnu" %struct.A = type { i32, i64, i8 } ; Function Attrs: norecurse nounwind -define void @foo1(%struct.A* %a1, %struct.A* readnone %b1) #0 { +define void @foo1(ptr %a1, ptr readnone %b1) #0 { entry: br label %entry.split entry.split: ; preds = %entry - %cmp4 = icmp eq %struct.A* %a1, %b1 + %cmp4 = icmp eq ptr %a1, %b1 br i1 %cmp4, label %for.cond.cleanup, label %for.body.preheader for.body.preheader: ; preds = %entry.split @@ -35,13 +35,12 @@ for.cond.cleanup: ; preds = %for.cond.cleanup.lo ret void for.body: ; preds = %for.body.preheader, %for.body - %start.05 = phi %struct.A* [ %incdec.ptr, %for.body ], [ %a1, %for.body.preheader ] - %a = getelementptr inbounds %struct.A, %struct.A* %start.05, i64 0, i32 0 - %0 = load i32, i32* %a, align 8 + %start.05 = phi ptr [ %incdec.ptr, %for.body ], [ %a1, %for.body.preheader ] + %0 = load i32, ptr %start.05, align 8 %add = add nsw i32 %0, 1 - store i32 %add, i32* %a, align 8 - %incdec.ptr = getelementptr inbounds %struct.A, %struct.A* %start.05, i64 1 - %cmp = icmp eq %struct.A* %incdec.ptr, %b1 + store i32 %add, ptr %start.05, align 8 + %incdec.ptr = getelementptr inbounds %struct.A, ptr %start.05, i64 1 + %cmp = icmp eq ptr %incdec.ptr, %b1 br i1 %cmp, label %for.cond.cleanup.loopexit, label %for.body } diff --git a/polly/test/CodeGen/pr25241.ll b/polly/test/CodeGen/pr25241.ll index 7d9b2efef65f..9fa67e083a6c 100644 --- a/polly/test/CodeGen/pr25241.ll +++ b/polly/test/CodeGen/pr25241.ll @@ -13,11 +13,11 @@ ; CHECK: br label %polly.stmt.polly.merge_new_and_old.exit ; CHECK-LABEL: polly.stmt.polly.merge_new_and_old.exit: -; CHECK: store i32 %polly.curr.3, i32* %curr.3.s2a +; CHECK: store i32 %polly.curr.3, ptr %curr.3.s2a ; CHECK: br label %polly.exiting ; CHECK-LABEL: polly.exiting: -; CHECK: %curr.3.ph.final_reload = load i32, i32* %curr.3.s2a +; CHECK: %curr.3.ph.final_reload = load i32, ptr %curr.3.s2a ; CHECK: br label @@ -27,7 +27,7 @@ target triple = "x86_64-unknown-linux-gnu" ; Function Attrs: nounwind uwtable define void @BZ2_decompress() #0 { entry: - %tmp = load i32, i32* undef, align 4, !tbaa !1 + %tmp = load i32, ptr undef, align 4, !tbaa !1 switch i32 undef, label %save_state_and_return [ i32 34, label %sw.bb.748 i32 35, label %if.then.813 diff --git a/polly/test/CodeGen/ptrtoint_as_parameter.ll b/polly/test/CodeGen/ptrtoint_as_parameter.ll index 7e69560d0df8..4f6c8079729d 100644 --- a/polly/test/CodeGen/ptrtoint_as_parameter.ll +++ b/polly/test/CodeGen/ptrtoint_as_parameter.ll @@ -1,8 +1,8 @@ ; RUN: opt %loadPolly -polly-codegen -S < %s | FileCheck %s ; ; CHECK: if.then260: -; CHECK-NEXT: %p.4 = getelementptr inbounds i8, i8* null, i64 1 -; CHECK-NEXT: %sub.ptr.lhs.cast263 = ptrtoint i8* %p.4 to i64 +; CHECK-NEXT: %p.4 = getelementptr inbounds i8, ptr null, i64 1 +; CHECK-NEXT: %sub.ptr.lhs.cast263 = ptrtoint ptr %p.4 to i64 ; CHECK-NEXT: %sub.ptr.sub265 = sub i64 %sub.ptr.lhs.cast263, 0 ; CHECK-NEXT: %div = udiv i64 0, %sub.ptr.sub265 ; CHECK-NEXT: %cmp268 = icmp ult i64 0, %div @@ -20,15 +20,15 @@ if.end: ; preds = %entry br label %while.cond while.cond: ; preds = %cond.true270, %if.then260, %if.end - %p.0 = phi i8* [ null, %if.end ], [ %p.4, %if.then260 ], [ %p.4, %cond.true270 ] + %p.0 = phi ptr [ null, %if.end ], [ %p.4, %if.then260 ], [ %p.4, %cond.true270 ] br i1 undef, label %if.then260, label %while.body210 while.body210: ; preds = %while.cond ret void if.then260: ; preds = %while.cond - %p.4 = getelementptr inbounds i8, i8* null, i64 1 - %sub.ptr.lhs.cast263 = ptrtoint i8* %p.4 to i64 + %p.4 = getelementptr inbounds i8, ptr null, i64 1 + %sub.ptr.lhs.cast263 = ptrtoint ptr %p.4 to i64 %sub.ptr.sub265 = sub i64 %sub.ptr.lhs.cast263, 0 %div = udiv i64 0, %sub.ptr.sub265 %cmp268 = icmp ult i64 0, %div diff --git a/polly/test/CodeGen/read-only-scalars.ll b/polly/test/CodeGen/read-only-scalars.ll index f27ec6bfdfe5..a5e1d2719d7d 100644 --- a/polly/test/CodeGen/read-only-scalars.ll +++ b/polly/test/CodeGen/read-only-scalars.ll @@ -11,14 +11,14 @@ ; SCALAR-NEXT: %scalar.s2a = alloca float ; SCALAR-LABEL: polly.start: -; SCALAR-NEXT: store float %scalar, float* %scalar.s2a +; SCALAR-NEXT: store float %scalar, ptr %scalar.s2a ; SCALAR-LABEL: polly.stmt.stmt1: -; SCALAR-NEXT: %scalar.s2a.reload = load float, float* %scalar.s2a -; SCALAR-NEXT: %val_p_scalar_ = load float, float* %A, +; SCALAR-NEXT: %scalar.s2a.reload = load float, ptr %scalar.s2a +; SCALAR-NEXT: %val_p_scalar_ = load float, ptr %A, ; SCALAR-NEXT: %p_sum = fadd float %val_p_scalar_, %scalar.s2a.reload -define void @foo(float* noalias %A, float %scalar) { +define void @foo(ptr noalias %A, float %scalar) { entry: br label %loop @@ -27,9 +27,9 @@ loop: br label %stmt1 stmt1: - %val = load float, float* %A + %val = load float, ptr %A %sum = fadd float %val, %scalar - store float %sum, float* %A + store float %sum, ptr %A br label %loop.backedge loop.backedge: diff --git a/polly/test/CodeGen/reduction.ll b/polly/test/CodeGen/reduction.ll index e9ed1413fe34..6e5a230ad231 100644 --- a/polly/test/CodeGen/reduction.ll +++ b/polly/test/CodeGen/reduction.ll @@ -32,57 +32,56 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 define i32 @main() nounwind { ; <label>:0 - %A = alloca [1021 x i32], align 16 ; <[1021 x i32]*> [#uses=6] - %1 = getelementptr inbounds [1021 x i32], [1021 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %2 = bitcast i32* %1 to i8* ; <i8*> [#uses=1] - call void @llvm.memset.p0i8.i64(i8* %2, i8 0, i64 4084, i32 1, i1 false) - %3 = getelementptr inbounds [1021 x i32], [1021 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %4 = getelementptr inbounds i32, i32* %3, i64 0 ; <i32*> [#uses=1] - store i32 1, i32* %4 - %5 = getelementptr inbounds [1021 x i32], [1021 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %6 = getelementptr inbounds i32, i32* %5, i64 1 ; <i32*> [#uses=1] - store i32 1, i32* %6 + %A = alloca [1021 x i32], align 16 ; <ptr> [#uses=6] + %1 = getelementptr inbounds [1021 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + call void @llvm.memset.p0.i64(ptr %1, i8 0, i64 4084, i32 1, i1 false) + %2 = getelementptr inbounds [1021 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %3 = getelementptr inbounds i32, ptr %2, i64 0 ; <ptr> [#uses=1] + store i32 1, ptr %3 + %4 = getelementptr inbounds [1021 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %5 = getelementptr inbounds i32, ptr %4, i64 1 ; <ptr> [#uses=1] + store i32 1, ptr %5 fence seq_cst - br label %7 + br label %6 -; <label>:7 ; preds = %14, %0 - %indvar = phi i64 [ %indvar.next, %14 ], [ 0, %0 ] ; <i64> [#uses=5] - %red.0 = phi i32 [ 0, %0 ], [ %13, %14 ] ; <i32> [#uses=2] - %scevgep = getelementptr [1021 x i32], [1021 x i32]* %A, i64 0, i64 %indvar ; <i32*> [#uses=2] +; <label>:7 ; preds = %13, %0 + %indvar = phi i64 [ %indvar.next, %13 ], [ 0, %0 ] ; <i64> [#uses=5] + %red.0 = phi i32 [ 0, %0 ], [ %12, %13 ] ; <i32> [#uses=2] + %scevgep = getelementptr [1021 x i32], ptr %A, i64 0, i64 %indvar ; <ptr> [#uses=2] %tmp = add i64 %indvar, 2 ; <i64> [#uses=1] - %scevgep1 = getelementptr [1021 x i32], [1021 x i32]* %A, i64 0, i64 %tmp ; <i32*> [#uses=1] + %scevgep1 = getelementptr [1021 x i32], ptr %A, i64 0, i64 %tmp ; <ptr> [#uses=1] %tmp2 = add i64 %indvar, 1 ; <i64> [#uses=1] - %scevgep3 = getelementptr [1021 x i32], [1021 x i32]* %A, i64 0, i64 %tmp2 ; <i32*> [#uses=1] + %scevgep3 = getelementptr [1021 x i32], ptr %A, i64 0, i64 %tmp2 ; <ptr> [#uses=1] %exitcond = icmp ne i64 %indvar, 1019 ; <i1> [#uses=1] - br i1 %exitcond, label %8, label %15 + br i1 %exitcond, label %7, label %14 -; <label>:8 ; preds = %7 - %9 = load i32, i32* %scevgep3 ; <i32> [#uses=1] - %10 = load i32, i32* %scevgep ; <i32> [#uses=1] - %11 = add nsw i32 %9, %10 ; <i32> [#uses=1] - store i32 %11, i32* %scevgep1 - %12 = load i32, i32* %scevgep ; <i32> [#uses=1] - %13 = add nsw i32 %red.0, %12 ; <i32> [#uses=1] - br label %14 +; <label>:8 ; preds = %6 + %8 = load i32, ptr %scevgep3 ; <i32> [#uses=1] + %9 = load i32, ptr %scevgep ; <i32> [#uses=1] + %10 = add nsw i32 %8, %9 ; <i32> [#uses=1] + store i32 %10, ptr %scevgep1 + %11 = load i32, ptr %scevgep ; <i32> [#uses=1] + %12 = add nsw i32 %red.0, %11 ; <i32> [#uses=1] + br label %13 -; <label>:14 ; preds = %8 +; <label>:14 ; preds = %7 %indvar.next = add i64 %indvar, 1 ; <i64> [#uses=1] - br label %7 + br label %6 -; <label>:15 ; preds = %7 - %red.0.lcssa = phi i32 [ %red.0, %7 ] ; <i32> [#uses=1] +; <label>:15 ; preds = %6 + %red.0.lcssa = phi i32 [ %red.0, %6 ] ; <i32> [#uses=1] fence seq_cst - %16 = icmp ne i32 %red.0.lcssa, 382399368 ; <i1> [#uses=1] - br i1 %16, label %17, label %18 + %15 = icmp ne i32 %red.0.lcssa, 382399368 ; <i1> [#uses=1] + br i1 %15, label %16, label %17 -; <label>:17 ; preds = %15 - br label %18 +; <label>:17 ; preds = %14 + br label %17 -; <label>:18 ; preds = %17, %15 - %.0 = phi i32 [ 1, %17 ], [ 0, %15 ] ; <i32> [#uses=1] +; <label>:18 ; preds = %16, %14 + %.0 = phi i32 [ 1, %16 ], [ 0, %14 ] ; <i32> [#uses=1] ret i32 %.0 } -declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) nounwind +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) nounwind ; CHECK: Could not generate independent blocks diff --git a/polly/test/CodeGen/reduction_2.ll b/polly/test/CodeGen/reduction_2.ll index 04031e83894b..7a50cea31400 100644 --- a/polly/test/CodeGen/reduction_2.ll +++ b/polly/test/CodeGen/reduction_2.ll @@ -28,43 +28,42 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 define i32 @main() nounwind { entry: - %A = alloca [1021 x i32], align 4 ; <[1021 x i32]*> [#uses=6] - %RED = alloca [1 x i32], align 4 ; <[1 x i32]*> [#uses=3] - %arraydecay = getelementptr inbounds [1021 x i32], [1021 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %conv = bitcast i32* %arraydecay to i8* ; <i8*> [#uses=1] - call void @llvm.memset.p0i8.i64(i8* %conv, i8 0, i64 4084, i32 1, i1 false) - %arraydecay1 = getelementptr inbounds [1021 x i32], [1021 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx = getelementptr inbounds i32, i32* %arraydecay1, i64 0 ; <i32*> [#uses=1] - store i32 1, i32* %arrayidx - %arraydecay2 = getelementptr inbounds [1021 x i32], [1021 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx3 = getelementptr inbounds i32, i32* %arraydecay2, i64 1 ; <i32*> [#uses=1] - store i32 1, i32* %arrayidx3 - %arraydecay4 = getelementptr inbounds [1 x i32], [1 x i32]* %RED, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx5 = getelementptr inbounds i32, i32* %arraydecay4, i64 0 ; <i32*> [#uses=1] - store i32 0, i32* %arrayidx5 + %A = alloca [1021 x i32], align 4 ; <ptr> [#uses=6] + %RED = alloca [1 x i32], align 4 ; <ptr> [#uses=3] + %arraydecay = getelementptr inbounds [1021 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + call void @llvm.memset.p0.i64(ptr %arraydecay, i8 0, i64 4084, i32 1, i1 false) + %arraydecay1 = getelementptr inbounds [1021 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx = getelementptr inbounds i32, ptr %arraydecay1, i64 0 ; <ptr> [#uses=1] + store i32 1, ptr %arrayidx + %arraydecay2 = getelementptr inbounds [1021 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx3 = getelementptr inbounds i32, ptr %arraydecay2, i64 1 ; <ptr> [#uses=1] + store i32 1, ptr %arrayidx3 + %arraydecay4 = getelementptr inbounds [1 x i32], ptr %RED, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx5 = getelementptr inbounds i32, ptr %arraydecay4, i64 0 ; <ptr> [#uses=1] + store i32 0, ptr %arrayidx5 br label %for.cond for.cond: ; preds = %for.inc, %entry %indvar = phi i64 [ %indvar.next, %for.inc ], [ 0, %entry ] ; <i64> [#uses=5] - %arrayidx15 = getelementptr [1021 x i32], [1021 x i32]* %A, i64 0, i64 %indvar ; <i32*> [#uses=2] + %arrayidx15 = getelementptr [1021 x i32], ptr %A, i64 0, i64 %indvar ; <ptr> [#uses=2] %tmp = add i64 %indvar, 2 ; <i64> [#uses=1] - %arrayidx20 = getelementptr [1021 x i32], [1021 x i32]* %A, i64 0, i64 %tmp ; <i32*> [#uses=1] + %arrayidx20 = getelementptr [1021 x i32], ptr %A, i64 0, i64 %tmp ; <ptr> [#uses=1] %tmp1 = add i64 %indvar, 1 ; <i64> [#uses=1] - %arrayidx9 = getelementptr [1021 x i32], [1021 x i32]* %A, i64 0, i64 %tmp1 ; <i32*> [#uses=1] + %arrayidx9 = getelementptr [1021 x i32], ptr %A, i64 0, i64 %tmp1 ; <ptr> [#uses=1] %exitcond = icmp ne i64 %indvar, 1019 ; <i1> [#uses=1] br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %tmp10 = load i32, i32* %arrayidx9 ; <i32> [#uses=1] - %tmp16 = load i32, i32* %arrayidx15 ; <i32> [#uses=1] + %tmp10 = load i32, ptr %arrayidx9 ; <i32> [#uses=1] + %tmp16 = load i32, ptr %arrayidx15 ; <i32> [#uses=1] %add = add nsw i32 %tmp10, %tmp16 ; <i32> [#uses=1] - store i32 %add, i32* %arrayidx20 - %tmp26 = load i32, i32* %arrayidx15 ; <i32> [#uses=1] - %arraydecay27 = getelementptr inbounds [1 x i32], [1 x i32]* %RED, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx28 = getelementptr inbounds i32, i32* %arraydecay27, i64 0 ; <i32*> [#uses=2] - %tmp29 = load i32, i32* %arrayidx28 ; <i32> [#uses=1] + store i32 %add, ptr %arrayidx20 + %tmp26 = load i32, ptr %arrayidx15 ; <i32> [#uses=1] + %arraydecay27 = getelementptr inbounds [1 x i32], ptr %RED, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx28 = getelementptr inbounds i32, ptr %arraydecay27, i64 0 ; <ptr> [#uses=2] + %tmp29 = load i32, ptr %arrayidx28 ; <i32> [#uses=1] %add30 = add nsw i32 %tmp29, %tmp26 ; <i32> [#uses=1] - store i32 %add30, i32* %arrayidx28 + store i32 %add30, ptr %arrayidx28 br label %for.inc for.inc: ; preds = %for.body @@ -72,9 +71,9 @@ for.inc: ; preds = %for.body br label %for.cond for.end: ; preds = %for.cond - %arraydecay32 = getelementptr inbounds [1 x i32], [1 x i32]* %RED, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx33 = getelementptr inbounds i32, i32* %arraydecay32, i64 0 ; <i32*> [#uses=1] - %tmp34 = load i32, i32* %arrayidx33 ; <i32> [#uses=1] + %arraydecay32 = getelementptr inbounds [1 x i32], ptr %RED, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx33 = getelementptr inbounds i32, ptr %arraydecay32, i64 0 ; <ptr> [#uses=1] + %tmp34 = load i32, ptr %arrayidx33 ; <i32> [#uses=1] %cmp35 = icmp ne i32 %tmp34, 382399368 ; <i1> [#uses=1] br i1 %cmp35, label %if.then, label %if.end @@ -86,7 +85,7 @@ if.end: ; preds = %if.then, %for.end ret i32 %retval.0 } -declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) nounwind +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) nounwind ; This is a negative test. We can prove that RED[0] in the conditional after ; the loop is dereferencable and consequently expand the SCoP from the diff --git a/polly/test/CodeGen/reduction_simple_binary.ll b/polly/test/CodeGen/reduction_simple_binary.ll index ff0f0ed68627..c7c5501bb7ed 100644 --- a/polly/test/CodeGen/reduction_simple_binary.ll +++ b/polly/test/CodeGen/reduction_simple_binary.ll @@ -23,9 +23,9 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %add2 = add nsw i32 %i1.0, 3 - %tmp1 = load i32, i32* @prod, align 4 + %tmp1 = load i32, ptr @prod, align 4 %mul3 = mul nsw i32 %tmp1, %add2 - store i32 %mul3, i32* @prod, align 4 + store i32 %mul3, ptr @prod, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/CodeGen/region_exiting-domtree.ll b/polly/test/CodeGen/region_exiting-domtree.ll index ba9803a17683..05983da0a3e3 100644 --- a/polly/test/CodeGen/region_exiting-domtree.ll +++ b/polly/test/CodeGen/region_exiting-domtree.ll @@ -5,7 +5,7 @@ ; subregion. In particulat, it must be dominated by %polly.stmt.subregion.enter, ; the generated subregion's entry block. -define void @func(i32 %n, i32* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %loop @@ -24,7 +24,7 @@ subregion.skip: subregion.enter: %sqr = mul i32 %i, %i %cond = icmp eq i32 %sqr, 0 - store i32 %i, i32* %A + store i32 %i, ptr %A br i1 %cond, label %subregion.true, label %subregion.false subregion.true: diff --git a/polly/test/CodeGen/region_multiexit_partialwrite.ll b/polly/test/CodeGen/region_multiexit_partialwrite.ll index b476d3aab8b4..b98d7f58732a 100644 --- a/polly/test/CodeGen/region_multiexit_partialwrite.ll +++ b/polly/test/CodeGen/region_multiexit_partialwrite.ll @@ -6,14 +6,14 @@ ; target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" -define void @region_multiexit_partialwrite(i32* %arg, i64 %arg1, i32* %arg2) { +define void @region_multiexit_partialwrite(ptr %arg, i64 %arg1, ptr %arg2) { bb: br label %bb3 bb3: %tmp = phi i64 [ %tmp17, %bb10 ], [ 1, %bb ] - %tmp4 = getelementptr inbounds i32, i32* %arg, i64 %tmp - %tmp5 = load i32, i32* %tmp4, align 4 + %tmp4 = getelementptr inbounds i32, ptr %arg, i64 %tmp + %tmp5 = load i32, ptr %tmp4, align 4 %tmp6 = icmp slt i32 %tmp5, 0 br i1 %tmp6, label %bb7, label %bb9 @@ -26,8 +26,8 @@ bb9: bb10: %tmp11 = phi i32 [ %tmp8, %bb7 ], [ undef, %bb9 ] - %tmp16 = getelementptr inbounds i32, i32* %arg2, i64 %tmp - store i32 %tmp11, i32* %tmp16, align 4 + %tmp16 = getelementptr inbounds i32, ptr %arg2, i64 %tmp + store i32 %tmp11, ptr %tmp16, align 4 %tmp17 = add nuw i64 %tmp, 1 %tmp18 = icmp eq i64 %tmp17, %arg1 br i1 %tmp18, label %bb19, label %bb3 diff --git a/polly/test/CodeGen/run-time-condition-with-scev-parameters.ll b/polly/test/CodeGen/run-time-condition-with-scev-parameters.ll index e0b911770ae6..0f62a8c743df 100644 --- a/polly/test/CodeGen/run-time-condition-with-scev-parameters.ll +++ b/polly/test/CodeGen/run-time-condition-with-scev-parameters.ll @@ -20,7 +20,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @init_array(i32 %n, double* %data) { +define void @init_array(i32 %n, ptr %data) { entry: %0 = zext i32 %n to i64 br label %for.body4 @@ -29,8 +29,8 @@ for.body4: ; preds = %for.body4, %entry %indvar1 = phi i64 [ %indvar.next2, %for.body4 ], [ 0, %entry ] %.moved.to.for.body4 = mul i64 %0, %indvar1 %1 = add i64 %.moved.to.for.body4, 0 - %arrayidx7 = getelementptr double, double* %data, i64 %1 - store double undef, double* %arrayidx7, align 8 + %arrayidx7 = getelementptr double, ptr %data, i64 %1 + store double undef, ptr %arrayidx7, align 8 %indvar.next2 = add i64 %indvar1, 1 br i1 false, label %for.body4, label %for.end10 diff --git a/polly/test/CodeGen/run-time-condition.ll b/polly/test/CodeGen/run-time-condition.ll index 19446da6c3f5..0faefad8aef4 100644 --- a/polly/test/CodeGen/run-time-condition.ll +++ b/polly/test/CodeGen/run-time-condition.ll @@ -2,7 +2,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" -define void @run-time-condition(i16* noalias %A, i16* noalias %B) { +define void @run-time-condition(ptr noalias %A, ptr noalias %B) { entry: br label %for.cond @@ -12,11 +12,10 @@ for.cond: ; preds = %for.body, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i16, i16* %B, i64 0 - %load = load i16, i16* %arrayidx + %load = load i16, ptr %B %add10 = add nsw i16 %load, 1 - %arrayidx13 = getelementptr inbounds i16, i16* %A, i64 %indvar - store i16 %add10, i16* %arrayidx13, align 2 + %arrayidx13 = getelementptr inbounds i16, ptr %A, i64 %indvar + store i16 %add10, ptr %arrayidx13, align 2 %inc = add nsw i64 %indvar, 1 br label %for.cond diff --git a/polly/test/CodeGen/scalar-references-used-in-scop-compute.ll b/polly/test/CodeGen/scalar-references-used-in-scop-compute.ll index fe32e64c1ba6..3f88942c2300 100644 --- a/polly/test/CodeGen/scalar-references-used-in-scop-compute.ll +++ b/polly/test/CodeGen/scalar-references-used-in-scop-compute.ll @@ -9,15 +9,15 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @scalar-function-argument(float* %A, float %sqrinv) { +define void @scalar-function-argument(ptr %A, float %sqrinv) { entry: br label %for.body for.body: %indvar = phi i64 [ %indvar.next, %for.body ], [ 0, %entry ] %mul104 = fmul float 1.0, %sqrinv - %rp107 = getelementptr float, float* %A, i64 %indvar - store float %mul104, float* %rp107, align 4 + %rp107 = getelementptr float, ptr %A, i64 %indvar + store float %mul104, ptr %rp107, align 4 %indvar.next = add nsw i64 %indvar, 1 %cmp = icmp slt i64 1024, %indvar.next br i1 %cmp, label %for.end, label %for.body @@ -29,7 +29,7 @@ for.end: ; CHECH-LABEL: @scalar-outside-of-scop ; CHECK: polly.split_new_and_old -define void @scalar-outside-of-scop(float* %A) { +define void @scalar-outside-of-scop(ptr %A) { entry: %sqrinv = call float @getFloat() br label %for.body @@ -37,8 +37,8 @@ entry: for.body: %indvar = phi i64 [ %indvar.next, %for.body ], [ 0, %entry ] %mul104 = fmul float 1.0, %sqrinv - %rp107 = getelementptr float, float* %A, i64 %indvar - store float %mul104, float* %rp107, align 4 + %rp107 = getelementptr float, ptr %A, i64 %indvar + store float %mul104, ptr %rp107, align 4 %indvar.next = add nsw i64 %indvar, 1 %cmp = icmp slt i64 1024, %indvar.next br i1 %cmp, label %for.end, label %for.body diff --git a/polly/test/CodeGen/scalar-store-from-same-bb.ll b/polly/test/CodeGen/scalar-store-from-same-bb.ll index 74e854f9a815..ac8fab4b7a0d 100644 --- a/polly/test/CodeGen/scalar-store-from-same-bb.ll +++ b/polly/test/CodeGen/scalar-store-from-same-bb.ll @@ -4,10 +4,10 @@ ; This test ensures that the expression N + 1 that is stored in the phi-node ; alloca, is directly computed and not incorrectly transfered through memory. -; CHECK: store i64 [[REG:%.*]], i64* %res.phiops +; CHECK: store i64 [[REG:%.*]], ptr %res.phiops ; CHECK: [[REG]] = add i64 %N, 1 -define i64 @foo(float* %A, i64 %N) { +define i64 @foo(ptr %A, i64 %N) { entry: br label %next @@ -19,7 +19,7 @@ loop: %indvar = phi i64 [0, %next], [%indvar.next, %loop] %indvar.next = add i64 %indvar, 1 %sum = add i64 %N, 1 - store float 4.0, float* %A + store float 4.0, ptr %A %cmp = icmp sle i64 %indvar.next, 100 br i1 %cmp, label %loop, label %merge diff --git a/polly/test/CodeGen/scalar_codegen_crash.ll b/polly/test/CodeGen/scalar_codegen_crash.ll index 8eb3817a0c32..c41a00f59e81 100644 --- a/polly/test/CodeGen/scalar_codegen_crash.ll +++ b/polly/test/CodeGen/scalar_codegen_crash.ll @@ -17,9 +17,9 @@ for.body: ; preds = %for.body, %entry br i1 undef, label %for.end.310, label %for.body for.end.310: ; preds = %for.body - store i32 undef, i32* @endposition, align 4 + store i32 undef, ptr @endposition, align 4 %sub325 = sub i32 33, 0 - %0 = load i32, i32* getelementptr inbounds ([0 x i32], [0 x i32]* @Init, i64 0, i64 0), align 4 + %0 = load i32, ptr @Init, align 4 br i1 false, label %for.cond.347.preheader, label %for.body.328.lr.ph for.body.328.lr.ph: ; preds = %for.end.310 @@ -29,8 +29,8 @@ for.body.328.lr.ph: ; preds = %for.end.310 for.body.328: ; preds = %for.body.328, %for.body.328.lr.ph %indvars.iv546 = phi i64 [ %indvars.iv.next547, %for.body.328 ], [ 1, %for.body.328.lr.ph ] %2 = phi i32 [ %or331, %for.body.328 ], [ %0, %for.body.328.lr.ph ] - %arrayidx330 = getelementptr inbounds [0 x i32], [0 x i32]* @Bit, i64 0, i64 %indvars.iv546 - %3 = load i32, i32* %arrayidx330, align 4 + %arrayidx330 = getelementptr inbounds [0 x i32], ptr @Bit, i64 0, i64 %indvars.iv546 + %3 = load i32, ptr %arrayidx330, align 4 %or331 = or i32 %3, %2 %indvars.iv.next547 = add nuw nsw i64 %indvars.iv546, 1 %lftr.wideiv = trunc i64 %indvars.iv.next547 to i32 diff --git a/polly/test/CodeGen/scev-division-invariant-load.ll b/polly/test/CodeGen/scev-division-invariant-load.ll index 3af47b6be5a4..3156bdc9f5ce 100644 --- a/polly/test/CodeGen/scev-division-invariant-load.ll +++ b/polly/test/CodeGen/scev-division-invariant-load.ll @@ -6,21 +6,21 @@ ; ModuleID = 'bug.ll' target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.frame_store = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, %struct.picture*, %struct.picture*, %struct.picture* } -%struct.picture = type { i32, i32, i32, i32, i32, i32, [6 x [33 x i64]], [6 x [33 x i64]], [6 x [33 x i64]], [6 x [33 x i64]], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i16**, i16*, i16*, i16**, i16**, i16***, i8*, i16***, i64***, i64***, i16****, i8**, i8**, %struct.picture*, %struct.picture*, %struct.picture*, i32, i32, i32, i32, i32, i32, i32 } +%struct.frame_store = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr, ptr } +%struct.picture = type { i32, i32, i32, i32, i32, i32, [6 x [33 x i64]], [6 x [33 x i64]], [6 x [33 x i64]], [6 x [33 x i64]], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32 } -define void @dpb_split_field(%struct.frame_store* %fs) { +define void @dpb_split_field(ptr %fs) { entry: br label %for.body544 for.body544: ; preds = %if.end908, %for.body544.lr.ph %indvars.iv87 = phi i64 [ 0, %entry ], [ %indvars.iv.next88, %if.end908 ] - %tmp = phi %struct.picture* [ undef, %entry ], [ %tmp6, %if.end908 ] + %tmp = phi ptr [ undef, %entry ], [ %tmp6, %if.end908 ] br label %land.lhs.true563 land.lhs.true563: ; preds = %for.body544 - %size_x551 = getelementptr inbounds %struct.picture, %struct.picture* %tmp, i64 0, i32 18 - %tmp1 = load i32, i32* %size_x551, align 8 + %size_x551 = getelementptr inbounds %struct.picture, ptr %tmp, i64 0, i32 18 + %tmp1 = load i32, ptr %size_x551, align 8 %div552 = sdiv i32 %tmp1, 16 %tmp2 = trunc i64 %indvars.iv87 to i32 %div554 = sdiv i32 %tmp2, 4 @@ -29,20 +29,20 @@ land.lhs.true563: ; preds = %for.body544 %tmp10 = shl i32 %tmp9, 1 %add559 = add i32 %tmp10, 0 %idxprom564 = sext i32 %add559 to i64 - %mb_field566 = getelementptr inbounds %struct.picture, %struct.picture* %tmp, i64 0, i32 31 - %tmp3 = load i8*, i8** %mb_field566, align 8 - %arrayidx567 = getelementptr inbounds i8, i8* %tmp3, i64 %idxprom564 - %tmp4 = load i8, i8* %arrayidx567, align 1 + %mb_field566 = getelementptr inbounds %struct.picture, ptr %tmp, i64 0, i32 31 + %tmp3 = load ptr, ptr %mb_field566, align 8 + %arrayidx567 = getelementptr inbounds i8, ptr %tmp3, i64 %idxprom564 + %tmp4 = load i8, ptr %arrayidx567, align 1 %tobool569 = icmp eq i8 %tmp4, 0 br i1 %tobool569, label %if.end908, label %if.then570 if.then570: ; preds = %land.lhs.true563 - %frame = getelementptr inbounds %struct.frame_store, %struct.frame_store* %fs, i64 0, i32 10 - %tmp5 = load %struct.picture*, %struct.picture** %frame, align 8 + %frame = getelementptr inbounds %struct.frame_store, ptr %fs, i64 0, i32 10 + %tmp5 = load ptr, ptr %frame, align 8 br label %if.end908 if.end908: ; preds = %if.then570, %land.lhs.true563 - %tmp6 = phi %struct.picture* [ %tmp, %land.lhs.true563 ], [ undef, %if.then570 ] + %tmp6 = phi ptr [ %tmp, %land.lhs.true563 ], [ undef, %if.then570 ] %indvars.iv.next88 = add nuw nsw i64 %indvars.iv87, 1 br i1 undef, label %for.body544, label %for.inc912 diff --git a/polly/test/CodeGen/scop_expander_insert_point.ll b/polly/test/CodeGen/scop_expander_insert_point.ll index 1d69fc529ac8..8492873b22ed 100644 --- a/polly/test/CodeGen/scop_expander_insert_point.ll +++ b/polly/test/CodeGen/scop_expander_insert_point.ll @@ -21,15 +21,15 @@ for.cond10.preheader.lr.ph: ; preds = %entry for.body17.lr.ph: ; preds = %for.end22, %for.cond10.preheader.lr.ph %outcol_h.048 = phi i32 [ 0, %for.cond10.preheader.lr.ph ], [ %add31, %for.end22 ] - %0 = load i8*, i8** undef + %0 = load ptr, ptr undef %idx.ext = zext i32 %outcol_h.048 to i64 - %add.ptr = getelementptr inbounds i8, i8* %0, i64 %idx.ext + %add.ptr = getelementptr inbounds i8, ptr %0, i64 %idx.ext br label %for.body17 for.body17: ; preds = %for.body17, %for.body17.lr.ph %outvalue.141 = phi i64 [ undef, %for.body17.lr.ph ], [ %add19, %for.body17 ] - %inptr.040 = phi i8* [ %add.ptr, %for.body17.lr.ph ], [ undef, %for.body17 ] - %1 = load i8, i8* %inptr.040 + %inptr.040 = phi ptr [ %add.ptr, %for.body17.lr.ph ], [ undef, %for.body17 ] + %1 = load i8, ptr %inptr.040 %add19 = mul nsw i64 0, %outvalue.141 br i1 false, label %for.body17, label %for.end22 diff --git a/polly/test/CodeGen/scop_expander_segfault.ll b/polly/test/CodeGen/scop_expander_segfault.ll index 104915359819..293c1e527959 100644 --- a/polly/test/CodeGen/scop_expander_segfault.ll +++ b/polly/test/CodeGen/scop_expander_segfault.ll @@ -8,22 +8,22 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @lex_number(i8* %str) { +define void @lex_number(ptr %str) { entry: br label %for.end for.end: ; preds = %entry - %0 = load i8, i8* %str, align 1 + %0 = load i8, ptr %str, align 1 %cmp17 = icmp eq i8 %0, 48 br i1 %cmp17, label %land.lhs.true34, label %lor.lhs.false81 land.lhs.true34: ; preds = %for.end - %arrayidx35 = getelementptr inbounds i8, i8* %str, i64 1 - %str.arrayidx35 = select i1 undef, i8* %str, i8* %arrayidx35 + %arrayidx35 = getelementptr inbounds i8, ptr %str, i64 1 + %str.arrayidx35 = select i1 undef, ptr %str, ptr %arrayidx35 br label %lor.lhs.false81 lor.lhs.false81: ; preds = %land.lhs.true34, %for.end - %p.0 = phi i8* [ %str.arrayidx35, %land.lhs.true34 ], [ %str, %for.end ] + %p.0 = phi ptr [ %str.arrayidx35, %land.lhs.true34 ], [ %str, %for.end ] br label %do.body172 do.body172: ; preds = %lor.lhs.false81 diff --git a/polly/test/CodeGen/scop_never_executed_runtime_check_location.ll b/polly/test/CodeGen/scop_never_executed_runtime_check_location.ll index 07c92e534449..91a58159b5f9 100644 --- a/polly/test/CodeGen/scop_never_executed_runtime_check_location.ll +++ b/polly/test/CodeGen/scop_never_executed_runtime_check_location.ll @@ -12,7 +12,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @init_array(i32 %n, double* %data) { +define void @init_array(i32 %n, ptr %data) { entry: %0 = zext i32 %n to i64 br i1 false, label %for.end10, label %for.body4 @@ -21,8 +21,8 @@ for.body4: ; preds = %for.body4, %entry %indvar1 = phi i64 [ %indvar.next2, %for.body4 ], [ 0, %entry ] %.moved.to.for.body4 = mul i64 %0, %indvar1 %1 = add i64 %.moved.to.for.body4, 0 - %arrayidx7 = getelementptr double, double* %data, i64 %1 - store double undef, double* %arrayidx7, align 8 + %arrayidx7 = getelementptr double, ptr %data, i64 %1 + store double undef, ptr %arrayidx7, align 8 %indvar.next2 = add i64 %indvar1, 1 br i1 false, label %for.body4, label %for.end10 diff --git a/polly/test/CodeGen/select-base-pointer.ll b/polly/test/CodeGen/select-base-pointer.ll index 8659410f0a0a..29bc40074e1f 100644 --- a/polly/test/CodeGen/select-base-pointer.ll +++ b/polly/test/CodeGen/select-base-pointer.ll @@ -5,46 +5,43 @@ ; ModuleID = 'bugpoint-reduced-simplified.bc' target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%"DOMParentNode" = type { %"DOMNode"*, %"DOMNode"*, %"DOMNodeListImpl" } -%"DOMDocumentRange" = type { i32 (...)** } -%"DOMXPathEvaluator" = type { i32 (...)** } -%"DOMDocumentTraversal" = type { i32 (...)** } -%"DOMNode" = type { i32 (...)** } -%"DOMNodeListImpl" = type { %"DOMNodeList", %"DOMNode"* } -%"DOMNodeList" = type { i32 (...)** } -%"DOMElementImpl" = type { %"DOMElement", %"DOMNodeImpl", %"DOMParentNode", %"DOMChildNode", %"DOMAttrMapImpl"*, %"DOMAttrMapImpl"*, i16* } +%"DOMParentNode" = type { ptr, ptr, %"DOMNodeListImpl" } +%"DOMDocumentRange" = type { ptr } +%"DOMXPathEvaluator" = type { ptr } +%"DOMDocumentTraversal" = type { ptr } +%"DOMNode" = type { ptr } +%"DOMNodeListImpl" = type { %"DOMNodeList", ptr } +%"DOMNodeList" = type { ptr } +%"DOMElementImpl" = type { %"DOMElement", %"DOMNodeImpl", %"DOMParentNode", %"DOMChildNode", ptr, ptr, ptr } %"DOMElement" = type { %"DOMNode" } -%"DOMNodeImpl" = type <{ %"DOMNode"*, i16, [6 x i8] }> -%"DOMChildNode" = type { %"DOMNode"*, %"DOMNode"* } +%"DOMNodeImpl" = type <{ ptr, i16, [6 x i8] }> +%"DOMChildNode" = type { ptr, ptr } %"DOMAttrMapImpl" = type <{ %"DOMNamedNodeMapImpl", i8, [7 x i8] }> -%"DOMNamedNodeMapImpl" = type { %"DOMNamedNodeMap", %"DOMNode"* } -%"DOMNamedNodeMap" = type { i32 (...)** } +%"DOMNamedNodeMapImpl" = type { %"DOMNamedNodeMap", ptr } +%"DOMNamedNodeMap" = type { ptr } %"DOMTextImpl" = type { %"DOMText", %"DOMNodeImpl", %"DOMChildNode" } %"DOMText" = type { %"DOMCharacterData" } %"DOMCharacterData" = type { %"DOMNode" } ; Function Attrs: uwtable -define void @_ZN11xercesc_2_513DOMParentNode9lastChildEPNS_7DOMNodeE(%"DOMParentNode"* %this, %"DOMNode"* %node) #0 align 2 { +define void @_ZN11xercesc_2_513DOMParentNode9lastChildEPNS_7DOMNodeE(ptr %this, ptr %node) #0 align 2 { entry: br label %entry.split entry.split: ; preds = %entry - %fFirstChild = getelementptr inbounds %"DOMParentNode", %"DOMParentNode"* %this, i32 0, i32 1 - %0 = load %"DOMNode"*, %"DOMNode"** %fFirstChild, align 8, !tbaa !1 - %cmp = icmp ne %"DOMNode"* %0, null + %fFirstChild = getelementptr inbounds %"DOMParentNode", ptr %this, i32 0, i32 1 + %0 = load ptr, ptr %fFirstChild, align 8, !tbaa !1 + %cmp = icmp ne ptr %0, null br i1 %cmp, label %if.then, label %if.end if.then: ; preds = %entry.split - %1 = bitcast %"DOMNode"* %0 to %"DOMElementImpl"* - %fNode.i = getelementptr inbounds %"DOMElementImpl", %"DOMElementImpl"* %1, i32 0, i32 1 - %flags.i.i = getelementptr inbounds %"DOMNodeImpl", %"DOMNodeImpl"* %fNode.i, i32 0, i32 1 - %2 = load i16, i16* %flags.i.i, align 8, !tbaa !7 - %3 = bitcast %"DOMNode"* %0 to %"DOMTextImpl"* - %fChild.i = getelementptr inbounds %"DOMTextImpl", %"DOMTextImpl"* %3, i32 0, i32 2 - %fChild1.i = getelementptr inbounds %"DOMElementImpl", %"DOMElementImpl"* %1, i32 0, i32 3 - %retval.0.i = select i1 undef, %"DOMChildNode"* %fChild.i, %"DOMChildNode"* %fChild1.i - %previousSibling = getelementptr inbounds %"DOMChildNode", %"DOMChildNode"* %retval.0.i, i32 0, i32 0 - store %"DOMNode"* %node, %"DOMNode"** %previousSibling, align 8, !tbaa !10 + %fNode.i = getelementptr inbounds %"DOMElementImpl", ptr %0, i32 0, i32 1 + %flags.i.i = getelementptr inbounds %"DOMNodeImpl", ptr %fNode.i, i32 0, i32 1 + %1 = load i16, ptr %flags.i.i, align 8, !tbaa !7 + %fChild.i = getelementptr inbounds %"DOMTextImpl", ptr %0, i32 0, i32 2 + %fChild1.i = getelementptr inbounds %"DOMElementImpl", ptr %0, i32 0, i32 3 + %retval.0.i = select i1 undef, ptr %fChild.i, ptr %fChild1.i + store ptr %node, ptr %retval.0.i, align 8, !tbaa !10 br label %if.end if.end: ; preds = %if.then, %entry.split diff --git a/polly/test/CodeGen/sequential_loops.ll b/polly/test/CodeGen/sequential_loops.ll index dd5e7005cbd7..97d280de3cd2 100644 --- a/polly/test/CodeGen/sequential_loops.ll +++ b/polly/test/CodeGen/sequential_loops.ll @@ -33,7 +33,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -@A = common global [1024 x i32] zeroinitializer, align 4 ; <[1024 x i32]*> [#uses=5] +@A = common global [1024 x i32] zeroinitializer, align 4 ; <ptr> [#uses=5] define void @sequential_loops() nounwind { bb: @@ -41,12 +41,12 @@ bb: bb1: ; preds = %bb3, %bb %indvar1 = phi i64 [ %indvar.next2, %bb3 ], [ 0, %bb ] - %scevgep4 = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvar1 + %scevgep4 = getelementptr [1024 x i32], ptr @A, i64 0, i64 %indvar1 %exitcond3 = icmp ne i64 %indvar1, 512 br i1 %exitcond3, label %bb2, label %bb4 bb2: ; preds = %bb1 - store i32 1, i32* %scevgep4 + store i32 1, ptr %scevgep4 br label %bb3 bb3: ; preds = %bb2 @@ -59,12 +59,12 @@ bb4: ; preds = %bb1 bb5: ; preds = %bb7, %bb4 %indvar = phi i64 [ %indvar.next, %bb7 ], [ 0, %bb4 ] %tmp = add i64 %indvar, 512 - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %tmp + %scevgep = getelementptr [1024 x i32], ptr @A, i64 0, i64 %tmp %exitcond = icmp ne i64 %indvar, 512 br i1 %exitcond, label %bb6, label %bb8 bb6: ; preds = %bb5 - store i32 2, i32* %scevgep + store i32 2, ptr %scevgep br label %bb7 bb7: ; preds = %bb6 @@ -77,19 +77,19 @@ bb8: ; preds = %bb5 define i32 @main() nounwind { bb: - call void @llvm.memset.p0i8.i64(i8* bitcast ([1024 x i32]* @A to i8*), i8 0, i64 4096, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr @A, i8 0, i64 4096, i32 1, i1 false) call void @sequential_loops() br label %bb1 bb1: ; preds = %bb15, %bb %indvar = phi i64 [ %indvar.next, %bb15 ], [ 0, %bb ] %i.0 = trunc i64 %indvar to i32 - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvar + %scevgep = getelementptr [1024 x i32], ptr @A, i64 0, i64 %indvar %tmp = icmp slt i32 %i.0, 1024 br i1 %tmp, label %bb2, label %bb16 bb2: ; preds = %bb1 - %tmp3 = load i32, i32* %scevgep + %tmp3 = load i32, ptr %scevgep %tmp4 = icmp ne i32 %tmp3, 1 br i1 %tmp4, label %bb5, label %bb8 @@ -101,7 +101,7 @@ bb7: ; preds = %bb5 br label %bb17 bb8: ; preds = %bb5, %bb2 - %tmp9 = load i32, i32* %scevgep + %tmp9 = load i32, ptr %scevgep %tmp10 = icmp ne i32 %tmp9, 2 br i1 %tmp10, label %bb11, label %bb14 @@ -127,7 +127,7 @@ bb17: ; preds = %bb16, %bb13, %bb7 ret i32 %.0 } -declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) nounwind +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) nounwind ; CHECK: { ; CHECK: for (int c0 = 0; c0 <= 511; c0 += 1) diff --git a/polly/test/CodeGen/simple_loop_non_single_exit.ll b/polly/test/CodeGen/simple_loop_non_single_exit.ll index 00bed097149b..dc1b09b765a1 100644 --- a/polly/test/CodeGen/simple_loop_non_single_exit.ll +++ b/polly/test/CodeGen/simple_loop_non_single_exit.ll @@ -9,7 +9,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br label %next @@ -19,8 +19,8 @@ next: for.i: %indvar = phi i64 [ 0, %next], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i diff --git a/polly/test/CodeGen/simple_loop_non_single_exit_2.ll b/polly/test/CodeGen/simple_loop_non_single_exit_2.ll index e9d155cd06e0..178601cac9b8 100644 --- a/polly/test/CodeGen/simple_loop_non_single_exit_2.ll +++ b/polly/test/CodeGen/simple_loop_non_single_exit_2.ll @@ -10,7 +10,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br i1 true, label %next, label %return @@ -20,8 +20,8 @@ next: for.i: %indvar = phi i64 [ 0, %next], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i diff --git a/polly/test/CodeGen/simple_non_single_entry.ll b/polly/test/CodeGen/simple_non_single_entry.ll index 154764e0cd28..3b4bf59bdc65 100644 --- a/polly/test/CodeGen/simple_non_single_entry.ll +++ b/polly/test/CodeGen/simple_non_single_entry.ll @@ -24,7 +24,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br i1 true, label %then1, label %else1 @@ -36,8 +36,8 @@ else1: br label %next next: - %sg = getelementptr i64, i64* %A, i64 42 - store i64 undef, i64* %sg + %sg = getelementptr i64, ptr %A, i64 42 + store i64 undef, ptr %sg br i1 true, label %then, label %else then: @@ -55,8 +55,8 @@ for.i.head1: for.i: %indvar = phi i64 [ 0, %for.i.head1], [ %indvar.next, %for.i ] fence seq_cst - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i diff --git a/polly/test/CodeGen/simple_nonaffine_loop.ll b/polly/test/CodeGen/simple_nonaffine_loop.ll index c0ae3a2f5adb..d4e9c6082e6c 100644 --- a/polly/test/CodeGen/simple_nonaffine_loop.ll +++ b/polly/test/CodeGen/simple_nonaffine_loop.ll @@ -33,8 +33,8 @@ for.body: ; preds = %entry.split, %for.b %mul = mul i32 %0, 2 %mul1 = mul nsw i32 %0, %0 %idxprom1 = zext i32 %mul1 to i64 - %arrayidx = getelementptr inbounds [1048576 x i32], [1048576 x i32]* %A, i64 0, i64 %idxprom1 - store i32 %mul, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds [1048576 x i32], ptr %A, i64 0, i64 %idxprom1 + store i32 %mul, ptr %arrayidx, align 4 %1 = add nsw i32 %0, 1 %exitcond = icmp ne i32 %1, 1024 br i1 %exitcond, label %for.body, label %for.end @@ -44,13 +44,13 @@ for.end: ; preds = %for.body %rem = srem i32 %call, 1024 %mul2 = shl nsw i32 %rem, 10 %idxprom3 = sext i32 %mul2 to i64 - %arrayidx4 = getelementptr inbounds [1048576 x i32], [1048576 x i32]* %A, i64 0, i64 %idxprom3 - %2 = load i32, i32* %arrayidx4, align 16 - %call5 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str, i64 0, i64 0), i32 %2) nounwind + %arrayidx4 = getelementptr inbounds [1048576 x i32], ptr %A, i64 0, i64 %idxprom3 + %2 = load i32, ptr %arrayidx4, align 16 + %call5 = call i32 (ptr, ...) @printf(ptr @.str, i32 %2) nounwind ret i32 0 } -declare i32 @printf(i8*, ...) +declare i32 @printf(ptr, ...) declare i32 @rand() diff --git a/polly/test/CodeGen/simple_vec_assign_scalar.ll b/polly/test/CodeGen/simple_vec_assign_scalar.ll index 6def8f137e74..ae8a75257ac6 100644 --- a/polly/test/CodeGen/simple_vec_assign_scalar.ll +++ b/polly/test/CodeGen/simple_vec_assign_scalar.ll @@ -30,15 +30,15 @@ bb: bb2: ; preds = %bb5, %bb %indvar = phi i64 [ %indvar.next, %bb5 ], [ 0, %bb ] - %scevgep = getelementptr [1024 x float], [1024 x float]* @B, i64 0, i64 %indvar - %scevgep1 = getelementptr [1024 x float], [1024 x float]* @A, i64 0, i64 %indvar + %scevgep = getelementptr [1024 x float], ptr @B, i64 0, i64 %indvar + %scevgep1 = getelementptr [1024 x float], ptr @A, i64 0, i64 %indvar %exitcond = icmp ne i64 %indvar, 4 br i1 %exitcond, label %bb3, label %bb6 bb3: ; preds = %bb2 - %tmp = load float, float* %scevgep1, align 4 + %tmp = load float, ptr %scevgep1, align 4 %tmp4 = fadd float %tmp, 1.000000e+00 - store float %tmp4, float* %scevgep, align 4 + store float %tmp4, ptr %scevgep, align 4 br label %bb5 bb5: ; preds = %bb3 @@ -52,13 +52,13 @@ bb6: ; preds = %bb2 define i32 @main() nounwind { bb: call void @simple_vec_const() - %tmp = load float, float* getelementptr inbounds ([1024 x float], [1024 x float]* @A, i64 0, i64 42), align 8 + %tmp = load float, ptr getelementptr inbounds ([1024 x float], ptr @A, i64 0, i64 42), align 8 %tmp1 = fptosi float %tmp to i32 ret i32 %tmp1 } ; STRIPMINE-NOT: <4 x float> -; CHECK: %tmp_p_vec_full = load <4 x float>, <4 x float>* bitcast ([1024 x float]* @A to <4 x float>*), align 8, !alias.scope !0, !noalias !3 +; CHECK: %tmp_p_vec_full = load <4 x float>, ptr @A, align 8, !alias.scope !0, !noalias !3 ; CHECK: %tmp4p_vec = fadd <4 x float> %tmp_p_vec_full, <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00> -; CHECK: store <4 x float> %tmp4p_vec, <4 x float>* bitcast ([1024 x float]* @B to <4 x float>*) +; CHECK: store <4 x float> %tmp4p_vec, ptr @B diff --git a/polly/test/CodeGen/simple_vec_assign_scalar_2.ll b/polly/test/CodeGen/simple_vec_assign_scalar_2.ll index 6e957da789ff..f26720f95df3 100644 --- a/polly/test/CodeGen/simple_vec_assign_scalar_2.ll +++ b/polly/test/CodeGen/simple_vec_assign_scalar_2.ll @@ -27,17 +27,17 @@ bb: bb2: ; preds = %bb6, %bb %indvar = phi i64 [ %indvar.next, %bb6 ], [ 0, %bb ] - %scevgep = getelementptr [1024 x float], [1024 x float]* @B, i64 0, i64 %indvar + %scevgep = getelementptr [1024 x float], ptr @B, i64 0, i64 %indvar %i.0 = trunc i64 %indvar to i32 - %scevgep1 = getelementptr [1024 x float], [1024 x float]* @A, i64 0, i64 %indvar + %scevgep1 = getelementptr [1024 x float], ptr @A, i64 0, i64 %indvar %exitcond = icmp ne i64 %indvar, 4 br i1 %exitcond, label %bb3, label %bb7 bb3: ; preds = %bb2 - %tmp = load float, float* %scevgep1, align 4 + %tmp = load float, ptr %scevgep1, align 4 %tmp4 = sitofp i32 %i.0 to float %tmp5 = fadd float %tmp, %tmp4 - store float %tmp5, float* %scevgep, align 4 + store float %tmp5, ptr %scevgep, align 4 br label %bb6 bb6: ; preds = %bb3 @@ -51,7 +51,7 @@ bb7: ; preds = %bb2 define i32 @main() nounwind { bb: call void @simple_vec_const() - %tmp = load float, float* getelementptr inbounds ([1024 x float], [1024 x float]* @A, i64 0, i64 42), align 8 + %tmp = load float, ptr getelementptr inbounds ([1024 x float], ptr @A, i64 0, i64 42), align 8 %tmp1 = fptosi float %tmp to i32 ret i32 %tmp1 } diff --git a/polly/test/CodeGen/simple_vec_large_width.ll b/polly/test/CodeGen/simple_vec_large_width.ll index 6b5b6e287bf3..4ad3b8987616 100644 --- a/polly/test/CodeGen/simple_vec_large_width.ll +++ b/polly/test/CodeGen/simple_vec_large_width.ll @@ -10,14 +10,14 @@ define void @simple_vec_large_width() nounwind { ; <label>:1 ; preds = %4, %0 %indvar = phi i64 [ %indvar.next, %4 ], [ 0, %0 ] - %scevgep = getelementptr [1024 x float], [1024 x float]* @B, i64 0, i64 %indvar - %scevgep1 = getelementptr [1024 x float], [1024 x float]* @A, i64 0, i64 %indvar + %scevgep = getelementptr [1024 x float], ptr @B, i64 0, i64 %indvar + %scevgep1 = getelementptr [1024 x float], ptr @A, i64 0, i64 %indvar %exitcond = icmp ne i64 %indvar, 15 br i1 %exitcond, label %2, label %5 ; <label>:2 ; preds = %1 - %3 = load float, float* %scevgep1, align 4 - store float %3, float* %scevgep, align 4 + %3 = load float, ptr %scevgep1, align 4 + store float %3, ptr %scevgep, align 4 br label %4 ; <label>:4 ; preds = %2 @@ -30,10 +30,10 @@ define void @simple_vec_large_width() nounwind { define i32 @main() nounwind { call void @simple_vec_large_width() - %1 = load float, float* getelementptr inbounds ([1024 x float], [1024 x float]* @A, i64 0, i64 42), align 8 + %1 = load float, ptr getelementptr inbounds ([1024 x float], ptr @A, i64 0, i64 42), align 8 %2 = fptosi float %1 to i32 ret i32 %2 } -; CHECK: [[VEC1:%[a-zA-Z0-9_]+_full]] = load <15 x float>, <15 x float>* +; CHECK: [[VEC1:%[a-zA-Z0-9_]+_full]] = load <15 x float>, ptr ; CHECK: store <15 x float> [[VEC1]] diff --git a/polly/test/CodeGen/simple_vec_stride_negative_one.ll b/polly/test/CodeGen/simple_vec_stride_negative_one.ll index 59890c14b5d0..79ecf657d890 100644 --- a/polly/test/CodeGen/simple_vec_stride_negative_one.ll +++ b/polly/test/CodeGen/simple_vec_stride_negative_one.ll @@ -19,10 +19,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ 3, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* @A, i64 0, i64 %indvars.iv - %0 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds [100 x i32], ptr @A, i64 0, i64 %indvars.iv + %0 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %0, 1 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 %indvars.iv.next = add nsw i64 %indvars.iv, -1 %1 = trunc i64 %indvars.iv to i32 %cmp = icmp sgt i32 %1, 0 @@ -33,5 +33,5 @@ for.end: ; preds = %for.body } ; CHECK: @foo -; CHECK: [[LOAD:%[a-zA-Z0-9_]+]] = load <4 x i32>, <4 x i32>* +; CHECK: [[LOAD:%[a-zA-Z0-9_]+]] = load <4 x i32>, ptr ; CHECK: [[REVERSE_LOAD:%[a-zA-Z0-9_]+reverse]] = shufflevector <4 x i32> [[LOAD]], <4 x i32> [[LOAD]], <4 x i32> <i32 3, i32 2, i32 1, i32 0> diff --git a/polly/test/CodeGen/simple_vec_stride_x.ll b/polly/test/CodeGen/simple_vec_stride_x.ll index 5156a598b84f..20a8e8a3bbcc 100644 --- a/polly/test/CodeGen/simple_vec_stride_x.ll +++ b/polly/test/CodeGen/simple_vec_stride_x.ll @@ -28,14 +28,14 @@ bb: bb2: ; preds = %bb5, %bb %indvar = phi i64 [ %indvar.next, %bb5 ], [ 0, %bb ] %tmp = mul i64 %indvar, 2 - %scevgep = getelementptr [1024 x float], [1024 x float]* @B, i64 0, i64 %tmp - %scevgep1 = getelementptr [1024 x float], [1024 x float]* @A, i64 0, i64 %tmp + %scevgep = getelementptr [1024 x float], ptr @B, i64 0, i64 %tmp + %scevgep1 = getelementptr [1024 x float], ptr @A, i64 0, i64 %tmp %exitcond = icmp ne i64 %indvar, 4 br i1 %exitcond, label %bb3, label %bb6 bb3: ; preds = %bb2 - %tmp4 = load float, float* %scevgep1, align 8 - store float %tmp4, float* %scevgep, align 8 + %tmp4 = load float, ptr %scevgep1, align 8 + store float %tmp4, ptr %scevgep, align 8 br label %bb5 bb5: ; preds = %bb3 @@ -49,18 +49,18 @@ bb6: ; preds = %bb2 define i32 @main() nounwind { bb: call void @simple_vec_stride_x() - %tmp = load float, float* getelementptr inbounds ([1024 x float], [1024 x float]* @A, i64 0, i64 42), align 8 + %tmp = load float, ptr getelementptr inbounds ([1024 x float], ptr @A, i64 0, i64 42), align 8 %tmp1 = fptosi float %tmp to i32 ret i32 %tmp1 } -; CHECK: [[LOAD1:%[a-zA-Z0-9_]+_scalar_]] = load float, float* +; CHECK: [[LOAD1:%[a-zA-Z0-9_]+_scalar_]] = load float, ptr ; CHECK: [[VEC1:%[a-zA-Z0-9_]+]] = insertelement <4 x float> undef, float [[LOAD1]], i32 0 -; CHECK: [[LOAD2:%[a-zA-Z0-9_]+]] = load float, float* +; CHECK: [[LOAD2:%[a-zA-Z0-9_]+]] = load float, ptr ; CHECK: [[VEC2:%[a-zA-Z0-9_]+]] = insertelement <4 x float> [[VEC1]], float [[LOAD2]], i32 1 -; CHECK: [[LOAD3:%[a-zA-Z0-9_]+]] = load float, float* +; CHECK: [[LOAD3:%[a-zA-Z0-9_]+]] = load float, ptr ; CHECK: [[VEC3:%[a-zA-Z0-9_]+]] = insertelement <4 x float> [[VEC2]], float [[LOAD3]], i32 2 -; CHECK: [[LOAD4:%[a-zA-Z0-9_]+]] = load float, float* +; CHECK: [[LOAD4:%[a-zA-Z0-9_]+]] = load float, ptr ; CHECK: [[VEC4:%[a-zA-Z0-9_]+]] = insertelement <4 x float> [[VEC3]], float [[LOAD4]], i32 3 ; CHECK: [[EL1:%[a-zA-Z0-9_]+]] = extractelement <4 x float> [[VEC4]], i32 0 ; CHECK: store float [[EL1]] diff --git a/polly/test/CodeGen/simple_vec_strides_multidim.ll b/polly/test/CodeGen/simple_vec_strides_multidim.ll index 6c8cc4669bc5..98837af2fbc8 100644 --- a/polly/test/CodeGen/simple_vec_strides_multidim.ll +++ b/polly/test/CodeGen/simple_vec_strides_multidim.ll @@ -21,7 +21,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %n, float* noalias %A, float* noalias %B, float* noalias %C, float* noalias %D) { +define void @foo(i64 %n, ptr noalias %A, ptr noalias %B, ptr noalias %C, ptr noalias %D) { bb: br label %bb3 @@ -40,24 +40,24 @@ bb5: ; preds = %bb22, %bb4 bb6: ; preds = %bb5 %tmp = mul nsw i64 %i.0, %n - %tmp7 = getelementptr inbounds float, float* %B, i64 %tmp - %tmp8 = load float, float* %tmp7, align 4 + %tmp7 = getelementptr inbounds float, ptr %B, i64 %tmp + %tmp8 = load float, ptr %tmp7, align 4 %tmp9 = shl nsw i64 %j.0, 1 %tmp10 = mul nsw i64 %i.0, %n %.sum = add i64 %tmp10, %tmp9 - %tmp11 = getelementptr inbounds float, float* %C, i64 %.sum - %tmp12 = load float, float* %tmp11, align 4 + %tmp11 = getelementptr inbounds float, ptr %C, i64 %.sum + %tmp12 = load float, ptr %tmp11, align 4 %tmp13 = fadd float %tmp8, %tmp12 %tmp14 = mul nsw i64 %j.0, %n - %tmp15 = getelementptr inbounds float, float* %D, i64 %tmp14 - %tmp16 = load float, float* %tmp15, align 4 + %tmp15 = getelementptr inbounds float, ptr %D, i64 %tmp14 + %tmp16 = load float, ptr %tmp15, align 4 %tmp17 = fadd float %tmp13, %tmp16 %tmp18 = mul nsw i64 %i.0, %n %.sum1 = add i64 %tmp18, %j.0 - %tmp19 = getelementptr inbounds float, float* %A, i64 %.sum1 - %tmp20 = load float, float* %tmp19, align 4 + %tmp19 = getelementptr inbounds float, ptr %A, i64 %.sum1 + %tmp20 = load float, ptr %tmp19, align 4 %tmp21 = fadd float %tmp20, %tmp17 - store float %tmp21, float* %tmp19, align 4 + store float %tmp21, ptr %tmp19, align 4 br label %bb22 bb22: ; preds = %bb6 diff --git a/polly/test/CodeGen/simple_vec_two_stmts.ll b/polly/test/CodeGen/simple_vec_two_stmts.ll index a53a4a00ec7e..14c12c4887b5 100644 --- a/polly/test/CodeGen/simple_vec_two_stmts.ll +++ b/polly/test/CodeGen/simple_vec_two_stmts.ll @@ -11,20 +11,20 @@ bb0: bb1: %indvar = phi i64 [ %indvar.next, %bb4 ], [ 0, %bb0 ] - %scevgep = getelementptr [1024 x float], [1024 x float]* @B, i64 0, i64 %indvar - %scevgep2 = getelementptr [1024 x float], [1024 x float]* @C, i64 0, i64 %indvar - %scevgep1 = getelementptr [1024 x float], [1024 x float]* @A, i64 0, i64 %indvar + %scevgep = getelementptr [1024 x float], ptr @B, i64 0, i64 %indvar + %scevgep2 = getelementptr [1024 x float], ptr @C, i64 0, i64 %indvar + %scevgep1 = getelementptr [1024 x float], ptr @A, i64 0, i64 %indvar %exitcond = icmp ne i64 %indvar, 4 br i1 %exitcond, label %bb2a, label %bb5 bb2a: - %tmp1 = load float, float* %scevgep1, align 4 - store float %tmp1, float* %scevgep, align 4 + %tmp1 = load float, ptr %scevgep1, align 4 + store float %tmp1, ptr %scevgep, align 4 br label %bb2b bb2b: - %tmp2 = load float, float* %scevgep1, align 4 - store float %tmp2, float* %scevgep2, align 4 + %tmp2 = load float, ptr %scevgep1, align 4 + store float %tmp2, ptr %scevgep2, align 4 br label %bb4 bb4: @@ -37,13 +37,13 @@ bb5: define i32 @main() nounwind { call void @simple_vec_stride_one() - %1 = load float, float* getelementptr inbounds ([1024 x float], [1024 x float]* @A, i64 0, i64 42), align 8 + %1 = load float, ptr getelementptr inbounds ([1024 x float], ptr @A, i64 0, i64 42), align 8 %2 = fptosi float %1 to i32 ret i32 %2 } -; CHECK: [[LOAD1:%[a-zA-Z0-9_]+_full]] = load <4 x float>, <4 x float>* +; CHECK: [[LOAD1:%[a-zA-Z0-9_]+_full]] = load <4 x float>, ptr ; CHECK: store <4 x float> [[LOAD1]] -; CHECK: [[LOAD2:%[a-zA-Z0-9_]+_full]] = load <4 x float>, <4 x float>* +; CHECK: [[LOAD2:%[a-zA-Z0-9_]+_full]] = load <4 x float>, ptr ; CHECK: store <4 x float> [[LOAD2]] diff --git a/polly/test/CodeGen/single_do_loop_int_max_iterations.ll b/polly/test/CodeGen/single_do_loop_int_max_iterations.ll index 3fcd9c2d2878..9648fbe1cf12 100644 --- a/polly/test/CodeGen/single_do_loop_int_max_iterations.ll +++ b/polly/test/CodeGen/single_do_loop_int_max_iterations.ll @@ -37,12 +37,12 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -%struct._IO_FILE = type { i32, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, %struct._IO_marker*, %struct._IO_FILE*, i32, i32, i64, i16, i8, [1 x i8], i8*, i64, i8*, i8*, i8*, i8*, i64, i32, [20 x i8] } -%struct._IO_marker = type { %struct._IO_marker*, %struct._IO_FILE*, i32 } +%struct._IO_FILE = type { i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i64, i16, i8, [1 x i8], ptr, i64, ptr, ptr, ptr, ptr, i64, i32, [20 x i8] } +%struct._IO_marker = type { ptr, ptr, i32 } -@A = common global [20 x i32] zeroinitializer, align 4 ; <[20 x i32]*> [#uses=1] -@stdout = external global %struct._IO_FILE* ; <%struct._IO_FILE**> [#uses=1] -@.str = private constant [11 x i8] c"Output %d\0A\00" ; <[11 x i8]*> [#uses=1] +@A = common global [20 x i32] zeroinitializer, align 4 ; <ptr> [#uses=1] +@stdout = external global ptr ; <ptr> [#uses=1] +@.str = private constant [11 x i8] c"Output %d\0A\00" ; <ptr> [#uses=1] define void @single_do_loop_int_max_iterations() nounwind { entry: @@ -51,7 +51,7 @@ entry: do.body: ; preds = %do.cond, %entry %0 = phi i32 [ 0, %entry ], [ %inc, %do.cond ] ; <i32> [#uses=2] - store i32 %0, i32* getelementptr inbounds ([20 x i32], [20 x i32]* @A, i32 0, i32 0) + store i32 %0, ptr @A %inc = add nsw i32 %0, 1 ; <i32> [#uses=2] br label %do.cond @@ -66,12 +66,12 @@ do.end: ; preds = %do.cond define i32 @main() nounwind { entry: - store i32 0, i32* getelementptr inbounds ([20 x i32], [20 x i32]* @A, i32 0, i32 0) + store i32 0, ptr @A call void @single_do_loop_int_max_iterations() - %tmp = load %struct._IO_FILE*, %struct._IO_FILE** @stdout ; <%struct._IO_FILE*> [#uses=1] - %tmp1 = load i32, i32* getelementptr inbounds ([20 x i32], [20 x i32]* @A, i32 0, i32 0) ; <i32> [#uses=1] - %call = call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %tmp, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str, i32 0, i32 0), i32 %tmp1) ; <i32> [#uses=0] - %tmp2 = load i32, i32* getelementptr inbounds ([20 x i32], [20 x i32]* @A, i32 0, i32 0) ; <i32> [#uses=1] + %tmp = load ptr, ptr @stdout ; <ptr> [#uses=1] + %tmp1 = load i32, ptr @A ; <i32> [#uses=1] + %call = call i32 (ptr, ptr, ...) @fprintf(ptr %tmp, ptr @.str, i32 %tmp1) ; <i32> [#uses=0] + %tmp2 = load i32, ptr @A ; <i32> [#uses=1] %cmp = icmp eq i32 %tmp2, 2147483646 ; <i1> [#uses=1] br i1 %cmp, label %if.then, label %if.else @@ -86,7 +86,7 @@ return: ; preds = %if.else, %if.then ret i32 %retval.0 } -declare i32 @fprintf(%struct._IO_FILE*, i8*, ...) +declare i32 @fprintf(ptr, ptr, ...) ; CHECK: for (int c0 = 0; c0 <= 2147483646; c0 += 1) ; CHECK: Stmt_do_body(c0); diff --git a/polly/test/CodeGen/single_do_loop_int_param_iterations.ll b/polly/test/CodeGen/single_do_loop_int_param_iterations.ll index 301b30cf96a0..f28d828a5da0 100644 --- a/polly/test/CodeGen/single_do_loop_int_param_iterations.ll +++ b/polly/test/CodeGen/single_do_loop_int_param_iterations.ll @@ -29,7 +29,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -@A = common global [20 x i32] zeroinitializer, align 4 ; <[20 x i32]*> [#uses=1] +@A = common global [20 x i32] zeroinitializer, align 4 ; <ptr> [#uses=1] define void @bar(i32 %n) nounwind { entry: @@ -41,7 +41,7 @@ entry: do.body: ; preds = %do.cond, %entry %0 = phi i32 [ 0, %entry ], [ %inc, %do.cond ] ; <i32> [#uses=2] - store i32 %0, i32* getelementptr inbounds ([20 x i32], [20 x i32]* @A, i32 0, i32 0) + store i32 %0, ptr @A %inc = add nsw i32 %0, 1 ; <i32> [#uses=2] br label %do.cond @@ -56,9 +56,9 @@ do.end: ; preds = %do.cond define i32 @main() nounwind { entry: - store i32 0, i32* getelementptr inbounds ([20 x i32], [20 x i32]* @A, i32 0, i32 0) + store i32 0, ptr @A call void @bar(i32 10) - %tmp = load i32, i32* getelementptr inbounds ([20 x i32], [20 x i32]* @A, i32 0, i32 0) ; <i32> [#uses=1] + %tmp = load i32, ptr @A ; <i32> [#uses=1] %cmp = icmp eq i32 %tmp, 19 ; <i1> [#uses=1] br i1 %cmp, label %if.then, label %if.else diff --git a/polly/test/CodeGen/single_do_loop_ll_max_iterations.ll b/polly/test/CodeGen/single_do_loop_ll_max_iterations.ll index 4e806d69e5a5..68aaab96083a 100644 --- a/polly/test/CodeGen/single_do_loop_ll_max_iterations.ll +++ b/polly/test/CodeGen/single_do_loop_ll_max_iterations.ll @@ -29,17 +29,17 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -@A = common global [20 x i64] zeroinitializer, align 8 ; <[20 x i64]*> [#uses=1] +@A = common global [20 x i64] zeroinitializer, align 8 ; <ptr> [#uses=1] define i32 @main() nounwind { entry: - store i64 0, i64* getelementptr inbounds ([20 x i64], [20 x i64]* @A, i32 0, i32 0) + store i64 0, ptr @A fence seq_cst br label %do.body do.body: ; preds = %do.cond, %entry %0 = phi i64 [ 0, %entry ], [ %inc, %do.cond ] ; <i64> [#uses=2] - store i64 %0, i64* getelementptr inbounds ([20 x i64], [20 x i64]* @A, i32 0, i32 0) + store i64 %0, ptr @A %inc = add nsw i64 %0, 1 ; <i64> [#uses=2] br label %do.cond @@ -49,7 +49,7 @@ do.cond: ; preds = %do.body do.end: ; preds = %do.cond fence seq_cst - %tmp3 = load i64, i64* getelementptr inbounds ([20 x i64], [20 x i64]* @A, i32 0, i32 0) ; <i64> [#uses=1] + %tmp3 = load i64, ptr @A ; <i64> [#uses=1] %cmp4 = icmp eq i64 %tmp3, 9223372036854775806 ; <i1> [#uses=1] br i1 %cmp4, label %if.then, label %if.else diff --git a/polly/test/CodeGen/single_do_loop_one_iteration.ll b/polly/test/CodeGen/single_do_loop_one_iteration.ll index afe015e66bcb..9d97cb854734 100644 --- a/polly/test/CodeGen/single_do_loop_one_iteration.ll +++ b/polly/test/CodeGen/single_do_loop_one_iteration.ll @@ -31,17 +31,17 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 define i32 @main() nounwind { entry: - %A = alloca [20 x i32], align 4 ; <[20 x i32]*> [#uses=3] - %arraydecay = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx = getelementptr inbounds i32, i32* %arraydecay, i64 0 ; <i32*> [#uses=1] - store i32 1, i32* %arrayidx + %A = alloca [20 x i32], align 4 ; <ptr> [#uses=3] + %arraydecay = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx = getelementptr inbounds i32, ptr %arraydecay, i64 0 ; <ptr> [#uses=1] + store i32 1, ptr %arrayidx fence seq_cst br label %do.body do.body: ; preds = %do.cond, %entry - %arraydecay1 = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx2 = getelementptr inbounds i32, i32* %arraydecay1, i64 0 ; <i32*> [#uses=1] - store i32 0, i32* %arrayidx2 + %arraydecay1 = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx2 = getelementptr inbounds i32, ptr %arraydecay1, i64 0 ; <ptr> [#uses=1] + store i32 0, ptr %arrayidx2 br label %do.cond do.cond: ; preds = %do.body @@ -49,9 +49,9 @@ do.cond: ; preds = %do.body do.end: ; preds = %do.cond fence seq_cst - %arraydecay4 = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx5 = getelementptr inbounds i32, i32* %arraydecay4, i64 0 ; <i32*> [#uses=1] - %tmp6 = load i32, i32* %arrayidx5 ; <i32> [#uses=1] + %arraydecay4 = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx5 = getelementptr inbounds i32, ptr %arraydecay4, i64 0 ; <ptr> [#uses=1] + %tmp6 = load i32, ptr %arrayidx5 ; <i32> [#uses=1] %cmp7 = icmp eq i32 %tmp6, 0 ; <i1> [#uses=1] br i1 %cmp7, label %if.then, label %if.else diff --git a/polly/test/CodeGen/single_do_loop_scev_replace.ll b/polly/test/CodeGen/single_do_loop_scev_replace.ll index 23e8dd2d3bd0..7963d9d29fe8 100644 --- a/polly/test/CodeGen/single_do_loop_scev_replace.ll +++ b/polly/test/CodeGen/single_do_loop_scev_replace.ll @@ -35,12 +35,12 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -%struct._IO_FILE = type { i32, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, %struct._IO_marker*, %struct._IO_FILE*, i32, i32, i64, i16, i8, [1 x i8], i8*, i64, i8*, i8*, i8*, i8*, i64, i32, [20 x i8] } -%struct._IO_marker = type { %struct._IO_marker*, %struct._IO_FILE*, i32 } +%struct._IO_FILE = type { i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i64, i16, i8, [1 x i8], ptr, i64, ptr, ptr, ptr, ptr, i64, i32, [20 x i8] } +%struct._IO_marker = type { ptr, ptr, i32 } -@A = common global [40 x i32] zeroinitializer, align 4 ; <[40 x i32]*> [#uses=3] -@stdout = external global %struct._IO_FILE* ; <%struct._IO_FILE**> [#uses=1] -@.str = private constant [11 x i8] c"Output %d\0A\00" ; <[11 x i8]*> [#uses=1] +@A = common global [40 x i32] zeroinitializer, align 4 ; <ptr> [#uses=3] +@stdout = external global ptr ; <ptr> [#uses=1] +@.str = private constant [11 x i8] c"Output %d\0A\00" ; <ptr> [#uses=1] define void @single_do_loop_scev_replace() nounwind { entry: @@ -50,12 +50,12 @@ entry: do.body: ; preds = %do.cond, %entry %indvar = phi i64 [ %indvar.next, %do.cond ], [ 0, %entry ] ; <i64> [#uses=3] %tmp = mul i64 %indvar, 2 ; <i64> [#uses=1] - %arrayidx = getelementptr [40 x i32], [40 x i32]* @A, i64 0, i64 %tmp ; <i32*> [#uses=1] + %arrayidx = getelementptr [40 x i32], ptr @A, i64 0, i64 %tmp ; <ptr> [#uses=1] %i.0 = trunc i64 %indvar to i32 ; <i32> [#uses=1] br label %do.cond do.cond: ; preds = %do.body - store i32 %i.0, i32* %arrayidx + store i32 %i.0, ptr %arrayidx %indvar.next = add i64 %indvar, 1 ; <i64> [#uses=2] %exitcond = icmp ne i64 %indvar.next, 20 ; <i1> [#uses=1] br i1 %exitcond, label %do.body, label %do.end @@ -68,10 +68,10 @@ do.end: ; preds = %do.cond define i32 @main() nounwind { entry: call void @single_do_loop_scev_replace() - %tmp = load %struct._IO_FILE*, %struct._IO_FILE** @stdout ; <%struct._IO_FILE*> [#uses=1] - %tmp1 = load i32, i32* getelementptr inbounds ([40 x i32], [40 x i32]* @A, i32 0, i32 0) ; <i32> [#uses=1] - %call = call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %tmp, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str, i32 0, i32 0), i32 %tmp1) ; <i32> [#uses=0] - %tmp2 = load i32, i32* getelementptr inbounds ([40 x i32], [40 x i32]* @A, i32 0, i64 38) ; <i32> [#uses=1] + %tmp = load ptr, ptr @stdout ; <ptr> [#uses=1] + %tmp1 = load i32, ptr @A ; <i32> [#uses=1] + %call = call i32 (ptr, ptr, ...) @fprintf(ptr %tmp, ptr @.str, i32 %tmp1) ; <i32> [#uses=0] + %tmp2 = load i32, ptr getelementptr inbounds ([40 x i32], ptr @A, i32 0, i64 38) ; <i32> [#uses=1] %cmp = icmp eq i32 %tmp2, 19 ; <i1> [#uses=1] br i1 %cmp, label %if.then, label %if.else @@ -86,7 +86,7 @@ return: ; preds = %if.else, %if.then ret i32 %retval.0 } -declare i32 @fprintf(%struct._IO_FILE*, i8*, ...) +declare i32 @fprintf(ptr, ptr, ...) ; CHECK: for (int c0 = 0; c0 <= 19; c0 += 1) ; CHECK: Stmt_do_cond(c0); diff --git a/polly/test/CodeGen/single_loop.ll b/polly/test/CodeGen/single_loop.ll index bd5a5724349f..68cc498b43e0 100644 --- a/polly/test/CodeGen/single_loop.ll +++ b/polly/test/CodeGen/single_loop.ll @@ -25,20 +25,19 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 define i32 @main() nounwind { entry: - %A = alloca [1024 x i32], align 4 ; <[1024 x i32]*> [#uses=3] - %arraydecay = getelementptr inbounds [1024 x i32], [1024 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %conv = bitcast i32* %arraydecay to i8* ; <i8*> [#uses=1] - call void @llvm.memset.p0i8.i64(i8* %conv, i8 0, i64 4096, i32 1, i1 false) + %A = alloca [1024 x i32], align 4 ; <ptr> [#uses=3] + %arraydecay = getelementptr inbounds [1024 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + call void @llvm.memset.p0.i64(ptr %arraydecay, i8 0, i64 4096, i32 1, i1 false) br label %for.cond for.cond: ; preds = %for.inc, %entry %indvar1 = phi i64 [ %indvar.next2, %for.inc ], [ 0, %entry ] ; <i64> [#uses=3] - %arrayidx = getelementptr [1024 x i32], [1024 x i32]* %A, i64 0, i64 %indvar1 ; <i32*> [#uses=1] + %arrayidx = getelementptr [1024 x i32], ptr %A, i64 0, i64 %indvar1 ; <ptr> [#uses=1] %exitcond = icmp ne i64 %indvar1, 1024 ; <i1> [#uses=1] br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - store i32 1, i32* %arrayidx + store i32 1, ptr %arrayidx br label %for.inc for.inc: ; preds = %for.body @@ -50,13 +49,13 @@ for.end: ; preds = %for.cond for.cond5: ; preds = %for.inc07, %for.end %indvar = phi i64 [ %indvar.next, %for.inc07 ], [ 0, %for.end ] ; <i64> [#uses=3] - %arrayidx13 = getelementptr [1024 x i32], [1024 x i32]* %A, i64 0, i64 %indvar ; <i32*> [#uses=1] + %arrayidx13 = getelementptr [1024 x i32], ptr %A, i64 0, i64 %indvar ; <ptr> [#uses=1] %i.1 = trunc i64 %indvar to i32 ; <i32> [#uses=1] %cmp7 = icmp slt i32 %i.1, 1024 ; <i1> [#uses=1] br i1 %cmp7, label %for.body9, label %for.end20 for.body9: ; preds = %for.cond5 - %tmp14 = load i32, i32* %arrayidx13 ; <i32> [#uses=1] + %tmp14 = load i32, ptr %arrayidx13 ; <i32> [#uses=1] %cmp15 = icmp ne i32 %tmp14, 1 ; <i1> [#uses=1] br i1 %cmp15, label %if.then, label %if.end @@ -78,7 +77,7 @@ return: ; preds = %for.end20, %if.then ret i32 %retval.0 } -declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) nounwind +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) nounwind ; CHECK: for (int c0 = 0; c0 <= 1023; c0 += 1) ; CHECK: Stmt_for_body(c0); diff --git a/polly/test/CodeGen/single_loop_int_max_iterations.ll b/polly/test/CodeGen/single_loop_int_max_iterations.ll index 9a12cd4fce8d..bfb5e4ab2698 100644 --- a/polly/test/CodeGen/single_loop_int_max_iterations.ll +++ b/polly/test/CodeGen/single_loop_int_max_iterations.ll @@ -26,10 +26,10 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 define i32 @main() nounwind { entry: - %A = alloca [20 x i32], align 4 ; <[20 x i32]*> [#uses=3] - %arraydecay = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx = getelementptr inbounds i32, i32* %arraydecay, i64 0 ; <i32*> [#uses=1] - store i32 0, i32* %arrayidx + %A = alloca [20 x i32], align 4 ; <ptr> [#uses=3] + %arraydecay = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx = getelementptr inbounds i32, ptr %arraydecay, i64 0 ; <ptr> [#uses=1] + store i32 0, ptr %arrayidx fence seq_cst br label %for.cond @@ -39,9 +39,9 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arraydecay2 = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx3 = getelementptr inbounds i32, i32* %arraydecay2, i64 0 ; <i32*> [#uses=1] - store i32 %0, i32* %arrayidx3 + %arraydecay2 = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx3 = getelementptr inbounds i32, ptr %arraydecay2, i64 0 ; <ptr> [#uses=1] + store i32 %0, ptr %arrayidx3 br label %for.inc for.inc: ; preds = %for.body @@ -50,9 +50,9 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond fence seq_cst - %arraydecay5 = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx6 = getelementptr inbounds i32, i32* %arraydecay5, i64 0 ; <i32*> [#uses=1] - %tmp7 = load i32, i32* %arrayidx6 ; <i32> [#uses=1] + %arraydecay5 = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx6 = getelementptr inbounds i32, ptr %arraydecay5, i64 0 ; <ptr> [#uses=1] + %tmp7 = load i32, ptr %arrayidx6 ; <i32> [#uses=1] %cmp8 = icmp eq i32 %tmp7, 2147483646 ; <i1> [#uses=1] br i1 %cmp8, label %if.then, label %if.else diff --git a/polly/test/CodeGen/single_loop_ll_max_iterations.ll b/polly/test/CodeGen/single_loop_ll_max_iterations.ll index 8d16285fca93..bdfd7fce4204 100644 --- a/polly/test/CodeGen/single_loop_ll_max_iterations.ll +++ b/polly/test/CodeGen/single_loop_ll_max_iterations.ll @@ -26,10 +26,10 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 define i32 @main() nounwind { entry: - %A = alloca [20 x i64], align 8 ; <[20 x i64]*> [#uses=3] - %arraydecay = getelementptr inbounds [20 x i64], [20 x i64]* %A, i32 0, i32 0 ; <i64*> [#uses=1] - %arrayidx = getelementptr inbounds i64, i64* %arraydecay, i64 0 ; <i64*> [#uses=1] - store i64 0, i64* %arrayidx + %A = alloca [20 x i64], align 8 ; <ptr> [#uses=3] + %arraydecay = getelementptr inbounds [20 x i64], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx = getelementptr inbounds i64, ptr %arraydecay, i64 0 ; <ptr> [#uses=1] + store i64 0, ptr %arrayidx fence seq_cst br label %for.cond @@ -39,9 +39,9 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arraydecay2 = getelementptr inbounds [20 x i64], [20 x i64]* %A, i32 0, i32 0 ; <i64*> [#uses=1] - %arrayidx3 = getelementptr inbounds i64, i64* %arraydecay2, i64 0 ; <i64*> [#uses=1] - store i64 %0, i64* %arrayidx3 + %arraydecay2 = getelementptr inbounds [20 x i64], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx3 = getelementptr inbounds i64, ptr %arraydecay2, i64 0 ; <ptr> [#uses=1] + store i64 %0, ptr %arrayidx3 br label %for.inc for.inc: ; preds = %for.body @@ -50,9 +50,9 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond fence seq_cst - %arraydecay5 = getelementptr inbounds [20 x i64], [20 x i64]* %A, i32 0, i32 0 ; <i64*> [#uses=1] - %arrayidx6 = getelementptr inbounds i64, i64* %arraydecay5, i64 0 ; <i64*> [#uses=1] - %tmp7 = load i64, i64* %arrayidx6 ; <i64> [#uses=1] + %arraydecay5 = getelementptr inbounds [20 x i64], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx6 = getelementptr inbounds i64, ptr %arraydecay5, i64 0 ; <ptr> [#uses=1] + %tmp7 = load i64, ptr %arrayidx6 ; <i64> [#uses=1] %cmp8 = icmp eq i64 %tmp7, 9223372036854775806 ; <i1> [#uses=1] br i1 %cmp8, label %if.then, label %if.else diff --git a/polly/test/CodeGen/single_loop_one_iteration.ll b/polly/test/CodeGen/single_loop_one_iteration.ll index 21412f997532..7d4dd590fab9 100644 --- a/polly/test/CodeGen/single_loop_one_iteration.ll +++ b/polly/test/CodeGen/single_loop_one_iteration.ll @@ -25,21 +25,21 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 define i32 @main() nounwind { entry: - %A = alloca [20 x i32], align 4 ; <[20 x i32]*> [#uses=3] - %arraydecay = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx = getelementptr inbounds i32, i32* %arraydecay, i64 0 ; <i32*> [#uses=1] - store i32 0, i32* %arrayidx + %A = alloca [20 x i32], align 4 ; <ptr> [#uses=3] + %arraydecay = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx = getelementptr inbounds i32, ptr %arraydecay, i64 0 ; <ptr> [#uses=1] + store i32 0, ptr %arrayidx fence seq_cst br label %for.cond for.cond: ; preds = %for.inc, %entry %indvar = phi i64 [ %indvar.next, %for.inc ], [ 0, %entry ] ; <i64> [#uses=3] - %arrayidx3 = getelementptr [20 x i32], [20 x i32]* %A, i64 0, i64 %indvar ; <i32*> [#uses=1] + %arrayidx3 = getelementptr [20 x i32], ptr %A, i64 0, i64 %indvar ; <ptr> [#uses=1] %exitcond = icmp ne i64 %indvar, 1 ; <i1> [#uses=1] br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - store i32 1, i32* %arrayidx3 + store i32 1, ptr %arrayidx3 br label %for.inc for.inc: ; preds = %for.body @@ -48,9 +48,9 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond fence seq_cst - %arraydecay5 = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx6 = getelementptr inbounds i32, i32* %arraydecay5, i64 0 ; <i32*> [#uses=1] - %tmp7 = load i32, i32* %arrayidx6 ; <i32> [#uses=1] + %arraydecay5 = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx6 = getelementptr inbounds i32, ptr %arraydecay5, i64 0 ; <ptr> [#uses=1] + %tmp7 = load i32, ptr %arrayidx6 ; <i32> [#uses=1] %cmp8 = icmp eq i32 %tmp7, 1 ; <i1> [#uses=1] br i1 %cmp8, label %if.then, label %if.else diff --git a/polly/test/CodeGen/single_loop_param.ll b/polly/test/CodeGen/single_loop_param.ll index 4167e40b0d6f..5d72da354fdc 100644 --- a/polly/test/CodeGen/single_loop_param.ll +++ b/polly/test/CodeGen/single_loop_param.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-print-ast -disable-output < %s | FileCheck %s target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -@A = common global [1024 x i32] zeroinitializer, align 16 ; <[1024 x i32]*> [#uses=3] +@A = common global [1024 x i32] zeroinitializer, align 16 ; <ptr> [#uses=3] define void @bar(i64 %n) nounwind { bb: @@ -10,12 +10,12 @@ bb: bb1: ; preds = %bb3, %bb %i.0 = phi i64 [ 0, %bb ], [ %tmp, %bb3 ] ; <i64> [#uses=3] - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %i.0 ; <i32*> [#uses=1] + %scevgep = getelementptr [1024 x i32], ptr @A, i64 0, i64 %i.0 ; <ptr> [#uses=1] %exitcond = icmp ne i64 %i.0, %n ; <i1> [#uses=1] br i1 %exitcond, label %bb2, label %bb4 bb2: ; preds = %bb1 - store i32 1, i32* %scevgep + store i32 1, ptr %scevgep br label %bb3 bb3: ; preds = %bb2 @@ -29,19 +29,19 @@ bb4: ; preds = %bb1 define i32 @main() nounwind { bb: - call void @llvm.memset.p0i8.i64(i8* bitcast ([1024 x i32]* @A to i8*), i8 0, i64 4096, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr @A, i8 0, i64 4096, i32 1, i1 false) call void @bar(i64 1024) br label %bb1 bb1: ; preds = %bb7, %bb %indvar = phi i64 [ %indvar.next, %bb7 ], [ 0, %bb ] ; <i64> [#uses=3] - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvar ; <i32*> [#uses=1] + %scevgep = getelementptr [1024 x i32], ptr @A, i64 0, i64 %indvar ; <ptr> [#uses=1] %i.0 = trunc i64 %indvar to i32 ; <i32> [#uses=1] %tmp = icmp slt i32 %i.0, 1024 ; <i1> [#uses=1] br i1 %tmp, label %bb2, label %bb8 bb2: ; preds = %bb1 - %tmp3 = load i32, i32* %scevgep ; <i32> [#uses=1] + %tmp3 = load i32, ptr %scevgep ; <i32> [#uses=1] %tmp4 = icmp ne i32 %tmp3, 1 ; <i1> [#uses=1] br i1 %tmp4, label %bb5, label %bb6 @@ -63,7 +63,7 @@ bb9: ; preds = %bb8, %bb5 ret i32 %.0 } -declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) nounwind +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) nounwind ; CHECK: for (int c0 = 0; c0 < n; c0 += 1) ; CHECK: Stmt_bb2(c0); diff --git a/polly/test/CodeGen/single_loop_zero_iterations.ll b/polly/test/CodeGen/single_loop_zero_iterations.ll index fbe260d6ea53..4f189687d330 100644 --- a/polly/test/CodeGen/single_loop_zero_iterations.ll +++ b/polly/test/CodeGen/single_loop_zero_iterations.ll @@ -25,20 +25,20 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 define i32 @main() nounwind { entry: - %A = alloca [20 x i32], align 4 ; <[20 x i32]*> [#uses=3] - %arraydecay = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx = getelementptr inbounds i32, i32* %arraydecay, i64 0 ; <i32*> [#uses=1] - store i32 0, i32* %arrayidx + %A = alloca [20 x i32], align 4 ; <ptr> [#uses=3] + %arraydecay = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx = getelementptr inbounds i32, ptr %arraydecay, i64 0 ; <ptr> [#uses=1] + store i32 0, ptr %arrayidx fence seq_cst br label %for.cond for.cond: ; preds = %for.inc, %entry %indvar = phi i64 [ %indvar.next, %for.inc ], [ 0, %entry ] ; <i64> [#uses=2] - %arrayidx3 = getelementptr [20 x i32], [20 x i32]* %A, i64 0, i64 %indvar ; <i32*> [#uses=1] + %arrayidx3 = getelementptr [20 x i32], ptr %A, i64 0, i64 %indvar ; <ptr> [#uses=1] br i1 false, label %for.body, label %for.end for.body: ; preds = %for.cond - store i32 1, i32* %arrayidx3 + store i32 1, ptr %arrayidx3 br label %for.inc for.inc: ; preds = %for.body @@ -47,9 +47,9 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond fence seq_cst - %arraydecay5 = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx6 = getelementptr inbounds i32, i32* %arraydecay5, i64 0 ; <i32*> [#uses=1] - %tmp7 = load i32, i32* %arrayidx6 ; <i32> [#uses=1] + %arraydecay5 = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx6 = getelementptr inbounds i32, ptr %arraydecay5, i64 0 ; <ptr> [#uses=1] + %tmp7 = load i32, ptr %arrayidx6 ; <i32> [#uses=1] %cmp8 = icmp eq i32 %tmp7, 0 ; <i1> [#uses=1] br i1 %cmp8, label %if.then, label %if.else diff --git a/polly/test/CodeGen/split_edge_of_exit.ll b/polly/test/CodeGen/split_edge_of_exit.ll index 378775d06da2..56ce215a62b2 100644 --- a/polly/test/CodeGen/split_edge_of_exit.ll +++ b/polly/test/CodeGen/split_edge_of_exit.ll @@ -7,7 +7,7 @@ ; ; CHECK: Valid Region for Scop: region2 => return ; -define void @f1(i64* %A, i64 %N) nounwind { +define void @f1(ptr %A, i64 %N) nounwind { entry: br label %region1 @@ -20,8 +20,8 @@ region1: region2: %indvar2 = phi i64 [ 0, %region1 ], [ %indvar2.next, %region2 ] - %scevgep2 = getelementptr i64, i64* %A, i64 %indvar2 - store i64 %indvar2, i64* %scevgep2 + %scevgep2 = getelementptr i64, ptr %A, i64 %indvar2 + store i64 %indvar2, ptr %scevgep2 %indvar2.next = add nsw i64 %indvar2, 1 %exitcond2 = icmp eq i64 %indvar2.next, %N br i1 %exitcond2, label %return, label %region2 diff --git a/polly/test/CodeGen/split_edges.ll b/polly/test/CodeGen/split_edges.ll index db370ffbd38d..e01d901e298c 100644 --- a/polly/test/CodeGen/split_edges.ll +++ b/polly/test/CodeGen/split_edges.ll @@ -13,8 +13,8 @@ bb1: bb2: %ind1 = phi i32 [0, %bb1], [ %inc0, %bb2] - %ptr = getelementptr [1536 x float], [1536 x float]* @A, i64 0, i32 %ind1 - store float undef, float* %ptr + %ptr = getelementptr [1536 x float], ptr @A, i64 0, i32 %ind1 + store float undef, ptr %ptr %inc0 = add i32 %ind1, 1 %cond1 = icmp eq i32 %ind1, 32 br i1 %cond1, label %bb4, label %bb2 diff --git a/polly/test/CodeGen/split_edges_2.ll b/polly/test/CodeGen/split_edges_2.ll index ffa6b78bcc7b..4135d6feeb3e 100644 --- a/polly/test/CodeGen/split_edges_2.ll +++ b/polly/test/CodeGen/split_edges_2.ll @@ -14,8 +14,8 @@ bb1: bb2: %ind1 = phi i32 [0, %bb1], [ %inc0, %bb2] - %ptr = getelementptr [1536 x float], [1536 x float]* @A, i64 0, i32 %ind1 - store float undef, float* %ptr + %ptr = getelementptr [1536 x float], ptr @A, i64 0, i32 %ind1 + store float undef, ptr %ptr %inc0 = add i32 %ind1, 1 %cond1 = icmp eq i32 %ind1, 32 br i1 %cond1, label %bb4, label %bb2 diff --git a/polly/test/CodeGen/srem-in-other-bb.ll b/polly/test/CodeGen/srem-in-other-bb.ll index 77ec86367ec5..8bde1a3bbc1d 100644 --- a/polly/test/CodeGen/srem-in-other-bb.ll +++ b/polly/test/CodeGen/srem-in-other-bb.ll @@ -8,13 +8,13 @@ ; ; CHECK: polly.stmt.bb2: ; CHECK-NEXT: %p_tmp = srem i64 %n, 42 -; CHECK-NEXT: store i64 %p_tmp, i64* %tmp.s2a +; CHECK-NEXT: store i64 %p_tmp, ptr %tmp.s2a ; ; CHECK: polly.stmt.bb3: -; CHECK: %tmp.s2a.reload = load i64, i64* %tmp.s2a -; CHECK: %p_tmp3 = getelementptr inbounds float, float* %A, i64 %tmp.s2a.reload +; CHECK: %tmp.s2a.reload = load i64, ptr %tmp.s2a +; CHECK: %p_tmp3 = getelementptr inbounds float, ptr %A, i64 %tmp.s2a.reload -define void @pos(float* %A, i64 %n) { +define void @pos(ptr %A, i64 %n) { bb: br label %bb1 @@ -28,10 +28,10 @@ bb2: ; preds = %bb1 br label %bb3 bb3: - %tmp3 = getelementptr inbounds float, float* %A, i64 %tmp - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A, i64 %tmp + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, 1.000000e+00 - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 br label %bb6 bb6: ; preds = %bb2 diff --git a/polly/test/CodeGen/stack-overflow-in-load-hoisting.ll b/polly/test/CodeGen/stack-overflow-in-load-hoisting.ll index 709e510b806a..02dfe96e3e91 100644 --- a/polly/test/CodeGen/stack-overflow-in-load-hoisting.ll +++ b/polly/test/CodeGen/stack-overflow-in-load-hoisting.ll @@ -9,60 +9,58 @@ ; target datalayout = "e-m:o-p:32:32-f64:32:64-f80:128-n8:16:32-S128" -%struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573 = type { %struct.AVClass.10.32.868.1198.1286.1308.1566*, %struct.AVFrame.5.27.863.1193.1281.1303.1572*, i32, i32, i32, i32, i32, [4 x i32], [4 x i32], double, %struct.AVRational.0.22.858.1188.1276.1298.1567 } -%struct.AVClass.10.32.868.1198.1286.1308.1566 = type { i8*, i8* (i8*)*, %struct.AVOption.7.29.865.1195.1283.1305.1563*, i32, i32, i32, i8* (i8*, i8*)*, %struct.AVClass.10.32.868.1198.1286.1308.1566* (%struct.AVClass.10.32.868.1198.1286.1308.1566*)*, i32, i32 (i8*)*, i32 (%struct.AVOptionRanges.9.31.867.1197.1285.1307.1565**, i8*, i8*, i32)* } -%struct.AVOption.7.29.865.1195.1283.1305.1563 = type { i8*, i8*, i32, i32, %union.anon.6.28.864.1194.1282.1304.1562, double, double, i32, i8* } +%struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573 = type { ptr, ptr, i32, i32, i32, i32, i32, [4 x i32], [4 x i32], double, %struct.AVRational.0.22.858.1188.1276.1298.1567 } +%struct.AVClass.10.32.868.1198.1286.1308.1566 = type { ptr, ptr, ptr, i32, i32, i32, ptr, ptr, i32, ptr, ptr } +%struct.AVOption.7.29.865.1195.1283.1305.1563 = type { ptr, ptr, i32, i32, %union.anon.6.28.864.1194.1282.1304.1562, double, double, i32, ptr } %union.anon.6.28.864.1194.1282.1304.1562 = type { i64 } -%struct.AVOptionRanges.9.31.867.1197.1285.1307.1565 = type { %struct.AVOptionRange.8.30.866.1196.1284.1306.1564**, i32, i32 } -%struct.AVOptionRange.8.30.866.1196.1284.1306.1564 = type { i8*, double, double, double, double, i32 } -%struct.AVFrame.5.27.863.1193.1281.1303.1572 = type { [8 x i8*], [8 x i32], i8**, i32, i32, i32, i32, i32, i32, %struct.AVRational.0.22.858.1188.1276.1298.1567, i64, i64, i64, i32, i32, i32, i8*, [8 x i64], i32, i32, i32, i32, i64, i32, i64, [8 x %struct.AVBufferRef.2.24.860.1190.1278.1300.1569*], %struct.AVBufferRef.2.24.860.1190.1278.1300.1569**, i32, %struct.AVFrameSideData.4.26.862.1192.1280.1302.1571**, i32, i32, i32, i32, i32, i32, i32, i64, i64, i64, %struct.AVDictionary.3.25.861.1191.1279.1301.1570*, i32, i32, i32, i8*, i32, i32, %struct.AVBufferRef.2.24.860.1190.1278.1300.1569* } -%struct.AVFrameSideData.4.26.862.1192.1280.1302.1571 = type { i32, i8*, i32, %struct.AVDictionary.3.25.861.1191.1279.1301.1570*, %struct.AVBufferRef.2.24.860.1190.1278.1300.1569* } +%struct.AVOptionRanges.9.31.867.1197.1285.1307.1565 = type { ptr, i32, i32 } +%struct.AVOptionRange.8.30.866.1196.1284.1306.1564 = type { ptr, double, double, double, double, i32 } +%struct.AVFrame.5.27.863.1193.1281.1303.1572 = type { [8 x ptr], [8 x i32], ptr, i32, i32, i32, i32, i32, i32, %struct.AVRational.0.22.858.1188.1276.1298.1567, i64, i64, i64, i32, i32, i32, ptr, [8 x i64], i32, i32, i32, i32, i64, i32, i64, [8 x ptr], ptr, i32, ptr, i32, i32, i32, i32, i32, i32, i32, i64, i64, i64, ptr, i32, i32, i32, ptr, i32, i32, ptr } +%struct.AVFrameSideData.4.26.862.1192.1280.1302.1571 = type { i32, ptr, i32, ptr, ptr } %struct.AVDictionary.3.25.861.1191.1279.1301.1570 = type opaque -%struct.AVBufferRef.2.24.860.1190.1278.1300.1569 = type { %struct.AVBuffer.1.23.859.1189.1277.1299.1568*, i8*, i32 } +%struct.AVBufferRef.2.24.860.1190.1278.1300.1569 = type { ptr, ptr, i32 } %struct.AVBuffer.1.23.859.1189.1277.1299.1568 = type opaque %struct.AVRational.0.22.858.1188.1276.1298.1567 = type { i32, i32 } ; Function Attrs: nounwind ssp -define void @fade(%struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573* %s) #0 { +define void @fade(ptr %s) #0 { entry: br label %for.cond.12.preheader.lr.ph for.cond.12.preheader.lr.ph: ; preds = %entry - %outpicref = getelementptr inbounds %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573, %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573* %s, i32 0, i32 1 - %arrayidx2 = getelementptr inbounds %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573, %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573* %s, i32 0, i32 8, i32 0 + %outpicref = getelementptr inbounds %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573, ptr %s, i32 0, i32 1 + %arrayidx2 = getelementptr inbounds %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573, ptr %s, i32 0, i32 8, i32 0 %tobool = icmp eq i32 0, 0 - %arrayidx4 = getelementptr inbounds %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573, %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573* %s, i32 0, i32 8, i32 1 - %tmp = load i32, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573, ptr %s, i32 0, i32 8, i32 1 + %tmp = load i32, ptr %arrayidx4, align 4 %tobool5 = icmp eq i32 %tmp, 0 - %h = getelementptr inbounds %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573, %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573* %s, i32 0, i32 3 - %tmp1 = load i32, i32* %h, align 4 + %h = getelementptr inbounds %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573, ptr %s, i32 0, i32 3 + %tmp1 = load i32, ptr %h, align 4 %cmp.48 = icmp sgt i32 %tmp1, 0 - %tmp2 = load %struct.AVFrame.5.27.863.1193.1281.1303.1572*, %struct.AVFrame.5.27.863.1193.1281.1303.1572** %outpicref, align 4 - %arrayidx11 = getelementptr inbounds %struct.AVFrame.5.27.863.1193.1281.1303.1572, %struct.AVFrame.5.27.863.1193.1281.1303.1572* %tmp2, i32 0, i32 0, i32 0 - %tmp3 = load i8*, i8** %arrayidx11, align 4 + %tmp2 = load ptr, ptr %outpicref, align 4 + %tmp3 = load ptr, ptr %tmp2, align 4 br label %for.body.14.lr.ph for.body.14.lr.ph: ; preds = %for.end, %for.cond.12.preheader.lr.ph - %d.050 = phi i8* [ %tmp3, %for.cond.12.preheader.lr.ph ], [ undef, %for.end ] - %w = getelementptr inbounds %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573, %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573* %s, i32 0, i32 2 - %tmp4 = load i32, i32* %w, align 4 + %d.050 = phi ptr [ %tmp3, %for.cond.12.preheader.lr.ph ], [ undef, %for.end ] + %w = getelementptr inbounds %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573, ptr %s, i32 0, i32 2 + %tmp4 = load i32, ptr %w, align 4 %cmp13.46 = icmp sgt i32 %tmp4, 0 br label %for.body.14 for.body.14: ; preds = %for.body.14, %for.body.14.lr.ph - %arrayidx30 = getelementptr inbounds i8, i8* %d.050, i32 0 - store i8 undef, i8* %arrayidx30, align 1 - %arrayidx54 = getelementptr inbounds %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573, %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573* %s, i32 0, i32 8, i32 2 - %tmp5 = load i32, i32* %arrayidx54, align 4 + store i8 undef, ptr %d.050, align 1 + %arrayidx54 = getelementptr inbounds %struct.AudioVectorScopeContext.21.43.879.1209.1297.1319.1573, ptr %s, i32 0, i32 8, i32 2 + %tmp5 = load i32, ptr %arrayidx54, align 4 %add92 = add nuw nsw i32 0, 4 - %tmp6 = load i32, i32* %w, align 4 + %tmp6 = load i32, ptr %w, align 4 %mul = shl nsw i32 %tmp6, 2 %cmp13 = icmp slt i32 %add92, %mul br i1 %cmp13, label %for.body.14, label %for.end for.end: ; preds = %for.body.14 %inc = add nuw nsw i32 0, 1 - %tmp7 = load i32, i32* %h, align 4 + %tmp7 = load i32, ptr %h, align 4 %cmp = icmp slt i32 %inc, %tmp7 br i1 %cmp, label %for.body.14.lr.ph, label %if.end.loopexit diff --git a/polly/test/CodeGen/test-invalid-operands-for-select-2.ll b/polly/test/CodeGen/test-invalid-operands-for-select-2.ll index 6985fb75d7fa..5fa4773398fd 100644 --- a/polly/test/CodeGen/test-invalid-operands-for-select-2.ll +++ b/polly/test/CodeGen/test-invalid-operands-for-select-2.ll @@ -7,7 +7,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @kernel_fdtd_apml(i32 %cxm, i32 %cym, [65 x [65 x double]]* %Bza, [65 x [65 x double]]* %Hz, double* %czp) #0 { +define void @kernel_fdtd_apml(i32 %cxm, i32 %cym, ptr %Bza, ptr %Hz, ptr %czp) #0 { entry: br i1 false, label %for.cond4.preheader, label %for.end451 @@ -24,26 +24,25 @@ for.cond7.preheader: ; preds = %for.end, %for.cond4 for.body9: ; preds = %for.body9, %for.cond7.preheader %ix.02 = phi i32 [ %inc, %for.body9 ], [ 0, %for.cond7.preheader ] %idxprom74 = sext i32 %iz.08 to i64 - %arrayidx75 = getelementptr inbounds double, double* %czp, i64 %idxprom74 - %0 = load double, double* %arrayidx75, align 8 + %arrayidx75 = getelementptr inbounds double, ptr %czp, i64 %idxprom74 + %0 = load double, ptr %arrayidx75, align 8 %idxprom102 = sext i32 %iz.08 to i64 - %arrayidx105 = getelementptr inbounds [65 x [65 x double]], [65 x [65 x double]]* %Hz, i64 %idxprom102, i64 0, i64 0 - store double undef, double* %arrayidx105, align 8 + %arrayidx105 = getelementptr inbounds [65 x [65 x double]], ptr %Hz, i64 %idxprom102, i64 0, i64 0 + store double undef, ptr %arrayidx105, align 8 %inc = add nsw i32 %ix.02, 1 br i1 false, label %for.body9, label %for.end for.end: ; preds = %for.body9, %for.cond7.preheader %idxprom209 = sext i32 %cxm to i64 %idxprom211 = sext i32 %iz.08 to i64 - %arrayidx214 = getelementptr inbounds [65 x [65 x double]], [65 x [65 x double]]* %Hz, i64 %idxprom211, i64 0, i64 %idxprom209 - store double undef, double* %arrayidx214, align 8 + %arrayidx214 = getelementptr inbounds [65 x [65 x double]], ptr %Hz, i64 %idxprom211, i64 0, i64 %idxprom209 + store double undef, ptr %arrayidx214, align 8 %idxprom430 = sext i32 %cxm to i64 %idxprom431 = sext i32 %cym to i64 %idxprom432 = sext i32 %iz.08 to i64 - %arrayidx435 = getelementptr inbounds [65 x [65 x double]], [65 x [65 x double]]* %Hz, i64 %idxprom432, i64 %idxprom431, i64 %idxprom430 - store double undef, double* %arrayidx435, align 8 - %arrayidx445 = getelementptr inbounds [65 x [65 x double]], [65 x [65 x double]]* %Bza, i64 0, i64 0, i64 0 - store double undef, double* %arrayidx445, align 8 + %arrayidx435 = getelementptr inbounds [65 x [65 x double]], ptr %Hz, i64 %idxprom432, i64 %idxprom431, i64 %idxprom430 + store double undef, ptr %arrayidx435, align 8 + store double undef, ptr %Bza, align 8 %inc447 = add nsw i32 %iy.06, 1 %cmp5 = icmp slt i32 %inc447, %cym br i1 %cmp5, label %for.cond7.preheader, label %for.inc449 diff --git a/polly/test/CodeGen/test-invalid-operands-for-select.ll b/polly/test/CodeGen/test-invalid-operands-for-select.ll index 750754287785..40695af3e847 100644 --- a/polly/test/CodeGen/test-invalid-operands-for-select.ll +++ b/polly/test/CodeGen/test-invalid-operands-for-select.ll @@ -13,7 +13,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @dradb4(i32 %ido, i32 %l1, float* %cc, float* %ch, float* %wa1, float* %wa3) #0 { +define void @dradb4(i32 %ido, i32 %l1, ptr %cc, ptr %ch, ptr %wa1, ptr %wa3) #0 { entry: %mul = mul nsw i32 %l1, %ido br i1 undef, label %for.end256, label %if.end @@ -34,35 +34,23 @@ for.body53: ; preds = %for.body53, %for.bo %t7.014 = phi i32 [ 0, %for.body53.lr.ph ], [ %add58, %for.body53 ] %i.013 = phi i32 [ 2, %for.body53.lr.ph ], [ %add193, %for.body53 ] %add58 = add nsw i32 %t7.014, 2 - %arrayidx70 = getelementptr inbounds float, float* %cc, i64 0 - %arrayidx72 = getelementptr inbounds float, float* %cc, i64 0 - %arrayidx77 = getelementptr inbounds float, float* %cc, i64 0 - %arrayidx81 = getelementptr inbounds float, float* %cc, i64 0 - %arrayidx84 = getelementptr inbounds float, float* %cc, i64 0 - %arrayidx95 = getelementptr inbounds float, float* %cc, i64 0 - %arrayidx105 = getelementptr inbounds float, float* %cc, i64 0 - %arrayidx110 = getelementptr inbounds float, float* %ch, i64 0 - store float undef, float* %arrayidx110, align 4 - %arrayidx122 = getelementptr inbounds float, float* %wa1, i64 0 + store float undef, ptr %ch, align 4 %add129 = add nsw i32 %add58, %mul %idxprom142 = sext i32 %add129 to i64 - %arrayidx143 = getelementptr inbounds float, float* %ch, i64 %idxprom142 - store float undef, float* %arrayidx143, align 4 + %arrayidx143 = getelementptr inbounds float, ptr %ch, i64 %idxprom142 + store float undef, ptr %arrayidx143, align 4 %add153 = add nsw i32 %add129, %mul - %arrayidx170 = getelementptr inbounds float, float* %wa3, i64 0 - %arrayidx174 = getelementptr inbounds float, float* %wa3, i64 0 %add177 = add nsw i32 %add153, %mul %sub178 = add nsw i32 %add177, -1 %idxprom179 = sext i32 %sub178 to i64 - %arrayidx180 = getelementptr inbounds float, float* %ch, i64 %idxprom179 - store float undef, float* %arrayidx180, align 4 - %arrayidx183 = getelementptr inbounds float, float* %wa3, i64 0 - %0 = load float, float* %arrayidx183, align 4 + %arrayidx180 = getelementptr inbounds float, ptr %ch, i64 %idxprom179 + store float undef, ptr %arrayidx180, align 4 + %0 = load float, ptr %wa3, align 4 %mul184 = fmul float undef, %0 %add189 = fadd float %mul184, 0.000000e+00 %idxprom190 = sext i32 %add177 to i64 - %arrayidx191 = getelementptr inbounds float, float* %ch, i64 %idxprom190 - store float %add189, float* %arrayidx191, align 4 + %arrayidx191 = getelementptr inbounds float, ptr %ch, i64 %idxprom190 + store float %add189, ptr %arrayidx191, align 4 %add193 = add nsw i32 %i.013, 2 %cmp52 = icmp slt i32 %add193, %ido br i1 %cmp52, label %for.body53, label %for.inc096 diff --git a/polly/test/CodeGen/test.ll b/polly/test/CodeGen/test.ll index 8ae9f310fdd3..ac99688ed9e8 100644 --- a/polly/test/CodeGen/test.ll +++ b/polly/test/CodeGen/test.ll @@ -23,15 +23,15 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -@A = common global [100 x i32] zeroinitializer, align 4 ; <[100 x i32]*> [#uses=2] -@k = common global i32 0, align 4 ; <i32*> [#uses=0] +@A = common global [100 x i32] zeroinitializer, align 4 ; <ptr> [#uses=2] +@k = common global i32 0, align 4 ; <ptr> [#uses=0] define i32 @foo(i32 %z) nounwind { bb.nph31.split.us: br label %bb.nph.us for.inc06.us: ; preds = %for.body6.us - store i32 %mul.us, i32* %arrayidx.us + store i32 %mul.us, ptr %arrayidx.us %indvar.next = add i64 %indvar, 1 ; <i64> [#uses=2] %exitcond32 = icmp eq i64 %indvar.next, 100 ; <i1> [#uses=1] br i1 %exitcond32, label %for.end19, label %bb.nph.us @@ -46,15 +46,15 @@ for.body6.us: ; preds = %for.body6.us, %bb.n bb.nph.us: ; preds = %bb.nph31.split.us, %for.inc06.us %indvar = phi i64 [ %indvar.next, %for.inc06.us ], [ 0, %bb.nph31.split.us ] ; <i64> [#uses=3] - %arrayidx.us = getelementptr [100 x i32], [100 x i32]* @A, i64 0, i64 %indvar ; <i32*> [#uses=2] + %arrayidx.us = getelementptr [100 x i32], ptr @A, i64 0, i64 %indvar ; <ptr> [#uses=2] %i.027.us = trunc i64 %indvar to i32 ; <i32> [#uses=2] - store i32 %i.027.us, i32* %arrayidx.us + store i32 %i.027.us, ptr %arrayidx.us br label %for.body6.us for.end19: ; preds = %for.inc06.us %idxprom21 = sext i32 %z to i64 ; <i64> [#uses=1] - %arrayidx22 = getelementptr inbounds [100 x i32], [100 x i32]* @A, i64 0, i64 %idxprom21 ; <i32*> [#uses=1] - %tmp23 = load i32, i32* %arrayidx22 ; <i32> [#uses=1] + %arrayidx22 = getelementptr inbounds [100 x i32], ptr @A, i64 0, i64 %idxprom21 ; <ptr> [#uses=1] + %tmp23 = load i32, ptr %arrayidx22 ; <i32> [#uses=1] ret i32 %tmp23 } ; CHECK: for (c2=0;c2<=99;c2++) { diff --git a/polly/test/CodeGen/two-loops-right-after-each-other-2.ll b/polly/test/CodeGen/two-loops-right-after-each-other-2.ll index b81eaeb6f613..a7cae0a921ca 100644 --- a/polly/test/CodeGen/two-loops-right-after-each-other-2.ll +++ b/polly/test/CodeGen/two-loops-right-after-each-other-2.ll @@ -3,19 +3,19 @@ ; CHECK: polly.merge_new_and_old: ; CHECK-NEXT: merge = phi -%struct.ImageParameters = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, float, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8**, i8**, i32, i32***, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [9 x [16 x [16 x i16]]], [5 x [16 x [16 x i16]]], [9 x [8 x [8 x i16]]], [2 x [4 x [16 x [16 x i16]]]], [16 x [16 x i16]], [16 x [16 x i32]], i32****, i32***, i32***, i32***, i32****, i32****, %struct.Picture*, %struct.Slice*, %struct.macroblock*, i32*, i32*, i32, i32, i32, i32, [4 x [4 x i32]], i32, i32, i32, i32, i32, double, i32, i32, i32, i32, i16******, i16******, i16******, i16******, [15 x i16], i32, i32, i32, i32, i32, i32, i32, i32, [6 x [32 x i32]], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [1 x i32], i32, i32, [2 x i32], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, %struct.DecRefPicMarking*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double**, double***, i32***, double**, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [3 x [2 x i32]], [2 x i32], i32, i32, i16, i32, i32, i32, i32, i32 } -%struct.Picture = type { i32, i32, [100 x %struct.Slice*], i32, float, float, float } -%struct.Slice = type { i32, i32, i32, i32, i32, i32, %struct.datapartition*, %struct.MotionInfoContexts*, %struct.TextureInfoContexts*, i32, i32*, i32*, i32*, i32, i32*, i32*, i32*, i32 (i32)*, [3 x [2 x i32]] } -%struct.datapartition = type { %struct.Bitstream*, %struct.EncodingEnvironment, %struct.EncodingEnvironment } -%struct.Bitstream = type { i32, i32, i8, i32, i32, i8, i8, i32, i32, i8*, i32 } -%struct.EncodingEnvironment = type { i32, i32, i32, i32, i32, i8*, i32*, i32, i32 } +%struct.ImageParameters = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, float, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr, i32, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [9 x [16 x [16 x i16]]], [5 x [16 x [16 x i16]]], [9 x [8 x [8 x i16]]], [2 x [4 x [16 x [16 x i16]]]], [16 x [16 x i16]], [16 x [16 x i32]], ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i32, i32, [4 x [4 x i32]], i32, i32, i32, i32, i32, double, i32, i32, i32, i32, ptr, ptr, ptr, ptr, [15 x i16], i32, i32, i32, i32, i32, i32, i32, i32, [6 x [32 x i32]], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [1 x i32], i32, i32, [2 x i32], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [3 x [2 x i32]], [2 x i32], i32, i32, i16, i32, i32, i32, i32, i32 } +%struct.Picture = type { i32, i32, [100 x ptr], i32, float, float, float } +%struct.Slice = type { i32, i32, i32, i32, i32, i32, ptr, ptr, ptr, i32, ptr, ptr, ptr, i32, ptr, ptr, ptr, ptr, [3 x [2 x i32]] } +%struct.datapartition = type { ptr, %struct.EncodingEnvironment, %struct.EncodingEnvironment } +%struct.Bitstream = type { i32, i32, i8, i32, i32, i8, i8, i32, i32, ptr, i32 } +%struct.EncodingEnvironment = type { i32, i32, i32, i32, i32, ptr, ptr, i32, i32 } %struct.MotionInfoContexts = type { [3 x [11 x %struct.BiContextType]], [2 x [9 x %struct.BiContextType]], [2 x [10 x %struct.BiContextType]], [2 x [6 x %struct.BiContextType]], [4 x %struct.BiContextType], [4 x %struct.BiContextType], [3 x %struct.BiContextType] } %struct.BiContextType = type { i16, i8, i64 } %struct.TextureInfoContexts = type { [2 x %struct.BiContextType], [3 x [4 x %struct.BiContextType]], [10 x [4 x %struct.BiContextType]], [10 x [15 x %struct.BiContextType]], [10 x [15 x %struct.BiContextType]], [10 x [5 x %struct.BiContextType]], [10 x [5 x %struct.BiContextType]], [10 x [15 x %struct.BiContextType]], [10 x [15 x %struct.BiContextType]] } -%struct.macroblock = type { i32, i32, i32, [2 x i32], i32, [8 x i32], %struct.macroblock*, i32, [2 x [4 x [4 x [2 x i32]]]], [16 x i8], [16 x i8], i32, i64, [4 x i32], [4 x i32], i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i16, double, i32, i32, i32, i32, i32, i32, i32, i32, i32 } -%struct.DecRefPicMarking = type { i32, i32, i32, i32, i32, %struct.DecRefPicMarking* } +%struct.macroblock = type { i32, i32, i32, [2 x i32], i32, [8 x i32], ptr, i32, [2 x [4 x [4 x [2 x i32]]]], [16 x i8], [16 x i8], i32, i64, [4 x i32], [4 x i32], i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i16, double, i32, i32, i32, i32, i32, i32, i32, i32, i32 } +%struct.DecRefPicMarking = type { i32, i32, i32, i32, i32, ptr } -@img = external global %struct.ImageParameters*, align 8 +@img = external global ptr, align 8 define void @intrapred_luma() { entry: @@ -26,31 +26,31 @@ for.body: ; preds = %for.body, %entry br i1 undef, label %for.body, label %for.body.262 for.body.262: ; preds = %for.body - %0 = load %struct.ImageParameters*, %struct.ImageParameters** @img, align 8 + %0 = load ptr, ptr @img, align 8 br label %for.body.280 for.body.280: ; preds = %for.body.280, %for.body.262 %indvars.iv66 = phi i64 [ 0, %for.body.262 ], [ %indvars.iv.next67, %for.body.280 ] - %arrayidx282 = getelementptr inbounds [13 x i16], [13 x i16]* %PredPel, i64 0, i64 1 - %arrayidx283 = getelementptr inbounds i16, i16* %arrayidx282, i64 %indvars.iv66 - %1 = load i16, i16* %arrayidx283, align 2 - %arrayidx289 = getelementptr inbounds %struct.ImageParameters, %struct.ImageParameters* %0, i64 0, i32 47, i64 0, i64 2, i64 %indvars.iv66 - store i16 %1, i16* %arrayidx289, align 2 + %arrayidx282 = getelementptr inbounds [13 x i16], ptr %PredPel, i64 0, i64 1 + %arrayidx283 = getelementptr inbounds i16, ptr %arrayidx282, i64 %indvars.iv66 + %1 = load i16, ptr %arrayidx283, align 2 + %arrayidx289 = getelementptr inbounds %struct.ImageParameters, ptr %0, i64 0, i32 47, i64 0, i64 2, i64 %indvars.iv66 + store i16 %1, ptr %arrayidx289, align 2 %indvars.iv.next67 = add nuw nsw i64 %indvars.iv66, 1 br i1 false, label %for.body.280, label %for.end.298 for.end.298: ; preds = %for.body.280 - %2 = load %struct.ImageParameters*, %struct.ImageParameters** @img, align 8 + %2 = load ptr, ptr @img, align 8 br label %for.body.310 for.body.310: ; preds = %for.body.310, %for.end.298 %indvars.iv = phi i64 [ 0, %for.end.298 ], [ %indvars.iv.next, %for.body.310 ] %InterScopSext = sext i16 %1 to i64 - %arrayidx312 = getelementptr inbounds [13 x i16], [13 x i16]* %PredPel, i64 0, i64 %InterScopSext - %arrayidx313 = getelementptr inbounds i16, i16* %arrayidx312, i64 %indvars.iv - %3 = load i16, i16* %arrayidx313, align 2 - %arrayidx322 = getelementptr inbounds %struct.ImageParameters, %struct.ImageParameters* %2, i64 0, i32 47, i64 1, i64 %indvars.iv, i64 1 - store i16 %3, i16* %arrayidx322, align 2 + %arrayidx312 = getelementptr inbounds [13 x i16], ptr %PredPel, i64 0, i64 %InterScopSext + %arrayidx313 = getelementptr inbounds i16, ptr %arrayidx312, i64 %indvars.iv + %3 = load i16, ptr %arrayidx313, align 2 + %arrayidx322 = getelementptr inbounds %struct.ImageParameters, ptr %2, i64 0, i32 47, i64 1, i64 %indvars.iv, i64 1 + store i16 %3, ptr %arrayidx322, align 2 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 br i1 false, label %for.body.310, label %for.end.328 diff --git a/polly/test/CodeGen/two-scops-in-row-invalidate-scevs.ll b/polly/test/CodeGen/two-scops-in-row-invalidate-scevs.ll index 238014ed5184..4470f970fc1e 100644 --- a/polly/test/CodeGen/two-scops-in-row-invalidate-scevs.ll +++ b/polly/test/CodeGen/two-scops-in-row-invalidate-scevs.ll @@ -10,7 +10,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @func(i32* %p) { +define void @func(ptr %p) { entry: %counters = alloca [64 x i32], align 16 %lenCounters = alloca [17 x i32], align 16 @@ -21,8 +21,7 @@ for.cond: ; preds = %for.body15, %for.cond br i1 false, label %for.body15, label %for.end22 for.body15: ; preds = %for.cond - %arrayidx17 = getelementptr inbounds [64 x i32], [64 x i32]* %counters, i64 0, i64 0 - %0 = load i32, i32* %arrayidx17, align 4 + %0 = load i32, ptr %counters, align 4 %add = add i32 %num.0, %0 br label %for.cond @@ -44,16 +43,16 @@ do.body: ; preds = %cond.end109, %if.en cond.end109: ; preds = %do.body %idxprom122 = zext i32 %e.0 to i64 - %arrayidx123 = getelementptr inbounds i32, i32* %p, i64 %idxprom122 + %arrayidx123 = getelementptr inbounds i32, ptr %p, i64 %idxprom122 %inc128 = add i32 %e.0, 1 %sub129 = sub i32 %num.0, %inc128 %cmp130 = icmp ugt i32 %sub129, 1 br i1 %cmp130, label %do.body, label %do.end do.end: ; preds = %cond.end109 - %1 = load i32, i32* %arrayidx123, align 4 - %arrayidx142 = getelementptr inbounds [17 x i32], [17 x i32]* %lenCounters, i64 0, i64 1 - store i32 2, i32* %arrayidx142, align 4 + %1 = load i32, ptr %arrayidx123, align 4 + %arrayidx142 = getelementptr inbounds [17 x i32], ptr %lenCounters, i64 0, i64 1 + store i32 2, ptr %arrayidx142, align 4 br label %for.cond201 for.cond201: ; preds = %for.body204, %do.end diff --git a/polly/test/CodeGen/two-scops-in-row.ll b/polly/test/CodeGen/two-scops-in-row.ll index c71d45543a11..3e922cba1916 100644 --- a/polly/test/CodeGen/two-scops-in-row.ll +++ b/polly/test/CodeGen/two-scops-in-row.ll @@ -14,14 +14,14 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; SCALAR: Stmt_for_0(0); -define void @foo(i32* %A) { +define void @foo(ptr %A) { entry: %Scalar0 = alloca i32 br label %for.0 for.0: - %Scalar0.val = load i32, i32* %Scalar0 - store i32 1, i32* %Scalar0 + %Scalar0.val = load i32, ptr %Scalar0 + store i32 1, ptr %Scalar0 br i1 false, label %for.0, label %for.1.preheader for.1.preheader: @@ -30,8 +30,8 @@ for.1.preheader: for.1: %indvar.1 = phi i32 [ %Scalar0.val, %for.1.preheader ], [ %indvar.1.next, %for.1] - %arrayidx.1 = getelementptr inbounds i32, i32* %A, i32 %indvar.1 - store i32 1, i32* %arrayidx.1 + %arrayidx.1 = getelementptr inbounds i32, ptr %A, i32 %indvar.1 + store i32 1, ptr %arrayidx.1 %indvar.1.next = add nsw i32 %indvar.1, 1 %cmp.1 = icmp slt i32 %indvar.1.next, 100 br i1 %cmp.1, label %for.1, label %end diff --git a/polly/test/CodeGen/udiv_expansion_position.ll b/polly/test/CodeGen/udiv_expansion_position.ll index cd2a05d7c169..bb37fed4a41e 100644 --- a/polly/test/CodeGen/udiv_expansion_position.ll +++ b/polly/test/CodeGen/udiv_expansion_position.ll @@ -27,7 +27,7 @@ for.body50: ; preds = %for.body35 for.cond62: ; preds = %for.body50.7 %conv46.lcssa = phi i16 [ %conv46, %for.body50.7 ] - store i16 %conv46.lcssa, i16* undef, align 2 + store i16 %conv46.lcssa, ptr undef, align 2 br label %for.end83 for.end83: ; preds = %for.cond62 diff --git a/polly/test/CodeGen/uninitialized_scalar_memory.ll b/polly/test/CodeGen/uninitialized_scalar_memory.ll index 18e1848b7583..935ccc3d6289 100644 --- a/polly/test/CodeGen/uninitialized_scalar_memory.ll +++ b/polly/test/CodeGen/uninitialized_scalar_memory.ll @@ -4,7 +4,7 @@ ; values. ; ; CHECK: polly.start: -; CHECK-NEXT: store float %ebig.0, float* %ebig.0.s2a +; CHECK-NEXT: store float %ebig.0, ptr %ebig.0.s2a ; CHECK-NEXT: br label %polly.stmt.if.end.entry ; ; int g(void); @@ -28,7 +28,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @M = common global float 0.000000e+00, align 4 -define i32 @max(float* noalias %xbig, i32 %eres, i32 %bres, float* noalias %indx) { +define i32 @max(ptr noalias %xbig, i32 %eres, i32 %bres, ptr noalias %indx) { entry: br label %for.cond @@ -51,16 +51,16 @@ if.then: ; preds = %for.body br label %for.end if.end: ; preds = %for.body - %arrayidx = getelementptr inbounds float, float* %xbig, i64 %indvars.iv - %tmp3 = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %xbig, i64 %indvars.iv + %tmp3 = load float, ptr %arrayidx, align 4 %cmp1 = fcmp ogt float %tmp3, %ebig.0 br i1 %cmp1, label %if.then.2, label %if.end.9 if.then.2: ; preds = %if.end - %arrayidx4 = getelementptr inbounds float, float* %xbig, i64 %indvars.iv - %tmp4 = load float, float* %arrayidx4, align 4 - %arrayidx6 = getelementptr inbounds float, float* %indx, i64 %indvars.iv - %tmp5 = load float, float* %arrayidx6, align 4 + %arrayidx4 = getelementptr inbounds float, ptr %xbig, i64 %indvars.iv + %tmp4 = load float, ptr %arrayidx4, align 4 + %arrayidx6 = getelementptr inbounds float, ptr %indx, i64 %indvars.iv + %tmp5 = load float, ptr %arrayidx6, align 4 %conv = sitofp i32 %bres to float %add7 = fadd float %tmp5, %conv %conv8 = fptosi float %add7 to i32 diff --git a/polly/test/CodeGen/unpredictable-loop-unsynthesizable.ll b/polly/test/CodeGen/unpredictable-loop-unsynthesizable.ll index f126941d8370..9164bb4532e6 100644 --- a/polly/test/CodeGen/unpredictable-loop-unsynthesizable.ll +++ b/polly/test/CodeGen/unpredictable-loop-unsynthesizable.ll @@ -10,19 +10,19 @@ ; at codegen because SCEVExpander would use the original induction variable in ; generated code. -%struct.bit_stream_struc.3.43.51.71.83.91.99.107.154 = type { i8*, i32, %struct._IO_FILE.1.41.49.69.81.89.97.105.153*, i8*, i32, i64, i32, i32 } -%struct._IO_FILE.1.41.49.69.81.89.97.105.153 = type { i32, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, %struct._IO_marker.0.40.48.68.80.88.96.104.152*, %struct._IO_FILE.1.41.49.69.81.89.97.105.153*, i32, i32, i64, i16, i8, [1 x i8], i8*, i64, i8*, i8*, i8*, i8*, i64, i32, [20 x i8] } -%struct._IO_marker.0.40.48.68.80.88.96.104.152 = type { %struct._IO_marker.0.40.48.68.80.88.96.104.152*, %struct._IO_FILE.1.41.49.69.81.89.97.105.153*, i32 } +%struct.bit_stream_struc.3.43.51.71.83.91.99.107.154 = type { ptr, i32, ptr, ptr, i32, i64, i32, i32 } +%struct._IO_FILE.1.41.49.69.81.89.97.105.153 = type { i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i64, i16, i8, [1 x i8], ptr, i64, ptr, ptr, ptr, ptr, i64, i32, [20 x i8] } +%struct._IO_marker.0.40.48.68.80.88.96.104.152 = type { ptr, ptr, i32 } -define i32 @copy_buffer(%struct.bit_stream_struc.3.43.51.71.83.91.99.107.154* nocapture %bs) { +define i32 @copy_buffer(ptr nocapture %bs) { entry: - %buf_byte_idx5.phi.trans.insert = getelementptr inbounds %struct.bit_stream_struc.3.43.51.71.83.91.99.107.154, %struct.bit_stream_struc.3.43.51.71.83.91.99.107.154* %bs, i64 0, i32 6 + %buf_byte_idx5.phi.trans.insert = getelementptr inbounds %struct.bit_stream_struc.3.43.51.71.83.91.99.107.154, ptr %bs, i64 0, i32 6 br i1 undef, label %for.body, label %cleanup for.body: %indvars.iv28 = phi i64 [ %indvars.iv.next29, %for.body ], [ 0, %entry ] %indvars.iv.next29 = add nuw nsw i64 %indvars.iv28, 1 - %0 = load i32, i32* %buf_byte_idx5.phi.trans.insert, align 8 + %0 = load i32, ptr %buf_byte_idx5.phi.trans.insert, align 8 %cmp6 = icmp sgt i32 0, %0 br i1 %cmp6, label %for.body, label %for.end.loopexit diff --git a/polly/test/CodeGen/variant_load_empty_domain.ll b/polly/test/CodeGen/variant_load_empty_domain.ll index 7f5754d2ff77..f5ad0b195818 100644 --- a/polly/test/CodeGen/variant_load_empty_domain.ll +++ b/polly/test/CodeGen/variant_load_empty_domain.ll @@ -11,7 +11,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %for.cond @@ -21,18 +21,18 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br i1 false, label %if.then, label %if.end if.then: ; preds = %for.body - %tmp1 = load i32, i32* %A, align 4 - %arrayidx4 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx4, align 4 + %tmp1 = load i32, ptr %A, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx4, align 4 %add = add nsw i32 %tmp2, %tmp1 - store i32 %add, i32* %arrayidx4, align 4 + store i32 %add, ptr %arrayidx4, align 4 br label %if.end if.end: ; preds = %if.then, %for.body diff --git a/polly/test/CodeGen/whole-scop-non-affine-subregion.ll b/polly/test/CodeGen/whole-scop-non-affine-subregion.ll index 552fc91b57a0..931e644f6b8f 100644 --- a/polly/test/CodeGen/whole-scop-non-affine-subregion.ll +++ b/polly/test/CodeGen/whole-scop-non-affine-subregion.ll @@ -12,7 +12,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %entry.split @@ -22,15 +22,15 @@ entry.split: br i1 %cmp, label %if.then, label %if.else if.then: ; preds = %entry - %tmp1 = load i32, i32* %A, align 4 + %tmp1 = load i32, ptr %A, align 4 %add = add nsw i32 %tmp1, 1 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %if.end if.else: ; preds = %entry - %tmp2 = load i32, i32* %A, align 4 + %tmp2 = load i32, ptr %A, align 4 %sub = add nsw i32 %tmp2, -1 - store i32 %sub, i32* %A, align 4 + store i32 %sub, ptr %A, align 4 br label %if.end if.end: ; preds = %if.else, %if.then diff --git a/polly/test/DeLICM/confused_order.ll b/polly/test/DeLICM/confused_order.ll index 45c12e7956f9..2015ebcf58f1 100644 --- a/polly/test/DeLICM/confused_order.ll +++ b/polly/test/DeLICM/confused_order.ll @@ -9,7 +9,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @confused_order(double* nocapture %C, i32 %rows, i32 %cols) { +define void @confused_order(ptr nocapture %C, i32 %rows, i32 %cols) { entry: %0 = sext i32 %cols to i64 %1 = sext i32 %rows to i64 @@ -21,15 +21,13 @@ for.body7.lr.ph: for.end103: %a_dot_b_domain.0.lcssa = phi double [ 0.000000e+00, %entry ], [ undef, %for.body7.lr.ph ] - %arrayidx107 = getelementptr inbounds double, double* %C, i64 0 - store double %a_dot_b_domain.0.lcssa, double* %arrayidx107 + store double %a_dot_b_domain.0.lcssa, ptr %C %cmp109 = icmp slt i64 0, %1 %or.cond = and i1 %cmp108, %cmp109 br i1 %or.cond, label %if.then110, label %for.inc116 if.then110: - %arrayidx114 = getelementptr inbounds double, double* %C, i64 0 - store double %a_dot_b_domain.0.lcssa, double* %arrayidx114 + store double %a_dot_b_domain.0.lcssa, ptr %C br label %for.inc116 for.inc116: diff --git a/polly/test/DeLICM/contradicting_assumed_context_and_domain.ll b/polly/test/DeLICM/contradicting_assumed_context_and_domain.ll index 18a5e9a3a088..4e039b22b415 100644 --- a/polly/test/DeLICM/contradicting_assumed_context_and_domain.ll +++ b/polly/test/DeLICM/contradicting_assumed_context_and_domain.ll @@ -8,7 +8,7 @@ ; target datalayout = "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64" -define void @f(i16* %arg, i32 %arg1) { +define void @f(ptr %arg, i32 %arg1) { bb: %tmp = alloca [24 x i32], align 4 br label %bb2 @@ -24,12 +24,11 @@ bb5: %tmp6 = sub nsw i32 %arg1, %tmp3 %tmp7 = add i32 %tmp6, -1 %tmp8 = icmp eq i32 %tmp3, 0 - %tmp9 = getelementptr inbounds i16, i16* %arg, i32 0 br i1 %tmp8, label %bb13, label %bb10 bb10: - %tmp11 = getelementptr inbounds i16, i16* %tmp9, i32 %tmp7 - %tmp12 = load i16, i16* %tmp11, align 2 + %tmp11 = getelementptr inbounds i16, ptr %arg, i32 %tmp7 + %tmp12 = load i16, ptr %tmp11, align 2 br label %bb14 bb13: @@ -38,10 +37,9 @@ bb13: bb14: %tmp15 = phi i32 [ 0, %bb10 ], [ %tmp21, %bb14 ] %tmp16 = phi i16 [ undef, %bb10 ], [ %tmp19, %bb14 ] - %tmp17 = getelementptr inbounds [24 x i32], [24 x i32]* %tmp, i32 0, i32 %tmp15 - %tmp18 = getelementptr inbounds i16, i16* %tmp9, i32 0 - %tmp19 = load i16, i16* %tmp18, align 2 - store i32 undef, i32* %tmp17, align 4 + %tmp17 = getelementptr inbounds [24 x i32], ptr %tmp, i32 0, i32 %tmp15 + %tmp19 = load i16, ptr %arg, align 2 + store i32 undef, ptr %tmp17, align 4 %tmp20 = call i32 asm "#", "=r,r"(i16 %tmp19) readnone %tmp21 = add nuw nsw i32 %tmp15, 1 %tmp22 = icmp eq i32 %tmp21, %tmp3 @@ -53,9 +51,8 @@ bb23: bb24: %tmp25 = phi i32 [ %tmp30, %bb24 ], [ 0, %bb4 ] %tmp26 = mul nsw i32 %tmp25, %arg1 - %tmp27 = getelementptr inbounds i16, i16* %arg, i32 %tmp26 - %tmp28 = getelementptr inbounds i16, i16* %tmp27, i32 0 - %tmp29 = load i16, i16* %tmp28, align 2 + %tmp27 = getelementptr inbounds i16, ptr %arg, i32 %tmp26 + %tmp29 = load i16, ptr %tmp27, align 2 %tmp30 = add nuw nsw i32 %tmp25, 1 br i1 false, label %bb31, label %bb24 diff --git a/polly/test/DeLICM/load-in-cond-inf-loop.ll b/polly/test/DeLICM/load-in-cond-inf-loop.ll index 86dacbf5382c..f0aecfd87a15 100644 --- a/polly/test/DeLICM/load-in-cond-inf-loop.ll +++ b/polly/test/DeLICM/load-in-cond-inf-loop.ll @@ -14,12 +14,12 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16 @arr_18 = external dso_local local_unnamed_addr global [0 x i16], align 2 -define void @func(i64 %b, i8* %c) { +define void @func(i64 %b, ptr %c) { entry: %conv1 = trunc i64 %b to i32 %sext = shl i32 %conv1, 24 %conv2 = ashr exact i32 %sext, 24 - %arrayidx = getelementptr inbounds i8, i8* %c, i64 %b + %arrayidx = getelementptr inbounds i8, ptr %c, i64 %b %tobool19.not = icmp eq i64 %b, 0 br label %for.cond3.preheader @@ -32,9 +32,9 @@ for.cond8.preheader: br label %for.body13 for.cond.cleanup6: - %arrayidx16 = getelementptr inbounds [0 x i16], [0 x i16]* @arr_18, i64 0, i64 %idxprom + %arrayidx16 = getelementptr inbounds [0 x i16], ptr @arr_18, i64 0, i64 %idxprom %0 = zext i8 %1 to i16 - store i16 %0, i16* %arrayidx16, align 2 + store i16 %0, ptr %arrayidx16, align 2 %inc = add i16 %d.039, 1 %conv = sext i16 %inc to i32 %cmp = icmp sgt i32 %conv2, %conv @@ -44,7 +44,7 @@ for.cond.cleanup12: br i1 false, label %for.cond8.preheader, label %for.cond.cleanup6 for.body13: - %1 = load i8, i8* %arrayidx, align 1 + %1 = load i8, ptr %arrayidx, align 1 br i1 %tobool19.not, label %for.body13, label %for.cond.cleanup12 for.cond.cleanup: diff --git a/polly/test/DeLICM/map_memset_zero.ll b/polly/test/DeLICM/map_memset_zero.ll index f5ed67da3fa6..1a08eee63fe9 100644 --- a/polly/test/DeLICM/map_memset_zero.ll +++ b/polly/test/DeLICM/map_memset_zero.ll @@ -4,9 +4,9 @@ ; Check that PHI mapping works even in presence of a memset whose' ; zero value is used. ; -declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) -define void @func(i8* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.for @@ -17,18 +17,18 @@ outer.for: bodyA: - %A_idx = getelementptr inbounds i8, i8* %A, i32 %j + %A_idx = getelementptr inbounds i8, ptr %A, i32 %j %cond = icmp eq i32 21, 21 br i1 %cond, label %bodyB, label %bodyC bodyB: - call void @llvm.memset.p0i8.i64(i8* %A_idx, i8 0, i64 1, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr %A_idx, i8 0, i64 1, i32 1, i1 false) br label %bodyC bodyC: %phi = phi i8 [1, %bodyA], [0, %bodyB] - %a = load i8, i8* %A_idx - store i8 %phi, i8* %A_idx + %a = load i8, ptr %A_idx + store i8 %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/nomap_alreadymapped.ll b/polly/test/DeLICM/nomap_alreadymapped.ll index 46bc86e683c5..7adf4ba88385 100644 --- a/polly/test/DeLICM/nomap_alreadymapped.ll +++ b/polly/test/DeLICM/nomap_alreadymapped.ll @@ -15,7 +15,7 @@ ; Note that it is undefined which one will be mapped. We keep the test ; symmetric so it passes if either one is mapped. ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -52,9 +52,9 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j + %A_idx = getelementptr inbounds double, ptr %A, i32 %j %sum = fadd double %phi1, %phi2 - store double %sum, double* %A_idx + store double %sum, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/nomap_escaping.ll b/polly/test/DeLICM/nomap_escaping.ll index 03057e45d421..034c0a96ccf2 100644 --- a/polly/test/DeLICM/nomap_escaping.ll +++ b/polly/test/DeLICM/nomap_escaping.ll @@ -15,7 +15,7 @@ ; Supporting this would require reloading the scalar from A[j], and/or ; identifying the last instance of fsomeval that escapes. ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -51,8 +51,8 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %fsomeval, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %fsomeval, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/nomap_occupied.ll b/polly/test/DeLICM/nomap_occupied.ll index 2659da521577..db33532b1e65 100644 --- a/polly/test/DeLICM/nomap_occupied.ll +++ b/polly/test/DeLICM/nomap_occupied.ll @@ -12,7 +12,7 @@ ; ; Check that A[j] is not used for mapping as it is still in use. ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: %fsomeval = fadd double 21.0, 21.0 br label %outer.preheader @@ -48,9 +48,9 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %dummy = load double, double* %A_idx - store double %phi, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %dummy = load double, ptr %A_idx + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/nomap_readonly.ll b/polly/test/DeLICM/nomap_readonly.ll index f416ca12b93f..1f3b5746fe9b 100644 --- a/polly/test/DeLICM/nomap_readonly.ll +++ b/polly/test/DeLICM/nomap_readonly.ll @@ -13,7 +13,7 @@ ; Check that fsomeval is not mapped to A[j] because it is read-only. ; There is no advantage in mapping values not modified within the SCoP. ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: %fsomeval = fadd double 21.0, 21.0 br label %outer.preheader @@ -49,8 +49,8 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %fsomeval, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %fsomeval, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/nomap_spuriouswrite.ll b/polly/test/DeLICM/nomap_spuriouswrite.ll index 251c7540f2d0..ef470f715bbe 100644 --- a/polly/test/DeLICM/nomap_spuriouswrite.ll +++ b/polly/test/DeLICM/nomap_spuriouswrite.ll @@ -16,7 +16,7 @@ ; MUST_WRITE. Also nothing can be map to the MAY_WRITE itself because it is a ; MAY_WRITE. ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: %fsomeval = fadd double 21.0, 21.0 br label %outer.preheader @@ -52,16 +52,16 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j + %A_idx = getelementptr inbounds double, ptr %A, i32 %j %phi.cmp = fcmp ogt double %phi, 0.0 br i1 %phi.cmp, label %reduction.exit.true, label %reduction.exit.unconditional reduction.exit.true: - store double undef, double* %A_idx + store double undef, ptr %A_idx br label %reduction.exit.unconditional reduction.exit.unconditional: - store double %phi, double* %A_idx + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/nomap_storagesize.ll b/polly/test/DeLICM/nomap_storagesize.ll index df33fabb0b89..fab8d54c2bdf 100644 --- a/polly/test/DeLICM/nomap_storagesize.ll +++ b/polly/test/DeLICM/nomap_storagesize.ll @@ -12,7 +12,7 @@ ; Check that %fphi is not mapped to A[j] because it is double-sized, ; but A[j] stores only floats. ; -define void @func(float* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -47,9 +47,9 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds float, float* %A, i32 %j + %A_idx = getelementptr inbounds float, ptr %A, i32 %j %fphi = fptrunc double %phi to float - store float %fphi, float* %A_idx + store float %fphi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/nomap_writewrite.ll b/polly/test/DeLICM/nomap_writewrite.ll index 0b415900f570..06192d9ae19e 100644 --- a/polly/test/DeLICM/nomap_writewrite.ll +++ b/polly/test/DeLICM/nomap_writewrite.ll @@ -20,7 +20,7 @@ ; write of %phi would be. There is currently no differentiation between ; implicit and explicit writes in Polly. ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: %fsomeval = fadd double 21.0, 21.0 br label %outer.preheader @@ -40,12 +40,12 @@ outer.for: reduction.for: %i = phi i32 [0, %reduction.preheader], [%i.inc, %reduction.inc] %phi = phi double [0.0, %reduction.preheader], [%add, %reduction.inc] - %A_idx = getelementptr inbounds double, double* %A, i32 %j + %A_idx = getelementptr inbounds double, ptr %A, i32 %j %phi.cmp = fcmp ogt double %phi, 0.0 br i1 %phi.cmp, label %reduction.for.true, label %reduction.for.unconditional reduction.for.true: - store double undef, double* %A_idx + store double undef, ptr %A_idx br label %reduction.for.unconditional reduction.for.unconditional: @@ -65,7 +65,7 @@ outer.for: br label %reduction.for reduction.exit: - store double %phi, double* %A_idx + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/outofquota-reverseDomain.ll b/polly/test/DeLICM/outofquota-reverseDomain.ll index f293f9d703fd..d40ee03cf3bc 100644 --- a/polly/test/DeLICM/outofquota-reverseDomain.ll +++ b/polly/test/DeLICM/outofquota-reverseDomain.ll @@ -7,7 +7,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" -define void @test(i32 %size, double* %lhs, i32 %lhsStride, double* %_rhs, double* %res, double %alpha) { +define void @test(i32 %size, ptr %lhs, i32 %lhsStride, ptr %_rhs, ptr %res, double %alpha) { entry: br label %if.end @@ -25,45 +25,45 @@ for.cond177.preheader: ; preds = %for.cond.cleanup142 for.body40: ; preds = %for.cond.cleanup142, %if.end %j.0464 = phi i32 [ %add55, %for.cond.cleanup142 ], [ 0, %if.end ] %mul41 = mul nsw i32 %j.0464, %lhsStride - %add.ptr42 = getelementptr inbounds double, double* %lhs, i32 %mul41 + %add.ptr42 = getelementptr inbounds double, ptr %lhs, i32 %mul41 %add43 = or i32 %j.0464, 1 - %arrayidx46 = getelementptr inbounds double, double* %_rhs, i32 %j.0464 - %tmp = load double, double* %arrayidx46, align 8 + %arrayidx46 = getelementptr inbounds double, ptr %_rhs, i32 %j.0464 + %tmp = load double, ptr %arrayidx46, align 8 %mul47 = fmul double %tmp, %alpha %add55 = add nuw nsw i32 %j.0464, 2 - %arrayidx67 = getelementptr inbounds double, double* %res, i32 %j.0464 - %tmp1 = load double, double* %arrayidx67, align 8 - store double undef, double* %arrayidx67, align 8 - %arrayidx75 = getelementptr inbounds double, double* %res, i32 %add43 - %tmp2 = load double, double* %arrayidx75, align 8 - store double undef, double* %arrayidx75, align 8 - %arrayidx78 = getelementptr inbounds double, double* %add.ptr42, i32 %add43 - %tmp3 = load double, double* %arrayidx78, align 8 + %arrayidx67 = getelementptr inbounds double, ptr %res, i32 %j.0464 + %tmp1 = load double, ptr %arrayidx67, align 8 + store double undef, ptr %arrayidx67, align 8 + %arrayidx75 = getelementptr inbounds double, ptr %res, i32 %add43 + %tmp2 = load double, ptr %arrayidx75, align 8 + store double undef, ptr %arrayidx75, align 8 + %arrayidx78 = getelementptr inbounds double, ptr %add.ptr42, i32 %add43 + %tmp3 = load double, ptr %arrayidx78, align 8 %mul.i.i388 = fmul double %mul47, %tmp3 %add88 = fadd double undef, 0.000000e+00 %cmp120448 = icmp ult i32 %add55, %size br i1 %cmp120448, label %for.body122.preheader, label %for.cond.cleanup142 for.body122.preheader: ; preds = %for.body40 - %add.ptr117 = getelementptr inbounds double, double* %res, i32 %add55 + %add.ptr117 = getelementptr inbounds double, ptr %res, i32 %add55 br label %for.body122 for.body122: ; preds = %for.body122, %for.body122.preheader %i118.0455 = phi i32 [ %add137, %for.body122 ], [ %add55, %for.body122.preheader ] - %resIt.0454 = phi double* [ %add.ptr135, %for.body122 ], [ %add.ptr117, %for.body122.preheader ] + %resIt.0454 = phi ptr [ %add.ptr135, %for.body122 ], [ %add.ptr117, %for.body122.preheader ] %ptmp2.0450 = phi double [ undef, %for.body122 ], [ 0.000000e+00, %for.body122.preheader ] - %tmp4 = load double, double* %resIt.0454, align 8 + %tmp4 = load double, ptr %resIt.0454, align 8 %add.i.i.i386 = fadd double undef, %tmp4 %add.i.i.i384 = fadd double undef, %add.i.i.i386 - store double %add.i.i.i384, double* %resIt.0454, align 8 - %add.ptr135 = getelementptr inbounds double, double* %resIt.0454, i32 1 + store double %add.i.i.i384, ptr %resIt.0454, align 8 + %add.ptr135 = getelementptr inbounds double, ptr %resIt.0454, i32 1 %add137 = add nuw i32 %i118.0455, 1 %exitcond469 = icmp eq i32 %add137, %size br i1 %exitcond469, label %for.cond.cleanup142.loopexit, label %for.body122 for.cond.cleanup142.loopexit: ; preds = %for.body122 - %.pre = load double, double* %arrayidx67, align 8 - %.pre471 = load double, double* %arrayidx75, align 8 + %.pre = load double, ptr %arrayidx67, align 8 + %.pre471 = load double, ptr %arrayidx75, align 8 br label %for.cond.cleanup142 for.cond.cleanup142: ; preds = %for.cond.cleanup142.loopexit, %for.body40 @@ -71,8 +71,8 @@ for.cond.cleanup142: ; preds = %for.cond.cleanup142 %tmp6 = phi double [ undef, %for.body40 ], [ %.pre, %for.cond.cleanup142.loopexit ] %ptmp2.0.lcssa = phi double [ 0.000000e+00, %for.body40 ], [ undef, %for.cond.cleanup142.loopexit ] %add163 = fadd double %add88, %ptmp2.0.lcssa - store double undef, double* %arrayidx67, align 8 - store double undef, double* %arrayidx75, align 8 + store double undef, ptr %arrayidx67, align 8 + store double undef, ptr %arrayidx75, align 8 %cmp38 = icmp ult i32 %add55, %and36 br i1 %cmp38, label %for.body40, label %for.cond177.preheader @@ -81,45 +81,44 @@ for.cond.cleanup179: ; preds = %for.cond.cleanup198 for.body180: ; preds = %for.cond.cleanup198, %for.cond177.preheader %j176.0442 = phi i32 [ %add195, %for.cond.cleanup198 ], [ %and36, %for.cond177.preheader ] - %add.ptr183 = getelementptr inbounds double, double* %lhs, i32 0 - %arrayidx185 = getelementptr inbounds double, double* %_rhs, i32 %j176.0442 - %tmp7 = load double, double* %arrayidx185, align 8 + %arrayidx185 = getelementptr inbounds double, ptr %_rhs, i32 %j176.0442 + %tmp7 = load double, ptr %arrayidx185, align 8 %mul186 = fmul double %tmp7, %alpha - %arrayidx189 = getelementptr inbounds double, double* %add.ptr183, i32 %j176.0442 - %tmp8 = load double, double* %arrayidx189, align 8 + %arrayidx189 = getelementptr inbounds double, ptr %lhs, i32 %j176.0442 + %tmp8 = load double, ptr %arrayidx189, align 8 %mul.i.i373 = fmul double %tmp8, %mul186 - %arrayidx192 = getelementptr inbounds double, double* %res, i32 %j176.0442 - %tmp9 = load double, double* %arrayidx192, align 8 + %arrayidx192 = getelementptr inbounds double, ptr %res, i32 %j176.0442 + %tmp9 = load double, ptr %arrayidx192, align 8 %add193 = fadd double %tmp9, %mul.i.i373 - store double %add193, double* %arrayidx192, align 8 + store double %add193, ptr %arrayidx192, align 8 %add195 = add nuw nsw i32 %j176.0442, 1 %cmp197438 = icmp slt i32 %add195, %size br i1 %cmp197438, label %for.body199, label %for.cond.cleanup198 for.cond.cleanup198.loopexit: ; preds = %for.body199 - %.pre472 = load double, double* %arrayidx192, align 8 + %.pre472 = load double, ptr %arrayidx192, align 8 br label %for.cond.cleanup198 for.cond.cleanup198: ; preds = %for.cond.cleanup198.loopexit, %for.body180 %tmp10 = phi double [ %add193, %for.body180 ], [ %.pre472, %for.cond.cleanup198.loopexit ] %t2187.0.lcssa = phi double [ 0.000000e+00, %for.body180 ], [ %add207, %for.cond.cleanup198.loopexit ] %add213 = fadd double %tmp10, undef - store double %add213, double* %arrayidx192, align 8 + store double %add213, ptr %arrayidx192, align 8 %exitcond468 = icmp eq i32 %add195, %size br i1 %exitcond468, label %for.cond.cleanup179, label %for.body180 for.body199: ; preds = %for.body199, %for.body180 %i194.0440 = phi i32 [ %inc209, %for.body199 ], [ %add195, %for.body180 ] - %arrayidx200 = getelementptr inbounds double, double* %add.ptr183, i32 %i194.0440 - %tmp11 = load double, double* %arrayidx200, align 8 + %arrayidx200 = getelementptr inbounds double, ptr %lhs, i32 %i194.0440 + %tmp11 = load double, ptr %arrayidx200, align 8 %mul.i.i372 = fmul double %mul186, %tmp11 - %arrayidx202 = getelementptr inbounds double, double* %res, i32 %i194.0440 - %tmp12 = load double, double* %arrayidx202, align 8 + %arrayidx202 = getelementptr inbounds double, ptr %res, i32 %i194.0440 + %tmp12 = load double, ptr %arrayidx202, align 8 %add203 = fadd double %tmp12, %mul.i.i372 - store double %add203, double* %arrayidx202, align 8 - %arrayidx205 = getelementptr inbounds double, double* %_rhs, i32 %i194.0440 - %tmp13 = load double, double* %arrayidx200, align 8 - %tmp14 = load double, double* %arrayidx205, align 8 + store double %add203, ptr %arrayidx202, align 8 + %arrayidx205 = getelementptr inbounds double, ptr %_rhs, i32 %i194.0440 + %tmp13 = load double, ptr %arrayidx200, align 8 + %tmp14 = load double, ptr %arrayidx205, align 8 %mul.i.i = fmul double %tmp13, %tmp14 %add207 = fadd double undef, %mul.i.i %inc209 = add nuw nsw i32 %i194.0440, 1 diff --git a/polly/test/DeLICM/pass_existence.ll b/polly/test/DeLICM/pass_existence.ll index 98a4612aa65b..7ed2da9c1da1 100644 --- a/polly/test/DeLICM/pass_existence.ll +++ b/polly/test/DeLICM/pass_existence.ll @@ -9,7 +9,7 @@ ; body: A[0] = 0.0; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -19,7 +19,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 0.0, double* %A + store double 0.0, ptr %A br label %inc inc: diff --git a/polly/test/DeLICM/pr41656.ll b/polly/test/DeLICM/pr41656.ll index 61f1a6f4ad03..965ad9f62ac3 100644 --- a/polly/test/DeLICM/pr41656.ll +++ b/polly/test/DeLICM/pr41656.ll @@ -19,7 +19,7 @@ if.end30: ; preds = %entry do.body.preheader: ; preds = %if.end30 %idx.ext.i = sext i32 %call24 to i64 %wide.trip.count.i = zext i32 %call24 to i64 - %0 = load double*, double** undef, align 8, !tbaa !1 + %0 = load ptr, ptr undef, align 8, !tbaa !1 br label %for.body.us.preheader.i if.then40: ; preds = %if.end30 @@ -34,11 +34,10 @@ for.body.us.i.us: ; preds = %for.body.us.prehead for.body.us.i: ; preds = %for.cond2.for.end_crit_edge.us.i, %for.body.us.preheader.i %t.1 = phi double [ undef, %for.cond2.for.end_crit_edge.us.i ], [ 0.000000e+00, %for.body.us.preheader.i ] %i.05.us.i = phi i32 [ %inc8.us.i, %for.cond2.for.end_crit_edge.us.i ], [ 0, %for.body.us.preheader.i ] - %dstp.03.us.i = phi double* [ %add.ptr.us.i, %for.cond2.for.end_crit_edge.us.i ], [ %0, %for.body.us.preheader.i ] + %dstp.03.us.i = phi ptr [ %add.ptr.us.i, %for.cond2.for.end_crit_edge.us.i ], [ %0, %for.body.us.preheader.i ] %mul.us.i = fmul nsz double %t.1, 0x40A59933FC6A96C1 %1 = call nsz double @llvm.sin.f64(double %mul.us.i) #2 - store double %1, double* %dstp.03.us.i, align 8, !tbaa !5 - %2 = bitcast double* %dstp.03.us.i to i64* + store double %1, ptr %dstp.03.us.i, align 8, !tbaa !5 br label %for.body5.us.for.body5.us_crit_edge.i for.body5.us.for.body5.us_crit_edge.i: ; preds = %for.body5.us.for.body5.us_crit_edge.i.for.body5.us.for.body5.us_crit_edge.i_crit_edge, %for.body.us.i @@ -48,11 +47,11 @@ for.body5.us.for.body5.us_crit_edge.i: ; preds = %for.body5.us.for.bo br i1 %exitcond.i, label %for.cond2.for.end_crit_edge.us.i, label %for.body5.us.for.body5.us_crit_edge.i.for.body5.us.for.body5.us_crit_edge.i_crit_edge for.body5.us.for.body5.us_crit_edge.i.for.body5.us.for.body5.us_crit_edge.i_crit_edge: ; preds = %for.body5.us.for.body5.us_crit_edge.i - %.pre10.i.pre = load i64, i64* %2, align 8, !tbaa !5 + %.pre10.i.pre = load i64, ptr %dstp.03.us.i, align 8, !tbaa !5 br label %for.body5.us.for.body5.us_crit_edge.i for.cond2.for.end_crit_edge.us.i: ; preds = %for.body5.us.for.body5.us_crit_edge.i - %add.ptr.us.i = getelementptr inbounds double, double* %dstp.03.us.i, i64 %idx.ext.i + %add.ptr.us.i = getelementptr inbounds double, ptr %dstp.03.us.i, i64 %idx.ext.i %inc8.us.i = add nuw nsw i32 %i.05.us.i, 1 %exitcond7.i = icmp eq i32 %inc8.us.i, 1024 br i1 %exitcond7.i, label %fill_samples.exit, label %for.body.us.i diff --git a/polly/test/DeLICM/pr48783.ll b/polly/test/DeLICM/pr48783.ll index 9c332763f598..3cbd54b93baf 100644 --- a/polly/test/DeLICM/pr48783.ll +++ b/polly/test/DeLICM/pr48783.ll @@ -19,7 +19,7 @@ if.end30: ; preds = %entry do.body.preheader: ; preds = %if.end30 %idx.ext.i = sext i32 %call24 to i64 %wide.trip.count.i = zext i32 %call24 to i64 - %0 = load double*, double** undef, align 8, !tbaa !1 + %0 = load ptr, ptr undef, align 8, !tbaa !1 br label %for.body.us.preheader.i if.then40: ; preds = %if.end30 @@ -34,11 +34,10 @@ for.body.us.i.us: ; preds = %for.body.us.prehead for.body.us.i: ; preds = %for.cond2.for.end_crit_edge.us.i, %for.body.us.preheader.i %t.1 = phi double [ undef, %for.cond2.for.end_crit_edge.us.i ], [ 0.000000e+00, %for.body.us.preheader.i ] %i.05.us.i = phi i32 [ %inc8.us.i, %for.cond2.for.end_crit_edge.us.i ], [ 0, %for.body.us.preheader.i ] - %dstp.03.us.i = phi double* [ %add.ptr.us.i, %for.cond2.for.end_crit_edge.us.i ], [ %0, %for.body.us.preheader.i ] + %dstp.03.us.i = phi ptr [ %add.ptr.us.i, %for.cond2.for.end_crit_edge.us.i ], [ %0, %for.body.us.preheader.i ] %mul.us.i = fmul nsz double %t.1, 0x40A59933FC6A96C1 %1 = call nsz double @llvm.sin.f64(double %mul.us.i) #2 - store double %1, double* %dstp.03.us.i, align 8, !tbaa !5 - %2 = bitcast double* %dstp.03.us.i to i64* + store double %1, ptr %dstp.03.us.i, align 8, !tbaa !5 br label %for.body5.us.for.body5.us_crit_edge.i for.body5.us.for.body5.us_crit_edge.i: ; preds = %for.body5.us.for.body5.us_crit_edge.i.for.body5.us.for.body5.us_crit_edge.i_crit_edge, %for.body.us.i @@ -49,11 +48,11 @@ for.body5.us.for.body5.us_crit_edge.i: ; preds = %for.body5.us.for.bo br i1 %exitcond.i, label %for.cond2.for.end_crit_edge.us.i, label %for.body5.us.for.body5.us_crit_edge.i.for.body5.us.for.body5.us_crit_edge.i_crit_edge for.body5.us.for.body5.us_crit_edge.i.for.body5.us.for.body5.us_crit_edge.i_crit_edge: ; preds = %for.body5.us.for.body5.us_crit_edge.i - %.pre10.i.pre = load i64, i64* %2, align 8, !tbaa !5 + %.pre10.i.pre = load i64, ptr %dstp.03.us.i, align 8, !tbaa !5 br label %for.body5.us.for.body5.us_crit_edge.i for.cond2.for.end_crit_edge.us.i: ; preds = %for.body5.us.for.body5.us_crit_edge.i - %add.ptr.us.i = getelementptr inbounds double, double* %dstp.03.us.i, i64 %idx.ext.i + %add.ptr.us.i = getelementptr inbounds double, ptr %dstp.03.us.i, i64 %idx.ext.i %inc8.us.i = add nuw nsw i32 %i.05.us.i, 1 %exitcond7.i = icmp eq i32 %inc8.us.i, 1024 br i1 %exitcond7.i, label %fill_samples.exit, label %for.body.us.i diff --git a/polly/test/DeLICM/reduction.ll b/polly/test/DeLICM/reduction.ll index 122d3d024f14..78c1a4ce5288 100644 --- a/polly/test/DeLICM/reduction.ll +++ b/polly/test/DeLICM/reduction.ll @@ -9,7 +9,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.for @@ -38,8 +38,8 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %phi, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_constant_selfconflict.ll b/polly/test/DeLICM/reduction_constant_selfconflict.ll index b7a0cc7e5d3e..012e0a0794b2 100644 --- a/polly/test/DeLICM/reduction_constant_selfconflict.ll +++ b/polly/test/DeLICM/reduction_constant_selfconflict.ll @@ -11,7 +11,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -31,14 +31,14 @@ outer.for: %i = phi i32 [0, %reduction.preheader], [%i.inc, %reduction.inc] %phi = phi double [0.0, %reduction.preheader], [%add, %reduction.inc] %i.cmp = icmp slt i32 %i, 4 - %A_idx = getelementptr inbounds double, double* %A, i32 %j + %A_idx = getelementptr inbounds double, ptr %A, i32 %j br i1 %i.cmp, label %body, label %reduction.exit body: %add = fadd double %phi, 4.2 - store double %add, double* %A_idx + store double %add, ptr %A_idx br label %reduction.inc @@ -48,7 +48,7 @@ outer.for: br label %reduction.for reduction.exit: - store double %phi, double* %A_idx + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_looprotate.ll b/polly/test/DeLICM/reduction_looprotate.ll index ca100829a5da..341cc091f7e1 100644 --- a/polly/test/DeLICM/reduction_looprotate.ll +++ b/polly/test/DeLICM/reduction_looprotate.ll @@ -12,7 +12,7 @@ ; ; There is nothing to do in this case. All accesses are in %body. ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -35,10 +35,10 @@ outer.for: body: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %val = load double, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %val = load double, ptr %A_idx %add = fadd double %val, 4.2 - store double %add, double* %A_idx + store double %add, ptr %A_idx br label %reduction.inc diff --git a/polly/test/DeLICM/reduction_looprotate_alwaystaken.ll b/polly/test/DeLICM/reduction_looprotate_alwaystaken.ll index 0adf3874411d..a58eabb4fbd8 100644 --- a/polly/test/DeLICM/reduction_looprotate_alwaystaken.ll +++ b/polly/test/DeLICM/reduction_looprotate_alwaystaken.ll @@ -16,7 +16,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A, double* noalias nonnull %dummy) { +define void @func(ptr noalias nonnull %A, ptr noalias nonnull %dummy) { entry: br label %outer.preheader @@ -30,7 +30,7 @@ outer.for: reduction.preheader: - %A_idx = getelementptr inbounds double, double* %A, i32 %j + %A_idx = getelementptr inbounds double, ptr %A, i32 %j br label %reduction.for reduction.for: @@ -44,7 +44,7 @@ outer.for: br i1 %cond, label %alwaystaken, label %body_phi alwaystaken: - store double 0.0, double* %dummy + store double 0.0, ptr %dummy br label %body_phi body_phi: @@ -59,7 +59,7 @@ outer.for: br i1 %i.cmp, label %reduction.for, label %reduction.exit reduction.exit: - store double %phi, double* %A_idx + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_looprotate_gvnpre.ll b/polly/test/DeLICM/reduction_looprotate_gvnpre.ll index 02de6c42ff4c..5a81441cf0ee 100644 --- a/polly/test/DeLICM/reduction_looprotate_gvnpre.ll +++ b/polly/test/DeLICM/reduction_looprotate_gvnpre.ll @@ -11,7 +11,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -36,8 +36,8 @@ outer.for: body: %add = fadd double %phi, 4.2 - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %add, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %add, ptr %A_idx br label %reduction.inc diff --git a/polly/test/DeLICM/reduction_looprotate_gvnpre_cond1.ll b/polly/test/DeLICM/reduction_looprotate_gvnpre_cond1.ll index c43900e0f817..b5bc0d589c65 100644 --- a/polly/test/DeLICM/reduction_looprotate_gvnpre_cond1.ll +++ b/polly/test/DeLICM/reduction_looprotate_gvnpre_cond1.ll @@ -13,7 +13,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -46,8 +46,8 @@ outer.for: body_join: %join = phi double [%phi, %body], [%add, %body_true] - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %join, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %join, ptr %A_idx br label %reduction.inc diff --git a/polly/test/DeLICM/reduction_looprotate_gvnpre_cond2.ll b/polly/test/DeLICM/reduction_looprotate_gvnpre_cond2.ll index e91b0994c0b6..e995be1143a6 100644 --- a/polly/test/DeLICM/reduction_looprotate_gvnpre_cond2.ll +++ b/polly/test/DeLICM/reduction_looprotate_gvnpre_cond2.ll @@ -16,7 +16,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -30,8 +30,8 @@ outer.for: reduction.preheader: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %init = load double, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %init = load double, ptr %A_idx br label %reduction.for reduction.for: @@ -47,7 +47,7 @@ outer.for: body_true: %add = fadd double %phi, 4.2 - store double %add, double* %A_idx + store double %add, ptr %A_idx br label %body_join body_join: diff --git a/polly/test/DeLICM/reduction_looprotate_gvnpre_nopreheader.ll b/polly/test/DeLICM/reduction_looprotate_gvnpre_nopreheader.ll index 104487184bde..ca3a1211ca49 100644 --- a/polly/test/DeLICM/reduction_looprotate_gvnpre_nopreheader.ll +++ b/polly/test/DeLICM/reduction_looprotate_gvnpre_nopreheader.ll @@ -12,7 +12,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -34,8 +34,8 @@ outer.for: body: %add = fadd double %phi, 4.2 - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %add, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %add, ptr %A_idx br label %reduction.inc diff --git a/polly/test/DeLICM/reduction_looprotate_hoisted.ll b/polly/test/DeLICM/reduction_looprotate_hoisted.ll index 21c008cf6a67..795b94912aa4 100644 --- a/polly/test/DeLICM/reduction_looprotate_hoisted.ll +++ b/polly/test/DeLICM/reduction_looprotate_hoisted.ll @@ -10,7 +10,7 @@ ; } ; } ; -define void @func(i32* noalias nonnull %A, i32* noalias nonnull %StartPtr) { +define void @func(ptr noalias nonnull %A, ptr noalias nonnull %StartPtr) { entry: br label %outer.preheader @@ -24,7 +24,7 @@ outer.for: reduction.preheader: - %Start = load i32, i32* %StartPtr + %Start = load i32, ptr %StartPtr br label %reduction.for reduction.for: @@ -46,8 +46,8 @@ outer.for: br i1 %i.cmp, label %reduction.for, label %reduction.exit reduction.exit: - %A_idx = getelementptr inbounds i32, i32* %A, i32 %j - store i32 %mul, i32* %A_idx + %A_idx = getelementptr inbounds i32, ptr %A, i32 %j + store i32 %mul, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_looprotate_licm.ll b/polly/test/DeLICM/reduction_looprotate_licm.ll index f6bac8d68fbc..935f31abced3 100644 --- a/polly/test/DeLICM/reduction_looprotate_licm.ll +++ b/polly/test/DeLICM/reduction_looprotate_licm.ll @@ -9,7 +9,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -23,8 +23,8 @@ outer.for: reduction.preheader: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %init = load double, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %init = load double, ptr %A_idx br label %reduction.for reduction.for: @@ -46,7 +46,7 @@ outer.for: br i1 %i.cmp, label %reduction.for, label %reduction.exit reduction.exit: - store double %add, double* %A_idx + store double %add, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_looprotate_licm2.ll b/polly/test/DeLICM/reduction_looprotate_licm2.ll index ada9d9ee8a2c..8b06e7466f20 100644 --- a/polly/test/DeLICM/reduction_looprotate_licm2.ll +++ b/polly/test/DeLICM/reduction_looprotate_licm2.ll @@ -16,7 +16,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -30,8 +30,8 @@ outer.for: reduction.preheader: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %init = load double, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %init = load double, ptr %A_idx br label %reduction.for reduction.for: @@ -53,7 +53,7 @@ outer.for: br i1 %i.cmp, label %reduction.for, label %reduction.exit reduction.exit: - store double %phi, double* %A_idx + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_looprotate_licm_double_write.ll b/polly/test/DeLICM/reduction_looprotate_licm_double_write.ll index 6f3178633ad8..51bb7291a73e 100644 --- a/polly/test/DeLICM/reduction_looprotate_licm_double_write.ll +++ b/polly/test/DeLICM/reduction_looprotate_licm_double_write.ll @@ -14,7 +14,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -28,8 +28,8 @@ outer.for: reduction.preheader: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %init = load double, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %init = load double, ptr %A_idx br label %reduction.for reduction.for: @@ -51,8 +51,8 @@ outer.for: br i1 %i.cmp, label %reduction.for, label %reduction.exit reduction.exit: - store double %add, double* %A_idx - store double %add, double* %A_idx + store double %add, ptr %A_idx + store double %add, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_looprotate_licm_nopreheader.ll b/polly/test/DeLICM/reduction_looprotate_licm_nopreheader.ll index 1d0491dab7c5..41538239fbd8 100644 --- a/polly/test/DeLICM/reduction_looprotate_licm_nopreheader.ll +++ b/polly/test/DeLICM/reduction_looprotate_licm_nopreheader.ll @@ -11,7 +11,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -21,8 +21,8 @@ outer.preheader: outer.for: %j = phi i32 [0, %outer.preheader], [%j.inc, %outer.inc] %j.cmp = icmp slt i32 %j, 2 - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %init = load double, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %init = load double, ptr %A_idx br i1 %j.cmp, label %reduction.for, label %outer.exit @@ -46,7 +46,7 @@ outer.for: br i1 %i.cmp, label %reduction.for, label %reduction.exit reduction.exit: - store double %add, double* %A_idx + store double %add, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_looprotate_load.ll b/polly/test/DeLICM/reduction_looprotate_load.ll index d3820cb1bb06..6aa83ae19503 100644 --- a/polly/test/DeLICM/reduction_looprotate_load.ll +++ b/polly/test/DeLICM/reduction_looprotate_load.ll @@ -9,7 +9,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A, double* noalias nonnull %StartPtr) { +define void @func(ptr noalias nonnull %A, ptr noalias nonnull %StartPtr) { entry: br label %outer.preheader @@ -23,7 +23,7 @@ outer.for: reduction.preheader: - %Start = load double, double* %StartPtr + %Start = load double, ptr %StartPtr br label %reduction.for reduction.for: @@ -45,8 +45,8 @@ outer.for: br i1 %i.cmp, label %reduction.for, label %reduction.exit reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %add, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %add, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_looprotate_loopguard_gvnpre.ll b/polly/test/DeLICM/reduction_looprotate_loopguard_gvnpre.ll index e071b56e9494..35c723e864d2 100644 --- a/polly/test/DeLICM/reduction_looprotate_loopguard_gvnpre.ll +++ b/polly/test/DeLICM/reduction_looprotate_loopguard_gvnpre.ll @@ -13,7 +13,7 @@ ; } ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -39,8 +39,8 @@ outer.for: body: %add = fadd double %phi, 4.2 - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %add, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %add, ptr %A_idx br label %reduction.inc diff --git a/polly/test/DeLICM/reduction_looprotate_loopguard_licm1.ll b/polly/test/DeLICM/reduction_looprotate_loopguard_licm1.ll index 5cb2884f4706..2b5f4d8151a8 100644 --- a/polly/test/DeLICM/reduction_looprotate_loopguard_licm1.ll +++ b/polly/test/DeLICM/reduction_looprotate_loopguard_licm1.ll @@ -13,7 +13,7 @@ ; } ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -27,8 +27,8 @@ outer.for: reduction.guard: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %init = load double, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %init = load double, ptr %A_idx %guard.cmp = icmp sle i32 %n,0 br i1 %guard.cmp, label %reduction.exit, label %reduction.for @@ -52,7 +52,7 @@ outer.for: reduction.exit: %result = phi double [%init, %reduction.guard], [%add, %reduction.inc] - store double %result, double* %A_idx + store double %result, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_looprotate_loopguard_licm2.ll b/polly/test/DeLICM/reduction_looprotate_loopguard_licm2.ll index bd338863a262..2e92813d5551 100644 --- a/polly/test/DeLICM/reduction_looprotate_loopguard_licm2.ll +++ b/polly/test/DeLICM/reduction_looprotate_loopguard_licm2.ll @@ -15,7 +15,7 @@ ; } ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -29,8 +29,8 @@ outer.for: reduction.guard: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %init = load double, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %init = load double, ptr %A_idx %guard.cmp = icmp sle i32 %n,0 br i1 %guard.cmp, label %reduction.skip, label %reduction.for @@ -53,7 +53,7 @@ outer.for: br i1 %i.cmp, label %reduction.for, label %reduction.exit reduction.exit: - store double %add, double* %A_idx + store double %add, ptr %A_idx br label %reduction.skip reduction.skip: diff --git a/polly/test/DeLICM/reduction_looprotate_loopguard_licm3.ll b/polly/test/DeLICM/reduction_looprotate_loopguard_licm3.ll index 642f4d38cf32..784c8ef2d321 100644 --- a/polly/test/DeLICM/reduction_looprotate_loopguard_licm3.ll +++ b/polly/test/DeLICM/reduction_looprotate_loopguard_licm3.ll @@ -15,7 +15,7 @@ ; } ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -33,8 +33,8 @@ outer.for: br i1 %guard.cmp, label %reduction.skip, label %reduction.preheader reduction.preheader: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %init = load double, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %init = load double, ptr %A_idx br label %reduction.for reduction.for: @@ -56,7 +56,7 @@ outer.for: br i1 %i.cmp, label %reduction.for, label %reduction.exit reduction.exit: - store double %add, double* %A_idx + store double %add, ptr %A_idx br label %reduction.skip reduction.skip: diff --git a/polly/test/DeLICM/reduction_looprotate_readonly.ll b/polly/test/DeLICM/reduction_looprotate_readonly.ll index 24bf07b38d67..a9535467b3bd 100644 --- a/polly/test/DeLICM/reduction_looprotate_readonly.ll +++ b/polly/test/DeLICM/reduction_looprotate_readonly.ll @@ -9,7 +9,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A, double %Start) { +define void @func(ptr noalias nonnull %A, double %Start) { entry: br label %outer.preheader @@ -44,8 +44,8 @@ outer.for: br i1 %i.cmp, label %reduction.for, label %reduction.exit reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %add, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %add, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_looprotate_synthesizable.ll b/polly/test/DeLICM/reduction_looprotate_synthesizable.ll index 2560cde7524c..3d486910c861 100644 --- a/polly/test/DeLICM/reduction_looprotate_synthesizable.ll +++ b/polly/test/DeLICM/reduction_looprotate_synthesizable.ll @@ -9,7 +9,7 @@ ; } ; } ; -define void @func(i32* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -44,8 +44,8 @@ outer.for: br i1 %i.cmp, label %reduction.for, label %reduction.exit reduction.exit: - %A_idx = getelementptr inbounds i32, i32* %A, i32 %j - store i32 %mul, i32* %A_idx + %A_idx = getelementptr inbounds i32, ptr %A, i32 %j + store i32 %mul, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_looprotate_undef.ll b/polly/test/DeLICM/reduction_looprotate_undef.ll index e4e1769a315f..8c0544ed7785 100644 --- a/polly/test/DeLICM/reduction_looprotate_undef.ll +++ b/polly/test/DeLICM/reduction_looprotate_undef.ll @@ -9,7 +9,7 @@ ; } ; } ; -define void @func(i32* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -46,8 +46,8 @@ outer.for: br i1 %i.cmp, label %reduction.for, label %reduction.exit reduction.exit: - %A_idx = getelementptr inbounds i32, i32* %A, i32 %j - store i32 %conv, i32* %A_idx + %A_idx = getelementptr inbounds i32, ptr %A, i32 %j + store i32 %conv, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_overapproximate.ll b/polly/test/DeLICM/reduction_overapproximate.ll index 72190378d3d5..2d33d3a0ece2 100644 --- a/polly/test/DeLICM/reduction_overapproximate.ll +++ b/polly/test/DeLICM/reduction_overapproximate.ll @@ -12,7 +12,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -53,8 +53,8 @@ outer.for: reduction.exit: %val = phi double [%add, %reduction.inc], [0.0, %reduction.checkloop] - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_preheader.ll b/polly/test/DeLICM/reduction_preheader.ll index 3be7bbf4601c..c6e3643797c0 100644 --- a/polly/test/DeLICM/reduction_preheader.ll +++ b/polly/test/DeLICM/reduction_preheader.ll @@ -9,7 +9,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -44,8 +44,8 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %phi, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reduction_unrelatedunusual.ll b/polly/test/DeLICM/reduction_unrelatedunusual.ll index c275ae19633d..04c437770700 100644 --- a/polly/test/DeLICM/reduction_unrelatedunusual.ll +++ b/polly/test/DeLICM/reduction_unrelatedunusual.ll @@ -15,7 +15,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A, double* noalias nonnull %C) { +define void @func(ptr noalias nonnull %A, ptr noalias nonnull %C) { entry: br label %outer.for @@ -35,8 +35,8 @@ outer.for: body: %add = fadd double %phi, 4.2 - store double 21.0, double* %C - store double 41.0, double* %C + store double 21.0, ptr %C + store double 41.0, ptr %C br label %reduction.inc @@ -46,8 +46,8 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %phi, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reject_loadafterstore.ll b/polly/test/DeLICM/reject_loadafterstore.ll index 0a3eb624f352..8af6e5e4818c 100644 --- a/polly/test/DeLICM/reject_loadafterstore.ll +++ b/polly/test/DeLICM/reject_loadafterstore.ll @@ -10,7 +10,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -45,9 +45,9 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %phi, double* %A_idx - %dummy = load double, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %phi, ptr %A_idx + %dummy = load double, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reject_outofquota.ll b/polly/test/DeLICM/reject_outofquota.ll index 542f7492475b..551431f0823c 100644 --- a/polly/test/DeLICM/reject_outofquota.ll +++ b/polly/test/DeLICM/reject_outofquota.ll @@ -10,7 +10,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -45,8 +45,8 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %phi, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reject_storeafterstore.ll b/polly/test/DeLICM/reject_storeafterstore.ll index 11253e17b70b..1ec5ef67344c 100644 --- a/polly/test/DeLICM/reject_storeafterstore.ll +++ b/polly/test/DeLICM/reject_storeafterstore.ll @@ -10,7 +10,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -45,9 +45,9 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double 0.0, double* %A_idx - store double %phi, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double 0.0, ptr %A_idx + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reject_storeinsubregion.ll b/polly/test/DeLICM/reject_storeinsubregion.ll index 6be30cc419b6..1d38e8066568 100644 --- a/polly/test/DeLICM/reject_storeinsubregion.ll +++ b/polly/test/DeLICM/reject_storeinsubregion.ll @@ -13,7 +13,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -39,16 +39,16 @@ outer.for: body: %add = fadd double %phi, 4.2 - %A_idxp = getelementptr inbounds double, double* %A, i32 %j + %A_idxp = getelementptr inbounds double, ptr %A, i32 %j %add.cmp = fcmp ogt double %add, 42.0 br i1 %add.cmp , label %body_true, label %body_false body_true: - %dummy = load double, double* %A_idxp + %dummy = load double, ptr %A_idxp br label %reduction.inc body_false: - store double 0.0, double* %A_idxp + store double 0.0, ptr %A_idxp br label %reduction.inc @@ -58,8 +58,8 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %phi, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/reject_unusualstore.ll b/polly/test/DeLICM/reject_unusualstore.ll index fa613d39a78b..a18a0c3ce9c4 100644 --- a/polly/test/DeLICM/reject_unusualstore.ll +++ b/polly/test/DeLICM/reject_unusualstore.ll @@ -14,7 +14,7 @@ ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -28,9 +28,9 @@ outer.for: reduction.preheader: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double 21.0, double* %A_idx - store double 42.0, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double 21.0, ptr %A_idx + store double 42.0, ptr %A_idx br label %reduction.for reduction.for: @@ -52,7 +52,7 @@ outer.for: br label %reduction.for reduction.exit: - store double %phi, double* %A_idx + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/skip_maywrite.ll b/polly/test/DeLICM/skip_maywrite.ll index 46636cca8690..1e5f6b169fe4 100644 --- a/polly/test/DeLICM/skip_maywrite.ll +++ b/polly/test/DeLICM/skip_maywrite.ll @@ -12,7 +12,7 @@ ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -51,8 +51,8 @@ outer.for: br i1 %phi.cmp , label %reduction.exit_true, label %reduction.exit_false reduction.exit_true: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %phi, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %phi, ptr %A_idx br label %outer.inc reduction.exit_false: diff --git a/polly/test/DeLICM/skip_multiaccess.ll b/polly/test/DeLICM/skip_multiaccess.ll index 92c0b123de4c..6a8c8e5325e1 100644 --- a/polly/test/DeLICM/skip_multiaccess.ll +++ b/polly/test/DeLICM/skip_multiaccess.ll @@ -17,15 +17,15 @@ ; } ; } -declare void @llvm.memset.p0f64.i64(double* nocapture, i8, i64, i32, i1) +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.for outer.for: %j = phi i32 [0, %entry], [%j.inc, %outer.inc] - call void @llvm.memset.p0f64.i64(double* %A, i8 0, i64 4, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr %A, i8 0, i64 4, i32 1, i1 false) %j.cmp = icmp slt i32 %j, 2 br i1 %j.cmp, label %reduction.for, label %outer.exit @@ -49,8 +49,8 @@ outer.for: br label %reduction.for reduction.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %phi, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %phi, ptr %A_idx br label %outer.inc diff --git a/polly/test/DeLICM/skip_notinloop.ll b/polly/test/DeLICM/skip_notinloop.ll index d9bd2f5049da..0730a3a9a4f5 100644 --- a/polly/test/DeLICM/skip_notinloop.ll +++ b/polly/test/DeLICM/skip_notinloop.ll @@ -7,7 +7,7 @@ ; A[0] = phi; ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %reduction.preheader @@ -33,7 +33,7 @@ entry: br label %reduction.for reduction.exit: - store double %phi, double* %A + store double %phi, ptr %A br label %return diff --git a/polly/test/DeLICM/skip_scalaraccess.ll b/polly/test/DeLICM/skip_scalaraccess.ll index 9cd9ded05910..fa95d382409a 100644 --- a/polly/test/DeLICM/skip_scalaraccess.ll +++ b/polly/test/DeLICM/skip_scalaraccess.ll @@ -9,7 +9,7 @@ ; } ; } ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %outer.preheader @@ -44,7 +44,7 @@ outer.for: br label %reduction.for reduction.exit: - store double %phi, double* %A + store double %phi, ptr %A br label %outer.inc diff --git a/polly/test/DeadCodeElimination/chained_iterations.ll b/polly/test/DeadCodeElimination/chained_iterations.ll index 41327899d26f..b79fdd659aae 100644 --- a/polly/test/DeadCodeElimination/chained_iterations.ll +++ b/polly/test/DeadCodeElimination/chained_iterations.ll @@ -17,8 +17,8 @@ entry: for.body.1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %for.body.1 ] - %arrayidx.1 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.1 - store i32 2, i32* %arrayidx.1, align 4 + %arrayidx.1 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.1 + store i32 2, ptr %arrayidx.1, align 4 %indvar.next.1 = add i64 %indvar.1, 1 %exitcond.1 = icmp ne i64 %indvar.next.1, 200 br i1 %exitcond.1, label %for.body.1, label %exit.1 @@ -28,8 +28,8 @@ exit.1: for.body.2: %indvar.2 = phi i64 [ 0, %exit.1 ], [ %indvar.next.2, %for.body.2 ] - %arrayidx.2 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.2 - store i32 5, i32* %arrayidx.2, align 4 + %arrayidx.2 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.2 + store i32 5, ptr %arrayidx.2, align 4 %indvar.next.2 = add i64 %indvar.2, 1 %exitcond.2 = icmp ne i64 %indvar.next.2, 200 br i1 %exitcond.2, label %for.body.2, label %exit.2 @@ -39,8 +39,8 @@ exit.2: for.body.3: %indvar.3 = phi i64 [ 0, %exit.2 ], [ %indvar.next.3, %for.body.3 ] - %arrayidx.3 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.3 - store i32 7, i32* %arrayidx.3, align 4 + %arrayidx.3 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.3 + store i32 7, ptr %arrayidx.3, align 4 %indvar.next.3 = add i64 %indvar.3, 1 %exitcond.3 = icmp ne i64 %indvar.next.3, 200 br i1 %exitcond.3, label %for.body.3 , label %exit.3 diff --git a/polly/test/DeadCodeElimination/chained_iterations_2.ll b/polly/test/DeadCodeElimination/chained_iterations_2.ll index ca141e3f57ea..1d1af92db5da 100644 --- a/polly/test/DeadCodeElimination/chained_iterations_2.ll +++ b/polly/test/DeadCodeElimination/chained_iterations_2.ll @@ -18,8 +18,8 @@ entry: for.body.1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %for.body.1 ] - %arrayidx.1 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.1 - store i32 2, i32* %arrayidx.1, align 4 + %arrayidx.1 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.1 + store i32 2, ptr %arrayidx.1, align 4 %indvar.next.1 = add i64 %indvar.1, 1 %exitcond.1 = icmp ne i64 %indvar.next.1, 200 br i1 %exitcond.1, label %for.body.1, label %exit.1 @@ -29,10 +29,10 @@ exit.1: for.body.2: %indvar.2 = phi i64 [ 0, %exit.1 ], [ %indvar.next.2, %for.body.2 ] - %arrayidx.2.a = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.2 - %val = load i32, i32* %arrayidx.2.a, align 4 - %arrayidx.2.b = getelementptr [200 x i32], [200 x i32]* %B, i64 0, i64 %indvar.2 - store i32 %val, i32* %arrayidx.2.b, align 4 + %arrayidx.2.a = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.2 + %val = load i32, ptr %arrayidx.2.a, align 4 + %arrayidx.2.b = getelementptr [200 x i32], ptr %B, i64 0, i64 %indvar.2 + store i32 %val, ptr %arrayidx.2.b, align 4 %indvar.next.2 = add i64 %indvar.2, 1 %exitcond.2 = icmp ne i64 %indvar.next.2, 200 br i1 %exitcond.2, label %for.body.2, label %exit.2 @@ -42,10 +42,10 @@ exit.2: for.body.3: %indvar.3 = phi i64 [ 0, %exit.2 ], [ %indvar.next.3, %for.body.3 ] - %arrayidx.3.a = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.3 - %arrayidx.3.b = getelementptr [200 x i32], [200 x i32]* %B, i64 0, i64 %indvar.3 - store i32 5, i32* %arrayidx.3.a, align 4 - store i32 5, i32* %arrayidx.3.b, align 4 + %arrayidx.3.a = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.3 + %arrayidx.3.b = getelementptr [200 x i32], ptr %B, i64 0, i64 %indvar.3 + store i32 5, ptr %arrayidx.3.a, align 4 + store i32 5, ptr %arrayidx.3.b, align 4 %indvar.next.3 = add i64 %indvar.3, 1 %exitcond.3 = icmp ne i64 %indvar.next.3, 200 br i1 %exitcond.3, label %for.body.3 , label %exit.3 diff --git a/polly/test/DeadCodeElimination/computeout.ll b/polly/test/DeadCodeElimination/computeout.ll index df0634e79a28..51850d7da349 100644 --- a/polly/test/DeadCodeElimination/computeout.ll +++ b/polly/test/DeadCodeElimination/computeout.ll @@ -19,8 +19,8 @@ entry: S1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %S1 ] - %arrayidx.1 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.1 - store i32 2, i32* %arrayidx.1 + %arrayidx.1 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.1 + store i32 2, ptr %arrayidx.1 %indvar.next.1 = add i64 %indvar.1, 1 %exitcond.1 = icmp ne i64 %indvar.next.1, 100 br i1 %exitcond.1, label %S1, label %exit.1 @@ -30,8 +30,8 @@ exit.1: S2: %indvar.2 = phi i64 [ 0, %exit.1 ], [ %indvar.next.2, %S2 ] - %arrayidx.2 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.2 - store i32 5, i32* %arrayidx.2 + %arrayidx.2 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.2 + store i32 5, ptr %arrayidx.2 %indvar.next.2 = add i64 %indvar.2, 1 %exitcond.2 = icmp ne i64 %indvar.next.2, 10 br i1 %exitcond.2, label %S2, label %exit.2 @@ -41,8 +41,8 @@ exit.2: S3: %indvar.3 = phi i64 [ 0, %exit.2 ], [ %indvar.next.3, %S3 ] - %arrayidx.3 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.3 - store i32 7, i32* %arrayidx.3 + %arrayidx.3 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.3 + store i32 7, ptr %arrayidx.3 %indvar.next.3 = add i64 %indvar.3, 1 %exitcond.3 = icmp ne i64 %indvar.next.3, 200 br i1 %exitcond.3, label %S3 , label %exit.3 diff --git a/polly/test/DeadCodeElimination/dead_iteration_elimination.ll b/polly/test/DeadCodeElimination/dead_iteration_elimination.ll index 66ceab8830d9..f496f7828e3d 100644 --- a/polly/test/DeadCodeElimination/dead_iteration_elimination.ll +++ b/polly/test/DeadCodeElimination/dead_iteration_elimination.ll @@ -21,8 +21,8 @@ entry: for.body.1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %for.body.1 ] - %arrayidx.1 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.1 - store i32 2, i32* %arrayidx.1, align 4 + %arrayidx.1 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.1 + store i32 2, ptr %arrayidx.1, align 4 %indvar.next.1 = add i64 %indvar.1, 1 %exitcond.1 = icmp ne i64 %indvar.next.1, 200 br i1 %exitcond.1, label %for.body.1, label %exit.1 @@ -32,8 +32,8 @@ exit.1: for.body.2: %indvar.2 = phi i64 [ 0, %exit.1 ], [ %indvar.next.2, %for.body.2 ] - %arrayidx.2 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.2 - store i32 5, i32* %arrayidx.2, align 4 + %arrayidx.2 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.2 + store i32 5, ptr %arrayidx.2, align 4 %indvar.next.2 = add i64 %indvar.2, 1 %exitcond.2 = icmp ne i64 %indvar.next.2, 50 br i1 %exitcond.2, label %for.body.2, label %exit.2 @@ -43,10 +43,10 @@ exit.2: for.body.3: %indvar.3 = phi i64 [ 0, %exit.2 ], [ %indvar.next.3, %for.body.3 ] - %arrayidx.3 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.3 - %val = load i32, i32* %arrayidx.3, align 4 + %arrayidx.3 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.3 + %val = load i32, ptr %arrayidx.3, align 4 %add = add nsw i32 %val, 5 - store i32 %add, i32* %arrayidx.3, align 4 + store i32 %add, ptr %arrayidx.3, align 4 %indvar.next.3 = add i64 %indvar.3, 1 %exitcond.3 = icmp ne i64 %indvar.next.3, 70 br i1 %exitcond.3, label %for.body.3 , label %exit.3 @@ -58,8 +58,8 @@ for.body.4: %indvar.4 = phi i64 [ 0, %exit.3 ], [ %indvar.next.4, %for.body.4 ] %indvar.plus = add i64 %indvar.4, 100 %trunc = trunc i64 %indvar.plus to i32 - %arrayidx.4 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.plus - store i32 %trunc, i32* %arrayidx.4, align 4 + %arrayidx.4 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.plus + store i32 %trunc, ptr %arrayidx.4, align 4 %indvar.next.4 = add i64 %indvar.4, 1 %exitcond.4 = icmp ne i64 %indvar.next.4, 10 br i1 %exitcond.4, label %for.body.4, label %exit.4 diff --git a/polly/test/DeadCodeElimination/non-affine-affine-mix.ll b/polly/test/DeadCodeElimination/non-affine-affine-mix.ll index 0ece91ea63bc..e6a5dd204ca1 100644 --- a/polly/test/DeadCodeElimination/non-affine-affine-mix.ll +++ b/polly/test/DeadCodeElimination/non-affine-affine-mix.ll @@ -20,7 +20,7 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" declare i32 @bar(i32) #1 -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %for.cond @@ -31,8 +31,8 @@ for.cond: S1: %nonaff = call i32 @bar(i32 %i.0) - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %nonaff - store i32 %i.0, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %nonaff + store i32 %i.0, ptr %arrayidx, align 4 br label %for.inc for.inc: @@ -48,8 +48,8 @@ for.cond.2: br i1 %exitcond.2, label %S2, label %for.end S2: - %arrayidx.2 = getelementptr inbounds i32, i32* %A, i32 %i.2 - store i32 %i.2, i32* %arrayidx.2, align 4 + %arrayidx.2 = getelementptr inbounds i32, ptr %A, i32 %i.2 + store i32 %i.2, ptr %arrayidx.2, align 4 br label %for.inc.2 for.inc.2: diff --git a/polly/test/DeadCodeElimination/non-affine.ll b/polly/test/DeadCodeElimination/non-affine.ll index 01646c90a256..38a7fcbcf9c9 100644 --- a/polly/test/DeadCodeElimination/non-affine.ll +++ b/polly/test/DeadCodeElimination/non-affine.ll @@ -11,7 +11,7 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" declare i32 @bar(i32) #1 -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %for.cond @@ -22,8 +22,8 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %nonaff = call i32 @bar(i32 %i.0) - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %nonaff - store i32 %i.0, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %nonaff + store i32 %i.0, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/DeadCodeElimination/null_schedule.ll b/polly/test/DeadCodeElimination/null_schedule.ll index 055daadfa2f5..633a84b5d92b 100644 --- a/polly/test/DeadCodeElimination/null_schedule.ll +++ b/polly/test/DeadCodeElimination/null_schedule.ll @@ -14,8 +14,7 @@ entry: %A = alloca [200 x i32], align 16 %B = alloca [200 x i32], align 16 - %A.zero = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 0 - store i32 1, i32* %A.zero, align 4 + store i32 1, ptr %A, align 4 br label %for.body.1 @@ -23,11 +22,11 @@ for.body.1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %for.body.1 ] %indvar.next.1 = add i64 %indvar.1, 1 - %A.current.1 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.1 - %val1.1 = load i32, i32* %A.current.1, align 4 + %A.current.1 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.1 + %val1.1 = load i32, ptr %A.current.1, align 4 %val2.1 = mul i32 %val1.1, 2 - %A.next.1 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.next.1 - store i32 %val2.1, i32* %A.next.1, align 4 + %A.next.1 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.next.1 + store i32 %val2.1, ptr %A.next.1, align 4 %exitcond.1 = icmp ne i64 %indvar.next.1, 100 br i1 %exitcond.1, label %for.body.1, label %exit.1 @@ -38,11 +37,11 @@ exit.1: for.body.2: %indvar.2 = phi i64 [ 0, %exit.1 ], [ %indvar.next.2, %for.body.2 ] - %B.current.2 = getelementptr [200 x i32], [200 x i32]* %B, i64 0, i64 %indvar.2 - %val1.2 = load i32, i32* %B.current.2, align 4 + %B.current.2 = getelementptr [200 x i32], ptr %B, i64 0, i64 %indvar.2 + %val1.2 = load i32, ptr %B.current.2, align 4 %val2.2 = mul i32 %val1.2, 2 - %A.current.2 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.2 - store i32 %val2.2, i32* %A.current.2, align 4 + %A.current.2 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.2 + store i32 %val2.2, ptr %A.current.2, align 4 %indvar.next.2 = add i64 %indvar.2, 1 %exitcond.2 = icmp ne i64 %indvar.next.2, 200 diff --git a/polly/test/DependenceInfo/computeout.ll b/polly/test/DependenceInfo/computeout.ll index f334bb37e991..048de29864d3 100644 --- a/polly/test/DependenceInfo/computeout.ll +++ b/polly/test/DependenceInfo/computeout.ll @@ -20,8 +20,8 @@ entry: S1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %S1 ] - %arrayidx.1 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.1 - store i32 2, i32* %arrayidx.1 + %arrayidx.1 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.1 + store i32 2, ptr %arrayidx.1 %indvar.next.1 = add i64 %indvar.1, 1 %exitcond.1 = icmp ne i64 %indvar.next.1, 100 br i1 %exitcond.1, label %S1, label %exit.1 @@ -31,8 +31,8 @@ exit.1: S2: %indvar.2 = phi i64 [ 0, %exit.1 ], [ %indvar.next.2, %S2 ] - %arrayidx.2 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.2 - store i32 5, i32* %arrayidx.2 + %arrayidx.2 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.2 + store i32 5, ptr %arrayidx.2 %indvar.next.2 = add i64 %indvar.2, 1 %exitcond.2 = icmp ne i64 %indvar.next.2, 10 br i1 %exitcond.2, label %S2, label %exit.2 @@ -42,8 +42,8 @@ exit.2: S3: %indvar.3 = phi i64 [ 0, %exit.2 ], [ %indvar.next.3, %S3 ] - %arrayidx.3 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.3 - store i32 7, i32* %arrayidx.3 + %arrayidx.3 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.3 + store i32 7, ptr %arrayidx.3 %indvar.next.3 = add i64 %indvar.3, 1 %exitcond.3 = icmp ne i64 %indvar.next.3, 200 br i1 %exitcond.3, label %S3 , label %exit.3 diff --git a/polly/test/DependenceInfo/different_schedule_dimensions.ll b/polly/test/DependenceInfo/different_schedule_dimensions.ll index 9fa44ff74345..3f966168d3b7 100644 --- a/polly/test/DependenceInfo/different_schedule_dimensions.ll +++ b/polly/test/DependenceInfo/different_schedule_dimensions.ll @@ -23,7 +23,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @hoge(i32 %arg, [1024 x double]* %arg1) { +define void @hoge(i32 %arg, ptr %arg1) { bb: br label %bb2 @@ -33,10 +33,9 @@ bb2: ; preds = %bb bb3: ; preds = %bb10, %bb2 %tmp = phi i64 [ 0, %bb10 ], [ 0, %bb2 ] %tmp4 = icmp sgt i32 %arg, 0 - %tmp5 = getelementptr inbounds [1024 x double], [1024 x double]* %arg1, i64 0, i64 0 - %tmp6 = load double, double* %tmp5, align 8 + %tmp6 = load double, ptr %arg1, align 8 %tmp7 = fadd double undef, %tmp6 - store double %tmp7, double* %tmp5, align 8 + store double %tmp7, ptr %arg1, align 8 br i1 false, label %bb8, label %bb9 bb8: ; preds = %bb3 @@ -47,8 +46,8 @@ bb9: ; preds = %bb3 bb10: ; preds = %bb9, %bb8 %tmp11 = phi double [ undef, %bb8 ], [ undef, %bb9 ] - %tmp12 = getelementptr inbounds [1024 x double], [1024 x double]* %arg1, i64 %tmp, i64 0 - store double %tmp11, double* %tmp12, align 8 + %tmp12 = getelementptr inbounds [1024 x double], ptr %arg1, i64 %tmp, i64 0 + store double %tmp11, ptr %tmp12, align 8 %tmp13 = add nuw nsw i64 0, 1 %tmp14 = trunc i64 %tmp13 to i32 br i1 false, label %bb3, label %bb15 diff --git a/polly/test/DependenceInfo/do_pluto_matmult.ll b/polly/test/DependenceInfo/do_pluto_matmult.ll index 7b2b06e52a06..d71608e80e70 100644 --- a/polly/test/DependenceInfo/do_pluto_matmult.ll +++ b/polly/test/DependenceInfo/do_pluto_matmult.ll @@ -5,12 +5,12 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -%struct._IO_FILE = type { i32, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, %struct._IO_marker*, %struct._IO_FILE*, i32, i32, i64, i16, i8, [1 x i8], i8*, i64, i8*, i8*, i8*, i8*, i64, i32, [20 x i8] } -%struct._IO_marker = type { %struct._IO_marker*, %struct._IO_FILE*, i32 } +%struct._IO_FILE = type { i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i64, i16, i8, [1 x i8], ptr, i64, ptr, ptr, ptr, ptr, i64, i32, [20 x i8] } +%struct._IO_marker = type { ptr, ptr, i32 } -@A = common global [36 x [49 x double]] zeroinitializer, align 8 ; <[36 x [49 x double]]*> [#uses=3] -@B = common global [36 x [49 x double]] zeroinitializer, align 8 ; <[36 x [49 x double]]*> [#uses=3] -@C = common global [36 x [49 x double]] zeroinitializer, align 8 ; <[36 x [49 x double]]*> [#uses=4] +@A = common global [36 x [49 x double]] zeroinitializer, align 8 ; <ptr> [#uses=3] +@B = common global [36 x [49 x double]] zeroinitializer, align 8 ; <ptr> [#uses=3] +@C = common global [36 x [49 x double]] zeroinitializer, align 8 ; <ptr> [#uses=4] define void @do_pluto_matmult() nounwind { entry: @@ -23,21 +23,21 @@ do.body: ; preds = %do.cond42, %entry do.body1: ; preds = %do.cond36, %do.body %indvar1 = phi i64 [ %indvar.next2, %do.cond36 ], [ 0, %do.body ] ; <i64> [#uses=3] - %arrayidx5 = getelementptr [36 x [49 x double]], [36 x [49 x double]]* @C, i64 0, i64 %indvar3, i64 %indvar1 ; <double*> [#uses=2] + %arrayidx5 = getelementptr [36 x [49 x double]], ptr @C, i64 0, i64 %indvar3, i64 %indvar1 ; <ptr> [#uses=2] br label %do.body2 do.body2: ; preds = %do.cond, %do.body1 %indvar = phi i64 [ %indvar.next, %do.cond ], [ 0, %do.body1 ] ; <i64> [#uses=3] - %arrayidx13 = getelementptr [36 x [49 x double]], [36 x [49 x double]]* @A, i64 0, i64 %indvar3, i64 %indvar ; <double*> [#uses=1] - %arrayidx22 = getelementptr [36 x [49 x double]], [36 x [49 x double]]* @B, i64 0, i64 %indvar, i64 %indvar1 ; <double*> [#uses=1] - %tmp6 = load double, double* %arrayidx5 ; <double> [#uses=1] + %arrayidx13 = getelementptr [36 x [49 x double]], ptr @A, i64 0, i64 %indvar3, i64 %indvar ; <ptr> [#uses=1] + %arrayidx22 = getelementptr [36 x [49 x double]], ptr @B, i64 0, i64 %indvar, i64 %indvar1 ; <ptr> [#uses=1] + %tmp6 = load double, ptr %arrayidx5 ; <double> [#uses=1] %mul = fmul double 1.000000e+00, %tmp6 ; <double> [#uses=1] - %tmp14 = load double, double* %arrayidx13 ; <double> [#uses=1] + %tmp14 = load double, ptr %arrayidx13 ; <double> [#uses=1] %mul15 = fmul double 1.000000e+00, %tmp14 ; <double> [#uses=1] - %tmp23 = load double, double* %arrayidx22 ; <double> [#uses=1] + %tmp23 = load double, ptr %arrayidx22 ; <double> [#uses=1] %mul24 = fmul double %mul15, %tmp23 ; <double> [#uses=1] %add = fadd double %mul, %mul24 ; <double> [#uses=1] - store double %add, double* %arrayidx5 + store double %add, ptr %arrayidx5 br label %do.cond do.cond: ; preds = %do.body2 diff --git a/polly/test/DependenceInfo/fine_grain_dep_0.ll b/polly/test/DependenceInfo/fine_grain_dep_0.ll index 460c7b49977c..9c79e360690a 100644 --- a/polly/test/DependenceInfo/fine_grain_dep_0.ll +++ b/polly/test/DependenceInfo/fine_grain_dep_0.ll @@ -32,7 +32,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" ; Function Attrs: nounwind uwtable -define void @test(i8* %a, i8* %b, i64 %N) #0 { +define void @test(ptr %a, ptr %b, i64 %N) #0 { entry: br label %for.cond @@ -43,21 +43,21 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %sub = sub nsw i64 %i.0, 4 - %arrayidx = getelementptr inbounds i8, i8* %a, i64 %sub - %0 = load i8, i8* %arrayidx, align 1 + %arrayidx = getelementptr inbounds i8, ptr %a, i64 %sub + %0 = load i8, ptr %arrayidx, align 1 %conv = sext i8 %0 to i64 %add = add nsw i64 %conv, %i.0 %conv1 = trunc i64 %add to i8 - %arrayidx2 = getelementptr inbounds i8, i8* %a, i64 %i.0 - store i8 %conv1, i8* %arrayidx2, align 1 + %arrayidx2 = getelementptr inbounds i8, ptr %a, i64 %i.0 + store i8 %conv1, ptr %arrayidx2, align 1 %sub3 = sub nsw i64 %i.0, 6 - %arrayidx4 = getelementptr inbounds i8, i8* %b, i64 %sub3 - %1 = load i8, i8* %arrayidx4, align 1 + %arrayidx4 = getelementptr inbounds i8, ptr %b, i64 %sub3 + %1 = load i8, ptr %arrayidx4, align 1 %conv5 = sext i8 %1 to i64 %add6 = add nsw i64 %conv5, %i.0 %conv7 = trunc i64 %add6 to i8 - %arrayidx8 = getelementptr inbounds i8, i8* %b, i64 %i.0 - store i8 %conv7, i8* %arrayidx8, align 1 + %arrayidx8 = getelementptr inbounds i8, ptr %b, i64 %i.0 + store i8 %conv7, ptr %arrayidx8, align 1 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/DependenceInfo/generate_may_write_dependence_info.ll b/polly/test/DependenceInfo/generate_may_write_dependence_info.ll index 7efbf8e5b978..0b7f2d48da9f 100644 --- a/polly/test/DependenceInfo/generate_may_write_dependence_info.ll +++ b/polly/test/DependenceInfo/generate_may_write_dependence_info.ll @@ -10,7 +10,7 @@ target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" ; B.write.from.A: B[i] = A[i]; ; A.must.write.42: A[i] = 42; ; } -define void @f(i32* %A, i32* %B) { +define void @f(ptr %A, ptr %B) { entry: br label %for.cond @@ -20,8 +20,8 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %A.must.write.20, label %for.end A.must.write.20: - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 20, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 20, ptr %arrayidx, align 4 br label %compute.i.square compute.i.square: @@ -31,21 +31,21 @@ compute.i.square: br i1 %tobool, label %B.write.from.A, label %A.may.write.90 A.may.write.90: - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 90, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 90, ptr %arrayidx2, align 4 br label %B.write.from.A B.write.from.A: - %arrayidx4 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp3 = load i32, i32* %arrayidx4, align 4 - %arrayidx6 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv - store i32 %tmp3, i32* %arrayidx6, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp3 = load i32, ptr %arrayidx4, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %B, i64 %indvars.iv + store i32 %tmp3, ptr %arrayidx6, align 4 br label %A.must.write.42 ; br label %for.inc A.must.write.42: - %arrayidx5 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 42, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 42, ptr %arrayidx5, align 4 br label %for.inc for.inc: ; preds = %if.end diff --git a/polly/test/DependenceInfo/infeasible_context.ll b/polly/test/DependenceInfo/infeasible_context.ll index 98ee0b8a114b..d701b821e15c 100644 --- a/polly/test/DependenceInfo/infeasible_context.ll +++ b/polly/test/DependenceInfo/infeasible_context.ll @@ -11,11 +11,11 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739 = type { i32, i32, %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, i32, i32, %struct.plist.0.6.12.66.120.174.216.306.324.336.348.366.378.390.432.444.666.726.732.738* } -%struct.plist.0.6.12.66.120.174.216.306.324.336.348.366.378.390.432.444.666.726.732.738 = type { i32, %struct.plist.0.6.12.66.120.174.216.306.324.336.348.366.378.390.432.444.666.726.732.738* } +%struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739 = type { i32, i32, ptr, ptr, ptr, ptr, ptr, i32, i32, ptr } +%struct.plist.0.6.12.66.120.174.216.306.324.336.348.366.378.390.432.444.666.726.732.738 = type { i32, ptr } -@vFixedEdgeRoot = external global %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, align 8 -@hEdgeRoot = external global %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, align 8 +@vFixedEdgeRoot = external global ptr, align 8 +@hEdgeRoot = external global ptr, align 8 ; Function Attrs: nounwind uwtable define void @readgeo() #0 { @@ -54,7 +54,7 @@ if.else154: ; preds = %if.end116 br label %if.end193 if.end193: ; preds = %if.else154, %if.then120 - %0 = load i32, i32* %vx, align 4 + %0 = load i32, ptr %vx, align 4 br label %for.inc216 for.inc216: ; preds = %if.end193, %if.then93 diff --git a/polly/test/DependenceInfo/may_writes_do_not_block_must_writes_for_war.ll b/polly/test/DependenceInfo/may_writes_do_not_block_must_writes_for_war.ll index 87b145b50539..09c516274708 100644 --- a/polly/test/DependenceInfo/may_writes_do_not_block_must_writes_for_war.ll +++ b/polly/test/DependenceInfo/may_writes_do_not_block_must_writes_for_war.ll @@ -28,7 +28,7 @@ ; target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %sum, i32* %A, i32* %B, i32* %out) { +define void @f(ptr %sum, ptr %A, ptr %B, ptr %out) { entry: br label %for.cond @@ -42,10 +42,10 @@ for.body: ; preds = %for.cond br i1 %tobool, label %if.end, label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %sum, align 4 - %tmp1 = load i32, i32* %out, align 4 + %tmp = load i32, ptr %sum, align 4 + %tmp1 = load i32, ptr %out, align 4 %add = add nsw i32 %tmp1, %tmp - store i32 %add, i32* %out, align 4 + store i32 %add, ptr %out, align 4 br label %if.end if.end: ; preds = %for.body, %S0 @@ -54,13 +54,13 @@ if.end: ; preds = %for.body, %S0 br i1 %tobool1, label %S2, label %S1 S1: ; preds = %if.end - %tmp2 = load i32, i32* %A, align 4 - store i32 %tmp2, i32* %sum, align 4 + %tmp2 = load i32, ptr %A, align 4 + store i32 %tmp2, ptr %sum, align 4 br label %S2 S2: ; preds = %if.end, %S1 - %tmp3 = load i32, i32* %B, align 4 - store i32 %tmp3, i32* %sum, align 4 + %tmp3 = load i32, ptr %B, align 4 + store i32 %tmp3, ptr %sum, align 4 br label %for.inc for.inc: ; preds = %S2 diff --git a/polly/test/DependenceInfo/nonaffine-condition-buildMemoryAccess.ll b/polly/test/DependenceInfo/nonaffine-condition-buildMemoryAccess.ll index c216c45256f5..25c7e3d6e442 100644 --- a/polly/test/DependenceInfo/nonaffine-condition-buildMemoryAccess.ll +++ b/polly/test/DependenceInfo/nonaffine-condition-buildMemoryAccess.ll @@ -43,11 +43,11 @@ for.cond.cleanup: ; preds = %for.inc11 for.body: ; preds = %for.inc11, %entry.split %indvars.iv25 = phi i64 [ 0, %entry.split ], [ %indvars.iv.next26, %for.inc11 ] - %arrayidx = getelementptr inbounds [1000 x i32], [1000 x i32]* @C, i64 0, i64 %indvars.iv25 - %0 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds [1000 x i32], ptr @C, i64 0, i64 %indvars.iv25 + %0 = load i32, ptr %arrayidx, align 4 %1 = trunc i64 %indvars.iv25 to i32 %add = add nsw i32 %0, %1 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 %tobool = icmp eq i32 %add, 0 br i1 %tobool, label %for.inc11, label %for.body5.preheader @@ -56,14 +56,14 @@ for.body5.preheader: ; preds = %for.body for.body5: ; preds = %for.body5.preheader, %for.body5 %indvars.iv = phi i64 [ %indvars.iv.next, %for.body5 ], [ 0, %for.body5.preheader ] - %arrayidx7 = getelementptr inbounds [1000 x i32], [1000 x i32]* @A, i64 0, i64 %indvars.iv - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds [1000 x i32], ptr @A, i64 0, i64 %indvars.iv + store i32 1, ptr %arrayidx7, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv, 699 br i1 %exitcond, label %for.end, label %for.body5 for.end: ; preds = %for.body5 - store i32 2, i32* getelementptr inbounds ([1000 x i32], [1000 x i32]* @B, i64 0, i64 700), align 4 + store i32 2, ptr getelementptr inbounds ([1000 x i32], ptr @B, i64 0, i64 700), align 4 br label %for.inc11 for.inc11: ; preds = %for.body, %for.end diff --git a/polly/test/DependenceInfo/reduction_complex_location.ll b/polly/test/DependenceInfo/reduction_complex_location.ll index 711f54d633da..7ca839996326 100644 --- a/polly/test/DependenceInfo/reduction_complex_location.ll +++ b/polly/test/DependenceInfo/reduction_complex_location.ll @@ -18,7 +18,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %for.cond @@ -39,10 +39,10 @@ for.body3: ; preds = %for.cond1 %mul = mul nsw i32 %j.0, %i.0 %mul4 = shl nsw i32 %j.0, 1 %add = add nsw i32 %i.0, %mul4 - %arrayidx = getelementptr inbounds i32, i32* %sum, i32 %add - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sum, i32 %add + %tmp = load i32, ptr %arrayidx, align 4 %add5 = add nsw i32 %tmp, %mul - store i32 %add5, i32* %arrayidx, align 4 + store i32 %add5, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/DependenceInfo/reduction_dependences_equal_non_reduction_dependences.ll b/polly/test/DependenceInfo/reduction_dependences_equal_non_reduction_dependences.ll index 80adf845f3df..3632bd202da2 100644 --- a/polly/test/DependenceInfo/reduction_dependences_equal_non_reduction_dependences.ll +++ b/polly/test/DependenceInfo/reduction_dependences_equal_non_reduction_dependences.ll @@ -23,7 +23,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @AandSum(i32* noalias %sum, i32* noalias %A) { +define void @AandSum(ptr noalias %sum, ptr noalias %A) { entry: br label %for.cond @@ -33,24 +33,24 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %sub = add nsw i32 %i.0, -1 - %arrayidx1 = getelementptr inbounds i32, i32* %A, i32 %sub - %tmp1 = load i32, i32* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %A, i32 %sub + %tmp1 = load i32, ptr %arrayidx1, align 4 %add = add nsw i32 %tmp, %tmp1 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i32 %i.0 - store i32 %add, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i32 %i.0 + store i32 %add, ptr %arrayidx2, align 4 %sub4 = add nsw i32 %i.0, -2 - %arrayidx5 = getelementptr inbounds i32, i32* %A, i32 %sub4 - %tmp2 = load i32, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %A, i32 %sub4 + %tmp2 = load i32, ptr %arrayidx5, align 4 %add6 = add nsw i32 %add, %tmp2 %sub7 = add nsw i32 %i.0, -1 - %arrayidx8 = getelementptr inbounds i32, i32* %A, i32 %sub7 - store i32 %add6, i32* %arrayidx8, align 4 - %tmp3 = load i32, i32* %sum, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %A, i32 %sub7 + store i32 %add6, ptr %arrayidx8, align 4 + %tmp3 = load i32, ptr %sum, align 4 %add9 = add nsw i32 %tmp3, %i.0 - store i32 %add9, i32* %sum, align 4 + store i32 %add9, ptr %sum, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/DependenceInfo/reduction_dependences_not_null.ll b/polly/test/DependenceInfo/reduction_dependences_not_null.ll index 8e3d983cb0ad..69fd74478ecc 100644 --- a/polly/test/DependenceInfo/reduction_dependences_not_null.ll +++ b/polly/test/DependenceInfo/reduction_dependences_not_null.ll @@ -14,8 +14,8 @@ entry: S1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %S1 ] - %arrayidx.1 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.1 - store i32 2, i32* %arrayidx.1 + %arrayidx.1 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.1 + store i32 2, ptr %arrayidx.1 %indvar.next.1 = add i64 %indvar.1, 1 %exitcond.1 = icmp ne i64 %indvar.next.1, 100 br i1 %exitcond.1, label %S1, label %exit.1 diff --git a/polly/test/DependenceInfo/reduction_mixed_reduction_and_non_reduction_dependences.ll b/polly/test/DependenceInfo/reduction_mixed_reduction_and_non_reduction_dependences.ll index d6164ec6bfab..71903d9e7111 100644 --- a/polly/test/DependenceInfo/reduction_mixed_reduction_and_non_reduction_dependences.ll +++ b/polly/test/DependenceInfo/reduction_mixed_reduction_and_non_reduction_dependences.ll @@ -16,7 +16,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %for.cond @@ -34,12 +34,12 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %sum, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sum, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 3 %add4 = add nsw i32 %i.0, %j.0 - %arrayidx5 = getelementptr inbounds i32, i32* %sum, i32 %add4 - store i32 %add, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %sum, i32 %add4 + store i32 %add, ptr %arrayidx5, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/DependenceInfo/reduction_multiple_loops_array_sum.ll b/polly/test/DependenceInfo/reduction_multiple_loops_array_sum.ll index e2e7eada5d90..234de5c367a0 100644 --- a/polly/test/DependenceInfo/reduction_multiple_loops_array_sum.ll +++ b/polly/test/DependenceInfo/reduction_multiple_loops_array_sum.ll @@ -19,7 +19,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* noalias %A, i32* noalias %sum) { +define void @f(ptr noalias %A, ptr noalias %sum) { entry: br label %for.cond @@ -29,9 +29,9 @@ for.cond: ; preds = %for.inc11, %entry br i1 %exitcond2, label %for.body, label %for.end13 for.body: ; preds = %for.cond - %tmp = load i32, i32* %sum, align 4 + %tmp = load i32, ptr %sum, align 4 %mul = mul nsw i32 %tmp, 7 - store i32 %mul, i32* %sum, align 4 + store i32 %mul, ptr %sum, align 4 br label %for.cond1 for.cond1: ; preds = %for.inc8, %for.body @@ -41,11 +41,11 @@ for.cond1: ; preds = %for.inc8, %for.body for.body3: ; preds = %for.cond1 %add = add nsw i32 %i.0, %j.0 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %add - %tmp3 = load i32, i32* %arrayidx, align 4 - %tmp4 = load i32, i32* %sum, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %add + %tmp3 = load i32, ptr %arrayidx, align 4 + %tmp4 = load i32, ptr %sum, align 4 %add4 = add nsw i32 %tmp4, %tmp3 - store i32 %add4, i32* %sum, align 4 + store i32 %add4, ptr %sum, align 4 br label %for.cond5 for.cond5: ; preds = %for.inc, %for.body3 diff --git a/polly/test/DependenceInfo/reduction_multiple_loops_array_sum_2.ll b/polly/test/DependenceInfo/reduction_multiple_loops_array_sum_2.ll index 730a4abc47c0..acd674dc0117 100644 --- a/polly/test/DependenceInfo/reduction_multiple_loops_array_sum_2.ll +++ b/polly/test/DependenceInfo/reduction_multiple_loops_array_sum_2.ll @@ -21,7 +21,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* noalias %A, i32* noalias %sum) { +define void @f(ptr noalias %A, ptr noalias %sum) { entry: br label %for.cond @@ -40,11 +40,11 @@ for.cond1: ; preds = %for.inc8, %for.body for.body3: ; preds = %for.cond1 %add = add nsw i32 %i.0, %j.0 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %add - %tmp3 = load i32, i32* %arrayidx, align 4 - %tmp4 = load i32, i32* %sum, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %add + %tmp3 = load i32, ptr %arrayidx, align 4 + %tmp4 = load i32, ptr %sum, align 4 %add4 = add nsw i32 %tmp4, %tmp3 - store i32 %add4, i32* %sum, align 4 + store i32 %add4, ptr %sum, align 4 br label %for.cond5 for.cond5: ; preds = %for.inc, %for.body3 diff --git a/polly/test/DependenceInfo/reduction_multiple_loops_array_sum_3.ll b/polly/test/DependenceInfo/reduction_multiple_loops_array_sum_3.ll index d15a5d82ac6c..bdfcfc99c8cb 100644 --- a/polly/test/DependenceInfo/reduction_multiple_loops_array_sum_3.ll +++ b/polly/test/DependenceInfo/reduction_multiple_loops_array_sum_3.ll @@ -19,14 +19,14 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" declare i64 @g(i64) -define i32 @f(i32* noalias %A) { +define i32 @f(ptr noalias %A) { entry: %sum.04.reg2mem = alloca i32 %sum.12.reg2mem = alloca i32 br label %entry.split entry.split: ; preds = %entry - store i32 0, i32* %sum.04.reg2mem + store i32 0, ptr %sum.04.reg2mem br label %for.body_outer_split for.body_outer_split: ; preds = %entry.split, %for.inc5 @@ -40,34 +40,34 @@ for.body_outer: ; preds = %for.body_outer_spli for.body: ; preds = %for.inc5, %for.body_outer %indvars.iv23 = phi i64 [ 0, %for.body_outer ], [ %3, %for.inc5 ] - %sum.04.reload = load i32, i32* %sum.04.reg2mem + %sum.04.reload = load i32, ptr %sum.04.reg2mem %mul = shl nsw i32 %sum.04.reload, 1 - store i32 %mul, i32* %sum.12.reg2mem + store i32 %mul, ptr %sum.12.reg2mem br label %for.inc for.inc: ; preds = %for.inc, %for.body %indvars.iv1 = phi i64 [ 0, %for.body ], [ %1, %for.inc ] - %sum.12.reload = load i32, i32* %sum.12.reg2mem + %sum.12.reload = load i32, ptr %sum.12.reg2mem %0 = add i64 %indvars.iv23, %indvars.iv1 - %arrayidx = getelementptr i32, i32* %A, i64 %0 - %tmp5 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr i32, ptr %A, i64 %0 + %tmp5 = load i32, ptr %arrayidx, align 4 %add4 = add nsw i32 %tmp5, %sum.12.reload %1 = add nuw nsw i64 %indvars.iv1, 1 %exitcond1 = icmp eq i64 %1, 100 - store i32 %add4, i32* %sum.12.reg2mem + store i32 %add4, ptr %sum.12.reg2mem br i1 %exitcond1, label %for.inc5, label %for.inc for.inc5: ; preds = %for.inc - %2 = load i32, i32* %sum.12.reg2mem + %2 = load i32, ptr %sum.12.reg2mem %3 = add nuw nsw i64 %indvars.iv23, 1 %exitcond2 = icmp eq i64 %3, 100 - store i32 %2, i32* %sum.04.reg2mem + store i32 %2, ptr %sum.04.reg2mem br i1 %exitcond2, label %for.bos2, label %for.body for.bos2: br label %for.body_outer_split for.end7: ; preds = %for.inc5 - %4 = load i32, i32* %sum.04.reg2mem + %4 = load i32, ptr %sum.04.reg2mem ret i32 %4 } diff --git a/polly/test/DependenceInfo/reduction_multiple_reductions.ll b/polly/test/DependenceInfo/reduction_multiple_reductions.ll index 3bcd38416a59..cf705080e03d 100644 --- a/polly/test/DependenceInfo/reduction_multiple_reductions.ll +++ b/polly/test/DependenceInfo/reduction_multiple_reductions.ll @@ -21,7 +21,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* noalias %sum, i32* noalias %prod) { +define void @f(ptr noalias %sum, ptr noalias %prod) { entry: br label %for.cond @@ -35,15 +35,15 @@ for.body: ; preds = %for.cond br i1 %cmp1, label %if.then, label %if.else if.then: ; preds = %for.body - %tmp = load i32, i32* %sum, align 4 + %tmp = load i32, ptr %sum, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %sum, align 4 + store i32 %add, ptr %sum, align 4 br label %if.end if.else: ; preds = %for.body - %tmp1 = load i32, i32* %prod, align 4 + %tmp1 = load i32, ptr %prod, align 4 %mul = mul nsw i32 %tmp1, %i.0 - store i32 %mul, i32* %prod, align 4 + store i32 %mul, ptr %prod, align 4 br label %if.end if.end: ; preds = %if.else, %if.then diff --git a/polly/test/DependenceInfo/reduction_multiple_reductions_2.ll b/polly/test/DependenceInfo/reduction_multiple_reductions_2.ll index 1a9b70d0d82e..8d8557a129ab 100644 --- a/polly/test/DependenceInfo/reduction_multiple_reductions_2.ll +++ b/polly/test/DependenceInfo/reduction_multiple_reductions_2.ll @@ -31,7 +31,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* noalias %red) { +define void @f(ptr noalias %red) { entry: br label %for.cond @@ -44,10 +44,10 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %red, align 4 + %tmp = load i32, ptr %red, align 4 %mul = mul nsw i32 %tmp, 5 %add = add nsw i32 %mul, 42 - store i32 %add, i32* %red, align 4 + store i32 %add, ptr %red, align 4 br label %for.cond1 for.cond1: ; preds = %for.inc, %S0 @@ -59,9 +59,9 @@ for.body3: ; preds = %for.cond1 br label %S1 S1: ; preds = %for.body3 - %tmp3 = load i32, i32* %red, align 4 + %tmp3 = load i32, ptr %red, align 4 %mul4 = mul nsw i32 %tmp3, %i.0 - store i32 %mul4, i32* %red, align 4 + store i32 %mul4, ptr %red, align 4 br label %for.inc for.inc: ; preds = %S1 @@ -80,9 +80,9 @@ for.body8: ; preds = %for.cond6 br label %S2 S2: ; preds = %for.body8 - %tmp4 = load i32, i32* %red, align 4 + %tmp4 = load i32, ptr %red, align 4 %add9 = add nsw i32 %tmp4, %i5.0 - store i32 %add9, i32* %red, align 4 + store i32 %add9, ptr %red, align 4 br label %for.inc10 for.inc10: ; preds = %S2 @@ -93,10 +93,10 @@ for.end12: ; preds = %for.cond6 br label %S3 S3: ; preds = %for.end12 - %tmp5 = load i32, i32* %red, align 4 + %tmp5 = load i32, ptr %red, align 4 %mul13 = mul nsw i32 %tmp5, 7 %add14 = add nsw i32 %mul13, 42 - store i32 %add14, i32* %red, align 4 + store i32 %add14, ptr %red, align 4 br label %for.inc15 for.inc15: ; preds = %S3 diff --git a/polly/test/DependenceInfo/reduction_only_reduction_like_access.ll b/polly/test/DependenceInfo/reduction_only_reduction_like_access.ll index 62f69e162c5d..7b4a68a2a897 100644 --- a/polly/test/DependenceInfo/reduction_only_reduction_like_access.ll +++ b/polly/test/DependenceInfo/reduction_only_reduction_like_access.ll @@ -17,7 +17,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %for.cond @@ -28,11 +28,11 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %sub = sub nsw i32 99, %i.0 - %arrayidx = getelementptr inbounds i32, i32* %sum, i32 %sub - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sum, i32 %sub + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - %arrayidx1 = getelementptr inbounds i32, i32* %sum, i32 %i.0 - store i32 %add, i32* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %sum, i32 %i.0 + store i32 %add, ptr %arrayidx1, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/DependenceInfo/reduction_partially_escaping_intermediate_in_other_stmt.ll b/polly/test/DependenceInfo/reduction_partially_escaping_intermediate_in_other_stmt.ll index 8a1fc6fd0ac1..0d09e5a861a0 100644 --- a/polly/test/DependenceInfo/reduction_partially_escaping_intermediate_in_other_stmt.ll +++ b/polly/test/DependenceInfo/reduction_partially_escaping_intermediate_in_other_stmt.ll @@ -14,7 +14,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32 %N, i32* noalias %sums, i32* noalias %escape) { +define void @f(i32 %N, ptr noalias %sums, ptr noalias %escape) { entry: br label %for.cond @@ -32,22 +32,22 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %sums, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sums, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 5 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 %sub = sub nsw i32 %N, %i.0 %add4 = add nsw i32 %sub, %j.0 %cmp5 = icmp slt i32 %add4, 1024 br i1 %cmp5, label %if.then, label %if.end if.then: ; preds = %for.body3 - %arrayidx6 = getelementptr inbounds i32, i32* %sums, i32 %i.0 - %tmp2 = load i32, i32* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %sums, i32 %i.0 + %tmp2 = load i32, ptr %arrayidx6, align 4 %sub7 = sub nsw i32 %N, %i.0 %add8 = add nsw i32 %sub7, %j.0 - %arrayidx9 = getelementptr inbounds i32, i32* %escape, i32 %add8 - store i32 %tmp2, i32* %arrayidx9, align 4 + %arrayidx9 = getelementptr inbounds i32, ptr %escape, i32 %add8 + store i32 %tmp2, ptr %arrayidx9, align 4 br label %if.end if.end: ; preds = %if.then, %for.body3 diff --git a/polly/test/DependenceInfo/reduction_privatization_deps.ll b/polly/test/DependenceInfo/reduction_privatization_deps.ll index 8155e4cdaf91..ce90e21a898d 100644 --- a/polly/test/DependenceInfo/reduction_privatization_deps.ll +++ b/polly/test/DependenceInfo/reduction_privatization_deps.ll @@ -16,11 +16,11 @@ ; for (int j = 0; j < 1024; j++) ; S1: sum[i + j] += i; ; for (int i = 0; i < 1024; i++) -; S2: sum[i] = sum[i + 1] * 3; +; S2: sum[i] = sumptr 3; ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %for.cond @@ -33,8 +33,8 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %sum, i32 %i.0 - store i32 0, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sum, i32 %i.0 + store i32 0, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -62,10 +62,10 @@ for.body7: ; preds = %for.cond5 S1: ; preds = %for.body7 %add = add nsw i32 %i1.0, %j.0 - %arrayidx8 = getelementptr inbounds i32, i32* %sum, i32 %add - %tmp = load i32, i32* %arrayidx8, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %sum, i32 %add + %tmp = load i32, ptr %arrayidx8, align 4 %add9 = add nsw i32 %tmp, %i1.0 - store i32 %add9, i32* %arrayidx8, align 4 + store i32 %add9, ptr %arrayidx8, align 4 br label %for.inc10 for.inc10: ; preds = %S1 @@ -92,11 +92,11 @@ for.body19: ; preds = %for.cond17 S2: ; preds = %for.body19 %add20 = add nsw i32 %i16.0, 1 - %arrayidx21 = getelementptr inbounds i32, i32* %sum, i32 %add20 - %tmp4 = load i32, i32* %arrayidx21, align 4 + %arrayidx21 = getelementptr inbounds i32, ptr %sum, i32 %add20 + %tmp4 = load i32, ptr %arrayidx21, align 4 %mul = mul nsw i32 %tmp4, 3 - %arrayidx22 = getelementptr inbounds i32, i32* %sum, i32 %i16.0 - store i32 %mul, i32* %arrayidx22, align 4 + %arrayidx22 = getelementptr inbounds i32, ptr %sum, i32 %i16.0 + store i32 %mul, ptr %arrayidx22, align 4 br label %for.inc23 for.inc23: ; preds = %S2 diff --git a/polly/test/DependenceInfo/reduction_privatization_deps_2.ll b/polly/test/DependenceInfo/reduction_privatization_deps_2.ll index 8d98f9d8e491..4904004d4781 100644 --- a/polly/test/DependenceInfo/reduction_privatization_deps_2.ll +++ b/polly/test/DependenceInfo/reduction_privatization_deps_2.ll @@ -24,7 +24,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %for.cond @@ -38,10 +38,10 @@ for.body: ; preds = %for.cond S1: ; preds = %for.body %add = add nsw i32 %i.0, 1 - %arrayidx = getelementptr inbounds i32, i32* %sum, i32 %add - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sum, i32 %add + %tmp = load i32, ptr %arrayidx, align 4 %add1 = add nsw i32 %tmp, 42 - store i32 %add1, i32* %arrayidx, align 4 + store i32 %add1, ptr %arrayidx, align 4 br label %for.cond2 for.cond2: ; preds = %for.inc, %S1 @@ -54,10 +54,10 @@ for.body4: ; preds = %for.cond2 S2: ; preds = %for.body4 %mul = mul nsw i32 %i.0, %j.0 - %arrayidx5 = getelementptr inbounds i32, i32* %sum, i32 %i.0 - %tmp2 = load i32, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %sum, i32 %i.0 + %tmp2 = load i32, ptr %arrayidx5, align 4 %add6 = add nsw i32 %tmp2, %mul - store i32 %add6, i32* %arrayidx5, align 4 + store i32 %add6, ptr %arrayidx5, align 4 br label %for.inc for.inc: ; preds = %S2 @@ -69,10 +69,10 @@ for.end: ; preds = %for.cond2 S3: ; preds = %for.end %add7 = add nsw i32 %i.0, 1 - %arrayidx8 = getelementptr inbounds i32, i32* %sum, i32 %add7 - %tmp3 = load i32, i32* %arrayidx8, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %sum, i32 %add7 + %tmp3 = load i32, ptr %arrayidx8, align 4 %add9 = add nsw i32 %tmp3, 7 - store i32 %add9, i32* %arrayidx8, align 4 + store i32 %add9, ptr %arrayidx8, align 4 br label %for.inc10 for.inc10: ; preds = %S3 diff --git a/polly/test/DependenceInfo/reduction_privatization_deps_3.ll b/polly/test/DependenceInfo/reduction_privatization_deps_3.ll index 626ff133a46b..a3935ebd6cc4 100644 --- a/polly/test/DependenceInfo/reduction_privatization_deps_3.ll +++ b/polly/test/DependenceInfo/reduction_privatization_deps_3.ll @@ -21,7 +21,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %for.cond @@ -35,10 +35,10 @@ for.body: ; preds = %for.cond S1: ; preds = %for.body %add = add nsw i32 %i.0, 1 - %arrayidx = getelementptr inbounds i32, i32* %sum, i32 %add - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sum, i32 %add + %tmp = load i32, ptr %arrayidx, align 4 %add1 = add nsw i32 %tmp, 42 - store i32 %add1, i32* %arrayidx, align 4 + store i32 %add1, ptr %arrayidx, align 4 br label %for.cond2 for.cond2: ; preds = %for.inc, %S1 @@ -52,10 +52,10 @@ for.body4: ; preds = %for.cond2 S2: ; preds = %for.body4 %mul = mul nsw i32 %i.0, %j.0 %sub = sub nsw i32 %i.0, %j.0 - %arrayidx5 = getelementptr inbounds i32, i32* %sum, i32 %sub - %tmp2 = load i32, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %sum, i32 %sub + %tmp2 = load i32, ptr %arrayidx5, align 4 %add6 = add nsw i32 %tmp2, %mul - store i32 %add6, i32* %arrayidx5, align 4 + store i32 %add6, ptr %arrayidx5, align 4 br label %for.inc for.inc: ; preds = %S2 @@ -67,10 +67,10 @@ for.end: ; preds = %for.cond2 S3: ; preds = %for.end %sub7 = add nsw i32 %i.0, -1 - %arrayidx8 = getelementptr inbounds i32, i32* %sum, i32 %sub7 - %tmp3 = load i32, i32* %arrayidx8, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %sum, i32 %sub7 + %tmp3 = load i32, ptr %arrayidx8, align 4 %add9 = add nsw i32 %tmp3, 7 - store i32 %add9, i32* %arrayidx8, align 4 + store i32 %add9, ptr %arrayidx8, align 4 br label %for.inc10 for.inc10: ; preds = %S3 diff --git a/polly/test/DependenceInfo/reduction_privatization_deps_4.ll b/polly/test/DependenceInfo/reduction_privatization_deps_4.ll index d496f4965a5f..10d726af5145 100644 --- a/polly/test/DependenceInfo/reduction_privatization_deps_4.ll +++ b/polly/test/DependenceInfo/reduction_privatization_deps_4.ll @@ -20,7 +20,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %for.cond @@ -33,10 +33,10 @@ for.body: ; preds = %for.cond br label %S1 S1: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %sum, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sum, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 42 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.cond1 for.cond1: ; preds = %for.inc, %S1 @@ -49,10 +49,10 @@ for.body3: ; preds = %for.cond1 S2: ; preds = %for.body3 %mul = mul nsw i32 %i.0, %j.0 - %arrayidx4 = getelementptr inbounds i32, i32* %sum, i32 %j.0 - %tmp2 = load i32, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %sum, i32 %j.0 + %tmp2 = load i32, ptr %arrayidx4, align 4 %add5 = add nsw i32 %tmp2, %mul - store i32 %add5, i32* %arrayidx4, align 4 + store i32 %add5, ptr %arrayidx4, align 4 br label %for.inc for.inc: ; preds = %S2 @@ -63,10 +63,10 @@ for.end: ; preds = %for.cond1 br label %S3 S3: ; preds = %for.end - %arrayidx6 = getelementptr inbounds i32, i32* %sum, i32 %i.0 - %tmp3 = load i32, i32* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %sum, i32 %i.0 + %tmp3 = load i32, ptr %arrayidx6, align 4 %add7 = add nsw i32 %tmp3, 7 - store i32 %add7, i32* %arrayidx6, align 4 + store i32 %add7, ptr %arrayidx6, align 4 br label %for.inc8 for.inc8: ; preds = %S3 diff --git a/polly/test/DependenceInfo/reduction_privatization_deps_5.ll b/polly/test/DependenceInfo/reduction_privatization_deps_5.ll index 47429ecdf1a4..e8d51181725e 100644 --- a/polly/test/DependenceInfo/reduction_privatization_deps_5.ll +++ b/polly/test/DependenceInfo/reduction_privatization_deps_5.ll @@ -20,7 +20,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %for.cond @@ -41,10 +41,10 @@ for.body3: ; preds = %for.cond1 br label %S1 S1: ; preds = %for.body3 - %arrayidx = getelementptr inbounds i32, i32* %sum, i32 %j.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sum, i32 %j.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 42 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %S1 @@ -64,10 +64,10 @@ for.body6: ; preds = %for.cond4 S2: ; preds = %for.body6 %mul = mul nsw i32 %i.0, %j.1 - %arrayidx7 = getelementptr inbounds i32, i32* %sum, i32 %j.1 - %tmp3 = load i32, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %sum, i32 %j.1 + %tmp3 = load i32, ptr %arrayidx7, align 4 %add8 = add nsw i32 %tmp3, %mul - store i32 %add8, i32* %arrayidx7, align 4 + store i32 %add8, ptr %arrayidx7, align 4 br label %for.inc9 for.inc9: ; preds = %S2 diff --git a/polly/test/DependenceInfo/reduction_sequence.ll b/polly/test/DependenceInfo/reduction_sequence.ll index 5436c783ad59..4a4688953938 100644 --- a/polly/test/DependenceInfo/reduction_sequence.ll +++ b/polly/test/DependenceInfo/reduction_sequence.ll @@ -73,7 +73,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @manyreductions(i64* %A) { +define void @manyreductions(ptr %A) { bb: br label %bb28 @@ -91,9 +91,9 @@ bb30: ; preds = %bb33, %bb29 br i1 %exitcond26, label %bb31, label %bb35 bb31: ; preds = %bb30 - %tmp = load i64, i64* %A, align 8 + %tmp = load i64, ptr %A, align 8 %tmp32 = add nsw i64 %tmp, 42 - store i64 %tmp32, i64* %A, align 8 + store i64 %tmp32, ptr %A, align 8 br label %bb33 bb33: ; preds = %bb31 @@ -124,9 +124,9 @@ bb41: ; preds = %bb45, %bb40 br i1 %exitcond24, label %bb42, label %bb47 bb42: ; preds = %bb41 - %tmp43 = load i64, i64* %A, align 8 + %tmp43 = load i64, ptr %A, align 8 %tmp44 = add nsw i64 %tmp43, 42 - store i64 %tmp44, i64* %A, align 8 + store i64 %tmp44, ptr %A, align 8 br label %bb45 bb45: ; preds = %bb42 @@ -157,9 +157,9 @@ bb53: ; preds = %bb57, %bb52 br i1 %exitcond22, label %bb54, label %bb59 bb54: ; preds = %bb53 - %tmp55 = load i64, i64* %A, align 8 + %tmp55 = load i64, ptr %A, align 8 %tmp56 = add nsw i64 %tmp55, 42 - store i64 %tmp56, i64* %A, align 8 + store i64 %tmp56, ptr %A, align 8 br label %bb57 bb57: ; preds = %bb54 @@ -190,9 +190,9 @@ bb65: ; preds = %bb69, %bb64 br i1 %exitcond20, label %bb66, label %bb71 bb66: ; preds = %bb65 - %tmp67 = load i64, i64* %A, align 8 + %tmp67 = load i64, ptr %A, align 8 %tmp68 = add nsw i64 %tmp67, 42 - store i64 %tmp68, i64* %A, align 8 + store i64 %tmp68, ptr %A, align 8 br label %bb69 bb69: ; preds = %bb66 @@ -223,9 +223,9 @@ bb77: ; preds = %bb81, %bb76 br i1 %exitcond18, label %bb78, label %bb83 bb78: ; preds = %bb77 - %tmp79 = load i64, i64* %A, align 8 + %tmp79 = load i64, ptr %A, align 8 %tmp80 = add nsw i64 %tmp79, 42 - store i64 %tmp80, i64* %A, align 8 + store i64 %tmp80, ptr %A, align 8 br label %bb81 bb81: ; preds = %bb78 @@ -256,9 +256,9 @@ bb89: ; preds = %bb93, %bb88 br i1 %exitcond16, label %bb90, label %bb95 bb90: ; preds = %bb89 - %tmp91 = load i64, i64* %A, align 8 + %tmp91 = load i64, ptr %A, align 8 %tmp92 = add nsw i64 %tmp91, 42 - store i64 %tmp92, i64* %A, align 8 + store i64 %tmp92, ptr %A, align 8 br label %bb93 bb93: ; preds = %bb90 @@ -289,9 +289,9 @@ bb101: ; preds = %bb105, %bb100 br i1 %exitcond14, label %bb102, label %bb107 bb102: ; preds = %bb101 - %tmp103 = load i64, i64* %A, align 8 + %tmp103 = load i64, ptr %A, align 8 %tmp104 = add nsw i64 %tmp103, 42 - store i64 %tmp104, i64* %A, align 8 + store i64 %tmp104, ptr %A, align 8 br label %bb105 bb105: ; preds = %bb102 @@ -322,9 +322,9 @@ bb113: ; preds = %bb117, %bb112 br i1 %exitcond12, label %bb114, label %bb119 bb114: ; preds = %bb113 - %tmp115 = load i64, i64* %A, align 8 + %tmp115 = load i64, ptr %A, align 8 %tmp116 = add nsw i64 %tmp115, 42 - store i64 %tmp116, i64* %A, align 8 + store i64 %tmp116, ptr %A, align 8 br label %bb117 bb117: ; preds = %bb114 @@ -355,9 +355,9 @@ bb125: ; preds = %bb129, %bb124 br i1 %exitcond10, label %bb126, label %bb131 bb126: ; preds = %bb125 - %tmp127 = load i64, i64* %A, align 8 + %tmp127 = load i64, ptr %A, align 8 %tmp128 = add nsw i64 %tmp127, 42 - store i64 %tmp128, i64* %A, align 8 + store i64 %tmp128, ptr %A, align 8 br label %bb129 bb129: ; preds = %bb126 @@ -388,9 +388,9 @@ bb137: ; preds = %bb141, %bb136 br i1 %exitcond8, label %bb138, label %bb143 bb138: ; preds = %bb137 - %tmp139 = load i64, i64* %A, align 8 + %tmp139 = load i64, ptr %A, align 8 %tmp140 = add nsw i64 %tmp139, 42 - store i64 %tmp140, i64* %A, align 8 + store i64 %tmp140, ptr %A, align 8 br label %bb141 bb141: ; preds = %bb138 @@ -421,9 +421,9 @@ bb149: ; preds = %bb153, %bb148 br i1 %exitcond6, label %bb150, label %bb155 bb150: ; preds = %bb149 - %tmp151 = load i64, i64* %A, align 8 + %tmp151 = load i64, ptr %A, align 8 %tmp152 = add nsw i64 %tmp151, 42 - store i64 %tmp152, i64* %A, align 8 + store i64 %tmp152, ptr %A, align 8 br label %bb153 bb153: ; preds = %bb150 @@ -454,9 +454,9 @@ bb161: ; preds = %bb165, %bb160 br i1 %exitcond4, label %bb162, label %bb167 bb162: ; preds = %bb161 - %tmp163 = load i64, i64* %A, align 8 + %tmp163 = load i64, ptr %A, align 8 %tmp164 = add nsw i64 %tmp163, 42 - store i64 %tmp164, i64* %A, align 8 + store i64 %tmp164, ptr %A, align 8 br label %bb165 bb165: ; preds = %bb162 @@ -487,9 +487,9 @@ bb173: ; preds = %bb177, %bb172 br i1 %exitcond2, label %bb174, label %bb179 bb174: ; preds = %bb173 - %tmp175 = load i64, i64* %A, align 8 + %tmp175 = load i64, ptr %A, align 8 %tmp176 = add nsw i64 %tmp175, 42 - store i64 %tmp176, i64* %A, align 8 + store i64 %tmp176, ptr %A, align 8 br label %bb177 bb177: ; preds = %bb174 @@ -520,9 +520,9 @@ bb185: ; preds = %bb189, %bb184 br i1 %exitcond, label %bb186, label %bb191 bb186: ; preds = %bb185 - %tmp187 = load i64, i64* %A, align 8 + %tmp187 = load i64, ptr %A, align 8 %tmp188 = add nsw i64 %tmp187, 42 - store i64 %tmp188, i64* %A, align 8 + store i64 %tmp188, ptr %A, align 8 br label %bb189 bb189: ; preds = %bb186 diff --git a/polly/test/DependenceInfo/reduction_simple_iv.ll b/polly/test/DependenceInfo/reduction_simple_iv.ll index 3aa026da480d..e3307afae08b 100644 --- a/polly/test/DependenceInfo/reduction_simple_iv.ll +++ b/polly/test/DependenceInfo/reduction_simple_iv.ll @@ -15,7 +15,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %entry.split1 @@ -27,11 +27,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end diff --git a/polly/test/DependenceInfo/reduction_simple_iv_debug_wrapped_dependences.ll b/polly/test/DependenceInfo/reduction_simple_iv_debug_wrapped_dependences.ll index 885aa13a8387..c7651c39a563 100644 --- a/polly/test/DependenceInfo/reduction_simple_iv_debug_wrapped_dependences.ll +++ b/polly/test/DependenceInfo/reduction_simple_iv_debug_wrapped_dependences.ll @@ -70,7 +70,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %entry.split1 @@ -82,11 +82,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end diff --git a/polly/test/DependenceInfo/reduction_simple_privatization_deps_2.ll b/polly/test/DependenceInfo/reduction_simple_privatization_deps_2.ll index 042ec435f269..b61fd8453a8c 100644 --- a/polly/test/DependenceInfo/reduction_simple_privatization_deps_2.ll +++ b/polly/test/DependenceInfo/reduction_simple_privatization_deps_2.ll @@ -20,7 +20,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %for.cond @@ -33,9 +33,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %sum, align 4 + %tmp = load i32, ptr %sum, align 4 %mul = mul nsw i32 %tmp, 42 - store i32 %mul, i32* %sum, align 4 + store i32 %mul, ptr %sum, align 4 br label %for.cond1 for.cond1: ; preds = %for.inc, %S0 @@ -48,9 +48,9 @@ for.body3: ; preds = %for.cond1 S1: ; preds = %for.body3 %mul4 = mul nsw i32 %i.0, %j.0 - %tmp2 = load i32, i32* %sum, align 4 + %tmp2 = load i32, ptr %sum, align 4 %add = add nsw i32 %tmp2, %mul4 - store i32 %add, i32* %sum, align 4 + store i32 %add, ptr %sum, align 4 br label %for.inc for.inc: ; preds = %S1 @@ -61,9 +61,9 @@ for.end: ; preds = %for.cond1 br label %S2 S2: ; preds = %for.end - %tmp3 = load i32, i32* %sum, align 4 + %tmp3 = load i32, ptr %sum, align 4 %mul5 = mul nsw i32 %tmp3, 7 - store i32 %mul5, i32* %sum, align 4 + store i32 %mul5, ptr %sum, align 4 br label %for.inc6 for.inc6: ; preds = %S2 diff --git a/polly/test/DependenceInfo/reduction_simple_privatization_deps_w_parameter.ll b/polly/test/DependenceInfo/reduction_simple_privatization_deps_w_parameter.ll index ce46a1be3006..a3a87c70d905 100644 --- a/polly/test/DependenceInfo/reduction_simple_privatization_deps_w_parameter.ll +++ b/polly/test/DependenceInfo/reduction_simple_privatization_deps_w_parameter.ll @@ -19,7 +19,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum, i32 %N) { +define void @f(ptr %sum, i32 %N) { entry: br label %entry.1 @@ -28,7 +28,7 @@ entry.1: br i1 %excond, label %S0, label %f.end S0: - store i32 0, i32* %sum, align 4 + store i32 0, ptr %sum, align 4 br label %for.cond for.cond: ; preds = %for.inc, %S0 @@ -37,9 +37,9 @@ for.cond: ; preds = %for.inc, %S0 br i1 %exitcond, label %S1, label %S2 S1: ; preds = %for.cond - %tmp = load i32, i32* %sum, align 4 + %tmp = load i32, ptr %sum, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %sum, align 4 + store i32 %add, ptr %sum, align 4 br label %for.inc for.inc: ; preds = %S1 @@ -47,9 +47,9 @@ for.inc: ; preds = %S1 br label %for.cond S2: ; preds = %for.cond - %tmp1 = load i32, i32* %sum, align 4 + %tmp1 = load i32, ptr %sum, align 4 %mul = mul nsw i32 %tmp1, 3 - store i32 %mul, i32* %sum, align 4 + store i32 %mul, ptr %sum, align 4 br label %f.end f.end: diff --git a/polly/test/DependenceInfo/reduction_two_reductions_different_rloops.ll b/polly/test/DependenceInfo/reduction_two_reductions_different_rloops.ll index 409688d62cf4..c90462962ce0 100644 --- a/polly/test/DependenceInfo/reduction_two_reductions_different_rloops.ll +++ b/polly/test/DependenceInfo/reduction_two_reductions_different_rloops.ll @@ -20,7 +20,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* noalias %A, i32* noalias %B, i32* noalias %Values) { +define void @f(ptr noalias %A, ptr noalias %B, ptr noalias %Values) { entry: br label %for.cond @@ -40,20 +40,20 @@ for.cond1: ; preds = %for.inc, %for.body for.body3: ; preds = %for.cond1 %add = add nsw i32 %i.0, %j.0 %sub = add nsw i32 %add, -1 - %arrayidx = getelementptr inbounds i32, i32* %Values, i32 %sub - %tmp = load i32, i32* %arrayidx, align 4 - %arrayidx4 = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp2 = load i32, i32* %arrayidx4, align 4 + %arrayidx = getelementptr inbounds i32, ptr %Values, i32 %sub + %tmp = load i32, ptr %arrayidx, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp2 = load i32, ptr %arrayidx4, align 4 %add5 = add nsw i32 %tmp2, %tmp - store i32 %add5, i32* %arrayidx4, align 4 + store i32 %add5, ptr %arrayidx4, align 4 %add6 = add nsw i32 %i.0, %j.0 %add7 = add nsw i32 %add6, 42 - %arrayidx8 = getelementptr inbounds i32, i32* %Values, i32 %add7 - %tmp3 = load i32, i32* %arrayidx8, align 4 - %arrayidx9 = getelementptr inbounds i32, i32* %B, i32 %j.0 - %tmp4 = load i32, i32* %arrayidx9, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %Values, i32 %add7 + %tmp3 = load i32, ptr %arrayidx8, align 4 + %arrayidx9 = getelementptr inbounds i32, ptr %B, i32 %j.0 + %tmp4 = load i32, ptr %arrayidx9, align 4 %add10 = add nsw i32 %tmp4, %tmp3 - store i32 %add10, i32* %arrayidx9, align 4 + store i32 %add10, ptr %arrayidx9, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/DependenceInfo/sequential_loops.ll b/polly/test/DependenceInfo/sequential_loops.ll index e69a50cfb570..8dfa13cb9db8 100644 --- a/polly/test/DependenceInfo/sequential_loops.ll +++ b/polly/test/DependenceInfo/sequential_loops.ll @@ -118,8 +118,8 @@ entry: S1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %S1 ] - %arrayidx.1 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.1 - store i32 2, i32* %arrayidx.1 + %arrayidx.1 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.1 + store i32 2, ptr %arrayidx.1 %indvar.next.1 = add i64 %indvar.1, 1 %exitcond.1 = icmp ne i64 %indvar.next.1, 100 br i1 %exitcond.1, label %S1, label %exit.1 @@ -129,8 +129,8 @@ exit.1: S2: %indvar.2 = phi i64 [ 0, %exit.1 ], [ %indvar.next.2, %S2 ] - %arrayidx.2 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.2 - store i32 5, i32* %arrayidx.2 + %arrayidx.2 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.2 + store i32 5, ptr %arrayidx.2 %indvar.next.2 = add i64 %indvar.2, 1 %exitcond.2 = icmp ne i64 %indvar.next.2, 10 br i1 %exitcond.2, label %S2, label %exit.2 @@ -140,8 +140,8 @@ exit.2: S3: %indvar.3 = phi i64 [ 0, %exit.2 ], [ %indvar.next.3, %S3 ] - %arrayidx.3 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.3 - store i32 7, i32* %arrayidx.3 + %arrayidx.3 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.3 + store i32 7, ptr %arrayidx.3 %indvar.next.3 = add i64 %indvar.3, 1 %exitcond.3 = icmp ne i64 %indvar.next.3, 200 br i1 %exitcond.3, label %S3 , label %exit.3 @@ -168,8 +168,8 @@ entry: S1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %S1 ] - %arrayidx.1 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.1 - store i32 2, i32* %arrayidx.1 + %arrayidx.1 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.1 + store i32 2, ptr %arrayidx.1 %indvar.next.1 = add i64 %indvar.1, 1 %exitcond.1 = icmp ne i64 %indvar.next.1, 100 br i1 %exitcond.1, label %S1, label %exit.1 @@ -179,8 +179,8 @@ exit.1: S2: %indvar.2 = phi i64 [ 0, %exit.1 ], [ %indvar.next.2, %S2 ] - %arrayidx.2 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.2 - store i32 5, i32* %arrayidx.2 + %arrayidx.2 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.2 + store i32 5, ptr %arrayidx.2 %indvar.next.2 = add i64 %indvar.2, 1 %exitcond.2 = icmp ne i64 %indvar.next.2, 10 br i1 %exitcond.2, label %S2, label %exit.2 @@ -190,10 +190,10 @@ exit.2: S3: %indvar.3 = phi i64 [ 0, %exit.2 ], [ %indvar.next.3, %S3 ] - %arrayidx.3.a = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.3 - %arrayidx.3.b = getelementptr [200 x i32], [200 x i32]* %B, i64 0, i64 %indvar.3 - %val = load i32, i32* %arrayidx.3.a - store i32 %val, i32* %arrayidx.3.b + %arrayidx.3.a = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.3 + %arrayidx.3.b = getelementptr [200 x i32], ptr %B, i64 0, i64 %indvar.3 + %val = load i32, ptr %arrayidx.3.a + store i32 %val, ptr %arrayidx.3.b %indvar.next.3 = add i64 %indvar.3, 1 %exitcond.3 = icmp ne i64 %indvar.next.3, 200 br i1 %exitcond.3, label %S3 , label %exit.3 @@ -220,10 +220,10 @@ entry: S1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %S1 ] - %arrayidx.1.a = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.1 - %arrayidx.1.b = getelementptr [200 x i32], [200 x i32]* %B, i64 0, i64 %indvar.1 - %val = load i32, i32* %arrayidx.1.a - store i32 %val, i32* %arrayidx.1.b + %arrayidx.1.a = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.1 + %arrayidx.1.b = getelementptr [200 x i32], ptr %B, i64 0, i64 %indvar.1 + %val = load i32, ptr %arrayidx.1.a + store i32 %val, ptr %arrayidx.1.b %indvar.next.1 = add i64 %indvar.1, 1 %exitcond.1 = icmp ne i64 %indvar.next.1, 100 br i1 %exitcond.1, label %S1, label %exit.1 @@ -233,8 +233,8 @@ exit.1: S2: %indvar.2 = phi i64 [ 0, %exit.1 ], [ %indvar.next.2, %S2 ] - %arrayidx.2 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.2 - store i32 5, i32* %arrayidx.2 + %arrayidx.2 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.2 + store i32 5, ptr %arrayidx.2 %indvar.next.2 = add i64 %indvar.2, 1 %exitcond.2 = icmp ne i64 %indvar.next.2, 10 br i1 %exitcond.2, label %S2, label %exit.2 @@ -244,8 +244,8 @@ exit.2: S3: %indvar.3 = phi i64 [ 0, %exit.2 ], [ %indvar.next.3, %S3 ] - %arrayidx.3 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.3 - store i32 10, i32* %arrayidx.3 + %arrayidx.3 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.3 + store i32 10, ptr %arrayidx.3 %indvar.next.3 = add i64 %indvar.3, 1 %exitcond.3 = icmp ne i64 %indvar.next.3, 200 br i1 %exitcond.3, label %S3 , label %exit.3 @@ -269,8 +269,8 @@ entry: S1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %S1 ] - %arrayidx.1 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.1 - store i32 10, i32* %arrayidx.1 + %arrayidx.1 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.1 + store i32 10, ptr %arrayidx.1 %indvar.next.1 = add i64 %indvar.1, 1 %exitcond.1 = icmp ne i64 %indvar.next.1, 100 br i1 %exitcond.1, label %S1, label %exit.1 @@ -281,10 +281,10 @@ exit.1: S2: %indvar.2 = phi i64 [ 0, %exit.1 ], [ %indvar.next.2, %S2 ] %sum = add i64 %indvar.2, %p - %arrayidx.2.a = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %sum - %arrayidx.2.b = getelementptr [200 x i32], [200 x i32]* %B, i64 0, i64 %indvar.2 - %val = load i32, i32* %arrayidx.2.a - store i32 %val, i32* %arrayidx.2.b + %arrayidx.2.a = getelementptr [200 x i32], ptr %A, i64 0, i64 %sum + %arrayidx.2.b = getelementptr [200 x i32], ptr %B, i64 0, i64 %indvar.2 + %val = load i32, ptr %arrayidx.2.a + store i32 %val, ptr %arrayidx.2.b %indvar.next.2 = add i64 %indvar.2, 1 %exitcond.2 = icmp ne i64 %indvar.next.2, 10 br i1 %exitcond.2, label %S2, label %exit.2 diff --git a/polly/test/FlattenSchedule/gemm.ll b/polly/test/FlattenSchedule/gemm.ll index 417ffee85e8f..b20293bd315a 100644 --- a/polly/test/FlattenSchedule/gemm.ll +++ b/polly/test/FlattenSchedule/gemm.ll @@ -8,7 +8,7 @@ target datalayout = "e-m:x-p:32:32-i64:64-f80:32-n8:16:32-a:0:32-S32" -define void @gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, double* noalias nonnull %C, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, ptr noalias nonnull %C, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %ni.for @@ -24,13 +24,13 @@ ni.for: nj_beta: %c_stride = mul nsw i32 %i, 3; %nj - %c_idx_i = getelementptr inbounds double, double* %C, i32 %c_stride - %c_idx_ij = getelementptr inbounds double, double* %c_idx_i, i32 %j + %c_idx_i = getelementptr inbounds double, ptr %C, i32 %c_stride + %c_idx_ij = getelementptr inbounds double, ptr %c_idx_i, i32 %j - ; C[i][j] *= beta - %c = load double, double* %c_idx_ij + ; C[i]ptr= beta + %c = load double, ptr %c_idx_ij %c_beta = fmul double %c, %beta - store double %c_beta, double* %c_idx_ij + store double %c_beta, ptr %c_idx_ij br label %nk.for @@ -41,23 +41,23 @@ ni.for: nk_alpha: %a_stride = mul nsw i32 %i, 3; %nk - %a_idx_i = getelementptr inbounds double, double* %A, i32 %a_stride - %a_idx_ik = getelementptr inbounds double, double* %a_idx_i, i32 %k + %a_idx_i = getelementptr inbounds double, ptr %A, i32 %a_stride + %a_idx_ik = getelementptr inbounds double, ptr %a_idx_i, i32 %k %b_stride = mul nsw i32 %k, 3; %nj - %b_idx_k = getelementptr inbounds double, double* %B, i32 %b_stride - %b_idx_kj = getelementptr inbounds double, double* %b_idx_k, i32 %j + %b_idx_k = getelementptr inbounds double, ptr %B, i32 %b_stride + %b_idx_kj = getelementptr inbounds double, ptr %b_idx_k, i32 %j - ; C[i][j] += alpha * A[i][k] * B[k][j] - %a = load double, double* %a_idx_ik - %b = load double, double* %b_idx_kj - %beta_c = load double, double* %c_idx_ij + ; C[i][j] += alpha * A[i]ptr B[k][j] + %a = load double, ptr %a_idx_ik + %b = load double, ptr %b_idx_kj + %beta_c = load double, ptr %c_idx_ij %alpha_a = fmul double %a, %alpha %alpha_a_b = fmul double %alpha_a, %b %beta_c_alpha_a_b = fadd double %beta_c, %alpha_a_b - store double %beta_c_alpha_a_b, double* %c_idx_ij + store double %beta_c_alpha_a_b, ptr %c_idx_ij br label %nk.inc @@ -66,7 +66,7 @@ ni.for: br label %nk.for nk.exit: - ; store double %c, double* %c_idx_ij + ; store double %c, ptr %c_idx_ij br label %nj.inc nj.inc: diff --git a/polly/test/ForwardOpTree/atax.ll b/polly/test/ForwardOpTree/atax.ll index 4915b90ef19c..0690c1b000fa 100644 --- a/polly/test/ForwardOpTree/atax.ll +++ b/polly/test/ForwardOpTree/atax.ll @@ -2,31 +2,30 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define internal fastcc void @kernel_atax([2100 x double]* nocapture readonly %A, double* nocapture readonly %x, double* nocapture %y, double* nocapture %tmp) unnamed_addr #0 { +define internal fastcc void @kernel_atax(ptr nocapture readonly %A, ptr nocapture readonly %x, ptr nocapture %y, ptr nocapture %tmp) unnamed_addr #0 { entry: br label %entry.split entry.split: ; preds = %entry - %y15 = bitcast double* %y to i8* - call void @llvm.memset.p0i8.i64(i8* %y15, i8 0, i64 16800, i32 8, i1 false) + call void @llvm.memset.p0.i64(ptr %y, i8 0, i64 16800, i32 8, i1 false) br label %for.body3 for.body3: ; preds = %for.inc40, %entry.split %indvars.iv8 = phi i64 [ 0, %entry.split ], [ %indvars.iv.next9, %for.inc40 ] - %arrayidx5 = getelementptr inbounds double, double* %tmp, i64 %indvars.iv8 - store double 0.000000e+00, double* %arrayidx5, align 8, !tbaa !6 + %arrayidx5 = getelementptr inbounds double, ptr %tmp, i64 %indvars.iv8 + store double 0.000000e+00, ptr %arrayidx5, align 8, !tbaa !6 br label %for.body8 for.body8: ; preds = %for.body8, %for.body3 %0 = phi double [ 0.000000e+00, %for.body3 ], [ %add, %for.body8 ] %indvars.iv = phi i64 [ 0, %for.body3 ], [ %indvars.iv.next, %for.body8 ] - %arrayidx14 = getelementptr inbounds [2100 x double], [2100 x double]* %A, i64 %indvars.iv8, i64 %indvars.iv - %1 = load double, double* %arrayidx14, align 8, !tbaa !6 - %arrayidx16 = getelementptr inbounds double, double* %x, i64 %indvars.iv - %2 = load double, double* %arrayidx16, align 8, !tbaa !6 + %arrayidx14 = getelementptr inbounds [2100 x double], ptr %A, i64 %indvars.iv8, i64 %indvars.iv + %1 = load double, ptr %arrayidx14, align 8, !tbaa !6 + %arrayidx16 = getelementptr inbounds double, ptr %x, i64 %indvars.iv + %2 = load double, ptr %arrayidx16, align 8, !tbaa !6 %mul = fmul double %1, %2 %add = fadd double %0, %mul - store double %add, double* %arrayidx5, align 8, !tbaa !6 + store double %add, ptr %arrayidx5, align 8, !tbaa !6 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 2 br i1 %exitcond, label %for.end21, label %for.body8 @@ -37,19 +36,19 @@ for.end21: ; preds = %for.body8 for.body24: ; preds = %for.body24.for.body24_crit_edge, %for.end21 %3 = phi double [ %add, %for.end21 ], [ %.pre, %for.body24.for.body24_crit_edge ] %indvars.iv5 = phi i64 [ 0, %for.end21 ], [ %indvars.iv.next6, %for.body24.for.body24_crit_edge ] - %arrayidx26 = getelementptr inbounds double, double* %y, i64 %indvars.iv5 - %4 = load double, double* %arrayidx26, align 8, !tbaa !6 - %arrayidx30 = getelementptr inbounds [2100 x double], [2100 x double]* %A, i64 %indvars.iv8, i64 %indvars.iv5 - %5 = load double, double* %arrayidx30, align 8, !tbaa !6 + %arrayidx26 = getelementptr inbounds double, ptr %y, i64 %indvars.iv5 + %4 = load double, ptr %arrayidx26, align 8, !tbaa !6 + %arrayidx30 = getelementptr inbounds [2100 x double], ptr %A, i64 %indvars.iv8, i64 %indvars.iv5 + %5 = load double, ptr %arrayidx30, align 8, !tbaa !6 %mul33 = fmul double %5, %3 %add34 = fadd double %4, %mul33 - store double %add34, double* %arrayidx26, align 8, !tbaa !6 + store double %add34, ptr %arrayidx26, align 8, !tbaa !6 %indvars.iv.next6 = add nuw nsw i64 %indvars.iv5, 1 %exitcond7 = icmp eq i64 %indvars.iv.next6, 2 br i1 %exitcond7, label %for.inc40, label %for.body24.for.body24_crit_edge for.body24.for.body24_crit_edge: ; preds = %for.body24 - %.pre = load double, double* %arrayidx5, align 8, !tbaa !6 + %.pre = load double, ptr %arrayidx5, align 8, !tbaa !6 br label %for.body24 for.inc40: ; preds = %for.body24 @@ -62,7 +61,7 @@ for.end42: ; preds = %for.inc40 } ; Function Attrs: argmemonly nounwind -declare void @llvm.memset.p0i8.i64(i8* nocapture writeonly, i8, i64, i32, i1) #1 +declare void @llvm.memset.p0.i64(ptr nocapture writeonly, i8, i64, i32, i1) #1 attributes #0 = { noinline norecurse nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" } attributes #1 = { argmemonly nounwind } @@ -92,7 +91,7 @@ attributes #1 = { argmemonly nounwind } ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: { Stmt_for_body3[i0] -> MemRef1__phi[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store double 0.000000e+00, double* %arrayidx5, align 8, !tbaa !2 +; CHECK-NEXT: store double 0.000000e+00, ptr %arrayidx5, align 8, !tbaa !2 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_for_body8 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] @@ -110,11 +109,11 @@ attributes #1 = { argmemonly nounwind } ; CHECK-NEXT: { Stmt_for_body8[i0, i1] -> MemRef_add[] }; ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %0 = phi double [ 0.000000e+00, %for.body3 ], [ %add, %for.body8 ] -; CHECK-NEXT: %1 = load double, double* %arrayidx14, align 8, !tbaa !2 -; CHECK-NEXT: %2 = load double, double* %arrayidx16, align 8, !tbaa !2 +; CHECK-NEXT: %1 = load double, ptr %arrayidx14, align 8, !tbaa !2 +; CHECK-NEXT: %2 = load double, ptr %arrayidx16, align 8, !tbaa !2 ; CHECK-NEXT: %mul = fmul double %1, %2 ; CHECK-NEXT: %add = fadd double %0, %mul -; CHECK-NEXT: store double %add, double* %arrayidx5, align 8, !tbaa !2 +; CHECK-NEXT: store double %add, ptr %arrayidx5, align 8, !tbaa !2 ; CHECK-NEXT: %exitcond = icmp eq i64 %indvars.iv.next, 2 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_for_end21 @@ -136,11 +135,11 @@ attributes #1 = { argmemonly nounwind } ; CHECK-NEXT: { Stmt_for_body24[i0, i1] -> MemRef_y[i1] }; ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %3 = phi double [ %add, %for.end21 ], [ %.pre, %for.body24.for.body24_crit_edge ] -; CHECK-NEXT: %4 = load double, double* %arrayidx26, align 8, !tbaa !2 -; CHECK-NEXT: %5 = load double, double* %arrayidx30, align 8, !tbaa !2 +; CHECK-NEXT: %4 = load double, ptr %arrayidx26, align 8, !tbaa !2 +; CHECK-NEXT: %5 = load double, ptr %arrayidx30, align 8, !tbaa !2 ; CHECK-NEXT: %mul33 = fmul double %5, %3 ; CHECK-NEXT: %add34 = fadd double %4, %mul33 -; CHECK-NEXT: store double %add34, double* %arrayidx26, align 8, !tbaa !2 +; CHECK-NEXT: store double %add34, ptr %arrayidx26, align 8, !tbaa !2 ; CHECK-NEXT: %exitcond7 = icmp eq i64 %indvars.iv.next6, 2 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_for_body24_for_body24_crit_edge @@ -149,6 +148,6 @@ attributes #1 = { argmemonly nounwind } ; CHECK-NEXT: ReadAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_for_body24_for_body24_crit_edge[i0, i1] -> MemRef_tmp[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %.pre = load double, double* %arrayidx5, align 8, !tbaa !2 +; CHECK-NEXT: %.pre = load double, ptr %arrayidx5, align 8, !tbaa !2 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/changed-kind.ll b/polly/test/ForwardOpTree/changed-kind.ll index 785dcf4531da..a1d59825b3b2 100644 --- a/polly/test/ForwardOpTree/changed-kind.ll +++ b/polly/test/ForwardOpTree/changed-kind.ll @@ -28,7 +28,7 @@ lor.end.thread: lor.rhs87: %0 = phi i64 [ 0, %lor.end.thread ], [ 0, %lor.end ] - store i64 %0, i64* @c, align 8 + store i64 %0, ptr @c, align 8 %neg79 = xor i64 %0, -1 br label %lor.end93 diff --git a/polly/test/ForwardOpTree/forward_from_region.ll b/polly/test/ForwardOpTree/forward_from_region.ll index 841e0b0d5d5a..53d22800081e 100644 --- a/polly/test/ForwardOpTree/forward_from_region.ll +++ b/polly/test/ForwardOpTree/forward_from_region.ll @@ -14,7 +14,7 @@ ; A[0] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -29,11 +29,11 @@ for: br i1 %cond, label %bodyA_true, label %bodyB bodyA_true: - store double 42.0, double* %A + store double 42.0, ptr %A br label %bodyB bodyB: - store double %val, double* %A + store double %val, ptr %A br label %bodyB_exit bodyB_exit: @@ -72,7 +72,7 @@ return: ; CHECK: [n] -> { Stmt_bodyB[i0] -> MemRef_A[0] }; ; CHECK: Instructions { ; CHECK: %val = fadd double 2.100000e+01, 2.100000e+01 -; CHECK: store double %val, double* %A, align 8 +; CHECK: store double %val, ptr %A, align 8 ; CHECK: } ; CHECK: } diff --git a/polly/test/ForwardOpTree/forward_hoisted.ll b/polly/test/ForwardOpTree/forward_hoisted.ll index ba079e4026fa..32fca00141dd 100644 --- a/polly/test/ForwardOpTree/forward_hoisted.ll +++ b/polly/test/ForwardOpTree/forward_hoisted.ll @@ -11,7 +11,7 @@ ; A[0] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -21,12 +21,12 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %val1 = load double, double* %B + %val1 = load double, ptr %B %val2 = fadd double %val1, 21.0 br label %bodyB bodyB: - store double %val2, double* %A + store double %val2, ptr %A br label %inc inc: @@ -52,7 +52,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: [n] -> { Stmt_bodyA[i0] -> MemRef_val2[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val1 = load double, double* %B, align 8 +; CHECK-NEXT: %val1 = load double, ptr %B, align 8 ; CHECK-NEXT: %val2 = fadd double %val1, 2.100000e+01 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_bodyB @@ -60,6 +60,6 @@ return: ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_A[0] }; ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %val2 = fadd double %val1, 2.100000e+01 -; CHECK-NEXT: store double %val2, double* %A, align 8 +; CHECK-NEXT: store double %val2, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_instruction.ll b/polly/test/ForwardOpTree/forward_instruction.ll index 7860dd551b4b..1dcd64357324 100644 --- a/polly/test/ForwardOpTree/forward_instruction.ll +++ b/polly/test/ForwardOpTree/forward_instruction.ll @@ -10,7 +10,7 @@ ; A[0] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -24,7 +24,7 @@ for: br label %bodyB bodyB: - store double %val, double* %A + store double %val, ptr %A br label %inc inc: @@ -57,6 +57,6 @@ return: ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_A[0] }; ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %val = fadd double 2.100000e+01, 2.100000e+01 -; CHECK-NEXT: store double %val, double* %A, align 8 +; CHECK-NEXT: store double %val, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_into_region.ll b/polly/test/ForwardOpTree/forward_into_region.ll index fc568434e90d..dd18cfe5e61a 100644 --- a/polly/test/ForwardOpTree/forward_into_region.ll +++ b/polly/test/ForwardOpTree/forward_into_region.ll @@ -12,7 +12,7 @@ ; A[0] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -30,7 +30,7 @@ for: br i1 %cond, label %bodyB_true, label %bodyB_exit bodyB_true: - store double %val, double* %A + store double %val, ptr %A br label %bodyB_exit bodyB_exit: diff --git a/polly/test/ForwardOpTree/forward_into_region_redundant_use.ll b/polly/test/ForwardOpTree/forward_into_region_redundant_use.ll index 124d122e2244..e5458c027880 100644 --- a/polly/test/ForwardOpTree/forward_into_region_redundant_use.ll +++ b/polly/test/ForwardOpTree/forward_into_region_redundant_use.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-invariant-load-hoisting=true -polly-print-optree -disable-output < %s | FileCheck %s -match-full-lines ; -define void @foo(float* %A, i32 %p, float* %B) { +define void @foo(ptr %A, i32 %p, ptr %B) { start: br label %branch @@ -10,7 +10,7 @@ branch: br i1 %cmp, label %next, label %end next: - %val = load float, float* %A + %val = load float, ptr %A %fcmp = fcmp oeq float %val, 41.0 br label %nonaffine @@ -18,11 +18,11 @@ nonaffine: br i1 %fcmp, label %a, label %b a: - store float %val, float* %A + store float %val, ptr %A br label %end b: - store float 1.0, float* %A + store float 1.0, ptr %A br label %end end: @@ -38,7 +38,7 @@ end: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: [p] -> { Stmt_next[] -> MemRef_val[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load float, float* %A, align 4 +; CHECK-NEXT: %val = load float, ptr %A, align 4 ; CHECK-NEXT: %fcmp = fcmp oeq float %val, 4.100000e+01 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_nonaffine__TO__end @@ -50,8 +50,8 @@ end: ; CHECK-NEXT: MayWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [p] -> { Stmt_nonaffine__TO__end[] -> MemRef_A[0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load float, float* %A, align 4 -; CHECK-NEXT: %val = load float, float* %A, align 4 +; CHECK-NEXT: %val = load float, ptr %A, align 4 +; CHECK-NEXT: %val = load float, ptr %A, align 4 ; CHECK-NEXT: %fcmp = fcmp oeq float %val, 4.100000e+01 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_load.ll b/polly/test/ForwardOpTree/forward_load.ll index f3b5d80f15a0..86e3cb0203fa 100644 --- a/polly/test/ForwardOpTree/forward_load.ll +++ b/polly/test/ForwardOpTree/forward_load.ll @@ -11,7 +11,7 @@ ; A[j] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -21,13 +21,13 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - %val = load double, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + %val = load double, ptr %B_idx br label %bodyB bodyB: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %inc inc: @@ -55,6 +55,6 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 -; CHECK-NEXT: store double %val, double* %A_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 +; CHECK-NEXT: store double %val, ptr %A_idx, align 8 ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_load_differentarray.ll b/polly/test/ForwardOpTree/forward_load_differentarray.ll index f3ce08897286..786277bdeb87 100644 --- a/polly/test/ForwardOpTree/forward_load_differentarray.ll +++ b/polly/test/ForwardOpTree/forward_load_differentarray.ll @@ -15,7 +15,7 @@ ; A[j] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B, double* noalias nonnull %C) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B, ptr noalias nonnull %C) { entry: br label %for @@ -25,19 +25,19 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - %val = load double, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + %val = load double, ptr %B_idx br label %bodyB bodyB: - store double 0.0, double* %B_idx - %C_idx = getelementptr inbounds double, double* %C, i32 %j - store double %val, double* %C_idx + store double 0.0, ptr %B_idx + %C_idx = getelementptr inbounds double, ptr %C, i32 %j + store double %val, ptr %C_idx br label %bodyC bodyC: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %inc inc: @@ -65,7 +65,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: [n] -> { Stmt_bodyA[i0] -> MemRef_val[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_bodyB ; CHECK-NEXT: ReadAccess := [Reduction Type: NONE] [Scalar: 0] @@ -76,9 +76,9 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_C[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 -; CHECK-NEXT: store double 0.000000e+00, double* %B_idx, align 8 -; CHECK-NEXT: store double %val, double* %C_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 +; CHECK-NEXT: store double 0.000000e+00, ptr %B_idx, align 8 +; CHECK-NEXT: store double %val, ptr %C_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_bodyC ; CHECK-NEXT: ReadAccess := [Reduction Type: NONE] [Scalar: 0] @@ -87,7 +87,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_bodyC[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 -; CHECK-NEXT: store double %val, double* %A_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 +; CHECK-NEXT: store double %val, ptr %A_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_load_double_write.ll b/polly/test/ForwardOpTree/forward_load_double_write.ll index d0ad2c1384d8..1618722381fc 100644 --- a/polly/test/ForwardOpTree/forward_load_double_write.ll +++ b/polly/test/ForwardOpTree/forward_load_double_write.ll @@ -3,7 +3,7 @@ ; Rematerialize a load even in case two writes of identical values are in ; one scop statement. ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -13,14 +13,14 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - %val = load double, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + %val = load double, ptr %B_idx br label %bodyB bodyB: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx + store double %val, ptr %A_idx br label %inc inc: @@ -50,7 +50,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 -; CHECK-NEXT: store double %val, double* %A_idx, align 8 -; CHECK-NEXT: store double %val, double* %A_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 +; CHECK-NEXT: store double %val, ptr %A_idx, align 8 +; CHECK-NEXT: store double %val, ptr %A_idx, align 8 ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_load_fromloop.ll b/polly/test/ForwardOpTree/forward_load_fromloop.ll index 90587b76dad7..8f08a1356c38 100644 --- a/polly/test/ForwardOpTree/forward_load_fromloop.ll +++ b/polly/test/ForwardOpTree/forward_load_fromloop.ll @@ -14,7 +14,7 @@ ; A[j] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -25,15 +25,15 @@ for: bodyA: %i = phi i32 [0, %for], [%i.inc, %bodyA] - %B_idx = getelementptr inbounds double, double* %B, i32 %i - %val = load double, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %i + %val = load double, ptr %B_idx %i.inc = add nuw nsw i32 %i, 1 %i.cmp = icmp slt i32 %i, %n br i1 %i.cmp, label %bodyA, label %bodyB bodyB: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %inc inc: @@ -61,7 +61,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: [n] -> { Stmt_bodyA[i0, i1] -> MemRef_val[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 ; CHECK-NEXT: %i.cmp = icmp slt i32 %i, %n ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_bodyB @@ -71,7 +71,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 -; CHECK-NEXT: store double %val, double* %A_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 +; CHECK-NEXT: store double %val, ptr %A_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_load_indirect.ll b/polly/test/ForwardOpTree/forward_load_indirect.ll index 390335a54341..f83af61e6741 100644 --- a/polly/test/ForwardOpTree/forward_load_indirect.ll +++ b/polly/test/ForwardOpTree/forward_load_indirect.ll @@ -12,7 +12,7 @@ ; A[j] = add; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -22,14 +22,14 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - %val = load double, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + %val = load double, ptr %B_idx %add = fadd double %val, 42.0 br label %bodyB bodyB: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %add, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %add, ptr %A_idx br label %inc inc: @@ -58,7 +58,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: [n] -> { Stmt_bodyA[i0] -> MemRef_add[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 ; CHECK-NEXT: %add = fadd double %val, 4.200000e+01 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_bodyB @@ -68,8 +68,8 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 ; CHECK-NEXT: %add = fadd double %val, 4.200000e+01 -; CHECK-NEXT: store double %add, double* %A_idx, align 8 +; CHECK-NEXT: store double %add, ptr %A_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_load_memset_after.ll b/polly/test/ForwardOpTree/forward_load_memset_after.ll index 8962c8d17d97..13797a44c862 100644 --- a/polly/test/ForwardOpTree/forward_load_memset_after.ll +++ b/polly/test/ForwardOpTree/forward_load_memset_after.ll @@ -15,9 +15,9 @@ ; } ; -declare void @llvm.memset.p0f64.i64(double* nocapture, i8, i64, i32, i1) +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -27,18 +27,18 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - %val = load double, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + %val = load double, ptr %B_idx br label %bodyB bodyB: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %bodyC bodyC: - call void @llvm.memset.p0f64.i64(double* %A, i8 0, i64 16, i32 1, i1 false) - call void @llvm.memset.p0f64.i64(double* %B, i8 0, i64 16, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr %A, i8 0, i64 16, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr %B, i8 0, i64 16, i32 1, i1 false) br label %inc inc: diff --git a/polly/test/ForwardOpTree/forward_load_memset_before.ll b/polly/test/ForwardOpTree/forward_load_memset_before.ll index 0caef0b21b74..60b1e076b980 100644 --- a/polly/test/ForwardOpTree/forward_load_memset_before.ll +++ b/polly/test/ForwardOpTree/forward_load_memset_before.ll @@ -15,9 +15,9 @@ ; } ; -declare void @llvm.memset.p0f64.i64(double* nocapture, i8, i64, i32, i1) +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -27,18 +27,18 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - call void @llvm.memset.p0f64.i64(double* %A, i8 0, i64 16, i32 1, i1 false) - call void @llvm.memset.p0f64.i64(double* %B, i8 0, i64 16, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr %A, i8 0, i64 16, i32 1, i1 false) + call void @llvm.memset.p0.i64(ptr %B, i8 0, i64 16, i32 1, i1 false) br label %bodyB bodyB: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - %val = load double, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + %val = load double, ptr %B_idx br label %bodyC bodyC: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %inc inc: @@ -66,7 +66,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_val[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_bodyC ; CHECK-NEXT: ReadAccess := [Reduction Type: NONE] [Scalar: 0] @@ -75,7 +75,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_bodyC[i0] -> MemRef_A[o0] : 8i0 <= o0 <= 7 + 8i0 }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 -; CHECK-NEXT: store double %val, double* %A_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 +; CHECK-NEXT: store double %val, ptr %A_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_load_tripleuse.ll b/polly/test/ForwardOpTree/forward_load_tripleuse.ll index ff5435b3b9ae..1d0df2a22e87 100644 --- a/polly/test/ForwardOpTree/forward_load_tripleuse.ll +++ b/polly/test/ForwardOpTree/forward_load_tripleuse.ll @@ -17,7 +17,7 @@ ; C[j] = val2; ; } ; -define void @func1(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B, double* noalias nonnull %C) { +define void @func1(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B, ptr noalias nonnull %C) { entry: br label %for @@ -27,16 +27,16 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %val1 = load double, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %val1 = load double, ptr %A_idx %val2 = fadd double %val1, %val1 br label %bodyB bodyB: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - store double %val1, double* %B_idx - %C_idx = getelementptr inbounds double, double* %C, i32 %j - store double %val2, double* %C_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + store double %val1, ptr %B_idx + %C_idx = getelementptr inbounds double, ptr %C, i32 %j + store double %val2, ptr %C_idx br label %inc inc: @@ -67,7 +67,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: [n] -> { Stmt_bodyA[i0] -> MemRef_val2[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val1 = load double, double* %A_idx, align 8 +; CHECK-NEXT: %val1 = load double, ptr %A_idx, align 8 ; CHECK-NEXT: %val2 = fadd double %val1, %val1 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_bodyB @@ -79,16 +79,16 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_C[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val1 = load double, double* %A_idx, align 8 +; CHECK-NEXT: %val1 = load double, ptr %A_idx, align 8 ; CHECK-NEXT: %val2 = fadd double %val1, %val1 -; CHECK-NEXT: %val1 = load double, double* %A_idx, align 8 -; CHECK-NEXT: store double %val1, double* %B_idx, align 8 -; CHECK-NEXT: store double %val2, double* %C_idx, align 8 +; CHECK-NEXT: %val1 = load double, ptr %A_idx, align 8 +; CHECK-NEXT: store double %val1, ptr %B_idx, align 8 +; CHECK-NEXT: store double %val2, ptr %C_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } -define void @func2(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B, double* noalias nonnull %C) { +define void @func2(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B, ptr noalias nonnull %C) { entry: br label %for @@ -98,16 +98,16 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %val1 = load double, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %val1 = load double, ptr %A_idx %val2 = fadd double %val1, %val1 br label %bodyB bodyB: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - store double %val2, double* %B_idx - %C_idx = getelementptr inbounds double, double* %C, i32 %j - store double %val1, double* %C_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + store double %val2, ptr %B_idx + %C_idx = getelementptr inbounds double, ptr %C, i32 %j + store double %val1, ptr %C_idx br label %inc inc: @@ -138,7 +138,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: [n] -> { Stmt_bodyA[i0] -> MemRef_val1[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val1 = load double, double* %A_idx, align 8 +; CHECK-NEXT: %val1 = load double, ptr %A_idx, align 8 ; CHECK-NEXT: %val2 = fadd double %val1, %val1 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_bodyB @@ -150,10 +150,10 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_C[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val1 = load double, double* %A_idx, align 8 -; CHECK-NEXT: %val1 = load double, double* %A_idx, align 8 +; CHECK-NEXT: %val1 = load double, ptr %A_idx, align 8 +; CHECK-NEXT: %val1 = load double, ptr %A_idx, align 8 ; CHECK-NEXT: %val2 = fadd double %val1, %val1 -; CHECK-NEXT: store double %val2, double* %B_idx, align 8 -; CHECK-NEXT: store double %val1, double* %C_idx, align 8 +; CHECK-NEXT: store double %val2, ptr %B_idx, align 8 +; CHECK-NEXT: store double %val1, ptr %C_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_load_unrelatedunusual.ll b/polly/test/ForwardOpTree/forward_load_unrelatedunusual.ll index 9181cb341ea6..b7bae5628986 100644 --- a/polly/test/ForwardOpTree/forward_load_unrelatedunusual.ll +++ b/polly/test/ForwardOpTree/forward_load_unrelatedunusual.ll @@ -13,7 +13,7 @@ ; A[j] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B, double *noalias %C) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B, ptr noalias %C) { entry: br label %for @@ -23,15 +23,15 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - %val = load double, double* %B_idx - store double 21.0, double* %C - store double 41.0, double* %C + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + %val = load double, ptr %B_idx + store double 21.0, ptr %C + store double 41.0, ptr %C br label %bodyB bodyB: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %inc inc: @@ -59,6 +59,6 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 -; CHECK-NEXT: store double %val, double* %A_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 +; CHECK-NEXT: store double %val, ptr %A_idx, align 8 ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_phi_load.ll b/polly/test/ForwardOpTree/forward_phi_load.ll index 2a24ded6596f..0b0bb209a3ef 100644 --- a/polly/test/ForwardOpTree/forward_phi_load.ll +++ b/polly/test/ForwardOpTree/forward_phi_load.ll @@ -13,7 +13,7 @@ ; A[j] = phi; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -23,8 +23,8 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - %val = load double, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + %val = load double, ptr %B_idx br label %bodyB bodyB: @@ -32,8 +32,8 @@ for: br label %bodyC bodyC: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %phi, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %phi, ptr %A_idx br label %inc inc: @@ -59,7 +59,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: [n] -> { Stmt_bodyA[i0] -> MemRef_phi__phi[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %val = load double, double* %B_idx, align 8 +; CHECK-NEXT: %val = load double, ptr %B_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_bodyB ; CHECK-NEXT: ReadAccess := [Reduction Type: NONE] [Scalar: 1] @@ -77,6 +77,6 @@ return: ; CHECK-NEXT: [n] -> { Stmt_bodyC[i0] -> MemRef_phi[] }; ; CHECK-NEXT: new: [n] -> { Stmt_bodyC[i0] -> MemRef_B[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store double %phi, double* %A_idx, align 8 +; CHECK-NEXT: store double %phi, ptr %A_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_readonly.ll b/polly/test/ForwardOpTree/forward_readonly.ll index a0c9b659702e..a29c5bff5d70 100644 --- a/polly/test/ForwardOpTree/forward_readonly.ll +++ b/polly/test/ForwardOpTree/forward_readonly.ll @@ -11,7 +11,7 @@ ; A[0] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double %arg) { +define void @func(i32 %n, ptr noalias nonnull %A, double %arg) { entry: br label %for @@ -25,7 +25,7 @@ for: br label %bodyB bodyB: - store double %val, double* %A + store double %val, ptr %A br label %inc inc: @@ -64,7 +64,7 @@ return: ; MODEL-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_arg[] }; ; MODEL-NEXT: Instructions { ; MODEL-NEXT: %val = fadd double %arg, 2.100000e+01 -; MODEL-NEXT: store double %val, double* %A, align 8 +; MODEL-NEXT: store double %val, ptr %A, align 8 ; MODEL-NEXT: } ; MODEL-NEXT: } @@ -80,6 +80,6 @@ return: ; NOMODEL-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_A[0] }; ; NOMODEL-NEXT: Instructions { ; NOMODEL-NEXT: %val = fadd double %arg, 2.100000e+01 -; NOMODEL-NEXT: store double %val, double* %A, align 8 +; NOMODEL-NEXT: store double %val, ptr %A, align 8 ; NOMODEL-NEXT: } ; NOMODEL-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_reusue.ll b/polly/test/ForwardOpTree/forward_reusue.ll index 6342946a11cd..ead8c7379803 100644 --- a/polly/test/ForwardOpTree/forward_reusue.ll +++ b/polly/test/ForwardOpTree/forward_reusue.ll @@ -2,7 +2,7 @@ ; ; Move operand tree without duplicating values used multiple times. ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -20,7 +20,7 @@ for: br label %bodyB bodyB: - store double %val5, double* %A + store double %val5, ptr %A br label %inc inc: @@ -60,6 +60,6 @@ return: ; CHECK-NEXT: %val3 = fadd double %val2, %val2 ; CHECK-NEXT: %val4 = fadd double %val3, %val3 ; CHECK-NEXT: %val5 = fadd double %val4, %val4 -; CHECK-NEXT: store double %val5, double* %A, align 8 +; CHECK-NEXT: store double %val5, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_store.ll b/polly/test/ForwardOpTree/forward_store.ll index 622d28fc009e..a6369eb303c1 100644 --- a/polly/test/ForwardOpTree/forward_store.ll +++ b/polly/test/ForwardOpTree/forward_store.ll @@ -13,7 +13,7 @@ declare double @f() #0 -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -24,13 +24,13 @@ for: bodyA: %val = call double @f() - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %bodyB bodyB: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - store double %val, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + store double %val, ptr %B_idx br label %inc inc: @@ -59,7 +59,7 @@ attributes #0 = { nounwind readnone } ; CHECK-NEXT: [n] -> { Stmt_bodyA[i0] -> MemRef_val[] }; ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %val = call double @f() -; CHECK-NEXT: store double %val, double* %A_idx, align 8 +; CHECK-NEXT: store double %val, ptr %A_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_bodyB ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] @@ -68,6 +68,6 @@ attributes #0 = { nounwind readnone } ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_val[] }; ; CHECK-NEXT: new: [n] -> { Stmt_bodyB[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store double %val, double* %B_idx, align 8 +; CHECK-NEXT: store double %val, ptr %B_idx, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_synthesizable_definloop.ll b/polly/test/ForwardOpTree/forward_synthesizable_definloop.ll index bdf8d9be3dac..f0da9320c43f 100644 --- a/polly/test/ForwardOpTree/forward_synthesizable_definloop.ll +++ b/polly/test/ForwardOpTree/forward_synthesizable_definloop.ll @@ -13,7 +13,7 @@ ; A[0] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -42,7 +42,7 @@ for: bodyB: - store double %val, double* %A + store double %val, ptr %A br label %inc inc: @@ -75,6 +75,6 @@ return: ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_A[0] }; ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %val = sitofp i32 %i to double -; CHECK-NEXT: store double %val, double* %A, align 8 +; CHECK-NEXT: store double %val, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_synthesizable_indvar.ll b/polly/test/ForwardOpTree/forward_synthesizable_indvar.ll index a3be3a232082..a38ab543e255 100644 --- a/polly/test/ForwardOpTree/forward_synthesizable_indvar.ll +++ b/polly/test/ForwardOpTree/forward_synthesizable_indvar.ll @@ -10,7 +10,7 @@ ; A[0] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -24,7 +24,7 @@ for: br label %bodyB bodyB: - store double %val, double* %A + store double %val, ptr %A br label %inc inc: @@ -57,6 +57,6 @@ return: ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0] -> MemRef_A[0] }; ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %val = sitofp i32 %j to double -; CHECK-NEXT: store double %val, double* %A, align 8 +; CHECK-NEXT: store double %val, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_synthesizable_useinloop.ll b/polly/test/ForwardOpTree/forward_synthesizable_useinloop.ll index 587d316277c3..bb1760ae0ffb 100644 --- a/polly/test/ForwardOpTree/forward_synthesizable_useinloop.ll +++ b/polly/test/ForwardOpTree/forward_synthesizable_useinloop.ll @@ -13,7 +13,7 @@ ; } ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -34,7 +34,7 @@ for: bodyB: - store double %val, double* %A + store double %val, ptr %A br label %inner.inc @@ -75,6 +75,6 @@ return: ; CHECK-NEXT: [n] -> { Stmt_bodyB[i0, i1] -> MemRef_A[0] }; ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %val = sitofp i32 %j to double -; CHECK-NEXT: store double %val, double* %A, align 8 +; CHECK-NEXT: store double %val, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/forward_transitive.ll b/polly/test/ForwardOpTree/forward_transitive.ll index 1801365f8e85..243889437149 100644 --- a/polly/test/ForwardOpTree/forward_transitive.ll +++ b/polly/test/ForwardOpTree/forward_transitive.ll @@ -13,7 +13,7 @@ ; A[0] = val2; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -31,7 +31,7 @@ for: br label %bodyC bodyC: - store double %val2, double* %A + store double %val2, ptr %A br label %inc inc: @@ -72,6 +72,6 @@ return: ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %val1 = fadd double 1.250000e+01, 1.250000e+01 ; CHECK-NEXT: %val2 = fadd double %val1, 2.100000e+01 -; CHECK-NEXT: store double %val2, double* %A, align 8 +; CHECK-NEXT: store double %val2, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/jacobi-1d.ll b/polly/test/ForwardOpTree/jacobi-1d.ll index a9cf68cae2be..05ccd998c1a2 100644 --- a/polly/test/ForwardOpTree/jacobi-1d.ll +++ b/polly/test/ForwardOpTree/jacobi-1d.ll @@ -2,19 +2,19 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define internal fastcc void @kernel_jacobi_1d(double* noalias nocapture %A, double* noalias nocapture %B) unnamed_addr #0 { +define internal fastcc void @kernel_jacobi_1d(ptr noalias nocapture %A, ptr noalias nocapture %B) unnamed_addr #0 { entry: br label %entry.split entry.split: ; preds = %entry - %arrayidx6.phi.trans.insert = getelementptr inbounds double, double* %A, i64 1 - %arrayidx21.phi.trans.insert = getelementptr inbounds double, double* %B, i64 1 + %arrayidx6.phi.trans.insert = getelementptr inbounds double, ptr %A, i64 1 + %arrayidx21.phi.trans.insert = getelementptr inbounds double, ptr %B, i64 1 br label %for.body for.body: ; preds = %for.inc33, %entry.split %t.03 = phi i32 [ 0, %entry.split ], [ %inc34, %for.inc33 ] - %.pre = load double, double* %A, align 8, !tbaa !6 - %.pre10 = load double, double* %arrayidx6.phi.trans.insert, align 8, !tbaa !6 + %.pre = load double, ptr %A, align 8, !tbaa !6 + %.pre10 = load double, ptr %arrayidx6.phi.trans.insert, align 8, !tbaa !6 br label %for.body3 for.body3: ; preds = %for.body3, %for.body @@ -23,18 +23,18 @@ for.body3: ; preds = %for.body3, %for.bod %indvars.iv = phi i64 [ 1, %for.body ], [ %indvars.iv.next, %for.body3 ] %add = fadd double %1, %0 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 - %arrayidx9 = getelementptr inbounds double, double* %A, i64 %indvars.iv.next - %2 = load double, double* %arrayidx9, align 8, !tbaa !6 + %arrayidx9 = getelementptr inbounds double, ptr %A, i64 %indvars.iv.next + %2 = load double, ptr %arrayidx9, align 8, !tbaa !6 %add10 = fadd double %add, %2 %mul = fmul double %add10, 3.333300e-01 - %arrayidx12 = getelementptr inbounds double, double* %B, i64 %indvars.iv - store double %mul, double* %arrayidx12, align 8, !tbaa !6 + %arrayidx12 = getelementptr inbounds double, ptr %B, i64 %indvars.iv + store double %mul, ptr %arrayidx12, align 8, !tbaa !6 %exitcond = icmp eq i64 %indvars.iv.next, 3 br i1 %exitcond, label %for.end, label %for.body3 for.end: ; preds = %for.body3 - %.pre11 = load double, double* %B, align 8, !tbaa !6 - %.pre12 = load double, double* %arrayidx21.phi.trans.insert, align 8, !tbaa !6 + %.pre11 = load double, ptr %B, align 8, !tbaa !6 + %.pre12 = load double, ptr %arrayidx21.phi.trans.insert, align 8, !tbaa !6 br label %for.inc33 for.inc33: ; preds = %for.body16 @@ -77,8 +77,8 @@ attributes #0 = { noinline norecurse nounwind uwtable "correctly-rounded-divide- ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: { Stmt_for_body[i0] -> MemRef2__phi[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %.pre = load double, double* %A, align 8, !tbaa !2 -; CHECK-NEXT: %.pre10 = load double, double* %arrayidx6.phi.trans.insert, align 8, !tbaa !2 +; CHECK-NEXT: %.pre = load double, ptr %A, align 8, !tbaa !2 +; CHECK-NEXT: %.pre10 = load double, ptr %arrayidx6.phi.trans.insert, align 8, !tbaa !2 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_for_body3 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] @@ -99,10 +99,10 @@ attributes #0 = { noinline norecurse nounwind uwtable "correctly-rounded-divide- ; CHECK-NEXT: %0 = phi double [ %.pre10, %for.body ], [ %2, %for.body3 ] ; CHECK-NEXT: %1 = phi double [ %.pre, %for.body ], [ %0, %for.body3 ] ; CHECK-NEXT: %add = fadd double %1, %0 -; CHECK-NEXT: %2 = load double, double* %arrayidx9, align 8, !tbaa !2 +; CHECK-NEXT: %2 = load double, ptr %arrayidx9, align 8, !tbaa !2 ; CHECK-NEXT: %add10 = fadd double %add, %2 ; CHECK-NEXT: %mul = fmul double %add10, 3.333300e-01 -; CHECK-NEXT: store double %mul, double* %arrayidx12, align 8, !tbaa !2 +; CHECK-NEXT: store double %mul, ptr %arrayidx12, align 8, !tbaa !2 ; CHECK-NEXT: %exitcond = icmp eq i64 %indvars.iv.next, 3 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ForwardOpTree/noforward_from_region.ll b/polly/test/ForwardOpTree/noforward_from_region.ll index 7abc65ab196f..30150912f32e 100644 --- a/polly/test/ForwardOpTree/noforward_from_region.ll +++ b/polly/test/ForwardOpTree/noforward_from_region.ll @@ -17,7 +17,7 @@ ; A[0] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -27,16 +27,16 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %val = load double, double* %A + %val = load double, ptr %A %cond = fcmp oeq double 21.0, 21.0 br i1 %cond, label %bodyA_true, label %bodyB bodyA_true: - store double 42.0, double* %A + store double 42.0, ptr %A br label %bodyB bodyB: - store double %val, double* %A + store double %val, ptr %A br label %bodyB_exit bodyB_exit: diff --git a/polly/test/ForwardOpTree/noforward_load_conditional.ll b/polly/test/ForwardOpTree/noforward_load_conditional.ll index 11324077d2dc..eaa0fc52186b 100644 --- a/polly/test/ForwardOpTree/noforward_load_conditional.ll +++ b/polly/test/ForwardOpTree/noforward_load_conditional.ll @@ -15,7 +15,7 @@ ; A[j] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -25,18 +25,18 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - %val = load double, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + %val = load double, ptr %B_idx %cond = icmp slt i32 %j, 1 br i1 %cond, label %bodyA_true, label %bodyB bodyA_true: - store double 0.0, double* %B_idx + store double 0.0, ptr %B_idx br label %bodyB bodyB: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %inc inc: diff --git a/polly/test/ForwardOpTree/noforward_load_writebetween.ll b/polly/test/ForwardOpTree/noforward_load_writebetween.ll index 5719cf83400c..e2272c1c1f13 100644 --- a/polly/test/ForwardOpTree/noforward_load_writebetween.ll +++ b/polly/test/ForwardOpTree/noforward_load_writebetween.ll @@ -14,7 +14,7 @@ ; A[j] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -24,17 +24,17 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - %val = load double, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + %val = load double, ptr %B_idx br label %bodyB bodyB: - store double 0.0, double* %B_idx + store double 0.0, ptr %B_idx br label %bodyC bodyC: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %inc inc: diff --git a/polly/test/ForwardOpTree/noforward_outofquota.ll b/polly/test/ForwardOpTree/noforward_outofquota.ll index e01cec051e95..2ec965d71184 100644 --- a/polly/test/ForwardOpTree/noforward_outofquota.ll +++ b/polly/test/ForwardOpTree/noforward_outofquota.ll @@ -10,7 +10,7 @@ ; A[j] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -20,13 +20,13 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - %val = load double, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + %val = load double, ptr %B_idx br label %bodyB bodyB: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %inc inc: diff --git a/polly/test/ForwardOpTree/noforward_partial.ll b/polly/test/ForwardOpTree/noforward_partial.ll index 201c1c919251..127ac9ff5f14 100644 --- a/polly/test/ForwardOpTree/noforward_partial.ll +++ b/polly/test/ForwardOpTree/noforward_partial.ll @@ -13,7 +13,7 @@ ; declare double @f(...) #1 -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -28,7 +28,7 @@ for: br label %bodyB bodyB: - store double %val, double* %A + store double %val, ptr %A br label %inc inc: diff --git a/polly/test/ForwardOpTree/noforward_phi.ll b/polly/test/ForwardOpTree/noforward_phi.ll index 6413d0329336..58d41a410d3b 100644 --- a/polly/test/ForwardOpTree/noforward_phi.ll +++ b/polly/test/ForwardOpTree/noforward_phi.ll @@ -10,7 +10,7 @@ ; A[0] = val; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -24,7 +24,7 @@ for: br label %bodyB bodyB: - store double %val, double* %A + store double %val, ptr %A br label %inc inc: diff --git a/polly/test/ForwardOpTree/noforward_selfrefphi.ll b/polly/test/ForwardOpTree/noforward_selfrefphi.ll index dec655f6e3d6..b2d4dc51c978 100644 --- a/polly/test/ForwardOpTree/noforward_selfrefphi.ll +++ b/polly/test/ForwardOpTree/noforward_selfrefphi.ll @@ -10,7 +10,7 @@ ; A[j] = phi; ; } ; -define void @func(i32 %n, i32 %m, double* noalias nonnull %A) { +define void @func(i32 %n, i32 %m, ptr noalias nonnull %A) { entry: br label %for @@ -30,8 +30,8 @@ for: br i1 %i.cmp, label %for.inner, label %for.exit for.exit: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %phi, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %phi, ptr %A_idx br label %inc inc: diff --git a/polly/test/ForwardOpTree/noforward_sideffects.ll b/polly/test/ForwardOpTree/noforward_sideffects.ll index 4afbcd759bc5..a5633769f670 100644 --- a/polly/test/ForwardOpTree/noforward_sideffects.ll +++ b/polly/test/ForwardOpTree/noforward_sideffects.ll @@ -10,9 +10,9 @@ ; A[0] = val; ; } ; -declare double @f(double* %A) #1 +declare double @f(ptr %A) #1 -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -22,11 +22,11 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %val = call double (double*) @f(double* %A) + %val = call double (ptr) @f(ptr %A) br label %bodyB bodyB: - store double %val, double* %A + store double %val, ptr %A br label %inc inc: diff --git a/polly/test/ForwardOpTree/noforward_synthesizable_unknownit.ll b/polly/test/ForwardOpTree/noforward_synthesizable_unknownit.ll index 95e78d30d87c..f589fde6e415 100644 --- a/polly/test/ForwardOpTree/noforward_synthesizable_unknownit.ll +++ b/polly/test/ForwardOpTree/noforward_synthesizable_unknownit.ll @@ -2,7 +2,7 @@ ; ; Do not try to forward %i.trunc, it is not synthesizable in %body. ; -define void @func(i32 %n, i32* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -31,7 +31,7 @@ for: br i1 %inner.cond, label %body, label %inner.for body: - store i32 %i.trunc, i32* %A + store i32 %i.trunc, ptr %A br label %inc diff --git a/polly/test/ForwardOpTree/out-of-quota1.ll b/polly/test/ForwardOpTree/out-of-quota1.ll index 0cdf10c28b08..c31ee51d519f 100644 --- a/polly/test/ForwardOpTree/out-of-quota1.ll +++ b/polly/test/ForwardOpTree/out-of-quota1.ll @@ -4,15 +4,15 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" -%struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187 = type { i32, i32, i32, i32, i32, [50 x [6 x [33 x i64]]], [50 x [6 x [33 x i64]]], [50 x [6 x [33 x i64]]], [50 x [6 x [33 x i64]]], i32, i32, i32, i32, i32, i32, i32, i32, i32, i16, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i16**, i16***, i8*, i16**, i8***, i64***, i64***, i16****, i8**, i8**, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187*, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187*, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [2 x i32], i32, %struct.DecRefPicMarking_s.4.220.388.508.628.796.916.1132.1204.1444.1468.1516.1540.1564.1588.1660.1684.1756.1780.1828.1876.2164.2284.2404.2428.2452.2476.2500.2524.2836.2860.2884.2908.4416.0.6.12.16.22.28.54.56.58.60.186*, i32 } -%struct.DecRefPicMarking_s.4.220.388.508.628.796.916.1132.1204.1444.1468.1516.1540.1564.1588.1660.1684.1756.1780.1828.1876.2164.2284.2404.2428.2452.2476.2500.2524.2836.2860.2884.2908.4416.0.6.12.16.22.28.54.56.58.60.186 = type { i32, i32, i32, i32, i32, %struct.DecRefPicMarking_s.4.220.388.508.628.796.916.1132.1204.1444.1468.1516.1540.1564.1588.1660.1684.1756.1780.1828.1876.2164.2284.2404.2428.2452.2476.2500.2524.2836.2860.2884.2908.4416.0.6.12.16.22.28.54.56.58.60.186* } +%struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187 = type { i32, i32, i32, i32, i32, [50 x [6 x [33 x i64]]], [50 x [6 x [33 x i64]]], [50 x [6 x [33 x i64]]], [50 x [6 x [33 x i64]]], i32, i32, i32, i32, i32, i32, i32, i32, i32, i16, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [2 x i32], i32, ptr, i32 } +%struct.DecRefPicMarking_s.4.220.388.508.628.796.916.1132.1204.1444.1468.1516.1540.1564.1588.1660.1684.1756.1780.1828.1876.2164.2284.2404.2428.2452.2476.2500.2524.2836.2860.2884.2908.4416.0.6.12.16.22.28.54.56.58.60.186 = type { i32, i32, i32, i32, i32, ptr } define void @func() { entry: - %0 = load %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187*, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187** undef, align 8 - %1 = load %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187*, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187** undef, align 8 - %2 = load %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187*, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187** undef, align 8 - %3 = load i16, i16* undef, align 4 + %0 = load ptr, ptr undef, align 8 + %1 = load ptr, ptr undef, align 8 + %2 = load ptr, ptr undef, align 8 + %3 = load i16, ptr undef, align 4 %conv2081956 = zext i16 %3 to i64 br label %for.cond212.preheader @@ -23,25 +23,25 @@ for.cond212.preheader: for.body215: %indvars.iv1921 = phi i64 [ 0, %for.cond212.preheader ], [ %indvars.iv.next1922, %for.body215 ] %4 = shl nuw nsw i64 %indvars.iv1921, 1 - %arrayidx230 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187* %1, i64 0, i32 5, i64 %indvars.iv1926, i64 1, i64 %4 - store i64 undef, i64* %arrayidx230, align 8 + %arrayidx230 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, ptr %1, i64 0, i32 5, i64 %indvars.iv1926, i64 1, i64 %4 + store i64 undef, ptr %arrayidx230, align 8 %5 = or i64 %4, 1 - %arrayidx248 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187* %1, i64 0, i32 5, i64 %indvars.iv1926, i64 1, i64 %5 - store i64 undef, i64* %arrayidx248, align 8 - %arrayidx264 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187* %2, i64 0, i32 5, i64 %indvars.iv1926, i64 1, i64 %4 - store i64 undef, i64* %arrayidx264, align 8 - %arrayidx282 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187* %2, i64 0, i32 5, i64 %indvars.iv1926, i64 1, i64 %5 - store i64 undef, i64* %arrayidx282, align 8 - %arrayidx298 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187* %1, i64 0, i32 5, i64 %indvars.iv1926, i64 0, i64 %4 - store i64 undef, i64* %arrayidx298, align 8 - %arrayidx307 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187* %0, i64 0, i32 5, i64 %indvars.iv1926, i64 2, i64 %5 - %6 = load i64, i64* %arrayidx307, align 8 - %arrayidx316 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187* %1, i64 0, i32 5, i64 %indvars.iv1926, i64 0, i64 %5 - store i64 %6, i64* %arrayidx316, align 8 - %arrayidx332 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187* %2, i64 0, i32 5, i64 %indvars.iv1926, i64 0, i64 %4 - store i64 undef, i64* %arrayidx332, align 8 - %arrayidx350 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187* %2, i64 0, i32 5, i64 %indvars.iv1926, i64 0, i64 %5 - store i64 undef, i64* %arrayidx350, align 8 + %arrayidx248 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, ptr %1, i64 0, i32 5, i64 %indvars.iv1926, i64 1, i64 %5 + store i64 undef, ptr %arrayidx248, align 8 + %arrayidx264 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, ptr %2, i64 0, i32 5, i64 %indvars.iv1926, i64 1, i64 %4 + store i64 undef, ptr %arrayidx264, align 8 + %arrayidx282 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, ptr %2, i64 0, i32 5, i64 %indvars.iv1926, i64 1, i64 %5 + store i64 undef, ptr %arrayidx282, align 8 + %arrayidx298 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, ptr %1, i64 0, i32 5, i64 %indvars.iv1926, i64 0, i64 %4 + store i64 undef, ptr %arrayidx298, align 8 + %arrayidx307 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, ptr %0, i64 0, i32 5, i64 %indvars.iv1926, i64 2, i64 %5 + %6 = load i64, ptr %arrayidx307, align 8 + %arrayidx316 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, ptr %1, i64 0, i32 5, i64 %indvars.iv1926, i64 0, i64 %5 + store i64 %6, ptr %arrayidx316, align 8 + %arrayidx332 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, ptr %2, i64 0, i32 5, i64 %indvars.iv1926, i64 0, i64 %4 + store i64 undef, ptr %arrayidx332, align 8 + %arrayidx350 = getelementptr inbounds %struct.storable_picture.5.221.389.509.629.797.917.1133.1205.1445.1469.1517.1541.1565.1589.1661.1685.1757.1781.1829.1877.2165.2285.2405.2429.2453.2477.2501.2525.2837.2861.2885.2909.4417.1.7.13.17.23.29.55.57.59.61.187, ptr %2, i64 0, i32 5, i64 %indvars.iv1926, i64 0, i64 %5 + store i64 undef, ptr %arrayidx350, align 8 %indvars.iv.next1922 = add nuw nsw i64 %indvars.iv1921, 1 %exitcond1925 = icmp eq i64 %indvars.iv.next1922, 16 br i1 %exitcond1925, label %for.inc354, label %for.body215 diff --git a/polly/test/GPGPU/add-scalars-in-scop-to-kills.ll b/polly/test/GPGPU/add-scalars-in-scop-to-kills.ll index 26029dc9f27c..64b4cc4aa100 100644 --- a/polly/test/GPGPU/add-scalars-in-scop-to-kills.ll +++ b/polly/test/GPGPU/add-scalars-in-scop-to-kills.ll @@ -13,7 +13,7 @@ ; Check that kernel launch is generated in host IR. ; the declare would not be generated unless a call to a kernel exists. -; HOST-IR: declare void @polly_launchKernel(i8*, i32, i32, i32, i32, i32, i8*) +; HOST-IR: declare void @polly_launchKernel(ptr, i32, i32, i32, i32, i32, ptr) ; Check that we add variables that are local to a scop into the kills that we ; pass to PPCG. This should enable PPCG to codegen this example. @@ -36,7 +36,7 @@ ; ModuleID = 'test.ll' target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" -define void @checkScalarKill(i32* %A, i32* %B, i32* %C, i32 %control1, i32 %control2) { +define void @checkScalarKill(ptr %A, ptr %B, ptr %C, i32 %control1, i32 %control2) { entry: br label %entry.split @@ -51,17 +51,17 @@ XLoopInit: ; preds = %entry.split, %BLoop br i1 %cmp2, label %C2Add, label %BLoopAccumX C2Add: ; preds = %XLoopInit - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp6 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp6 = load i32, ptr %arrayidx, align 4 %add4 = add nsw i32 %tmp6, %x.0 br label %BLoopAccumX BLoopAccumX: ; preds = %XLoopInit, %C2Add %x.1 = phi i32 [ %add4, %C2Add ], [ %x.0, %XLoopInit ] - %arrayidx7 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv - %tmp11 = load i32, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %B, i64 %indvars.iv + %tmp11 = load i32, ptr %arrayidx7, align 4 %add8 = add nsw i32 %tmp11, %x.1 - store i32 %add8, i32* %arrayidx7, align 4 + store i32 %add8, ptr %arrayidx7, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 1000 br i1 %exitcond, label %XLoopInit, label %for.end diff --git a/polly/test/GPGPU/align-params-in-schedule.ll b/polly/test/GPGPU/align-params-in-schedule.ll index da9dc3597730..fa9a8f3eb4e5 100644 --- a/polly/test/GPGPU/align-params-in-schedule.ll +++ b/polly/test/GPGPU/align-params-in-schedule.ll @@ -13,15 +13,15 @@ source_filename = "bugpoint-output-4d01492.bc" target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f16:16:16-f32:32:32-f64:64:64-f128:128:128-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" target triple = "x86_64-unknown-linux-gnu" -%struct.barney = type { i8*, i64, i64, [2 x %struct.widget] } +%struct.barney = type { ptr, i64, i64, [2 x %struct.widget] } %struct.widget = type { i64, i64, i64 } @global = external unnamed_addr global %struct.barney, align 32 ; Function Attrs: nounwind uwtable -define void @wobble(i32* noalias %arg) #0 { +define void @wobble(ptr noalias %arg) #0 { bb: - %tmp = load i32, i32* %arg, align 4 + %tmp = load i32, ptr %arg, align 4 br label %bb1 bb1: ; preds = %bb13, %bb @@ -29,15 +29,15 @@ bb1: ; preds = %bb13, %bb br label %bb3 bb3: ; preds = %bb3, %bb1 - %tmp4 = load i32*, i32** bitcast (%struct.barney* @global to i32**), align 32 + %tmp4 = load ptr, ptr @global, align 32 %tmp5 = sext i32 %tmp2 to i64 - %tmp6 = load i64, i64* getelementptr inbounds (%struct.barney, %struct.barney* @global, i64 0, i32 3, i64 1, i32 0), align 8 + %tmp6 = load i64, ptr getelementptr inbounds (%struct.barney, ptr @global, i64 0, i32 3, i64 1, i32 0), align 8 %tmp7 = mul i64 %tmp6, %tmp5 %tmp8 = add i64 %tmp7, 0 - %tmp9 = load i64, i64* getelementptr inbounds (%struct.barney, %struct.barney* @global, i64 0, i32 1), align 8 + %tmp9 = load i64, ptr getelementptr inbounds (%struct.barney, ptr @global, i64 0, i32 1), align 8 %tmp10 = add i64 %tmp8, %tmp9 - %tmp11 = getelementptr i32, i32* %tmp4, i64 %tmp10 - store i32 undef, i32* %tmp11, align 4 + %tmp11 = getelementptr i32, ptr %tmp4, i64 %tmp10 + store i32 undef, ptr %tmp11, align 4 %tmp12 = icmp eq i32 0, 0 br i1 %tmp12, label %bb13, label %bb3 diff --git a/polly/test/GPGPU/array-with-elem-type-smaller-than-byte.ll b/polly/test/GPGPU/array-with-elem-type-smaller-than-byte.ll index 5985c7a2954d..12b872d55192 100644 --- a/polly/test/GPGPU/array-with-elem-type-smaller-than-byte.ll +++ b/polly/test/GPGPU/array-with-elem-type-smaller-than-byte.ll @@ -21,16 +21,16 @@ target triple = "x86_64-unknown-linux-gnu" ; } ; Function Attrs: nounwind uwtable -define void @f(i32* noalias %niters.ptr, [0 x i32]* noalias %arr) #0 { +define void @f(ptr noalias %niters.ptr, ptr noalias %arr) #0 { entry: - %niters = load i32, i32* %niters.ptr, align 4 + %niters = load i32, ptr %niters.ptr, align 4 br label %loop.body loop.body: ; preds = %loop.body, %entry %indvar = phi i32 [ %indvar.next, %loop.body ], [ 1, %entry ] %indvar.sext = sext i32 %indvar to i64 - %arr.slot = getelementptr [0 x i32], [0 x i32]* %arr, i64 0, i64 %indvar.sext - store i32 0, i32* %arr.slot, align 4 + %arr.slot = getelementptr [0 x i32], ptr %arr, i64 0, i64 %indvar.sext + store i32 0, ptr %arr.slot, align 4 %tmp8 = icmp eq i32 %indvar, %niters %indvar.next = add i32 %indvar, 1 br i1 %tmp8, label %loop.exit, label %loop.body diff --git a/polly/test/GPGPU/bounds-construction-with-ignore-param-bounds.ll b/polly/test/GPGPU/bounds-construction-with-ignore-param-bounds.ll index d47ba799daea..a60744289885 100644 --- a/polly/test/GPGPU/bounds-construction-with-ignore-param-bounds.ll +++ b/polly/test/GPGPU/bounds-construction-with-ignore-param-bounds.ll @@ -19,7 +19,7 @@ ; Check that kernel launch is generated in host IR. ; the declare would not be generated unless a call to a kernel exists. -; HOST-IR: declare void @polly_launchKernel(i8*, i32, i32, i32, i32, i32, i8*) +; HOST-IR: declare void @polly_launchKernel(ptr, i32, i32, i32, i32, i32, ptr) ; ModuleID = 'test/GPGPU/bounds-construction-with-ignore-param-bounds.ll' ; C pseudocode @@ -34,15 +34,15 @@ target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64: target triple = "x86_64-unknown-linux-gnu" ; Function Attrs: nounwind uwtable -define void @f(i32 *%arr, i64 %niters, i64 %stride) unnamed_addr #1 { +define void @f(ptr %arr, i64 %niters, i64 %stride) unnamed_addr #1 { entry: br label %loop loop: ; preds = %loop, %entry %indvar = phi i64 [ 0, %entry ], [ %indvar.next, %loop ] %idx = mul nuw nsw i64 %indvar, %stride - %slot = getelementptr i32, i32* %arr, i64 %idx - store i32 1, i32* %slot, align 4 + %slot = getelementptr i32, ptr %arr, i64 %idx + store i32 1, ptr %slot, align 4 %indvar.next = add nuw nsw i64 %indvar, 1 %check = icmp sgt i64 %indvar.next, %niters br i1 %check, label %exit, label %loop diff --git a/polly/test/GPGPU/cuda-annotations.ll b/polly/test/GPGPU/cuda-annotations.ll index 9a662797a1b9..cbb0296d48ef 100644 --- a/polly/test/GPGPU/cuda-annotations.ll +++ b/polly/test/GPGPU/cuda-annotations.ll @@ -4,15 +4,15 @@ ; REQUIRES: pollyacc -; KERNEL: define ptx_kernel void @FUNC_foo_SCOP_0_KERNEL_0(i8 addrspace(1)* %MemRef_A, i64 %n) #0 { +; KERNEL: define ptx_kernel void @FUNC_foo_SCOP_0_KERNEL_0(ptr addrspace(1) %MemRef_A, i64 %n) #0 { ; KERNEL: !nvvm.annotations = !{!0} -; KERNEL: !0 = !{void (i8 addrspace(1)*, i64)* @FUNC_foo_SCOP_0_KERNEL_0, !"maxntidx", i32 32, !"maxntidy", i32 1, !"maxntidz", i32 1} +; KERNEL: !0 = !{ptr @FUNC_foo_SCOP_0_KERNEL_0, !"maxntidx", i32 32, !"maxntidy", i32 1, !"maxntidz", i32 1} target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64* %A, i64 %n) { +define void @foo(ptr %A, i64 %n) { bb: br label %bb1 @@ -22,10 +22,10 @@ bb1: ; preds = %bb6, %bb br i1 %tmp, label %bb2, label %bb8 bb2: ; preds = %bb1 - %tmp3 = getelementptr inbounds i64, i64* %A, i64 %i.0 - %tmp4 = load i64, i64* %tmp3, align 8 + %tmp3 = getelementptr inbounds i64, ptr %A, i64 %i.0 + %tmp4 = load i64, ptr %tmp3, align 8 %tmp5 = add nsw i64 %tmp4, 100 - store i64 %tmp5, i64* %tmp3, align 8 + store i64 %tmp5, ptr %tmp3, align 8 br label %bb6 bb6: ; preds = %bb2 diff --git a/polly/test/GPGPU/debug-metadata-leak.ll b/polly/test/GPGPU/debug-metadata-leak.ll index 24a6f51d5fdd..c90926c318e8 100644 --- a/polly/test/GPGPU/debug-metadata-leak.ll +++ b/polly/test/GPGPU/debug-metadata-leak.ll @@ -3,7 +3,7 @@ ; REQUIRES: pollyacc -; KERNEL-IR: define ptx_kernel void @FUNC_vec_add_1_SCOP_0_KERNEL_0(i8 addrspace(1)* %MemRef_arr, i32 %N) #0 { +; KERNEL-IR: define ptx_kernel void @FUNC_vec_add_1_SCOP_0_KERNEL_0(ptr addrspace(1) %MemRef_arr, i32 %N) #0 { ; The instruction marked <<<LeakyInst>>> is copied into the GPUModule, ; with changes only to the parameters to access data on the device instead of @@ -27,10 +27,10 @@ source_filename = "vec_add_1.c" target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @vec_add_1(i32 %N, i32* %arr) !dbg !7 { +define void @vec_add_1(i32 %N, ptr %arr) !dbg !7 { entry: call void @llvm.dbg.value(metadata i32 %N, i64 0, metadata !13, metadata !16), !dbg !17 - call void @llvm.dbg.value(metadata i32* %arr, i64 0, metadata !14, metadata !16), !dbg !18 + call void @llvm.dbg.value(metadata ptr %arr, i64 0, metadata !14, metadata !16), !dbg !18 call void @llvm.dbg.value(metadata i32 0, i64 0, metadata !15, metadata !16), !dbg !19 %tmp = sext i32 %N to i64, !dbg !20 br label %for.cond, !dbg !20 @@ -42,10 +42,10 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp, label %for.body, label %for.end, !dbg !24 for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %arr, i64 %indvars.iv, !dbg !25 - %tmp1 = load i32, i32* %arrayidx, align 4, !dbg !26, !tbaa !27 + %arrayidx = getelementptr inbounds i32, ptr %arr, i64 %indvars.iv, !dbg !25 + %tmp1 = load i32, ptr %arrayidx, align 4, !dbg !26, !tbaa !27 %add = add nsw i32 %tmp1, 1, !dbg !26 ; <<<LeakyInst>>> - store i32 %add, i32* %arrayidx, align 4, !dbg !26, !tbaa !27 + store i32 %add, ptr %arrayidx, align 4, !dbg !26, !tbaa !27 br label %for.inc, !dbg !25 for.inc: ; preds = %for.body diff --git a/polly/test/GPGPU/double-parallel-loop.ll b/polly/test/GPGPU/double-parallel-loop.ll index 911a6a6a9ca5..4aeee035a407 100644 --- a/polly/test/GPGPU/double-parallel-loop.ll +++ b/polly/test/GPGPU/double-parallel-loop.ll @@ -119,28 +119,24 @@ ; IR-NEXT: br label %polly.acc.initialize ; IR: polly.acc.initialize: -; IR-NEXT: [[GPUContext:%.*]] = call i8* @polly_initContext() -; IR-NEXT: %p_dev_array_MemRef_A = call i8* @polly_allocateMemoryForDevice(i64 4194304) -; IR-NEXT: [[HostPtr:%.*]] = bitcast [1024 x float]* %A to i8* -; IR-NEXT: call void @polly_copyFromHostToDevice(i8* [[HostPtr]], i8* %p_dev_array_MemRef_A, i64 4194304) -; IR-NEXT: [[DevPtr:%.*]] = call i8* @polly_getDevicePtr(i8* %p_dev_array_MemRef_A) -; IR-NEXT: [[ParamSlot:%.*]] = getelementptr [1 x i8*], [1 x i8*]* %polly_launch_0_params, i64 0, i64 0 -; IR-NEXT: store i8* [[DevPtr]], i8** %polly_launch_0_param_0 -; IR-NEXT: [[ParamTyped:%.*]] = bitcast i8** %polly_launch_0_param_0 to i8* -; IR-NEXT: store i8* [[ParamTyped]], i8** [[ParamSlot]] -; IR-NEXT: call i8* @polly_getKernel -; IR-NEXT: call void @polly_launchKernel(i8* %11, i32 32, i32 32, i32 32, i32 16, i32 1, i8* %polly_launch_0_params_i8ptr) +; IR-NEXT: [[GPUContext:%.*]] = call ptr @polly_initContext() +; IR-NEXT: %p_dev_array_MemRef_A = call ptr @polly_allocateMemoryForDevice(i64 4194304) +; IR-NEXT: call void @polly_copyFromHostToDevice(ptr %A, ptr %p_dev_array_MemRef_A, i64 4194304) +; IR-NEXT: [[DevPtr:%.*]] = call ptr @polly_getDevicePtr(ptr %p_dev_array_MemRef_A) +; IR-NEXT: store ptr [[DevPtr]], ptr %polly_launch_0_param_0 +; IR-NEXT: store ptr %polly_launch_0_param_0, ptr %polly_launch_0_params +; IR-NEXT: call ptr @polly_getKernel +; IR-NEXT: call void @polly_launchKernel(ptr %11, i32 32, i32 32, i32 32, i32 16, i32 1, ptr %polly_launch_0_params_i8ptr) ; IR-NEXT: call void @polly_freeKernel -; IR-NEXT: [[HostPtr2:%.*]] = bitcast [1024 x float]* %A to i8* -; IR-NEXT: call void @polly_copyFromDeviceToHost(i8* %p_dev_array_MemRef_A, i8* [[HostPtr2]], i64 4194304) -; IR-NEXT: call void @polly_freeDeviceMemory(i8* %p_dev_array_MemRef_A) -; IR-NEXT: call void @polly_freeContext(i8* [[GPUContext]]) +; IR-NEXT: call void @polly_copyFromDeviceToHost(ptr %p_dev_array_MemRef_A, ptr %A, i64 4194304) +; IR-NEXT: call void @polly_freeDeviceMemory(ptr %p_dev_array_MemRef_A) +; IR-NEXT: call void @polly_freeContext(ptr [[GPUContext]]) ; IR-NEXT: br label %polly.exiting ; IR: polly.exiting: ; IR-NEXT: br label %polly.merge_new_and_old -; KERNEL-IR-LABEL: define ptx_kernel void @kernel_0(i8* %MemRef_A) #0 { +; KERNEL-IR-LABEL: define ptx_kernel void @kernel_0(ptr %MemRef_A) #0 { ; KERNEL-IR-NEXT: entry: ; KERNEL-IR-NEXT: %0 = call i32 @llvm.nvvm.read.ptx.sreg.ctaid.x() ; KERNEL-IR-NEXT: %b0 = zext i32 %0 to i64 @@ -168,7 +164,6 @@ ; KERNEL-IR-LABEL: polly.stmt.bb5: ; preds = %polly.loop_header ; KERNEL-IR-NEXT: %10 = mul i64 %5, %9 ; KERNEL-IR-NEXT: %p_tmp6 = sitofp i64 %10 to float -; KERNEL-IR-NEXT: %polly.access.cast.MemRef_A = bitcast i8* %MemRef_A to float* ; KERNEL-IR-NEXT: %11 = mul nsw i64 32, %b0 ; KERNEL-IR-NEXT: %12 = add nsw i64 %11, %t0 ; KERNEL-IR-NEXT: %polly.access.mul.MemRef_A = mul nsw i64 %12, 1024 @@ -177,10 +172,9 @@ ; KERNEL-IR-NEXT: %15 = mul nsw i64 16, %polly.indvar ; KERNEL-IR-NEXT: %16 = add nsw i64 %14, %15 ; KERNEL-IR-NEXT: %polly.access.add.MemRef_A = add nsw i64 %polly.access.mul.MemRef_A, %16 -; KERNEL-IR-NEXT: %polly.access.MemRef_A = getelementptr float, float* %polly.access.cast.MemRef_A, i64 %polly.access.add.MemRef_A -; KERNEL-IR-NEXT: %tmp8_p_scalar_ = load float, float* %polly.access.MemRef_A, align 4 +; KERNEL-IR-NEXT: %polly.access.MemRef_A = getelementptr float, ptr %MemRef_A, i64 %polly.access.add.MemRef_A +; KERNEL-IR-NEXT: %tmp8_p_scalar_ = load float, ptr %polly.access.MemRef_A, align 4 ; KERNEL-IR-NEXT: %p_tmp9 = fadd float %tmp8_p_scalar_, %p_tmp6 -; KERNEL-IR-NEXT: %polly.access.cast.MemRef_A1 = bitcast i8* %MemRef_A to float* ; KERNEL-IR-NEXT: %17 = mul nsw i64 32, %b0 ; KERNEL-IR-NEXT: %18 = add nsw i64 %17, %t0 ; KERNEL-IR-NEXT: %polly.access.mul.MemRef_A2 = mul nsw i64 %18, 1024 @@ -189,8 +183,8 @@ ; KERNEL-IR-NEXT: %21 = mul nsw i64 16, %polly.indvar ; KERNEL-IR-NEXT: %22 = add nsw i64 %20, %21 ; KERNEL-IR-NEXT: %polly.access.add.MemRef_A3 = add nsw i64 %polly.access.mul.MemRef_A2, %22 -; KERNEL-IR-NEXT: %polly.access.MemRef_A4 = getelementptr float, float* %polly.access.cast.MemRef_A1, i64 %polly.access.add.MemRef_A3 -; KERNEL-IR-NEXT: store float %p_tmp9, float* %polly.access.MemRef_A4, align 4 +; KERNEL-IR-NEXT: %polly.access.MemRef_A4 = getelementptr float, ptr %MemRef_A, i64 %polly.access.add.MemRef_A3 +; KERNEL-IR-NEXT: store float %p_tmp9, ptr %polly.access.MemRef_A4, align 4 ; KERNEL-IR-NEXT: %polly.indvar_next = add nsw i64 %polly.indvar, 1 ; KERNEL-IR-NEXT: %polly.loop_cond = icmp sle i64 %polly.indvar, 0 ; KERNEL-IR-NEXT: br i1 %polly.loop_cond, label %polly.loop_header, label %polly.loop_exit @@ -218,7 +212,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @double_parallel_loop([1024 x float]* %A) { +define void @double_parallel_loop(ptr %A) { bb: br label %bb2 @@ -238,10 +232,10 @@ bb4: ; preds = %bb10, %bb3 bb5: ; preds = %bb4 %tmp = mul nuw nsw i64 %i.0, %j.0 %tmp6 = sitofp i64 %tmp to float - %tmp7 = getelementptr inbounds [1024 x float], [1024 x float]* %A, i64 %i.0, i64 %j.0 - %tmp8 = load float, float* %tmp7, align 4 + %tmp7 = getelementptr inbounds [1024 x float], ptr %A, i64 %i.0, i64 %j.0 + %tmp8 = load float, ptr %tmp7, align 4 %tmp9 = fadd float %tmp8, %tmp6 - store float %tmp9, float* %tmp7, align 4 + store float %tmp9, ptr %tmp7, align 4 br label %bb10 bb10: ; preds = %bb5 diff --git a/polly/test/GPGPU/failing-invariant-load-handling.ll b/polly/test/GPGPU/failing-invariant-load-handling.ll index 43c848b8e0d1..70f88667bd60 100644 --- a/polly/test/GPGPU/failing-invariant-load-handling.ll +++ b/polly/test/GPGPU/failing-invariant-load-handling.ll @@ -8,7 +8,7 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n8:16:32-S64" %S = type { i32, i32, [12 x %L] } %L = type { i32, i32, double, i32, i32, i32, i32, i32 } -define void @test(%S* %cpi, i1 %b) { +define void @test(ptr %cpi, i1 %b) { ; SCOPS-LABEL: Region: %if.then14---%exit ; SCOPS: Invariant Accesses: { ; SCOPS-NEXT: ReadAccess := [Reduction Type: NONE] [Scalar: 0] @@ -30,26 +30,25 @@ define void @test(%S* %cpi, i1 %b) { ; CODEGEN-NOT: LLVM ERROR: preloading invariant loads failed in function entry: - %nt = getelementptr inbounds %S, %S* %cpi, i32 0, i32 1 + %nt = getelementptr inbounds %S, ptr %cpi, i32 0, i32 1 br i1 %b, label %if.then14, label %exit if.then14: - %ns = getelementptr inbounds %S, %S* %cpi, i32 0, i32 0 - %l0 = load i32, i32* %ns, align 8 + %l0 = load i32, ptr %cpi, align 8 %cmp12.i = icmp sgt i32 %l0, 0 br i1 %cmp12.i, label %for.body.lr.ph.i, label %exit for.body.lr.ph.i: - %l1 = load i32, i32* %nt, align 4 + %l1 = load i32, ptr %nt, align 4 br label %for.body.i for.body.i: %phi = phi i32 [ 0, %for.body.lr.ph.i ], [ %inc, %for.body.i ] %mul.i163 = mul nsw i32 %phi, %l1 - %cv = getelementptr inbounds %S, %S* %cpi, i32 0, i32 2, i32 %mul.i163, i32 0 - store i32 0, i32* %cv, align 8 + %cv = getelementptr inbounds %S, ptr %cpi, i32 0, i32 2, i32 %mul.i163, i32 0 + store i32 0, ptr %cv, align 8 %inc = add nuw nsw i32 %phi, 1 - %l2 = load i32, i32* %ns, align 8 + %l2 = load i32, ptr %cpi, align 8 %cmp.i164 = icmp slt i32 %inc, %l2 br i1 %cmp.i164, label %for.body.i, label %exit diff --git a/polly/test/GPGPU/failing-invariant-load-hoisting.ll b/polly/test/GPGPU/failing-invariant-load-hoisting.ll index cfdd666af3b1..aa62921e1af5 100644 --- a/polly/test/GPGPU/failing-invariant-load-hoisting.ll +++ b/polly/test/GPGPU/failing-invariant-load-hoisting.ll @@ -8,32 +8,31 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n8:16:32-S64" %S = type { i32, i32, [12 x %L] } %L = type { i32, i32, double, i32, i32, i32, i32, i32 } -define void @test(%S* %cpi, i1 %b) { +define void @test(ptr %cpi, i1 %b) { ; CODEGEN-LABEL: @test( ; CODEGEN: polly.preload.begin: ; CODEGEN-NEXT: br i1 false entry: - %nt = getelementptr inbounds %S, %S* %cpi, i32 0, i32 1 + %nt = getelementptr inbounds %S, ptr %cpi, i32 0, i32 1 br i1 %b, label %if.then14, label %exit if.then14: - %ns = getelementptr inbounds %S, %S* %cpi, i32 0, i32 0 - %l0 = load i32, i32* %ns, align 8 + %l0 = load i32, ptr %cpi, align 8 %cmp12.i = icmp sgt i32 %l0, 0 br i1 %cmp12.i, label %for.body.lr.ph.i, label %exit for.body.lr.ph.i: - %l1 = load i32, i32* %nt, align 4 + %l1 = load i32, ptr %nt, align 4 br label %for.body.i for.body.i: %phi = phi i32 [ 0, %for.body.lr.ph.i ], [ %inc, %for.body.i ] %mul.i163 = mul nsw i32 %phi, %l1 - %cv = getelementptr inbounds %S, %S* %cpi, i32 0, i32 2, i32 %mul.i163, i32 0 - store i32 0, i32* %cv, align 8 + %cv = getelementptr inbounds %S, ptr %cpi, i32 0, i32 2, i32 %mul.i163, i32 0 + store i32 0, ptr %cv, align 8 %inc = add nuw nsw i32 %phi, 1 - %l2 = load i32, i32* %ns, align 8 + %l2 = load i32, ptr %cpi, align 8 %cmp.i164 = icmp slt i32 %inc, %l2 br i1 %cmp.i164, label %for.body.i, label %exit diff --git a/polly/test/GPGPU/host-statement.ll b/polly/test/GPGPU/host-statement.ll index 7abd92843a7a..d7232b2fa538 100644 --- a/polly/test/GPGPU/host-statement.ll +++ b/polly/test/GPGPU/host-statement.ll @@ -13,7 +13,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -declare void @llvm.lifetime.start(i64, i8* nocapture) #0 +declare void @llvm.lifetime.start(i64, ptr nocapture) #0 ; This test case tests that we can correctly handle a ScopStmt that is ; scheduled on the host, instead of within a kernel. @@ -74,7 +74,7 @@ declare void @llvm.lifetime.start(i64, i8* nocapture) #0 ; KERNEL-IR: call void @llvm.nvvm.barrier0() ; Function Attrs: nounwind uwtable -define internal void @kernel_gramschmidt(i32 %ni, i32 %nj, [512 x double]* %A, [512 x double]* %R, [512 x double]* %Q) #1 { +define internal void @kernel_gramschmidt(i32 %ni, i32 %nj, ptr %A, ptr %R, ptr %Q) #1 { entry: br label %entry.split @@ -89,10 +89,10 @@ for.cond1.preheader: ; preds = %entry.split, %for.i for.inc: ; preds = %for.cond1.preheader, %for.inc %indvars.iv = phi i64 [ 0, %for.cond1.preheader ], [ %indvars.iv.next, %for.inc ] %nrm.02 = phi double [ 0.000000e+00, %for.cond1.preheader ], [ %add, %for.inc ] - %arrayidx5 = getelementptr inbounds [512 x double], [512 x double]* %A, i64 %indvars.iv, i64 %indvars.iv24 - %tmp = load double, double* %arrayidx5, align 8, !tbaa !1 - %arrayidx9 = getelementptr inbounds [512 x double], [512 x double]* %A, i64 %indvars.iv, i64 %indvars.iv24 - %tmp27 = load double, double* %arrayidx9, align 8, !tbaa !1 + %arrayidx5 = getelementptr inbounds [512 x double], ptr %A, i64 %indvars.iv, i64 %indvars.iv24 + %tmp = load double, ptr %arrayidx5, align 8, !tbaa !1 + %arrayidx9 = getelementptr inbounds [512 x double], ptr %A, i64 %indvars.iv, i64 %indvars.iv24 + %tmp27 = load double, ptr %arrayidx9, align 8, !tbaa !1 %mul = fmul double %tmp, %tmp27 %add = fadd double %nrm.02, %mul %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 @@ -102,8 +102,8 @@ for.inc: ; preds = %for.cond1.preheader for.end: ; preds = %for.inc %add.lcssa = phi double [ %add, %for.inc ] %call = tail call double @sqrt(double %add.lcssa) #2 - %arrayidx13 = getelementptr inbounds [512 x double], [512 x double]* %R, i64 %indvars.iv24, i64 %indvars.iv24 - store double %call, double* %arrayidx13, align 8, !tbaa !1 + %arrayidx13 = getelementptr inbounds [512 x double], ptr %R, i64 %indvars.iv24, i64 %indvars.iv24 + store double %call, ptr %arrayidx13, align 8, !tbaa !1 br label %for.body16 for.cond33.preheader: ; preds = %for.body16 @@ -116,13 +116,13 @@ for.body35.lr.ph: ; preds = %for.cond33.preheade for.body16: ; preds = %for.end, %for.body16 %indvars.iv10 = phi i64 [ 0, %for.end ], [ %indvars.iv.next11, %for.body16 ] - %arrayidx20 = getelementptr inbounds [512 x double], [512 x double]* %A, i64 %indvars.iv10, i64 %indvars.iv24 - %tmp28 = load double, double* %arrayidx20, align 8, !tbaa !1 - %arrayidx24 = getelementptr inbounds [512 x double], [512 x double]* %R, i64 %indvars.iv24, i64 %indvars.iv24 - %tmp29 = load double, double* %arrayidx24, align 8, !tbaa !1 + %arrayidx20 = getelementptr inbounds [512 x double], ptr %A, i64 %indvars.iv10, i64 %indvars.iv24 + %tmp28 = load double, ptr %arrayidx20, align 8, !tbaa !1 + %arrayidx24 = getelementptr inbounds [512 x double], ptr %R, i64 %indvars.iv24, i64 %indvars.iv24 + %tmp29 = load double, ptr %arrayidx24, align 8, !tbaa !1 %div = fdiv double %tmp28, %tmp29 - %arrayidx28 = getelementptr inbounds [512 x double], [512 x double]* %Q, i64 %indvars.iv10, i64 %indvars.iv24 - store double %div, double* %arrayidx28, align 8, !tbaa !1 + %arrayidx28 = getelementptr inbounds [512 x double], ptr %Q, i64 %indvars.iv10, i64 %indvars.iv24 + store double %div, ptr %arrayidx28, align 8, !tbaa !1 %indvars.iv.next11 = add nuw nsw i64 %indvars.iv10, 1 %exitcond12 = icmp ne i64 %indvars.iv.next11, 512 br i1 %exitcond12, label %for.body16, label %for.cond33.preheader @@ -135,8 +135,8 @@ for.cond33.loopexit: ; preds = %for.body62 for.body35: ; preds = %for.body35.lr.ph, %for.cond33.loopexit %indvars.iv21 = phi i64 [ %indvars.iv19, %for.body35.lr.ph ], [ %indvars.iv.next22, %for.cond33.loopexit ] - %arrayidx39 = getelementptr inbounds [512 x double], [512 x double]* %R, i64 %indvars.iv24, i64 %indvars.iv21 - store double 0.000000e+00, double* %arrayidx39, align 8, !tbaa !1 + %arrayidx39 = getelementptr inbounds [512 x double], ptr %R, i64 %indvars.iv24, i64 %indvars.iv21 + store double 0.000000e+00, ptr %arrayidx39, align 8, !tbaa !1 br label %for.body42 for.cond60.preheader: ; preds = %for.body42 @@ -144,31 +144,31 @@ for.cond60.preheader: ; preds = %for.body42 for.body42: ; preds = %for.body35, %for.body42 %indvars.iv13 = phi i64 [ 0, %for.body35 ], [ %indvars.iv.next14, %for.body42 ] - %arrayidx46 = getelementptr inbounds [512 x double], [512 x double]* %Q, i64 %indvars.iv13, i64 %indvars.iv24 - %tmp30 = load double, double* %arrayidx46, align 8, !tbaa !1 - %arrayidx50 = getelementptr inbounds [512 x double], [512 x double]* %A, i64 %indvars.iv13, i64 %indvars.iv21 - %tmp31 = load double, double* %arrayidx50, align 8, !tbaa !1 + %arrayidx46 = getelementptr inbounds [512 x double], ptr %Q, i64 %indvars.iv13, i64 %indvars.iv24 + %tmp30 = load double, ptr %arrayidx46, align 8, !tbaa !1 + %arrayidx50 = getelementptr inbounds [512 x double], ptr %A, i64 %indvars.iv13, i64 %indvars.iv21 + %tmp31 = load double, ptr %arrayidx50, align 8, !tbaa !1 %mul51 = fmul double %tmp30, %tmp31 - %arrayidx55 = getelementptr inbounds [512 x double], [512 x double]* %R, i64 %indvars.iv24, i64 %indvars.iv21 - %tmp32 = load double, double* %arrayidx55, align 8, !tbaa !1 + %arrayidx55 = getelementptr inbounds [512 x double], ptr %R, i64 %indvars.iv24, i64 %indvars.iv21 + %tmp32 = load double, ptr %arrayidx55, align 8, !tbaa !1 %add56 = fadd double %tmp32, %mul51 - store double %add56, double* %arrayidx55, align 8, !tbaa !1 + store double %add56, ptr %arrayidx55, align 8, !tbaa !1 %indvars.iv.next14 = add nuw nsw i64 %indvars.iv13, 1 %exitcond15 = icmp ne i64 %indvars.iv.next14, 512 br i1 %exitcond15, label %for.body42, label %for.cond60.preheader for.body62: ; preds = %for.cond60.preheader, %for.body62 %indvars.iv16 = phi i64 [ 0, %for.cond60.preheader ], [ %indvars.iv.next17, %for.body62 ] - %arrayidx66 = getelementptr inbounds [512 x double], [512 x double]* %A, i64 %indvars.iv16, i64 %indvars.iv21 - %tmp33 = load double, double* %arrayidx66, align 8, !tbaa !1 - %arrayidx70 = getelementptr inbounds [512 x double], [512 x double]* %Q, i64 %indvars.iv16, i64 %indvars.iv24 - %tmp34 = load double, double* %arrayidx70, align 8, !tbaa !1 - %arrayidx74 = getelementptr inbounds [512 x double], [512 x double]* %R, i64 %indvars.iv24, i64 %indvars.iv21 - %tmp35 = load double, double* %arrayidx74, align 8, !tbaa !1 + %arrayidx66 = getelementptr inbounds [512 x double], ptr %A, i64 %indvars.iv16, i64 %indvars.iv21 + %tmp33 = load double, ptr %arrayidx66, align 8, !tbaa !1 + %arrayidx70 = getelementptr inbounds [512 x double], ptr %Q, i64 %indvars.iv16, i64 %indvars.iv24 + %tmp34 = load double, ptr %arrayidx70, align 8, !tbaa !1 + %arrayidx74 = getelementptr inbounds [512 x double], ptr %R, i64 %indvars.iv24, i64 %indvars.iv21 + %tmp35 = load double, ptr %arrayidx74, align 8, !tbaa !1 %mul75 = fmul double %tmp34, %tmp35 %sub = fsub double %tmp33, %mul75 - %arrayidx79 = getelementptr inbounds [512 x double], [512 x double]* %A, i64 %indvars.iv16, i64 %indvars.iv21 - store double %sub, double* %arrayidx79, align 8, !tbaa !1 + %arrayidx79 = getelementptr inbounds [512 x double], ptr %A, i64 %indvars.iv16, i64 %indvars.iv21 + store double %sub, ptr %arrayidx79, align 8, !tbaa !1 %indvars.iv.next17 = add nuw nsw i64 %indvars.iv16, 1 %exitcond18 = icmp ne i64 %indvars.iv.next17, 512 br i1 %exitcond18, label %for.body62, label %for.cond33.loopexit @@ -186,7 +186,7 @@ for.end88: ; preds = %for.inc86 } ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.end(i64, i8* nocapture) #0 +declare void @llvm.lifetime.end(i64, ptr nocapture) #0 ; Function Attrs: nounwind declare double @sqrt(double) #2 diff --git a/polly/test/GPGPU/ignore-parameter-bounds.ll b/polly/test/GPGPU/ignore-parameter-bounds.ll index 638c1ea40b2d..1d0b5482941e 100644 --- a/polly/test/GPGPU/ignore-parameter-bounds.ll +++ b/polly/test/GPGPU/ignore-parameter-bounds.ll @@ -17,7 +17,7 @@ target triple = "x86_64-unknown-linux-gnu" ; Function Attrs: nounwind uwtable define void @__radiation_rg_MOD_coe_so() #0 { entry: - %polly.access.kspec.load = load i32, i32* undef, align 4 + %polly.access.kspec.load = load i32, ptr undef, align 4 %0 = or i1 undef, undef br label %polly.preload.cond29 @@ -33,8 +33,8 @@ polly.preload.exec31: ; preds = %polly.preload.cond2 %2 = mul nsw i64 7, %1 %3 = add nsw i64 0, %2 %4 = add nsw i64 %3, 48 - %polly.access.__data_radiation_MOD_cobi = getelementptr double, double* getelementptr inbounds ([168 x double], [168 x double]* @__data_radiation_MOD_cobi, i32 0, i32 0), i64 %4 - %polly.access.__data_radiation_MOD_cobi.load = load double, double* %polly.access.__data_radiation_MOD_cobi, align 8 + %polly.access.__data_radiation_MOD_cobi = getelementptr double, ptr @__data_radiation_MOD_cobi, i64 %4 + %polly.access.__data_radiation_MOD_cobi.load = load double, ptr %polly.access.__data_radiation_MOD_cobi, align 8 br label %polly.preload.merge30 } diff --git a/polly/test/GPGPU/invalid-kernel-assert-verifymodule.ll b/polly/test/GPGPU/invalid-kernel-assert-verifymodule.ll index 222817577aaf..4b9139f0b44c 100644 --- a/polly/test/GPGPU/invalid-kernel-assert-verifymodule.ll +++ b/polly/test/GPGPU/invalid-kernel-assert-verifymodule.ll @@ -17,7 +17,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64* %A, i64* %B) { +define void @foo(ptr %A, ptr %B) { bb: br label %bb1 @@ -27,15 +27,15 @@ bb1: ; preds = %bb10, %bb br i1 %exitcond, label %bb2, label %bb12 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i64, i64* %B, i64 %i.0 - %tmp3 = load i64, i64* %tmp, align 8 - %tmp4 = getelementptr inbounds i64, i64* %B, i64 %i.0 - %tmp5 = ptrtoint i64* %tmp4 to i64 + %tmp = getelementptr inbounds i64, ptr %B, i64 %i.0 + %tmp3 = load i64, ptr %tmp, align 8 + %tmp4 = getelementptr inbounds i64, ptr %B, i64 %i.0 + %tmp5 = ptrtoint ptr %tmp4 to i64 %tmp6 = add nsw i64 %tmp3, %tmp5 - %tmp7 = getelementptr inbounds i64, i64* %A, i64 %i.0 - %tmp8 = load i64, i64* %tmp7, align 8 + %tmp7 = getelementptr inbounds i64, ptr %A, i64 %i.0 + %tmp8 = load i64, ptr %tmp7, align 8 %tmp9 = add nsw i64 %tmp8, %tmp6 - store i64 %tmp9, i64* %tmp7, align 8 + store i64 %tmp9, ptr %tmp7, align 8 br label %bb10 bb10: ; preds = %bb2 diff --git a/polly/test/GPGPU/invalid-kernel.ll b/polly/test/GPGPU/invalid-kernel.ll index ad5e00e1d48e..9dd32eac97c0 100644 --- a/polly/test/GPGPU/invalid-kernel.ll +++ b/polly/test/GPGPU/invalid-kernel.ll @@ -43,7 +43,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64* %A, i64* %B) { +define void @foo(ptr %A, ptr %B) { bb: br label %bb1 @@ -53,15 +53,15 @@ bb1: ; preds = %bb10, %bb br i1 %exitcond, label %bb2, label %bb12 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i64, i64* %B, i64 %i.0 - %tmp3 = load i64, i64* %tmp, align 8 - %tmp4 = getelementptr inbounds i64, i64* %B, i64 %i.0 - %tmp5 = ptrtoint i64* %tmp4 to i64 + %tmp = getelementptr inbounds i64, ptr %B, i64 %i.0 + %tmp3 = load i64, ptr %tmp, align 8 + %tmp4 = getelementptr inbounds i64, ptr %B, i64 %i.0 + %tmp5 = ptrtoint ptr %tmp4 to i64 %tmp6 = add nsw i64 %tmp3, %tmp5 - %tmp7 = getelementptr inbounds i64, i64* %A, i64 %i.0 - %tmp8 = load i64, i64* %tmp7, align 8 + %tmp7 = getelementptr inbounds i64, ptr %A, i64 %i.0 + %tmp8 = load i64, ptr %tmp7, align 8 %tmp9 = add nsw i64 %tmp8, %tmp6 - store i64 %tmp9, i64* %tmp7, align 8 + store i64 %tmp9, ptr %tmp7, align 8 br label %bb10 bb10: ; preds = %bb2 diff --git a/polly/test/GPGPU/invariant-load-array-access.ll b/polly/test/GPGPU/invariant-load-array-access.ll index 840ed34a0ce7..02c0330a7e7e 100644 --- a/polly/test/GPGPU/invariant-load-array-access.ll +++ b/polly/test/GPGPU/invariant-load-array-access.ll @@ -21,7 +21,7 @@ ; Check that kernel launch is generated in host IR. ; the declare would not be generated unless a call to a kernel exists. -; HOST-IR: declare void @polly_launchKernel(i8*, i32, i32, i32, i32, i32, i8*) +; HOST-IR: declare void @polly_launchKernel(ptr, i32, i32, i32, i32, i32, ptr) ; This test makes sure that such an access pattern is handled correctly ; by PPCGCodeGeneration. It appears that not calling `preloadInvariantLoads` @@ -40,7 +40,7 @@ target datalayout = "e-m:o-p:32:32-f64:32:64-f80:128-n8:16:32-S128" target triple = "i386-apple-macosx10.12.0" -define void @f(i32* %arr, i32* %control, i32* %readarr) { +define void @f(ptr %arr, ptr %control, ptr %readarr) { entry: br label %entry.split @@ -49,18 +49,18 @@ entry.split: ; preds = %entry for.body: ; preds = %entry.split, %if.end %i.01 = phi i32 [ 0, %entry.split ], [ %inc, %if.end ] - %tmp = load i32, i32* %control, align 4 + %tmp = load i32, ptr %control, align 4 %cmp1 = icmp sgt i32 %tmp, 3 br i1 %cmp1, label %if.then, label %if.end if.then: ; preds = %for.body - %tmp1 = load i32, i32* %readarr, align 4 + %tmp1 = load i32, ptr %readarr, align 4 br label %if.end if.end: ; preds = %if.then, %for.body %t.0 = phi i32 [ %tmp1, %if.then ], [ 0, %for.body ] - %arrayidx = getelementptr inbounds i32, i32* %arr, i32 %i.01 - store i32 %t.0, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %arr, i32 %i.01 + store i32 %t.0, ptr %arrayidx, align 4 %inc = add nuw nsw i32 %i.01, 1 %exitcond = icmp eq i32 %inc, 1000 br i1 %exitcond, label %for.end, label %for.body diff --git a/polly/test/GPGPU/invariant-load-escaping-values.ll b/polly/test/GPGPU/invariant-load-escaping-values.ll index b4898ab1ee2f..54f4b43fdb92 100644 --- a/polly/test/GPGPU/invariant-load-escaping-values.ll +++ b/polly/test/GPGPU/invariant-load-escaping-values.ll @@ -3,8 +3,8 @@ ; REQUIRES: pollyacc -; CHECK: store i64 %polly.access.B.load, i64* %invariant.preload.s2a -; CHECK: %invariant.final_reload = load i64, i64* %invariant.preload.s2a +; CHECK: store i64 %polly.access.B.load, ptr %invariant.preload.s2a +; CHECK: %invariant.final_reload = load i64, ptr %invariant.preload.s2a ; Verify that the final reload of an invariant scalar memory access uses the ; same stack slot that into which the invariant memory access was stored @@ -12,16 +12,16 @@ ; of the preload stack slot, which remained uninitialized and caused our escaping ; loads to contain garbage. -define i64 @foo(float* %A, i64* %B) { +define i64 @foo(ptr %A, ptr %B) { entry: br label %loop loop: %indvar = phi i64 [0, %entry], [%indvar.next, %loop] %indvar.next = add nsw i64 %indvar, 1 - %idx = getelementptr float, float* %A, i64 %indvar - store float 42.0, float* %idx - %invariant = load i64, i64* %B + %idx = getelementptr float, ptr %A, i64 %indvar + store float 42.0, ptr %idx + %invariant = load i64, ptr %B %cmp = icmp sle i64 %indvar, 1024 br i1 %cmp, label %loop, label %exit diff --git a/polly/test/GPGPU/invariant-load-hoisting-read-in-kernel.ll b/polly/test/GPGPU/invariant-load-hoisting-read-in-kernel.ll index cd4fe6a4587b..ad30ef6f9b24 100644 --- a/polly/test/GPGPU/invariant-load-hoisting-read-in-kernel.ll +++ b/polly/test/GPGPU/invariant-load-hoisting-read-in-kernel.ll @@ -11,25 +11,25 @@ ; Verify that invariant loads used in a kernel statement are correctly forwarded ; as subtree value to the GPU kernel. -; HOST-IR: store float %polly.access.p.load, float* %invariant.preload.s2a, align 4 +; HOST-IR: store float %polly.access.p.load, ptr %invariant.preload.s2a, align 4 -; KERNEL-IR: define ptx_kernel void @FUNC_foo_SCOP_0_KERNEL_2({{.*}}i8 addrspace(1)* %MemRef_indvar2f__phi{{.*}}) -; KERNEL-IR: %indvar2f.phiops.reload = load float, float* %indvar2f.phiops, align 4 -; KERNEL-IR: store float %indvar2f.phiops.reload, float addrspace(1)* %polly.access.MemRef_A, align 4 +; KERNEL-IR: define ptx_kernel void @FUNC_foo_SCOP_0_KERNEL_2({{.*}}ptr addrspace(1) %MemRef_indvar2f__phi{{.*}}) +; KERNEL-IR: %indvar2f.phiops.reload = load float, ptr %indvar2f.phiops, align 4 +; KERNEL-IR: store float %indvar2f.phiops.reload, ptr addrspace(1) %polly.access.MemRef_A, align 4 -; FIXME: store float %indvar2f.phiops.reload, float* %indvar2f.phiops, align 4 +; FIXME: store float %indvar2f.phiops.reload, ptr %indvar2f.phiops, align 4 ; For some reason the above instruction is emitted that stores back to the addess it was just loaded from. -define void @foo(float* %A, float* %p) { +define void @foo(ptr %A, ptr %p) { entry: br label %loop loop: %indvar = phi i64 [0, %entry], [%indvar.next, %loop] %indvar.next = add i64 %indvar, 1 - %invariant = load float, float* %p - %ptr = getelementptr float, float* %A, i64 %indvar - store float 42.0, float* %ptr + %invariant = load float, ptr %p + %ptr = getelementptr float, ptr %A, i64 %indvar + store float 42.0, ptr %ptr %cmp = icmp sle i64 %indvar, 1024 br i1 %cmp, label %loop, label %anotherloop @@ -37,7 +37,7 @@ anotherloop: %indvar2 = phi i64 [0, %loop], [%indvar2.next, %anotherloop] %indvar2f = phi float [%invariant, %loop], [%indvar2f, %anotherloop] %indvar2.next = add i64 %indvar2, 1 - store float %indvar2f, float* %A + store float %indvar2f, ptr %A %cmp2 = icmp sle i64 %indvar2, 1024 br i1 %cmp2, label %anotherloop, label %end diff --git a/polly/test/GPGPU/invariant-load-hoisting-with-variable-bounds.ll b/polly/test/GPGPU/invariant-load-hoisting-with-variable-bounds.ll index 2d115a794ba7..7a650eeb22ee 100644 --- a/polly/test/GPGPU/invariant-load-hoisting-with-variable-bounds.ll +++ b/polly/test/GPGPU/invariant-load-hoisting-with-variable-bounds.ll @@ -21,7 +21,7 @@ ; Check that the kernel launch is generated in the host IR. ; This declaration would not have been generated unless a kernel launch exists. -; HOST-IR: declare void @polly_launchKernel(i8*, i32, i32, i32, i32, i32, i8*) +; HOST-IR: declare void @polly_launchKernel(ptr, i32, i32, i32, i32, i32, ptr) ; void f(int *begin, int *end, int *arr) { ; for (int i = *begin; i < *end; i++) { @@ -32,13 +32,13 @@ target datalayout = "e-m:o-p:32:32-f64:32:64-f80:128-n8:16:32-S128" -define void @f(i32* %begin, i32* %end, i32* %arr) { +define void @f(ptr %begin, ptr %end, ptr %arr) { entry: br label %entry.split entry.split: ; preds = %entry - %tmp1 = load i32, i32* %begin, align 4 - %tmp41 = load i32, i32* %end, align 4 + %tmp1 = load i32, ptr %begin, align 4 + %tmp41 = load i32, ptr %end, align 4 %cmp2 = icmp slt i32 %tmp1, %tmp41 br i1 %cmp2, label %for.body.lr.ph, label %for.end @@ -47,10 +47,10 @@ for.body.lr.ph: ; preds = %entry.split for.body: ; preds = %for.body.lr.ph, %for.body %i.03 = phi i32 [ %tmp1, %for.body.lr.ph ], [ %inc, %for.body ] - %arrayidx = getelementptr inbounds i32, i32* %arr, i32 %i.03 - store i32 0, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %arr, i32 %i.03 + store i32 0, ptr %arrayidx, align 4 %inc = add nsw i32 %i.03, 1 - %tmp4 = load i32, i32* %end, align 4 + %tmp4 = load i32, ptr %end, align 4 %cmp = icmp slt i32 %inc, %tmp4 br i1 %cmp, label %for.body, label %for.cond.for.end_crit_edge diff --git a/polly/test/GPGPU/invariant-load-hoisting-with-variable-lower-bound.ll b/polly/test/GPGPU/invariant-load-hoisting-with-variable-lower-bound.ll index a22612c62cf8..a637cc44c7a3 100644 --- a/polly/test/GPGPU/invariant-load-hoisting-with-variable-lower-bound.ll +++ b/polly/test/GPGPU/invariant-load-hoisting-with-variable-lower-bound.ll @@ -18,7 +18,7 @@ ; Check that the kernel launch is generated in the host IR. ; This declaration would not have been generated unless a kernel launch exists. -; HOST-IR: declare void @polly_launchKernel(i8*, i32, i32, i32, i32, i32, i8*) +; HOST-IR: declare void @polly_launchKernel(ptr, i32, i32, i32, i32, i32, ptr) ; ; void f(int *begin, int *arr) { @@ -29,12 +29,12 @@ target datalayout = "e-m:o-p:32:32-f64:32:64-f80:128-n8:16:32-S128" -define void @f(i32* %begin, i32* %arr) { +define void @f(ptr %begin, ptr %arr) { entry: br label %entry.split entry.split: ; preds = %entry - %beginval = load i32, i32* %begin, align 4 + %beginval = load i32, ptr %begin, align 4 %cmp1 = icmp slt i32 %beginval, 100 br i1 %cmp1, label %for.body, label %for.end @@ -42,8 +42,8 @@ entry.split: ; preds = %entry for.body: ; preds = %for.body.lr.ph, %for.body %ival = phi i32 [ %beginval, %entry.split ], [ %inc, %for.body ] - %arrayidx = getelementptr inbounds i32, i32* %arr, i32 %ival - store i32 0, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %arr, i32 %ival + store i32 0, ptr %arrayidx, align 4 %inc = add nsw i32 %ival, 1 %cmp = icmp slt i32 %ival, 99 br i1 %cmp, label %for.body, label %for.cond.for.end_crit_edge diff --git a/polly/test/GPGPU/invariant-load-hoisting-with-variable-upper-bound.ll b/polly/test/GPGPU/invariant-load-hoisting-with-variable-upper-bound.ll index a402284b5e60..3c19a306734a 100644 --- a/polly/test/GPGPU/invariant-load-hoisting-with-variable-upper-bound.ll +++ b/polly/test/GPGPU/invariant-load-hoisting-with-variable-upper-bound.ll @@ -15,7 +15,7 @@ ; Check that kernel launch is generated in host IR. ; the declare would not be generated unless a call to a kernel exists. -; HOST-IR: declare void @polly_launchKernel(i8*, i32, i32, i32, i32, i32, i8*) +; HOST-IR: declare void @polly_launchKernel(ptr, i32, i32, i32, i32, i32, ptr) ; Check if we generate GPU code for simple loop with variable upper bound. ; This always worked, but have this test to prevent regressions. @@ -27,12 +27,12 @@ ; target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %idx, i32* %arr) { +define void @f(ptr %idx, ptr %arr) { entry: br label %entry.split entry.split: ; preds = %entry - %tmp21 = load i32, i32* %idx, align 4 + %tmp21 = load i32, ptr %idx, align 4 %cmp2 = icmp sgt i32 %tmp21, 0 br i1 %cmp2, label %for.body.lr.ph, label %for.end @@ -41,10 +41,10 @@ for.body.lr.ph: ; preds = %entry.split for.body: ; preds = %for.body.lr.ph, %for.body %indvars.iv = phi i64 [ 0, %for.body.lr.ph ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32, i32* %arr, i64 %indvars.iv - store i32 0, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %arr, i64 %indvars.iv + store i32 0, ptr %arrayidx, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 - %tmp2 = load i32, i32* %idx, align 4 + %tmp2 = load i32, ptr %idx, align 4 %0 = sext i32 %tmp2 to i64 %cmp = icmp slt i64 %indvars.iv.next, %0 br i1 %cmp, label %for.body, label %for.cond.for.end_crit_edge diff --git a/polly/test/GPGPU/invariant-load-hoisting.ll b/polly/test/GPGPU/invariant-load-hoisting.ll index 136a4363fdb5..5ae1cfae255d 100644 --- a/polly/test/GPGPU/invariant-load-hoisting.ll +++ b/polly/test/GPGPU/invariant-load-hoisting.ll @@ -15,10 +15,10 @@ ; SCOP-NEXT: [n, tmp12] -> { Stmt_for_body6[i0, i1, i2] -> MemRef_invariant[0] }; ; SCOP-NEXT: Execution Context: [n, tmp12] -> { : n > 0 } ; SCOP-NEXT: } -; HOST-IR: call void @polly_launchKernel(i8* %[[REGC:[0-9]+]], i32 %{{[0-9]+}}, i32 1, i32 32, i32 1, i32 1, i8* %polly_launch_0_params_i8ptr) -; HOST-IR-NEXT: call void @polly_freeKernel(i8* %[[REGC]]) +; HOST-IR: call void @polly_launchKernel(ptr %[[REGC:[0-9]+]], i32 %{{[0-9]+}}, i32 1, i32 32, i32 1, i32 1, ptr %polly_launch_0_params_i8ptr) +; HOST-IR-NEXT: call void @polly_freeKernel(ptr %[[REGC]]) -; KERNEL-IR: define ptx_kernel void @FUNC_f_SCOP_0_KERNEL_0(i8 addrspace(1)* %MemRef_B, i8 addrspace(1)* %MemRef_A, i32 %n, i32 %tmp12, i32 %polly.preload.tmp21.merge) +; KERNEL-IR: define ptx_kernel void @FUNC_f_SCOP_0_KERNEL_0(ptr addrspace(1) %MemRef_B, ptr addrspace(1) %MemRef_A, i32 %n, i32 %tmp12, i32 %polly.preload.tmp21.merge) ; Check that we generate correct GPU code in case of invariant load hoisting. @@ -39,7 +39,7 @@ ; } ; -define void @f([3000 x i32]* %A, i32* %invariant, [3000 x i32]* %B, i32 %n) { +define void @f(ptr %A, ptr %invariant, ptr %B, i32 %n) { entry: br label %entry.split @@ -70,24 +70,24 @@ for.body6: ; preds = %for.body6.lr.ph, %f %k.02 = phi i32 [ 0, %for.body6.lr.ph ], [ %inc, %for.body6 ] %idxprom = sext i32 %k.02 to i64 %idxprom7 = sext i32 %k.02 to i64 - %arrayidx8 = getelementptr inbounds [3000 x i32], [3000 x i32]* %B, i64 %idxprom, i64 %idxprom7 - %tmp9 = load i32, i32* %arrayidx8, align 4 - %tmp12 = load i32, i32* %invariant, align 4 + %arrayidx8 = getelementptr inbounds [3000 x i32], ptr %B, i64 %idxprom, i64 %idxprom7 + %tmp9 = load i32, ptr %arrayidx8, align 4 + %tmp12 = load i32, ptr %invariant, align 4 %idxprom9 = sext i32 %tmp12 to i64 %idxprom11 = sext i32 %k.02 to i64 - %arrayidx12 = getelementptr inbounds [3000 x i32], [3000 x i32]* %A, i64 %idxprom9, i64 %idxprom11 - store i32 %tmp9, i32* %arrayidx12, align 4 + %arrayidx12 = getelementptr inbounds [3000 x i32], ptr %A, i64 %idxprom9, i64 %idxprom11 + store i32 %tmp9, ptr %arrayidx12, align 4 %idxprom13 = sext i32 %k.02 to i64 %idxprom15 = sext i32 %k.02 to i64 - %arrayidx16 = getelementptr inbounds [3000 x i32], [3000 x i32]* %B, i64 %idxprom13, i64 %idxprom15 - %tmp17 = load i32, i32* %arrayidx16, align 4 + %arrayidx16 = getelementptr inbounds [3000 x i32], ptr %B, i64 %idxprom13, i64 %idxprom15 + %tmp17 = load i32, ptr %arrayidx16, align 4 %idxprom17 = sext i32 %k.02 to i64 - %tmp21 = load i32, i32* %invariant, align 4 + %tmp21 = load i32, ptr %invariant, align 4 %idxprom19 = sext i32 %tmp21 to i64 - %arrayidx20 = getelementptr inbounds [3000 x i32], [3000 x i32]* %A, i64 %idxprom17, i64 %idxprom19 - %tmp22 = load i32, i32* %arrayidx20, align 4 + %arrayidx20 = getelementptr inbounds [3000 x i32], ptr %A, i64 %idxprom17, i64 %idxprom19 + %tmp22 = load i32, ptr %arrayidx20, align 4 %add = add nsw i32 %tmp22, %tmp17 - store i32 %add, i32* %arrayidx20, align 4 + store i32 %add, ptr %arrayidx20, align 4 %inc = add nuw nsw i32 %k.02, 1 %cmp5 = icmp slt i32 %inc, %n br i1 %cmp5, label %for.body6, label %for.cond4.for.inc21_crit_edge diff --git a/polly/test/GPGPU/invariant-load-of-scalar.ll b/polly/test/GPGPU/invariant-load-of-scalar.ll index 6a7bdc48cecb..fbc1d4d7ecee 100644 --- a/polly/test/GPGPU/invariant-load-of-scalar.ll +++ b/polly/test/GPGPU/invariant-load-of-scalar.ll @@ -29,13 +29,13 @@ ; Check that we do not actually allocate arrays for %begin, %end, since they are ; invariant load hoisted. -; HOST-IR: %p_dev_array_MemRef_A = call i8* @polly_allocateMemoryForDevice -; HOST-IR-NOT: call i8* @polly_allocateMemoryForDevice +; HOST-IR: %p_dev_array_MemRef_A = call ptr @polly_allocateMemoryForDevice +; HOST-IR-NOT: call ptr @polly_allocateMemoryForDevice ; Check that we send the invariant loaded scalars as parameters to the ; kernel function. ; KERNEL-IR: define ptx_kernel void @FUNC_checkPrivatization_SCOP_0_KERNEL_0 -; KERNEL-IR-SAME: (i8 addrspace(1)* %MemRef_A, i32 %tmp, +; KERNEL-IR-SAME: (ptr addrspace(1) %MemRef_A, i32 %tmp, ; KERNEL-IR-SAME: i32 %tmp2, i32 %polly.access.begin.load) @@ -48,13 +48,13 @@ target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-apple-macosx10.12.0" -define void @checkPrivatization(i32* %A, i32* %begin, i32* %end) { +define void @checkPrivatization(ptr %A, ptr %begin, ptr %end) { entry: br label %entry.split entry.split: ; preds = %entry - %tmp = load i32, i32* %begin, align 4 - %tmp21 = load i32, i32* %end, align 4 + %tmp = load i32, ptr %begin, align 4 + %tmp21 = load i32, ptr %end, align 4 %cmp3 = icmp slt i32 %tmp, %tmp21 br i1 %cmp3, label %for.body.lr.ph, label %for.end @@ -64,10 +64,10 @@ for.body.lr.ph: ; preds = %entry.split for.body: ; preds = %for.body.lr.ph, %for.body %indvars.iv4 = phi i64 [ %tmp1, %for.body.lr.ph ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv4 - store i32 10, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv4 + store i32 10, ptr %arrayidx, align 4 %indvars.iv.next = add i64 %indvars.iv4, 1 - %tmp2 = load i32, i32* %end, align 4 + %tmp2 = load i32, ptr %end, align 4 %tmp3 = sext i32 %tmp2 to i64 %cmp = icmp slt i64 %indvars.iv.next, %tmp3 br i1 %cmp, label %for.body, label %for.cond.for.end_crit_edge diff --git a/polly/test/GPGPU/kernel-params-scop-parameter.ll b/polly/test/GPGPU/kernel-params-scop-parameter.ll index 3cbd4043604b..527492bfd5fb 100644 --- a/polly/test/GPGPU/kernel-params-scop-parameter.ll +++ b/polly/test/GPGPU/kernel-params-scop-parameter.ll @@ -9,11 +9,11 @@ ; A[i] += 42; ; } -; KERNEL-IR: define ptx_kernel void @FUNC_kernel_params_scop_parameter_SCOP_0_KERNEL_0(i8 addrspace(1)* %MemRef_A, i64 %n) +; KERNEL-IR: define ptx_kernel void @FUNC_kernel_params_scop_parameter_SCOP_0_KERNEL_0(ptr addrspace(1) %MemRef_A, i64 %n) target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @kernel_params_scop_parameter(float* %A, i64 %n) { +define void @kernel_params_scop_parameter(ptr %A, i64 %n) { bb: br label %bb1 @@ -23,10 +23,10 @@ bb1: ; preds = %bb6, %bb br i1 %tmp, label %bb2, label %bb8 bb2: ; preds = %bb1 - %tmp3 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, 4.200000e+01 - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 br label %bb6 bb6: ; preds = %bb2 diff --git a/polly/test/GPGPU/kernels-names-across-scops-funcs.ll b/polly/test/GPGPU/kernels-names-across-scops-funcs.ll index f92562233b67..57fe70ec0d9b 100644 --- a/polly/test/GPGPU/kernels-names-across-scops-funcs.ll +++ b/polly/test/GPGPU/kernels-names-across-scops-funcs.ll @@ -4,14 +4,14 @@ ; REQUIRES: pollyacc -; KERNEL: define ptx_kernel void @FUNC_foo_SCOP_0_KERNEL_0(i8 addrspace(1)* %MemRef_arg1, i32 %arg) #0 { -; KERNEL: define ptx_kernel void @FUNC_foo_SCOP_1_KERNEL_0(i8 addrspace(1)* %MemRef_arg1, i32 %arg) #0 { -; KERNEL: define ptx_kernel void @FUNC_foo2_SCOP_0_KERNEL_0(i8 addrspace(1)* %MemRef_arg1, i32 %arg) #0 { +; KERNEL: define ptx_kernel void @FUNC_foo_SCOP_0_KERNEL_0(ptr addrspace(1) %MemRef_arg1, i32 %arg) #0 { +; KERNEL: define ptx_kernel void @FUNC_foo_SCOP_1_KERNEL_0(ptr addrspace(1) %MemRef_arg1, i32 %arg) #0 { +; KERNEL: define ptx_kernel void @FUNC_foo2_SCOP_0_KERNEL_0(ptr addrspace(1) %MemRef_arg1, i32 %arg) #0 { target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @foo(i32 %arg, i32* %arg1) #0 { +define void @foo(i32 %arg, ptr %arg1) #0 { bb: br label %bb2 @@ -24,10 +24,10 @@ bb3: ; preds = %bb2 bb4: ; preds = %bb4, %bb3 %tmp5 = phi i64 [ 0, %bb3 ], [ %tmp9, %bb4 ] - %tmp6 = getelementptr inbounds i32, i32* %arg1, i64 %tmp5 - %tmp7 = load i32, i32* %tmp6, align 4, !tbaa !2 + %tmp6 = getelementptr inbounds i32, ptr %arg1, i64 %tmp5 + %tmp7 = load i32, ptr %tmp6, align 4, !tbaa !2 %tmp8 = add nsw i32 %tmp7, 1 - store i32 %tmp8, i32* %tmp6, align 4, !tbaa !2 + store i32 %tmp8, ptr %tmp6, align 4, !tbaa !2 %tmp9 = add nuw nsw i64 %tmp5, 1 %tmp10 = zext i32 %arg to i64 %tmp11 = icmp ne i64 %tmp9, %tmp10 @@ -50,10 +50,10 @@ bb18: ; preds = %bb16 bb19: ; preds = %bb19, %bb18 %tmp20 = phi i64 [ 0, %bb18 ], [ %tmp24, %bb19 ] - %tmp21 = getelementptr inbounds i32, i32* %arg1, i64 %tmp20 - %tmp22 = load i32, i32* %tmp21, align 4, !tbaa !2 + %tmp21 = getelementptr inbounds i32, ptr %arg1, i64 %tmp20 + %tmp22 = load i32, ptr %tmp21, align 4, !tbaa !2 %tmp23 = add nsw i32 %tmp22, 1 - store i32 %tmp23, i32* %tmp21, align 4, !tbaa !2 + store i32 %tmp23, ptr %tmp21, align 4, !tbaa !2 %tmp24 = add nuw nsw i64 %tmp20, 1 %tmp25 = zext i32 %arg to i64 %tmp26 = icmp ne i64 %tmp24, %tmp25 @@ -70,16 +70,16 @@ bb29: ; preds = %bb28, %bb13 } ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #1 +declare void @llvm.lifetime.start.p0(i64, ptr nocapture) #1 ; Function Attrs: nounwind declare i64 @clock() #2 ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #1 +declare void @llvm.lifetime.end.p0(i64, ptr nocapture) #1 ; Function Attrs: nounwind uwtable -define void @foo2(i32 %arg, i32* %arg1) #0 { +define void @foo2(i32 %arg, ptr %arg1) #0 { bb: br label %bb2 @@ -92,10 +92,10 @@ bb3: ; preds = %bb2 bb4: ; preds = %bb4, %bb3 %tmp5 = phi i64 [ 0, %bb3 ], [ %tmp9, %bb4 ] - %tmp6 = getelementptr inbounds i32, i32* %arg1, i64 %tmp5 - %tmp7 = load i32, i32* %tmp6, align 4, !tbaa !2 + %tmp6 = getelementptr inbounds i32, ptr %arg1, i64 %tmp5 + %tmp7 = load i32, ptr %tmp6, align 4, !tbaa !2 %tmp8 = add nsw i32 %tmp7, 1 - store i32 %tmp8, i32* %tmp6, align 4, !tbaa !2 + store i32 %tmp8, ptr %tmp6, align 4, !tbaa !2 %tmp9 = add nuw nsw i64 %tmp5, 1 %tmp10 = zext i32 %arg to i64 %tmp11 = icmp ne i64 %tmp9, %tmp10 diff --git a/polly/test/GPGPU/libdevice-functions-copied-into-kernel.ll b/polly/test/GPGPU/libdevice-functions-copied-into-kernel.ll index d6600cc46b82..0f8405dad7e8 100644 --- a/polly/test/GPGPU/libdevice-functions-copied-into-kernel.ll +++ b/polly/test/GPGPU/libdevice-functions-copied-into-kernel.ll @@ -25,7 +25,7 @@ ; Check that kernel launch is generated in host IR. ; the declare would not be generated unless a call to a kernel exists. -; HOST-IR: declare void @polly_launchKernel(i8*, i32, i32, i32, i32, i32, i8*) +; HOST-IR: declare void @polly_launchKernel(ptr, i32, i32, i32, i32, i32, ptr) ; void f(float *A, float *B, int N) { @@ -42,7 +42,7 @@ target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" -define void @f(float* %A, float* %B, i32 %N) { +define void @f(ptr %A, ptr %B, i32 %N) { entry: br label %entry.split @@ -55,16 +55,16 @@ for.body.lr.ph: ; preds = %entry.split for.body: ; preds = %for.body.lr.ph, %for.body %indvars.iv = phi i64 [ 0, %for.body.lr.ph ], [ %indvars.iv.next, %for.body ] - %A.arr.i = getelementptr inbounds float, float* %A, i64 %indvars.iv - %A.arr.i.val = load float, float* %A.arr.i, align 4 + %A.arr.i = getelementptr inbounds float, ptr %A, i64 %indvars.iv + %A.arr.i.val = load float, ptr %A.arr.i, align 4 ; Call to intrinsics that should be part of the kernel. %expf = tail call float @expf(float %A.arr.i.val) %cosf = tail call float @cosf(float %expf) %logf = tail call float @logf(float %cosf) %powi = tail call float @llvm.powi.f32.i32(float %logf, i32 2) %exp = tail call float @llvm.exp.f32(float %powi) - %B.arr.i = getelementptr inbounds float, float* %B, i64 %indvars.iv - store float %exp, float* %B.arr.i, align 4 + %B.arr.i = getelementptr inbounds float, ptr %B, i64 %indvars.iv + store float %exp, ptr %B.arr.i, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %wide.trip.count = zext i32 %N to i64 diff --git a/polly/test/GPGPU/live-range-reordering-with-privatization.ll b/polly/test/GPGPU/live-range-reordering-with-privatization.ll index d7d9e0c4626b..3b047fd557ff 100644 --- a/polly/test/GPGPU/live-range-reordering-with-privatization.ll +++ b/polly/test/GPGPU/live-range-reordering-with-privatization.ll @@ -37,12 +37,12 @@ target datalayout = "e-m:o-p:32:32-f64:32:64-f80:128-n8:16:32-S128" target triple = "i386-apple-macosx10.12.0" -define void @f(i32* %end, i32* %arr, i32* %control, i32* %readarr) { +define void @f(ptr %end, ptr %arr, ptr %control, ptr %readarr) { entry: br label %entry.split entry.split: ; preds = %entry - %tmp3 = load i32, i32* %end, align 4 + %tmp3 = load i32, ptr %end, align 4 %cmp4 = icmp sgt i32 %tmp3, 0 br i1 %cmp4, label %for.body.lr.ph, label %for.end @@ -51,21 +51,21 @@ for.body.lr.ph: ; preds = %entry.split for.body: ; preds = %for.body.lr.ph, %if.end %i.05 = phi i32 [ 0, %for.body.lr.ph ], [ %inc, %if.end ] - %tmp1 = load i32, i32* %control, align 4 + %tmp1 = load i32, ptr %control, align 4 %cmp1 = icmp sgt i32 %tmp1, 3 br i1 %cmp1, label %if.then, label %if.end if.then: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %readarr, i32 %i.05 - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %readarr, i32 %i.05 + %tmp2 = load i32, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %if.then, %for.body %t.0 = phi i32 [ %tmp2, %if.then ], [ 0, %for.body ] - %arrayidx2 = getelementptr inbounds i32, i32* %arr, i32 %i.05 - store i32 %t.0, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %arr, i32 %i.05 + store i32 %t.0, ptr %arrayidx2, align 4 %inc = add nuw nsw i32 %i.05, 1 - %tmp = load i32, i32* %end, align 4 + %tmp = load i32, ptr %end, align 4 %cmp = icmp slt i32 %inc, %tmp br i1 %cmp, label %for.body, label %for.cond.for.end_crit_edge diff --git a/polly/test/GPGPU/loops-outside-scop.ll b/polly/test/GPGPU/loops-outside-scop.ll index ee43affa337e..36b3a706338a 100644 --- a/polly/test/GPGPU/loops-outside-scop.ll +++ b/polly/test/GPGPU/loops-outside-scop.ll @@ -18,7 +18,7 @@ target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f16:16:16-f32:32:32-f64:64:64-f128:128:128-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" target triple = "x86_64-unknown-linux-gnu" -declare void @fn_to_fence(i32 *%val) +declare void @fn_to_fence(ptr %val) ; void f(int *arr, bool shouldcont) { ; for(int i = 0; ; i++) { @@ -32,7 +32,7 @@ declare void @fn_to_fence(i32 *%val) ; Function Attrs: nounwind uwtable -define void @f(i32 *%arr, i1 %shouldcont) #1 { +define void @f(ptr %arr, i1 %shouldcont) #1 { entry: br label %for.init @@ -43,14 +43,14 @@ for.init: ; preds = %for.end, %entry for2.body: ; preds = %"65", %"64" %j = phi i32 [ %j.next, %for2.body ], [ 0, %for.init ] %j.sext = sext i32 %j to i64 - %arr.slot = getelementptr i32, i32* %arr, i64 %j.sext - store i32 %i, i32* %arr.slot, align 4 + %arr.slot = getelementptr i32, ptr %arr, i64 %j.sext + store i32 %i, ptr %arr.slot, align 4 %exitcond = icmp eq i32 %j, 10 %j.next = add i32 %j, 1 br i1 %exitcond, label %for2.body.fence, label %for2.body for2.body.fence: ; preds = %"65" - call void @fn_to_fence(i32* %arr) #2 + call void @fn_to_fence(ptr %arr) #2 br i1 %shouldcont, label %for.end, label %exit for.end: ; preds = %"69" %i.next = add i32 %i, 1 diff --git a/polly/test/GPGPU/managed-memory-rewrite-alloca.ll b/polly/test/GPGPU/managed-memory-rewrite-alloca.ll index d8159bb9d195..6dbd87db5eb5 100644 --- a/polly/test/GPGPU/managed-memory-rewrite-alloca.ll +++ b/polly/test/GPGPU/managed-memory-rewrite-alloca.ll @@ -29,8 +29,8 @@ entry.split: ; preds = %entry for.body: ; preds = %entry.split, %for.body %indvars.iv1 = phi i64 [ 0, %entry.split ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* %arr, i64 0, i64 %indvars.iv1 - store i32 42, i32* %arrayidx, align 4, !tbaa !3 + %arrayidx = getelementptr inbounds [100 x i32], ptr %arr, i64 0, i64 %indvars.iv1 + store i32 42, ptr %arrayidx, align 4, !tbaa !3 %indvars.iv.next = add nuw nsw i64 %indvars.iv1, 1 %exitcond = icmp eq i64 %indvars.iv.next, 100 br i1 %exitcond, label %for.end, label %for.body @@ -40,11 +40,11 @@ for.end: ; preds = %for.body } ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #0 +declare void @llvm.lifetime.start.p0(i64, ptr nocapture) #0 ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #0 +declare void @llvm.lifetime.end.p0(i64, ptr nocapture) #0 attributes #0 = { argmemonly nounwind } diff --git a/polly/test/GPGPU/managed-memory-rewrite-malloc-free-inside-constexpr.ll b/polly/test/GPGPU/managed-memory-rewrite-malloc-free-inside-constexpr.ll index bab432e37983..946da40919ec 100644 --- a/polly/test/GPGPU/managed-memory-rewrite-malloc-free-inside-constexpr.ll +++ b/polly/test/GPGPU/managed-memory-rewrite-malloc-free-inside-constexpr.ll @@ -34,51 +34,50 @@ ; SCOP-NEXT: } ; // Check that polly_mallocManaged is declared and used correctly. -; HOST-IR: %1 = bitcast i8* (i64)* @polly_mallocManaged to i32* (i64)* -; HOST-IR: declare i8* @polly_mallocManaged(i64) +; HOST-IR: declare ptr @polly_mallocManaged(i64) ; // Check that polly_freeManaged is declared and used correctly. ; HOST-IR call void @polly_freeManaged(i8* %toFree) -; HOST-IR: declare void @polly_freeManaged(i8*) +; HOST-IR: declare void @polly_freeManaged(ptr) ; // Check that we remove the original malloc,free -; HOST-IR-NOT: declare i8* @malloc(i64) -; HOST-IR-NOT: declare void @free(i8*) +; HOST-IR-NOT: declare ptr @malloc(i64) +; HOST-IR-NOT: declare void @free(ptr) target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-apple-macosx10.12.0" -define i32* @f(i32 *%toFree) { +define ptr @f(ptr %toFree) { entry: ; Free inside bitcast - call void bitcast (void (i8*)* @free to void (i32 *)*) (i32 * %toFree) + call void @free (ptr %toFree) br label %entry.split entry.split: ; preds = %entry ; malloc inside bitcast. - %tmp = call i32* bitcast (i8* (i64)* @malloc to i32* (i64)*) (i64 400) + %tmp = call ptr @malloc (i64 400) br label %for.body for.body: ; preds = %entry.split, %for.body %indvars.iv1 = phi i64 [ 0, %entry.split ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32, i32* %tmp, i64 %indvars.iv1 - store i32 42, i32* %arrayidx, align 4, !tbaa !3 + %arrayidx = getelementptr inbounds i32, ptr %tmp, i64 %indvars.iv1 + store i32 42, ptr %arrayidx, align 4, !tbaa !3 %indvars.iv.next = add nuw nsw i64 %indvars.iv1, 1 %exitcond = icmp eq i64 %indvars.iv.next, 100 br i1 %exitcond, label %for.end, label %for.body for.end: ; preds = %for.body - ret i32* %tmp + ret ptr %tmp } ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #0 +declare void @llvm.lifetime.start.p0(i64, ptr nocapture) #0 -declare i8* @malloc(i64) -declare void @free(i8*) +declare ptr @malloc(i64) +declare void @free(ptr) ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #0 +declare void @llvm.lifetime.end.p0(i64, ptr nocapture) #0 attributes #0 = { argmemonly nounwind } diff --git a/polly/test/GPGPU/managed-memory-rewrite-malloc-free.ll b/polly/test/GPGPU/managed-memory-rewrite-malloc-free.ll index d28de92b976d..8e456127b127 100644 --- a/polly/test/GPGPU/managed-memory-rewrite-malloc-free.ll +++ b/polly/test/GPGPU/managed-memory-rewrite-malloc-free.ll @@ -32,52 +32,50 @@ ; SCOP-NEXT: } ; // Check that polly_mallocManaged is declared and used correctly. -; HOST-IR: %call = tail call i8* @polly_mallocManaged(i64 400) -; HOST-IR: declare i8* @polly_mallocManaged(i64) +; HOST-IR: %call = tail call ptr @polly_mallocManaged(i64 400) +; HOST-IR: declare ptr @polly_mallocManaged(i64) ; // Check that polly_freeManaged is declared and used correctly. ; HOST-IR %toFreeBitcast = bitcast i32* %toFree to i8* ; HOST-IR call void @polly_freeManaged(i8* %toFreeBitcast) -; HOST-IR: declare void @polly_freeManaged(i8*) +; HOST-IR: declare void @polly_freeManaged(ptr) ; // Check that we remove the original malloc,free -; HOST-IR-NOT: declare i8* @malloc(i64) -; HOST-IR-NOT: declare void @free(i8*) +; HOST-IR-NOT: declare ptr @malloc(i64) +; HOST-IR-NOT: declare void @free(ptr) target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-apple-macosx10.12.0" -define i32* @f(i32 *%toFree) { +define ptr @f(ptr %toFree) { entry: - %toFreeBitcast = bitcast i32* %toFree to i8* - call void @free(i8* %toFreeBitcast) + call void @free(ptr %toFree) br label %entry.split entry.split: ; preds = %entry - %call = tail call i8* @malloc(i64 400) - %tmp = bitcast i8* %call to i32* + %call = tail call ptr @malloc(i64 400) br label %for.body for.body: ; preds = %entry.split, %for.body %indvars.iv1 = phi i64 [ 0, %entry.split ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32, i32* %tmp, i64 %indvars.iv1 - store i32 42, i32* %arrayidx, align 4, !tbaa !3 + %arrayidx = getelementptr inbounds i32, ptr %call, i64 %indvars.iv1 + store i32 42, ptr %arrayidx, align 4, !tbaa !3 %indvars.iv.next = add nuw nsw i64 %indvars.iv1, 1 %exitcond = icmp eq i64 %indvars.iv.next, 100 br i1 %exitcond, label %for.end, label %for.body for.end: ; preds = %for.body - ret i32* %tmp + ret ptr %call } ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #0 +declare void @llvm.lifetime.start.p0(i64, ptr nocapture) #0 -declare i8* @malloc(i64) -declare void @free(i8*) +declare ptr @malloc(i64) +declare void @free(ptr) ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #0 +declare void @llvm.lifetime.end.p0(i64, ptr nocapture) #0 attributes #0 = { argmemonly nounwind } diff --git a/polly/test/GPGPU/managed-pointers-preparation.ll b/polly/test/GPGPU/managed-pointers-preparation.ll index f0a89718e8fd..473f0c107a21 100644 --- a/polly/test/GPGPU/managed-pointers-preparation.ll +++ b/polly/test/GPGPU/managed-pointers-preparation.ll @@ -66,16 +66,15 @@ entry: "102": ; preds = %"102", %"99" %indvars.iv17 = phi i64 [ %indvars.iv.next18, %"102" ], [ 1, %"99" ] - %0 = getelementptr [168 x double], [168 x double]* @__data_radiation_MOD_coai, i64 0, i64 0 - store double 1.000000e+00, double* %0, align 8 - %1 = icmp eq i64 %indvars.iv17, 3 + store double 1.000000e+00, ptr @__data_radiation_MOD_coai, align 8 + %0 = icmp eq i64 %indvars.iv17, 3 %indvars.iv.next18 = add nuw nsw i64 %indvars.iv17, 1 - br i1 %1, label %"110", label %"102" + br i1 %0, label %"110", label %"102" "110": ; preds = %"102" - %2 = load i32, i32* @__data_runcontrol_MOD_lmulti_layer, align 4, !range !0 - %3 = icmp eq i32 %2, 0 - br i1 %3, label %"112", label %"111" + %1 = load i32, ptr @__data_runcontrol_MOD_lmulti_layer, align 4, !range !0 + %2 = icmp eq i32 %1, 0 + br i1 %2, label %"112", label %"111" "111": ; preds = %"110" br label %"115" @@ -85,18 +84,18 @@ entry: "115": ; preds = %"112", %"111" %.pn = phi double [ undef, %"112" ], [ undef, %"111" ] - %4 = fdiv double 1.000000e+00, %.pn + %3 = fdiv double 1.000000e+00, %.pn br label %"116" "116": ; preds = %"116", %"115" %indvars.iv = phi i64 [ %indvars.iv.next, %"116" ], [ 1, %"115" ] - %5 = add nsw i64 %indvars.iv, -1 - %6 = fmul double %4, undef - %7 = getelementptr [10 x double], [10 x double]* @__data_radiation_MOD_rad_csalbw, i64 0, i64 %5 - store double %6, double* %7, align 8 - %8 = icmp eq i64 %indvars.iv, 10 + %4 = add nsw i64 %indvars.iv, -1 + %5 = fmul double %3, undef + %6 = getelementptr [10 x double], ptr @__data_radiation_MOD_rad_csalbw, i64 0, i64 %4 + store double %5, ptr %6, align 8 + %7 = icmp eq i64 %indvars.iv, 10 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 - br i1 %8, label %return, label %"116" + br i1 %7, label %return, label %"116" return: ; preds = %"116" ret void diff --git a/polly/test/GPGPU/memory-only-referenced-from-access.ll b/polly/test/GPGPU/memory-only-referenced-from-access.ll index 93107b928702..b3828950324a 100644 --- a/polly/test/GPGPU/memory-only-referenced-from-access.ll +++ b/polly/test/GPGPU/memory-only-referenced-from-access.ll @@ -11,30 +11,30 @@ ; Verify that we correctly generate a kernel even if certain invariant load ; hoisted parameters appear only in memory accesses, but not domain elements. -; CHECK: @FUNC_quux_SCOP_0_KERNEL_0(i8 addrspace(1)* %MemRef_tmp4, i32 %tmp3, i32 %tmp, i32 %tmp31, i32 %tmp2) +; CHECK: @FUNC_quux_SCOP_0_KERNEL_0(ptr addrspace(1) %MemRef_tmp4, i32 %tmp3, i32 %tmp, i32 %tmp31, i32 %tmp2) target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f16:16:16-f32:32:32-f64:64:64-f128:128:128-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" target triple = "x86_64-unknown-linux-gnu" -%struct.hoge = type { i8*, i64, i64, [1 x %struct.widget] } +%struct.hoge = type { ptr, i64, i64, [1 x %struct.widget] } %struct.widget = type { i64, i64, i64 } @global = external unnamed_addr global %struct.hoge, align 32 -define void @quux(i32* noalias %arg, i32* noalias %arg1) { +define void @quux(ptr noalias %arg, ptr noalias %arg1) { bb: - %tmp = load i32, i32* %arg, align 4 + %tmp = load i32, ptr %arg, align 4 %tmp2 = sext i32 %tmp to i64 - %tmp3 = load i32, i32* %arg1, align 4 - %tmp4 = load [0 x double]*, [0 x double]** bitcast (%struct.hoge* @global to [0 x double]**), align 32 + %tmp3 = load i32, ptr %arg1, align 4 + %tmp4 = load ptr, ptr @global, align 32 br label %bb5 bb5: ; preds = %bb5, %bb %tmp6 = phi i32 [ %tmp11, %bb5 ], [ 0, %bb ] %tmp7 = sext i32 %tmp6 to i64 %tmp8 = sub nsw i64 %tmp7, %tmp2 - %tmp9 = getelementptr [0 x double], [0 x double]* %tmp4, i64 0, i64 %tmp8 - store double undef, double* %tmp9, align 8 + %tmp9 = getelementptr [0 x double], ptr %tmp4, i64 0, i64 %tmp8 + store double undef, ptr %tmp9, align 8 %tmp10 = icmp eq i32 %tmp6, %tmp3 %tmp11 = add i32 %tmp6, 1 br i1 %tmp10, label %bb12, label %bb5 diff --git a/polly/test/GPGPU/mostly-sequential.ll b/polly/test/GPGPU/mostly-sequential.ll index c0574f7b1d99..c42c24482a38 100644 --- a/polly/test/GPGPU/mostly-sequential.ll +++ b/polly/test/GPGPU/mostly-sequential.ll @@ -43,7 +43,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A) { +define void @foo(ptr %A) { bb: br label %bb3 @@ -54,10 +54,10 @@ bb3: ; preds = %bb8, %bb bb4: ; preds = %bb3 %tmp = sitofp i64 %i.0 to float - %tmp5 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp6 = load float, float* %tmp5, align 4 + %tmp5 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp6 = load float, ptr %tmp5, align 4 %tmp7 = fadd float %tmp6, %tmp - store float %tmp7, float* %tmp5, align 4 + store float %tmp7, ptr %tmp5, align 4 br label %bb8 bb8: ; preds = %bb4 @@ -83,10 +83,10 @@ bb13: ; preds = %bb20, %bb12 bb14: ; preds = %bb13 %tmp15 = add nuw nsw i64 %i1.0, %j.0 %tmp16 = sitofp i64 %tmp15 to float - %tmp17 = getelementptr inbounds float, float* %A, i64 42 - %tmp18 = load float, float* %tmp17, align 4 + %tmp17 = getelementptr inbounds float, ptr %A, i64 42 + %tmp18 = load float, ptr %tmp17, align 4 %tmp19 = fadd float %tmp18, %tmp16 - store float %tmp19, float* %tmp17, align 4 + store float %tmp19, ptr %tmp17, align 4 br label %bb20 bb20: ; preds = %bb14 diff --git a/polly/test/GPGPU/non-read-only-scalars.ll b/polly/test/GPGPU/non-read-only-scalars.ll index 5036644ab3d9..1ce6e0991ebb 100644 --- a/polly/test/GPGPU/non-read-only-scalars.ll +++ b/polly/test/GPGPU/non-read-only-scalars.ll @@ -79,20 +79,20 @@ ; TODO-NEXT: } -; KERNEL-IR: define ptx_kernel void @FUNC_foo_SCOP_0_KERNEL_1(i8 addrspace(1)* %MemRef_sum_0__phi) -; KERNEL-IR: store float 0.000000e+00, float* %sum.0.phiops -; KERNEL-IR: [[REGA:%.+]] = addrspacecast i8 addrspace(1)* %MemRef_sum_0__phi to float* -; KERNEL-IR: [[REGB:%.+]] = load float, float* %sum.0.phiops -; KERNEL-IR: store float [[REGB]], float* [[REGA]] +; KERNEL-IR: define ptx_kernel void @FUNC_foo_SCOP_0_KERNEL_1(ptr addrspace(1) %MemRef_sum_0__phi) +; KERNEL-IR: store float 0.000000e+00, ptr %sum.0.phiops +; KERNEL-IR: [[REGA:%.+]] = addrspacecast ptr addrspace(1) %MemRef_sum_0__phi to ptr +; KERNEL-IR: [[REGB:%.+]] = load float, ptr %sum.0.phiops +; KERNEL-IR: store float [[REGB]], ptr [[REGA]] -; KERNEL-IR: define ptx_kernel void @FUNC_foo_SCOP_0_KERNEL_2(i8 addrspace(1)* %MemRef_A, i8 addrspace(1)* %MemRef_sum_0__phi, i8 addrspace(1)* %MemRef_sum_0) +; KERNEL-IR: define ptx_kernel void @FUNC_foo_SCOP_0_KERNEL_2(ptr addrspace(1) %MemRef_A, ptr addrspace(1) %MemRef_sum_0__phi, ptr addrspace(1) %MemRef_sum_0) target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @.str = private unnamed_addr constant [4 x i8] c"%f\0A\00", align 1 -define float @foo(float* %A) { +define float @foo(ptr %A) { bb: br label %bb3 @@ -103,8 +103,8 @@ bb3: ; preds = %bb6, %bb bb4: ; preds = %bb3 %tmp = sitofp i64 %i.0 to float - %tmp5 = getelementptr inbounds float, float* %A, i64 %i.0 - store float %tmp, float* %tmp5, align 4 + %tmp5 = getelementptr inbounds float, ptr %A, i64 %i.0 + store float %tmp, ptr %tmp5, align 4 br label %bb6 bb6: ; preds = %bb4 @@ -121,10 +121,10 @@ bb9: ; preds = %bb15, %bb8 bb10: ; preds = %bb9 %tmp11 = sitofp i64 %i1.0 to float - %tmp12 = getelementptr inbounds float, float* %A, i64 %i1.0 - %tmp13 = load float, float* %tmp12, align 4 + %tmp12 = getelementptr inbounds float, ptr %A, i64 %i1.0 + %tmp13 = load float, ptr %tmp12, align 4 %tmp14 = fadd float %tmp13, %tmp11 - store float %tmp14, float* %tmp12, align 4 + store float %tmp14, ptr %tmp12, align 4 br label %bb15 bb15: ; preds = %bb10 @@ -144,8 +144,8 @@ bb19: ; preds = %bb18 br label %bb20 bb20: ; preds = %bb19 - %tmp21 = getelementptr inbounds float, float* %A, i64 %i2.0 - %tmp22 = load float, float* %tmp21, align 4 + %tmp21 = getelementptr inbounds float, ptr %A, i64 %i2.0 + %tmp22 = load float, ptr %tmp21, align 4 %tmp23 = fadd float %sum.0, %tmp22 %tmp24 = add nuw nsw i64 %i2.0, 1 br label %bb18 @@ -158,12 +158,11 @@ bb25: ; preds = %bb18 define i32 @main() { bb: %A = alloca [32 x float], align 16 - %tmp = getelementptr inbounds [32 x float], [32 x float]* %A, i64 0, i64 0 - %tmp1 = call float @foo(float* %tmp) + %tmp1 = call float @foo(ptr %A) %tmp2 = fpext float %tmp1 to double - %tmp3 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str, i64 0, i64 0), double %tmp2) #2 + %tmp3 = call i32 (ptr, ...) @printf(ptr @.str, double %tmp2) #2 ret i32 0 } -declare i32 @printf(i8*, ...) #1 +declare i32 @printf(ptr, ...) #1 diff --git a/polly/test/GPGPU/non-zero-array-offset.ll b/polly/test/GPGPU/non-zero-array-offset.ll index 9ad68ae0ba90..f18f6828a47f 100644 --- a/polly/test/GPGPU/non-zero-array-offset.ll +++ b/polly/test/GPGPU/non-zero-array-offset.ll @@ -32,16 +32,13 @@ ; CODE: # kernel1 ; CODE-NEXT: Stmt_bb11(t0); -; IR: %p_dev_array_MemRef_B = call i8* @polly_allocateMemoryForDevice(i64 32) -; IR-NEXT: %p_dev_array_MemRef_A = call i8* @polly_allocateMemoryForDevice(i64 32) -; IR-NEXT: [[REG0:%.+]] = getelementptr float, float* %B, i64 8 -; IR-NEXT: [[REG1:%.+]] = bitcast float* [[REG0]] to i8* -; IR-NEXT: call void @polly_copyFromHostToDevice(i8* [[REG1]], i8* %p_dev_array_MemRef_B, i64 32) +; IR: %p_dev_array_MemRef_B = call ptr @polly_allocateMemoryForDevice(i64 32) +; IR-NEXT: %p_dev_array_MemRef_A = call ptr @polly_allocateMemoryForDevice(i64 32) +; IR-NEXT: [[REG0:%.+]] = getelementptr float, ptr %B, i64 8 +; IR-NEXT: call void @polly_copyFromHostToDevice(ptr [[REG0]], ptr %p_dev_array_MemRef_B, i64 32) -; IR: [[REGA:%.+]] = call i8* @polly_getDevicePtr(i8* %p_dev_array_MemRef_B) -; IR-NEXT: [[REGB:%.+]] = bitcast i8* [[REGA]] to float* -; IR-NEXT: [[REGC:%.+]] = getelementptr float, float* [[REGB]], i64 -8 -; IR-NEXT: [[REGD:%.+]] = bitcast float* [[REGC]] to i8* +; IR: [[REGA:%.+]] = call ptr @polly_getDevicePtr(ptr %p_dev_array_MemRef_B) +; IR-NEXT: [[REGC:%.+]] = getelementptr float, ptr [[REGA]], i64 -8 ; void foo(float A[], float B[]) { ; for (long i = 0; i < 8; i++) @@ -74,7 +71,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A, float* %B) { +define void @foo(ptr %A, ptr %B) { bb: br label %bb2 @@ -85,10 +82,10 @@ bb2: ; preds = %bb7, %bb bb3: ; preds = %bb2 %tmp = add nuw nsw i64 %i.0, 8 - %tmp4 = getelementptr inbounds float, float* %B, i64 %tmp - %tmp5 = load float, float* %tmp4, align 4 + %tmp4 = getelementptr inbounds float, ptr %B, i64 %tmp + %tmp5 = load float, ptr %tmp4, align 4 %tmp6 = fmul float %tmp5, 4.000000e+00 - store float %tmp6, float* %tmp4, align 4 + store float %tmp6, ptr %tmp4, align 4 br label %bb7 bb7: ; preds = %bb3 @@ -104,10 +101,10 @@ bb10: ; preds = %bb15, %bb9 br i1 %exitcond, label %bb11, label %bb17 bb11: ; preds = %bb10 - %tmp12 = getelementptr inbounds float, float* %A, i64 %i1.0 - %tmp13 = load float, float* %tmp12, align 4 + %tmp12 = getelementptr inbounds float, ptr %A, i64 %i1.0 + %tmp13 = load float, ptr %tmp12, align 4 %tmp14 = fmul float %tmp13, 1.200000e+01 - store float %tmp14, float* %tmp12, align 4 + store float %tmp14, ptr %tmp12, align 4 br label %bb15 bb15: ; preds = %bb11 diff --git a/polly/test/GPGPU/only-part-of-array-modified.ll b/polly/test/GPGPU/only-part-of-array-modified.ll index 241a3b143b62..abc380badfb6 100644 --- a/polly/test/GPGPU/only-part-of-array-modified.ll +++ b/polly/test/GPGPU/only-part-of-array-modified.ll @@ -14,7 +14,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A, float* %B) { +define void @foo(ptr %A, ptr %B) { bb: br label %bb1 @@ -24,13 +24,11 @@ bb1: ; preds = %bb8, %bb br i1 %exitcond, label %bb2, label %bb10 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds float, float* %B, i64 %i.0 - %tmp3 = bitcast float* %tmp to i32* - %tmp4 = load i32, i32* %tmp3, align 4 + %tmp = getelementptr inbounds float, ptr %B, i64 %i.0 + %tmp4 = load i32, ptr %tmp, align 4 %tmp5 = shl nsw i64 %i.0, 1 - %tmp6 = getelementptr inbounds float, float* %A, i64 %tmp5 - %tmp7 = bitcast float* %tmp6 to i32* - store i32 %tmp4, i32* %tmp7, align 4 + %tmp6 = getelementptr inbounds float, ptr %A, i64 %tmp5 + store i32 %tmp4, ptr %tmp6, align 4 br label %bb8 bb8: ; preds = %bb2 diff --git a/polly/test/GPGPU/parametric-loop-bound.ll b/polly/test/GPGPU/parametric-loop-bound.ll index 610fc401181d..e436bd663a4a 100644 --- a/polly/test/GPGPU/parametric-loop-bound.ll +++ b/polly/test/GPGPU/parametric-loop-bound.ll @@ -31,14 +31,13 @@ ; CODE-NEXT: if (n >= 32 * b0 + t0 + 1048576 * c0 + 1) ; CODE-NEXT: Stmt_bb2(32 * b0 + t0 + 1048576 * c0); -; IR: store i64 %n, i64* %polly_launch_0_param_1 -; IR-NEXT: [[REGA:%.+]] = getelementptr [2 x i8*], [2 x i8*]* %polly_launch_0_params, i64 0, i64 1 -; IR-NEXT: [[REGB:%.+]] = bitcast i64* %polly_launch_0_param_1 to i8* -; IR-NEXT: store i8* [[REGB]], i8** [[REGA]] +; IR: store i64 %n, ptr %polly_launch_0_param_1 +; IR-NEXT: [[REGA:%.+]] = getelementptr [2 x ptr], ptr %polly_launch_0_params, i64 0, i64 1 +; IR-NEXT: store ptr %polly_launch_0_param_1, ptr [[REGA]] target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64* %A, i64 %n) { +define void @foo(ptr %A, i64 %n) { bb: br label %bb1 @@ -48,10 +47,10 @@ bb1: ; preds = %bb6, %bb br i1 %tmp, label %bb2, label %bb8 bb2: ; preds = %bb1 - %tmp3 = getelementptr inbounds i64, i64* %A, i64 %i.0 - %tmp4 = load i64, i64* %tmp3, align 8 + %tmp3 = getelementptr inbounds i64, ptr %A, i64 %i.0 + %tmp4 = load i64, ptr %tmp3, align 8 %tmp5 = add nsw i64 %tmp4, 100 - store i64 %tmp5, i64* %tmp3, align 8 + store i64 %tmp5, ptr %tmp3, align 8 br label %bb6 bb6: ; preds = %bb2 diff --git a/polly/test/GPGPU/partial_writes.ll b/polly/test/GPGPU/partial_writes.ll index 3630409afba9..c3df624df7ac 100644 --- a/polly/test/GPGPU/partial_writes.ll +++ b/polly/test/GPGPU/partial_writes.ll @@ -11,20 +11,19 @@ target triple = "x86_64-unknown-linux-gnu" ; Function Attrs: nounwind uwtable define void @partial_writes() { bb: - %tmp = tail call i8* @wibble() #2 - %tmp1 = bitcast i8* %tmp to [1200 x double]* + %tmp = tail call ptr @wibble() #2 br label %bb2 bb2: ; preds = %bb11, %bb %tmp3 = phi i64 [ 0, %bb ], [ %tmp12, %bb11 ] - %tmp4 = getelementptr inbounds [1200 x double], [1200 x double]* %tmp1, i64 0, i64 %tmp3 - %tmp5 = load double, double* %tmp4, align 8, !tbaa !1 + %tmp4 = getelementptr inbounds [1200 x double], ptr %tmp, i64 0, i64 %tmp3 + %tmp5 = load double, ptr %tmp4, align 8, !tbaa !1 br label %bb6 bb6: ; preds = %bb6, %bb2 %tmp7 = phi double [ undef, %bb2 ], [ undef, %bb6 ] %tmp8 = phi i64 [ 0, %bb2 ], [ %tmp9, %bb6 ] - store double undef, double* %tmp4, align 8, !tbaa !1 + store double undef, ptr %tmp4, align 8, !tbaa !1 %tmp9 = add nuw nsw i64 %tmp8, 1 %tmp10 = icmp eq i64 %tmp9, 900 br i1 %tmp10, label %bb11, label %bb6 @@ -38,7 +37,7 @@ bb14: ; preds = %bb11 ret void } -declare i8* @wibble() +declare ptr @wibble() !llvm.ident = !{!0} diff --git a/polly/test/GPGPU/privatization-simple.ll b/polly/test/GPGPU/privatization-simple.ll index cfdf4c3d6fa5..c715b8e77b67 100644 --- a/polly/test/GPGPU/privatization-simple.ll +++ b/polly/test/GPGPU/privatization-simple.ll @@ -9,7 +9,7 @@ ; Check that kernel launch is generated in host IR. ; the declare would not be generated unless a call to a kernel exists. -; HOST-IR: declare void @polly_launchKernel(i8*, i32, i32, i32, i32, i32, i8*) +; HOST-IR: declare void @polly_launchKernel(ptr, i32, i32, i32, i32, i32, ptr) ; void f(int A[], int B[], int control, int C[]) { ; int x; @@ -25,7 +25,7 @@ target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %B, i32 %control, i32* %C) { +define void @f(ptr %A, ptr %B, i32 %control, ptr %C) { entry: br label %entry.split @@ -38,17 +38,17 @@ for.body: ; preds = %entry.split, %if.en br i1 %tobool, label %if.end, label %if.then if.then: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %C, i64 %indvars.iv - %tmp4 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %C, i64 %indvars.iv + %tmp4 = load i32, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %for.body, %if.then %x.0 = phi i32 [ %tmp4, %if.then ], [ 0, %for.body ] - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp8 = load i32, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp8 = load i32, ptr %arrayidx2, align 4 %mul = mul nsw i32 %tmp8, %x.0 - %arrayidx4 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv - store i32 %mul, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %B, i64 %indvars.iv + store i32 %mul, ptr %arrayidx4, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 1000 br i1 %exitcond, label %for.body, label %for.end diff --git a/polly/test/GPGPU/privatization.ll b/polly/test/GPGPU/privatization.ll index 91eb77fe5ce0..fbb291575146 100644 --- a/polly/test/GPGPU/privatization.ll +++ b/polly/test/GPGPU/privatization.ll @@ -10,7 +10,7 @@ ; Check that kernel launch is generated in host IR. ; the declare would not be generated unless a call to a kernel exists. -; HOST-IR: declare void @polly_launchKernel(i8*, i32, i32, i32, i32, i32, i8*) +; HOST-IR: declare void @polly_launchKernel(ptr, i32, i32, i32, i32, i32, ptr) ; ; @@ -29,7 +29,7 @@ ; target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" -define void @checkPrivatization(i32* %A, i32* %B, i32* %C, i32 %control) { +define void @checkPrivatization(ptr %A, ptr %B, ptr %C, i32 %control) { entry: br label %entry.split @@ -42,17 +42,17 @@ for.body: ; preds = %entry.split, %if.en br i1 %tobool, label %if.end, label %if.then if.then: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %C, i64 %indvars.iv - %tmp4 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %C, i64 %indvars.iv + %tmp4 = load i32, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %for.body, %if.then %x.0 = phi i32 [ %tmp4, %if.then ], [ 0, %for.body ] - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp9 = load i32, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp9 = load i32, ptr %arrayidx2, align 4 %mul = mul nsw i32 %tmp9, %x.0 - %arrayidx4 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv - store i32 %mul, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %B, i64 %indvars.iv + store i32 %mul, ptr %arrayidx4, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 1000 br i1 %exitcond, label %for.body, label %for.end diff --git a/polly/test/GPGPU/region-stmt.ll b/polly/test/GPGPU/region-stmt.ll index 990a3951cd5c..8e392fb30062 100644 --- a/polly/test/GPGPU/region-stmt.ll +++ b/polly/test/GPGPU/region-stmt.ll @@ -36,7 +36,7 @@ source_filename = "/tmp/test.c" target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A, float* %B) { +define void @foo(ptr %A, ptr %B) { entry: br label %for.cond @@ -46,27 +46,27 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp = load float, ptr %arrayidx, align 4 %cmp1 = fcmp oeq float %tmp, 4.200000e+01 br i1 %cmp1, label %if.then, label %if.else if.then: ; preds = %for.body %mul = shl nsw i64 %i.0, 1 %conv = sitofp i64 %mul to float - %arrayidx2 = getelementptr inbounds float, float* %B, i64 %i.0 - %tmp1 = load float, float* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds float, ptr %B, i64 %i.0 + %tmp1 = load float, ptr %arrayidx2, align 4 %add = fadd float %tmp1, %conv - store float %add, float* %arrayidx2, align 4 + store float %add, ptr %arrayidx2, align 4 br label %if.end if.else: ; preds = %for.body %mul3 = shl nsw i64 %i.0, 2 %conv4 = sitofp i64 %mul3 to float - %arrayidx5 = getelementptr inbounds float, float* %B, i64 %i.0 - %tmp2 = load float, float* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds float, ptr %B, i64 %i.0 + %tmp2 = load float, ptr %arrayidx5, align 4 %add6 = fadd float %tmp2, %conv4 - store float %add6, float* %arrayidx5, align 4 + store float %add6, ptr %arrayidx5, align 4 br label %if.end if.end: ; preds = %if.else, %if.then diff --git a/polly/test/GPGPU/remove-dead-instructions-in-stmt-2.ll b/polly/test/GPGPU/remove-dead-instructions-in-stmt-2.ll index fba959c9833a..326236cf92fd 100644 --- a/polly/test/GPGPU/remove-dead-instructions-in-stmt-2.ll +++ b/polly/test/GPGPU/remove-dead-instructions-in-stmt-2.ll @@ -7,10 +7,10 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -; KERNEL-IR: store i32 0, i32 addrspace(1)* %polly.access.MemRef_sum_c, align 4 +; KERNEL-IR: store i32 0, ptr addrspace(1) %polly.access.MemRef_sum_c, align 4 ; KERNEL-IR-NEXT: br label %polly.merge -define void @kernel_dynprog([50 x [50 x i32]]* %sum_c) { +define void @kernel_dynprog(ptr %sum_c) { entry: br label %for.cond1.preheader @@ -26,8 +26,8 @@ for.body3: ; preds = %for.cond1.loopexit, %indvars.iv55 = phi i64 [ 0, %for.cond1.preheader ], [ %indvars.iv.next56, %for.cond1.loopexit ] %indvars.iv48 = phi i64 [ 1, %for.cond1.preheader ], [ %indvars.iv.next49, %for.cond1.loopexit ] %indvars.iv.next56 = add nuw nsw i64 %indvars.iv55, 1 - %arrayidx10 = getelementptr inbounds [50 x [50 x i32]], [50 x [50 x i32]]* %sum_c, i64 %indvars.iv55, i64 %indvars.iv48, i64 %indvars.iv55 - store i32 0, i32* %arrayidx10, align 4 + %arrayidx10 = getelementptr inbounds [50 x [50 x i32]], ptr %sum_c, i64 %indvars.iv55, i64 %indvars.iv48, i64 %indvars.iv55 + store i32 0, ptr %arrayidx10, align 4 %cmp1334 = icmp slt i64 %indvars.iv.next56, %indvars.iv48 br label %for.end diff --git a/polly/test/GPGPU/remove-dead-instructions-in-stmt.ll b/polly/test/GPGPU/remove-dead-instructions-in-stmt.ll index 9a0a1cdd903b..2024f006c53a 100644 --- a/polly/test/GPGPU/remove-dead-instructions-in-stmt.ll +++ b/polly/test/GPGPU/remove-dead-instructions-in-stmt.ll @@ -10,13 +10,13 @@ ; condition. This code referred to CPU registers and consequently resulted ; in invalid bitcode. -; KERNEL-IR: store i32 0, i32 addrspace(1)* %polly.access.MemRef_sum_c, align 4 +; KERNEL-IR: store i32 0, ptr addrspace(1) %polly.access.MemRef_sum_c, align 4 ; KERNEL-IR-NEXT: br label %polly.merge target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @kernel_dynprog([50 x [50 x i32]]* %sum_c) { +define void @kernel_dynprog(ptr %sum_c) { entry: br label %for.cond1.preheader @@ -36,8 +36,8 @@ for.body3: ; preds = %for.cond1.loopexit, for.body6: ; preds = %for.end, %for.body3 %indvars.iv50 = phi i64 [ 0, %for.body3 ], [ %indvars.iv.next51, %for.end ] - %arrayidx10 = getelementptr inbounds [50 x [50 x i32]], [50 x [50 x i32]]* %sum_c, i64 %indvars.iv55, i64 %indvars.iv50, i64 %indvars.iv55 - store i32 0, i32* %arrayidx10, align 4 + %arrayidx10 = getelementptr inbounds [50 x [50 x i32]], ptr %sum_c, i64 %indvars.iv55, i64 %indvars.iv50, i64 %indvars.iv55 + store i32 0, ptr %arrayidx10, align 4 %cmp1334 = icmp slt i64 %indvars.iv.next56, %indvars.iv50 br i1 %cmp1334, label %for.body14.lr.ph, label %for.end @@ -45,7 +45,7 @@ for.body14.lr.ph: ; preds = %for.body6 br label %for.body14 for.body14: ; preds = %for.body14, %for.body14.lr.ph - %arrayidx32 = getelementptr inbounds [50 x [50 x i32]], [50 x [50 x i32]]* %sum_c, i64 %indvars.iv55, i64 %indvars.iv50, i64 0 + %arrayidx32 = getelementptr inbounds [50 x [50 x i32]], ptr %sum_c, i64 %indvars.iv55, i64 %indvars.iv50, i64 0 br i1 false, label %for.body14, label %for.cond12.for.end_crit_edge for.cond12.for.end_crit_edge: ; preds = %for.body14 diff --git a/polly/test/GPGPU/run-time-check.ll b/polly/test/GPGPU/run-time-check.ll index eb20867e79ec..3b04c3e01593 100644 --- a/polly/test/GPGPU/run-time-check.ll +++ b/polly/test/GPGPU/run-time-check.ll @@ -14,7 +14,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %n, [32 x float]* %A) { +define void @foo(i64 %n, ptr %A) { bb: br label %bb1 @@ -34,12 +34,12 @@ bb3: ; preds = %bb12, %bb2 bb4: ; preds = %bb3 %tmp5 = add nuw nsw i64 %j.0, 1 %tmp6 = add nuw nsw i64 %i.0, 1 - %tmp7 = getelementptr inbounds [32 x float], [32 x float]* %A, i64 %tmp6, i64 %tmp5 - %tmp8 = load float, float* %tmp7, align 4 - %tmp9 = getelementptr inbounds [32 x float], [32 x float]* %A, i64 %i.0, i64 %j.0 - %tmp10 = load float, float* %tmp9, align 4 + %tmp7 = getelementptr inbounds [32 x float], ptr %A, i64 %tmp6, i64 %tmp5 + %tmp8 = load float, ptr %tmp7, align 4 + %tmp9 = getelementptr inbounds [32 x float], ptr %A, i64 %i.0, i64 %j.0 + %tmp10 = load float, ptr %tmp9, align 4 %tmp11 = fadd float %tmp10, %tmp8 - store float %tmp11, float* %tmp9, align 4 + store float %tmp11, ptr %tmp9, align 4 br label %bb12 bb12: ; preds = %bb4 diff --git a/polly/test/GPGPU/scalar-param-and-value-32-bit.ll b/polly/test/GPGPU/scalar-param-and-value-32-bit.ll index 504f5e0b90ca..0313d64e976c 100644 --- a/polly/test/GPGPU/scalar-param-and-value-32-bit.ll +++ b/polly/test/GPGPU/scalar-param-and-value-32-bit.ll @@ -11,9 +11,9 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -; CHECK: define ptx_kernel void @FUNC_foo_SCOP_0_KERNEL_0(i8 addrspace(1)* %MemRef_A, i32 %n) +; CHECK: define ptx_kernel void @FUNC_foo_SCOP_0_KERNEL_0(ptr addrspace(1) %MemRef_A, i32 %n) -define void @foo(float* %A, i32 %n) { +define void @foo(ptr %A, i32 %n) { bb: br label %bb1 @@ -26,10 +26,10 @@ bb1: ; preds = %bb9, %bb bb3: ; preds = %bb1 %tmp4 = sext i32 %n to i64 %tmp5 = add nsw i64 %j.0, %tmp4 - %tmp6 = getelementptr inbounds float, float* %A, i64 %tmp5 - %tmp7 = load float, float* %tmp6, align 4 + %tmp6 = getelementptr inbounds float, ptr %A, i64 %tmp5 + %tmp7 = load float, ptr %tmp6, align 4 %tmp8 = fadd float %tmp7, 4.200000e+01 - store float %tmp8, float* %tmp6, align 4 + store float %tmp8, ptr %tmp6, align 4 br label %bb9 bb9: ; preds = %bb3 diff --git a/polly/test/GPGPU/scalar-param-and-value-use.ll b/polly/test/GPGPU/scalar-param-and-value-use.ll index 188423244221..0301d88e16ac 100644 --- a/polly/test/GPGPU/scalar-param-and-value-use.ll +++ b/polly/test/GPGPU/scalar-param-and-value-use.ll @@ -19,7 +19,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; IR: %polly.access.mul.MemRef_A = mul nsw i64 {{.*}}, %n -define void @foo(i64 %n, float* %A) { +define void @foo(i64 %n, ptr %A) { bb: br label %bb2 @@ -40,15 +40,15 @@ bb5: ; preds = %bb4 %tmp = add nuw nsw i64 %j.0, 1 %tmp6 = add nuw nsw i64 %i.0, 1 %tmp7 = mul nsw i64 %tmp6, %n - %tmp8 = getelementptr inbounds float, float* %A, i64 %tmp7 - %tmp9 = getelementptr inbounds float, float* %tmp8, i64 %tmp - %tmp10 = load float, float* %tmp9, align 4 + %tmp8 = getelementptr inbounds float, ptr %A, i64 %tmp7 + %tmp9 = getelementptr inbounds float, ptr %tmp8, i64 %tmp + %tmp10 = load float, ptr %tmp9, align 4 %tmp11 = mul nsw i64 %i.0, %n - %tmp12 = getelementptr inbounds float, float* %A, i64 %tmp11 - %tmp13 = getelementptr inbounds float, float* %tmp12, i64 %j.0 - %tmp14 = load float, float* %tmp13, align 4 + %tmp12 = getelementptr inbounds float, ptr %A, i64 %tmp11 + %tmp13 = getelementptr inbounds float, ptr %tmp12, i64 %j.0 + %tmp14 = load float, ptr %tmp13, align 4 %tmp15 = fadd float %tmp14, %tmp10 - store float %tmp15, float* %tmp13, align 4 + store float %tmp15, ptr %tmp13, align 4 br label %bb16 bb16: ; preds = %bb5 diff --git a/polly/test/GPGPU/scalar-parameter-fp128.ll b/polly/test/GPGPU/scalar-parameter-fp128.ll index f52c32237007..f20a809c7c83 100644 --- a/polly/test/GPGPU/scalar-parameter-fp128.ll +++ b/polly/test/GPGPU/scalar-parameter-fp128.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @fp128(fp128* %A, fp128 %b) { +define void @fp128(ptr %A, fp128 %b) { bb: br label %bb1 @@ -23,10 +23,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds fp128, fp128* %A, i64 %i.0 - %tmp3 = load fp128, fp128* %tmp, align 4 + %tmp = getelementptr inbounds fp128, ptr %A, i64 %i.0 + %tmp3 = load fp128, ptr %tmp, align 4 %tmp4 = fadd fp128 %tmp3, %b - store fp128 %tmp4, fp128* %tmp, align 4 + store fp128 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 diff --git a/polly/test/GPGPU/scalar-parameter-half.ll b/polly/test/GPGPU/scalar-parameter-half.ll index 6ed9876e21cc..127096256812 100644 --- a/polly/test/GPGPU/scalar-parameter-half.ll +++ b/polly/test/GPGPU/scalar-parameter-half.ll @@ -9,7 +9,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @half(half* %A, half %b) { +define void @half(ptr %A, half %b) { bb: br label %bb1 @@ -19,10 +19,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds half, half* %A, i64 %i.0 - %tmp3 = load half, half* %tmp, align 4 + %tmp = getelementptr inbounds half, ptr %A, i64 %i.0 + %tmp3 = load half, ptr %tmp, align 4 %tmp4 = fadd half %tmp3, %b - store half %tmp4, half* %tmp, align 4 + store half %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 diff --git a/polly/test/GPGPU/scalar-parameter-i120.ll b/polly/test/GPGPU/scalar-parameter-i120.ll index 5599c711919c..06fb46dd917e 100644 --- a/polly/test/GPGPU/scalar-parameter-i120.ll +++ b/polly/test/GPGPU/scalar-parameter-i120.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @i120(i120* %A, i120 %b) { +define void @i120(ptr %A, i120 %b) { bb: br label %bb1 @@ -23,10 +23,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i120, i120* %A, i120 %i.0 - %tmp3 = load i120, i120* %tmp, align 4 + %tmp = getelementptr inbounds i120, ptr %A, i120 %i.0 + %tmp3 = load i120, ptr %tmp, align 4 %tmp4 = add i120 %tmp3, %b - store i120 %tmp4, i120* %tmp, align 4 + store i120 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 diff --git a/polly/test/GPGPU/scalar-parameter-i128.ll b/polly/test/GPGPU/scalar-parameter-i128.ll index 73951e8dbc28..8e54cf4636d4 100644 --- a/polly/test/GPGPU/scalar-parameter-i128.ll +++ b/polly/test/GPGPU/scalar-parameter-i128.ll @@ -9,7 +9,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @i128(i128* %A, i128 %b) { +define void @i128(ptr %A, i128 %b) { bb: br label %bb1 @@ -19,10 +19,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i128, i128* %A, i128 %i.0 - %tmp3 = load i128, i128* %tmp, align 4 + %tmp = getelementptr inbounds i128, ptr %A, i128 %i.0 + %tmp3 = load i128, ptr %tmp, align 4 %tmp4 = add i128 %tmp3, %b - store i128 %tmp4, i128* %tmp, align 4 + store i128 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 diff --git a/polly/test/GPGPU/scalar-parameter-i3000.ll b/polly/test/GPGPU/scalar-parameter-i3000.ll index 58e0c611d5f2..5c36b3fd62cb 100644 --- a/polly/test/GPGPU/scalar-parameter-i3000.ll +++ b/polly/test/GPGPU/scalar-parameter-i3000.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @i3000(i3000* %A, i3000 %b) { +define void @i3000(ptr %A, i3000 %b) { bb: br label %bb1 @@ -23,10 +23,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i3000, i3000* %A, i3000 %i.0 - %tmp3 = load i3000, i3000* %tmp, align 4 + %tmp = getelementptr inbounds i3000, ptr %A, i3000 %i.0 + %tmp3 = load i3000, ptr %tmp, align 4 %tmp4 = add i3000 %tmp3, %b - store i3000 %tmp4, i3000* %tmp, align 4 + store i3000 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 diff --git a/polly/test/GPGPU/scalar-parameter-i80.ll b/polly/test/GPGPU/scalar-parameter-i80.ll index 5f52072f3d27..a672cd5c1cdc 100644 --- a/polly/test/GPGPU/scalar-parameter-i80.ll +++ b/polly/test/GPGPU/scalar-parameter-i80.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @i80(i80* %A, i80 %b) { +define void @i80(ptr %A, i80 %b) { bb: br label %bb1 @@ -23,10 +23,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i80, i80* %A, i80 %i.0 - %tmp3 = load i80, i80* %tmp, align 4 + %tmp = getelementptr inbounds i80, ptr %A, i80 %i.0 + %tmp3 = load i80, ptr %tmp, align 4 %tmp4 = add i80 %tmp3, %b - store i80 %tmp4, i80* %tmp, align 4 + store i80 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 diff --git a/polly/test/GPGPU/scalar-parameter-ppc_fp128.ll b/polly/test/GPGPU/scalar-parameter-ppc_fp128.ll index 7b402a685176..11dfd68ede9b 100644 --- a/polly/test/GPGPU/scalar-parameter-ppc_fp128.ll +++ b/polly/test/GPGPU/scalar-parameter-ppc_fp128.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @ppc_fp128(ppc_fp128* %A, ppc_fp128 %b) { +define void @ppc_fp128(ptr %A, ppc_fp128 %b) { bb: br label %bb1 @@ -23,10 +23,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds ppc_fp128, ppc_fp128* %A, i64 %i.0 - %tmp3 = load ppc_fp128, ppc_fp128* %tmp, align 4 + %tmp = getelementptr inbounds ppc_fp128, ptr %A, i64 %i.0 + %tmp3 = load ppc_fp128, ptr %tmp, align 4 %tmp4 = fadd ppc_fp128 %tmp3, %b - store ppc_fp128 %tmp4, ppc_fp128* %tmp, align 4 + store ppc_fp128 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 diff --git a/polly/test/GPGPU/scalar-parameter-x86_fp80.ll b/polly/test/GPGPU/scalar-parameter-x86_fp80.ll index f52c32237007..f20a809c7c83 100644 --- a/polly/test/GPGPU/scalar-parameter-x86_fp80.ll +++ b/polly/test/GPGPU/scalar-parameter-x86_fp80.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @fp128(fp128* %A, fp128 %b) { +define void @fp128(ptr %A, fp128 %b) { bb: br label %bb1 @@ -23,10 +23,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds fp128, fp128* %A, i64 %i.0 - %tmp3 = load fp128, fp128* %tmp, align 4 + %tmp = getelementptr inbounds fp128, ptr %A, i64 %i.0 + %tmp3 = load fp128, ptr %tmp, align 4 %tmp4 = fadd fp128 %tmp3, %b - store fp128 %tmp4, fp128* %tmp, align 4 + store fp128 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 diff --git a/polly/test/GPGPU/scalar-parameter.ll b/polly/test/GPGPU/scalar-parameter.ll index 2013f00b44a6..e416c93211d5 100644 --- a/polly/test/GPGPU/scalar-parameter.ll +++ b/polly/test/GPGPU/scalar-parameter.ll @@ -18,7 +18,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -; KERNEL: define ptx_kernel void @kernel_0(i8* %MemRef_A, float %MemRef_b) +; KERNEL: define ptx_kernel void @kernel_0(ptr %MemRef_A, float %MemRef_b) ; CODE: Code ; CODE-NEXT: ==== @@ -43,7 +43,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; A[i] += b; ; } ; -define void @float(float* %A, float %b) { +define void @float(ptr %A, float %b) { bb: br label %bb1 @@ -53,10 +53,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp3 = load float, float* %tmp, align 4 + %tmp = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp3 = load float, ptr %tmp, align 4 %tmp4 = fadd float %tmp3, %b - store float %tmp4, float* %tmp, align 4 + store float %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 @@ -67,10 +67,10 @@ bb7: ; preds = %bb1 ret void } -; KERNEL: define ptx_kernel void @kernel_0(i8* %MemRef_A, double %MemRef_b) +; KERNEL: define ptx_kernel void @kernel_0(ptr %MemRef_A, double %MemRef_b) ; KERNEL-NEXT: entry: ; KERNEL-NEXT: %b.s2a = alloca double -; KERNEL-NEXT: store double %MemRef_b, double* %b.s2a +; KERNEL-NEXT: store double %MemRef_b, ptr %b.s2a ; CODE: Code ; CODE-NEXT: ==== @@ -95,7 +95,7 @@ bb7: ; preds = %bb1 ; A[i] += b; ; } ; -define void @double(double* %A, double %b) { +define void @double(ptr %A, double %b) { bb: br label %bb1 @@ -105,10 +105,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds double, double* %A, i64 %i.0 - %tmp3 = load double, double* %tmp, align 4 + %tmp = getelementptr inbounds double, ptr %A, i64 %i.0 + %tmp3 = load double, ptr %tmp, align 4 %tmp4 = fadd double %tmp3, %b - store double %tmp4, double* %tmp, align 4 + store double %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 @@ -142,7 +142,7 @@ bb7: ; preds = %bb1 ; A[i] += b; ; } ; -define void @i1(i1* %A, i1 %b) { +define void @i1(ptr %A, i1 %b) { bb: br label %bb1 @@ -152,10 +152,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i1, i1* %A, i64 %i.0 - %tmp3 = load i1, i1* %tmp, align 4 + %tmp = getelementptr inbounds i1, ptr %A, i64 %i.0 + %tmp3 = load i1, ptr %tmp, align 4 %tmp4 = add i1 %tmp3, %b - store i1 %tmp4, i1* %tmp, align 4 + store i1 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 @@ -189,7 +189,7 @@ bb7: ; preds = %bb1 ; A[i] += b; ; } ; -define void @i3(i3* %A, i3 %b) { +define void @i3(ptr %A, i3 %b) { bb: br label %bb1 @@ -199,10 +199,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i3, i3* %A, i64 %i.0 - %tmp3 = load i3, i3* %tmp, align 4 + %tmp = getelementptr inbounds i3, ptr %A, i64 %i.0 + %tmp3 = load i3, ptr %tmp, align 4 %tmp4 = add i3 %tmp3, %b - store i3 %tmp4, i3* %tmp, align 4 + store i3 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 @@ -236,7 +236,7 @@ bb7: ; preds = %bb1 ; A[i] += b; ; } ; -define void @i8(i8* %A, i8 %b) { +define void @i8(ptr %A, i8 %b) { bb: br label %bb1 @@ -246,10 +246,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i8, i8* %A, i64 %i.0 - %tmp3 = load i8, i8* %tmp, align 4 + %tmp = getelementptr inbounds i8, ptr %A, i64 %i.0 + %tmp3 = load i8, ptr %tmp, align 4 %tmp4 = add i8 %tmp3, %b - store i8 %tmp4, i8* %tmp, align 4 + store i8 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 @@ -262,14 +262,12 @@ bb7: ; preds = %bb1 ; IR-LABEL: @i8 -; IR: [[REGA:%.+]] = call i8* @polly_getDevicePtr(i8* %p_dev_array_MemRef_A) -; IR-NEXT: [[REGB:%.+]] = getelementptr [2 x i8*], [2 x i8*]* %polly_launch_0_params, i64 0, i64 0 -; IR-NEXT: store i8* [[REGA:%.+]], i8** %polly_launch_0_param_0 -; IR-NEXT: [[REGC:%.+]] = bitcast i8** %polly_launch_0_param_0 to i8* -; IR-NEXT: store i8* [[REGC]], i8** [[REGB]] -; IR-NEXT: store i8 %b, i8* %polly_launch_0_param_1 -; IR-NEXT: [[REGD:%.+]] = getelementptr [2 x i8*], [2 x i8*]* %polly_launch_0_params, i64 0, i64 1 -; IR-NEXT: store i8* %polly_launch_0_param_1, i8** [[REGD]] +; IR: [[REGA:%.+]] = call ptr @polly_getDevicePtr(ptr %p_dev_array_MemRef_A) +; IR-NEXT: store ptr [[REGA:%.+]], ptr %polly_launch_0_param_0 +; IR-NEXT: store ptr %polly_launch_0_param_0, ptr %polly_launch_0_params +; IR-NEXT: store i8 %b, ptr %polly_launch_0_param_1 +; IR-NEXT: [[REGD:%.+]] = getelementptr [2 x ptr], ptr %polly_launch_0_params, i64 0, i64 1 +; IR-NEXT: store ptr %polly_launch_0_param_1, ptr [[REGD]] ; CODE: Code ; CODE-NEXT: ==== @@ -294,7 +292,7 @@ bb7: ; preds = %bb1 ; A[i] += b; ; } ; -define void @i32(i32* %A, i32 %b) { +define void @i32(ptr %A, i32 %b) { bb: br label %bb1 @@ -304,10 +302,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i32, i32* %A, i64 %i.0 - %tmp3 = load i32, i32* %tmp, align 4 + %tmp = getelementptr inbounds i32, ptr %A, i64 %i.0 + %tmp3 = load i32, ptr %tmp, align 4 %tmp4 = add i32 %tmp3, %b - store i32 %tmp4, i32* %tmp, align 4 + store i32 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 @@ -341,7 +339,7 @@ bb7: ; preds = %bb1 ; A[i] += b; ; } ; -define void @i60(i60* %A, i60 %b) { +define void @i60(ptr %A, i60 %b) { bb: br label %bb1 @@ -351,10 +349,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i60, i60* %A, i64 %i.0 - %tmp3 = load i60, i60* %tmp, align 4 + %tmp = getelementptr inbounds i60, ptr %A, i64 %i.0 + %tmp3 = load i60, ptr %tmp, align 4 %tmp4 = add i60 %tmp3, %b - store i60 %tmp4, i60* %tmp, align 4 + store i60 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 @@ -388,7 +386,7 @@ bb7: ; preds = %bb1 ; A[i] += b; ; } ; -define void @i64(i64* %A, i64 %b) { +define void @i64(ptr %A, i64 %b) { bb: br label %bb1 @@ -398,10 +396,10 @@ bb1: ; preds = %bb5, %bb br i1 %exitcond, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i64, i64* %A, i64 %i.0 - %tmp3 = load i64, i64* %tmp, align 4 + %tmp = getelementptr inbounds i64, ptr %A, i64 %i.0 + %tmp3 = load i64, ptr %tmp, align 4 %tmp4 = add i64 %tmp3, %b - store i64 %tmp4, i64* %tmp, align 4 + store i64 %tmp4, ptr %tmp, align 4 br label %bb5 bb5: ; preds = %bb2 diff --git a/polly/test/GPGPU/scalar-writes-in-scop-requires-abort.ll b/polly/test/GPGPU/scalar-writes-in-scop-requires-abort.ll index 4999cc403321..31110437fdca 100644 --- a/polly/test/GPGPU/scalar-writes-in-scop-requires-abort.ll +++ b/polly/test/GPGPU/scalar-writes-in-scop-requires-abort.ll @@ -39,16 +39,16 @@ target datalayout = "e-m:o-p:32:32-f64:32:64-f80:128-n8:16:32-S128" target triple = "i386-apple-macosx10.12.0" -define void @foo(float* %A, float* %p) { +define void @foo(ptr %A, ptr %p) { entry: br label %loop loop: %indvar = phi i64 [0, %entry], [%indvar.next, %loop] %indvar.next = add i64 %indvar, 1 - %invariant = load float, float* %p - %ptr = getelementptr float, float* %A, i64 %indvar - store float 42.0, float* %ptr + %invariant = load float, ptr %p + %ptr = getelementptr float, ptr %A, i64 %indvar + store float 42.0, ptr %ptr %cmp = icmp sle i64 %indvar, 1024 br i1 %cmp, label %loop, label %loop2 @@ -56,7 +56,7 @@ loop2: %indvar2 = phi i64 [0, %loop], [%indvar2.next, %loop2] %indvar2f = phi float [%invariant, %loop], [%indvar2f, %loop2] %indvar2.next = add i64 %indvar2, 1 - store float %indvar2f, float* %A + store float %indvar2f, ptr %A %cmp2 = icmp sle i64 %indvar2, 1024 br i1 %cmp2, label %loop2, label %end diff --git a/polly/test/GPGPU/scheduler-timeout.ll b/polly/test/GPGPU/scheduler-timeout.ll index bee4e21c0c40..4a49c53d66c7 100644 --- a/polly/test/GPGPU/scheduler-timeout.ll +++ b/polly/test/GPGPU/scheduler-timeout.ll @@ -69,10 +69,10 @@ target triple = "x86_64-unknown-linux-gnu" ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.start(i64, i8* nocapture) #0 +declare void @llvm.lifetime.start(i64, ptr nocapture) #0 ; Function Attrs: nounwind uwtable -define internal void @kernel_2mm(i32 %ni, i32 %nj, i32 %nk, i32 %nl, float %alpha, float %beta, [4096 x float]* %tmp, [4096 x float]* %A, [4096 x float]* %B, [4096 x float]* %C, [4096 x float]* %D) #1 { +define internal void @kernel_2mm(i32 %ni, i32 %nj, i32 %nk, i32 %nl, float %alpha, float %beta, ptr %tmp, ptr %A, ptr %B, ptr %C, ptr %D) #1 { entry: br label %entry.split @@ -88,22 +88,22 @@ for.cond31.preheader: ; preds = %for.inc28 for.body6: ; preds = %for.cond4.preheader, %for.inc25 %indvars.iv16 = phi i64 [ 0, %for.cond4.preheader ], [ %indvars.iv.next17, %for.inc25 ] - %arrayidx8 = getelementptr inbounds [4096 x float], [4096 x float]* %tmp, i64 %indvars.iv19, i64 %indvars.iv16 - store float 0.000000e+00, float* %arrayidx8, align 4, !tbaa !1 + %arrayidx8 = getelementptr inbounds [4096 x float], ptr %tmp, i64 %indvars.iv19, i64 %indvars.iv16 + store float 0.000000e+00, ptr %arrayidx8, align 4, !tbaa !1 br label %for.body11 for.body11: ; preds = %for.body6, %for.body11 %indvars.iv13 = phi i64 [ 0, %for.body6 ], [ %indvars.iv.next14, %for.body11 ] - %arrayidx15 = getelementptr inbounds [4096 x float], [4096 x float]* %A, i64 %indvars.iv19, i64 %indvars.iv13 - %tmp22 = load float, float* %arrayidx15, align 4, !tbaa !1 + %arrayidx15 = getelementptr inbounds [4096 x float], ptr %A, i64 %indvars.iv19, i64 %indvars.iv13 + %tmp22 = load float, ptr %arrayidx15, align 4, !tbaa !1 %mul = fmul float %tmp22, %alpha - %arrayidx19 = getelementptr inbounds [4096 x float], [4096 x float]* %B, i64 %indvars.iv13, i64 %indvars.iv16 - %tmp23 = load float, float* %arrayidx19, align 4, !tbaa !1 + %arrayidx19 = getelementptr inbounds [4096 x float], ptr %B, i64 %indvars.iv13, i64 %indvars.iv16 + %tmp23 = load float, ptr %arrayidx19, align 4, !tbaa !1 %mul20 = fmul float %mul, %tmp23 - %arrayidx24 = getelementptr inbounds [4096 x float], [4096 x float]* %tmp, i64 %indvars.iv19, i64 %indvars.iv16 - %tmp24 = load float, float* %arrayidx24, align 4, !tbaa !1 + %arrayidx24 = getelementptr inbounds [4096 x float], ptr %tmp, i64 %indvars.iv19, i64 %indvars.iv16 + %tmp24 = load float, ptr %arrayidx24, align 4, !tbaa !1 %add = fadd float %tmp24, %mul20 - store float %add, float* %arrayidx24, align 4, !tbaa !1 + store float %add, ptr %arrayidx24, align 4, !tbaa !1 %indvars.iv.next14 = add nuw nsw i64 %indvars.iv13, 1 %exitcond15 = icmp ne i64 %indvars.iv.next14, 4096 br i1 %exitcond15, label %for.body11, label %for.inc25 @@ -124,23 +124,23 @@ for.cond34.preheader: ; preds = %for.cond31.preheade for.body36: ; preds = %for.cond34.preheader, %for.inc62 %indvars.iv7 = phi i64 [ 0, %for.cond34.preheader ], [ %indvars.iv.next8, %for.inc62 ] - %arrayidx40 = getelementptr inbounds [4096 x float], [4096 x float]* %D, i64 %indvars.iv10, i64 %indvars.iv7 - %tmp25 = load float, float* %arrayidx40, align 4, !tbaa !1 + %arrayidx40 = getelementptr inbounds [4096 x float], ptr %D, i64 %indvars.iv10, i64 %indvars.iv7 + %tmp25 = load float, ptr %arrayidx40, align 4, !tbaa !1 %mul41 = fmul float %tmp25, %beta - store float %mul41, float* %arrayidx40, align 4, !tbaa !1 + store float %mul41, ptr %arrayidx40, align 4, !tbaa !1 br label %for.body44 for.body44: ; preds = %for.body36, %for.body44 %indvars.iv = phi i64 [ 0, %for.body36 ], [ %indvars.iv.next, %for.body44 ] - %arrayidx48 = getelementptr inbounds [4096 x float], [4096 x float]* %tmp, i64 %indvars.iv10, i64 %indvars.iv - %tmp26 = load float, float* %arrayidx48, align 4, !tbaa !1 - %arrayidx52 = getelementptr inbounds [4096 x float], [4096 x float]* %C, i64 %indvars.iv, i64 %indvars.iv7 - %tmp27 = load float, float* %arrayidx52, align 4, !tbaa !1 + %arrayidx48 = getelementptr inbounds [4096 x float], ptr %tmp, i64 %indvars.iv10, i64 %indvars.iv + %tmp26 = load float, ptr %arrayidx48, align 4, !tbaa !1 + %arrayidx52 = getelementptr inbounds [4096 x float], ptr %C, i64 %indvars.iv, i64 %indvars.iv7 + %tmp27 = load float, ptr %arrayidx52, align 4, !tbaa !1 %mul53 = fmul float %tmp26, %tmp27 - %arrayidx57 = getelementptr inbounds [4096 x float], [4096 x float]* %D, i64 %indvars.iv10, i64 %indvars.iv7 - %tmp28 = load float, float* %arrayidx57, align 4, !tbaa !1 + %arrayidx57 = getelementptr inbounds [4096 x float], ptr %D, i64 %indvars.iv10, i64 %indvars.iv7 + %tmp28 = load float, ptr %arrayidx57, align 4, !tbaa !1 %add58 = fadd float %tmp28, %mul53 - store float %add58, float* %arrayidx57, align 4, !tbaa !1 + store float %add58, ptr %arrayidx57, align 4, !tbaa !1 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 4096 br i1 %exitcond, label %for.body44, label %for.inc62 @@ -160,7 +160,7 @@ for.end67: ; preds = %for.inc65 } ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.end(i64, i8* nocapture) #0 +declare void @llvm.lifetime.end(i64, ptr nocapture) #0 attributes #0 = { argmemonly nounwind } attributes #1 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" } diff --git a/polly/test/GPGPU/shared-memory-scalar.ll b/polly/test/GPGPU/shared-memory-scalar.ll index f28be873c6df..cd2b1705a388 100644 --- a/polly/test/GPGPU/shared-memory-scalar.ll +++ b/polly/test/GPGPU/shared-memory-scalar.ll @@ -25,7 +25,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @add(float* %A, float %alpha) { +define void @add(ptr %A, float %alpha) { bb: br label %bb2 @@ -43,10 +43,10 @@ bb4: ; preds = %bb8, %bb3 br i1 %exitcond, label %bb5, label %bb10 bb5: ; preds = %bb4 - %tmp = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp6 = load float, float* %tmp, align 4 + %tmp = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp6 = load float, ptr %tmp, align 4 %tmp7 = fadd float %tmp6, %alpha - store float %tmp7, float* %tmp, align 4 + store float %tmp7, ptr %tmp, align 4 br label %bb8 bb8: ; preds = %bb5 diff --git a/polly/test/GPGPU/simple-managed-memory-rewrite.ll b/polly/test/GPGPU/simple-managed-memory-rewrite.ll index 54969221ff45..d8c5b320e2b0 100644 --- a/polly/test/GPGPU/simple-managed-memory-rewrite.ll +++ b/polly/test/GPGPU/simple-managed-memory-rewrite.ll @@ -12,15 +12,14 @@ ; SCOP: i32 MemRef_A[*]; ; Check that we generate a constructor call for @A.toptr -; HOST-IR: @llvm.global_ctors = appending global [1 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 0, void ()* {{.*}}, i8* bitcast (i32** @A.toptr to i8*) }] +; HOST-IR: @llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 0, ptr {{.*}}, ptr @A.toptr }] ; Check that we generate a constructor ; 4 bytes * 100 = 400 ; HOST-IR: define void {{.*}}constructor() { ; HOST-IR-NEXT: entry: -; HOST-IR-NEXT: %mem.raw = call i8* @polly_mallocManaged(i64 400) -; HOST-IR-NEXT: %mem.typed = bitcast i8* %mem.raw to i32* -; HOST-IR-NEXT: store i32* %mem.typed, i32** @A.toptr +; HOST-IR-NEXT: %mem.raw = call ptr @polly_mallocManaged(i64 400) +; HOST-IR-NEXT: store ptr %mem.raw, ptr @A.toptr ; HOST-IR-NEXT: ret void ; HOST-IR-NEXT: } @@ -41,8 +40,8 @@ entry.split: ; preds = %entry for.body: ; preds = %entry.split, %for.body %indvars.iv1 = phi i64 [ 0, %entry.split ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* @A, i64 0, i64 %indvars.iv1 - store i32 42, i32* %arrayidx, align 4, !tbaa !3 + %arrayidx = getelementptr inbounds [100 x i32], ptr @A, i64 0, i64 %indvars.iv1 + store i32 42, ptr %arrayidx, align 4, !tbaa !3 %indvars.iv.next = add nuw nsw i64 %indvars.iv1, 1 %exitcond = icmp eq i64 %indvars.iv.next, 100 br i1 %exitcond, label %for.end, label %for.body @@ -52,11 +51,11 @@ for.end: ; preds = %for.body } ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #0 +declare void @llvm.lifetime.start.p0(i64, ptr nocapture) #0 ; Function Attrs: argmemonly nounwind -declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #0 +declare void @llvm.lifetime.end.p0(i64, ptr nocapture) #0 attributes #0 = { argmemonly nounwind } diff --git a/polly/test/GPGPU/size-cast.ll b/polly/test/GPGPU/size-cast.ll index d4f928ee9c1c..5e2c85de4251 100644 --- a/polly/test/GPGPU/size-cast.ll +++ b/polly/test/GPGPU/size-cast.ll @@ -27,7 +27,7 @@ ; CODE-NEXT: if (arg >= 32 * b0 + t0 + 1048576 * c0 + 1) ; CODE-NEXT: Stmt_bb6(0, 32 * b0 + t0 + 1048576 * c0); -; IR-LABEL: call i8* @polly_initContextCUDA() +; IR-LABEL: call ptr @polly_initContextCUDA() ; IR: sext i32 %arg to i64 ; IR-NEXT: mul i64 ; IR-NEXT: @polly_allocateMemoryForDevice @@ -35,7 +35,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @hoge(i32 %arg, i32 %arg1, [1000 x double]* %arg2, double* %arg3) { +define void @hoge(i32 %arg, i32 %arg1, ptr %arg2, ptr %arg3) { bb: br label %bb4 @@ -47,10 +47,10 @@ bb5: ; preds = %bb13 bb6: ; preds = %bb6, %bb4 %tmp = phi i64 [ 0, %bb4 ], [ %tmp10, %bb6 ] - %tmp7 = getelementptr inbounds double, double* %arg3, i64 %tmp - %tmp8 = load double, double* %tmp7, align 8 - %tmp9 = getelementptr inbounds [1000 x double], [1000 x double]* %arg2, i64 0, i64 %tmp - store double %tmp8, double* %tmp9, align 8 + %tmp7 = getelementptr inbounds double, ptr %arg3, i64 %tmp + %tmp8 = load double, ptr %tmp7, align 8 + %tmp9 = getelementptr inbounds [1000 x double], ptr %arg2, i64 0, i64 %tmp + store double %tmp8, ptr %tmp9, align 8 %tmp10 = add nuw nsw i64 %tmp, 1 %tmp11 = zext i32 %arg to i64 %tmp12 = icmp ne i64 %tmp10, %tmp11 diff --git a/polly/test/GPGPU/spir-typesize.ll b/polly/test/GPGPU/spir-typesize.ll index 2e9459134555..fce17c54e6e9 100644 --- a/polly/test/GPGPU/spir-typesize.ll +++ b/polly/test/GPGPU/spir-typesize.ll @@ -15,7 +15,7 @@ ; I32: target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-i128:128:128-f32:32:32-f64:64:64-v16:16:16-v24:32:32-v32:32:32-v48:64:64-v64:64:64-v96:128:128-v128:128:128-v192:256:256-v256:256:256-v512:512:512-v1024:1024:1024" ; I32-NEXT: target triple = "spir-unknown-unknown" -; I32-LABEL: define spir_kernel void @FUNC_double_parallel_loop_SCOP_0_KERNEL_0(i8 addrspace(1)* %MemRef_A) #0 !kernel_arg_addr_space !0 !kernel_arg_name !1 !kernel_arg_access_qual !1 !kernel_arg_type !1 !kernel_arg_type_qual !1 !kernel_arg_base_type !1 { +; I32-LABEL: define spir_kernel void @FUNC_double_parallel_loop_SCOP_0_KERNEL_0(ptr addrspace(1) %MemRef_A) #0 !kernel_arg_addr_space !0 !kernel_arg_name !1 !kernel_arg_access_qual !1 !kernel_arg_type !1 !kernel_arg_type_qual !1 !kernel_arg_base_type !1 { ; I32-NEXT: entry: ; I32-NEXT: %0 = call i32 @__gen_ocl_get_group_id0() ; I32-NEXT: %__gen_ocl_get_group_id0 = zext i32 %0 to i64 @@ -30,7 +30,7 @@ ; I64: target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-i128:128:128-f32:32:32-f64:64:64-v16:16:16-v24:32:32-v32:32:32-v48:64:64-v64:64:64-v96:128:128-v128:128:128-v192:256:256-v256:256:256-v512:512:512-v1024:1024:1024" ; I64-next: target triple = "spir64-unknown-unknown" -; I64-LABEL: define spir_kernel void @FUNC_double_parallel_loop_SCOP_0_KERNEL_0(i8 addrspace(1)* %MemRef_A) #0 !kernel_arg_addr_space !0 !kernel_arg_name !1 !kernel_arg_access_qual !1 !kernel_arg_type !1 !kernel_arg_type_qual !1 !kernel_arg_base_type !1 { +; I64-LABEL: define spir_kernel void @FUNC_double_parallel_loop_SCOP_0_KERNEL_0(ptr addrspace(1) %MemRef_A) #0 !kernel_arg_addr_space !0 !kernel_arg_name !1 !kernel_arg_access_qual !1 !kernel_arg_type !1 !kernel_arg_type_qual !1 !kernel_arg_base_type !1 { ; I64-NEXT: entry: ; I64-NEXT: %0 = call i64 @__gen_ocl_get_group_id0() ; I64-NEXT: %1 = call i64 @__gen_ocl_get_group_id1() @@ -48,7 +48,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @double_parallel_loop([1024 x float]* %A) { +define void @double_parallel_loop(ptr %A) { bb: br label %bb2 @@ -68,10 +68,10 @@ bb4: ; preds = %bb10, %bb3 bb5: ; preds = %bb4 %tmp = mul nuw nsw i64 %i.0, %j.0 %tmp6 = sitofp i64 %tmp to float - %tmp7 = getelementptr inbounds [1024 x float], [1024 x float]* %A, i64 %i.0, i64 %j.0 - %tmp8 = load float, float* %tmp7, align 4 + %tmp7 = getelementptr inbounds [1024 x float], ptr %A, i64 %i.0, i64 %j.0 + %tmp8 = load float, ptr %tmp7, align 4 %tmp9 = fadd float %tmp8, %tmp6 - store float %tmp9, float* %tmp7, align 4 + store float %tmp9, ptr %tmp7, align 4 br label %bb10 bb10: ; preds = %bb5 diff --git a/polly/test/GPGPU/unknown-fn-call-not-copied-into-kernel.ll b/polly/test/GPGPU/unknown-fn-call-not-copied-into-kernel.ll index c06baf14d15e..6fd14cbfbcd1 100644 --- a/polly/test/GPGPU/unknown-fn-call-not-copied-into-kernel.ll +++ b/polly/test/GPGPU/unknown-fn-call-not-copied-into-kernel.ll @@ -29,7 +29,7 @@ target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-apple-macosx10.11.0" -define void @f([1000 x float]* %A, i32 %n, [1000 x float]* %B) { +define void @f(ptr %A, i32 %n, ptr %B) { entry: br label %entry.split @@ -50,13 +50,13 @@ for.body3.lr.ph: ; preds = %for.cond1.preheader for.body3: ; preds = %for.body3.lr.ph, %for.body3 %indvars.iv = phi i64 [ 0, %for.body3.lr.ph ], [ %indvars.iv.next, %for.body3 ] - %arrayidx5 = getelementptr inbounds [1000 x float], [1000 x float]* %A, i64 %indvars.iv5, i64 %indvars.iv - %0 = load float, float* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds [1000 x float], ptr %A, i64 %indvars.iv5, i64 %indvars.iv + %0 = load float, ptr %arrayidx5, align 4 %conv = fpext float %0 to double %1 = tail call double @extern.fn(double %conv) %conv6 = fptrunc double %1 to float - %arrayidx10 = getelementptr inbounds [1000 x float], [1000 x float]* %B, i64 %indvars.iv5, i64 %indvars.iv - store float %conv6, float* %arrayidx10, align 4 + %arrayidx10 = getelementptr inbounds [1000 x float], ptr %B, i64 %indvars.iv5, i64 %indvars.iv + store float %conv6, ptr %arrayidx10, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %wide.trip.count = zext i32 %n to i64 %exitcond = icmp ne i64 %indvars.iv.next, %wide.trip.count diff --git a/polly/test/GPGPU/untouched-arrays.ll b/polly/test/GPGPU/untouched-arrays.ll index 82a83b44c33d..5c7e0c7b543b 100644 --- a/polly/test/GPGPU/untouched-arrays.ll +++ b/polly/test/GPGPU/untouched-arrays.ll @@ -109,43 +109,42 @@ bb25: ; preds = %bb24 br i1 undef, label %bb19, label %bb26 bb26: ; preds = %bb56, %bb25 - %tmp = phi [9 x [152 x i32]]* [ undef, %bb56 ], [ bitcast (i32* getelementptr inbounds ([9 x [152 x i32]], [9 x [152 x i32]]* @global.1, i64 0, i64 0, i64 32) to [9 x [152 x i32]]*), %bb25 ] + %tmp = phi ptr [ undef, %bb56 ], [ getelementptr inbounds ([9 x [152 x i32]], ptr @global.1, i64 0, i64 0, i64 32), %bb25 ] br label %bb27 bb27: ; preds = %bb27, %bb26 br i1 undef, label %bb27, label %bb28 bb28: ; preds = %bb27 - %tmp29 = bitcast [9 x [152 x i32]]* %tmp to i32* br label %bb30 bb30: ; preds = %bb38, %bb28 %tmp31 = phi i32 [ 3, %bb28 ], [ %tmp40, %bb38 ] - %tmp32 = phi i32* [ %tmp29, %bb28 ], [ %tmp39, %bb38 ] + %tmp32 = phi ptr [ %tmp, %bb28 ], [ %tmp39, %bb38 ] br label %bb33 bb33: ; preds = %bb33, %bb30 %tmp34 = phi i32 [ 0, %bb30 ], [ %tmp37, %bb33 ] - %tmp35 = phi i32* [ %tmp32, %bb30 ], [ undef, %bb33 ] - %tmp36 = getelementptr inbounds i32, i32* %tmp35, i64 1 - store i32 undef, i32* %tmp36, align 4, !tbaa !1 + %tmp35 = phi ptr [ %tmp32, %bb30 ], [ undef, %bb33 ] + %tmp36 = getelementptr inbounds i32, ptr %tmp35, i64 1 + store i32 undef, ptr %tmp36, align 4, !tbaa !1 %tmp37 = add nuw nsw i32 %tmp34, 1 br i1 false, label %bb33, label %bb38 bb38: ; preds = %bb33 - %tmp39 = getelementptr i32, i32* %tmp32, i64 12 + %tmp39 = getelementptr i32, ptr %tmp32, i64 12 %tmp40 = add nuw nsw i32 %tmp31, 1 %tmp41 = icmp ne i32 %tmp40, 13 br i1 %tmp41, label %bb30, label %bb42 bb42: ; preds = %bb38 - %tmp43 = getelementptr inbounds [9 x %struct.hoge], [9 x %struct.hoge]* @global, i64 0, i64 0, i32 3, i64 0 + %tmp43 = getelementptr inbounds [9 x %struct.hoge], ptr @global, i64 0, i64 0, i32 3, i64 0 br label %bb44 bb44: ; preds = %bb51, %bb42 %tmp45 = phi i32 [ 0, %bb42 ], [ %tmp52, %bb51 ] - %tmp46 = phi i16* [ %tmp43, %bb42 ], [ undef, %bb51 ] - %tmp47 = load i16, i16* %tmp46, align 2, !tbaa !5 + %tmp46 = phi ptr [ %tmp43, %bb42 ], [ undef, %bb51 ] + %tmp47 = load i16, ptr %tmp46, align 2, !tbaa !5 br label %bb48 bb48: ; preds = %bb48, %bb44 diff --git a/polly/test/IstAstInfo/OpenMP/multiple_loops_outer_parallel.ll b/polly/test/IstAstInfo/OpenMP/multiple_loops_outer_parallel.ll index 7f8017b630eb..00f18aebbcd5 100644 --- a/polly/test/IstAstInfo/OpenMP/multiple_loops_outer_parallel.ll +++ b/polly/test/IstAstInfo/OpenMP/multiple_loops_outer_parallel.ll @@ -14,7 +14,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A) { +define void @jd(ptr %A) { entry: br label %for.cond @@ -24,8 +24,8 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond3, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv1 - store i32 1, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv1 + store i32 1, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -41,11 +41,11 @@ for.cond2: ; preds = %for.inc9, %for.end br i1 %exitcond, label %for.body4, label %for.end11 for.body4: ; preds = %for.cond2 - %arrayidx6 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp = load i32, i32* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp = load i32, ptr %arrayidx6, align 4 %mul = shl nsw i32 %tmp, 1 - %arrayidx8 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %mul, i32* %arrayidx8, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %mul, ptr %arrayidx8, align 4 br label %for.inc9 for.inc9: ; preds = %for.body4 diff --git a/polly/test/IstAstInfo/OpenMP/nested_loop_both_parallel.ll b/polly/test/IstAstInfo/OpenMP/nested_loop_both_parallel.ll index 0878c2beff7a..bcb35cb4b07c 100644 --- a/polly/test/IstAstInfo/OpenMP/nested_loop_both_parallel.ll +++ b/polly/test/IstAstInfo/OpenMP/nested_loop_both_parallel.ll @@ -23,8 +23,8 @@ loop.j: br i1 %exitcond.j, label %loop.body, label %loop.i.backedge loop.body: - %scevgep = getelementptr [1024 x [1024 x i32] ], [1024 x [1024 x i32] ]* @A, i64 0, i64 %j, i64 %i - store i32 1, i32* %scevgep + %scevgep = getelementptr [1024 x [1024 x i32] ], ptr @A, i64 0, i64 %j, i64 %i + store i32 1, ptr %scevgep br label %loop.j.backedge loop.j.backedge: diff --git a/polly/test/IstAstInfo/OpenMP/nested_loop_both_parallel_parametric.ll b/polly/test/IstAstInfo/OpenMP/nested_loop_both_parallel_parametric.ll index 8f347911f6c1..e2ff5d5756b1 100644 --- a/polly/test/IstAstInfo/OpenMP/nested_loop_both_parallel_parametric.ll +++ b/polly/test/IstAstInfo/OpenMP/nested_loop_both_parallel_parametric.ll @@ -24,8 +24,8 @@ loop.j: br i1 %exitcond.j, label %loop.body, label %loop.i.backedge loop.body: - %scevgep = getelementptr [1024 x [1024 x i32] ], [1024 x [1024 x i32] ]* @A, i64 0, i64 %j, i64 %i - store i32 1, i32* %scevgep + %scevgep = getelementptr [1024 x [1024 x i32] ], ptr @A, i64 0, i64 %j, i64 %i + store i32 1, ptr %scevgep br label %loop.j.backedge loop.j.backedge: diff --git a/polly/test/IstAstInfo/OpenMP/nested_loop_inner_parallel.ll b/polly/test/IstAstInfo/OpenMP/nested_loop_inner_parallel.ll index edac8c7d3fc6..17ef7fe6f251 100644 --- a/polly/test/IstAstInfo/OpenMP/nested_loop_inner_parallel.ll +++ b/polly/test/IstAstInfo/OpenMP/nested_loop_inner_parallel.ll @@ -23,8 +23,8 @@ loop.j: br i1 %exitcond.j, label %loop.body, label %loop.i.backedge loop.body: - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %j - store i32 1, i32* %scevgep + %scevgep = getelementptr [1024 x i32], ptr @A, i64 0, i64 %j + store i32 1, ptr %scevgep br label %loop.j.backedge loop.j.backedge: diff --git a/polly/test/IstAstInfo/OpenMP/nested_loop_outer_parallel.ll b/polly/test/IstAstInfo/OpenMP/nested_loop_outer_parallel.ll index 55dc5e434bc7..bc381e2c87fd 100644 --- a/polly/test/IstAstInfo/OpenMP/nested_loop_outer_parallel.ll +++ b/polly/test/IstAstInfo/OpenMP/nested_loop_outer_parallel.ll @@ -23,8 +23,8 @@ loop.j: br i1 %exitcond.j, label %loop.body, label %loop.i.backedge loop.body: - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %i - store i32 1, i32* %scevgep + %scevgep = getelementptr [1024 x i32], ptr @A, i64 0, i64 %i + store i32 1, ptr %scevgep br label %loop.j.backedge loop.j.backedge: diff --git a/polly/test/IstAstInfo/OpenMP/single_loop_param_non_parallel.ll b/polly/test/IstAstInfo/OpenMP/single_loop_param_non_parallel.ll index 7ccdace5fe03..ee02dafeedeb 100644 --- a/polly/test/IstAstInfo/OpenMP/single_loop_param_non_parallel.ll +++ b/polly/test/IstAstInfo/OpenMP/single_loop_param_non_parallel.ll @@ -13,12 +13,11 @@ start: loop.header: %i = phi i64 [ 0, %start ], [ %i.next, %loop.backedge ] - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 0 %exitcond = icmp ne i64 %i, %n br i1 %exitcond, label %loop.body, label %ret loop.body: - store i32 1, i32* %scevgep + store i32 1, ptr @A br label %loop.backedge loop.backedge: diff --git a/polly/test/IstAstInfo/OpenMP/single_loop_param_parallel.ll b/polly/test/IstAstInfo/OpenMP/single_loop_param_parallel.ll index d1b41b3204f2..a5831302471e 100644 --- a/polly/test/IstAstInfo/OpenMP/single_loop_param_parallel.ll +++ b/polly/test/IstAstInfo/OpenMP/single_loop_param_parallel.ll @@ -13,12 +13,12 @@ start: loop.header: %i = phi i64 [ 0, %start ], [ %i.next, %loop.backedge ] - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %i + %scevgep = getelementptr [1024 x i32], ptr @A, i64 0, i64 %i %exitcond = icmp ne i64 %i, %n br i1 %exitcond, label %loop.body, label %ret loop.body: - store i32 1, i32* %scevgep + store i32 1, ptr %scevgep br label %loop.backedge loop.backedge: diff --git a/polly/test/IstAstInfo/OpenMP/single_loop_param_parallel_computeout.ll b/polly/test/IstAstInfo/OpenMP/single_loop_param_parallel_computeout.ll index e0232dc22d29..31a906ed403c 100644 --- a/polly/test/IstAstInfo/OpenMP/single_loop_param_parallel_computeout.ll +++ b/polly/test/IstAstInfo/OpenMP/single_loop_param_parallel_computeout.ll @@ -13,12 +13,12 @@ start: loop.header: %i = phi i64 [ 0, %start ], [ %i.next, %loop.backedge ] - %scevgep = getelementptr [1024 x i32], [1024 x i32]* @A, i64 0, i64 %i + %scevgep = getelementptr [1024 x i32], ptr @A, i64 0, i64 %i %exitcond = icmp ne i64 %i, %n br i1 %exitcond, label %loop.body, label %ret loop.body: - store i32 1, i32* %scevgep + store i32 1, ptr %scevgep br label %loop.backedge loop.backedge: diff --git a/polly/test/IstAstInfo/alias_checks_with_empty_context.ll b/polly/test/IstAstInfo/alias_checks_with_empty_context.ll index 8189761b3b18..9b95cd5b4bbd 100644 --- a/polly/test/IstAstInfo/alias_checks_with_empty_context.ll +++ b/polly/test/IstAstInfo/alias_checks_with_empty_context.ll @@ -14,7 +14,7 @@ bb: bb1: ; preds = %bb19, %bb %tmp2 = phi i32 [ undef, %bb ], [ %tmp5, %bb19 ] - %tmp3 = phi i32* [ @global, %bb ], [ %tmp20, %bb19 ] + %tmp3 = phi ptr [ @global, %bb ], [ %tmp20, %bb19 ] %tmp4 = icmp ugt i32 %tmp2, 5 %tmp5 = select i1 %tmp4, i32 %tmp2, i32 5 br label %bb6 @@ -24,12 +24,12 @@ bb6: ; preds = %bb1 bb7: ; preds = %bb10, %bb6 %tmp8 = phi i8 [ 7, %bb6 ], [ %tmp11, %bb10 ] - store i32 2, i32* %tmp3, align 4 - %tmp9 = load i8, i8* %tmp, align 8 + store i32 2, ptr %tmp3, align 4 + %tmp9 = load i8, ptr %tmp, align 8 br label %bb10 bb10: ; preds = %bb7 - store i32 undef, i32* @global.1, align 4 + store i32 undef, ptr @global.1, align 4 %tmp11 = add nuw nsw i8 %tmp8, 1 %tmp12 = icmp eq i8 %tmp11, 72 br i1 %tmp12, label %bb13, label %bb7 @@ -39,7 +39,7 @@ bb13: ; preds = %bb10 br i1 %tmp14, label %bb15, label %bb16 bb15: ; preds = %bb13 - store i8 0, i8* %tmp, align 8 + store i8 0, ptr %tmp, align 8 br label %bb16 bb16: ; preds = %bb15, %bb13 @@ -52,7 +52,7 @@ bb18: ; preds = %bb17 br label %bb19 bb19: ; preds = %bb18, %bb17 - %tmp20 = phi i32* [ %tmp3, %bb17 ], [ bitcast (void ()* @hoge to i32*), %bb18 ] + %tmp20 = phi ptr [ %tmp3, %bb17 ], [ @hoge, %bb18 ] br label %bb1 } diff --git a/polly/test/IstAstInfo/alias_simple_1.ll b/polly/test/IstAstInfo/alias_simple_1.ll index d1557e37baab..83d470c2d19b 100644 --- a/polly/test/IstAstInfo/alias_simple_1.ll +++ b/polly/test/IstAstInfo/alias_simple_1.ll @@ -22,7 +22,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @A = common global [1024 x i32] zeroinitializer, align 16 -define void @jd(float* nocapture readonly %B, i32 %N) { +define void @jd(ptr nocapture readonly %B, i32 %N) { entry: %cmp6 = icmp sgt i32 %N, 0 br i1 %cmp6, label %for.body.preheader, label %for.end @@ -32,11 +32,11 @@ for.body.preheader: ; preds = %entry for.body: ; preds = %for.body.preheader, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %for.body.preheader ] - %arrayidx = getelementptr inbounds float, float* %B, i64 %indvars.iv - %tmp = load float, float* %arrayidx, align 4, !tbaa !1 + %arrayidx = getelementptr inbounds float, ptr %B, i64 %indvars.iv + %tmp = load float, ptr %arrayidx, align 4, !tbaa !1 %conv = fptosi float %tmp to i32 - %arrayidx2 = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv - store i32 %conv, i32* %arrayidx2, align 4, !tbaa !5 + %arrayidx2 = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv + store i32 %conv, ptr %arrayidx2, align 4, !tbaa !5 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv1 = trunc i64 %indvars.iv.next to i32 %exitcond2 = icmp eq i32 %lftr.wideiv1, %N diff --git a/polly/test/IstAstInfo/alias_simple_2.ll b/polly/test/IstAstInfo/alias_simple_2.ll index 7d6d65c6f22c..bbf528f93b47 100644 --- a/polly/test/IstAstInfo/alias_simple_2.ll +++ b/polly/test/IstAstInfo/alias_simple_2.ll @@ -35,10 +35,10 @@ for.body.preheader: ; preds = %entry for.body: ; preds = %for.body.preheader, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %for.body.preheader ] - %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @B, i64 0, i64 %indvars.iv - %tmp = load i32, i32* %arrayidx, align 4, !tbaa !5 - %arrayidx2 = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv - store i32 %tmp, i32* %arrayidx2, align 4, !tbaa !5 + %arrayidx = getelementptr inbounds [1024 x i32], ptr @B, i64 0, i64 %indvars.iv + %tmp = load i32, ptr %arrayidx, align 4, !tbaa !5 + %arrayidx2 = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv + store i32 %tmp, ptr %arrayidx2, align 4, !tbaa !5 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv1 = trunc i64 %indvars.iv.next to i32 %exitcond2 = icmp eq i32 %lftr.wideiv1, %N diff --git a/polly/test/IstAstInfo/alias_simple_3.ll b/polly/test/IstAstInfo/alias_simple_3.ll index f2aee41c615a..9067521323ab 100644 --- a/polly/test/IstAstInfo/alias_simple_3.ll +++ b/polly/test/IstAstInfo/alias_simple_3.ll @@ -33,11 +33,11 @@ for.body.preheader: ; preds = %entry for.body: ; preds = %for.body.preheader, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %for.body.preheader ] - %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @B, i64 0, i64 %indvars.iv - %tmp = load float, float* %arrayidx, align 4, !tbaa !1 + %arrayidx = getelementptr inbounds [1024 x float], ptr @B, i64 0, i64 %indvars.iv + %tmp = load float, ptr %arrayidx, align 4, !tbaa !1 %conv = fptosi float %tmp to i32 - %arrayidx2 = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv - store i32 %conv, i32* %arrayidx2, align 4, !tbaa !5 + %arrayidx2 = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv + store i32 %conv, ptr %arrayidx2, align 4, !tbaa !5 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv1 = trunc i64 %indvars.iv.next to i32 %exitcond2 = icmp eq i32 %lftr.wideiv1, %N diff --git a/polly/test/IstAstInfo/aliasing_arrays_with_identical_base.ll b/polly/test/IstAstInfo/aliasing_arrays_with_identical_base.ll index 1b6674eed24c..0cabd20168ba 100644 --- a/polly/test/IstAstInfo/aliasing_arrays_with_identical_base.ll +++ b/polly/test/IstAstInfo/aliasing_arrays_with_identical_base.ll @@ -7,7 +7,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @foo(float** nocapture readonly %X) { +define void @foo(ptr nocapture readonly %X) { entry: br label %for.body @@ -17,16 +17,16 @@ for.cond.cleanup: for.body: %i.011 = phi i64 [ 0, %entry ], [ %inc, %for.body ] %conv = sitofp i64 %i.011 to float - %BaseA = load float*, float** %X, align 8 - %BaseB = load float*, float** %X, align 8 - %arrayidx = getelementptr inbounds float, float* %BaseA, i64 %i.011 - %A = load float, float* %arrayidx, align 4 + %BaseA = load ptr, ptr %X, align 8 + %BaseB = load ptr, ptr %X, align 8 + %arrayidx = getelementptr inbounds float, ptr %BaseA, i64 %i.011 + %A = load float, ptr %arrayidx, align 4 %add = fadd float %A, %conv - store float %add, float* %arrayidx, align 4 - %arrayidxB = getelementptr inbounds float, float* %BaseB, i64 %i.011 - %B = load float, float* %arrayidxB, align 4 + store float %add, ptr %arrayidx, align 4 + %arrayidxB = getelementptr inbounds float, ptr %BaseB, i64 %i.011 + %B = load float, ptr %arrayidxB, align 4 %addB = fadd float %B, %conv - store float %addB, float* %arrayidxB, align 4 + store float %addB, ptr %arrayidxB, align 4 %inc = add nuw nsw i64 %i.011, 1 %exitcond = icmp eq i64 %inc, 1024 br i1 %exitcond, label %for.cond.cleanup, label %for.body diff --git a/polly/test/IstAstInfo/aliasing_multiple_alias_groups.ll b/polly/test/IstAstInfo/aliasing_multiple_alias_groups.ll index 483433200bcd..b824c211fd31 100644 --- a/polly/test/IstAstInfo/aliasing_multiple_alias_groups.ll +++ b/polly/test/IstAstInfo/aliasing_multiple_alias_groups.ll @@ -23,20 +23,20 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* nocapture %Int0, i32* nocapture readonly %Int1, float* nocapture %Float0, float* nocapture readonly %Float1) { +define void @jd(ptr nocapture %Int0, ptr nocapture readonly %Int1, ptr nocapture %Float0, ptr nocapture readonly %Float1) { entry: br label %for.body for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32, i32* %Int1, i64 %indvars.iv - %tmp = load i32, i32* %arrayidx, align 4, !tbaa !0 - %arrayidx2 = getelementptr inbounds i32, i32* %Int0, i64 %indvars.iv - store i32 %tmp, i32* %arrayidx2, align 4, !tbaa !0 - %arrayidx4 = getelementptr inbounds float, float* %Float1, i64 %indvars.iv - %tmp1 = load float, float* %arrayidx4, align 4, !tbaa !4 - %arrayidx6 = getelementptr inbounds float, float* %Float0, i64 %indvars.iv - store float %tmp1, float* %arrayidx6, align 4, !tbaa !4 + %arrayidx = getelementptr inbounds i32, ptr %Int1, i64 %indvars.iv + %tmp = load i32, ptr %arrayidx, align 4, !tbaa !0 + %arrayidx2 = getelementptr inbounds i32, ptr %Int0, i64 %indvars.iv + store i32 %tmp, ptr %arrayidx2, align 4, !tbaa !0 + %arrayidx4 = getelementptr inbounds float, ptr %Float1, i64 %indvars.iv + %tmp1 = load float, ptr %arrayidx4, align 4, !tbaa !4 + %arrayidx6 = getelementptr inbounds float, ptr %Float0, i64 %indvars.iv + store float %tmp1, ptr %arrayidx6, align 4, !tbaa !4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 1024 br i1 %exitcond, label %for.end, label %for.body diff --git a/polly/test/IstAstInfo/aliasing_parametric_simple_1.ll b/polly/test/IstAstInfo/aliasing_parametric_simple_1.ll index c105afe6723b..e0c3255dd766 100644 --- a/polly/test/IstAstInfo/aliasing_parametric_simple_1.ll +++ b/polly/test/IstAstInfo/aliasing_parametric_simple_1.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A, i32* %B, i32 %c) { +define void @jd(ptr %A, ptr %B, i32 %c) { entry: br label %for.cond @@ -24,10 +24,10 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %idxprom = sext i32 %c to i64 - %arrayidx = getelementptr inbounds i32, i32* %B, i64 %idxprom - %tmp = load i32, i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp, i32* %arrayidx2, align 4 + %arrayidx = getelementptr inbounds i32, ptr %B, i64 %idxprom + %tmp = load i32, ptr %arrayidx, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/IstAstInfo/aliasing_parametric_simple_2.ll b/polly/test/IstAstInfo/aliasing_parametric_simple_2.ll index 02dd98b93343..74bad6c75784 100644 --- a/polly/test/IstAstInfo/aliasing_parametric_simple_2.ll +++ b/polly/test/IstAstInfo/aliasing_parametric_simple_2.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A, i32* %B, i32 %c) { +define void @jd(ptr %A, ptr %B, i32 %c) { entry: br label %for.cond @@ -25,13 +25,13 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %sub = add nsw i32 %c, -10 %idxprom = sext i32 %sub to i64 - %arrayidx = getelementptr inbounds i32, i32* %B, i64 %idxprom - %tmp = load i32, i32* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds i32, i32* %B, i64 5 - %tmp1 = load i32, i32* %arrayidx1, align 4 + %arrayidx = getelementptr inbounds i32, ptr %B, i64 %idxprom + %tmp = load i32, ptr %arrayidx, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %B, i64 5 + %tmp1 = load i32, ptr %arrayidx1, align 4 %add = add nsw i32 %tmp, %tmp1 - %arrayidx3 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %add, i32* %arrayidx3, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %add, ptr %arrayidx3, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/IstAstInfo/dependence_distance_constant.ll b/polly/test/IstAstInfo/dependence_distance_constant.ll index c78c7ae0a23c..8b0e4d267c14 100644 --- a/polly/test/IstAstInfo/dependence_distance_constant.ll +++ b/polly/test/IstAstInfo/dependence_distance_constant.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: br label %for.cond @@ -31,12 +31,12 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 1 %add4 = add nsw i32 %i.0, 8 - %arrayidx5 = getelementptr inbounds i32, i32* %A, i32 %add4 - store i32 %add, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %A, i32 %add4 + store i32 %add, ptr %arrayidx5, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/IstAstInfo/dependence_distance_minimal.ll b/polly/test/IstAstInfo/dependence_distance_minimal.ll index e6ce2d13938e..c6b1d156e55d 100644 --- a/polly/test/IstAstInfo/dependence_distance_minimal.ll +++ b/polly/test/IstAstInfo/dependence_distance_minimal.ll @@ -19,7 +19,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" -define void @foo(i32* nocapture %arg, i32* nocapture %arg1) { +define void @foo(ptr nocapture %arg, ptr nocapture %arg1) { bb: br label %bb2 @@ -31,7 +31,7 @@ bb3: ; preds = %bb6 bb4: ; preds = %bb6, %bb2 %tmp = phi i32 [ 0, %bb2 ], [ %tmp7, %bb6 ] - %tmp5 = getelementptr inbounds i32, i32* %arg1, i32 %tmp + %tmp5 = getelementptr inbounds i32, ptr %arg1, i32 %tmp br label %bb9 bb6: ; preds = %bb9 @@ -41,16 +41,16 @@ bb6: ; preds = %bb9 bb9: ; preds = %bb9, %bb4 %tmp10 = phi i32 [ 1, %bb4 ], [ %tmp19, %bb9 ] - %tmp11 = load i32, i32* %tmp5, align 4 + %tmp11 = load i32, ptr %tmp5, align 4 %tmp12 = add nsw i32 %tmp11, 1 - store i32 %tmp12, i32* %tmp5, align 4 + store i32 %tmp12, ptr %tmp5, align 4 %tmp13 = urem i32 %tmp10, 250 - %tmp14 = getelementptr inbounds i32, i32* %arg, i32 %tmp13 - %tmp15 = load i32, i32* %tmp14, align 4 - %tmp16 = getelementptr inbounds i32, i32* %arg, i32 %tmp10 - %tmp17 = load i32, i32* %tmp16, align 4 + %tmp14 = getelementptr inbounds i32, ptr %arg, i32 %tmp13 + %tmp15 = load i32, ptr %tmp14, align 4 + %tmp16 = getelementptr inbounds i32, ptr %arg, i32 %tmp10 + %tmp17 = load i32, ptr %tmp16, align 4 %tmp18 = add nsw i32 %tmp17, %tmp15 - store i32 %tmp18, i32* %tmp16, align 4 + store i32 %tmp18, ptr %tmp16, align 4 %tmp19 = add nuw nsw i32 %tmp10, 1 %tmp20 = icmp eq i32 %tmp19, 1000 br i1 %tmp20, label %bb6, label %bb9 diff --git a/polly/test/IstAstInfo/dependence_distance_multiple_constant.ll b/polly/test/IstAstInfo/dependence_distance_multiple_constant.ll index fbbea1a12c29..4dae80902457 100644 --- a/polly/test/IstAstInfo/dependence_distance_multiple_constant.ll +++ b/polly/test/IstAstInfo/dependence_distance_multiple_constant.ll @@ -12,7 +12,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* noalias %A, i32* noalias %B, i32 %N) { +define void @f(ptr noalias %A, ptr noalias %B, i32 %N) { entry: br label %for.cond @@ -22,18 +22,18 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 1 %add1 = add nsw i32 %i.0, 7 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i32 %add1 - store i32 %add, i32* %arrayidx2, align 4 - %arrayidx3 = getelementptr inbounds i32, i32* %B, i32 %i.0 - %tmp1 = load i32, i32* %arrayidx3, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i32 %add1 + store i32 %add, ptr %arrayidx2, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %B, i32 %i.0 + %tmp1 = load i32, ptr %arrayidx3, align 4 %add4 = add nsw i32 %tmp1, 1 %add5 = add nsw i32 %i.0, 5 - %arrayidx6 = getelementptr inbounds i32, i32* %B, i32 %add5 - store i32 %add4, i32* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %B, i32 %add5 + store i32 %add4, ptr %arrayidx6, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/IstAstInfo/dependence_distance_parametric.ll b/polly/test/IstAstInfo/dependence_distance_parametric.ll index 50785db13361..3133b732c9db 100644 --- a/polly/test/IstAstInfo/dependence_distance_parametric.ll +++ b/polly/test/IstAstInfo/dependence_distance_parametric.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %A, i32 %N, i32 %c) { +define void @f(ptr %A, i32 %N, i32 %c) { entry: br label %for.cond @@ -31,12 +31,12 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 1 %add4 = add nsw i32 %i.0, %c - %arrayidx5 = getelementptr inbounds i32, i32* %A, i32 %add4 - store i32 %add, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %A, i32 %add4 + store i32 %add, ptr %arrayidx5, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/IstAstInfo/dependence_distance_parametric_expr.ll b/polly/test/IstAstInfo/dependence_distance_parametric_expr.ll index 46e7834da04b..5cce8c84a903 100644 --- a/polly/test/IstAstInfo/dependence_distance_parametric_expr.ll +++ b/polly/test/IstAstInfo/dependence_distance_parametric_expr.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %A, i32 %N, i32 %c, i32 %v) { +define void @f(ptr %A, i32 %N, i32 %c, i32 %v) { entry: br label %for.cond @@ -31,13 +31,13 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 1 %add4 = add nsw i32 %i.0, %c %add5 = add nsw i32 %add4, %v - %arrayidx6 = getelementptr inbounds i32, i32* %A, i32 %add5 - store i32 %add, i32* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %A, i32 %add5 + store i32 %add, ptr %arrayidx6, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/IstAstInfo/dependence_distance_varying.ll b/polly/test/IstAstInfo/dependence_distance_varying.ll index bf80f6c450a0..71c045b69e28 100644 --- a/polly/test/IstAstInfo/dependence_distance_varying.ll +++ b/polly/test/IstAstInfo/dependence_distance_varying.ll @@ -10,7 +10,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: br label %for.cond @@ -21,11 +21,11 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %sub = sub nsw i32 %N, %i.0 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %sub - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %sub + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 1 - %arrayidx1 = getelementptr inbounds i32, i32* %A, i32 %i.0 - store i32 %add, i32* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %A, i32 %i.0 + store i32 %add, ptr %arrayidx1, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/IstAstInfo/dependence_distance_varying_in_outer_loop.ll b/polly/test/IstAstInfo/dependence_distance_varying_in_outer_loop.ll index 08cc71f07db7..463e942fc958 100644 --- a/polly/test/IstAstInfo/dependence_distance_varying_in_outer_loop.ll +++ b/polly/test/IstAstInfo/dependence_distance_varying_in_outer_loop.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* noalias %A, i32* noalias %sum) { +define void @f(ptr noalias %A, ptr noalias %sum) { entry: br label %for.cond @@ -31,13 +31,13 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %j.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %j.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = mul nsw i32 %tmp, 3 %add5 = add nsw i32 %add, 2 %sub = add nsw i32 %i.0, -3 - %arrayidx6 = getelementptr inbounds i32, i32* %A, i32 %sub - store i32 %add5, i32* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %A, i32 %sub + store i32 %add5, ptr %arrayidx6, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/IstAstInfo/dependence_distance_varying_multiple.ll b/polly/test/IstAstInfo/dependence_distance_varying_multiple.ll index 2dee540570ca..67917b4a919f 100644 --- a/polly/test/IstAstInfo/dependence_distance_varying_multiple.ll +++ b/polly/test/IstAstInfo/dependence_distance_varying_multiple.ll @@ -16,7 +16,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* noalias %A, i32* noalias %B, i32* noalias %C, i32* noalias %D, i32* noalias %E, i32 %N) { +define void @f(ptr noalias %A, ptr noalias %B, ptr noalias %C, ptr noalias %D, ptr noalias %E, i32 %N) { entry: br label %for.cond @@ -28,39 +28,39 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %mul = shl nsw i32 %i.0, 1 %sub = sub nsw i32 100, %mul - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %sub - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %sub + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 1 - %arrayidx1 = getelementptr inbounds i32, i32* %A, i32 %i.0 - store i32 %add, i32* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %A, i32 %i.0 + store i32 %add, ptr %arrayidx1, align 4 %tmp1 = mul i32 %i.0, -3 %sub3 = add i32 %tmp1, 100 - %arrayidx4 = getelementptr inbounds i32, i32* %B, i32 %sub3 - %tmp2 = load i32, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %B, i32 %sub3 + %tmp2 = load i32, ptr %arrayidx4, align 4 %add5 = add nsw i32 %tmp2, 1 - %arrayidx6 = getelementptr inbounds i32, i32* %B, i32 %i.0 - store i32 %add5, i32* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %B, i32 %i.0 + store i32 %add5, ptr %arrayidx6, align 4 %mul7 = shl nsw i32 %i.0, 2 %sub8 = sub nsw i32 100, %mul7 - %arrayidx9 = getelementptr inbounds i32, i32* %C, i32 %sub8 - %tmp3 = load i32, i32* %arrayidx9, align 4 + %arrayidx9 = getelementptr inbounds i32, ptr %C, i32 %sub8 + %tmp3 = load i32, ptr %arrayidx9, align 4 %add10 = add nsw i32 %tmp3, 1 - %arrayidx11 = getelementptr inbounds i32, i32* %C, i32 %i.0 - store i32 %add10, i32* %arrayidx11, align 4 + %arrayidx11 = getelementptr inbounds i32, ptr %C, i32 %i.0 + store i32 %add10, ptr %arrayidx11, align 4 %tmp4 = mul i32 %i.0, -5 %sub13 = add i32 %tmp4, 100 - %arrayidx14 = getelementptr inbounds i32, i32* %D, i32 %sub13 - %tmp5 = load i32, i32* %arrayidx14, align 4 + %arrayidx14 = getelementptr inbounds i32, ptr %D, i32 %sub13 + %tmp5 = load i32, ptr %arrayidx14, align 4 %add15 = add nsw i32 %tmp5, 1 - %arrayidx16 = getelementptr inbounds i32, i32* %D, i32 %i.0 - store i32 %add15, i32* %arrayidx16, align 4 + %arrayidx16 = getelementptr inbounds i32, ptr %D, i32 %i.0 + store i32 %add15, ptr %arrayidx16, align 4 %tmp6 = mul i32 %i.0, -6 %sub18 = add i32 %tmp6, 100 - %arrayidx19 = getelementptr inbounds i32, i32* %E, i32 %sub18 - %tmp7 = load i32, i32* %arrayidx19, align 4 + %arrayidx19 = getelementptr inbounds i32, ptr %E, i32 %sub18 + %tmp7 = load i32, ptr %arrayidx19, align 4 %add20 = add nsw i32 %tmp7, 1 - %arrayidx21 = getelementptr inbounds i32, i32* %E, i32 %i.0 - store i32 %add20, i32* %arrayidx21, align 4 + %arrayidx21 = getelementptr inbounds i32, ptr %E, i32 %i.0 + store i32 %add20, ptr %arrayidx21, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/IstAstInfo/domain_bounded_only_with_context.ll b/polly/test/IstAstInfo/domain_bounded_only_with_context.ll index 636149b4a78c..32cebd7a3a8b 100644 --- a/polly/test/IstAstInfo/domain_bounded_only_with_context.ll +++ b/polly/test/IstAstInfo/domain_bounded_only_with_context.ll @@ -15,7 +15,7 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" -define void @zot(float* %A, i32 %arg) { +define void @zot(ptr %A, i32 %arg) { bb: %p = ashr i32 %arg, 25 %tmpEven = shl nsw i32 %p, 1 @@ -28,18 +28,18 @@ cond: br i1 %br.cmp, label %side, label %preheader preheader: - store float 1.0, float* %A + store float 1.0, ptr %A br label %loop loop: %indvar = phi i32 [ %indvar.next, %loop ], [ 1, %preheader ] - store float 1.0, float* %A + store float 1.0, ptr %A %indvar.next = add nuw nsw i32 %indvar, 1 %cmp = icmp eq i32 %indvar, %tmp3 br i1 %cmp, label %exit, label %loop side: - store float 1.0, float* %A + store float 1.0, ptr %A br label %ret exit: diff --git a/polly/test/IstAstInfo/non_affine_access.ll b/polly/test/IstAstInfo/non_affine_access.ll index 16d999bbd6a9..d8757b2e21cf 100644 --- a/polly/test/IstAstInfo/non_affine_access.ll +++ b/polly/test/IstAstInfo/non_affine_access.ll @@ -13,7 +13,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-pc-linux-gnu" -define void @non_affine_access(float* %A) { +define void @non_affine_access(ptr %A) { bb: br label %bb1 @@ -27,8 +27,8 @@ bb2: ; preds = %bb1 bb3: ; preds = %bb1 %prod = mul i64 %i.0, %i.0 - %tmp5 = getelementptr inbounds float, float* %A, i64 %prod - store float 1.000000e+00, float* %tmp5, align 4, !tbaa !5 + %tmp5 = getelementptr inbounds float, ptr %A, i64 %prod + store float 1.000000e+00, ptr %tmp5, align 4, !tbaa !5 br label %bb6 bb6: ; preds = %bb3 diff --git a/polly/test/IstAstInfo/reduction_clauses_multidimensional_access.ll b/polly/test/IstAstInfo/reduction_clauses_multidimensional_access.ll index 1948b8f350eb..b588e42df5d1 100644 --- a/polly/test/IstAstInfo/reduction_clauses_multidimensional_access.ll +++ b/polly/test/IstAstInfo/reduction_clauses_multidimensional_access.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32 %N, i32 %M, i32 %P, i32* %sum) { +define void @f(i32 %N, i32 %M, i32 %P, ptr %sum) { entry: br label %for.cond @@ -43,10 +43,10 @@ for.cond4: ; preds = %for.inc, %for.body3 for.body6: ; preds = %for.cond4 %tmp = mul nsw i32 %j.0, %M %arrayidx.sum = add i32 %tmp, %k.0 - %arrayidx7 = getelementptr inbounds i32, i32* %sum, i32 %arrayidx.sum - %tmp1 = load i32, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %sum, i32 %arrayidx.sum + %tmp1 = load i32, ptr %arrayidx7, align 4 %xor = xor i32 %tmp1, %j.0 - store i32 %xor, i32* %arrayidx7, align 4 + store i32 %xor, ptr %arrayidx7, align 4 br label %for.inc for.inc: ; preds = %for.body6 diff --git a/polly/test/IstAstInfo/reduction_clauses_onedimensional_access.ll b/polly/test/IstAstInfo/reduction_clauses_onedimensional_access.ll index 0962b4a5add4..8d52e345a76d 100644 --- a/polly/test/IstAstInfo/reduction_clauses_onedimensional_access.ll +++ b/polly/test/IstAstInfo/reduction_clauses_onedimensional_access.ll @@ -10,7 +10,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32 %N, i32 %M, i32* %sum) { +define void @f(i32 %N, i32 %M, ptr %sum) { entry: br label %for.cond @@ -28,10 +28,10 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %cmp2, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %sum, i32 %j.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sum, i32 %j.0 + %tmp = load i32, ptr %arrayidx, align 4 %xor = xor i32 %tmp, %j.0 - store i32 %xor, i32* %arrayidx, align 4 + store i32 %xor, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/IstAstInfo/reduction_dependences_equal_non_reduction_dependences.ll b/polly/test/IstAstInfo/reduction_dependences_equal_non_reduction_dependences.ll index 6746efb5ee77..9c6eea6aaa1e 100644 --- a/polly/test/IstAstInfo/reduction_dependences_equal_non_reduction_dependences.ll +++ b/polly/test/IstAstInfo/reduction_dependences_equal_non_reduction_dependences.ll @@ -18,7 +18,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @AandSum(i32* noalias %sum, i32* noalias %A) { +define void @AandSum(ptr noalias %sum, ptr noalias %A) { entry: br label %for.cond @@ -28,24 +28,24 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %sub = add nsw i32 %i.0, -1 - %arrayidx1 = getelementptr inbounds i32, i32* %A, i32 %sub - %tmp1 = load i32, i32* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %A, i32 %sub + %tmp1 = load i32, ptr %arrayidx1, align 4 %add = add nsw i32 %tmp, %tmp1 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i32 %i.0 - store i32 %add, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i32 %i.0 + store i32 %add, ptr %arrayidx2, align 4 %sub4 = add nsw i32 %i.0, -2 - %arrayidx5 = getelementptr inbounds i32, i32* %A, i32 %sub4 - %tmp2 = load i32, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %A, i32 %sub4 + %tmp2 = load i32, ptr %arrayidx5, align 4 %add6 = add nsw i32 %add, %tmp2 %sub7 = add nsw i32 %i.0, -1 - %arrayidx8 = getelementptr inbounds i32, i32* %A, i32 %sub7 - store i32 %add6, i32* %arrayidx8, align 4 - %tmp3 = load i32, i32* %sum, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %A, i32 %sub7 + store i32 %add6, ptr %arrayidx8, align 4 + %tmp3 = load i32, ptr %sum, align 4 %add9 = add nsw i32 %tmp3, %i.0 - store i32 %add9, i32* %sum, align 4 + store i32 %add9, ptr %sum, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/IstAstInfo/reduction_different_reduction_clauses.ll b/polly/test/IstAstInfo/reduction_different_reduction_clauses.ll index 6cfa44625485..5104f716d810 100644 --- a/polly/test/IstAstInfo/reduction_different_reduction_clauses.ll +++ b/polly/test/IstAstInfo/reduction_different_reduction_clauses.ll @@ -18,7 +18,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32 %N, i32* noalias %sum1, i32* noalias %sum2, i32* noalias %prod, i32* noalias %and, i32* noalias %or) { +define void @f(i32 %N, ptr noalias %sum1, ptr noalias %sum2, ptr noalias %prod, ptr noalias %and, ptr noalias %or) { entry: br label %for.cond @@ -28,22 +28,22 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %tmp = load i32, i32* %sum1, align 4 + %tmp = load i32, ptr %sum1, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %sum1, align 4 + store i32 %add, ptr %sum1, align 4 %add1 = add nsw i32 %i.0, 1 - %tmp1 = load i32, i32* %sum2, align 4 + %tmp1 = load i32, ptr %sum2, align 4 %add2 = add nsw i32 %tmp1, %add1 - store i32 %add2, i32* %sum2, align 4 - %tmp2 = load i32, i32* %prod, align 4 + store i32 %add2, ptr %sum2, align 4 + %tmp2 = load i32, ptr %prod, align 4 %mul = mul nsw i32 %tmp2, %i.0 - store i32 %mul, i32* %prod, align 4 - %tmp3 = load i32, i32* %and, align 4 + store i32 %mul, ptr %prod, align 4 + %tmp3 = load i32, ptr %and, align 4 %and3 = and i32 %tmp3, %i.0 - store i32 %and3, i32* %and, align 4 - %tmp4 = load i32, i32* %or, align 4 + store i32 %and3, ptr %and, align 4 + %tmp4 = load i32, ptr %or, align 4 %or4 = or i32 %tmp4, %i.0 - store i32 %or4, i32* %or, align 4 + store i32 %or4, ptr %or, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/IstAstInfo/reduction_in_one_dimension.ll b/polly/test/IstAstInfo/reduction_in_one_dimension.ll index c212a16e83d5..86a1b67f7292 100644 --- a/polly/test/IstAstInfo/reduction_in_one_dimension.ll +++ b/polly/test/IstAstInfo/reduction_in_one_dimension.ll @@ -19,7 +19,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @foo(i32* %A, i32 %n) { +define void @foo(ptr %A, i32 %n) { entry: br label %for.cond @@ -38,10 +38,10 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/IstAstInfo/reduction_loop_reversal.ll b/polly/test/IstAstInfo/reduction_loop_reversal.ll index 16bc437a672d..c940f5c08fa1 100644 --- a/polly/test/IstAstInfo/reduction_loop_reversal.ll +++ b/polly/test/IstAstInfo/reduction_loop_reversal.ll @@ -19,7 +19,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rlr(i32* %A, i32 %n) { +define void @rlr(ptr %A, i32 %n) { entry: br label %for.cond @@ -33,9 +33,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -56,8 +56,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/IstAstInfo/reduction_modulo_and_loop_reversal_schedule.ll b/polly/test/IstAstInfo/reduction_modulo_and_loop_reversal_schedule.ll index da8f7d7f76a4..8a42cf8bd165 100644 --- a/polly/test/IstAstInfo/reduction_modulo_and_loop_reversal_schedule.ll +++ b/polly/test/IstAstInfo/reduction_modulo_and_loop_reversal_schedule.ll @@ -21,7 +21,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rmalrs(i32* %A, i32 %n) { +define void @rmalrs(ptr %A, i32 %n) { entry: br label %for.cond @@ -35,9 +35,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -58,8 +58,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/IstAstInfo/reduction_modulo_and_loop_reversal_schedule_2.ll b/polly/test/IstAstInfo/reduction_modulo_and_loop_reversal_schedule_2.ll index 466c4ded4aa5..8f5efd165546 100644 --- a/polly/test/IstAstInfo/reduction_modulo_and_loop_reversal_schedule_2.ll +++ b/polly/test/IstAstInfo/reduction_modulo_and_loop_reversal_schedule_2.ll @@ -25,7 +25,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rmalrs2(i32* %A, i32 %n) { +define void @rmalrs2(ptr %A, i32 %n) { entry: br label %for.cond @@ -39,9 +39,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -62,8 +62,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/IstAstInfo/reduction_modulo_schedule.ll b/polly/test/IstAstInfo/reduction_modulo_schedule.ll index f35dd1d6cf8e..21a78e548762 100644 --- a/polly/test/IstAstInfo/reduction_modulo_schedule.ll +++ b/polly/test/IstAstInfo/reduction_modulo_schedule.ll @@ -25,7 +25,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rms(i32* %A, i32 %n) { +define void @rms(ptr %A, i32 %n) { entry: br label %for.cond @@ -39,9 +39,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -62,8 +62,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions.ll b/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions.ll index fab87f2320fe..a711a36a367f 100644 --- a/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions.ll +++ b/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rmsmd(i32* %A, i32 %n) { +define void @rmsmd(ptr %A, i32 %n) { entry: br label %for.cond @@ -34,10 +34,10 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_2.ll b/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_2.ll index b1e4884ae54e..485d6965b6d3 100644 --- a/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_2.ll +++ b/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_2.ll @@ -17,7 +17,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rmsmd2(i32* %A, i32 %n) { +define void @rmsmd2(ptr %A, i32 %n) { entry: br label %for.cond @@ -36,10 +36,10 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_3.ll b/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_3.ll index 5428581a6da4..375fabbf6a8b 100644 --- a/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_3.ll +++ b/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_3.ll @@ -17,7 +17,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rmsmd3(i32* %A, i32 %n) { +define void @rmsmd3(ptr %A, i32 %n) { entry: br label %for.cond @@ -36,10 +36,10 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_4.ll b/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_4.ll index 036e86ebca71..584c076dcff4 100644 --- a/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_4.ll +++ b/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_4.ll @@ -22,7 +22,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rmsmd4(i32* %A, i32 %n) { +define void @rmsmd4(ptr %A, i32 %n) { entry: br label %for.cond @@ -41,10 +41,10 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_5.ll b/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_5.ll index 2f9f2b48b6be..eaa3444a04d7 100644 --- a/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_5.ll +++ b/polly/test/IstAstInfo/reduction_modulo_schedule_multiple_dimensions_5.ll @@ -25,7 +25,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rmsmd5(i32* %A, i32 %n) { +define void @rmsmd5(ptr %A, i32 %n) { entry: br label %for.cond @@ -44,10 +44,10 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/IstAstInfo/reduction_multiple_dimensions.ll b/polly/test/IstAstInfo/reduction_multiple_dimensions.ll index 543778c96747..9618ec872c38 100644 --- a/polly/test/IstAstInfo/reduction_multiple_dimensions.ll +++ b/polly/test/IstAstInfo/reduction_multiple_dimensions.ll @@ -17,7 +17,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rmd(i32* %A) { +define void @rmd(ptr %A) { entry: br label %for.cond @@ -43,10 +43,10 @@ for.cond4: ; preds = %for.inc, %for.body3 br i1 %exitcond, label %for.body6, label %for.end for.body6: ; preds = %for.cond4 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body6 diff --git a/polly/test/IstAstInfo/reduction_multiple_dimensions_2.ll b/polly/test/IstAstInfo/reduction_multiple_dimensions_2.ll index e9fb72866fdd..af317570eb37 100644 --- a/polly/test/IstAstInfo/reduction_multiple_dimensions_2.ll +++ b/polly/test/IstAstInfo/reduction_multiple_dimensions_2.ll @@ -17,7 +17,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rmd2(i32* %A) { +define void @rmd2(ptr %A) { entry: br label %for.cond @@ -43,10 +43,10 @@ for.cond4: ; preds = %for.inc, %for.body3 br i1 %exitcond, label %for.body6, label %for.end for.body6: ; preds = %for.cond4 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body6 diff --git a/polly/test/IstAstInfo/reduction_multiple_dimensions_3.ll b/polly/test/IstAstInfo/reduction_multiple_dimensions_3.ll index 963424a8e3b6..1f7191433bf8 100644 --- a/polly/test/IstAstInfo/reduction_multiple_dimensions_3.ll +++ b/polly/test/IstAstInfo/reduction_multiple_dimensions_3.ll @@ -17,7 +17,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rmd3(i32* %A) { +define void @rmd3(ptr %A) { entry: br label %for.cond @@ -43,10 +43,10 @@ for.cond4: ; preds = %for.inc, %for.body3 br i1 %exitcond, label %for.body6, label %for.end for.body6: ; preds = %for.cond4 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body6 diff --git a/polly/test/IstAstInfo/reduction_multiple_dimensions_4.ll b/polly/test/IstAstInfo/reduction_multiple_dimensions_4.ll index a2226aad3e5a..40bae5e9ac6c 100644 --- a/polly/test/IstAstInfo/reduction_multiple_dimensions_4.ll +++ b/polly/test/IstAstInfo/reduction_multiple_dimensions_4.ll @@ -17,7 +17,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @rmd4(i32* %A) { +define void @rmd4(ptr %A) { entry: br label %for.cond @@ -43,10 +43,10 @@ for.cond4: ; preds = %for.inc, %for.body3 br i1 %exitcond, label %for.body6, label %for.end for.body6: ; preds = %for.cond4 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body6 diff --git a/polly/test/IstAstInfo/run-time-condition.ll b/polly/test/IstAstInfo/run-time-condition.ll index 9c6e9f1302c9..ccc9c7cfd321 100644 --- a/polly/test/IstAstInfo/run-time-condition.ll +++ b/polly/test/IstAstInfo/run-time-condition.ll @@ -5,7 +5,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" -define void @run-time-condition(i16* noalias %A, i16* noalias %B) { +define void @run-time-condition(ptr noalias %A, ptr noalias %B) { entry: br label %for.cond @@ -15,11 +15,10 @@ for.cond: ; preds = %for.body, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i16, i16* %B, i64 0 - %load = load i16, i16* %arrayidx + %load = load i16, ptr %B %add10 = add nsw i16 %load, 1 - %arrayidx13 = getelementptr inbounds i16, i16* %A, i64 %indvar - store i16 %add10, i16* %arrayidx13, align 2 + %arrayidx13 = getelementptr inbounds i16, ptr %A, i64 %indvar + store i16 %add10, ptr %arrayidx13, align 2 %inc = add nsw i64 %indvar, 1 br label %for.cond diff --git a/polly/test/IstAstInfo/runtime_context_with_error_blocks.ll b/polly/test/IstAstInfo/runtime_context_with_error_blocks.ll index c3c0eeab2d24..2853e0acf9b8 100644 --- a/polly/test/IstAstInfo/runtime_context_with_error_blocks.ll +++ b/polly/test/IstAstInfo/runtime_context_with_error_blocks.ll @@ -8,37 +8,36 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%"class.std::ctype" = type <{ %"class.std::locale::facet.base", [4 x i8], %struct.__locale_struct*, i8, [7 x i8], i32*, i32*, i16*, i8, [256 x i8], [256 x i8], i8, [6 x i8] }> -%"class.std::locale::facet.base" = type <{ i32 (...)**, i32 }> -%struct.__locale_struct = type { [13 x %struct.__locale_data*], i16*, i32*, i32*, [13 x i8*] } +%"class.std::ctype" = type <{ %"class.std::locale::facet.base", [4 x i8], ptr, i8, [7 x i8], ptr, ptr, ptr, i8, [256 x i8], [256 x i8], i8, [6 x i8] }> +%"class.std::locale::facet.base" = type <{ ptr, i32 }> +%struct.__locale_struct = type { [13 x ptr], ptr, ptr, ptr, [13 x ptr] } %struct.__locale_data = type opaque $_ZNKSt5ctypeIcE5widenEc = comdat any ; Function Attrs: uwtable -define weak_odr signext i8 @_ZNKSt5ctypeIcE5widenEc(%"class.std::ctype"* %this, i8 signext %__c) #0 comdat align 2 { +define weak_odr signext i8 @_ZNKSt5ctypeIcE5widenEc(ptr %this, i8 signext %__c) #0 comdat align 2 { entry: br label %entry.split entry.split: ; preds = %entry - %_M_widen_ok = getelementptr inbounds %"class.std::ctype", %"class.std::ctype"* %this, i64 0, i32 8 - %0 = load i8, i8* %_M_widen_ok, align 8, !tbaa !1 + %_M_widen_ok = getelementptr inbounds %"class.std::ctype", ptr %this, i64 0, i32 8 + %0 = load i8, ptr %_M_widen_ok, align 8, !tbaa !1 %tobool = icmp eq i8 %0, 0 br i1 %tobool, label %if.end, label %if.then if.then: ; preds = %entry.split %idxprom = zext i8 %__c to i64 - %arrayidx = getelementptr inbounds %"class.std::ctype", %"class.std::ctype"* %this, i64 0, i32 9, i64 %idxprom - %1 = load i8, i8* %arrayidx, align 1, !tbaa !7 + %arrayidx = getelementptr inbounds %"class.std::ctype", ptr %this, i64 0, i32 9, i64 %idxprom + %1 = load i8, ptr %arrayidx, align 1, !tbaa !7 br label %return if.end: ; preds = %entry.split - tail call void @_ZNKSt5ctypeIcE13_M_widen_initEv(%"class.std::ctype"* %this) - %2 = bitcast %"class.std::ctype"* %this to i8 (%"class.std::ctype"*, i8)*** - %vtable = load i8 (%"class.std::ctype"*, i8)**, i8 (%"class.std::ctype"*, i8)*** %2, align 8, !tbaa !8 - %vfn = getelementptr inbounds i8 (%"class.std::ctype"*, i8)*, i8 (%"class.std::ctype"*, i8)** %vtable, i64 6 - %3 = load i8 (%"class.std::ctype"*, i8)*, i8 (%"class.std::ctype"*, i8)** %vfn, align 8 - %call = tail call signext i8 %3(%"class.std::ctype"* %this, i8 signext %__c) + tail call void @_ZNKSt5ctypeIcE13_M_widen_initEv(ptr %this) + %vtable = load ptr, ptr %this, align 8, !tbaa !8 + %vfn = getelementptr inbounds ptr, ptr %vtable, i64 6 + %2 = load ptr, ptr %vfn, align 8 + %call = tail call signext i8 %2(ptr %this, i8 signext %__c) br label %return return: ; preds = %if.end, %if.then @@ -46,7 +45,7 @@ return: ; preds = %if.end, %if.then ret i8 %retval.0 } -declare void @_ZNKSt5ctypeIcE13_M_widen_initEv(%"class.std::ctype"*) #1 +declare void @_ZNKSt5ctypeIcE13_M_widen_initEv(ptr) #1 attributes #0 = { uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" } attributes #1 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" } diff --git a/polly/test/IstAstInfo/simple-run-time-condition.ll b/polly/test/IstAstInfo/simple-run-time-condition.ll index db2cc1a77bae..5fb99f0676b7 100644 --- a/polly/test/IstAstInfo/simple-run-time-condition.ll +++ b/polly/test/IstAstInfo/simple-run-time-condition.ll @@ -32,7 +32,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK: else ; CHECK: { /* original code */ } -define void @foo(i64 %n, i64 %m, i64 %o, double* %A, i64 %p, i64 %q) { +define void @foo(i64 %n, i64 %m, i64 %o, ptr %A, i64 %p, i64 %q) { entry: br label %cond @@ -50,8 +50,8 @@ for.j: %subscript0 = mul i64 %offset0, %m %offset1 = add nsw i64 %j, %q %subscript1 = add i64 %offset1, %subscript0 - %idx = getelementptr inbounds double, double* %A, i64 %subscript1 - store double 1.0, double* %idx + %idx = getelementptr inbounds double, ptr %A, i64 %subscript1 + store double 1.0, ptr %idx br label %for.j.inc for.j.inc: @@ -75,8 +75,8 @@ for.j.1: %offset1.1 = add nsw i64 %j.1, %q %subscript1.1 = add i64 %offset1.1, %subscript0.1 %subscript1.2 = sub i64 %subscript1.1, 100 - %idx.1 = getelementptr inbounds double, double* %A, i64 %subscript1.2 - store double 1.0, double* %idx.1 + %idx.1 = getelementptr inbounds double, ptr %A, i64 %subscript1.2 + store double 1.0, ptr %idx.1 br label %for.j.inc.1 for.j.inc.1: diff --git a/polly/test/IstAstInfo/single_loop_strip_mine.ll b/polly/test/IstAstInfo/single_loop_strip_mine.ll index 08ca5e1ef44b..1c627f817b0b 100644 --- a/polly/test/IstAstInfo/single_loop_strip_mine.ll +++ b/polly/test/IstAstInfo/single_loop_strip_mine.ll @@ -6,7 +6,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" -define void @single_loop_strip_mine(i16* noalias %A, i16* noalias %B) { +define void @single_loop_strip_mine(ptr noalias %A, ptr noalias %B) { entry: br label %for.cond @@ -16,11 +16,10 @@ for.cond: ; preds = %for.body, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i16, i16* %B, i64 0 - %load = load i16, i16* %arrayidx + %load = load i16, ptr %B %add10 = add nsw i16 %load, 1 - %arrayidx13 = getelementptr inbounds i16, i16* %A, i64 %indvar - store i16 %add10, i16* %arrayidx13, align 2 + %arrayidx13 = getelementptr inbounds i16, ptr %A, i64 %indvar + store i16 %add10, ptr %arrayidx13, align 2 %inc = add nsw i64 %indvar, 1 br label %for.cond diff --git a/polly/test/IstAstInfo/single_loop_uint_max_iterations.ll b/polly/test/IstAstInfo/single_loop_uint_max_iterations.ll index b26f4d75537c..f1cd5dae11ce 100644 --- a/polly/test/IstAstInfo/single_loop_uint_max_iterations.ll +++ b/polly/test/IstAstInfo/single_loop_uint_max_iterations.ll @@ -27,10 +27,10 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 define i32 @main() nounwind { entry: - %A = alloca [20 x i32], align 4 ; <[20 x i32]*> [#uses=3] - %arraydecay = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx = getelementptr inbounds i32, i32* %arraydecay, i64 0 ; <i32*> [#uses=1] - store i32 0, i32* %arrayidx + %A = alloca [20 x i32], align 4 ; <ptr> [#uses=3] + %arraydecay = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx = getelementptr inbounds i32, ptr %arraydecay, i64 0 ; <ptr> [#uses=1] + store i32 0, ptr %arrayidx fence seq_cst br label %for.cond @@ -40,9 +40,9 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arraydecay2 = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx3 = getelementptr inbounds i32, i32* %arraydecay2, i64 0 ; <i32*> [#uses=1] - store i32 %0, i32* %arrayidx3 + %arraydecay2 = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx3 = getelementptr inbounds i32, ptr %arraydecay2, i64 0 ; <ptr> [#uses=1] + store i32 %0, ptr %arrayidx3 br label %for.inc for.inc: ; preds = %for.body @@ -51,9 +51,9 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond fence seq_cst - %arraydecay5 = getelementptr inbounds [20 x i32], [20 x i32]* %A, i32 0, i32 0 ; <i32*> [#uses=1] - %arrayidx6 = getelementptr inbounds i32, i32* %arraydecay5, i64 0 ; <i32*> [#uses=1] - %tmp7 = load i32, i32* %arrayidx6 ; <i32> [#uses=1] + %arraydecay5 = getelementptr inbounds [20 x i32], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx6 = getelementptr inbounds i32, ptr %arraydecay5, i64 0 ; <ptr> [#uses=1] + %tmp7 = load i32, ptr %arrayidx6 ; <i32> [#uses=1] %cmp8 = icmp eq i32 %tmp7, -2 ; <i1> [#uses=1] br i1 %cmp8, label %if.then, label %if.else diff --git a/polly/test/IstAstInfo/single_loop_ull_max_iterations.ll b/polly/test/IstAstInfo/single_loop_ull_max_iterations.ll index 954757360972..d421e221240a 100644 --- a/polly/test/IstAstInfo/single_loop_ull_max_iterations.ll +++ b/polly/test/IstAstInfo/single_loop_ull_max_iterations.ll @@ -27,10 +27,10 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 define i32 @main() nounwind { entry: - %A = alloca [20 x i64], align 8 ; <[20 x i64]*> [#uses=3] - %arraydecay = getelementptr inbounds [20 x i64], [20 x i64]* %A, i32 0, i32 0 ; <i64*> [#uses=1] - %arrayidx = getelementptr inbounds i64, i64* %arraydecay, i64 0 ; <i64*> [#uses=1] - store i64 0, i64* %arrayidx + %A = alloca [20 x i64], align 8 ; <ptr> [#uses=3] + %arraydecay = getelementptr inbounds [20 x i64], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx = getelementptr inbounds i64, ptr %arraydecay, i64 0 ; <ptr> [#uses=1] + store i64 0, ptr %arrayidx fence seq_cst br label %for.cond @@ -40,9 +40,9 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arraydecay2 = getelementptr inbounds [20 x i64], [20 x i64]* %A, i32 0, i32 0 ; <i64*> [#uses=1] - %arrayidx3 = getelementptr inbounds i64, i64* %arraydecay2, i64 0 ; <i64*> [#uses=1] - store i64 %0, i64* %arrayidx3 + %arraydecay2 = getelementptr inbounds [20 x i64], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx3 = getelementptr inbounds i64, ptr %arraydecay2, i64 0 ; <ptr> [#uses=1] + store i64 %0, ptr %arrayidx3 br label %for.inc for.inc: ; preds = %for.body @@ -51,9 +51,9 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond fence seq_cst - %arraydecay5 = getelementptr inbounds [20 x i64], [20 x i64]* %A, i32 0, i32 0 ; <i64*> [#uses=1] - %arrayidx6 = getelementptr inbounds i64, i64* %arraydecay5, i64 0 ; <i64*> [#uses=1] - %tmp7 = load i64, i64* %arrayidx6 ; <i64> [#uses=1] + %arraydecay5 = getelementptr inbounds [20 x i64], ptr %A, i32 0, i32 0 ; <ptr> [#uses=1] + %arrayidx6 = getelementptr inbounds i64, ptr %arraydecay5, i64 0 ; <ptr> [#uses=1] + %tmp7 = load i64, ptr %arrayidx6 ; <i64> [#uses=1] %cmp8 = icmp eq i64 %tmp7, -2 ; <i1> [#uses=1] br i1 %cmp8, label %if.then, label %if.else diff --git a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Bad-relation.ll b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Bad-relation.ll index 2e7c97b56d7f..d4a1a6222518 100644 --- a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Bad-relation.ll +++ b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Bad-relation.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @ia6(i32* %A, i32 %n) { +define void @ia6(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-No-accesses-key.ll b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-No-accesses-key.ll index c968aa37e7a0..43f9d3eda049 100644 --- a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-No-accesses-key.ll +++ b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-No-accesses-key.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @ia3(i32* %A, i32 %n) { +define void @ia3(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Not-enough-MemAcc.ll b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Not-enough-MemAcc.ll index 1b554ccd331c..24ad03741216 100644 --- a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Not-enough-MemAcc.ll +++ b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Not-enough-MemAcc.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @ia4(i32* %A, i32 %n) { +define void @ia4(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Not-enough-statements.ll b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Not-enough-statements.ll index 91e41c718aec..1060926e7fac 100644 --- a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Not-enough-statements.ll +++ b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Not-enough-statements.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @ia2(i32* %A, i32 %n) { +define void @ia2(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Relation-mispelled.ll b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Relation-mispelled.ll index d0701912be2b..07975976c38b 100644 --- a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Relation-mispelled.ll +++ b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Relation-mispelled.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @ia5(i32* %A, i32 %n) { +define void @ia5(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Statements-mispelled.ll b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Statements-mispelled.ll index b5b8bc4fcd2a..9f7259633811 100644 --- a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Statements-mispelled.ll +++ b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Statements-mispelled.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @ia(i32* %A, i32 %n) { +define void @ia(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Undeclared-ScopArrayInfo.ll b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Undeclared-ScopArrayInfo.ll index 77b6a27b2805..df7eb42da85f 100644 --- a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Undeclared-ScopArrayInfo.ll +++ b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Undeclared-ScopArrayInfo.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @ia8(i32* %A, i32 %n) { +define void @ia8(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Wrong-number-dimensions.ll b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Wrong-number-dimensions.ll index dd319d2929a7..61c1173db2e7 100644 --- a/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Wrong-number-dimensions.ll +++ b/polly/test/JSONExporter/ImportAccesses/ImportAccesses-Wrong-number-dimensions.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @ia7(i32* %A, i32 %n) { +define void @ia7(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportArrays/ImportArrays-Mispelled-type.ll b/polly/test/JSONExporter/ImportArrays/ImportArrays-Mispelled-type.ll index 27ec75b774ee..a14ae5c4d1bc 100644 --- a/polly/test/JSONExporter/ImportArrays/ImportArrays-Mispelled-type.ll +++ b/polly/test/JSONExporter/ImportArrays/ImportArrays-Mispelled-type.ll @@ -15,7 +15,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" ; Function Attrs: nounwind uwtable -define internal void @ia4(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %beta, [1056 x double]* %A, [1024 x double]* %B, [1056 x double]* %arg7) #0 { +define internal void @ia4(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %beta, ptr %A, ptr %B, ptr %arg7) #0 { bb: br label %bb8 @@ -32,11 +32,11 @@ bb10: ; preds = %bb20, %bb9 bb12: ; preds = %bb12, %bb10 %tmp13 = phi i64 [ 0, %bb10 ], [ %tmp18, %bb12 ] - %tmp14 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %tmp, i64 %tmp13 - %tmp15 = load double, double* %tmp14, align 8 + %tmp14 = getelementptr inbounds [1024 x double], ptr %B, i64 %tmp, i64 %tmp13 + %tmp15 = load double, ptr %tmp14, align 8 %tmp16 = fmul double %tmp15, %beta - %tmp17 = getelementptr inbounds [1056 x double], [1056 x double]* %A, i64 %tmp, i64 %tmp11 - store double %tmp16, double* %tmp17, align 8 + %tmp17 = getelementptr inbounds [1056 x double], ptr %A, i64 %tmp, i64 %tmp11 + store double %tmp16, ptr %tmp17, align 8 %tmp18 = add nuw nsw i64 %tmp13, 1 %tmp19 = icmp ne i64 %tmp18, 1024 br i1 %tmp19, label %bb12, label %bb20 diff --git a/polly/test/JSONExporter/ImportArrays/ImportArrays-Negative-size.ll b/polly/test/JSONExporter/ImportArrays/ImportArrays-Negative-size.ll index 2aa7e0a13ea2..70652a1918b4 100644 --- a/polly/test/JSONExporter/ImportArrays/ImportArrays-Negative-size.ll +++ b/polly/test/JSONExporter/ImportArrays/ImportArrays-Negative-size.ll @@ -24,7 +24,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @ImportArrays_Negative_Size(double %beta, [1024 x double]* nocapture readonly %A, [1056 x double]* nocapture %B) local_unnamed_addr { +define void @ImportArrays_Negative_Size(double %beta, ptr nocapture readonly %A, ptr nocapture %B) local_unnamed_addr { entry: br label %for.cond1.preheader @@ -34,30 +34,30 @@ for.cond1.preheader: ; preds = %for.inc16, %entry for.cond4.preheader: ; preds = %for.inc13, %for.cond1.preheader %indvars.iv32 = phi i64 [ 0, %for.cond1.preheader ], [ %indvars.iv.next33, %for.inc13 ] - %arrayidx12 = getelementptr inbounds [1056 x double], [1056 x double]* %B, i64 %indvars.iv35, i64 %indvars.iv32 + %arrayidx12 = getelementptr inbounds [1056 x double], ptr %B, i64 %indvars.iv35, i64 %indvars.iv32 br label %for.body6 for.body6: ; preds = %for.body6, %for.cond4.preheader %indvars.iv = phi i64 [ 0, %for.cond4.preheader ], [ %indvars.iv.next.3, %for.body6 ] - %arrayidx8 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i64 %indvars.iv35, i64 %indvars.iv - %0 = load double, double* %arrayidx8, align 8 + %arrayidx8 = getelementptr inbounds [1024 x double], ptr %A, i64 %indvars.iv35, i64 %indvars.iv + %0 = load double, ptr %arrayidx8, align 8 %mul = fmul double %0, %beta - store double %mul, double* %arrayidx12, align 8 + store double %mul, ptr %arrayidx12, align 8 %indvars.iv.next = or i64 %indvars.iv, 1 - %arrayidx8.1 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i64 %indvars.iv35, i64 %indvars.iv.next - %1 = load double, double* %arrayidx8.1, align 8 + %arrayidx8.1 = getelementptr inbounds [1024 x double], ptr %A, i64 %indvars.iv35, i64 %indvars.iv.next + %1 = load double, ptr %arrayidx8.1, align 8 %mul.1 = fmul double %1, %beta - store double %mul.1, double* %arrayidx12, align 8 + store double %mul.1, ptr %arrayidx12, align 8 %indvars.iv.next.1 = or i64 %indvars.iv, 2 - %arrayidx8.2 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i64 %indvars.iv35, i64 %indvars.iv.next.1 - %2 = load double, double* %arrayidx8.2, align 8 + %arrayidx8.2 = getelementptr inbounds [1024 x double], ptr %A, i64 %indvars.iv35, i64 %indvars.iv.next.1 + %2 = load double, ptr %arrayidx8.2, align 8 %mul.2 = fmul double %2, %beta - store double %mul.2, double* %arrayidx12, align 8 + store double %mul.2, ptr %arrayidx12, align 8 %indvars.iv.next.2 = or i64 %indvars.iv, 3 - %arrayidx8.3 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i64 %indvars.iv35, i64 %indvars.iv.next.2 - %3 = load double, double* %arrayidx8.3, align 8 + %arrayidx8.3 = getelementptr inbounds [1024 x double], ptr %A, i64 %indvars.iv35, i64 %indvars.iv.next.2 + %3 = load double, ptr %arrayidx8.3, align 8 %mul.3 = fmul double %3, %beta - store double %mul.3, double* %arrayidx12, align 8 + store double %mul.3, ptr %arrayidx12, align 8 %indvars.iv.next.3 = add nsw i64 %indvars.iv, 4 %exitcond.3 = icmp eq i64 %indvars.iv.next.3, 1024 br i1 %exitcond.3, label %for.inc13, label %for.body6 diff --git a/polly/test/JSONExporter/ImportArrays/ImportArrays-No-name.ll b/polly/test/JSONExporter/ImportArrays/ImportArrays-No-name.ll index fe0cbcae7c14..45bb3495de08 100644 --- a/polly/test/JSONExporter/ImportArrays/ImportArrays-No-name.ll +++ b/polly/test/JSONExporter/ImportArrays/ImportArrays-No-name.ll @@ -15,7 +15,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" ; Function Attrs: nounwind uwtable -define internal void @ia3(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %beta, [1056 x double]* %A, [1024 x double]* %B, [1056 x double]* %arg7) #0 { +define internal void @ia3(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %beta, ptr %A, ptr %B, ptr %arg7) #0 { bb: br label %bb8 @@ -32,11 +32,11 @@ bb10: ; preds = %bb20, %bb9 bb12: ; preds = %bb12, %bb10 %tmp13 = phi i64 [ 0, %bb10 ], [ %tmp18, %bb12 ] - %tmp14 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %tmp, i64 %tmp13 - %tmp15 = load double, double* %tmp14, align 8 + %tmp14 = getelementptr inbounds [1024 x double], ptr %B, i64 %tmp, i64 %tmp13 + %tmp15 = load double, ptr %tmp14, align 8 %tmp16 = fmul double %tmp15, %beta - %tmp17 = getelementptr inbounds [1056 x double], [1056 x double]* %A, i64 %tmp, i64 %tmp11 - store double %tmp16, double* %tmp17, align 8 + %tmp17 = getelementptr inbounds [1056 x double], ptr %A, i64 %tmp, i64 %tmp11 + store double %tmp16, ptr %tmp17, align 8 %tmp18 = add nuw nsw i64 %tmp13, 1 %tmp19 = icmp ne i64 %tmp18, 1024 br i1 %tmp19, label %bb12, label %bb20 diff --git a/polly/test/JSONExporter/ImportArrays/ImportArrays-No-sizes-key.ll b/polly/test/JSONExporter/ImportArrays/ImportArrays-No-sizes-key.ll index e6e1b2023ac1..5bbb974346ba 100644 --- a/polly/test/JSONExporter/ImportArrays/ImportArrays-No-sizes-key.ll +++ b/polly/test/JSONExporter/ImportArrays/ImportArrays-No-sizes-key.ll @@ -15,7 +15,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" ; Function Attrs: nounwind uwtable -define internal void @ia2(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %beta, [1056 x double]* %A, [1024 x double]* %B, [1056 x double]* %arg7) #0 { +define internal void @ia2(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %beta, ptr %A, ptr %B, ptr %arg7) #0 { bb: br label %bb8 @@ -32,11 +32,11 @@ bb10: ; preds = %bb20, %bb9 bb12: ; preds = %bb12, %bb10 %tmp13 = phi i64 [ 0, %bb10 ], [ %tmp18, %bb12 ] - %tmp14 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %tmp, i64 %tmp13 - %tmp15 = load double, double* %tmp14, align 8 + %tmp14 = getelementptr inbounds [1024 x double], ptr %B, i64 %tmp, i64 %tmp13 + %tmp15 = load double, ptr %tmp14, align 8 %tmp16 = fmul double %tmp15, %beta - %tmp17 = getelementptr inbounds [1056 x double], [1056 x double]* %A, i64 %tmp, i64 %tmp11 - store double %tmp16, double* %tmp17, align 8 + %tmp17 = getelementptr inbounds [1056 x double], ptr %A, i64 %tmp, i64 %tmp11 + store double %tmp16, ptr %tmp17, align 8 %tmp18 = add nuw nsw i64 %tmp13, 1 %tmp19 = icmp ne i64 %tmp18, 1024 br i1 %tmp19, label %bb12, label %bb20 diff --git a/polly/test/JSONExporter/ImportArrays/ImportArrays-No-type-key.ll b/polly/test/JSONExporter/ImportArrays/ImportArrays-No-type-key.ll index d23cd3aea938..af013992fca0 100644 --- a/polly/test/JSONExporter/ImportArrays/ImportArrays-No-type-key.ll +++ b/polly/test/JSONExporter/ImportArrays/ImportArrays-No-type-key.ll @@ -15,7 +15,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" ; Function Attrs: nounwind uwtable -define internal void @ia(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %beta, [1056 x double]* %A, [1024 x double]* %B, [1056 x double]* %arg7) #0 { +define internal void @ia(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %beta, ptr %A, ptr %B, ptr %arg7) #0 { bb: br label %bb8 @@ -32,11 +32,11 @@ bb10: ; preds = %bb20, %bb9 bb12: ; preds = %bb12, %bb10 %tmp13 = phi i64 [ 0, %bb10 ], [ %tmp18, %bb12 ] - %tmp14 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %tmp, i64 %tmp13 - %tmp15 = load double, double* %tmp14, align 8 + %tmp14 = getelementptr inbounds [1024 x double], ptr %B, i64 %tmp, i64 %tmp13 + %tmp15 = load double, ptr %tmp14, align 8 %tmp16 = fmul double %tmp15, %beta - %tmp17 = getelementptr inbounds [1056 x double], [1056 x double]* %A, i64 %tmp, i64 %tmp11 - store double %tmp16, double* %tmp17, align 8 + %tmp17 = getelementptr inbounds [1056 x double], ptr %A, i64 %tmp, i64 %tmp11 + store double %tmp16, ptr %tmp17, align 8 %tmp18 = add nuw nsw i64 %tmp13, 1 %tmp19 = icmp ne i64 %tmp18, 1024 br i1 %tmp19, label %bb12, label %bb20 diff --git a/polly/test/JSONExporter/ImportContext/ImportContext-Context-mispelled.ll b/polly/test/JSONExporter/ImportContext/ImportContext-Context-mispelled.ll index 96cd69249723..2490e44ec347 100644 --- a/polly/test/JSONExporter/ImportContext/ImportContext-Context-mispelled.ll +++ b/polly/test/JSONExporter/ImportContext/ImportContext-Context-mispelled.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @ic(i32* %A, i32 %n) { +define void @ic(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportContext/ImportContext-Not-parameter-set.ll b/polly/test/JSONExporter/ImportContext/ImportContext-Not-parameter-set.ll index ba29bbf75a60..66ce6a6ed922 100644 --- a/polly/test/JSONExporter/ImportContext/ImportContext-Not-parameter-set.ll +++ b/polly/test/JSONExporter/ImportContext/ImportContext-Not-parameter-set.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @ic3(i32* %A, i32 %n) { +define void @ic3(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportContext/ImportContext-Unvalid-Context.ll b/polly/test/JSONExporter/ImportContext/ImportContext-Unvalid-Context.ll index 4e93bf59b27f..7bcc54dde52e 100644 --- a/polly/test/JSONExporter/ImportContext/ImportContext-Unvalid-Context.ll +++ b/polly/test/JSONExporter/ImportContext/ImportContext-Unvalid-Context.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @ic2(i32* %A, i32 %n) { +define void @ic2(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportContext/ImportContext-Wrong-dimension.ll b/polly/test/JSONExporter/ImportContext/ImportContext-Wrong-dimension.ll index 0c97eecaa5c5..65cdcbdcdef6 100644 --- a/polly/test/JSONExporter/ImportContext/ImportContext-Wrong-dimension.ll +++ b/polly/test/JSONExporter/ImportContext/ImportContext-Wrong-dimension.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @ic4(i32* %A, i32 %n) { +define void @ic4(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportSchedule/ImportSchedule-No-schedule-key.ll b/polly/test/JSONExporter/ImportSchedule/ImportSchedule-No-schedule-key.ll index 86960e83b889..b52db0876cc5 100644 --- a/polly/test/JSONExporter/ImportSchedule/ImportSchedule-No-schedule-key.ll +++ b/polly/test/JSONExporter/ImportSchedule/ImportSchedule-No-schedule-key.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @is3(i32* %A, i32 %n) { +define void @is3(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportSchedule/ImportSchedule-Schedule-not-valid.ll b/polly/test/JSONExporter/ImportSchedule/ImportSchedule-Schedule-not-valid.ll index 356f0d2ee586..5ce3ad267bb0 100644 --- a/polly/test/JSONExporter/ImportSchedule/ImportSchedule-Schedule-not-valid.ll +++ b/polly/test/JSONExporter/ImportSchedule/ImportSchedule-Schedule-not-valid.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @is4(i32* %A, i32 %n) { +define void @is4(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportSchedule/ImportSchedule-Statements-mispelled.ll b/polly/test/JSONExporter/ImportSchedule/ImportSchedule-Statements-mispelled.ll index e1692213f08b..4329653899b2 100644 --- a/polly/test/JSONExporter/ImportSchedule/ImportSchedule-Statements-mispelled.ll +++ b/polly/test/JSONExporter/ImportSchedule/ImportSchedule-Statements-mispelled.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @is(i32* %A, i32 %n) { +define void @is(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/JSONExporter/ImportSchedule/ImportSchedule-Wrong-number-statements.ll b/polly/test/JSONExporter/ImportSchedule/ImportSchedule-Wrong-number-statements.ll index 449682e5e456..f66fc6c1e5d7 100644 --- a/polly/test/JSONExporter/ImportSchedule/ImportSchedule-Wrong-number-statements.ll +++ b/polly/test/JSONExporter/ImportSchedule/ImportSchedule-Wrong-number-statements.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @is2(i32* %A, i32 %n) { +define void @is2(ptr %A, i32 %n) { entry: br label %for.cond @@ -27,9 +27,9 @@ for.body: ; preds = %for.cond br label %S0 S0: ; preds = %for.body - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %A, align 4 + store i32 %add, ptr %A, align 4 br label %for.inc for.inc: ; preds = %S0 @@ -50,8 +50,8 @@ for.body5: ; preds = %for.cond2 S1: ; preds = %for.body5 %add6 = add nsw i32 %i1.0, 1 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i32 %add6 - store i32 1, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i32 %add6 + store i32 1, ptr %arrayidx7, align 4 br label %for.inc8 for.inc8: ; preds = %S1 diff --git a/polly/test/MaximalStaticExpansion/load_after_store_same_statement.ll b/polly/test/MaximalStaticExpansion/load_after_store_same_statement.ll index 26ed404fd4f6..791210f7710d 100644 --- a/polly/test/MaximalStaticExpansion/load_after_store_same_statement.ll +++ b/polly/test/MaximalStaticExpansion/load_after_store_same_statement.ll @@ -33,7 +33,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @mse(double* %A, double* %B, double* %C, double* %D) { +define void @mse(ptr %A, ptr %B, ptr %C, ptr %D) { entry: br label %entry.split @@ -48,14 +48,12 @@ for.body4: ; preds = %for.body, %for.body %indvars.iv = phi i64 [ 0, %for.body ], [ %indvars.iv.next, %for.body4 ] %0 = trunc i64 %indvars.iv to i32 %conv = sitofp i32 %0 to double - %arrayidx = getelementptr inbounds double, double* %B, i64 %indvars.iv - store double %conv, double* %arrayidx, align 8 - %arrayidx6 = getelementptr inbounds double, double* %B, i64 %indvars.iv - %1 = bitcast double* %arrayidx6 to i64* - %2 = load i64, i64* %1, align 8 - %arrayidx8 = getelementptr inbounds double, double* %C, i64 %indvars.iv - %3 = bitcast double* %arrayidx8 to i64* - store i64 %2, i64* %3, align 8 + %arrayidx = getelementptr inbounds double, ptr %B, i64 %indvars.iv + store double %conv, ptr %arrayidx, align 8 + %arrayidx6 = getelementptr inbounds double, ptr %B, i64 %indvars.iv + %1 = load i64, ptr %arrayidx6, align 8 + %arrayidx8 = getelementptr inbounds double, ptr %C, i64 %indvars.iv + store i64 %1, ptr %arrayidx8, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 10000 br i1 %exitcond, label %for.body4, label %for.inc9 diff --git a/polly/test/MaximalStaticExpansion/read_from_original.ll b/polly/test/MaximalStaticExpansion/read_from_original.ll index 95fd37bc251f..59f9379516c7 100644 --- a/polly/test/MaximalStaticExpansion/read_from_original.ll +++ b/polly/test/MaximalStaticExpansion/read_from_original.ll @@ -36,7 +36,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define double @mse(double* %A, double* %B) { +define double @mse(ptr %A, ptr %B) { entry: br label %entry.split @@ -52,19 +52,17 @@ for.body3: ; preds = %for.body, %for.body %0 = trunc i64 %indvars.iv to i32 %conv = sitofp i32 %0 to double %1 = add nsw i64 %indvars.iv, -1 - %arrayidx = getelementptr inbounds double, double* %B, i64 %1 - store double %conv, double* %arrayidx, align 8 + %arrayidx = getelementptr inbounds double, ptr %B, i64 %1 + store double %conv, ptr %arrayidx, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 3000 br i1 %exitcond, label %for.body3, label %for.end for.end: ; preds = %for.body3 - %arrayidx5 = getelementptr inbounds double, double* %B, i64 %indvars.iv4 - %2 = bitcast double* %arrayidx5 to i64* - %3 = load i64, i64* %2, align 8 - %arrayidx7 = getelementptr inbounds double, double* %A, i64 %indvars.iv4 - %4 = bitcast double* %arrayidx7 to i64* - store i64 %3, i64* %4, align 8 + %arrayidx5 = getelementptr inbounds double, ptr %B, i64 %indvars.iv4 + %2 = load i64, ptr %arrayidx5, align 8 + %arrayidx7 = getelementptr inbounds double, ptr %A, i64 %indvars.iv4 + store i64 %2, ptr %arrayidx7, align 8 %indvars.iv.next5 = add nuw nsw i64 %indvars.iv4, 1 %exitcond6 = icmp ne i64 %indvars.iv.next5, 2000 br i1 %exitcond6, label %for.body, label %for.end10 diff --git a/polly/test/MaximalStaticExpansion/too_many_writes.ll b/polly/test/MaximalStaticExpansion/too_many_writes.ll index 594f2a235dab..50a66cd11d0a 100644 --- a/polly/test/MaximalStaticExpansion/too_many_writes.ll +++ b/polly/test/MaximalStaticExpansion/too_many_writes.ll @@ -39,7 +39,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define double @mse(double* %A, double* %B) { +define double @mse(ptr %A, ptr %B) { entry: br label %entry.split @@ -48,27 +48,25 @@ entry.split: ; preds = %entry for.body: ; preds = %entry.split, %for.end %indvars.iv3 = phi i64 [ 0, %entry.split ], [ %indvars.iv.next4, %for.end ] - %arrayidx = getelementptr inbounds double, double* %B, i64 %indvars.iv3 - store double 2.000000e+00, double* %arrayidx, align 8 + %arrayidx = getelementptr inbounds double, ptr %B, i64 %indvars.iv3 + store double 2.000000e+00, ptr %arrayidx, align 8 br label %for.body3 for.body3: ; preds = %for.body, %for.body3 %indvars.iv = phi i64 [ 0, %for.body ], [ %indvars.iv.next, %for.body3 ] %0 = trunc i64 %indvars.iv to i32 %conv = sitofp i32 %0 to double - %arrayidx5 = getelementptr inbounds double, double* %B, i64 %indvars.iv - store double %conv, double* %arrayidx5, align 8 + %arrayidx5 = getelementptr inbounds double, ptr %B, i64 %indvars.iv + store double %conv, ptr %arrayidx5, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 2000 br i1 %exitcond, label %for.body3, label %for.end for.end: ; preds = %for.body3 - %arrayidx7 = getelementptr inbounds double, double* %B, i64 %indvars.iv3 - %1 = bitcast double* %arrayidx7 to i64* - %2 = load i64, i64* %1, align 8 - %arrayidx9 = getelementptr inbounds double, double* %A, i64 %indvars.iv3 - %3 = bitcast double* %arrayidx9 to i64* - store i64 %2, i64* %3, align 8 + %arrayidx7 = getelementptr inbounds double, ptr %B, i64 %indvars.iv3 + %1 = load i64, ptr %arrayidx7, align 8 + %arrayidx9 = getelementptr inbounds double, ptr %A, i64 %indvars.iv3 + store i64 %1, ptr %arrayidx9, align 8 %indvars.iv.next4 = add nuw nsw i64 %indvars.iv3, 1 %exitcond5 = icmp ne i64 %indvars.iv.next4, 2000 br i1 %exitcond5, label %for.body, label %for.end12 diff --git a/polly/test/MaximalStaticExpansion/working_deps_between_inners.ll b/polly/test/MaximalStaticExpansion/working_deps_between_inners.ll index f754982317fb..8e2707cfee64 100644 --- a/polly/test/MaximalStaticExpansion/working_deps_between_inners.ll +++ b/polly/test/MaximalStaticExpansion/working_deps_between_inners.ll @@ -39,7 +39,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @mse(double* %A, double* %B) { +define void @mse(ptr %A, ptr %B) { entry: br label %entry.split @@ -54,8 +54,8 @@ for.body3: ; preds = %for.body, %for.body %indvars.iv = phi i64 [ 0, %for.body ], [ %indvars.iv.next, %for.body3 ] %0 = trunc i64 %indvars.iv to i32 %conv = sitofp i32 %0 to double - %arrayidx = getelementptr inbounds double, double* %B, i64 %indvars.iv - store double %conv, double* %arrayidx, align 8 + %arrayidx = getelementptr inbounds double, ptr %B, i64 %indvars.iv + store double %conv, ptr %arrayidx, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 10000 br i1 %exitcond, label %for.body3, label %for.end @@ -73,12 +73,12 @@ for.body11: ; preds = %for.body7, %for.bod %2 = add nuw nsw i64 %1, %indvars.iv5 %3 = trunc i64 %2 to i32 %conv13 = sitofp i32 %3 to double - %arrayidx15 = getelementptr inbounds double, double* %B, i64 %indvars.iv5 - %4 = load double, double* %arrayidx15, align 8 + %arrayidx15 = getelementptr inbounds double, ptr %B, i64 %indvars.iv5 + %4 = load double, ptr %arrayidx15, align 8 %mul = fmul double %4, %conv13 %5 = add nuw nsw i64 %indvars.iv9, %indvars.iv14 - %arrayidx18 = getelementptr inbounds double, double* %A, i64 %5 - store double %mul, double* %arrayidx18, align 8 + %arrayidx18 = getelementptr inbounds double, ptr %A, i64 %5 + store double %mul, ptr %arrayidx18, align 8 %indvars.iv.next6 = add nuw nsw i64 %indvars.iv5, 1 %exitcond8 = icmp ne i64 %indvars.iv.next6, 10000 br i1 %exitcond8, label %for.body11, label %for.inc22 diff --git a/polly/test/MaximalStaticExpansion/working_deps_between_inners_phi.ll b/polly/test/MaximalStaticExpansion/working_deps_between_inners_phi.ll index 288148811fbc..2bf49b89db05 100644 --- a/polly/test/MaximalStaticExpansion/working_deps_between_inners_phi.ll +++ b/polly/test/MaximalStaticExpansion/working_deps_between_inners_phi.ll @@ -64,7 +64,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @mse(double* %A, double* %B) { +define void @mse(ptr %A, ptr %B) { entry: br label %entry.split @@ -80,8 +80,8 @@ for.body3: ; preds = %for.body, %for.body %indvars.iv = phi i64 [ 0, %for.body ], [ %indvars.iv.next, %for.body3 ] %0 = trunc i64 %indvars.iv to i32 %conv = sitofp i32 %0 to double - %arrayidx = getelementptr inbounds double, double* %B, i64 %indvars.iv - store double %conv, double* %arrayidx, align 8 + %arrayidx = getelementptr inbounds double, ptr %B, i64 %indvars.iv + store double %conv, ptr %arrayidx, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 10000 br i1 %exitcond, label %for.body3, label %for.end @@ -106,12 +106,12 @@ for.body11: ; preds = %for.body7, %for.bod %3 = trunc i64 %indvars.iv11 to i32 %conv15 = sitofp i32 %3 to double %add16 = fadd double %add14, %conv15 - %arrayidx18 = getelementptr inbounds double, double* %B, i64 %indvars.iv8 - %4 = load double, double* %arrayidx18, align 8 + %arrayidx18 = getelementptr inbounds double, ptr %B, i64 %indvars.iv8 + %4 = load double, ptr %arrayidx18, align 8 %mul = fmul double %add16, %4 %5 = add nuw nsw i64 %indvars.iv11, %indvars.iv15 - %arrayidx21 = getelementptr inbounds double, double* %A, i64 %5 - store double %mul, double* %arrayidx21, align 8 + %arrayidx21 = getelementptr inbounds double, ptr %A, i64 %5 + store double %mul, ptr %arrayidx21, align 8 %indvars.iv.next9 = add nuw nsw i64 %indvars.iv8, 1 %exitcond10 = icmp ne i64 %indvars.iv.next9, 10000 br i1 %exitcond10, label %for.body11, label %for.inc25 diff --git a/polly/test/MaximalStaticExpansion/working_expansion.ll b/polly/test/MaximalStaticExpansion/working_expansion.ll index 269c892cfe22..bb5b2360143f 100644 --- a/polly/test/MaximalStaticExpansion/working_expansion.ll +++ b/polly/test/MaximalStaticExpansion/working_expansion.ll @@ -32,7 +32,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define double @mse(double* %A, double* %B) { +define double @mse(ptr %A, ptr %B) { entry: br label %entry.split @@ -47,19 +47,17 @@ for.body3: ; preds = %for.body, %for.body %indvars.iv = phi i64 [ 0, %for.body ], [ %indvars.iv.next, %for.body3 ] %0 = trunc i64 %indvars.iv to i32 %conv = sitofp i32 %0 to double - %arrayidx = getelementptr inbounds double, double* %B, i64 %indvars.iv - store double %conv, double* %arrayidx, align 8 + %arrayidx = getelementptr inbounds double, ptr %B, i64 %indvars.iv + store double %conv, ptr %arrayidx, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 3000 br i1 %exitcond, label %for.body3, label %for.end for.end: ; preds = %for.body3 - %arrayidx5 = getelementptr inbounds double, double* %B, i64 %indvars.iv3 - %1 = bitcast double* %arrayidx5 to i64* - %2 = load i64, i64* %1, align 8 - %arrayidx7 = getelementptr inbounds double, double* %A, i64 %indvars.iv3 - %3 = bitcast double* %arrayidx7 to i64* - store i64 %2, i64* %3, align 8 + %arrayidx5 = getelementptr inbounds double, ptr %B, i64 %indvars.iv3 + %1 = load i64, ptr %arrayidx5, align 8 + %arrayidx7 = getelementptr inbounds double, ptr %A, i64 %indvars.iv3 + store i64 %1, ptr %arrayidx7, align 8 %indvars.iv.next4 = add nuw nsw i64 %indvars.iv3, 1 %exitcond5 = icmp ne i64 %indvars.iv.next4, 2000 br i1 %exitcond5, label %for.body, label %for.end10 diff --git a/polly/test/MaximalStaticExpansion/working_expansion_multiple_dependences_per_statement.ll b/polly/test/MaximalStaticExpansion/working_expansion_multiple_dependences_per_statement.ll index 3f425a79cbed..89ff7890fc7e 100644 --- a/polly/test/MaximalStaticExpansion/working_expansion_multiple_dependences_per_statement.ll +++ b/polly/test/MaximalStaticExpansion/working_expansion_multiple_dependences_per_statement.ll @@ -40,7 +40,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @mse(double* %A, double* %B, double* %C, double* %D) { +define void @mse(ptr %A, ptr %B, ptr %C, ptr %D) { entry: br label %entry.split @@ -55,8 +55,8 @@ for.body4: ; preds = %for.body, %for.body %indvars.iv = phi i64 [ 0, %for.body ], [ %indvars.iv.next, %for.body4 ] %0 = trunc i64 %indvars.iv to i32 %conv = sitofp i32 %0 to double - %arrayidx = getelementptr inbounds double, double* %B, i64 %indvars.iv - store double %conv, double* %arrayidx, align 8 + %arrayidx = getelementptr inbounds double, ptr %B, i64 %indvars.iv + store double %conv, ptr %arrayidx, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 10000 br i1 %exitcond, label %for.body4, label %for.end @@ -68,25 +68,21 @@ for.body9: ; preds = %for.end, %for.body9 %indvars.iv4 = phi i64 [ 0, %for.end ], [ %indvars.iv.next5, %for.body9 ] %1 = trunc i64 %indvars.iv4 to i32 %conv10 = sitofp i32 %1 to double - %arrayidx12 = getelementptr inbounds double, double* %D, i64 %indvars.iv4 - store double %conv10, double* %arrayidx12, align 8 + %arrayidx12 = getelementptr inbounds double, ptr %D, i64 %indvars.iv4 + store double %conv10, ptr %arrayidx12, align 8 %indvars.iv.next5 = add nuw nsw i64 %indvars.iv4, 1 %exitcond6 = icmp ne i64 %indvars.iv.next5, 10000 br i1 %exitcond6, label %for.body9, label %for.end15 for.end15: ; preds = %for.body9 - %arrayidx17 = getelementptr inbounds double, double* %B, i64 %indvars.iv7 - %2 = bitcast double* %arrayidx17 to i64* - %3 = load i64, i64* %2, align 8 - %arrayidx19 = getelementptr inbounds double, double* %A, i64 %indvars.iv7 - %4 = bitcast double* %arrayidx19 to i64* - store i64 %3, i64* %4, align 8 - %arrayidx21 = getelementptr inbounds double, double* %D, i64 %indvars.iv7 - %5 = bitcast double* %arrayidx21 to i64* - %6 = load i64, i64* %5, align 8 - %arrayidx23 = getelementptr inbounds double, double* %C, i64 %indvars.iv7 - %7 = bitcast double* %arrayidx23 to i64* - store i64 %6, i64* %7, align 8 + %arrayidx17 = getelementptr inbounds double, ptr %B, i64 %indvars.iv7 + %2 = load i64, ptr %arrayidx17, align 8 + %arrayidx19 = getelementptr inbounds double, ptr %A, i64 %indvars.iv7 + store i64 %2, ptr %arrayidx19, align 8 + %arrayidx21 = getelementptr inbounds double, ptr %D, i64 %indvars.iv7 + %3 = load i64, ptr %arrayidx21, align 8 + %arrayidx23 = getelementptr inbounds double, ptr %C, i64 %indvars.iv7 + store i64 %3, ptr %arrayidx23, align 8 %indvars.iv.next8 = add nuw nsw i64 %indvars.iv7, 1 %exitcond9 = icmp ne i64 %indvars.iv.next8, 10000 br i1 %exitcond9, label %for.body, label %for.end26 diff --git a/polly/test/MaximalStaticExpansion/working_expansion_multiple_instruction_per_statement.ll b/polly/test/MaximalStaticExpansion/working_expansion_multiple_instruction_per_statement.ll index 62edfa626e13..7ffd39f0f534 100644 --- a/polly/test/MaximalStaticExpansion/working_expansion_multiple_instruction_per_statement.ll +++ b/polly/test/MaximalStaticExpansion/working_expansion_multiple_instruction_per_statement.ll @@ -38,7 +38,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @mse(double* %A, double* %B, double* %C, double* %D) { +define void @mse(ptr %A, ptr %B, ptr %C, ptr %D) { entry: br label %entry.split @@ -53,29 +53,25 @@ for.body4: ; preds = %for.body, %for.body %indvars.iv = phi i64 [ 0, %for.body ], [ %indvars.iv.next, %for.body4 ] %0 = trunc i64 %indvars.iv to i32 %conv = sitofp i32 %0 to double - %arrayidx = getelementptr inbounds double, double* %B, i64 %indvars.iv - store double %conv, double* %arrayidx, align 8 + %arrayidx = getelementptr inbounds double, ptr %B, i64 %indvars.iv + store double %conv, ptr %arrayidx, align 8 %1 = trunc i64 %indvars.iv to i32 %conv5 = sitofp i32 %1 to double - %arrayidx7 = getelementptr inbounds double, double* %D, i64 %indvars.iv - store double %conv5, double* %arrayidx7, align 8 + %arrayidx7 = getelementptr inbounds double, ptr %D, i64 %indvars.iv + store double %conv5, ptr %arrayidx7, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 10000 br i1 %exitcond, label %for.body4, label %for.end for.end: ; preds = %for.body4 - %arrayidx9 = getelementptr inbounds double, double* %B, i64 %indvars.iv3 - %2 = bitcast double* %arrayidx9 to i64* - %3 = load i64, i64* %2, align 8 - %arrayidx11 = getelementptr inbounds double, double* %A, i64 %indvars.iv3 - %4 = bitcast double* %arrayidx11 to i64* - store i64 %3, i64* %4, align 8 - %arrayidx13 = getelementptr inbounds double, double* %D, i64 %indvars.iv3 - %5 = bitcast double* %arrayidx13 to i64* - %6 = load i64, i64* %5, align 8 - %arrayidx15 = getelementptr inbounds double, double* %C, i64 %indvars.iv3 - %7 = bitcast double* %arrayidx15 to i64* - store i64 %6, i64* %7, align 8 + %arrayidx9 = getelementptr inbounds double, ptr %B, i64 %indvars.iv3 + %2 = load i64, ptr %arrayidx9, align 8 + %arrayidx11 = getelementptr inbounds double, ptr %A, i64 %indvars.iv3 + store i64 %2, ptr %arrayidx11, align 8 + %arrayidx13 = getelementptr inbounds double, ptr %D, i64 %indvars.iv3 + %3 = load i64, ptr %arrayidx13, align 8 + %arrayidx15 = getelementptr inbounds double, ptr %C, i64 %indvars.iv3 + store i64 %3, ptr %arrayidx15, align 8 %indvars.iv.next4 = add nuw nsw i64 %indvars.iv3, 1 %exitcond5 = icmp ne i64 %indvars.iv.next4, 10000 br i1 %exitcond5, label %for.body, label %for.end18 diff --git a/polly/test/MaximalStaticExpansion/working_phi_expansion.ll b/polly/test/MaximalStaticExpansion/working_phi_expansion.ll index 666d8c2bc4fe..43919c61b045 100644 --- a/polly/test/MaximalStaticExpansion/working_phi_expansion.ll +++ b/polly/test/MaximalStaticExpansion/working_phi_expansion.ll @@ -46,7 +46,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @tmp(double* %A, double* %B) { +define void @tmp(ptr %A, ptr %B) { entry: br label %entry.split @@ -68,8 +68,8 @@ for.inc: ; preds = %for.body, %for.inc for.end: ; preds = %for.inc %add.lcssa = phi double [ %add, %for.inc ] - %arrayidx = getelementptr inbounds double, double* %B, i64 %indvars.iv - store double %add.lcssa, double* %arrayidx, align 8 + %arrayidx = getelementptr inbounds double, ptr %B, i64 %indvars.iv + store double %add.lcssa, ptr %arrayidx, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond5 = icmp ne i64 %indvars.iv.next, 10000 br i1 %exitcond5, label %for.body, label %for.end7 diff --git a/polly/test/MaximalStaticExpansion/working_phi_two_scalars.ll b/polly/test/MaximalStaticExpansion/working_phi_two_scalars.ll index 55c8466590c9..a581a389e742 100644 --- a/polly/test/MaximalStaticExpansion/working_phi_two_scalars.ll +++ b/polly/test/MaximalStaticExpansion/working_phi_two_scalars.ll @@ -57,7 +57,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @tmp(double* %A, double* %B) { +define void @tmp(ptr %A, ptr %B) { entry: br label %entry.split diff --git a/polly/test/MaximalStaticExpansion/working_value_expansion.ll b/polly/test/MaximalStaticExpansion/working_value_expansion.ll index ca910b2052e0..d54eff9e03ec 100644 --- a/polly/test/MaximalStaticExpansion/working_value_expansion.ll +++ b/polly/test/MaximalStaticExpansion/working_value_expansion.ll @@ -33,7 +33,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @mse(double* %A, double* %B) { +define void @mse(ptr %A, ptr %B) { entry: br label %entry.split @@ -49,15 +49,15 @@ for.body: ; preds = %entry.split, %for.e for.body5: ; preds = %for.body, %for.body5 %indvars.iv = phi i64 [ 0, %for.body ], [ %indvars.iv.next, %for.body5 ] %add = fadd double %conv, 3.000000e+00 - %arrayidx = getelementptr inbounds double, double* %A, i64 %indvars.iv - store double %add, double* %arrayidx, align 8 + %arrayidx = getelementptr inbounds double, ptr %A, i64 %indvars.iv + store double %add, ptr %arrayidx, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 10000 br i1 %exitcond, label %for.body5, label %for.end for.end: ; preds = %for.body5 - %arrayidx7 = getelementptr inbounds double, double* %B, i64 %indvars.iv3 - store double %conv, double* %arrayidx7, align 8 + %arrayidx7 = getelementptr inbounds double, ptr %B, i64 %indvars.iv3 + store double %conv, ptr %arrayidx7, align 8 %indvars.iv.next4 = add nuw nsw i64 %indvars.iv3, 1 %exitcond5 = icmp ne i64 %indvars.iv.next4, 10000 br i1 %exitcond5, label %for.body, label %for.end10 diff --git a/polly/test/PruneUnprofitable/prune_only_scalardeps.ll b/polly/test/PruneUnprofitable/prune_only_scalardeps.ll index d6f2e1be596b..31db5560c051 100644 --- a/polly/test/PruneUnprofitable/prune_only_scalardeps.ll +++ b/polly/test/PruneUnprofitable/prune_only_scalardeps.ll @@ -14,7 +14,7 @@ ; } ; return x; ; -define double @func(i32 %n, i32 %m, double* noalias nonnull %A, double* noalias nonnull %B) { +define double @func(i32 %n, i32 %m, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %outer.for @@ -31,8 +31,8 @@ outer.for: br i1 %j.cmp, label %body, label %inner.exit body: - store double %inner.phi, double* %B - %load = load double, double* %A + store double %inner.phi, ptr %B + %load = load double, ptr %A br label %inner.inc inner.inc: diff --git a/polly/test/ScheduleOptimizer/2012-04-16-Trivially-vectorizable-loops.ll b/polly/test/ScheduleOptimizer/2012-04-16-Trivially-vectorizable-loops.ll index ef786524a0ea..8379da290769 100644 --- a/polly/test/ScheduleOptimizer/2012-04-16-Trivially-vectorizable-loops.ll +++ b/polly/test/ScheduleOptimizer/2012-04-16-Trivially-vectorizable-loops.ll @@ -1,12 +1,12 @@ ; RUN: opt %loadPolly -basic-aa -polly-opt-isl -polly-vectorizer=polly -disable-output < %s target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" -%struct._IO_FILE = type { i32, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, %struct._IO_marker*, %struct._IO_FILE*, i32, i32, i64, i16, i8, [1 x i8], i8*, i64, i8*, i8*, i8*, i8*, i64, i32, [20 x i8] } -%struct._IO_marker = type { %struct._IO_marker*, %struct._IO_FILE*, i32 } +%struct._IO_FILE = type { i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i64, i16, i8, [1 x i8], ptr, i64, ptr, ptr, ptr, ptr, i64, i32, [20 x i8] } +%struct._IO_marker = type { ptr, ptr, i32 } @A = common global [1536 x [1536 x float]] zeroinitializer, align 16 @B = common global [1536 x [1536 x float]] zeroinitializer, align 16 -@stdout = external global %struct._IO_FILE* +@stdout = external global ptr @.str = private unnamed_addr constant [5 x i8] c"%lf \00", align 1 @C = common global [1536 x [1536 x float]] zeroinitializer, align 16 @.str1 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1 @@ -37,9 +37,9 @@ for.body3: ; preds = %for.cond1 %conv4 = fptrunc double %div to float %idxprom = sext i32 %j.0 to i64 %idxprom5 = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @A, i32 0, i64 %idxprom5 - %arrayidx6 = getelementptr inbounds [1536 x float], [1536 x float]* %arrayidx, i32 0, i64 %idxprom - store float %conv4, float* %arrayidx6, align 4 + %arrayidx = getelementptr inbounds [1536 x [1536 x float]], ptr @A, i32 0, i64 %idxprom5 + %arrayidx6 = getelementptr inbounds [1536 x float], ptr %arrayidx, i32 0, i64 %idxprom + store float %conv4, ptr %arrayidx6, align 4 %mul7 = mul nsw i32 %i.0, %j.0 %rem8 = srem i32 %mul7, 1024 %add9 = add nsw i32 1, %rem8 @@ -48,9 +48,9 @@ for.body3: ; preds = %for.cond1 %conv12 = fptrunc double %div11 to float %idxprom13 = sext i32 %j.0 to i64 %idxprom14 = sext i32 %i.0 to i64 - %arrayidx15 = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @B, i32 0, i64 %idxprom14 - %arrayidx16 = getelementptr inbounds [1536 x float], [1536 x float]* %arrayidx15, i32 0, i64 %idxprom13 - store float %conv12, float* %arrayidx16, align 4 + %arrayidx15 = getelementptr inbounds [1536 x [1536 x float]], ptr @B, i32 0, i64 %idxprom14 + %arrayidx16 = getelementptr inbounds [1536 x float], ptr %arrayidx15, i32 0, i64 %idxprom13 + store float %conv12, ptr %arrayidx16, align 4 br label %for.inc for.inc: ; preds = %for.body3 @@ -86,21 +86,21 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %cmp2, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %0 = load %struct._IO_FILE*, %struct._IO_FILE** @stdout, align 8 + %0 = load ptr, ptr @stdout, align 8 %idxprom = sext i32 %j.0 to i64 %idxprom4 = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @C, i32 0, i64 %idxprom4 - %arrayidx5 = getelementptr inbounds [1536 x float], [1536 x float]* %arrayidx, i32 0, i64 %idxprom - %1 = load float, float* %arrayidx5, align 4 + %arrayidx = getelementptr inbounds [1536 x [1536 x float]], ptr @C, i32 0, i64 %idxprom4 + %arrayidx5 = getelementptr inbounds [1536 x float], ptr %arrayidx, i32 0, i64 %idxprom + %1 = load float, ptr %arrayidx5, align 4 %conv = fpext float %1 to double - %call = call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i32 0, i32 0), double %conv) + %call = call i32 (ptr, ptr, ...) @fprintf(ptr %0, ptr @.str, double %conv) %rem = srem i32 %j.0, 80 %cmp6 = icmp eq i32 %rem, 79 br i1 %cmp6, label %if.then, label %if.end if.then: ; preds = %for.body3 - %2 = load %struct._IO_FILE*, %struct._IO_FILE** @stdout, align 8 - %call8 = call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %2, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str1, i32 0, i32 0)) + %2 = load ptr, ptr @stdout, align 8 + %call8 = call i32 (ptr, ptr, ...) @fprintf(ptr %2, ptr @.str1) br label %if.end if.end: ; preds = %if.then, %for.body3 @@ -111,8 +111,8 @@ for.inc: ; preds = %if.end br label %for.cond1 for.end: ; preds = %for.cond1 - %3 = load %struct._IO_FILE*, %struct._IO_FILE** @stdout, align 8 - %call9 = call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str1, i32 0, i32 0)) + %3 = load ptr, ptr @stdout, align 8 + %call9 = call i32 (ptr, ptr, ...) @fprintf(ptr %3, ptr @.str1) br label %for.inc10 for.inc10: ; preds = %for.end @@ -123,7 +123,7 @@ for.end12: ; preds = %for.cond ret void } -declare i32 @fprintf(%struct._IO_FILE*, i8*, ...) +declare i32 @fprintf(ptr, ptr, ...) define i32 @main() nounwind uwtable { entry: @@ -146,9 +146,9 @@ for.cond1: ; preds = %for.inc25, %for.bod for.body3: ; preds = %for.cond1 %idxprom = sext i32 %j.0 to i64 %idxprom4 = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @C, i32 0, i64 %idxprom4 - %arrayidx5 = getelementptr inbounds [1536 x float], [1536 x float]* %arrayidx, i32 0, i64 %idxprom - store float 0.000000e+00, float* %arrayidx5, align 4 + %arrayidx = getelementptr inbounds [1536 x [1536 x float]], ptr @C, i32 0, i64 %idxprom4 + %arrayidx5 = getelementptr inbounds [1536 x float], ptr %arrayidx, i32 0, i64 %idxprom + store float 0.000000e+00, ptr %arrayidx5, align 4 br label %for.cond6 for.cond6: ; preds = %for.inc, %for.body3 @@ -159,26 +159,26 @@ for.cond6: ; preds = %for.inc, %for.body3 for.body8: ; preds = %for.cond6 %idxprom9 = sext i32 %j.0 to i64 %idxprom10 = sext i32 %i.0 to i64 - %arrayidx11 = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @C, i32 0, i64 %idxprom10 - %arrayidx12 = getelementptr inbounds [1536 x float], [1536 x float]* %arrayidx11, i32 0, i64 %idxprom9 - %0 = load float, float* %arrayidx12, align 4 + %arrayidx11 = getelementptr inbounds [1536 x [1536 x float]], ptr @C, i32 0, i64 %idxprom10 + %arrayidx12 = getelementptr inbounds [1536 x float], ptr %arrayidx11, i32 0, i64 %idxprom9 + %0 = load float, ptr %arrayidx12, align 4 %idxprom13 = sext i32 %k.0 to i64 %idxprom14 = sext i32 %i.0 to i64 - %arrayidx15 = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @A, i32 0, i64 %idxprom14 - %arrayidx16 = getelementptr inbounds [1536 x float], [1536 x float]* %arrayidx15, i32 0, i64 %idxprom13 - %1 = load float, float* %arrayidx16, align 4 + %arrayidx15 = getelementptr inbounds [1536 x [1536 x float]], ptr @A, i32 0, i64 %idxprom14 + %arrayidx16 = getelementptr inbounds [1536 x float], ptr %arrayidx15, i32 0, i64 %idxprom13 + %1 = load float, ptr %arrayidx16, align 4 %idxprom17 = sext i32 %j.0 to i64 %idxprom18 = sext i32 %k.0 to i64 - %arrayidx19 = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @B, i32 0, i64 %idxprom18 - %arrayidx20 = getelementptr inbounds [1536 x float], [1536 x float]* %arrayidx19, i32 0, i64 %idxprom17 - %2 = load float, float* %arrayidx20, align 4 + %arrayidx19 = getelementptr inbounds [1536 x [1536 x float]], ptr @B, i32 0, i64 %idxprom18 + %arrayidx20 = getelementptr inbounds [1536 x float], ptr %arrayidx19, i32 0, i64 %idxprom17 + %2 = load float, ptr %arrayidx20, align 4 %mul = fmul float %1, %2 %add = fadd float %0, %mul %idxprom21 = sext i32 %j.0 to i64 %idxprom22 = sext i32 %i.0 to i64 - %arrayidx23 = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @C, i32 0, i64 %idxprom22 - %arrayidx24 = getelementptr inbounds [1536 x float], [1536 x float]* %arrayidx23, i32 0, i64 %idxprom21 - store float %add, float* %arrayidx24, align 4 + %arrayidx23 = getelementptr inbounds [1536 x [1536 x float]], ptr @C, i32 0, i64 %idxprom22 + %arrayidx24 = getelementptr inbounds [1536 x float], ptr %arrayidx23, i32 0, i64 %idxprom21 + store float %add, ptr %arrayidx24, align 4 br label %for.inc for.inc: ; preds = %for.body8 diff --git a/polly/test/ScheduleOptimizer/2013-04-11-Empty-Domain-two.ll b/polly/test/ScheduleOptimizer/2013-04-11-Empty-Domain-two.ll index 3eef93c9f951..3f4237b330b2 100644 --- a/polly/test/ScheduleOptimizer/2013-04-11-Empty-Domain-two.ll +++ b/polly/test/ScheduleOptimizer/2013-04-11-Empty-Domain-two.ll @@ -15,7 +15,7 @@ for: for.inc: %indvar.next = add i32 %indvar, 1 - store double 1.0, double* %A + store double 1.0, ptr %A br label %for return: diff --git a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-double.ll b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-double.ll index 81f5d4988166..a61af2d092f3 100644 --- a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-double.ll +++ b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-double.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-reschedule=0 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s ; RUN: opt %loadPolly -polly-reschedule=1 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s -define void @func(i32 %n, [1024 x double]* noalias nonnull %A, [1024 x double]* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %outer.for1 @@ -16,8 +16,8 @@ outer.for1: br i1 %j1.cmp, label %body1, label %exit1 body1: - %arrayidx1 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i32 %k1, i32 %j1 - store double 21.0, double* %arrayidx1 + %arrayidx1 = getelementptr inbounds [1024 x double], ptr %A, i32 %k1, i32 %j1 + store double 21.0, ptr %arrayidx1 br label %inc1 inc1: @@ -45,8 +45,8 @@ outer.for2: br i1 %j2.cmp, label %body2, label %exit2 body2: - %arrayidx2 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i32 %k2, i32 %j2 - store double 42.0, double* %arrayidx2 + %arrayidx2 = getelementptr inbounds [1024 x double], ptr %A, i32 %k2, i32 %j2 + store double 42.0, ptr %arrayidx2 br label %inc2 inc2: diff --git a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-except-first.ll b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-except-first.ll index ed1451ab305b..185d5c5b8c25 100644 --- a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-except-first.ll +++ b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-except-first.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-reschedule=0 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s --check-prefixes=CHECK,RAW ; RUN: opt %loadPolly -polly-reschedule=1 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s --check-prefixes=CHECK,OPT -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B, i32 %k) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B, i32 %k) { entry: br label %for1 @@ -13,8 +13,8 @@ for1: body1: %idx1 = add i32 %j1, %k - %arrayidx1 = getelementptr inbounds double, double* %B, i32 %idx1 - store double 21.0, double* %arrayidx1 + %arrayidx1 = getelementptr inbounds double, ptr %B, i32 %idx1 + store double 21.0, ptr %arrayidx1 br label %inc1 inc1: @@ -31,8 +31,8 @@ for2: br i1 %j2.cmp, label %body2, label %exit2 body2: - %arrayidx2 = getelementptr inbounds double, double* %B, i32 %j2 - store double 42.0, double* %arrayidx2 + %arrayidx2 = getelementptr inbounds double, ptr %B, i32 %j2 + store double 42.0, ptr %arrayidx2 br label %inc2 inc2: @@ -49,8 +49,8 @@ for3: br i1 %j3.cmp, label %body3, label %exit3 body3: - %arrayidx3 = getelementptr inbounds double, double* %A, i32 %j3 - store double 84.0, double* %arrayidx3 + %arrayidx3 = getelementptr inbounds double, ptr %A, i32 %j3 + store double 84.0, ptr %arrayidx3 br label %inc3 inc3: diff --git a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-except-third.ll b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-except-third.ll index ac21e6924406..f1eca0ede061 100644 --- a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-except-third.ll +++ b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-except-third.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-reschedule=0 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s --check-prefixes=CHECK,RAW ; RUN: opt %loadPolly -polly-reschedule=1 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s --check-prefixes=CHECK -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B, i32 %k) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B, i32 %k) { entry: br label %for1 @@ -12,8 +12,8 @@ for1: br i1 %j1.cmp, label %body1, label %exit1 body1: - %arrayidx1 = getelementptr inbounds double, double* %A, i32 %j1 - store double 21.0, double* %arrayidx1 + %arrayidx1 = getelementptr inbounds double, ptr %A, i32 %j1 + store double 21.0, ptr %arrayidx1 br label %inc1 inc1: @@ -30,8 +30,8 @@ for2: br i1 %j2.cmp, label %body2, label %exit2 body2: - %arrayidx2 = getelementptr inbounds double, double* %B, i32 %j1 - store double 42.0, double* %arrayidx2 + %arrayidx2 = getelementptr inbounds double, ptr %B, i32 %j1 + store double 42.0, ptr %arrayidx2 br label %inc2 inc2: @@ -49,8 +49,8 @@ for3: body3: %idx3 = add i32 %j3, %k - %arrayidx3 = getelementptr inbounds double, double* %B, i32 %idx3 - store double 84.0, double* %arrayidx3 + %arrayidx3 = getelementptr inbounds double, ptr %B, i32 %idx3 + store double 84.0, ptr %arrayidx3 br label %inc3 inc3: diff --git a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner-carried.ll b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner-carried.ll index 779694ae3eb2..35903ced7741 100644 --- a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner-carried.ll +++ b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner-carried.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-reschedule=0 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s --check-prefixes=CHECK,RAW ; RUN: opt %loadPolly -polly-reschedule=1 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s --check-prefixes=CHECK,OPT -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %outer.for @@ -16,8 +16,8 @@ outer.for: br i1 %j1.cmp, label %body1, label %exit1 body1: - %arrayidx1 = getelementptr inbounds double, double* %A, i32 %j1 - store double 21.0, double* %arrayidx1 + %arrayidx1 = getelementptr inbounds double, ptr %A, i32 %j1 + store double 21.0, ptr %arrayidx1 br label %inc1 inc1: @@ -33,8 +33,8 @@ outer.for: br i1 %j2.cmp, label %body2, label %exit2 body2: - %arrayidx2 = getelementptr inbounds double, double* %A, i32 %j2 - store double 42.0, double* %arrayidx2 + %arrayidx2 = getelementptr inbounds double, ptr %A, i32 %j2 + store double 42.0, ptr %arrayidx2 br label %inc2 inc2: diff --git a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner-third.ll b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner-third.ll index 00f25eb4890d..1fb8c001069f 100644 --- a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner-third.ll +++ b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner-third.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-reschedule=0 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s --check-prefixes=CHECK,RAW ; RUN: opt %loadPolly -polly-reschedule=1 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s --check-prefixes=CHECK -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B, i32 %k) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B, i32 %k) { entry: br label %for1 @@ -12,8 +12,8 @@ for1: br i1 %j1.cmp, label %body1, label %exit1 body1: - %arrayidx1 = getelementptr inbounds double, double* %A, i32 %j1 - store double 21.0, double* %arrayidx1 + %arrayidx1 = getelementptr inbounds double, ptr %A, i32 %j1 + store double 21.0, ptr %arrayidx1 br label %inc1 inc1: @@ -30,8 +30,8 @@ for2: br i1 %j2.cmp, label %body2, label %exit2 body2: - %arrayidx2 = getelementptr inbounds double, double* %B, i32 %j2 - store double 42.0, double* %arrayidx2 + %arrayidx2 = getelementptr inbounds double, ptr %B, i32 %j2 + store double 42.0, ptr %arrayidx2 br label %inc2 inc2: @@ -49,8 +49,8 @@ for3: body3: %idx3 = add i32 %j3, %k - %arrayidx3 = getelementptr inbounds double, double* %B, i32 %idx3 - store double 84.0, double* %arrayidx3 + %arrayidx3 = getelementptr inbounds double, ptr %B, i32 %idx3 + store double 84.0, ptr %arrayidx3 br label %inc3 inc3: diff --git a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner.ll b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner.ll index 53cd6a6f3912..2db6833fa897 100644 --- a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner.ll +++ b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-reschedule=0 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s ; RUN: opt %loadPolly -polly-reschedule=1 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s -define void @func(i32 %n, [1024 x double]* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %outer.for @@ -16,8 +16,8 @@ outer.for: br i1 %j1.cmp, label %body1, label %exit1 body1: - %arrayidx1 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i32 %k, i32 %j1 - store double 21.0, double* %arrayidx1 + %arrayidx1 = getelementptr inbounds [1024 x double], ptr %A, i32 %k, i32 %j1 + store double 21.0, ptr %arrayidx1 br label %inc1 inc1: @@ -33,8 +33,8 @@ outer.for: br i1 %j2.cmp, label %body2, label %exit2 body2: - %arrayidx2 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i32 %k, i32 %j2 - store double 42.0, double* %arrayidx2 + %arrayidx2 = getelementptr inbounds [1024 x double], ptr %A, i32 %k, i32 %j2 + store double 42.0, ptr %arrayidx2 br label %inc2 inc2: diff --git a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-simple.ll b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-simple.ll index 06ba9a520e3c..49d008ba2cfa 100644 --- a/polly/test/ScheduleOptimizer/GreedyFuse/fuse-simple.ll +++ b/polly/test/ScheduleOptimizer/GreedyFuse/fuse-simple.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-reschedule=0 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s ; RUN: opt %loadPolly -polly-reschedule=1 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for1 @@ -11,8 +11,8 @@ for1: br i1 %j1.cmp, label %body1, label %exit1 body1: - %arrayidx1 = getelementptr inbounds double, double* %A, i32 %j1 - store double 21.0, double* %arrayidx1 + %arrayidx1 = getelementptr inbounds double, ptr %A, i32 %j1 + store double 21.0, ptr %arrayidx1 br label %inc1 inc1: @@ -28,8 +28,8 @@ for2: br i1 %j2.cmp, label %body2, label %exit2 body2: - %arrayidx2 = getelementptr inbounds double, double* %A, i32 %j2 - store double 42.0, double* %arrayidx2 + %arrayidx2 = getelementptr inbounds double, ptr %A, i32 %j2 + store double 42.0, ptr %arrayidx2 br label %inc2 inc2: diff --git a/polly/test/ScheduleOptimizer/GreedyFuse/nofuse-simple.ll b/polly/test/ScheduleOptimizer/GreedyFuse/nofuse-simple.ll index 41e72e7de89a..175b85997ec0 100644 --- a/polly/test/ScheduleOptimizer/GreedyFuse/nofuse-simple.ll +++ b/polly/test/ScheduleOptimizer/GreedyFuse/nofuse-simple.ll @@ -3,7 +3,7 @@ ; This could theoretically be fused by adjusting the offset of the second loop by %k (instead of relying on schedule dimensions). -define void @func(i32 %n, double* noalias nonnull %A, i32 %k) { +define void @func(i32 %n, ptr noalias nonnull %A, i32 %k) { entry: br label %for1 @@ -13,8 +13,8 @@ for1: br i1 %j1.cmp, label %body1, label %exit1 body1: - %arrayidx1 = getelementptr inbounds double, double* %A, i32 %j1 - store double 21.0, double* %arrayidx1 + %arrayidx1 = getelementptr inbounds double, ptr %A, i32 %j1 + store double 21.0, ptr %arrayidx1 br label %inc1 inc1: @@ -31,8 +31,8 @@ for2: body2: %idx2 = add i32 %j2, %k - %arrayidx2 = getelementptr inbounds double, double* %A, i32 %idx2 - store double 42.0, double* %arrayidx2 + %arrayidx2 = getelementptr inbounds double, ptr %A, i32 %idx2 + store double 42.0, ptr %arrayidx2 br label %inc2 inc2: diff --git a/polly/test/ScheduleOptimizer/GreedyFuse/nofuse-with-middle.ll b/polly/test/ScheduleOptimizer/GreedyFuse/nofuse-with-middle.ll index 2b8b1c785dda..48ba20347d55 100644 --- a/polly/test/ScheduleOptimizer/GreedyFuse/nofuse-with-middle.ll +++ b/polly/test/ScheduleOptimizer/GreedyFuse/nofuse-with-middle.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-reschedule=0 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s ; RUN: opt %loadPolly -polly-reschedule=1 -polly-loopfusion-greedy=1 -polly-postopts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B, i32 %k) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B, i32 %k) { entry: br label %for1 @@ -13,8 +13,8 @@ for1: body1: %idx1 = add i32 %j1, %k - %arrayidx1 = getelementptr inbounds double, double* %A, i32 %j1 - store double 21.0, double* %arrayidx1 + %arrayidx1 = getelementptr inbounds double, ptr %A, i32 %j1 + store double 21.0, ptr %arrayidx1 br label %inc1 inc1: @@ -26,7 +26,7 @@ exit1: middle2: - store double 52.0, double* %A + store double 52.0, ptr %A br label %for3 @@ -36,8 +36,8 @@ for3: br i1 %j3.cmp, label %body3, label %exit3 body3: - %arrayidx3 = getelementptr inbounds double, double* %B, i32 %j3 - store double 84.0, double* %arrayidx3 + %arrayidx3 = getelementptr inbounds double, ptr %B, i32 %j3 + store double 84.0, ptr %arrayidx3 br label %inc3 inc3: diff --git a/polly/test/ScheduleOptimizer/ManualOptimization/disable_nonforced.ll b/polly/test/ScheduleOptimizer/ManualOptimization/disable_nonforced.ll index 344c46fe0b0d..537721f8718a 100644 --- a/polly/test/ScheduleOptimizer/ManualOptimization/disable_nonforced.ll +++ b/polly/test/ScheduleOptimizer/ManualOptimization/disable_nonforced.ll @@ -3,7 +3,7 @@ ; Check that the disable_nonforced metadata is honored; optimization ; heuristics/rescheduling must not be applied. ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -21,8 +21,8 @@ for: bodyA: %mul = mul nuw nsw i32 %j, 128 %add = add nuw nsw i32 %mul, %i - %A_idx = getelementptr inbounds double, double* %A, i32 %add - store double 0.0, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %add + store double 0.0, ptr %A_idx br label %inner.inc diff --git a/polly/test/ScheduleOptimizer/ManualOptimization/distribute_heuristic.ll b/polly/test/ScheduleOptimizer/ManualOptimization/distribute_heuristic.ll index 107913e7aba5..aaf4d27f4c5e 100644 --- a/polly/test/ScheduleOptimizer/ManualOptimization/distribute_heuristic.ll +++ b/polly/test/ScheduleOptimizer/ManualOptimization/distribute_heuristic.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-reschedule=0 -polly-pragma-based-opts=1 -polly-print-opt-isl -disable-output < %s | FileCheck %s --match-full-lines --check-prefix=ON ; RUN: opt %loadPolly -polly-reschedule=0 -polly-pragma-based-opts=0 -polly-print-opt-isl -disable-output < %s | FileCheck %s --match-full-lines --check-prefix=OFF ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -11,9 +11,9 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A + store double 42.0, ptr %A %c = fadd double 21.0, 21.0 - store double %c, double* %B + store double %c, ptr %B br label %inc inc: diff --git a/polly/test/ScheduleOptimizer/ManualOptimization/distribute_illegal_looploc.ll b/polly/test/ScheduleOptimizer/ManualOptimization/distribute_illegal_looploc.ll index f464f5a367e0..b1e94227c9a5 100644 --- a/polly/test/ScheduleOptimizer/ManualOptimization/distribute_illegal_looploc.ll +++ b/polly/test/ScheduleOptimizer/ManualOptimization/distribute_illegal_looploc.ll @@ -13,10 +13,10 @@ source_filename = "distribute_illegal.c" target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define dso_local void @foo(double* %A, double* %B) #0 !dbg !7 { +define dso_local void @foo(ptr %A, ptr %B) #0 !dbg !7 { entry: - call void @llvm.dbg.value(metadata double* %A, metadata !13, metadata !DIExpression()), !dbg !18 - call void @llvm.dbg.value(metadata double* %B, metadata !14, metadata !DIExpression()), !dbg !18 + call void @llvm.dbg.value(metadata ptr %A, metadata !13, metadata !DIExpression()), !dbg !18 + call void @llvm.dbg.value(metadata ptr %B, metadata !14, metadata !DIExpression()), !dbg !18 call void @llvm.dbg.value(metadata i32 1, metadata !15, metadata !DIExpression()), !dbg !19 br label %for.cond, !dbg !20 @@ -29,16 +29,16 @@ for.cond: for.body: %conv = sitofp i32 %i.0 to double, !dbg !24 %idxprom = sext i32 %i.0 to i64, !dbg !26 - %arrayidx = getelementptr inbounds double, double* %A, i64 %idxprom, !dbg !26 - store double %conv, double* %arrayidx, align 8, !dbg !27, !tbaa !28 + %arrayidx = getelementptr inbounds double, ptr %A, i64 %idxprom, !dbg !26 + store double %conv, ptr %arrayidx, align 8, !dbg !27, !tbaa !28 %add = add nsw i32 %i.0, 1, !dbg !32 %idxprom1 = sext i32 %add to i64, !dbg !33 - %arrayidx2 = getelementptr inbounds double, double* %A, i64 %idxprom1, !dbg !33 - %0 = load double, double* %arrayidx2, align 8, !dbg !33, !tbaa !28 + %arrayidx2 = getelementptr inbounds double, ptr %A, i64 %idxprom1, !dbg !33 + %0 = load double, ptr %arrayidx2, align 8, !dbg !33, !tbaa !28 %idxprom3 = sext i32 %i.0 to i64, !dbg !34 - %arrayidx4 = getelementptr inbounds double, double* %B, i64 %idxprom3, !dbg !34 - store double %0, double* %arrayidx4, align 8, !dbg !35, !tbaa !28 + %arrayidx4 = getelementptr inbounds double, ptr %B, i64 %idxprom3, !dbg !34 + store double %0, ptr %arrayidx4, align 8, !dbg !35, !tbaa !28 %inc = add nsw i32 %i.0, 1, !dbg !36 call void @llvm.dbg.value(metadata i32 %inc, metadata !15, metadata !DIExpression()), !dbg !19 @@ -50,9 +50,9 @@ for.end: declare void @llvm.dbg.declare(metadata, metadata, metadata) #1 -declare void @llvm.lifetime.start.p0i8(i64 immarg, i8* nocapture) #2 +declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #2 -declare void @llvm.lifetime.end.p0i8(i64 immarg, i8* nocapture) #2 +declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #2 declare void @llvm.dbg.value(metadata, metadata, metadata) #1 diff --git a/polly/test/ScheduleOptimizer/ManualOptimization/distribute_illegal_pragmaloc.ll b/polly/test/ScheduleOptimizer/ManualOptimization/distribute_illegal_pragmaloc.ll index fd03ad0fa641..fc0df85b1346 100644 --- a/polly/test/ScheduleOptimizer/ManualOptimization/distribute_illegal_pragmaloc.ll +++ b/polly/test/ScheduleOptimizer/ManualOptimization/distribute_illegal_pragmaloc.ll @@ -13,10 +13,10 @@ source_filename = "distribute_illegal.c" target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define dso_local void @foo(double* %A, double* %B) #0 !dbg !7 { +define dso_local void @foo(ptr %A, ptr %B) #0 !dbg !7 { entry: - call void @llvm.dbg.value(metadata double* %A, metadata !13, metadata !DIExpression()), !dbg !18 - call void @llvm.dbg.value(metadata double* %B, metadata !14, metadata !DIExpression()), !dbg !18 + call void @llvm.dbg.value(metadata ptr %A, metadata !13, metadata !DIExpression()), !dbg !18 + call void @llvm.dbg.value(metadata ptr %B, metadata !14, metadata !DIExpression()), !dbg !18 call void @llvm.dbg.value(metadata i32 1, metadata !15, metadata !DIExpression()), !dbg !19 br label %for.cond, !dbg !20 @@ -29,16 +29,16 @@ for.cond: for.body: %conv = sitofp i32 %i.0 to double, !dbg !24 %idxprom = sext i32 %i.0 to i64, !dbg !26 - %arrayidx = getelementptr inbounds double, double* %A, i64 %idxprom, !dbg !26 - store double %conv, double* %arrayidx, align 8, !dbg !27, !tbaa !28 + %arrayidx = getelementptr inbounds double, ptr %A, i64 %idxprom, !dbg !26 + store double %conv, ptr %arrayidx, align 8, !dbg !27, !tbaa !28 %add = add nsw i32 %i.0, 1, !dbg !32 %idxprom1 = sext i32 %add to i64, !dbg !33 - %arrayidx2 = getelementptr inbounds double, double* %A, i64 %idxprom1, !dbg !33 - %0 = load double, double* %arrayidx2, align 8, !dbg !33, !tbaa !28 + %arrayidx2 = getelementptr inbounds double, ptr %A, i64 %idxprom1, !dbg !33 + %0 = load double, ptr %arrayidx2, align 8, !dbg !33, !tbaa !28 %idxprom3 = sext i32 %i.0 to i64, !dbg !34 - %arrayidx4 = getelementptr inbounds double, double* %B, i64 %idxprom3, !dbg !34 - store double %0, double* %arrayidx4, align 8, !dbg !35, !tbaa !28 + %arrayidx4 = getelementptr inbounds double, ptr %B, i64 %idxprom3, !dbg !34 + store double %0, ptr %arrayidx4, align 8, !dbg !35, !tbaa !28 %inc = add nsw i32 %i.0, 1, !dbg !36 call void @llvm.dbg.value(metadata i32 %inc, metadata !15, metadata !DIExpression()), !dbg !19 @@ -50,9 +50,9 @@ for.end: declare void @llvm.dbg.declare(metadata, metadata, metadata) #1 -declare void @llvm.lifetime.start.p0i8(i64 immarg, i8* nocapture) #2 +declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #2 -declare void @llvm.lifetime.end.p0i8(i64 immarg, i8* nocapture) #2 +declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #2 declare void @llvm.dbg.value(metadata, metadata, metadata) #1 diff --git a/polly/test/ScheduleOptimizer/ManualOptimization/unroll_disable.ll b/polly/test/ScheduleOptimizer/ManualOptimization/unroll_disable.ll index 10ba5cd9b933..9537f3a9b0a8 100644 --- a/polly/test/ScheduleOptimizer/ManualOptimization/unroll_disable.ll +++ b/polly/test/ScheduleOptimizer/ManualOptimization/unroll_disable.ll @@ -2,7 +2,7 @@ ; ; Override unroll metadata with llvm.loop.unroll.disable. ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -12,7 +12,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/ScheduleOptimizer/ManualOptimization/unroll_double.ll b/polly/test/ScheduleOptimizer/ManualOptimization/unroll_double.ll index 9e2c5d3f0c4f..b0310970f8d6 100644 --- a/polly/test/ScheduleOptimizer/ManualOptimization/unroll_double.ll +++ b/polly/test/ScheduleOptimizer/ManualOptimization/unroll_double.ll @@ -2,7 +2,7 @@ ; ; Apply two loop transformations. First partial, then full unrolling. ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %for @@ -12,7 +12,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/ScheduleOptimizer/ManualOptimization/unroll_full.ll b/polly/test/ScheduleOptimizer/ManualOptimization/unroll_full.ll index 4b3d20fda014..b9a4c845477c 100644 --- a/polly/test/ScheduleOptimizer/ManualOptimization/unroll_full.ll +++ b/polly/test/ScheduleOptimizer/ManualOptimization/unroll_full.ll @@ -2,7 +2,7 @@ ; ; Full unroll of a loop with 5 iterations. ; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %for @@ -12,7 +12,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/ScheduleOptimizer/ManualOptimization/unroll_heuristic.ll b/polly/test/ScheduleOptimizer/ManualOptimization/unroll_heuristic.ll index 2845ff7aebbf..0387aecd683b 100644 --- a/polly/test/ScheduleOptimizer/ManualOptimization/unroll_heuristic.ll +++ b/polly/test/ScheduleOptimizer/ManualOptimization/unroll_heuristic.ll @@ -4,7 +4,7 @@ ; Unrolling with heuristic factor. ; Currently not supported and expected to be handled by LLVM's unroll pass. ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -14,7 +14,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/ScheduleOptimizer/ManualOptimization/unroll_partial.ll b/polly/test/ScheduleOptimizer/ManualOptimization/unroll_partial.ll index a35a1531fddd..81e40f0a98bb 100644 --- a/polly/test/ScheduleOptimizer/ManualOptimization/unroll_partial.ll +++ b/polly/test/ScheduleOptimizer/ManualOptimization/unroll_partial.ll @@ -3,7 +3,7 @@ ; ; Partial unroll by a factor of 4. ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -13,7 +13,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/ScheduleOptimizer/ManualOptimization/unroll_partial_followup.ll b/polly/test/ScheduleOptimizer/ManualOptimization/unroll_partial_followup.ll index 9ed069c74a8d..8665f68b99c1 100644 --- a/polly/test/ScheduleOptimizer/ManualOptimization/unroll_partial_followup.ll +++ b/polly/test/ScheduleOptimizer/ManualOptimization/unroll_partial_followup.ll @@ -4,7 +4,7 @@ ; ; Partial unroll by a factor of 4. ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -14,7 +14,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/ScheduleOptimizer/SIMDInParallelFor.ll b/polly/test/ScheduleOptimizer/SIMDInParallelFor.ll index 66febc741e18..8585634e10ff 100644 --- a/polly/test/ScheduleOptimizer/SIMDInParallelFor.ll +++ b/polly/test/ScheduleOptimizer/SIMDInParallelFor.ll @@ -36,10 +36,10 @@ for.cond66.preheader: for.body75: %indvars.iv215 = phi i64 [ %indvars.iv213, %for.cond66.preheader ], [ %indvars.iv.next216, %for.body75 ] - %arrayidx83 = getelementptr inbounds [1984 x [1984 x double]], [1984 x [1984 x double]]* @b, i64 0, i64 %indvars.iv219, i64 %indvars.iv215 - %tmp3 = load double, double* %arrayidx83, align 8 - %arrayidx87 = getelementptr inbounds [1984 x [1984 x double]], [1984 x [1984 x double]]* @c, i64 0, i64 %indvars.iv223, i64 %indvars.iv215 - store double undef, double* %arrayidx87, align 8 + %arrayidx83 = getelementptr inbounds [1984 x [1984 x double]], ptr @b, i64 0, i64 %indvars.iv219, i64 %indvars.iv215 + %tmp3 = load double, ptr %arrayidx83, align 8 + %arrayidx87 = getelementptr inbounds [1984 x [1984 x double]], ptr @c, i64 0, i64 %indvars.iv223, i64 %indvars.iv215 + store double undef, ptr %arrayidx87, align 8 %indvars.iv.next216 = add nuw nsw i64 %indvars.iv215, 1 %cmp74 = icmp ult i64 %indvars.iv.next216, %tmp2 br i1 %cmp74, label %for.body75, label %for.inc92 diff --git a/polly/test/ScheduleOptimizer/computeout.ll b/polly/test/ScheduleOptimizer/computeout.ll index 55d59a344135..35e3416f91d1 100644 --- a/polly/test/ScheduleOptimizer/computeout.ll +++ b/polly/test/ScheduleOptimizer/computeout.ll @@ -20,8 +20,8 @@ entry: S1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %S1 ] - %arrayidx.1 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.1 - store i32 2, i32* %arrayidx.1 + %arrayidx.1 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.1 + store i32 2, ptr %arrayidx.1 %indvar.next.1 = add i64 %indvar.1, 1 %exitcond.1 = icmp ne i64 %indvar.next.1, 100 br i1 %exitcond.1, label %S1, label %exit.1 @@ -31,8 +31,8 @@ exit.1: S2: %indvar.2 = phi i64 [ 0, %exit.1 ], [ %indvar.next.2, %S2 ] - %arrayidx.2 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.2 - store i32 5, i32* %arrayidx.2 + %arrayidx.2 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.2 + store i32 5, ptr %arrayidx.2 %indvar.next.2 = add i64 %indvar.2, 1 %exitcond.2 = icmp ne i64 %indvar.next.2, 10 br i1 %exitcond.2, label %S2, label %exit.2 @@ -42,8 +42,8 @@ exit.2: S3: %indvar.3 = phi i64 [ 0, %exit.2 ], [ %indvar.next.3, %S3 ] - %arrayidx.3 = getelementptr [200 x i32], [200 x i32]* %A, i64 0, i64 %indvar.3 - store i32 7, i32* %arrayidx.3 + %arrayidx.3 = getelementptr [200 x i32], ptr %A, i64 0, i64 %indvar.3 + store i32 7, ptr %arrayidx.3 %indvar.next.3 = add i64 %indvar.3, 1 %exitcond.3 = icmp ne i64 %indvar.next.3, 200 br i1 %exitcond.3, label %S3 , label %exit.3 diff --git a/polly/test/ScheduleOptimizer/ensure-correct-tile-sizes.ll b/polly/test/ScheduleOptimizer/ensure-correct-tile-sizes.ll index ba6abcd28deb..43caca5372ad 100644 --- a/polly/test/ScheduleOptimizer/ensure-correct-tile-sizes.ll +++ b/polly/test/ScheduleOptimizer/ensure-correct-tile-sizes.ll @@ -171,7 +171,7 @@ ; CHECK-NEXT: } target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" -define void @f([3000 x i32]* %A, [3000 x i32]* %B, [3000 x i32]* %C) { +define void @f(ptr %A, ptr %B, ptr %C) { entry: br label %for.cond @@ -189,8 +189,8 @@ for.cond1: ; preds = %for.inc21, %for.bod br i1 %exitcond3, label %for.body3, label %for.end23 for.body3: ; preds = %for.cond1 - %arrayidx5 = getelementptr inbounds [3000 x i32], [3000 x i32]* %A, i64 %indvars.iv4, i64 %indvars.iv1 - store i32 0, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds [3000 x i32], ptr %A, i64 %indvars.iv4, i64 %indvars.iv1 + store i32 0, ptr %arrayidx5, align 4 br label %for.cond6 for.cond6: ; preds = %for.inc, %for.body3 @@ -199,15 +199,15 @@ for.cond6: ; preds = %for.inc, %for.body3 br i1 %exitcond, label %for.body8, label %for.end for.body8: ; preds = %for.cond6 - %arrayidx12 = getelementptr inbounds [3000 x i32], [3000 x i32]* %B, i64 %indvars.iv4, i64 %indvars.iv - %tmp = load i32, i32* %arrayidx12, align 4 - %arrayidx16 = getelementptr inbounds [3000 x i32], [3000 x i32]* %C, i64 %indvars.iv, i64 %indvars.iv1 - %tmp7 = load i32, i32* %arrayidx16, align 4 + %arrayidx12 = getelementptr inbounds [3000 x i32], ptr %B, i64 %indvars.iv4, i64 %indvars.iv + %tmp = load i32, ptr %arrayidx12, align 4 + %arrayidx16 = getelementptr inbounds [3000 x i32], ptr %C, i64 %indvars.iv, i64 %indvars.iv1 + %tmp7 = load i32, ptr %arrayidx16, align 4 %mul = mul nsw i32 %tmp, %tmp7 - %arrayidx20 = getelementptr inbounds [3000 x i32], [3000 x i32]* %A, i64 %indvars.iv4, i64 %indvars.iv1 - %tmp8 = load i32, i32* %arrayidx20, align 4 + %arrayidx20 = getelementptr inbounds [3000 x i32], ptr %A, i64 %indvars.iv4, i64 %indvars.iv1 + %tmp8 = load i32, ptr %arrayidx20, align 4 %add = add nsw i32 %tmp8, %mul - store i32 %add, i32* %arrayidx20, align 4 + store i32 %add, ptr %arrayidx20, align 4 br label %for.inc for.inc: ; preds = %for.body8 diff --git a/polly/test/ScheduleOptimizer/focaltech_test_detail_threshold-7bc17e.ll b/polly/test/ScheduleOptimizer/focaltech_test_detail_threshold-7bc17e.ll index ab0ab2944248..daa1afdd0aa8 100644 --- a/polly/test/ScheduleOptimizer/focaltech_test_detail_threshold-7bc17e.ll +++ b/polly/test/ScheduleOptimizer/focaltech_test_detail_threshold-7bc17e.ll @@ -5,7 +5,7 @@ ; target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" -%struct.stCfg_Incell_DetailThreshold.2.30.42.62.74.94.122.126.134.166.194.242.338.342.346.350.354.358.496.0.2.9.16.28.36.37.38.39.40.75 = type { [60 x i8]*, [60 x i32]*, [60 x i32]*, [60 x i32]*, [60 x i32]*, [60 x i32]*, [60 x i32]* } +%struct.stCfg_Incell_DetailThreshold.2.30.42.62.74.94.122.126.134.166.194.242.338.342.346.350.354.358.496.0.2.9.16.28.36.37.38.39.40.75 = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr } @ft8006m_g_stCfg_Incell_DetailThreshold = external dso_local local_unnamed_addr global %struct.stCfg_Incell_DetailThreshold.2.30.42.62.74.94.122.126.134.166.194.242.338.342.346.350.354.358.496.0.2.9.16.28.36.37.38.39.40.75, align 8 declare dso_local i32 @ft8006m_atoi() local_unnamed_addr #0 @@ -33,9 +33,9 @@ for.cond21: ; preds = %for.body23, %for.co br i1 %exitcond298, label %for.cond28, label %for.body23 for.body23: ; preds = %for.cond21 - %1 = load [60 x i32]*, [60 x i32]** getelementptr inbounds (%struct.stCfg_Incell_DetailThreshold.2.30.42.62.74.94.122.126.134.166.194.242.338.342.346.350.354.358.496.0.2.9.16.28.36.37.38.39.40.75, %struct.stCfg_Incell_DetailThreshold.2.30.42.62.74.94.122.126.134.166.194.242.338.342.346.350.354.358.496.0.2.9.16.28.36.37.38.39.40.75* @ft8006m_g_stCfg_Incell_DetailThreshold, i64 0, i32 2), align 8 - %arrayidx25 = getelementptr [60 x i32], [60 x i32]* %1, i64 %indvars.iv302, i64 %indvars.iv296 - store i32 undef, i32* %arrayidx25, align 4 + %1 = load ptr, ptr getelementptr inbounds (%struct.stCfg_Incell_DetailThreshold.2.30.42.62.74.94.122.126.134.166.194.242.338.342.346.350.354.358.496.0.2.9.16.28.36.37.38.39.40.75, ptr @ft8006m_g_stCfg_Incell_DetailThreshold, i64 0, i32 2), align 8 + %arrayidx25 = getelementptr [60 x i32], ptr %1, i64 %indvars.iv302, i64 %indvars.iv296 + store i32 undef, ptr %arrayidx25, align 4 %indvars.iv.next297 = add nuw nsw i64 %indvars.iv296, 1 br label %for.cond21 @@ -45,9 +45,9 @@ for.cond28: ; preds = %for.body30, %for.co br i1 %exitcond301, label %for.inc39, label %for.body30 for.body30: ; preds = %for.cond28 - %2 = load [60 x i32]*, [60 x i32]** getelementptr inbounds (%struct.stCfg_Incell_DetailThreshold.2.30.42.62.74.94.122.126.134.166.194.242.338.342.346.350.354.358.496.0.2.9.16.28.36.37.38.39.40.75, %struct.stCfg_Incell_DetailThreshold.2.30.42.62.74.94.122.126.134.166.194.242.338.342.346.350.354.358.496.0.2.9.16.28.36.37.38.39.40.75* @ft8006m_g_stCfg_Incell_DetailThreshold, i64 0, i32 2), align 8 - %arrayidx34 = getelementptr [60 x i32], [60 x i32]* %2, i64 %0, i64 %indvars.iv299 - store i32 undef, i32* %arrayidx34, align 4 + %2 = load ptr, ptr getelementptr inbounds (%struct.stCfg_Incell_DetailThreshold.2.30.42.62.74.94.122.126.134.166.194.242.338.342.346.350.354.358.496.0.2.9.16.28.36.37.38.39.40.75, ptr @ft8006m_g_stCfg_Incell_DetailThreshold, i64 0, i32 2), align 8 + %arrayidx34 = getelementptr [60 x i32], ptr %2, i64 %0, i64 %indvars.iv299 + store i32 undef, ptr %arrayidx34, align 4 %indvars.iv.next300 = add nuw nsw i64 %indvars.iv299, 1 br label %for.cond28 diff --git a/polly/test/ScheduleOptimizer/full_partial_tile_separation.ll b/polly/test/ScheduleOptimizer/full_partial_tile_separation.ll index 4deb1f3f449f..06e86d7da1c6 100644 --- a/polly/test/ScheduleOptimizer/full_partial_tile_separation.ll +++ b/polly/test/ScheduleOptimizer/full_partial_tile_separation.ll @@ -27,7 +27,7 @@ ; CHECK-NEXT: } ; Function Attrs: nounwind uwtable -define void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, [1024 x double]* %C, [1024 x double]* %A, [1024 x double]* %B) #0 { +define void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, ptr %C, ptr %A, ptr %B) #0 { entry: %cmp.27 = icmp sgt i32 %ni, 0 br i1 %cmp.27, label %for.cond.1.preheader.lr.ph, label %for.end.22 @@ -53,15 +53,15 @@ for.body.6.lr.ph: ; preds = %for.cond.4.preheade for.body.6: ; preds = %for.body.6.lr.ph, %for.body.6 %indvars.iv = phi i64 [ 0, %for.body.6.lr.ph ], [ %indvars.iv.next, %for.body.6 ] - %arrayidx8 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i64 %indvars.iv33, i64 %indvars.iv - %0 = load double, double* %arrayidx8, align 8 - %arrayidx12 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %indvars.iv, i64 %indvars.iv29 - %1 = load double, double* %arrayidx12, align 8 + %arrayidx8 = getelementptr inbounds [1024 x double], ptr %A, i64 %indvars.iv33, i64 %indvars.iv + %0 = load double, ptr %arrayidx8, align 8 + %arrayidx12 = getelementptr inbounds [1024 x double], ptr %B, i64 %indvars.iv, i64 %indvars.iv29 + %1 = load double, ptr %arrayidx12, align 8 %mul = fmul double %0, %1 - %arrayidx16 = getelementptr inbounds [1024 x double], [1024 x double]* %C, i64 %indvars.iv33, i64 %indvars.iv29 - %2 = load double, double* %arrayidx16, align 8 + %arrayidx16 = getelementptr inbounds [1024 x double], ptr %C, i64 %indvars.iv33, i64 %indvars.iv29 + %2 = load double, ptr %arrayidx16, align 8 %add = fadd double %2, %mul - store double %add, double* %arrayidx16, align 8 + store double %add, ptr %arrayidx16, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 %exitcond = icmp ne i32 %lftr.wideiv, %nk diff --git a/polly/test/ScheduleOptimizer/line-tiling-2.ll b/polly/test/ScheduleOptimizer/line-tiling-2.ll index f6a836bceea5..eb374cb07cf3 100644 --- a/polly/test/ScheduleOptimizer/line-tiling-2.ll +++ b/polly/test/ScheduleOptimizer/line-tiling-2.ll @@ -8,7 +8,7 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" ; Function Attrs: nounwind -define void @line([512 x i32]* %A) { +define void @line(ptr %A) { entry: br label %entry.split @@ -23,8 +23,8 @@ for.body3: ; preds = %for.body3.lr.ph, %f %j.0 = phi i32 [ 0, %for.body3.lr.ph ], [ %inc, %for.body3 ] %mul = mul nsw i32 %j.0, %i.0 %rem = srem i32 %mul, 42 - %arrayidx4 = getelementptr inbounds [512 x i32], [512 x i32]* %A, i32 %i.0, i32 %j.0 - store i32 %rem, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds [512 x i32], ptr %A, i32 %i.0, i32 %j.0 + store i32 %rem, ptr %arrayidx4, align 4 %inc = add nsw i32 %j.0, 1 %cmp2 = icmp slt i32 %inc, 512 br i1 %cmp2, label %for.body3, label %for.inc5 diff --git a/polly/test/ScheduleOptimizer/line-tiling.ll b/polly/test/ScheduleOptimizer/line-tiling.ll index 6d0fe1070050..2f14ac1d02a5 100644 --- a/polly/test/ScheduleOptimizer/line-tiling.ll +++ b/polly/test/ScheduleOptimizer/line-tiling.ll @@ -8,7 +8,7 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" ; Function Attrs: nounwind -define void @line([512 x i32]* %A) { +define void @line(ptr %A) { entry: br label %entry.split @@ -23,8 +23,8 @@ for.body3: ; preds = %for.body3.lr.ph, %f %j.0 = phi i32 [ 0, %for.body3.lr.ph ], [ %inc, %for.body3 ] %mul = mul nsw i32 %j.0, %i.0 %rem = srem i32 %mul, 42 - %arrayidx4 = getelementptr inbounds [512 x i32], [512 x i32]* %A, i32 %i.0, i32 %j.0 - store i32 %rem, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds [512 x i32], ptr %A, i32 %i.0, i32 %j.0 + store i32 %rem, ptr %arrayidx4, align 4 %inc = add nsw i32 %j.0, 1 %cmp2 = icmp slt i32 %inc, 512 br i1 %cmp2, label %for.body3, label %for.inc5 diff --git a/polly/test/ScheduleOptimizer/mat_mul_pattern_data_layout.ll b/polly/test/ScheduleOptimizer/mat_mul_pattern_data_layout.ll index ab7d7bb721b6..faf51e097a70 100644 --- a/polly/test/ScheduleOptimizer/mat_mul_pattern_data_layout.ll +++ b/polly/test/ScheduleOptimizer/mat_mul_pattern_data_layout.ll @@ -21,7 +21,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" -define internal void @kernel_gemm(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %arg4, [1056 x double]* %arg5, [1024 x double]* %arg6, [1056 x double]* %arg7) #0 { +define internal void @kernel_gemm(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %arg4, ptr %arg5, ptr %arg6, ptr %arg7) #0 { bb: br label %bb8 @@ -31,23 +31,23 @@ bb8: ; preds = %bb29, %bb bb9: ; preds = %bb26, %bb8 %tmp10 = phi i64 [ 0, %bb8 ], [ %tmp27, %bb26 ] - %tmp11 = getelementptr inbounds [1056 x double], [1056 x double]* %arg5, i64 %tmp, i64 %tmp10 - %tmp12 = load double, double* %tmp11, align 8 + %tmp11 = getelementptr inbounds [1056 x double], ptr %arg5, i64 %tmp, i64 %tmp10 + %tmp12 = load double, ptr %tmp11, align 8 %tmp13 = fmul double %tmp12, %arg4 - store double %tmp13, double* %tmp11, align 8 + store double %tmp13, ptr %tmp11, align 8 br label %Copy_0 Copy_0: ; preds = %Copy_0, %bb9 %tmp15 = phi i64 [ 0, %bb9 ], [ %tmp24, %Copy_0 ] - %tmp16 = getelementptr inbounds [1024 x double], [1024 x double]* %arg6, i64 %tmp, i64 %tmp15 - %tmp17 = load double, double* %tmp16, align 8 + %tmp16 = getelementptr inbounds [1024 x double], ptr %arg6, i64 %tmp, i64 %tmp15 + %tmp17 = load double, ptr %tmp16, align 8 %tmp18 = fmul double %tmp17, %arg3 - %tmp19 = getelementptr inbounds [1056 x double], [1056 x double]* %arg7, i64 %tmp15, i64 %tmp10 - %tmp20 = load double, double* %tmp19, align 8 + %tmp19 = getelementptr inbounds [1056 x double], ptr %arg7, i64 %tmp15, i64 %tmp10 + %tmp20 = load double, ptr %tmp19, align 8 %tmp21 = fmul double %tmp18, %tmp20 - %tmp22 = load double, double* %tmp11, align 8 + %tmp22 = load double, ptr %tmp11, align 8 %tmp23 = fadd double %tmp22, %tmp21 - store double %tmp23, double* %tmp11, align 8 + store double %tmp23, ptr %tmp11, align 8 %tmp24 = add nuw nsw i64 %tmp15, 1 %tmp25 = icmp ne i64 %tmp24, 1024 br i1 %tmp25, label %Copy_0, label %bb26 diff --git a/polly/test/ScheduleOptimizer/mat_mul_pattern_data_layout_2.ll b/polly/test/ScheduleOptimizer/mat_mul_pattern_data_layout_2.ll index 8b6bd00c19a0..30b693a2e241 100644 --- a/polly/test/ScheduleOptimizer/mat_mul_pattern_data_layout_2.ll +++ b/polly/test/ScheduleOptimizer/mat_mul_pattern_data_layout_2.ll @@ -86,7 +86,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" -define internal void @kernel_gemm(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %arg4, [1056 x double]* %arg5, [1023 x double]* %arg6, [1056 x double]* %arg7) #0 { +define internal void @kernel_gemm(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %arg4, ptr %arg5, ptr %arg6, ptr %arg7) #0 { bb: br label %bb8 @@ -96,23 +96,23 @@ bb8: ; preds = %bb29, %bb bb9: ; preds = %bb26, %bb8 %tmp10 = phi i64 [ 0, %bb8 ], [ %tmp27, %bb26 ] - %tmp11 = getelementptr inbounds [1056 x double], [1056 x double]* %arg5, i64 %tmp, i64 %tmp10 - %tmp12 = load double, double* %tmp11, align 8 + %tmp11 = getelementptr inbounds [1056 x double], ptr %arg5, i64 %tmp, i64 %tmp10 + %tmp12 = load double, ptr %tmp11, align 8 %tmp13 = fmul double %tmp12, %arg4 - store double %tmp13, double* %tmp11, align 8 + store double %tmp13, ptr %tmp11, align 8 br label %Copy_0 Copy_0: ; preds = %Copy_0, %bb9 %tmp15 = phi i64 [ 0, %bb9 ], [ %tmp24, %Copy_0 ] - %tmp16 = getelementptr inbounds [1023 x double], [1023 x double]* %arg6, i64 %tmp, i64 %tmp15 - %tmp17 = load double, double* %tmp16, align 8 + %tmp16 = getelementptr inbounds [1023 x double], ptr %arg6, i64 %tmp, i64 %tmp15 + %tmp17 = load double, ptr %tmp16, align 8 %tmp18 = fmul double %tmp17, %arg3 - %tmp19 = getelementptr inbounds [1056 x double], [1056 x double]* %arg7, i64 %tmp15, i64 %tmp10 - %tmp20 = load double, double* %tmp19, align 8 + %tmp19 = getelementptr inbounds [1056 x double], ptr %arg7, i64 %tmp15, i64 %tmp10 + %tmp20 = load double, ptr %tmp19, align 8 %tmp21 = fmul double %tmp18, %tmp20 - %tmp22 = load double, double* %tmp11, align 8 + %tmp22 = load double, ptr %tmp11, align 8 %tmp23 = fadd double %tmp22, %tmp21 - store double %tmp23, double* %tmp11, align 8 + store double %tmp23, ptr %tmp11, align 8 %tmp24 = add nuw nsw i64 %tmp15, 1 %tmp25 = icmp ne i64 %tmp24, 1023 br i1 %tmp25, label %Copy_0, label %bb26 diff --git a/polly/test/ScheduleOptimizer/one-dimensional-band.ll b/polly/test/ScheduleOptimizer/one-dimensional-band.ll index 743c947732b1..4592907a44ad 100644 --- a/polly/test/ScheduleOptimizer/one-dimensional-band.ll +++ b/polly/test/ScheduleOptimizer/one-dimensional-band.ll @@ -21,7 +21,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jacobi1d(i64 %T, i64 %N, float* %A, float* %B) { +define void @jacobi1d(i64 %T, i64 %N, ptr %A, ptr %B) { entry: %tmp = add i64 %N, -1 %tmp1 = icmp sgt i64 %tmp, 1 @@ -44,20 +44,20 @@ for.cond1: ; preds = %for.inc, %for.body for.body3: ; preds = %for.cond1 %sub4 = add nsw i64 %i.0, -1 - %arrayidx = getelementptr inbounds float, float* %A, i64 %sub4 - %tmp2 = load float, float* %arrayidx, align 4 - %arrayidx5 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp3 = load float, float* %arrayidx5, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %sub4 + %tmp2 = load float, ptr %arrayidx, align 4 + %arrayidx5 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp3 = load float, ptr %arrayidx5, align 4 %add = fadd float %tmp2, %tmp3 %add6 = add nuw nsw i64 %i.0, 1 - %arrayidx7 = getelementptr inbounds float, float* %A, i64 %add6 - %tmp4 = load float, float* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds float, ptr %A, i64 %add6 + %tmp4 = load float, ptr %arrayidx7, align 4 %add8 = fadd float %add, %tmp4 %conv = fpext float %add8 to double %mul = fmul double %conv, 3.333300e-01 %conv9 = fptrunc double %mul to float - %arrayidx10 = getelementptr inbounds float, float* %B, i64 %i.0 - store float %conv9, float* %arrayidx10, align 4 + %arrayidx10 = getelementptr inbounds float, ptr %B, i64 %i.0 + store float %conv9, ptr %arrayidx10, align 4 br label %for.inc for.inc: ; preds = %for.body3 @@ -75,20 +75,20 @@ for.cond11: ; preds = %for.inc27, %for.end for.body15: ; preds = %for.cond11 %sub16 = add nsw i64 %smax, -1 - %arrayidx17 = getelementptr inbounds float, float* %B, i64 %sub16 - %tmp5 = load float, float* %arrayidx17, align 4 - %arrayidx18 = getelementptr inbounds float, float* %B, i64 %smax - %tmp6 = load float, float* %arrayidx18, align 4 + %arrayidx17 = getelementptr inbounds float, ptr %B, i64 %sub16 + %tmp5 = load float, ptr %arrayidx17, align 4 + %arrayidx18 = getelementptr inbounds float, ptr %B, i64 %smax + %tmp6 = load float, ptr %arrayidx18, align 4 %add19 = fadd float %tmp5, %tmp6 %add20 = add nsw i64 %smax, 1 - %arrayidx21 = getelementptr inbounds float, float* %B, i64 %add20 - %tmp7 = load float, float* %arrayidx21, align 4 + %arrayidx21 = getelementptr inbounds float, ptr %B, i64 %add20 + %tmp7 = load float, ptr %arrayidx21, align 4 %add22 = fadd float %add19, %tmp7 %conv23 = fpext float %add22 to double %mul24 = fmul double %conv23, 3.333300e-01 %conv25 = fptrunc double %mul24 to float - %arrayidx26 = getelementptr inbounds float, float* %A, i64 %j.0 - store float %conv25, float* %arrayidx26, align 4 + %arrayidx26 = getelementptr inbounds float, ptr %A, i64 %j.0 + store float %conv25, ptr %arrayidx26, align 4 br label %for.inc27 for.inc27: ; preds = %for.body15 diff --git a/polly/test/ScheduleOptimizer/outer_coincidence.ll b/polly/test/ScheduleOptimizer/outer_coincidence.ll index 074cbe074bd9..2ab33edda86b 100644 --- a/polly/test/ScheduleOptimizer/outer_coincidence.ll +++ b/polly/test/ScheduleOptimizer/outer_coincidence.ll @@ -10,7 +10,7 @@ ; A[i][j] = A[i-1][j] + A[i][j-1]; ;} -define void @func(i64 %m, i64 %n, float* noalias nonnull %A) #0 { +define void @func(i64 %m, i64 %n, ptr noalias nonnull %A) #0 { entry: br label %for.cond @@ -30,19 +30,19 @@ for.cond1: ; preds = %for.cond1.preheader for.body3: ; preds = %for.cond1 %sub = add nsw i64 %i.0, -1 %tmp = mul nsw i64 %sub, %n - %arrayidx = getelementptr inbounds float, float* %A, i64 %tmp - %arrayidx4 = getelementptr inbounds float, float* %arrayidx, i64 %j.0 - %tmp13 = load float, float* %arrayidx4, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %tmp + %arrayidx4 = getelementptr inbounds float, ptr %arrayidx, i64 %j.0 + %tmp13 = load float, ptr %arrayidx4, align 4 %sub5 = add nsw i64 %j.0, -1 %tmp14 = mul nsw i64 %i.0, %n - %arrayidx6 = getelementptr inbounds float, float* %A, i64 %tmp14 - %arrayidx7 = getelementptr inbounds float, float* %arrayidx6, i64 %sub5 - %tmp15 = load float, float* %arrayidx7, align 4 + %arrayidx6 = getelementptr inbounds float, ptr %A, i64 %tmp14 + %arrayidx7 = getelementptr inbounds float, ptr %arrayidx6, i64 %sub5 + %tmp15 = load float, ptr %arrayidx7, align 4 %add = fadd float %tmp13, %tmp15 %tmp16 = mul nsw i64 %i.0, %n - %arrayidx8 = getelementptr inbounds float, float* %A, i64 %tmp16 - %arrayidx9 = getelementptr inbounds float, float* %arrayidx8, i64 %j.0 - store float %add, float* %arrayidx9, align 4 + %arrayidx8 = getelementptr inbounds float, ptr %A, i64 %tmp16 + %arrayidx9 = getelementptr inbounds float, ptr %arrayidx8, i64 %j.0 + store float %add, ptr %arrayidx9, align 4 %add10 = add nuw nsw i64 %j.0, 1 br label %for.cond1 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm.ll index ff3b5f502e8d..66011168fcc1 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm.ll @@ -47,7 +47,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" ; Function Attrs: norecurse nounwind uwtable -define void @kernel_2mm(i32 %ni, i32 %nj, i32 %nk, i32 %nl, double %alpha, double %beta, [1800 x double]* nocapture %tmp, [2200 x double]* nocapture readonly %A, [1800 x double]* nocapture readonly %B, [2400 x double]* nocapture readnone %C, [2400 x double]* nocapture readnone %D) local_unnamed_addr #0 { +define void @kernel_2mm(i32 %ni, i32 %nj, i32 %nk, i32 %nl, double %alpha, double %beta, ptr nocapture %tmp, ptr nocapture readonly %A, ptr nocapture readonly %B, ptr nocapture readnone %C, ptr nocapture readnone %D) local_unnamed_addr #0 { entry: br label %entry.split @@ -60,21 +60,21 @@ for.body: ; preds = %for.inc25, %entry.s for.body3: ; preds = %for.inc22, %for.body %indvars.iv46 = phi i64 [ 0, %for.body ], [ %indvars.iv.next47, %for.inc22 ] - %arrayidx5 = getelementptr inbounds [1800 x double], [1800 x double]* %tmp, i64 %indvars.iv50, i64 %indvars.iv46 - store double 0.000000e+00, double* %arrayidx5, align 8, !tbaa !2 + %arrayidx5 = getelementptr inbounds [1800 x double], ptr %tmp, i64 %indvars.iv50, i64 %indvars.iv46 + store double 0.000000e+00, ptr %arrayidx5, align 8, !tbaa !2 br label %for.body8 for.body8: ; preds = %for.body8, %for.body3 %0 = phi double [ 0.000000e+00, %for.body3 ], [ %add, %for.body8 ] %indvars.iv = phi i64 [ 0, %for.body3 ], [ %indvars.iv.next, %for.body8 ] - %arrayidx12 = getelementptr inbounds [2200 x double], [2200 x double]* %A, i64 %indvars.iv50, i64 %indvars.iv - %1 = load double, double* %arrayidx12, align 8, !tbaa !2 + %arrayidx12 = getelementptr inbounds [2200 x double], ptr %A, i64 %indvars.iv50, i64 %indvars.iv + %1 = load double, ptr %arrayidx12, align 8, !tbaa !2 %mul = fmul double %1, %alpha - %arrayidx16 = getelementptr inbounds [1800 x double], [1800 x double]* %B, i64 %indvars.iv, i64 %indvars.iv46 - %2 = load double, double* %arrayidx16, align 8, !tbaa !2 + %arrayidx16 = getelementptr inbounds [1800 x double], ptr %B, i64 %indvars.iv, i64 %indvars.iv46 + %2 = load double, ptr %arrayidx16, align 8, !tbaa !2 %mul17 = fmul double %mul, %2 %add = fadd double %0, %mul17 - store double %add, double* %arrayidx5, align 8, !tbaa !2 + store double %add, ptr %arrayidx5, align 8, !tbaa !2 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 2200 br i1 %exitcond, label %for.inc22, label %for.body8 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm_2.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm_2.ll index f81c5bf8d81b..95da89f90755 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm_2.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm_2.ll @@ -38,7 +38,7 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define internal fastcc void @kernel_tc([32 x [32 x [32 x double]]]* nocapture %C, [32 x [32 x [32 x double]]]* nocapture readonly %A, [32 x [32 x [32 x double]]]* nocapture readonly %B) { +define internal fastcc void @kernel_tc(ptr nocapture %C, ptr nocapture readonly %A, ptr nocapture readonly %B) { entry: br label %for.cond1.preheader @@ -60,20 +60,20 @@ for.cond10.preheader: ; preds = %for.inc41, %for.con for.cond13.preheader: ; preds = %for.inc38, %for.cond10.preheader %indvars.iv7 = phi i64 [ 0, %for.cond10.preheader ], [ %indvars.iv.next8, %for.inc38 ] - %arrayidx37 = getelementptr inbounds [32 x [32 x [32 x double]]], [32 x [32 x [32 x double]]]* %C, i64 %indvars.iv19, i64 %indvars.iv16, i64 %indvars.iv13, i64 %indvars.iv7 - %.pre = load double, double* %arrayidx37, align 8 + %arrayidx37 = getelementptr inbounds [32 x [32 x [32 x double]]], ptr %C, i64 %indvars.iv19, i64 %indvars.iv16, i64 %indvars.iv13, i64 %indvars.iv7 + %.pre = load double, ptr %arrayidx37, align 8 br label %for.body15 for.body15: ; preds = %for.body15, %for.cond13.preheader %i = phi double [ %.pre, %for.cond13.preheader ], [ %add, %for.body15 ] %indvars.iv = phi i64 [ 0, %for.cond13.preheader ], [ %indvars.iv.next, %for.body15 ] - %arrayidx21 = getelementptr inbounds [32 x [32 x [32 x double]]], [32 x [32 x [32 x double]]]* %A, i64 %indvars.iv19, i64 %indvars.iv10, i64 %indvars.iv16, i64 %indvars.iv - %i1 = load double, double* %arrayidx21, align 8 - %arrayidx29 = getelementptr inbounds [32 x [32 x [32 x double]]], [32 x [32 x [32 x double]]]* %B, i64 %indvars.iv, i64 %indvars.iv7, i64 %indvars.iv10, i64 %indvars.iv13 - %i2 = load double, double* %arrayidx29, align 8 + %arrayidx21 = getelementptr inbounds [32 x [32 x [32 x double]]], ptr %A, i64 %indvars.iv19, i64 %indvars.iv10, i64 %indvars.iv16, i64 %indvars.iv + %i1 = load double, ptr %arrayidx21, align 8 + %arrayidx29 = getelementptr inbounds [32 x [32 x [32 x double]]], ptr %B, i64 %indvars.iv, i64 %indvars.iv7, i64 %indvars.iv10, i64 %indvars.iv13 + %i2 = load double, ptr %arrayidx29, align 8 %mul = fmul fast double %i2, %i1 %add = fadd fast double %i, %mul - store double %add, double* %arrayidx37, align 8 + store double %add, ptr %arrayidx37, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond.not = icmp eq i64 %indvars.iv.next, 32 br i1 %exitcond.not, label %for.inc38, label %for.body15 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts.ll index 8ffa42b78d9c..7604257f98e0 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts.ll @@ -24,7 +24,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" -define internal void @kernel_gemm(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %arg4, [1056 x double]* %arg5, [1024 x double]* %arg6, [1056 x double]* %arg7) #0 { +define internal void @kernel_gemm(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %arg4, ptr %arg5, ptr %arg6, ptr %arg7) #0 { bb: br label %bb8 @@ -34,23 +34,23 @@ bb8: ; preds = %bb29, %bb bb9: ; preds = %bb26, %bb8 %tmp10 = phi i64 [ 0, %bb8 ], [ %tmp27, %bb26 ] - %tmp11 = getelementptr inbounds [1056 x double], [1056 x double]* %arg5, i64 %tmp, i64 %tmp10 - %tmp12 = load double, double* %tmp11, align 8 + %tmp11 = getelementptr inbounds [1056 x double], ptr %arg5, i64 %tmp, i64 %tmp10 + %tmp12 = load double, ptr %tmp11, align 8 %tmp13 = fmul double %tmp12, %arg4 - store double %tmp13, double* %tmp11, align 8 + store double %tmp13, ptr %tmp11, align 8 br label %Copy_0 Copy_0: ; preds = %Copy_0, %bb9 %tmp15 = phi i64 [ 0, %bb9 ], [ %tmp24, %Copy_0 ] - %tmp16 = getelementptr inbounds [1024 x double], [1024 x double]* %arg6, i64 %tmp, i64 %tmp15 - %tmp17 = load double, double* %tmp16, align 8 + %tmp16 = getelementptr inbounds [1024 x double], ptr %arg6, i64 %tmp, i64 %tmp15 + %tmp17 = load double, ptr %tmp16, align 8 %tmp18 = fmul double %tmp17, %arg3 - %tmp19 = getelementptr inbounds [1056 x double], [1056 x double]* %arg7, i64 %tmp15, i64 %tmp10 - %tmp20 = load double, double* %tmp19, align 8 + %tmp19 = getelementptr inbounds [1056 x double], ptr %arg7, i64 %tmp15, i64 %tmp10 + %tmp20 = load double, ptr %tmp19, align 8 %tmp21 = fmul double %tmp18, %tmp20 - %tmp22 = load double, double* %tmp11, align 8 + %tmp22 = load double, ptr %tmp11, align 8 %tmp23 = fadd double %tmp22, %tmp21 - store double %tmp23, double* %tmp11, align 8 + store double %tmp23, ptr %tmp11, align 8 %tmp24 = add nuw nsw i64 %tmp15, 1 %tmp25 = icmp ne i64 %tmp24, 1024 br i1 %tmp25, label %Copy_0, label %bb26 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_11.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_11.ll index a431e0589e4f..ccdb39b60d75 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_11.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_11.ll @@ -23,7 +23,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" -define void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %A, [1024 x double]* %B, [1024 x double]* %C) { +define void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %A, ptr %B, ptr %C) { entry: br label %entry.split @@ -40,13 +40,13 @@ for.cond4.preheader: ; preds = %for.inc13, %for.con for.body6: ; preds = %for.body6, %for.cond4.preheader %indvars.iv = phi i64 [ 0, %for.cond4.preheader ], [ %indvars.iv.next, %for.body6 ] - %arrayidx8 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %indvars.iv, i64 %indvars.iv32 - %tmp = load double, double* %arrayidx8, align 8 + %arrayidx8 = getelementptr inbounds [1024 x double], ptr %B, i64 %indvars.iv, i64 %indvars.iv32 + %tmp = load double, ptr %arrayidx8, align 8 %mul = fmul double %tmp, %A - %arrayidx12 = getelementptr inbounds [1024 x double], [1024 x double]* %C, i64 %indvars.iv35, i64 %indvars.iv32 - %tmp1 = load double, double* %arrayidx12, align 8 + %arrayidx12 = getelementptr inbounds [1024 x double], ptr %C, i64 %indvars.iv35, i64 %indvars.iv32 + %tmp1 = load double, ptr %arrayidx12, align 8 %add = fadd double %tmp1, %mul - store double %add, double* %arrayidx12, align 8 + store double %add, ptr %arrayidx12, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 1024 br i1 %exitcond, label %for.body6, label %for.inc13 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_12.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_12.ll index 486bc3499be0..dd39fec5e21f 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_12.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_12.ll @@ -13,7 +13,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, i8 signext %alpha, i8 signext %beta, [1020 x i8]* %C, [1020 x i8]* %A, [1020 x i8]* %B) { +define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, i8 signext %alpha, i8 signext %beta, ptr %C, ptr %A, ptr %B) { entry: br label %entry.split @@ -30,15 +30,15 @@ for.body3: ; preds = %for.inc20, %for.bod for.body6: ; preds = %for.body6, %for.body3 %indvars.iv = phi i64 [ 0, %for.body3 ], [ %indvars.iv.next, %for.body6 ] - %arrayidx8 = getelementptr inbounds [1020 x i8], [1020 x i8]* %A, i64 %indvars.iv45, i64 %indvars.iv - %tmp = load i8, i8* %arrayidx8, align 1 - %arrayidx12 = getelementptr inbounds [1020 x i8], [1020 x i8]* %B, i64 %indvars.iv, i64 %indvars.iv42 - %tmp1 = load i8, i8* %arrayidx12, align 1 + %arrayidx8 = getelementptr inbounds [1020 x i8], ptr %A, i64 %indvars.iv45, i64 %indvars.iv + %tmp = load i8, ptr %arrayidx8, align 1 + %arrayidx12 = getelementptr inbounds [1020 x i8], ptr %B, i64 %indvars.iv, i64 %indvars.iv42 + %tmp1 = load i8, ptr %arrayidx12, align 1 %mul = mul i8 %tmp1, %tmp - %arrayidx17 = getelementptr inbounds [1020 x i8], [1020 x i8]* %C, i64 %indvars.iv45, i64 %indvars.iv42 - %tmp2 = load i8, i8* %arrayidx17, align 1 + %arrayidx17 = getelementptr inbounds [1020 x i8], ptr %C, i64 %indvars.iv45, i64 %indvars.iv42 + %tmp2 = load i8, ptr %arrayidx17, align 1 %add = add i8 %mul, %tmp2 - store i8 %add, i8* %arrayidx17, align 1 + store i8 %add, ptr %arrayidx17, align 1 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 1020 br i1 %exitcond, label %for.body6, label %for.inc20 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_13.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_13.ll index 7d99da20fed0..e086dd36c4d9 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_13.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_13.ll @@ -86,7 +86,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, [2000 x double]* %C, [2000 x double]* %A, [2000 x double]* %B) { +define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, ptr %C, ptr %A, ptr %B) { entry: br label %entry.split @@ -103,15 +103,15 @@ for.body3: ; preds = %for.inc17, %for.bod for.body6: ; preds = %for.body6, %for.body3 %indvars.iv = phi i64 [ 0, %for.body3 ], [ %indvars.iv.next, %for.body6 ] - %arrayidx8 = getelementptr inbounds [2000 x double], [2000 x double]* %A, i64 %indvars.iv41, i64 %indvars.iv - %tmp = load double, double* %arrayidx8, align 8 - %arrayidx12 = getelementptr inbounds [2000 x double], [2000 x double]* %B, i64 %indvars.iv, i64 %indvars.iv38 - %tmp1 = load double, double* %arrayidx12, align 8 + %arrayidx8 = getelementptr inbounds [2000 x double], ptr %A, i64 %indvars.iv41, i64 %indvars.iv + %tmp = load double, ptr %arrayidx8, align 8 + %arrayidx12 = getelementptr inbounds [2000 x double], ptr %B, i64 %indvars.iv, i64 %indvars.iv38 + %tmp1 = load double, ptr %arrayidx12, align 8 %mul = fmul double %tmp, %tmp1 - %arrayidx16 = getelementptr inbounds [2000 x double], [2000 x double]* %C, i64 %indvars.iv41, i64 %indvars.iv38 - %tmp2 = load double, double* %arrayidx16, align 8 + %arrayidx16 = getelementptr inbounds [2000 x double], ptr %C, i64 %indvars.iv41, i64 %indvars.iv38 + %tmp2 = load double, ptr %arrayidx16, align 8 %add = fadd double %tmp2, %mul - store double %add, double* %arrayidx16, align 8 + store double %add, ptr %arrayidx16, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 2000 br i1 %exitcond, label %for.body6, label %for.inc17 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_14.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_14.ll index e46ab072c3b2..a4c71c2dace5 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_14.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_14.ll @@ -16,7 +16,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" -define void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, [1024 x double]* %A, [1024 x double]* %B, [1024 x double]* %C, double* %C1) { +define void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, ptr %A, ptr %B, ptr %C, ptr %C1) { entry: br label %entry.split @@ -33,17 +33,17 @@ for.body3: ; preds = %for.inc19, %for.bod for.body6: ; preds = %for.body6, %for.body3 %indvars.iv = phi i64 [ 0, %for.body3 ], [ %indvars.iv.next, %for.body6 ] - %tmp = load double, double* %C1, align 8 - %arrayidx9 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i64 %indvars.iv43, i64 %indvars.iv - %tmp1 = load double, double* %arrayidx9, align 8 - %arrayidx13 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %indvars.iv, i64 %indvars.iv40 - %tmp2 = load double, double* %arrayidx13, align 8 + %tmp = load double, ptr %C1, align 8 + %arrayidx9 = getelementptr inbounds [1024 x double], ptr %A, i64 %indvars.iv43, i64 %indvars.iv + %tmp1 = load double, ptr %arrayidx9, align 8 + %arrayidx13 = getelementptr inbounds [1024 x double], ptr %B, i64 %indvars.iv, i64 %indvars.iv40 + %tmp2 = load double, ptr %arrayidx13, align 8 %mul = fmul double %tmp1, %tmp2 %add = fadd double %tmp, %mul - %arrayidx17 = getelementptr inbounds [1024 x double], [1024 x double]* %C, i64 %indvars.iv43, i64 %indvars.iv40 - %tmp3 = load double, double* %arrayidx17, align 8 + %arrayidx17 = getelementptr inbounds [1024 x double], ptr %C, i64 %indvars.iv43, i64 %indvars.iv40 + %tmp3 = load double, ptr %arrayidx17, align 8 %add18 = fadd double %tmp3, %add - store double %add18, double* %arrayidx17, align 8 + store double %add18, ptr %arrayidx17, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 1024 br i1 %exitcond, label %for.body6, label %for.inc19 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_15.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_15.ll index fa8bcab84de8..a8da21955b63 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_15.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_15.ll @@ -20,7 +20,7 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @kernel_gemm([1024 x double]* %C, [1024 x double]* %A, [1024 x double]* %B, [1024 x [1024 x double]]* %D) { +define void @kernel_gemm(ptr %C, ptr %A, ptr %B, ptr %D) { entry: br label %for.cond1.preheader @@ -30,23 +30,23 @@ for.cond1.preheader: ; preds = %for.inc27, %entry for.cond4.preheader: ; preds = %for.inc24, %for.cond1.preheader %indvars.iv4 = phi i64 [ 0, %for.cond1.preheader ], [ %indvars.iv.next5, %for.inc24 ] - %arrayidx22 = getelementptr inbounds [1024 x double], [1024 x double]* %C, i64 %indvars.iv7, i64 %indvars.iv4 + %arrayidx22 = getelementptr inbounds [1024 x double], ptr %C, i64 %indvars.iv7, i64 %indvars.iv4 br label %for.body6 for.body6: ; preds = %for.body6, %for.cond4.preheader %indvars.iv = phi i64 [ 0, %for.cond4.preheader ], [ %indvars.iv.next, %for.body6 ] - %arrayidx8 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i64 %indvars.iv7, i64 %indvars.iv - %i = load double, double* %arrayidx8, align 8 - %arrayidx12 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %indvars.iv, i64 %indvars.iv4 - %i1 = load double, double* %arrayidx12, align 8 + %arrayidx8 = getelementptr inbounds [1024 x double], ptr %A, i64 %indvars.iv7, i64 %indvars.iv + %i = load double, ptr %arrayidx8, align 8 + %arrayidx12 = getelementptr inbounds [1024 x double], ptr %B, i64 %indvars.iv, i64 %indvars.iv4 + %i1 = load double, ptr %arrayidx12, align 8 %mul = fmul double %i1, %i - %arrayidx18 = getelementptr inbounds [1024 x [1024 x double]], [1024 x [1024 x double]]* %D, i64 %indvars.iv7, i64 %indvars.iv4, i64 %indvars.iv - %i2 = load double, double* %arrayidx18, align 8 + %arrayidx18 = getelementptr inbounds [1024 x [1024 x double]], ptr %D, i64 %indvars.iv7, i64 %indvars.iv4, i64 %indvars.iv + %i2 = load double, ptr %arrayidx18, align 8 %add = fadd double %i2, %mul - store double %add, double* %arrayidx18, align 8 - %i3 = load double, double* %arrayidx22, align 8 + store double %add, ptr %arrayidx18, align 8 + %i3 = load double, ptr %arrayidx22, align 8 %add23 = fadd double %i3, %mul - store double %add23, double* %arrayidx22, align 8 + store double %add23, ptr %arrayidx22, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond.not = icmp eq i64 %indvars.iv.next, 1024 br i1 %exitcond.not, label %for.inc24, label %for.body6 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_16.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_16.ll index d48e6296c403..c1ad3017a0d4 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_16.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_16.ll @@ -13,7 +13,7 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define internal void @kernel_tc(i32 %ni, i32 %nj, i32 %nl, i32 %nq, i32 %nw, double %alpha, double %beta, [1024 x double]* %C, [64 x [64 x double]]* %A, [1024 x [64 x double]]* %B) { +define internal void @kernel_tc(i32 %ni, i32 %nj, i32 %nl, i32 %nq, i32 %nw, double %alpha, double %beta, ptr %C, ptr %A, ptr %B) { entry: br label %for.cond1.preheader @@ -31,15 +31,15 @@ for.cond7.preheader: ; preds = %for.inc24, %for.con for.body9: ; preds = %for.body9, %for.cond7.preheader %indvars.iv = phi i64 [ 0, %for.cond7.preheader ], [ %indvars.iv.next, %for.body9 ] - %arrayidx13 = getelementptr inbounds [64 x [64 x double]], [64 x [64 x double]]* %A, i64 %indvars.iv43, i64 %indvars.iv37, i64 %indvars.iv - %i = load double, double* %arrayidx13, align 8 - %arrayidx19 = getelementptr inbounds [1024 x [64 x double]], [1024 x [64 x double]]* %B, i64 %indvars.iv, i64 %indvars.iv40, i64 %indvars.iv37 - %i1 = load double, double* %arrayidx19, align 8 + %arrayidx13 = getelementptr inbounds [64 x [64 x double]], ptr %A, i64 %indvars.iv43, i64 %indvars.iv37, i64 %indvars.iv + %i = load double, ptr %arrayidx13, align 8 + %arrayidx19 = getelementptr inbounds [1024 x [64 x double]], ptr %B, i64 %indvars.iv, i64 %indvars.iv40, i64 %indvars.iv37 + %i1 = load double, ptr %arrayidx19, align 8 %mul = fmul fast double %i1, %i - %arrayidx23 = getelementptr inbounds [1024 x double], [1024 x double]* %C, i64 %indvars.iv43, i64 %indvars.iv40 - %i2 = load double, double* %arrayidx23, align 8 + %arrayidx23 = getelementptr inbounds [1024 x double], ptr %C, i64 %indvars.iv43, i64 %indvars.iv40 + %i2 = load double, ptr %arrayidx23, align 8 %add = fadd fast double %i2, %mul - store double %add, double* %arrayidx23, align 8 + store double %add, ptr %arrayidx23, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 64 br i1 %exitcond, label %for.body9, label %for.inc24 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_17.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_17.ll index 904ff4c98753..002816a4ae80 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_17.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_17.ll @@ -13,7 +13,7 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define internal void @kernel_tc(i32 %ni, i32 %nj, i32 %nk, i32 %nl, double %alpha, double %beta, [1024 x [32 x double]]* %C, [32 x [1024 x double]]* %A, [1024 x double]* %B) { +define internal void @kernel_tc(i32 %ni, i32 %nj, i32 %nk, i32 %nl, double %alpha, double %beta, ptr %C, ptr %A, ptr %B) { entry: br label %for.cond1.preheader @@ -31,15 +31,15 @@ for.cond7.preheader: ; preds = %for.inc24, %for.con for.body9: ; preds = %for.body9, %for.cond7.preheader %indvars.iv = phi i64 [ 0, %for.cond7.preheader ], [ %indvars.iv.next, %for.body9 ] - %arrayidx13 = getelementptr inbounds [32 x [1024 x double]], [32 x [1024 x double]]* %A, i64 %indvars.iv43, i64 %indvars.iv37, i64 %indvars.iv - %i = load double, double* %arrayidx13, align 8 - %arrayidx17 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %indvars.iv, i64 %indvars.iv40 - %i1 = load double, double* %arrayidx17, align 8 + %arrayidx13 = getelementptr inbounds [32 x [1024 x double]], ptr %A, i64 %indvars.iv43, i64 %indvars.iv37, i64 %indvars.iv + %i = load double, ptr %arrayidx13, align 8 + %arrayidx17 = getelementptr inbounds [1024 x double], ptr %B, i64 %indvars.iv, i64 %indvars.iv40 + %i1 = load double, ptr %arrayidx17, align 8 %mul = fmul fast double %i1, %i - %arrayidx23 = getelementptr inbounds [1024 x [32 x double]], [1024 x [32 x double]]* %C, i64 %indvars.iv43, i64 %indvars.iv40, i64 %indvars.iv37 - %i2 = load double, double* %arrayidx23, align 8 + %arrayidx23 = getelementptr inbounds [1024 x [32 x double]], ptr %C, i64 %indvars.iv43, i64 %indvars.iv40, i64 %indvars.iv37 + %i2 = load double, ptr %arrayidx23, align 8 %add = fadd fast double %i2, %mul - store double %add, double* %arrayidx23, align 8 + store double %add, ptr %arrayidx23, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 1024 br i1 %exitcond, label %for.body9, label %for.inc24 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_18.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_18.ll index c7057a42e448..d5679c7ae2f7 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_18.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_18.ll @@ -15,7 +15,7 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define internal void @kernel_tc(i32 %ni, i32 %nj, i32 %nk, i32 %nl, i32 %nq, i32 %nw, double %alpha, double %beta, [32 x [32 x [32 x double]]]* %C, [32 x [32 x [32 x double]]]* %A, [32 x [32 x [32 x double]]]* %B) { +define internal void @kernel_tc(i32 %ni, i32 %nj, i32 %nk, i32 %nl, i32 %nq, i32 %nw, double %alpha, double %beta, ptr %C, ptr %A, ptr %B) { entry: br label %for.cond1.preheader @@ -41,15 +41,15 @@ for.cond13.preheader: ; preds = %for.inc38, %for.con for.body15: ; preds = %for.body15, %for.cond13.preheader %indvars.iv = phi i64 [ 0, %for.cond13.preheader ], [ %indvars.iv.next, %for.body15 ] - %arrayidx21 = getelementptr inbounds [32 x [32 x [32 x double]]], [32 x [32 x [32 x double]]]* %A, i64 %indvars.iv71, i64 %indvars.iv62, i64 %indvars.iv68, i64 %indvars.iv - %i = load double, double* %arrayidx21, align 8 - %arrayidx29 = getelementptr inbounds [32 x [32 x [32 x double]]], [32 x [32 x [32 x double]]]* %B, i64 %indvars.iv, i64 %indvars.iv59, i64 %indvars.iv62, i64 %indvars.iv65 - %i1 = load double, double* %arrayidx29, align 8 + %arrayidx21 = getelementptr inbounds [32 x [32 x [32 x double]]], ptr %A, i64 %indvars.iv71, i64 %indvars.iv62, i64 %indvars.iv68, i64 %indvars.iv + %i = load double, ptr %arrayidx21, align 8 + %arrayidx29 = getelementptr inbounds [32 x [32 x [32 x double]]], ptr %B, i64 %indvars.iv, i64 %indvars.iv59, i64 %indvars.iv62, i64 %indvars.iv65 + %i1 = load double, ptr %arrayidx29, align 8 %mul = fmul fast double %i1, %i - %arrayidx37 = getelementptr inbounds [32 x [32 x [32 x double]]], [32 x [32 x [32 x double]]]* %C, i64 %indvars.iv71, i64 %indvars.iv68, i64 %indvars.iv65, i64 %indvars.iv59 - %i2 = load double, double* %arrayidx37, align 8 + %arrayidx37 = getelementptr inbounds [32 x [32 x [32 x double]]], ptr %C, i64 %indvars.iv71, i64 %indvars.iv68, i64 %indvars.iv65, i64 %indvars.iv59 + %i2 = load double, ptr %arrayidx37, align 8 %add = fadd fast double %i2, %mul - store double %add, double* %arrayidx37, align 8 + store double %add, ptr %arrayidx37, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 32 br i1 %exitcond, label %for.body15, label %for.inc38 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_19.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_19.ll index 53a03112e28b..4e1620abd252 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_19.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_19.ll @@ -15,7 +15,7 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define internal void @kernel_tc([8 x [4 x [1024 x [4 x double]]]]* %C, [4 x [8 x [1024 x [8 x double]]]]* %A, [1024 x double]* %B) { +define internal void @kernel_tc(ptr %C, ptr %A, ptr %B) { entry: br label %for.cond1.preheader @@ -41,15 +41,15 @@ for.cond13.preheader: ; preds = %for.inc38, %for.con for.body15: ; preds = %for.body15, %for.cond13.preheader %indvars.iv = phi i64 [ 0, %for.cond13.preheader ], [ %indvars.iv.next, %for.body15 ] - %arrayidx23 = getelementptr inbounds [4 x [8 x [1024 x [8 x double]]]], [4 x [8 x [1024 x [8 x double]]]]* %A, i64 %indvars.iv, i64 %indvars.iv65, i64 %indvars.iv68, i64 %indvars.iv62, i64 %indvars.iv71 - %i = load double, double* %arrayidx23, align 8 - %arrayidx27 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %indvars.iv62, i64 %indvars.iv59 - %i1 = load double, double* %arrayidx27, align 8 + %arrayidx23 = getelementptr inbounds [4 x [8 x [1024 x [8 x double]]]], ptr %A, i64 %indvars.iv, i64 %indvars.iv65, i64 %indvars.iv68, i64 %indvars.iv62, i64 %indvars.iv71 + %i = load double, ptr %arrayidx23, align 8 + %arrayidx27 = getelementptr inbounds [1024 x double], ptr %B, i64 %indvars.iv62, i64 %indvars.iv59 + %i1 = load double, ptr %arrayidx27, align 8 %mul = fmul fast double %i1, %i - %arrayidx37 = getelementptr inbounds [8 x [4 x [1024 x [4 x double]]]], [8 x [4 x [1024 x [4 x double]]]]* %C, i64 %indvars.iv71, i64 %indvars.iv68, i64 %indvars.iv65, i64 %indvars.iv59, i64 %indvars.iv - %i2 = load double, double* %arrayidx37, align 8 + %arrayidx37 = getelementptr inbounds [8 x [4 x [1024 x [4 x double]]]], ptr %C, i64 %indvars.iv71, i64 %indvars.iv68, i64 %indvars.iv65, i64 %indvars.iv59, i64 %indvars.iv + %i2 = load double, ptr %arrayidx37, align 8 %add = fadd fast double %i2, %mul - store double %add, double* %arrayidx37, align 8 + store double %add, ptr %arrayidx37, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 4 br i1 %exitcond, label %for.body15, label %for.inc38 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_2.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_2.ll index fd07806714ea..01e336ebc60f 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_2.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_2.ll @@ -21,7 +21,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" -define internal void @kernel_gemm(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %arg4, [1056 x double]* %arg5, [1024 x double]* %arg6, [1056 x double]* %arg7) #0 { +define internal void @kernel_gemm(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %arg4, ptr %arg5, ptr %arg6, ptr %arg7) #0 { bb: br label %bb8 @@ -31,23 +31,23 @@ bb8: ; preds = %bb29, %bb bb9: ; preds = %bb26, %bb8 %tmp10 = phi i64 [ 0, %bb8 ], [ %tmp27, %bb26 ] - %tmp11 = getelementptr inbounds [1056 x double], [1056 x double]* %arg5, i64 %tmp, i64 %tmp10 - %tmp12 = load double, double* %tmp11, align 8 + %tmp11 = getelementptr inbounds [1056 x double], ptr %arg5, i64 %tmp, i64 %tmp10 + %tmp12 = load double, ptr %tmp11, align 8 %tmp13 = fmul double %tmp12, %arg4 - store double %tmp13, double* %tmp11, align 8 + store double %tmp13, ptr %tmp11, align 8 br label %Copy_0 Copy_0: ; preds = %Copy_0, %bb9 %tmp15 = phi i64 [ 0, %bb9 ], [ %tmp24, %Copy_0 ] - %tmp16 = getelementptr inbounds [1024 x double], [1024 x double]* %arg6, i64 %tmp, i64 %tmp15 - %tmp17 = load double, double* %tmp16, align 8 + %tmp16 = getelementptr inbounds [1024 x double], ptr %arg6, i64 %tmp, i64 %tmp15 + %tmp17 = load double, ptr %tmp16, align 8 %tmp18 = fmul double %tmp17, %arg3 - %tmp19 = getelementptr inbounds [1056 x double], [1056 x double]* %arg7, i64 %tmp15, i64 %tmp10 - %tmp20 = load double, double* %tmp19, align 8 + %tmp19 = getelementptr inbounds [1056 x double], ptr %arg7, i64 %tmp15, i64 %tmp10 + %tmp20 = load double, ptr %tmp19, align 8 %tmp21 = fmul double %tmp18, %tmp20 - %tmp22 = load double, double* %tmp11, align 8 + %tmp22 = load double, ptr %tmp11, align 8 %tmp23 = fadd double %tmp22, %tmp21 - store double %tmp23, double* %tmp11, align 8 + store double %tmp23, ptr %tmp11, align 8 %tmp24 = add nuw nsw i64 %tmp15, 1 %tmp25 = icmp ne i64 %tmp24, 1024 br i1 %tmp25, label %Copy_0, label %bb26 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_20.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_20.ll index 7e5d0ca4aa4b..0be08d8d493c 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_20.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_20.ll @@ -16,7 +16,7 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define internal void @kernel_tc([16 x [8 x [8 x [8 x [8 x double]]]]]* %C, [8 x [16 x [8 x double]]]* %A, [8 x [1024 x [16 x double]]]* %B) { +define internal void @kernel_tc(ptr %C, ptr %A, ptr %B) { entry: br label %for.cond1.preheader @@ -46,15 +46,15 @@ for.cond16.preheader: ; preds = %for.inc45, %for.con for.body18: ; preds = %for.body18, %for.cond16.preheader %indvars.iv = phi i64 [ 0, %for.cond16.preheader ], [ %indvars.iv.next, %for.body18 ] - %arrayidx24 = getelementptr inbounds [8 x [16 x [8 x double]]], [8 x [16 x [8 x double]]]* %A, i64 %indvars.iv76, i64 %indvars.iv, i64 %indvars.iv82, i64 %indvars.iv79 - %i = load double, double* %arrayidx24, align 8 - %arrayidx32 = getelementptr inbounds [8 x [1024 x [16 x double]]], [8 x [1024 x [16 x double]]]* %B, i64 %indvars.iv73, i64 %indvars.iv70, i64 %indvars.iv76, i64 %indvars.iv85 - %i1 = load double, double* %arrayidx32, align 8 + %arrayidx24 = getelementptr inbounds [8 x [16 x [8 x double]]], ptr %A, i64 %indvars.iv76, i64 %indvars.iv, i64 %indvars.iv82, i64 %indvars.iv79 + %i = load double, ptr %arrayidx24, align 8 + %arrayidx32 = getelementptr inbounds [8 x [1024 x [16 x double]]], ptr %B, i64 %indvars.iv73, i64 %indvars.iv70, i64 %indvars.iv76, i64 %indvars.iv85 + %i1 = load double, ptr %arrayidx32, align 8 %mul = fmul fast double %i1, %i - %arrayidx44 = getelementptr inbounds [16 x [8 x [8 x [8 x [8 x double]]]]], [16 x [8 x [8 x [8 x [8 x double]]]]]* %C, i64 %indvars.iv85, i64 %indvars.iv82, i64 %indvars.iv79, i64 %indvars.iv73, i64 %indvars.iv70, i64 %indvars.iv - %i2 = load double, double* %arrayidx44, align 8 + %arrayidx44 = getelementptr inbounds [16 x [8 x [8 x [8 x [8 x double]]]]], ptr %C, i64 %indvars.iv85, i64 %indvars.iv82, i64 %indvars.iv79, i64 %indvars.iv73, i64 %indvars.iv70, i64 %indvars.iv + %i2 = load double, ptr %arrayidx44, align 8 %add = fadd fast double %i2, %mul - store double %add, double* %arrayidx44, align 8 + store double %add, ptr %arrayidx44, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 8 br i1 %exitcond, label %for.body18, label %for.inc45 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_21.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_21.ll index a255abacfaba..9b2df49698a1 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_21.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_21.ll @@ -13,7 +13,7 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @foo([64 x double]* noundef %C, [64 x [64 x double]]* noundef %A, [64 x [64 x double]]* noundef %B) { +define void @foo(ptr noundef %C, ptr noundef %A, ptr noundef %B) { entry: br label %for.cond1.preheader @@ -31,15 +31,15 @@ for.cond9.preheader: ; preds = %for.inc27, %for.con for.body12: ; preds = %for.body12, %for.cond9.preheader %indvars.iv = phi i64 [ 0, %for.cond9.preheader ], [ %indvars.iv.next, %for.body12 ] - %arrayidx16 = getelementptr inbounds [64 x [64 x double]], [64 x [64 x double]]* %A, i64 %indvars.iv49, i64 %indvars.iv41, i64 %indvars.iv - %i = load double, double* %arrayidx16, align 8 - %arrayidx22 = getelementptr inbounds [64 x [64 x double]], [64 x [64 x double]]* %B, i64 %indvars.iv, i64 %indvars.iv45, i64 %indvars.iv49 - %i1 = load double, double* %arrayidx22, align 8 + %arrayidx16 = getelementptr inbounds [64 x [64 x double]], ptr %A, i64 %indvars.iv49, i64 %indvars.iv41, i64 %indvars.iv + %i = load double, ptr %arrayidx16, align 8 + %arrayidx22 = getelementptr inbounds [64 x [64 x double]], ptr %B, i64 %indvars.iv, i64 %indvars.iv45, i64 %indvars.iv49 + %i1 = load double, ptr %arrayidx22, align 8 %mul = fmul fast double %i1, %i - %arrayidx26 = getelementptr inbounds [64 x double], [64 x double]* %C, i64 %indvars.iv49, i64 %indvars.iv45 - %i2 = load double, double* %arrayidx26, align 8 + %arrayidx26 = getelementptr inbounds [64 x double], ptr %C, i64 %indvars.iv49, i64 %indvars.iv45 + %i2 = load double, ptr %arrayidx26, align 8 %add = fadd fast double %i2, %mul - store double %add, double* %arrayidx26, align 8 + store double %add, ptr %arrayidx26, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 32 br i1 %exitcond, label %for.body12, label %for.inc27 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_22.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_22.ll index 1d36d49a4529..3d3641df5098 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_22.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_22.ll @@ -13,7 +13,7 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @foo([64 x double]* noundef %C, [64 x [64 x double]]* noundef %A, [64 x [64 x double]]* noundef %B) { +define void @foo(ptr noundef %C, ptr noundef %A, ptr noundef %B) { entry: br label %for.cond1.preheader @@ -31,16 +31,16 @@ for.cond9.preheader: ; preds = %for.inc28, %for.con for.body12: ; preds = %for.body12, %for.cond9.preheader %indvars.iv = phi i64 [ 0, %for.cond9.preheader ], [ %indvars.iv.next, %for.body12 ] - %arrayidx16 = getelementptr inbounds [64 x [64 x double]], [64 x [64 x double]]* %A, i64 %indvars.iv50, i64 %indvars.iv42, i64 %indvars.iv - %i = load double, double* %arrayidx16, align 8 + %arrayidx16 = getelementptr inbounds [64 x [64 x double]], ptr %A, i64 %indvars.iv50, i64 %indvars.iv42, i64 %indvars.iv + %i = load double, ptr %arrayidx16, align 8 %i1 = add nuw nsw i64 %indvars.iv50, 3 - %arrayidx22 = getelementptr inbounds [64 x [64 x double]], [64 x [64 x double]]* %B, i64 %indvars.iv, i64 %indvars.iv46, i64 %i1 - %i2 = load double, double* %arrayidx22, align 8 + %arrayidx22 = getelementptr inbounds [64 x [64 x double]], ptr %B, i64 %indvars.iv, i64 %indvars.iv46, i64 %i1 + %i2 = load double, ptr %arrayidx22, align 8 %mul = fmul fast double %i2, %i - %arrayidx26 = getelementptr inbounds [64 x double], [64 x double]* %C, i64 %indvars.iv50, i64 %indvars.iv46 - %i3 = load double, double* %arrayidx26, align 8 + %arrayidx26 = getelementptr inbounds [64 x double], ptr %C, i64 %indvars.iv50, i64 %indvars.iv46 + %i3 = load double, ptr %arrayidx26, align 8 %add27 = fadd fast double %i3, %mul - store double %add27, double* %arrayidx26, align 8 + store double %add27, ptr %arrayidx26, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 32 br i1 %exitcond, label %for.body12, label %for.inc28 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_24.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_24.ll index 82226e37cc19..895961488014 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_24.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_24.ll @@ -14,7 +14,7 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define internal void @kernel_tc(i32 %ni, i32 %nj, i32 %nl, i32 %nq, i32 %nw, double %alpha, double %beta, [1024 x double]* %C, [64 x [64 x double]]* %A, [1024 x [64 x double]]* %B) { +define internal void @kernel_tc(i32 %ni, i32 %nj, i32 %nl, i32 %nq, i32 %nw, double %alpha, double %beta, ptr %C, ptr %A, ptr %B) { entry: br label %for.cond1.preheader @@ -32,15 +32,15 @@ for.cond7.preheader: ; preds = %for.inc24, %for.con for.body9: ; preds = %for.body9, %for.cond7.preheader %indvars.iv = phi i64 [ 0, %for.cond7.preheader ], [ %indvars.iv.next, %for.body9 ] - %arrayidx13 = getelementptr inbounds [64 x [64 x double]], [64 x [64 x double]]* %A, i64 %indvars.iv43, i64 %indvars.iv37, i64 %indvars.iv - %i = load double, double* %arrayidx13, align 8 - %arrayidx19 = getelementptr inbounds [1024 x [64 x double]], [1024 x [64 x double]]* %B, i64 %indvars.iv, i64 %indvars.iv40, i64 %indvars.iv37 - %i1 = load double, double* %arrayidx19, align 8 + %arrayidx13 = getelementptr inbounds [64 x [64 x double]], ptr %A, i64 %indvars.iv43, i64 %indvars.iv37, i64 %indvars.iv + %i = load double, ptr %arrayidx13, align 8 + %arrayidx19 = getelementptr inbounds [1024 x [64 x double]], ptr %B, i64 %indvars.iv, i64 %indvars.iv40, i64 %indvars.iv37 + %i1 = load double, ptr %arrayidx19, align 8 %mul = fmul fast double %i1, %i - %arrayidx23 = getelementptr inbounds [1024 x double], [1024 x double]* %C, i64 %indvars.iv43, i64 %indvars.iv40 - %i2 = load double, double* %arrayidx23, align 8 + %arrayidx23 = getelementptr inbounds [1024 x double], ptr %C, i64 %indvars.iv43, i64 %indvars.iv40 + %i2 = load double, ptr %arrayidx23, align 8 %add = fadd fast double %i2, %mul - store double %add, double* %arrayidx23, align 8 + store double %add, ptr %arrayidx23, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 64 br i1 %exitcond, label %for.body9, label %for.inc24 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_25.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_25.ll index 71cbe45657d8..8a3957909d9d 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_25.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_25.ll @@ -12,7 +12,7 @@ target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" target triple = "arm64-apple-macosx12.0.0" -define void @foo([64 x double]* noundef %C, [64 x double]* noundef %A, [64 x [64 x double]]* noundef %B) { +define void @foo(ptr noundef %C, ptr noundef %A, ptr noundef %B) { entry: br label %for.cond1.preheader @@ -25,8 +25,8 @@ for.cond.cleanup: ; preds = %for.cond.cleanup3 for.cond5.preheader: ; preds = %for.cond.cleanup7, %for.cond1.preheader %indvars.iv41 = phi i64 [ 0, %for.cond1.preheader ], [ %indvars.iv.next42, %for.cond.cleanup7 ] - %arrayidx20 = getelementptr inbounds [64 x double], [64 x double]* %C, i64 %indvars.iv45, i64 %indvars.iv41 - %.pre = load double, double* %arrayidx20, align 8 + %arrayidx20 = getelementptr inbounds [64 x double], ptr %C, i64 %indvars.iv45, i64 %indvars.iv41 + %.pre = load double, ptr %arrayidx20, align 8 br label %for.body8 for.cond.cleanup3: ; preds = %for.cond.cleanup7 @@ -42,12 +42,12 @@ for.cond.cleanup7: ; preds = %for.body8 for.body8: ; preds = %for.body8, %for.cond5.preheader %i = phi double [ %.pre, %for.cond5.preheader ], [ %i3, %for.body8 ] %indvars.iv = phi i64 [ 0, %for.cond5.preheader ], [ %indvars.iv.next, %for.body8 ] - %arrayidx10 = getelementptr inbounds [64 x double], [64 x double]* %A, i64 %indvars.iv45, i64 %indvars.iv - %i1 = load double, double* %arrayidx10, align 8 - %arrayidx16 = getelementptr inbounds [64 x [64 x double]], [64 x [64 x double]]* %B, i64 %indvars.iv, i64 %indvars.iv41, i64 %indvars.iv45 - %i2 = load double, double* %arrayidx16, align 8 + %arrayidx10 = getelementptr inbounds [64 x double], ptr %A, i64 %indvars.iv45, i64 %indvars.iv + %i1 = load double, ptr %arrayidx10, align 8 + %arrayidx16 = getelementptr inbounds [64 x [64 x double]], ptr %B, i64 %indvars.iv, i64 %indvars.iv41, i64 %indvars.iv45 + %i2 = load double, ptr %arrayidx16, align 8 %i3 = tail call double @llvm.fmuladd.f64(double %i1, double %i2, double %i) - store double %i3, double* %arrayidx20, align 8 + store double %i3, ptr %arrayidx20, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond.not = icmp eq i64 %indvars.iv.next, 32 br i1 %exitcond.not, label %for.cond.cleanup7, label %for.body8 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_3.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_3.ll index 10beeec4853e..fab3ac5e58dc 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_3.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_3.ll @@ -144,7 +144,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" -define internal void @kernel_gemm(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %arg4, [1056 x double]* %arg5, [1024 x double]* %arg6, [1056 x double]* %arg7) #0 { +define internal void @kernel_gemm(i32 %arg, i32 %arg1, i32 %arg2, double %arg3, double %arg4, ptr %arg5, ptr %arg6, ptr %arg7) #0 { bb: br label %bb8 @@ -154,23 +154,23 @@ bb8: ; preds = %bb29, %bb bb9: ; preds = %bb26, %bb8 %tmp10 = phi i64 [ 0, %bb8 ], [ %tmp27, %bb26 ] - %tmp11 = getelementptr inbounds [1056 x double], [1056 x double]* %arg5, i64 %tmp, i64 %tmp10 - %tmp12 = load double, double* %tmp11, align 8 + %tmp11 = getelementptr inbounds [1056 x double], ptr %arg5, i64 %tmp, i64 %tmp10 + %tmp12 = load double, ptr %tmp11, align 8 %tmp13 = fmul double %tmp12, %arg4 - store double %tmp13, double* %tmp11, align 8 + store double %tmp13, ptr %tmp11, align 8 br label %Copy_0 Copy_0: ; preds = %Copy_0, %bb9 %tmp15 = phi i64 [ 0, %bb9 ], [ %tmp24, %Copy_0 ] - %tmp16 = getelementptr inbounds [1024 x double], [1024 x double]* %arg6, i64 %tmp, i64 %tmp15 - %tmp17 = load double, double* %tmp16, align 8 + %tmp16 = getelementptr inbounds [1024 x double], ptr %arg6, i64 %tmp, i64 %tmp15 + %tmp17 = load double, ptr %tmp16, align 8 %tmp18 = fmul double %tmp17, %arg3 - %tmp19 = getelementptr inbounds [1056 x double], [1056 x double]* %arg7, i64 %tmp15, i64 %tmp10 - %tmp20 = load double, double* %tmp19, align 8 + %tmp19 = getelementptr inbounds [1056 x double], ptr %arg7, i64 %tmp15, i64 %tmp10 + %tmp20 = load double, ptr %tmp19, align 8 %tmp21 = fmul double %tmp18, %tmp20 - %tmp22 = load double, double* %tmp11, align 8 + %tmp22 = load double, ptr %tmp11, align 8 %tmp23 = fadd double %tmp22, %tmp21 - store double %tmp23, double* %tmp11, align 8 + store double %tmp23, ptr %tmp11, align 8 %tmp24 = add nuw nsw i64 %tmp15, 1 %tmp25 = icmp ne i64 %tmp24, 1024 br i1 %tmp25, label %Copy_0, label %bb26 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_4.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_4.ll index 4bc8928cd3bd..dc0edc6c5a3b 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_4.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_4.ll @@ -81,7 +81,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" -define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, [1024 x double]* %C, [1024 x double]* %A, [1024 x double]* %B) { +define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, ptr %C, ptr %A, ptr %B) { entry: br label %entry.split @@ -98,15 +98,15 @@ for.cond4.preheader: ; preds = %for.inc17, %for.con for.body6: ; preds = %for.body6, %for.cond4.preheader %indvars.iv = phi i64 [ 0, %for.cond4.preheader ], [ %indvars.iv.next, %for.body6 ] - %arrayidx8 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i64 %indvars.iv41, i64 %indvars.iv38 - %tmp = load double, double* %arrayidx8, align 8 - %arrayidx12 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %indvars.iv38, i64 %indvars.iv - %tmp1 = load double, double* %arrayidx12, align 8 + %arrayidx8 = getelementptr inbounds [1024 x double], ptr %A, i64 %indvars.iv41, i64 %indvars.iv38 + %tmp = load double, ptr %arrayidx8, align 8 + %arrayidx12 = getelementptr inbounds [1024 x double], ptr %B, i64 %indvars.iv38, i64 %indvars.iv + %tmp1 = load double, ptr %arrayidx12, align 8 %mul = fmul double %tmp, %tmp1 - %arrayidx16 = getelementptr inbounds [1024 x double], [1024 x double]* %C, i64 %indvars.iv41, i64 %indvars.iv - %tmp2 = load double, double* %arrayidx16, align 8 + %arrayidx16 = getelementptr inbounds [1024 x double], ptr %C, i64 %indvars.iv41, i64 %indvars.iv + %tmp2 = load double, ptr %arrayidx16, align 8 %add = fadd double %tmp2, %mul - store double %add, double* %arrayidx16, align 8 + store double %add, ptr %arrayidx16, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 1024 br i1 %exitcond, label %for.body6, label %for.inc17 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_5.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_5.ll index 83a725f420ef..6581566bf13f 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_5.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_5.ll @@ -432,7 +432,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" -define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, [1024 x double]* %C, [1024 x double]* %A, [1024 x double]* %B) #0 { +define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, ptr %C, ptr %A, ptr %B) #0 { entry: br label %entry.split @@ -461,15 +461,15 @@ for.body6.lr.ph: ; preds = %for.cond4.preheader for.body6: ; preds = %for.body6, %for.body6.lr.ph %indvars.iv = phi i64 [ 0, %for.body6.lr.ph ], [ %indvars.iv.next, %for.body6 ] - %arrayidx8 = getelementptr inbounds [1024 x double], [1024 x double]* %A, i64 %indvars.iv45, i64 %indvars.iv - %tmp = load double, double* %arrayidx8, align 8 - %arrayidx12 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %indvars.iv, i64 %indvars.iv41 - %tmp1 = load double, double* %arrayidx12, align 8 + %arrayidx8 = getelementptr inbounds [1024 x double], ptr %A, i64 %indvars.iv45, i64 %indvars.iv + %tmp = load double, ptr %arrayidx8, align 8 + %arrayidx12 = getelementptr inbounds [1024 x double], ptr %B, i64 %indvars.iv, i64 %indvars.iv41 + %tmp1 = load double, ptr %arrayidx12, align 8 %mul = fmul double %tmp, %tmp1 - %arrayidx16 = getelementptr inbounds [1024 x double], [1024 x double]* %C, i64 %indvars.iv45, i64 %indvars.iv41 - %tmp2 = load double, double* %arrayidx16, align 8 + %arrayidx16 = getelementptr inbounds [1024 x double], ptr %C, i64 %indvars.iv45, i64 %indvars.iv41 + %tmp2 = load double, ptr %arrayidx16, align 8 %add = fadd double %tmp2, %mul - store double %add, double* %arrayidx16, align 8 + store double %add, ptr %arrayidx16, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %wide.trip.count = zext i32 %nk to i64 %exitcond = icmp ne i64 %indvars.iv.next, %wide.trip.count diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_6.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_6.ll index 4d0739c93ac1..bcf1fc9fe813 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_6.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_6.ll @@ -128,7 +128,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" -define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, [1020 x double]* %C, [1020 x double]* %A, [1020 x double]* %B) #0 { +define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, ptr %C, ptr %A, ptr %B) #0 { entry: br label %entry.split @@ -145,15 +145,15 @@ for.cond4.preheader: ; preds = %for.inc17, %for.con for.body6: ; preds = %for.body6, %for.cond4.preheader %indvars.iv = phi i64 [ 0, %for.cond4.preheader ], [ %indvars.iv.next, %for.body6 ] - %arrayidx8 = getelementptr inbounds [1020 x double], [1020 x double]* %A, i64 %indvars.iv41, i64 %indvars.iv - %tmp = load double, double* %arrayidx8, align 8 - %arrayidx12 = getelementptr inbounds [1020 x double], [1020 x double]* %B, i64 %indvars.iv, i64 %indvars.iv38 - %tmp1 = load double, double* %arrayidx12, align 8 + %arrayidx8 = getelementptr inbounds [1020 x double], ptr %A, i64 %indvars.iv41, i64 %indvars.iv + %tmp = load double, ptr %arrayidx8, align 8 + %arrayidx12 = getelementptr inbounds [1020 x double], ptr %B, i64 %indvars.iv, i64 %indvars.iv38 + %tmp1 = load double, ptr %arrayidx12, align 8 %mul = fmul double %tmp, %tmp1 - %arrayidx16 = getelementptr inbounds [1020 x double], [1020 x double]* %C, i64 %indvars.iv41, i64 %indvars.iv38 - %tmp2 = load double, double* %arrayidx16, align 8 + %arrayidx16 = getelementptr inbounds [1020 x double], ptr %C, i64 %indvars.iv41, i64 %indvars.iv38 + %tmp2 = load double, ptr %arrayidx16, align 8 %add = fadd double %tmp2, %mul - store double %add, double* %arrayidx16, align 8 + store double %add, ptr %arrayidx16, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 1020 br i1 %exitcond, label %for.body6, label %for.inc17 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_7.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_7.ll index 87a0c3058379..77a3e02a0063 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_7.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_7.ll @@ -112,7 +112,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" ; Function Attrs: noinline nounwind uwtable -define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, float %alpha, float %beta, [1024 x float]* %C, [1024 x float]* %A, [1024 x float]* %B) #0 { +define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, float %alpha, float %beta, ptr %C, ptr %A, ptr %B) #0 { entry: br label %entry.split @@ -129,15 +129,15 @@ for.cond4.preheader: ; preds = %for.inc17, %for.con for.body6: ; preds = %for.body6, %for.cond4.preheader %indvars.iv = phi i64 [ 0, %for.cond4.preheader ], [ %indvars.iv.next, %for.body6 ] - %arrayidx8 = getelementptr inbounds [1024 x float], [1024 x float]* %A, i64 %indvars.iv41, i64 %indvars.iv - %tmp = load float, float* %arrayidx8, align 4 - %arrayidx12 = getelementptr inbounds [1024 x float], [1024 x float]* %B, i64 %indvars.iv, i64 %indvars.iv38 - %tmp1 = load float, float* %arrayidx12, align 4 + %arrayidx8 = getelementptr inbounds [1024 x float], ptr %A, i64 %indvars.iv41, i64 %indvars.iv + %tmp = load float, ptr %arrayidx8, align 4 + %arrayidx12 = getelementptr inbounds [1024 x float], ptr %B, i64 %indvars.iv, i64 %indvars.iv38 + %tmp1 = load float, ptr %arrayidx12, align 4 %mul = fmul float %tmp, %tmp1 - %arrayidx16 = getelementptr inbounds [1024 x float], [1024 x float]* %C, i64 %indvars.iv41, i64 %indvars.iv38 - %tmp2 = load float, float* %arrayidx16, align 4 + %arrayidx16 = getelementptr inbounds [1024 x float], ptr %C, i64 %indvars.iv41, i64 %indvars.iv38 + %tmp2 = load float, ptr %arrayidx16, align 4 %add = fadd float %tmp2, %mul - store float %add, float* %arrayidx16, align 4 + store float %add, ptr %arrayidx16, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 1024 br i1 %exitcond, label %for.body6, label %for.inc17 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_8.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_8.ll index 9493eaf5d3ec..d02bc359e79d 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_8.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_8.ll @@ -81,7 +81,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" ; Function Attrs: noinline nounwind uwtable -define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, [1024 x double]* %C, [1024 x float]* %A, [1024 x double]* %B) #0 { +define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, double %alpha, double %beta, ptr %C, ptr %A, ptr %B) #0 { entry: br label %entry.split @@ -98,16 +98,16 @@ for.cond4.preheader: ; preds = %for.inc17, %for.con for.body6: ; preds = %for.body6, %for.cond4.preheader %indvars.iv = phi i64 [ 0, %for.cond4.preheader ], [ %indvars.iv.next, %for.body6 ] - %arrayidx8 = getelementptr inbounds [1024 x float], [1024 x float]* %A, i64 %indvars.iv41, i64 %indvars.iv - %tmp = load float, float* %arrayidx8, align 4 + %arrayidx8 = getelementptr inbounds [1024 x float], ptr %A, i64 %indvars.iv41, i64 %indvars.iv + %tmp = load float, ptr %arrayidx8, align 4 %conv = fpext float %tmp to double - %arrayidx12 = getelementptr inbounds [1024 x double], [1024 x double]* %B, i64 %indvars.iv, i64 %indvars.iv38 - %tmp1 = load double, double* %arrayidx12, align 8 + %arrayidx12 = getelementptr inbounds [1024 x double], ptr %B, i64 %indvars.iv, i64 %indvars.iv38 + %tmp1 = load double, ptr %arrayidx12, align 8 %mul = fmul double %conv, %tmp1 - %arrayidx16 = getelementptr inbounds [1024 x double], [1024 x double]* %C, i64 %indvars.iv41, i64 %indvars.iv38 - %tmp2 = load double, double* %arrayidx16, align 8 + %arrayidx16 = getelementptr inbounds [1024 x double], ptr %C, i64 %indvars.iv41, i64 %indvars.iv38 + %tmp2 = load double, ptr %arrayidx16, align 8 %add = fadd double %tmp2, %mul - store double %add, double* %arrayidx16, align 8 + store double %add, ptr %arrayidx16, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 1024 br i1 %exitcond, label %for.body6, label %for.inc17 diff --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_9.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_9.ll index 0d490cc765aa..144abfd7622f 100644 --- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts_9.ll +++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts_9.ll @@ -42,7 +42,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-unknown" -define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, i8 signext %alpha, i8 signext %beta, [1024 x i8]* %C, [1024 x i8]* %A, [1024 x i8]* %B) { +define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, i8 signext %alpha, i8 signext %beta, ptr %C, ptr %A, ptr %B) { entry: br label %entry.split @@ -59,15 +59,15 @@ for.cond4.preheader: ; preds = %for.inc20, %for.con for.body6: ; preds = %for.body6, %for.cond4.preheader %indvars.iv = phi i64 [ 0, %for.cond4.preheader ], [ %indvars.iv.next, %for.body6 ] - %arrayidx8 = getelementptr inbounds [1024 x i8], [1024 x i8]* %A, i64 %indvars.iv45, i64 %indvars.iv - %tmp = load i8, i8* %arrayidx8, align 1 - %arrayidx12 = getelementptr inbounds [1024 x i8], [1024 x i8]* %B, i64 %indvars.iv, i64 %indvars.iv42 - %tmp1 = load i8, i8* %arrayidx12, align 1 + %arrayidx8 = getelementptr inbounds [1024 x i8], ptr %A, i64 %indvars.iv45, i64 %indvars.iv + %tmp = load i8, ptr %arrayidx8, align 1 + %arrayidx12 = getelementptr inbounds [1024 x i8], ptr %B, i64 %indvars.iv, i64 %indvars.iv42 + %tmp1 = load i8, ptr %arrayidx12, align 1 %mul = mul i8 %tmp1, %tmp - %arrayidx17 = getelementptr inbounds [1024 x i8], [1024 x i8]* %C, i64 %indvars.iv45, i64 %indvars.iv42 - %tmp2 = load i8, i8* %arrayidx17, align 1 + %arrayidx17 = getelementptr inbounds [1024 x i8], ptr %C, i64 %indvars.iv45, i64 %indvars.iv42 + %tmp2 = load i8, ptr %arrayidx17, align 1 %add = add i8 %mul, %tmp2 - store i8 %add, i8* %arrayidx17, align 1 + store i8 %add, ptr %arrayidx17, align 1 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp ne i64 %indvars.iv.next, 1024 br i1 %exitcond, label %for.body6, label %for.inc20 diff --git a/polly/test/ScheduleOptimizer/pattern_matching_based_opts_splitmap.ll b/polly/test/ScheduleOptimizer/pattern_matching_based_opts_splitmap.ll index 6433e2c5e422..5b9783d20bfc 100644 --- a/polly/test/ScheduleOptimizer/pattern_matching_based_opts_splitmap.ll +++ b/polly/test/ScheduleOptimizer/pattern_matching_based_opts_splitmap.ll @@ -16,7 +16,7 @@ ; ModuleID = 'pattern_matching_based_opts_splitmap.ll' ; ; Function Attrs: noinline nounwind uwtable -define void @pattern_matching_based_opts_splitmap([2 x double]* noalias dereferenceable(32) %C, [784 x double]* noalias dereferenceable(12544) %A, [2 x double]* noalias dereferenceable(12544) %B) { +define void @pattern_matching_based_opts_splitmap(ptr noalias dereferenceable(32) %C, ptr noalias dereferenceable(12544) %A, ptr noalias dereferenceable(12544) %B) { entry: br label %for.body @@ -30,15 +30,15 @@ for.body3: ; preds = %for.body, %for.inc1 for.body6: ; preds = %for.body3, %for.body6 %k = phi i64 [ 0, %for.body3 ], [ %add17, %for.body6 ] - %arrayidx8 = getelementptr inbounds [784 x double], [784 x double]* %A, i64 %i, i64 %k - %tmp6 = load double, double* %arrayidx8, align 8 - %arrayidx12 = getelementptr inbounds [2 x double], [2 x double]* %B, i64 %k, i64 %j - %tmp10 = load double, double* %arrayidx12, align 8 + %arrayidx8 = getelementptr inbounds [784 x double], ptr %A, i64 %i, i64 %k + %tmp6 = load double, ptr %arrayidx8, align 8 + %arrayidx12 = getelementptr inbounds [2 x double], ptr %B, i64 %k, i64 %j + %tmp10 = load double, ptr %arrayidx12, align 8 %mul = fmul double %tmp6, %tmp10 - %arrayidx16 = getelementptr inbounds [2 x double], [2 x double]* %C, i64 %i, i64 %j - %tmp14 = load double, double* %arrayidx16, align 8 + %arrayidx16 = getelementptr inbounds [2 x double], ptr %C, i64 %i, i64 %j + %tmp14 = load double, ptr %arrayidx16, align 8 %add = fadd double %tmp14, %mul - store double %add, double* %arrayidx16, align 8 + store double %add, ptr %arrayidx16, align 8 %add17 = add nsw i64 %k, 1 %cmp5 = icmp slt i64 %add17, 784 br i1 %cmp5, label %for.body6, label %for.inc18 diff --git a/polly/test/ScheduleOptimizer/prevectorization-without-tiling.ll b/polly/test/ScheduleOptimizer/prevectorization-without-tiling.ll index ca0bef10ca1f..9089d45c1320 100644 --- a/polly/test/ScheduleOptimizer/prevectorization-without-tiling.ll +++ b/polly/test/ScheduleOptimizer/prevectorization-without-tiling.ll @@ -19,20 +19,20 @@ for.cond1.preheader: ; preds = %entry.split, %for.i for.body3: ; preds = %for.cond1.preheader, %for.inc25 %indvar6 = phi i64 [ 0, %for.cond1.preheader ], [ %indvar.next7, %for.inc25 ] - %arrayidx24 = getelementptr [1536 x [1536 x float]], [1536 x [1536 x float]]* @C, i64 0, i64 %indvar4, i64 %indvar6 - store float 0.000000e+00, float* %arrayidx24, align 4 + %arrayidx24 = getelementptr [1536 x [1536 x float]], ptr @C, i64 0, i64 %indvar4, i64 %indvar6 + store float 0.000000e+00, ptr %arrayidx24, align 4 br label %for.body8 for.body8: ; preds = %for.body3, %for.body8 %indvar = phi i64 [ 0, %for.body3 ], [ %indvar.next, %for.body8 ] - %arrayidx16 = getelementptr [1536 x [1536 x float]], [1536 x [1536 x float]]* @A, i64 0, i64 %indvar4, i64 %indvar - %arrayidx20 = getelementptr [1536 x [1536 x float]], [1536 x [1536 x float]]* @B, i64 0, i64 %indvar, i64 %indvar6 - %0 = load float, float* %arrayidx24, align 4 - %1 = load float, float* %arrayidx16, align 4 - %2 = load float, float* %arrayidx20, align 4 + %arrayidx16 = getelementptr [1536 x [1536 x float]], ptr @A, i64 0, i64 %indvar4, i64 %indvar + %arrayidx20 = getelementptr [1536 x [1536 x float]], ptr @B, i64 0, i64 %indvar, i64 %indvar6 + %0 = load float, ptr %arrayidx24, align 4 + %1 = load float, ptr %arrayidx16, align 4 + %2 = load float, ptr %arrayidx20, align 4 %mul = fmul float %1, %2 %add = fadd float %0, %mul - store float %add, float* %arrayidx24, align 4 + store float %add, ptr %arrayidx24, align 4 %indvar.next = add i64 %indvar, 1 %exitcond = icmp ne i64 %indvar.next, 1536 br i1 %exitcond, label %for.body8, label %for.inc25 diff --git a/polly/test/ScheduleOptimizer/prevectorization.ll b/polly/test/ScheduleOptimizer/prevectorization.ll index f3cb9f8d99c0..55943d6daf73 100644 --- a/polly/test/ScheduleOptimizer/prevectorization.ll +++ b/polly/test/ScheduleOptimizer/prevectorization.ll @@ -22,20 +22,20 @@ for.cond1.preheader: ; preds = %entry.split, %for.i for.body3: ; preds = %for.cond1.preheader, %for.inc25 %indvar6 = phi i64 [ 0, %for.cond1.preheader ], [ %indvar.next7, %for.inc25 ] - %arrayidx24 = getelementptr [1536 x [1536 x float]], [1536 x [1536 x float]]* @C, i64 0, i64 %indvar4, i64 %indvar6 - store float 0.000000e+00, float* %arrayidx24, align 4 + %arrayidx24 = getelementptr [1536 x [1536 x float]], ptr @C, i64 0, i64 %indvar4, i64 %indvar6 + store float 0.000000e+00, ptr %arrayidx24, align 4 br label %for.body8 for.body8: ; preds = %for.body3, %for.body8 %indvar = phi i64 [ 0, %for.body3 ], [ %indvar.next, %for.body8 ] - %arrayidx16 = getelementptr [1536 x [1536 x float]], [1536 x [1536 x float]]* @A, i64 0, i64 %indvar4, i64 %indvar - %arrayidx20 = getelementptr [1536 x [1536 x float]], [1536 x [1536 x float]]* @B, i64 0, i64 %indvar, i64 %indvar6 - %0 = load float, float* %arrayidx24, align 4 - %1 = load float, float* %arrayidx16, align 4 - %2 = load float, float* %arrayidx20, align 4 + %arrayidx16 = getelementptr [1536 x [1536 x float]], ptr @A, i64 0, i64 %indvar4, i64 %indvar + %arrayidx20 = getelementptr [1536 x [1536 x float]], ptr @B, i64 0, i64 %indvar, i64 %indvar6 + %0 = load float, ptr %arrayidx24, align 4 + %1 = load float, ptr %arrayidx16, align 4 + %2 = load float, ptr %arrayidx20, align 4 %mul = fmul float %1, %2 %add = fadd float %0, %mul - store float %add, float* %arrayidx24, align 4 + store float %add, ptr %arrayidx24, align 4 %indvar.next = add i64 %indvar, 1 %exitcond = icmp ne i64 %indvar.next, 1536 br i1 %exitcond, label %for.body8, label %for.inc25 diff --git a/polly/test/ScheduleOptimizer/rectangular-tiling.ll b/polly/test/ScheduleOptimizer/rectangular-tiling.ll index 4bbc1448f6e4..c254e4f367c4 100644 --- a/polly/test/ScheduleOptimizer/rectangular-tiling.ll +++ b/polly/test/ScheduleOptimizer/rectangular-tiling.ll @@ -67,7 +67,7 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" ; Function Attrs: nounwind -define void @rect([512 x i32]* %A) { +define void @rect(ptr %A) { entry: br label %entry.split @@ -82,8 +82,8 @@ for.body3: ; preds = %for.body3.lr.ph, %f %j.0 = phi i32 [ 0, %for.body3.lr.ph ], [ %inc, %for.body3 ] %mul = mul nsw i32 %j.0, %i.0 %rem = srem i32 %mul, 42 - %arrayidx4 = getelementptr inbounds [512 x i32], [512 x i32]* %A, i32 %i.0, i32 %j.0 - store i32 %rem, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds [512 x i32], ptr %A, i32 %i.0, i32 %j.0 + store i32 %rem, ptr %arrayidx4, align 4 %inc = add nsw i32 %j.0, 1 %cmp2 = icmp slt i32 %inc, 512 br i1 %cmp2, label %for.body3, label %for.inc5 diff --git a/polly/test/ScheduleOptimizer/statistics.ll b/polly/test/ScheduleOptimizer/statistics.ll index 086d96847fa3..472febea173f 100644 --- a/polly/test/ScheduleOptimizer/statistics.ll +++ b/polly/test/ScheduleOptimizer/statistics.ll @@ -34,7 +34,7 @@ ; } target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo_1d(float* %A) { +define void @foo_1d(ptr %A) { bb: br label %bb1 @@ -45,10 +45,10 @@ bb1: ; preds = %bb6, %bb bb2: ; preds = %bb1 %tmp = sitofp i64 %i.0 to float - %tmp3 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, %tmp - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 br label %bb6 bb6: ; preds = %bb2 @@ -59,7 +59,7 @@ bb8: ; preds = %bb1 ret void } -define void @foo_2d(float* %A) { +define void @foo_2d(ptr %A) { bb: br label %bb2 @@ -80,10 +80,10 @@ bb5: ; preds = %bb4 %tmp = add nuw nsw i64 %i.0, %j.0 %tmp6 = sitofp i64 %tmp to float %tmp7 = add nuw nsw i64 %i.0, %j.0 - %tmp8 = getelementptr inbounds float, float* %A, i64 %tmp7 - %tmp9 = load float, float* %tmp8, align 4 + %tmp8 = getelementptr inbounds float, ptr %A, i64 %tmp7 + %tmp9 = load float, ptr %tmp8, align 4 %tmp10 = fadd float %tmp9, %tmp6 - store float %tmp10, float* %tmp8, align 4 + store float %tmp10, ptr %tmp8, align 4 br label %bb11 bb11: ; preds = %bb5 @@ -101,7 +101,7 @@ bb16: ; preds = %bb2 ret void } -define void @foo_3d(float* %A) { +define void @foo_3d(ptr %A) { bb: br label %bb3 @@ -132,10 +132,10 @@ bb8: ; preds = %bb7 %tmp10 = sitofp i64 %tmp9 to float %tmp11 = add nuw nsw i64 %i.0, %j.0 %tmp12 = add nuw nsw i64 %tmp11, %k.0 - %tmp13 = getelementptr inbounds float, float* %A, i64 %tmp12 - %tmp14 = load float, float* %tmp13, align 4 + %tmp13 = getelementptr inbounds float, ptr %A, i64 %tmp12 + %tmp14 = load float, ptr %tmp13, align 4 %tmp15 = fadd float %tmp14, %tmp10 - store float %tmp15, float* %tmp13, align 4 + store float %tmp15, ptr %tmp13, align 4 br label %bb16 bb16: ; preds = %bb8 @@ -160,7 +160,7 @@ bb24: ; preds = %bb3 ret void } -define void @foo_4d(float* %A) { +define void @foo_4d(ptr %A) { bb: br label %bb4 @@ -201,10 +201,10 @@ bb11: ; preds = %bb10 %tmp15 = add nuw nsw i64 %i.0, %j.0 %tmp16 = add nuw nsw i64 %tmp15, %k.0 %tmp17 = add nuw nsw i64 %tmp16, %l.0 - %tmp18 = getelementptr inbounds float, float* %A, i64 %tmp17 - %tmp19 = load float, float* %tmp18, align 4 + %tmp18 = getelementptr inbounds float, ptr %A, i64 %tmp17 + %tmp19 = load float, ptr %tmp18, align 4 %tmp20 = fadd float %tmp19, %tmp14 - store float %tmp20, float* %tmp18, align 4 + store float %tmp20, ptr %tmp18, align 4 br label %bb21 bb21: ; preds = %bb11 @@ -236,7 +236,7 @@ bb32: ; preds = %bb4 ret void } -define void @foo_zero_iterations(float* %A) { +define void @foo_zero_iterations(ptr %A) { bb: br label %bb1 @@ -247,10 +247,10 @@ bb1: ; preds = %bb6, %bb bb2: ; preds = %bb1 %tmp = sitofp i64 %i.0 to float - %tmp3 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, %tmp - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 br label %bb6 bb6: ; preds = %bb2 diff --git a/polly/test/ScheduleOptimizer/tile_after_fusion.ll b/polly/test/ScheduleOptimizer/tile_after_fusion.ll index fe44d9cd225f..8e5849234af6 100644 --- a/polly/test/ScheduleOptimizer/tile_after_fusion.ll +++ b/polly/test/ScheduleOptimizer/tile_after_fusion.ll @@ -32,7 +32,7 @@ source_filename = "tile_after_fusion.c" target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @tf([256 x [256 x i32]]* %C, [256 x [256 x i32]]* %A0, [256 x [256 x i32]]* %A1) { +define void @tf(ptr %C, ptr %A0, ptr %A1) { entry: br label %for.cond @@ -58,12 +58,12 @@ for.cond4: ; preds = %for.inc, %for.body3 br i1 %exitcond9, label %for.body6, label %for.end for.body6: ; preds = %for.cond4 - %arrayidx10 = getelementptr inbounds [256 x [256 x i32]], [256 x [256 x i32]]* %A0, i64 %indvars.iv13, i64 %indvars.iv10, i64 %indvars.iv7 - %tmp = load i32, i32* %arrayidx10, align 4 - %arrayidx16 = getelementptr inbounds [256 x [256 x i32]], [256 x [256 x i32]]* %C, i64 %indvars.iv13, i64 %indvars.iv10, i64 %indvars.iv7 - %tmp16 = load i32, i32* %arrayidx16, align 4 + %arrayidx10 = getelementptr inbounds [256 x [256 x i32]], ptr %A0, i64 %indvars.iv13, i64 %indvars.iv10, i64 %indvars.iv7 + %tmp = load i32, ptr %arrayidx10, align 4 + %arrayidx16 = getelementptr inbounds [256 x [256 x i32]], ptr %C, i64 %indvars.iv13, i64 %indvars.iv10, i64 %indvars.iv7 + %tmp16 = load i32, ptr %arrayidx16, align 4 %add = add nsw i32 %tmp16, %tmp - store i32 %add, i32* %arrayidx16, align 4 + store i32 %add, ptr %arrayidx16, align 4 br label %for.inc for.inc: ; preds = %for.body6 @@ -109,12 +109,12 @@ for.cond32: ; preds = %for.inc48, %for.bod br i1 %exitcond, label %for.body34, label %for.end50 for.body34: ; preds = %for.cond32 - %arrayidx40 = getelementptr inbounds [256 x [256 x i32]], [256 x [256 x i32]]* %A1, i64 %indvars.iv4, i64 %indvars.iv1, i64 %indvars.iv - %tmp17 = load i32, i32* %arrayidx40, align 4 - %arrayidx46 = getelementptr inbounds [256 x [256 x i32]], [256 x [256 x i32]]* %C, i64 %indvars.iv4, i64 %indvars.iv1, i64 %indvars.iv - %tmp18 = load i32, i32* %arrayidx46, align 4 + %arrayidx40 = getelementptr inbounds [256 x [256 x i32]], ptr %A1, i64 %indvars.iv4, i64 %indvars.iv1, i64 %indvars.iv + %tmp17 = load i32, ptr %arrayidx40, align 4 + %arrayidx46 = getelementptr inbounds [256 x [256 x i32]], ptr %C, i64 %indvars.iv4, i64 %indvars.iv1, i64 %indvars.iv + %tmp18 = load i32, ptr %arrayidx46, align 4 %add47 = add nsw i32 %tmp18, %tmp17 - store i32 %add47, i32* %arrayidx46, align 4 + store i32 %add47, ptr %arrayidx46, align 4 br label %for.inc48 for.inc48: ; preds = %for.body34 diff --git a/polly/test/ScheduleOptimizer/vec-addr-space.ll b/polly/test/ScheduleOptimizer/vec-addr-space.ll index 7c66d7c58ce2..563c37f256ca 100644 --- a/polly/test/ScheduleOptimizer/vec-addr-space.ll +++ b/polly/test/ScheduleOptimizer/vec-addr-space.ll @@ -4,7 +4,7 @@ ; a pointer bitcast from a pointer having an address space to one without ; ; CHECK-LABEL: entry: -; CHECK: load <4 x float>, <4 x float> addrspace(4)* +; CHECK: load <4 x float>, ptr addrspace(4) ; ; ModuleID = '/tmp/lud.bc' source_filename = "lud.c" @@ -14,7 +14,7 @@ target datalayout = "e-m:e-p:32:32-p1:32:32-p3:32:32-p5:32:32-i64:32-f64:32-v64: target triple = "x86_64-unknown-unknown" ; Function Attrs: noinline nounwind -define void @LU_decomp_kij_opt(i32 %n, i32 %lda, float addrspace(4)* %A, float addrspace(4)* %scratch) #0 { +define void @LU_decomp_kij_opt(i32 %n, i32 %lda, ptr addrspace(4) %A, ptr addrspace(4) %scratch) #0 { entry: %cmp34 = icmp sgt i32 %n, 0 br i1 %cmp34, label %for.body.lr.ph, label %for.end34 @@ -27,8 +27,8 @@ for.body: ; preds = %for.inc32, %for.bod %k.035 = phi i32 [ 0, %for.body.lr.ph ], [ %add2, %for.inc32 ] %mul = mul nsw i32 %k.035, %lda %add = add nsw i32 %mul, %k.035 - %arrayidx = getelementptr inbounds float, float addrspace(4)* %A, i32 %add - %1 = load float, float addrspace(4)* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr addrspace(4) %A, i32 %add + %1 = load float, ptr addrspace(4) %arrayidx, align 4 %conv1 = fdiv arcp float 1.000000e+00, %1 %add2 = add nuw nsw i32 %k.035, 1 %exitcond37 = icmp eq i32 %k.035, %0 @@ -41,24 +41,24 @@ for.body6: ; preds = %for.inc29, %for.bod %i.033 = phi i32 [ %add2, %for.body6.lr.ph ], [ %inc30, %for.inc29 ] %mul7 = mul nsw i32 %i.033, %lda %add8 = add nsw i32 %mul7, %k.035 - %arrayidx9 = getelementptr inbounds float, float addrspace(4)* %A, i32 %add8 - %2 = load float, float addrspace(4)* %arrayidx9, align 4 + %arrayidx9 = getelementptr inbounds float, ptr addrspace(4) %A, i32 %add8 + %2 = load float, ptr addrspace(4) %arrayidx9, align 4 %mul10 = fmul arcp contract float %conv1, %2 - store float %mul10, float addrspace(4)* %arrayidx9, align 4 + store float %mul10, ptr addrspace(4) %arrayidx9, align 4 br label %for.body18 for.body18: ; preds = %for.body18, %for.body6 %j.031 = phi i32 [ %add2, %for.body6 ], [ %inc, %for.body18 ] - %3 = load float, float addrspace(4)* %arrayidx9, align 4 + %3 = load float, ptr addrspace(4) %arrayidx9, align 4 %add23 = add nsw i32 %j.031, %mul - %arrayidx24 = getelementptr inbounds float, float addrspace(4)* %A, i32 %add23 - %4 = load float, float addrspace(4)* %arrayidx24, align 4 + %arrayidx24 = getelementptr inbounds float, ptr addrspace(4) %A, i32 %add23 + %4 = load float, ptr addrspace(4) %arrayidx24, align 4 %mul25 = fmul arcp contract float %3, %4 %add27 = add nsw i32 %j.031, %mul7 - %arrayidx28 = getelementptr inbounds float, float addrspace(4)* %A, i32 %add27 - %5 = load float, float addrspace(4)* %arrayidx28, align 4 + %arrayidx28 = getelementptr inbounds float, ptr addrspace(4) %A, i32 %add27 + %5 = load float, ptr addrspace(4) %arrayidx28, align 4 %sub = fsub arcp contract float %5, %mul25 - store float %sub, float addrspace(4)* %arrayidx28, align 4 + store float %sub, ptr addrspace(4) %arrayidx28, align 4 %inc = add nuw nsw i32 %j.031, 1 %exitcond = icmp eq i32 %inc, %n br i1 %exitcond, label %for.inc29, label %for.body18 diff --git a/polly/test/ScheduleOptimizer/vivid-vbi-gen-vivid_vbi_gen_sliced-before-llvmreduced.ll b/polly/test/ScheduleOptimizer/vivid-vbi-gen-vivid_vbi_gen_sliced-before-llvmreduced.ll index 9b215ab07206..d08595db8fce 100644 --- a/polly/test/ScheduleOptimizer/vivid-vbi-gen-vivid_vbi_gen_sliced-before-llvmreduced.ll +++ b/polly/test/ScheduleOptimizer/vivid-vbi-gen-vivid_vbi_gen_sliced-before-llvmreduced.ll @@ -11,23 +11,22 @@ entry: for.body: ; preds = %vivid_vbi_gen_teletext.exit, %entry %i.015 = phi i32 [ 0, %entry ], [ %inc, %vivid_vbi_gen_teletext.exit ] - %data0.014 = phi %struct.v4l2_sliced_vbi_data* [ null, %entry ], [ %incdec.ptr, %vivid_vbi_gen_teletext.exit ] - %arraydecay = getelementptr inbounds %struct.v4l2_sliced_vbi_data, %struct.v4l2_sliced_vbi_data* %data0.014, i32 0, i32 0, i32 0 - %arrayidx.i = getelementptr inbounds %struct.v4l2_sliced_vbi_data, %struct.v4l2_sliced_vbi_data* %data0.014, i32 0, i32 0, i32 6 - %0 = load i8, i8* %arrayidx.i, align 1 - store i8 %0, i8* %arraydecay, align 1 + %data0.014 = phi ptr [ null, %entry ], [ %incdec.ptr, %vivid_vbi_gen_teletext.exit ] + %arrayidx.i = getelementptr inbounds %struct.v4l2_sliced_vbi_data, ptr %data0.014, i32 0, i32 0, i32 6 + %0 = load i8, ptr %arrayidx.i, align 1 + store i8 %0, ptr %data0.014, align 1 br label %for.body.for.body_crit_edge.i for.body.for.body_crit_edge.i: ; preds = %for.body.for.body_crit_edge.i, %for.body %inc10.i13 = phi i32 [ 1, %for.body ], [ %inc10.i, %for.body.for.body_crit_edge.i ] - %arrayidx2.phi.trans.insert.i = getelementptr inbounds %struct.v4l2_sliced_vbi_data, %struct.v4l2_sliced_vbi_data* %data0.014, i32 0, i32 0, i32 %inc10.i13 - store i8 0, i8* %arrayidx2.phi.trans.insert.i, align 1 + %arrayidx2.phi.trans.insert.i = getelementptr inbounds %struct.v4l2_sliced_vbi_data, ptr %data0.014, i32 0, i32 0, i32 %inc10.i13 + store i8 0, ptr %arrayidx2.phi.trans.insert.i, align 1 %inc10.i = add nuw nsw i32 %inc10.i13, 1 %exitcond.not.i = icmp eq i32 %inc10.i13, 42 br i1 %exitcond.not.i, label %vivid_vbi_gen_teletext.exit, label %for.body.for.body_crit_edge.i vivid_vbi_gen_teletext.exit: ; preds = %for.body.for.body_crit_edge.i - %incdec.ptr = getelementptr inbounds %struct.v4l2_sliced_vbi_data, %struct.v4l2_sliced_vbi_data* %data0.014, i32 1 + %incdec.ptr = getelementptr inbounds %struct.v4l2_sliced_vbi_data, ptr %data0.014, i32 1 %inc = add nuw nsw i32 %i.015, 1 %exitcond.not = icmp eq i32 %i.015, 1 br i1 %exitcond.not, label %for.end, label %for.body diff --git a/polly/test/ScopDetect/aliasing_parametric_simple_1.ll b/polly/test/ScopDetect/aliasing_parametric_simple_1.ll index d6f3d2ae7fb8..2eddbd4cb262 100644 --- a/polly/test/ScopDetect/aliasing_parametric_simple_1.ll +++ b/polly/test/ScopDetect/aliasing_parametric_simple_1.ll @@ -9,7 +9,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A, i32* %B, i32 %c) { +define void @jd(ptr %A, ptr %B, i32 %c) { entry: br label %for.cond @@ -20,10 +20,10 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %idxprom = sext i32 %c to i64 - %arrayidx = getelementptr inbounds i32, i32* %B, i64 %idxprom - %tmp = load i32, i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp, i32* %arrayidx2, align 4 + %arrayidx = getelementptr inbounds i32, ptr %B, i64 %idxprom + %tmp = load i32, ptr %arrayidx, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopDetect/aliasing_parametric_simple_2.ll b/polly/test/ScopDetect/aliasing_parametric_simple_2.ll index 7c2450d4fb35..c111f686c462 100644 --- a/polly/test/ScopDetect/aliasing_parametric_simple_2.ll +++ b/polly/test/ScopDetect/aliasing_parametric_simple_2.ll @@ -9,7 +9,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A, i32* %B, i32 %c) { +define void @jd(ptr %A, ptr %B, i32 %c) { entry: br label %for.cond @@ -21,13 +21,13 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %sub = add nsw i32 %c, -10 %idxprom = sext i32 %sub to i64 - %arrayidx = getelementptr inbounds i32, i32* %B, i64 %idxprom - %tmp = load i32, i32* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds i32, i32* %B, i64 5 - %tmp1 = load i32, i32* %arrayidx1, align 4 + %arrayidx = getelementptr inbounds i32, ptr %B, i64 %idxprom + %tmp = load i32, ptr %arrayidx, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %B, i64 5 + %tmp1 = load i32, ptr %arrayidx1, align 4 %add = add nsw i32 %tmp, %tmp1 - %arrayidx3 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %add, i32* %arrayidx3, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %add, ptr %arrayidx3, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopDetect/aliasing_simple_1.ll b/polly/test/ScopDetect/aliasing_simple_1.ll index 77a19a017bba..524ca19ae398 100644 --- a/polly/test/ScopDetect/aliasing_simple_1.ll +++ b/polly/test/ScopDetect/aliasing_simple_1.ll @@ -9,7 +9,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A, i32* %B) { +define void @jd(ptr %A, ptr %B) { entry: br label %for.cond @@ -19,9 +19,9 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %tmp = load i32, i32* %B, align 4 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp, i32* %arrayidx2, align 4 + %tmp = load i32, ptr %B, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopDetect/aliasing_simple_2.ll b/polly/test/ScopDetect/aliasing_simple_2.ll index 315923c8c9f3..457df996c7b8 100644 --- a/polly/test/ScopDetect/aliasing_simple_2.ll +++ b/polly/test/ScopDetect/aliasing_simple_2.ll @@ -9,7 +9,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A, i32* %B) { +define void @jd(ptr %A, ptr %B) { entry: br label %for.cond @@ -19,12 +19,12 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %tmp = load i32, i32* %B, align 4 - %arrayidx1 = getelementptr inbounds i32, i32* %B, i64 1023 - %tmp1 = load i32, i32* %arrayidx1, align 4 + %tmp = load i32, ptr %B, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %B, i64 1023 + %tmp1 = load i32, ptr %arrayidx1, align 4 %add = add nsw i32 %tmp, %tmp1 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %add, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %add, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopDetect/base_pointer.ll b/polly/test/ScopDetect/base_pointer.ll index f6bea32431cd..e500f9bc20bc 100644 --- a/polly/test/ScopDetect/base_pointer.ll +++ b/polly/test/ScopDetect/base_pointer.ll @@ -3,19 +3,19 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @base_pointer_in_condition(i64** noalias %A_ptr, i64 %N) nounwind { +define void @base_pointer_in_condition(ptr noalias %A_ptr, i64 %N) nounwind { entry: fence seq_cst br label %pre pre: - %A = load i64*, i64** %A_ptr + %A = load ptr, ptr %A_ptr br i1 true, label %for.i, label %then for.i: %indvar = phi i64 [ 0, %pre ], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %then, label %for.i @@ -31,7 +31,7 @@ return: ; CHECK-LABEL: base_pointer_in_condition ; CHECK: Valid Region for Scop: pre => return -define void @base_pointer_is_argument(float* %A, i64 %n) { +define void @base_pointer_is_argument(ptr %A, i64 %n) { entry: br label %for.i @@ -41,8 +41,8 @@ for.i: S1: %conv = sitofp i64 %indvar.i to float - %arrayidx5 = getelementptr float, float* %A, i64 %indvar.i - store float %conv, float* %arrayidx5, align 4 + %arrayidx5 = getelementptr float, ptr %A, i64 %indvar.i + store float %conv, ptr %arrayidx5, align 4 br label %for.i.inc for.i.inc: @@ -67,8 +67,8 @@ for.i: S1: %conv = sitofp i64 %indvar.i to float - %arrayidx5 = getelementptr float, float* inttoptr (i64 100 to float*), i64 %indvar.i - store float %conv, float* %arrayidx5, align 4 + %arrayidx5 = getelementptr float, ptr inttoptr (i64 100 to ptr), i64 %indvar.i + store float %conv, ptr %arrayidx5, align 4 br label %for.i.inc for.i.inc: @@ -95,8 +95,8 @@ for.i: S1: %conv = sitofp i64 %indvar.i to float - %arrayidx5 = getelementptr float, float* @A, i64 %indvar.i - store float %conv, float* %arrayidx5, align 4 + %arrayidx5 = getelementptr float, ptr @A, i64 %indvar.i + store float %conv, ptr %arrayidx5, align 4 br label %for.i.inc for.i.inc: @@ -111,11 +111,11 @@ exit: ; CHECK-LABEL: base_pointer_is_global ; CHECK: Valid Region for Scop: for.i => exit -declare float *@foo() +declare ptr @foo() define void @base_pointer_is_inst_outside(i64 %n) { entry: - %A = call float *@foo() + %A = call ptr @foo() br label %for.i for.i: @@ -124,8 +124,8 @@ for.i: S1: %conv = sitofp i64 %indvar.i to float - %arrayidx5 = getelementptr float, float* %A, i64 %indvar.i - store float %conv, float* %arrayidx5, align 4 + %arrayidx5 = getelementptr float, ptr %A, i64 %indvar.i + store float %conv, ptr %arrayidx5, align 4 br label %for.i.inc for.i.inc: @@ -140,25 +140,25 @@ exit: ; CHECK-LABEL: base_pointer_is_inst_outside ; CHECK: Valid Region for Scop: for.i => exit -declare float* @getNextBasePtr(float*) readnone nounwind +declare ptr @getNextBasePtr(ptr) readnone nounwind -define void @base_pointer_is_phi_node(i64 %n, float* %A) { +define void @base_pointer_is_phi_node(i64 %n, ptr %A) { entry: br label %for.i for.i: %indvar.i = phi i64 [ %indvar.i.next, %for.i.inc ], [ 0, %entry ] - %ptr = phi float* [ %ptr.next, %for.i.inc ], [ %A, %entry ] + %ptr = phi ptr [ %ptr.next, %for.i.inc ], [ %A, %entry ] ; To get a PHI node inside a SCoP that can not be analyzed but ; for which the surrounding SCoP is normally still valid we use a function ; without any side effects. - %ptr.next = call float* @getNextBasePtr(float* %ptr) + %ptr.next = call ptr @getNextBasePtr(ptr %ptr) br label %S1 S1: %conv = sitofp i64 %indvar.i to float - %arrayidx5 = getelementptr float, float* %ptr, i64 %indvar.i - store float %conv, float* %arrayidx5, align 4 + %arrayidx5 = getelementptr float, ptr %ptr, i64 %indvar.i + store float %conv, ptr %arrayidx5, align 4 br label %for.i.inc for.i.inc: @@ -173,7 +173,7 @@ exit: ; CHECK-LABEL: base_pointer_is_phi_node ; CHECK-NOT: Valid Region for Scop -define void @base_pointer_is_inst_inside_invariant_1(i64 %n, float* %A) { +define void @base_pointer_is_inst_inside_invariant_1(i64 %n, ptr %A) { entry: br label %for.i @@ -183,13 +183,13 @@ for.i: ; considered a valid base pointer because it can return a pointer that aliases ; with something else (e.g. %A or a global) or return a different pointer at ; every call (e.g. malloc) - %ptr = call float* @getNextBasePtr(float* %A) + %ptr = call ptr @getNextBasePtr(ptr %A) br label %S1 S1: %conv = sitofp i64 %indvar.i to float - %arrayidx5 = getelementptr float, float* %ptr, i64 %indvar.i - store float %conv, float* %arrayidx5, align 4 + %arrayidx5 = getelementptr float, ptr %ptr, i64 %indvar.i + store float %conv, ptr %arrayidx5, align 4 br label %for.i.inc for.i.inc: @@ -204,22 +204,22 @@ exit: ; CHECK-LABEL: base_pointer_is_inst_inside_invariant_1 ; CHECK-NOT: Valid Region for Scop -declare float* @getNextBasePtr2(float*) readnone nounwind +declare ptr @getNextBasePtr2(ptr) readnone nounwind -define void @base_pointer_is_inst_inside_invariant_2(i64 %n, float* %A) { +define void @base_pointer_is_inst_inside_invariant_2(i64 %n, ptr %A) { entry: br label %for.i for.i: %indvar.i = phi i64 [ %indvar.i.next, %for.i.inc ], [ 0, %entry ] - %ptr = call float* @getNextBasePtr2(float* %A) - %ptr2 = call float* @getNextBasePtr(float* %ptr) + %ptr = call ptr @getNextBasePtr2(ptr %A) + %ptr2 = call ptr @getNextBasePtr(ptr %ptr) br label %S1 S1: %conv = sitofp i64 %indvar.i to float - %arrayidx5 = getelementptr float, float* %ptr2, i64 %indvar.i - store float %conv, float* %arrayidx5, align 4 + %arrayidx5 = getelementptr float, ptr %ptr2, i64 %indvar.i + store float %conv, ptr %arrayidx5, align 4 br label %for.i.inc for.i.inc: @@ -234,22 +234,22 @@ exit: ; CHECK-LABEL: base_pointer_is_inst_inside_invariant_2 ; CHECK-NOT: Valid Region for Scop -declare float* @getNextBasePtr3(float*, i64) readnone nounwind +declare ptr @getNextBasePtr3(ptr, i64) readnone nounwind -define void @base_pointer_is_inst_inside_variant(i64 %n, float* %A) { +define void @base_pointer_is_inst_inside_variant(i64 %n, ptr %A) { entry: br label %for.i for.i: %indvar.i = phi i64 [ %indvar.i.next, %for.i.inc ], [ 0, %entry ] - %ptr = call float* @getNextBasePtr3(float* %A, i64 %indvar.i) - %ptr2 = call float* @getNextBasePtr(float* %ptr) + %ptr = call ptr @getNextBasePtr3(ptr %A, i64 %indvar.i) + %ptr2 = call ptr @getNextBasePtr(ptr %ptr) br label %S1 S1: %conv = sitofp i64 %indvar.i to float - %arrayidx5 = getelementptr float, float* %ptr2, i64 %indvar.i - store float %conv, float* %arrayidx5, align 4 + %arrayidx5 = getelementptr float, ptr %ptr2, i64 %indvar.i + store float %conv, ptr %arrayidx5, align 4 br label %for.i.inc for.i.inc: @@ -264,21 +264,21 @@ exit: ; CHECK: base_pointer_is_inst_inside_variant ; CHECK-NOT: Valid Region for Scop -define void @base_pointer_is_ptr2ptr(float** noalias %A, i64 %n) { +define void @base_pointer_is_ptr2ptr(ptr noalias %A, i64 %n) { entry: br label %for.i for.i: %indvar.i = phi i64 [ %indvar.i.next, %for.i.inc ], [ 0, %entry ] - %arrayidx = getelementptr float*, float** %A, i64 %indvar.i + %arrayidx = getelementptr ptr, ptr %A, i64 %indvar.i br label %for.j for.j: %indvar.j = phi i64 [ 0, %for.i ], [ %indvar.j.next, %for.j ] %conv = sitofp i64 %indvar.i to float - %basepointer = load float*, float** %arrayidx, align 8 - %arrayidx5 = getelementptr float, float* %basepointer, i64 %indvar.j - store float %conv, float* %arrayidx5, align 4 + %basepointer = load ptr, ptr %arrayidx, align 8 + %arrayidx5 = getelementptr float, ptr %basepointer, i64 %indvar.j + store float %conv, ptr %arrayidx5, align 4 %indvar.j.next = add i64 %indvar.j, 1 %exitcond.j = icmp ne i64 %indvar.j.next, %n br i1 %exitcond.j, label %for.j, label %for.i.inc diff --git a/polly/test/ScopDetect/base_pointer_setNewAccessRelation.ll b/polly/test/ScopDetect/base_pointer_setNewAccessRelation.ll index e4020b0a7a45..ff9be6ea16e8 100644 --- a/polly/test/ScopDetect/base_pointer_setNewAccessRelation.ll +++ b/polly/test/ScopDetect/base_pointer_setNewAccessRelation.ll @@ -7,9 +7,9 @@ ; target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -declare float* @getNextBasePtr(float*) readnone nounwind +declare ptr @getNextBasePtr(ptr) readnone nounwind -define void @base_pointer_is_inst_inside_invariant_1(i64 %n, float* %A) { +define void @base_pointer_is_inst_inside_invariant_1(i64 %n, ptr %A) { entry: br label %for.i @@ -18,10 +18,10 @@ for.i: br label %S1 S1: - %ptr = call float* @getNextBasePtr(float* %A) + %ptr = call ptr @getNextBasePtr(ptr %A) %conv = sitofp i64 %indvar.i to float - %arrayidx5 = getelementptr float, float* %ptr, i64 %indvar.i - store float %conv, float* %arrayidx5, align 4 + %arrayidx5 = getelementptr float, ptr %ptr, i64 %indvar.i + store float %conv, ptr %arrayidx5, align 4 br label %for.i.inc for.i.inc: diff --git a/polly/test/ScopDetect/callbr.ll b/polly/test/ScopDetect/callbr.ll index f226818a4ca1..d65ab934bf2e 100644 --- a/polly/test/ScopDetect/callbr.ll +++ b/polly/test/ScopDetect/callbr.ll @@ -10,7 +10,7 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: callbr void asm sideeffect "", "!i,~{dirflag},~{fpsr},~{flags}"() #1 to label %fallthrough [label %for] @@ -24,7 +24,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/ScopDetect/collective_invariant_loads.ll b/polly/test/ScopDetect/collective_invariant_loads.ll index 7ba35f21e030..f1d2eea520c6 100644 --- a/polly/test/ScopDetect/collective_invariant_loads.ll +++ b/polly/test/ScopDetect/collective_invariant_loads.ll @@ -18,11 +18,11 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%array_ty = type { i64, %array_ptr*, i8 } -%array_ptr = type { [2 x i64], [2 x i64], [2 x i64], i64, i64, double*, double*, i8 } +%array_ty = type { i64, ptr, i8 } +%array_ptr = type { [2 x i64], [2 x i64], [2 x i64], i64, i64, ptr, ptr, i8 } ; Function Attrs: noinline -define weak dso_local void @test_init_chpl(%array_ty* nonnull %arg) { +define weak dso_local void @test_init_chpl(ptr nonnull %arg) { bb: br label %bb1 @@ -32,16 +32,16 @@ bb1: ; preds = %bb14, %bb bb2: ; preds = %bb2, %bb1 %.01 = phi i64 [ 0, %bb1 ], [ %tmp13, %bb2 ] - %tmp = getelementptr inbounds %array_ty, %array_ty* %arg, i64 0, i32 1 - %tmp3 = load %array_ptr*, %array_ptr** %tmp, align 8 - %tmp4 = getelementptr inbounds %array_ptr, %array_ptr* %tmp3, i64 0, i32 1, i64 0 - %tmp5 = load i64, i64* %tmp4, align 8 + %tmp = getelementptr inbounds %array_ty, ptr %arg, i64 0, i32 1 + %tmp3 = load ptr, ptr %tmp, align 8 + %tmp4 = getelementptr inbounds %array_ptr, ptr %tmp3, i64 0, i32 1, i64 0 + %tmp5 = load i64, ptr %tmp4, align 8 %tmp6 = mul nsw i64 %tmp5, %.0 %tmp7 = add nsw i64 %tmp6, %.01 - %tmp8 = getelementptr inbounds %array_ptr, %array_ptr* %tmp3, i64 0, i32 6 - %tmp9 = load double*, double** %tmp8, align 8 - %tmp10 = getelementptr inbounds double, double* %tmp9, i64 %tmp7 - store double 13.0, double* %tmp10, align 8 + %tmp8 = getelementptr inbounds %array_ptr, ptr %tmp3, i64 0, i32 6 + %tmp9 = load ptr, ptr %tmp8, align 8 + %tmp10 = getelementptr inbounds double, ptr %tmp9, i64 %tmp7 + store double 13.0, ptr %tmp10, align 8 %tmp13 = add nuw nsw i64 %.01, 1 %exitcond = icmp ne i64 %tmp13, 1000 br i1 %exitcond, label %bb2, label %bb14 diff --git a/polly/test/ScopDetect/cross_loop_non_single_exit.ll b/polly/test/ScopDetect/cross_loop_non_single_exit.ll index 73b5be5b0f1d..ae23930b92a6 100644 --- a/polly/test/ScopDetect/cross_loop_non_single_exit.ll +++ b/polly/test/ScopDetect/cross_loop_non_single_exit.ll @@ -12,7 +12,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br i1 true, label %next, label %next2 @@ -22,8 +22,8 @@ next2: for.j: %indvar2 = phi i64 [ 0, %next2], [ %indvar2.next2, %for.j] - %scevgep2 = getelementptr i64, i64* %A, i64 %indvar2 - store i64 %indvar2, i64* %scevgep2 + %scevgep2 = getelementptr i64, ptr %A, i64 %indvar2 + store i64 %indvar2, ptr %scevgep2 %indvar2.next2 = add nsw i64 %indvar2, 1 %exitcond2 = icmp eq i64 %indvar2.next2, %N br i1 %exitcond2, label %return, label %for.j @@ -33,8 +33,8 @@ next: for.i: %indvar = phi i64 [ 0, %next], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i diff --git a/polly/test/ScopDetect/cross_loop_non_single_exit_2.ll b/polly/test/ScopDetect/cross_loop_non_single_exit_2.ll index 6ffeaffc43fb..5c25da66d7ef 100644 --- a/polly/test/ScopDetect/cross_loop_non_single_exit_2.ll +++ b/polly/test/ScopDetect/cross_loop_non_single_exit_2.ll @@ -14,7 +14,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 declare i64 @foo() -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br i1 true, label %next, label %next2 @@ -24,8 +24,8 @@ next2: for.j: %indvar2 = phi i64 [ 0, %next2], [ %indvar2.next2, %for.j] - %scevgep2 = getelementptr i64, i64* %A, i64 %indvar2 - store i64 %indvar2, i64* %scevgep2 + %scevgep2 = getelementptr i64, ptr %A, i64 %indvar2 + store i64 %indvar2, ptr %scevgep2 %indvar2.next2 = add nsw i64 %indvar2, 1 %exitcond2 = icmp eq i64 %indvar2.next2, %N br i1 %exitcond2, label %return, label %for.j @@ -35,8 +35,8 @@ next: for.i: %indvar = phi i64 [ 0, %next], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %i = call i64 @foo() %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N diff --git a/polly/test/ScopDetect/dependency_to_phi_node_outside_of_region.ll b/polly/test/ScopDetect/dependency_to_phi_node_outside_of_region.ll index 9574f9307235..12983d2321cc 100644 --- a/polly/test/ScopDetect/dependency_to_phi_node_outside_of_region.ll +++ b/polly/test/ScopDetect/dependency_to_phi_node_outside_of_region.ll @@ -1,15 +1,15 @@ ; RUN: opt %loadPolly -polly-detect -disable-output < %s target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N, i64 %M) nounwind { +define void @f(ptr %A, i64 %N, i64 %M) nounwind { entry: fence seq_cst br label %for.i for.i: %indvar = phi i64 [ 0, %entry ], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %next, label %for.i @@ -20,8 +20,8 @@ next: for.j: %indvar.j = phi i64 [ %indvar, %next ], [ %indvar.j.next, %for.j ] - %scevgep.j = getelementptr i64, i64* %A, i64 %indvar.j - store i64 %indvar.j, i64* %scevgep.j + %scevgep.j = getelementptr i64, ptr %A, i64 %indvar.j + store i64 %indvar.j, ptr %scevgep.j fence seq_cst %indvar.j.next = add nsw i64 %indvar.j, 1 %exitcond.j = icmp eq i64 %indvar.j.next, %M diff --git a/polly/test/ScopDetect/dot-scops-npm.ll b/polly/test/ScopDetect/dot-scops-npm.ll index c426d0209694..30eefd1c18fd 100644 --- a/polly/test/ScopDetect/dot-scops-npm.ll +++ b/polly/test/ScopDetect/dot-scops-npm.ll @@ -12,7 +12,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @func_npm(i32 %n, i32 %m, double* noalias nonnull %A) { +define void @func_npm(i32 %n, i32 %m, ptr noalias nonnull %A) { ; CHECK: digraph "Scop Graph for 'func_npm' function" ; CHECK-NEXT: label="Scop Graph for 'func_npm' function" ; CHECK: Node0x[[EntryID:.*]] [shape=record,label="{entry:\l br label %outer.for\l}"]; @@ -80,9 +80,9 @@ outer.for: br i1 %i.cmp, label %body1, label %inner.exit body1: - %A_idx = getelementptr inbounds double, double* %A, i32 %i - %a = load double, double* %A_idx - store double %a, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %i + %a = load double, ptr %A_idx + store double %a, ptr %A_idx br label %inner.inc inner.inc: @@ -93,7 +93,7 @@ outer.for: br label %outer.inc outer.inc: - store double %b, double* %A + store double %b, ptr %A %j.inc = add nuw nsw i32 %j, 1 br label %outer.for diff --git a/polly/test/ScopDetect/dot-scops.ll b/polly/test/ScopDetect/dot-scops.ll index 590f222c4690..c31562e4c62d 100644 --- a/polly/test/ScopDetect/dot-scops.ll +++ b/polly/test/ScopDetect/dot-scops.ll @@ -11,7 +11,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @func(i32 %n, i32 %m, double* noalias nonnull %A) { +define void @func(i32 %n, i32 %m, ptr noalias nonnull %A) { entry: br label %outer.for @@ -27,9 +27,9 @@ outer.for: br i1 %i.cmp, label %body1, label %inner.exit body1: - %A_idx = getelementptr inbounds double, double* %A, i32 %i - %a = load double, double* %A_idx - store double %a, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %i + %a = load double, ptr %A_idx + store double %a, ptr %A_idx br label %inner.inc inner.inc: @@ -40,7 +40,7 @@ outer.for: br label %outer.inc outer.inc: - store double %b, double* %A + store double %b, ptr %A %j.inc = add nuw nsw i32 %j, 1 br label %outer.for diff --git a/polly/test/ScopDetect/error-block-always-executed.ll b/polly/test/ScopDetect/error-block-always-executed.ll index 5b71bdaf8f3b..894be2119941 100644 --- a/polly/test/ScopDetect/error-block-always-executed.ll +++ b/polly/test/ScopDetect/error-block-always-executed.ll @@ -14,13 +14,13 @@ bb13: br i1 undef, label %bb14, label %bb19 bb14: ; preds = %bb13 - %tmp = load i32, i32* undef, align 4, !tbaa !1 + %tmp = load i32, ptr undef, align 4, !tbaa !1 call void @quux() #2 br i1 false, label %bb15, label %bb18 bb15: ; preds = %bb14 - %tmp16 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp1, i64 0, i32 1 - %tmp17 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp1, i64 0, i32 2 + %tmp16 = getelementptr inbounds %struct.hoge, ptr %tmp1, i64 0, i32 1 + %tmp17 = getelementptr inbounds %struct.hoge, ptr %tmp1, i64 0, i32 2 br label %bb19 bb18: ; preds = %bb14 diff --git a/polly/test/ScopDetect/error-block-referenced-from-scop.ll b/polly/test/ScopDetect/error-block-referenced-from-scop.ll index ba75c3e21f85..085351482139 100644 --- a/polly/test/ScopDetect/error-block-referenced-from-scop.ll +++ b/polly/test/ScopDetect/error-block-referenced-from-scop.ll @@ -14,7 +14,7 @@ bb1: ; preds = %bb br i1 undef, label %bb2, label %bb7 bb2: ; preds = %bb1 - %tmp = load i32, i32* undef, align 8, !tbaa !1 + %tmp = load i32, ptr undef, align 8, !tbaa !1 %tmp3 = tail call i32 @widget() #2 br i1 false, label %bb4, label %bb5 diff --git a/polly/test/ScopDetect/ignore_func_flag_regex.ll b/polly/test/ScopDetect/ignore_func_flag_regex.ll index 96a6aa459e79..224126ec010e 100644 --- a/polly/test/ScopDetect/ignore_func_flag_regex.ll +++ b/polly/test/ScopDetect/ignore_func_flag_regex.ll @@ -25,7 +25,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f1(i32* %sum) { +define void @f1(ptr %sum) { entry: br label %entry.split1 @@ -37,11 +37,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end @@ -50,7 +50,7 @@ for.end: ; preds = %for.cond } -define void @f2(i32* %sum) { +define void @f2(ptr %sum) { entry: br label %entry.split1 @@ -62,11 +62,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end @@ -74,7 +74,7 @@ for.end: ; preds = %for.cond ret void } -define void @g1(i32* %sum) { +define void @g1(ptr %sum) { entry: br label %entry.split1 @@ -86,11 +86,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end @@ -98,7 +98,7 @@ for.end: ; preds = %for.cond ret void } -define void @h(i32* %sum) { +define void @h(ptr %sum) { entry: br label %entry.split1 @@ -110,11 +110,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end diff --git a/polly/test/ScopDetect/index_from_unpredictable_loop.ll b/polly/test/ScopDetect/index_from_unpredictable_loop.ll index a53b714e266c..27ed64da17e6 100644 --- a/polly/test/ScopDetect/index_from_unpredictable_loop.ll +++ b/polly/test/ScopDetect/index_from_unpredictable_loop.ll @@ -12,7 +12,7 @@ ; %arrayidx101 that depends on that exit value cannot be affine. ; Derived from test-suite/MultiSource/Benchmarks/BitBench/uuencode/uuencode.c -define void @encode_line(i8* nocapture readonly %input, i32 %octets, i64 %p) { +define void @encode_line(ptr nocapture readonly %input, i32 %octets, i64 %p) { entry: br i1 undef, label %for.body, label %for.end @@ -27,8 +27,8 @@ if.else: if.then84: %0 = add nsw i64 %indvars.iv, 1 - %arrayidx101 = getelementptr inbounds i8, i8* %input, i64 %0 - store i8 42, i8* %arrayidx101, align 1 + %arrayidx101 = getelementptr inbounds i8, ptr %input, i64 %0 + store i8 42, ptr %arrayidx101, align 1 br label %for.end for.inc: diff --git a/polly/test/ScopDetect/index_from_unpredictable_loop2.ll b/polly/test/ScopDetect/index_from_unpredictable_loop2.ll index c5c6d02adabd..9b5a3a4389d4 100644 --- a/polly/test/ScopDetect/index_from_unpredictable_loop2.ll +++ b/polly/test/ScopDetect/index_from_unpredictable_loop2.ll @@ -12,7 +12,7 @@ ; %arrayidx101 that depends on that exit value cannot be affine. ; Derived from test-suite/MultiSource/Benchmarks/BitBench/uuencode/uuencode.c -define void @encode_line(i8* nocapture readonly %input, i32 %octets, i64 %p, i32 %n) { +define void @encode_line(ptr nocapture readonly %input, i32 %octets, i64 %p, i32 %n) { entry: br label %outer.for @@ -34,8 +34,8 @@ if.else: if.then84: %0 = add nsw i64 %indvars.iv, 1 - %arrayidx101 = getelementptr inbounds i8, i8* %input, i64 %0 - store i8 42, i8* %arrayidx101, align 1 + %arrayidx101 = getelementptr inbounds i8, ptr %input, i64 %0 + store i8 42, ptr %arrayidx101, align 1 br label %for.end for.inc: diff --git a/polly/test/ScopDetect/indvars.ll b/polly/test/ScopDetect/indvars.ll index 400deec48a88..2ba4d1f5aabf 100644 --- a/polly/test/ScopDetect/indvars.ll +++ b/polly/test/ScopDetect/indvars.ll @@ -2,15 +2,15 @@ ; target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @main(i64* %A, i64* %B) nounwind { +define void @main(ptr %A, ptr %B) nounwind { entry: br label %for.i for.i: %indvar.i = phi i64 [ 0, %entry ], [ %indvar.next.i, %for.i.backedge ] %indvar.next.i = add i64 %indvar.i, 1 - %scevgep = getelementptr i64, i64* %A, i64 %indvar.i - store i64 %indvar.i, i64* %scevgep, align 4 + %scevgep = getelementptr i64, ptr %A, i64 %indvar.i + store i64 %indvar.i, ptr %scevgep, align 4 br i1 true, label %for.j.preheader, label %for.j2 for.j.preheader: @@ -19,8 +19,8 @@ for.j.preheader: for.j: %indvar.j = phi i64 [ %indvar.next.j, %for.j ], [ 0, %for.j.preheader ] %indvar.next.j = add i64 %indvar.j, 1 - %scevgep2 = getelementptr i64, i64* %B, i64 %indvar.j - store i64 %indvar.j, i64* %scevgep2, align 4 + %scevgep2 = getelementptr i64, ptr %B, i64 %indvar.j + store i64 %indvar.j, ptr %scevgep2, align 4 %exitcond.j = icmp eq i64 %indvar.next.j, 10 br i1 %exitcond.j, label %for.j2, label %for.j diff --git a/polly/test/ScopDetect/intrinsics_1.ll b/polly/test/ScopDetect/intrinsics_1.ll index ca9cf4a365a7..65d3968e247c 100644 --- a/polly/test/ScopDetect/intrinsics_1.ll +++ b/polly/test/ScopDetect/intrinsics_1.ll @@ -15,7 +15,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @jd(i32* noalias %A, float* noalias %B) #0 { +define void @jd(ptr noalias %A, ptr noalias %B) #0 { entry: br label %for.cond @@ -36,8 +36,8 @@ for.body: ; preds = %for.cond %call4 = call double @floor(double %call3) #2 %tmp3 = call double @llvm.pow.f64(double %call1, double %call4) %conv5 = fptosi double %tmp3 to i32 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %conv5, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %conv5, ptr %arrayidx, align 4 %tmp4 = trunc i64 %indvars.iv to i32 %conv6 = sitofp i32 %tmp4 to double %call7 = call double @sin(double %conv6) #2 @@ -53,8 +53,8 @@ for.body: ; preds = %for.cond %call14 = call double @__exp_finite(double %conv13) #2 %add15 = fadd fast double %call12, %call14 %conv16 = fptrunc double %add15 to float - %arrayidx18 = getelementptr inbounds float, float* %B, i64 %indvars.iv - store float %conv16, float* %arrayidx18, align 4 + %arrayidx18 = getelementptr inbounds float, ptr %B, i64 %indvars.iv + store float %conv16, ptr %arrayidx18, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopDetect/intrinsics_2.ll b/polly/test/ScopDetect/intrinsics_2.ll index 5568094f6c01..f0575511b2ef 100644 --- a/polly/test/ScopDetect/intrinsics_2.ll +++ b/polly/test/ScopDetect/intrinsics_2.ll @@ -23,7 +23,6 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" define void @jd() #0 { entry: %tmp = alloca [1024 x i32], align 16 - %tmp3 = bitcast [1024 x i32]* %tmp to i8* br label %for.cond for.cond: ; preds = %for.inc11, %entry @@ -32,7 +31,7 @@ for.cond: ; preds = %for.inc11, %entry br i1 %exitcond5, label %for.body, label %for.end13 for.body: ; preds = %for.cond - call void @llvm.lifetime.start(i64 4096, i8* %tmp3) #1 + call void @llvm.lifetime.start(i64 4096, ptr %tmp) #1 br label %for.cond2 for.cond2: ; preds = %for.inc, %for.body @@ -42,12 +41,12 @@ for.cond2: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body4, label %for.end for.body4: ; preds = %for.cond2 - %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv1 - %tmp6 = load i32, i32* %arrayidx, align 4 - %arrayidx6 = getelementptr inbounds [1024 x i32], [1024 x i32]* %tmp, i64 0, i64 %indvars.iv3 - %tmp7 = load i32, i32* %arrayidx6, align 4 + %arrayidx = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv1 + %tmp6 = load i32, ptr %arrayidx, align 4 + %arrayidx6 = getelementptr inbounds [1024 x i32], ptr %tmp, i64 0, i64 %indvars.iv3 + %tmp7 = load i32, ptr %arrayidx6, align 4 %add = add nsw i32 %tmp7, %tmp6 - store i32 %add, i32* %arrayidx6, align 4 + store i32 %add, ptr %arrayidx6, align 4 br label %for.inc for.inc: ; preds = %for.body4 @@ -55,15 +54,15 @@ for.inc: ; preds = %for.body4 br label %for.cond2 for.end: ; preds = %for.cond2 - %arrayidx8 = getelementptr inbounds [1024 x i32], [1024 x i32]* %tmp, i64 0, i64 %indvars.iv3 - %tmp8 = load i32, i32* %arrayidx8, align 4 - %arrayidx10 = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv3 - store i32 %tmp8, i32* %arrayidx10, align 4 + %arrayidx8 = getelementptr inbounds [1024 x i32], ptr %tmp, i64 0, i64 %indvars.iv3 + %tmp8 = load i32, ptr %arrayidx8, align 4 + %arrayidx10 = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv3 + store i32 %tmp8, ptr %arrayidx10, align 4 br label %for.inc11 for.inc11: ; preds = %for.end %indvars.iv.next4 = add nuw nsw i64 %indvars.iv3, 1 - call void @llvm.lifetime.end(i64 4096, i8* %tmp3) #1 + call void @llvm.lifetime.end(i64 4096, ptr %tmp) #1 br label %for.cond for.end13: ; preds = %for.cond @@ -71,10 +70,10 @@ for.end13: ; preds = %for.cond } ; Function Attrs: nounwind -declare void @llvm.lifetime.start(i64, i8* nocapture) #1 +declare void @llvm.lifetime.start(i64, ptr nocapture) #1 ; Function Attrs: nounwind -declare void @llvm.lifetime.end(i64, i8* nocapture) #1 +declare void @llvm.lifetime.end(i64, ptr nocapture) #1 attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" } attributes #1 = { nounwind } diff --git a/polly/test/ScopDetect/intrinsics_3.ll b/polly/test/ScopDetect/intrinsics_3.ll index 9fbbcf31e0dc..bce90d136a41 100644 --- a/polly/test/ScopDetect/intrinsics_3.ll +++ b/polly/test/ScopDetect/intrinsics_3.ll @@ -23,7 +23,6 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" define void @jd() #0 { entry: %tmp = alloca [1024 x i32], align 16 - %tmp3 = bitcast [1024 x i32]* @A to i8* br label %for.cond for.cond: ; preds = %for.inc11, %entry @@ -32,7 +31,7 @@ for.cond: ; preds = %for.inc11, %entry br i1 %exitcond5, label %for.body, label %for.end13 for.body: ; preds = %for.cond - %lis = call {}* @llvm.invariant.start(i64 4096, i8* %tmp3) #1 + %lis = call ptr @llvm.invariant.start(i64 4096, ptr @A) #1 br label %for.cond2 for.cond2: ; preds = %for.inc, %for.body @@ -44,13 +43,13 @@ for.cond2: ; preds = %for.inc, %for.body for.body4: ; preds = %for.cond2 call void @llvm.assume(i1 %exitcond) call i1 @llvm.expect.i1(i1 %exitcond, i1 1) - %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv1 - %tmp6 = load i32, i32* %arrayidx, align 4 - %arrayidx6 = getelementptr inbounds [1024 x i32], [1024 x i32]* %tmp, i64 0, i64 %indvars.iv3 + %arrayidx = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv1 + %tmp6 = load i32, ptr %arrayidx, align 4 + %arrayidx6 = getelementptr inbounds [1024 x i32], ptr %tmp, i64 0, i64 %indvars.iv3 call void @llvm.donothing() - %tmp7 = load i32, i32* %arrayidx6, align 4 + %tmp7 = load i32, ptr %arrayidx6, align 4 %add = add nsw i32 %tmp7, %tmp6 - store i32 %add, i32* %arrayidx6, align 4 + store i32 %add, ptr %arrayidx6, align 4 br label %for.inc for.inc: ; preds = %for.body4 @@ -58,11 +57,11 @@ for.inc: ; preds = %for.body4 br label %for.cond2 for.end: ; preds = %for.cond2 - %arrayidx8 = getelementptr inbounds [1024 x i32], [1024 x i32]* %tmp, i64 0, i64 %indvars.iv3 - %tmp8 = load i32, i32* %arrayidx8, align 4 - %arrayidx10 = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv3 - call void @llvm.invariant.end({}* %lis, i64 4096, i8* %tmp3) #1 - store i32 %tmp8, i32* %arrayidx10, align 4 + %arrayidx8 = getelementptr inbounds [1024 x i32], ptr %tmp, i64 0, i64 %indvars.iv3 + %tmp8 = load i32, ptr %arrayidx8, align 4 + %arrayidx10 = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv3 + call void @llvm.invariant.end(ptr %lis, i64 4096, ptr @A) #1 + store i32 %tmp8, ptr %arrayidx10, align 4 br label %for.inc11 for.inc11: ; preds = %for.end @@ -83,10 +82,10 @@ declare void @llvm.assume(i1) #1 declare i1 @llvm.expect.i1(i1, i1) #1 ; Function Attrs: nounwind -declare {}* @llvm.invariant.start(i64, i8* nocapture) #1 +declare ptr @llvm.invariant.start(i64, ptr nocapture) #1 ; Function Attrs: nounwind -declare void @llvm.invariant.end({}*, i64, i8* nocapture) #1 +declare void @llvm.invariant.end(ptr, i64, ptr nocapture) #1 attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" } attributes #1 = { nounwind } diff --git a/polly/test/ScopDetect/invalid-latch-conditions.ll b/polly/test/ScopDetect/invalid-latch-conditions.ll index af661fb71ffb..eb8097470ecf 100644 --- a/polly/test/ScopDetect/invalid-latch-conditions.ll +++ b/polly/test/ScopDetect/invalid-latch-conditions.ll @@ -13,7 +13,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @kernel_reg_detect([6 x i32]* %path) #0 { +define void @kernel_reg_detect(ptr %path) #0 { entry: br label %for.body.6 @@ -25,10 +25,8 @@ for.body.6: ; preds = %for.inc.43, %for.bo br i1 %exitcond, label %for.body.6, label %for.inc.40 for.inc.40: ; preds = %for.inc.40, %for.body.6 - %arrayidx28 = getelementptr inbounds [6 x i32], [6 x i32]* %path, i64 0, i64 0 - %tmp = load i32, i32* %arrayidx28, align 4 - %arrayidx36 = getelementptr inbounds [6 x i32], [6 x i32]* %path, i64 0, i64 0 - store i32 0, i32* %arrayidx36, align 4 + %tmp = load i32, ptr %path, align 4 + store i32 0, ptr %path, align 4 %exitcond22 = icmp ne i64 0, 6 br i1 %exitcond22, label %for.inc.40, label %for.inc.43 diff --git a/polly/test/ScopDetect/invalidate_scalar_evolution.ll b/polly/test/ScopDetect/invalidate_scalar_evolution.ll index 4acbdfcac264..01d34c49e289 100644 --- a/polly/test/ScopDetect/invalidate_scalar_evolution.ll +++ b/polly/test/ScopDetect/invalidate_scalar_evolution.ll @@ -8,7 +8,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N, i64 %p) nounwind { +define void @f(ptr %A, i64 %N, i64 %p) nounwind { entry: fence seq_cst br label %pre @@ -23,8 +23,8 @@ for.i: %indvar.p2 = phi i64 [ 0, %pre ], [ %indvar.p2.next, %for.i ] %sum = add i64 %indvar, %indvar.p1 %sum2 = sub i64 %sum, %indvar.p2 - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %indvar.p1.next = add nsw i64 %indvar.p1, %p_tmp %indvar.p2.next = add nsw i64 %indvar.p2, %p_tmp diff --git a/polly/test/ScopDetect/invariant-load-before-scop.ll b/polly/test/ScopDetect/invariant-load-before-scop.ll index 127bcddb03b0..f72085ff88a1 100644 --- a/polly/test/ScopDetect/invariant-load-before-scop.ll +++ b/polly/test/ScopDetect/invariant-load-before-scop.ll @@ -8,43 +8,43 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%"struct.pov::Frame_Struct.37.89.245.349.401.505.557.713.817.869.1129.1493.1649.2013.2065.2117.2325.3312.36.110.184.258.332.1072" = type { %"struct.pov::Camera_Struct.12.64.220.324.376.480.532.688.792.844.1104.1468.1624.1988.2040.2092.2300.3287.11.85.159.233.307.1047"*, i32, i32, i32, %"struct.pov::Light_Source_Struct.31.83.239.343.395.499.551.707.811.863.1123.1487.1643.2007.2059.2111.2319.3306.30.104.178.252.326.1066"*, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, double, double, double, [5 x float], [5 x float], [5 x float], %"struct.pov::Media_Struct.20.72.228.332.384.488.540.696.800.852.1112.1476.1632.1996.2048.2100.2308.3295.19.93.167.241.315.1055"*, %"struct.pov::Fog_Struct.33.85.241.345.397.501.553.709.813.865.1125.1489.1645.2009.2061.2113.2321.3308.32.106.180.254.328.1068"*, %"struct.pov::Rainbow_Struct.34.86.242.346.398.502.554.710.814.866.1126.1490.1646.2010.2062.2114.2322.3309.33.107.181.255.329.1069"*, %"struct.pov::Skysphere_Struct.35.87.243.347.399.503.555.711.815.867.1127.1491.1647.2011.2063.2115.2323.3310.34.108.182.256.330.1070"*, %"struct.pov::light_group_light_struct.36.88.244.348.400.504.556.712.816.868.1128.1492.1648.2012.2064.2116.2324.3311.35.109.183.257.331.1071"* } -%"struct.pov::Camera_Struct.12.64.220.324.376.480.532.688.792.844.1104.1468.1624.1988.2040.2092.2300.3287.11.85.159.233.307.1047" = type { [3 x double], [3 x double], [3 x double], [3 x double], [3 x double], [3 x double], [3 x double], double, double, i32, double, double, i32, double, double, double, %"struct.pov::Tnormal_Struct.10.62.218.322.374.478.530.686.790.842.1102.1466.1622.1986.2038.2090.2298.3285.9.83.157.231.305.1045"*, %"struct.pov::Transform_Struct.11.63.219.323.375.479.531.687.791.843.1103.1467.1623.1987.2039.2091.2299.3286.10.84.158.232.306.1046"* } -%"struct.pov::Tnormal_Struct.10.62.218.322.374.478.530.686.790.842.1102.1466.1622.1986.2038.2090.2298.3285.9.83.157.231.305.1045" = type { i16, i16, i16, i32, float, float, float, %"struct.pov::Warps_Struct.1.53.209.313.365.469.521.677.781.833.1093.1457.1613.1977.2029.2081.2289.3276.0.74.148.222.296.1036"*, %"struct.pov::Pattern_Struct.7.59.215.319.371.475.527.683.787.839.1099.1463.1619.1983.2035.2087.2295.3282.6.80.154.228.302.1042"*, %"struct.pov::Blend_Map_Struct.4.56.212.316.368.472.524.680.784.836.1096.1460.1616.1980.2032.2084.2292.3279.3.77.151.225.299.1039"*, %union.anon.25.9.61.217.321.373.477.529.685.789.841.1101.1465.1621.1985.2037.2089.2297.3284.8.82.156.230.304.1044, float, float } -%"struct.pov::Warps_Struct.1.53.209.313.365.469.521.677.781.833.1093.1457.1613.1977.2029.2081.2289.3276.0.74.148.222.296.1036" = type { i16, %"struct.pov::Warps_Struct.1.53.209.313.365.469.521.677.781.833.1093.1457.1613.1977.2029.2081.2289.3276.0.74.148.222.296.1036"*, %"struct.pov::Warps_Struct.1.53.209.313.365.469.521.677.781.833.1093.1457.1613.1977.2029.2081.2289.3276.0.74.148.222.296.1036"* } -%"struct.pov::Pattern_Struct.7.59.215.319.371.475.527.683.787.839.1099.1463.1619.1983.2035.2087.2295.3282.6.80.154.228.302.1042" = type { i16, i16, i16, i32, float, float, float, %"struct.pov::Warps_Struct.1.53.209.313.365.469.521.677.781.833.1093.1457.1613.1977.2029.2081.2289.3276.0.74.148.222.296.1036"*, %"struct.pov::Pattern_Struct.7.59.215.319.371.475.527.683.787.839.1099.1463.1619.1983.2035.2087.2295.3282.6.80.154.228.302.1042"*, %"struct.pov::Blend_Map_Struct.4.56.212.316.368.472.524.680.784.836.1096.1460.1616.1980.2032.2084.2292.3279.3.77.151.225.299.1039"*, %union.anon.17.6.58.214.318.370.474.526.682.786.838.1098.1462.1618.1982.2034.2086.2294.3281.5.79.153.227.301.1041 } +%"struct.pov::Frame_Struct.37.89.245.349.401.505.557.713.817.869.1129.1493.1649.2013.2065.2117.2325.3312.36.110.184.258.332.1072" = type { ptr, i32, i32, i32, ptr, ptr, double, double, double, [5 x float], [5 x float], [5 x float], ptr, ptr, ptr, ptr, ptr } +%"struct.pov::Camera_Struct.12.64.220.324.376.480.532.688.792.844.1104.1468.1624.1988.2040.2092.2300.3287.11.85.159.233.307.1047" = type { [3 x double], [3 x double], [3 x double], [3 x double], [3 x double], [3 x double], [3 x double], double, double, i32, double, double, i32, double, double, double, ptr, ptr } +%"struct.pov::Tnormal_Struct.10.62.218.322.374.478.530.686.790.842.1102.1466.1622.1986.2038.2090.2298.3285.9.83.157.231.305.1045" = type { i16, i16, i16, i32, float, float, float, ptr, ptr, ptr, %union.anon.25.9.61.217.321.373.477.529.685.789.841.1101.1465.1621.1985.2037.2089.2297.3284.8.82.156.230.304.1044, float, float } +%"struct.pov::Warps_Struct.1.53.209.313.365.469.521.677.781.833.1093.1457.1613.1977.2029.2081.2289.3276.0.74.148.222.296.1036" = type { i16, ptr, ptr } +%"struct.pov::Pattern_Struct.7.59.215.319.371.475.527.683.787.839.1099.1463.1619.1983.2035.2087.2295.3282.6.80.154.228.302.1042" = type { i16, i16, i16, i32, float, float, float, ptr, ptr, ptr, %union.anon.17.6.58.214.318.370.474.526.682.786.838.1098.1462.1618.1982.2034.2086.2294.3281.5.79.153.227.301.1041 } %union.anon.17.6.58.214.318.370.474.526.682.786.838.1098.1462.1618.1982.2034.2086.2294.3281.5.79.153.227.301.1041 = type { %struct.anon.21.5.57.213.317.369.473.525.681.785.837.1097.1461.1617.1981.2033.2085.2293.3280.4.78.152.226.300.1040 } -%struct.anon.21.5.57.213.317.369.473.525.681.785.837.1097.1461.1617.1981.2033.2085.2293.3280.4.78.152.226.300.1040 = type { [3 x double], [3 x double], double, double, i16, [3 x double]*, i32, [3 x double] } -%"struct.pov::Blend_Map_Struct.4.56.212.316.368.472.524.680.784.836.1096.1460.1616.1980.2032.2084.2292.3279.3.77.151.225.299.1039" = type { i32, i16, i8, i8, %"struct.pov::Blend_Map_Entry.3.55.211.315.367.471.523.679.783.835.1095.1459.1615.1979.2031.2083.2291.3278.2.76.150.224.298.1038"* } +%struct.anon.21.5.57.213.317.369.473.525.681.785.837.1097.1461.1617.1981.2033.2085.2293.3280.4.78.152.226.300.1040 = type { [3 x double], [3 x double], double, double, i16, ptr, i32, [3 x double] } +%"struct.pov::Blend_Map_Struct.4.56.212.316.368.472.524.680.784.836.1096.1460.1616.1980.2032.2084.2292.3279.3.77.151.225.299.1039" = type { i32, i16, i8, i8, ptr } %"struct.pov::Blend_Map_Entry.3.55.211.315.367.471.523.679.783.835.1095.1459.1615.1979.2031.2083.2291.3278.2.76.150.224.298.1038" = type { float, i8, %union.anon.2.54.210.314.366.470.522.678.782.834.1094.1458.1614.1978.2030.2082.2290.3277.1.75.149.223.297.1037 } %union.anon.2.54.210.314.366.470.522.678.782.834.1094.1458.1614.1978.2030.2082.2290.3277.1.75.149.223.297.1037 = type { [2 x double], [8 x i8] } %union.anon.25.9.61.217.321.373.477.529.685.789.841.1101.1465.1621.1985.2037.2089.2297.3284.8.82.156.230.304.1044 = type { %struct.anon.29.8.60.216.320.372.476.528.684.788.840.1100.1464.1620.1984.2036.2088.2296.3283.7.81.155.229.303.1043 } -%struct.anon.29.8.60.216.320.372.476.528.684.788.840.1100.1464.1620.1984.2036.2088.2296.3283.7.81.155.229.303.1043 = type { [3 x double], [3 x double], double, double, i16, [3 x double]*, i32, [3 x double] } +%struct.anon.29.8.60.216.320.372.476.528.684.788.840.1100.1464.1620.1984.2036.2088.2296.3283.7.81.155.229.303.1043 = type { [3 x double], [3 x double], double, double, i16, ptr, i32, [3 x double] } %"struct.pov::Transform_Struct.11.63.219.323.375.479.531.687.791.843.1103.1467.1623.1987.2039.2091.2299.3286.10.84.158.232.306.1046" = type { [4 x [4 x double]], [4 x [4 x double]] } -%"struct.pov::Light_Source_Struct.31.83.239.343.395.499.551.707.811.863.1123.1487.1643.2007.2059.2111.2319.3306.30.104.178.252.326.1066" = type { %"struct.pov::Method_Struct.27.79.235.339.391.495.547.703.807.859.1119.1483.1639.2003.2055.2107.2315.3302.26.100.174.248.322.1062"*, i32, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, %"struct.pov::Texture_Struct.19.71.227.331.383.487.539.695.799.851.1111.1475.1631.1995.2047.2099.2307.3294.18.92.166.240.314.1054"*, %"struct.pov::Texture_Struct.19.71.227.331.383.487.539.695.799.851.1111.1475.1631.1995.2047.2099.2307.3294.18.92.166.240.314.1054"*, %"struct.pov::Interior_Struct.21.73.229.333.385.489.541.697.801.853.1113.1477.1633.1997.2049.2101.2309.3296.20.94.168.242.316.1056"*, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, %"struct.pov::Light_Source_Struct.31.83.239.343.395.499.551.707.811.863.1123.1487.1643.2007.2059.2111.2319.3306.30.104.178.252.326.1066"*, %"struct.pov::Bounding_Box_Struct.22.74.230.334.386.490.542.698.802.854.1114.1478.1634.1998.2050.2102.2310.3297.21.95.169.243.317.1057", %"struct.pov::Transform_Struct.11.63.219.323.375.479.531.687.791.843.1103.1467.1623.1987.2039.2091.2299.3286.10.84.158.232.306.1046"*, %"struct.pov::Transform_Struct.11.63.219.323.375.479.531.687.791.843.1103.1467.1623.1987.2039.2091.2299.3286.10.84.158.232.306.1046"*, float, i32, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, [5 x float], [3 x double], [3 x double], [3 x double], [3 x double], [3 x double], double, double, double, double, double, %"struct.pov::Light_Source_Struct.31.83.239.343.395.499.551.707.811.863.1123.1487.1643.2007.2059.2111.2319.3306.30.104.178.252.326.1066"*, i8, i8, i8, i8, i8, i8, i8, i8, i32, i32, i32, i32, i32, [5 x float]**, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, %"struct.pov::Blend_Map_Struct.4.56.212.316.368.472.524.680.784.836.1096.1460.1616.1980.2032.2084.2292.3279.3.77.151.225.299.1039"*, [6 x %"struct.pov::Project_Tree_Node_Struct.30.82.238.342.394.498.550.706.810.862.1122.1486.1642.2006.2058.2110.2318.3305.29.103.177.251.325.1065"*] } -%"struct.pov::Method_Struct.27.79.235.339.391.495.547.703.807.859.1119.1483.1639.2003.2055.2107.2315.3302.26.100.174.248.322.1062" = type { i32 (%"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, %"struct.pov::Ray_Struct.24.76.232.336.388.492.544.700.804.856.1116.1480.1636.2000.2052.2104.2312.3299.23.97.171.245.319.1059"*, %"struct.pov::istack_struct.26.78.234.338.390.494.546.702.806.858.1118.1482.1638.2002.2054.2106.2314.3301.25.99.173.247.321.1061"*)*, i32 (double*, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*)*, void (double*, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, %"struct.pov::istk_entry.25.77.233.337.389.493.545.701.805.857.1117.1481.1637.2001.2053.2105.2313.3300.24.98.172.246.320.1060"*)*, void (double*, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, %"struct.pov::istk_entry.25.77.233.337.389.493.545.701.805.857.1117.1481.1637.2001.2053.2105.2313.3300.24.98.172.246.320.1060"*)*, i8* (%"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*)*, void (%"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, double*, %"struct.pov::Transform_Struct.11.63.219.323.375.479.531.687.791.843.1103.1467.1623.1987.2039.2091.2299.3286.10.84.158.232.306.1046"*)*, void (%"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, double*, %"struct.pov::Transform_Struct.11.63.219.323.375.479.531.687.791.843.1103.1467.1623.1987.2039.2091.2299.3286.10.84.158.232.306.1046"*)*, void (%"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, double*, %"struct.pov::Transform_Struct.11.63.219.323.375.479.531.687.791.843.1103.1467.1623.1987.2039.2091.2299.3286.10.84.158.232.306.1046"*)*, void (%"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, %"struct.pov::Transform_Struct.11.63.219.323.375.479.531.687.791.843.1103.1467.1623.1987.2039.2091.2299.3286.10.84.158.232.306.1046"*)*, void (%"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*)*, void (%"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*)* } -%"struct.pov::Ray_Struct.24.76.232.336.388.492.544.700.804.856.1116.1480.1636.2000.2052.2104.2312.3299.23.97.171.245.319.1059" = type { [3 x double], [3 x double], i32, i32, [100 x %"struct.pov::Interior_Struct.21.73.229.333.385.489.541.697.801.853.1113.1477.1633.1997.2049.2101.2309.3296.20.94.168.242.316.1056"*] } -%"struct.pov::istack_struct.26.78.234.338.390.494.546.702.806.858.1118.1482.1638.2002.2054.2106.2314.3301.25.99.173.247.321.1061" = type { %"struct.pov::istack_struct.26.78.234.338.390.494.546.702.806.858.1118.1482.1638.2002.2054.2106.2314.3301.25.99.173.247.321.1061"*, %"struct.pov::istk_entry.25.77.233.337.389.493.545.701.805.857.1117.1481.1637.2001.2053.2105.2313.3300.24.98.172.246.320.1060"*, i32, i32 } -%"struct.pov::istk_entry.25.77.233.337.389.493.545.701.805.857.1117.1481.1637.2001.2053.2105.2313.3300.24.98.172.246.320.1060" = type { double, [3 x double], [3 x double], [3 x double], [2 x double], %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, i32, i32, double, double, double, double, double, double, double, double, double, i8*, i8* } -%"struct.pov::Texture_Struct.19.71.227.331.383.487.539.695.799.851.1111.1475.1631.1995.2047.2099.2307.3294.18.92.166.240.314.1054" = type { i16, i16, i16, i32, float, float, float, %"struct.pov::Warps_Struct.1.53.209.313.365.469.521.677.781.833.1093.1457.1613.1977.2029.2081.2289.3276.0.74.148.222.296.1036"*, %"struct.pov::Pattern_Struct.7.59.215.319.371.475.527.683.787.839.1099.1463.1619.1983.2035.2087.2295.3282.6.80.154.228.302.1042"*, %"struct.pov::Blend_Map_Struct.4.56.212.316.368.472.524.680.784.836.1096.1460.1616.1980.2032.2084.2292.3279.3.77.151.225.299.1039"*, %union.anon.9.14.66.222.326.378.482.534.690.794.846.1106.1470.1626.1990.2042.2094.2302.3289.13.87.161.235.309.1049, %"struct.pov::Texture_Struct.19.71.227.331.383.487.539.695.799.851.1111.1475.1631.1995.2047.2099.2307.3294.18.92.166.240.314.1054"*, %"struct.pov::Pigment_Struct.17.69.225.329.381.485.537.693.797.849.1109.1473.1629.1993.2045.2097.2305.3292.16.90.164.238.312.1052"*, %"struct.pov::Tnormal_Struct.10.62.218.322.374.478.530.686.790.842.1102.1466.1622.1986.2038.2090.2298.3285.9.83.157.231.305.1045"*, %"struct.pov::Finish_Struct.18.70.226.330.382.486.538.694.798.850.1110.1474.1630.1994.2046.2098.2306.3293.17.91.165.239.313.1053"*, %"struct.pov::Texture_Struct.19.71.227.331.383.487.539.695.799.851.1111.1475.1631.1995.2047.2099.2307.3294.18.92.166.240.314.1054"*, i32 } +%"struct.pov::Light_Source_Struct.31.83.239.343.395.499.551.707.811.863.1123.1487.1643.2007.2059.2111.2319.3306.30.104.178.252.326.1066" = type { ptr, i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, %"struct.pov::Bounding_Box_Struct.22.74.230.334.386.490.542.698.802.854.1114.1478.1634.1998.2050.2102.2310.3297.21.95.169.243.317.1057", ptr, ptr, float, i32, ptr, [5 x float], [3 x double], [3 x double], [3 x double], [3 x double], [3 x double], double, double, double, double, double, ptr, i8, i8, i8, i8, i8, i8, i8, i8, i32, i32, i32, i32, i32, ptr, ptr, ptr, ptr, [6 x ptr] } +%"struct.pov::Method_Struct.27.79.235.339.391.495.547.703.807.859.1119.1483.1639.2003.2055.2107.2315.3302.26.100.174.248.322.1062" = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr } +%"struct.pov::Ray_Struct.24.76.232.336.388.492.544.700.804.856.1116.1480.1636.2000.2052.2104.2312.3299.23.97.171.245.319.1059" = type { [3 x double], [3 x double], i32, i32, [100 x ptr] } +%"struct.pov::istack_struct.26.78.234.338.390.494.546.702.806.858.1118.1482.1638.2002.2054.2106.2314.3301.25.99.173.247.321.1061" = type { ptr, ptr, i32, i32 } +%"struct.pov::istk_entry.25.77.233.337.389.493.545.701.805.857.1117.1481.1637.2001.2053.2105.2313.3300.24.98.172.246.320.1060" = type { double, [3 x double], [3 x double], [3 x double], [2 x double], ptr, i32, i32, double, double, double, double, double, double, double, double, double, ptr, ptr } +%"struct.pov::Texture_Struct.19.71.227.331.383.487.539.695.799.851.1111.1475.1631.1995.2047.2099.2307.3294.18.92.166.240.314.1054" = type { i16, i16, i16, i32, float, float, float, ptr, ptr, ptr, %union.anon.9.14.66.222.326.378.482.534.690.794.846.1106.1470.1626.1990.2042.2094.2302.3289.13.87.161.235.309.1049, ptr, ptr, ptr, ptr, ptr, i32 } %union.anon.9.14.66.222.326.378.482.534.690.794.846.1106.1470.1626.1990.2042.2094.2302.3289.13.87.161.235.309.1049 = type { %struct.anon.13.13.65.221.325.377.481.533.689.793.845.1105.1469.1625.1989.2041.2093.2301.3288.12.86.160.234.308.1048 } -%struct.anon.13.13.65.221.325.377.481.533.689.793.845.1105.1469.1625.1989.2041.2093.2301.3288.12.86.160.234.308.1048 = type { [3 x double], [3 x double], double, double, i16, [3 x double]*, i32, [3 x double] } -%"struct.pov::Pigment_Struct.17.69.225.329.381.485.537.693.797.849.1109.1473.1629.1993.2045.2097.2305.3292.16.90.164.238.312.1052" = type { i16, i16, i16, i32, float, float, float, %"struct.pov::Warps_Struct.1.53.209.313.365.469.521.677.781.833.1093.1457.1613.1977.2029.2081.2289.3276.0.74.148.222.296.1036"*, %"struct.pov::Pattern_Struct.7.59.215.319.371.475.527.683.787.839.1099.1463.1619.1983.2035.2087.2295.3282.6.80.154.228.302.1042"*, %"struct.pov::Blend_Map_Struct.4.56.212.316.368.472.524.680.784.836.1096.1460.1616.1980.2032.2084.2292.3279.3.77.151.225.299.1039"*, %union.anon.0.16.68.224.328.380.484.536.692.796.848.1108.1472.1628.1992.2044.2096.2304.3291.15.89.163.237.311.1051, [5 x float] } +%struct.anon.13.13.65.221.325.377.481.533.689.793.845.1105.1469.1625.1989.2041.2093.2301.3288.12.86.160.234.308.1048 = type { [3 x double], [3 x double], double, double, i16, ptr, i32, [3 x double] } +%"struct.pov::Pigment_Struct.17.69.225.329.381.485.537.693.797.849.1109.1473.1629.1993.2045.2097.2305.3292.16.90.164.238.312.1052" = type { i16, i16, i16, i32, float, float, float, ptr, ptr, ptr, %union.anon.0.16.68.224.328.380.484.536.692.796.848.1108.1472.1628.1992.2044.2096.2304.3291.15.89.163.237.311.1051, [5 x float] } %union.anon.0.16.68.224.328.380.484.536.692.796.848.1108.1472.1628.1992.2044.2096.2304.3291.15.89.163.237.311.1051 = type { %struct.anon.5.15.67.223.327.379.483.535.691.795.847.1107.1471.1627.1991.2043.2095.2303.3290.14.88.162.236.310.1050 } -%struct.anon.5.15.67.223.327.379.483.535.691.795.847.1107.1471.1627.1991.2043.2095.2303.3290.14.88.162.236.310.1050 = type { [3 x double], [3 x double], double, double, i16, [3 x double]*, i32, [3 x double] } +%struct.anon.5.15.67.223.327.379.483.535.691.795.847.1107.1471.1627.1991.2043.2095.2303.3290.14.88.162.236.310.1050 = type { [3 x double], [3 x double], double, double, i16, ptr, i32, [3 x double] } %"struct.pov::Finish_Struct.18.70.226.330.382.486.538.694.798.850.1110.1474.1630.1994.2046.2098.2306.3293.17.91.165.239.313.1053" = type { float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, [3 x float], [3 x float], [3 x float], float, i32, float, i32 } -%"struct.pov::Interior_Struct.21.73.229.333.385.489.541.697.801.853.1113.1477.1633.1997.2049.2101.2309.3296.20.94.168.242.316.1056" = type { i32, i32, i32, float, float, float, float, float, float, [5 x float], %"struct.pov::Media_Struct.20.72.228.332.384.488.540.696.800.852.1112.1476.1632.1996.2048.2100.2308.3295.19.93.167.241.315.1055"* } +%"struct.pov::Interior_Struct.21.73.229.333.385.489.541.697.801.853.1113.1477.1633.1997.2049.2101.2309.3296.20.94.168.242.316.1056" = type { i32, i32, i32, float, float, float, float, float, float, [5 x float], ptr } %"struct.pov::Bounding_Box_Struct.22.74.230.334.386.490.542.698.802.854.1114.1478.1634.1998.2050.2102.2310.3297.21.95.169.243.317.1057" = type { [3 x float], [3 x float] } -%"struct.pov::Project_Tree_Node_Struct.30.82.238.342.394.498.550.706.810.862.1122.1486.1642.2006.2058.2110.2318.3305.29.103.177.251.325.1065" = type { i16, %"struct.pov::BBox_Tree_Struct.28.80.236.340.392.496.548.704.808.860.1120.1484.1640.2004.2056.2108.2316.3303.27.101.175.249.323.1063"*, %"struct.pov::Project_Struct.29.81.237.341.393.497.549.705.809.861.1121.1485.1641.2005.2057.2109.2317.3304.28.102.176.250.324.1064", i16, %"struct.pov::Project_Tree_Node_Struct.30.82.238.342.394.498.550.706.810.862.1122.1486.1642.2006.2058.2110.2318.3305.29.103.177.251.325.1065"** } -%"struct.pov::BBox_Tree_Struct.28.80.236.340.392.496.548.704.808.860.1120.1484.1640.2004.2056.2108.2316.3303.27.101.175.249.323.1063" = type { i16, i16, %"struct.pov::Bounding_Box_Struct.22.74.230.334.386.490.542.698.802.854.1114.1478.1634.1998.2050.2102.2310.3297.21.95.169.243.317.1057", %"struct.pov::BBox_Tree_Struct.28.80.236.340.392.496.548.704.808.860.1120.1484.1640.2004.2056.2108.2316.3303.27.101.175.249.323.1063"** } +%"struct.pov::Project_Tree_Node_Struct.30.82.238.342.394.498.550.706.810.862.1122.1486.1642.2006.2058.2110.2318.3305.29.103.177.251.325.1065" = type { i16, ptr, %"struct.pov::Project_Struct.29.81.237.341.393.497.549.705.809.861.1121.1485.1641.2005.2057.2109.2317.3304.28.102.176.250.324.1064", i16, ptr } +%"struct.pov::BBox_Tree_Struct.28.80.236.340.392.496.548.704.808.860.1120.1484.1640.2004.2056.2108.2316.3303.27.101.175.249.323.1063" = type { i16, i16, %"struct.pov::Bounding_Box_Struct.22.74.230.334.386.490.542.698.802.854.1114.1478.1634.1998.2050.2102.2310.3297.21.95.169.243.317.1057", ptr } %"struct.pov::Project_Struct.29.81.237.341.393.497.549.705.809.861.1121.1485.1641.2005.2057.2109.2317.3304.28.102.176.250.324.1064" = type { i32, i32, i32, i32 } -%"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058" = type { %"struct.pov::Method_Struct.27.79.235.339.391.495.547.703.807.859.1119.1483.1639.2003.2055.2107.2315.3302.26.100.174.248.322.1062"*, i32, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, %"struct.pov::Texture_Struct.19.71.227.331.383.487.539.695.799.851.1111.1475.1631.1995.2047.2099.2307.3294.18.92.166.240.314.1054"*, %"struct.pov::Texture_Struct.19.71.227.331.383.487.539.695.799.851.1111.1475.1631.1995.2047.2099.2307.3294.18.92.166.240.314.1054"*, %"struct.pov::Interior_Struct.21.73.229.333.385.489.541.697.801.853.1113.1477.1633.1997.2049.2101.2309.3296.20.94.168.242.316.1056"*, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, %"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058"*, %"struct.pov::Light_Source_Struct.31.83.239.343.395.499.551.707.811.863.1123.1487.1643.2007.2059.2111.2319.3306.30.104.178.252.326.1066"*, %"struct.pov::Bounding_Box_Struct.22.74.230.334.386.490.542.698.802.854.1114.1478.1634.1998.2050.2102.2310.3297.21.95.169.243.317.1057", %"struct.pov::Transform_Struct.11.63.219.323.375.479.531.687.791.843.1103.1467.1623.1987.2039.2091.2299.3286.10.84.158.232.306.1046"*, %"struct.pov::Transform_Struct.11.63.219.323.375.479.531.687.791.843.1103.1467.1623.1987.2039.2091.2299.3286.10.84.158.232.306.1046"*, float, i32 } -%"struct.pov::Media_Struct.20.72.228.332.384.488.540.696.800.852.1112.1476.1632.1996.2048.2100.2308.3295.19.93.167.241.315.1055" = type { i32, i32, i32, i32, i32, double, i32, double, double, i32, i32, i32, i32, [5 x float], [5 x float], [5 x float], [5 x float], double, double, double, double*, double, i32, i32, %"struct.pov::Pigment_Struct.17.69.225.329.381.485.537.693.797.849.1109.1473.1629.1993.2045.2097.2305.3292.16.90.164.238.312.1052"*, %"struct.pov::Media_Struct.20.72.228.332.384.488.540.696.800.852.1112.1476.1632.1996.2048.2100.2308.3295.19.93.167.241.315.1055"* } -%"struct.pov::Fog_Struct.33.85.241.345.397.501.553.709.813.865.1125.1489.1645.2009.2061.2113.2321.3308.32.106.180.254.328.1068" = type { i32, double, double, double, [5 x float], [3 x double], %"struct.pov::Turb_Struct.32.84.240.344.396.500.552.708.812.864.1124.1488.1644.2008.2060.2112.2320.3307.31.105.179.253.327.1067"*, float, %"struct.pov::Fog_Struct.33.85.241.345.397.501.553.709.813.865.1125.1489.1645.2009.2061.2113.2321.3308.32.106.180.254.328.1068"* } -%"struct.pov::Turb_Struct.32.84.240.344.396.500.552.708.812.864.1124.1488.1644.2008.2060.2112.2320.3307.31.105.179.253.327.1067" = type { i16, %"struct.pov::Warps_Struct.1.53.209.313.365.469.521.677.781.833.1093.1457.1613.1977.2029.2081.2289.3276.0.74.148.222.296.1036"*, %"struct.pov::Warps_Struct.1.53.209.313.365.469.521.677.781.833.1093.1457.1613.1977.2029.2081.2289.3276.0.74.148.222.296.1036"*, [3 x double], i32, float, float } -%"struct.pov::Rainbow_Struct.34.86.242.346.398.502.554.710.814.866.1126.1490.1646.2010.2062.2114.2322.3309.33.107.181.255.329.1069" = type { double, double, double, double, double, double, double, [3 x double], [3 x double], [3 x double], %"struct.pov::Pigment_Struct.17.69.225.329.381.485.537.693.797.849.1109.1473.1629.1993.2045.2097.2305.3292.16.90.164.238.312.1052"*, %"struct.pov::Rainbow_Struct.34.86.242.346.398.502.554.710.814.866.1126.1490.1646.2010.2062.2114.2322.3309.33.107.181.255.329.1069"* } -%"struct.pov::Skysphere_Struct.35.87.243.347.399.503.555.711.815.867.1127.1491.1647.2011.2063.2115.2323.3310.34.108.182.256.330.1070" = type { i32, %"struct.pov::Pigment_Struct.17.69.225.329.381.485.537.693.797.849.1109.1473.1629.1993.2045.2097.2305.3292.16.90.164.238.312.1052"**, %"struct.pov::Transform_Struct.11.63.219.323.375.479.531.687.791.843.1103.1467.1623.1987.2039.2091.2299.3286.10.84.158.232.306.1046"* } -%"struct.pov::light_group_light_struct.36.88.244.348.400.504.556.712.816.868.1128.1492.1648.2012.2064.2116.2324.3311.35.109.183.257.331.1071" = type { %"struct.pov::Light_Source_Struct.31.83.239.343.395.499.551.707.811.863.1123.1487.1643.2007.2059.2111.2319.3306.30.104.178.252.326.1066"*, %"struct.pov::light_group_light_struct.36.88.244.348.400.504.556.712.816.868.1128.1492.1648.2012.2064.2116.2324.3311.35.109.183.257.331.1071"* } +%"struct.pov::Object_Struct.23.75.231.335.387.491.543.699.803.855.1115.1479.1635.1999.2051.2103.2311.3298.22.96.170.244.318.1058" = type { ptr, i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, %"struct.pov::Bounding_Box_Struct.22.74.230.334.386.490.542.698.802.854.1114.1478.1634.1998.2050.2102.2310.3297.21.95.169.243.317.1057", ptr, ptr, float, i32 } +%"struct.pov::Media_Struct.20.72.228.332.384.488.540.696.800.852.1112.1476.1632.1996.2048.2100.2308.3295.19.93.167.241.315.1055" = type { i32, i32, i32, i32, i32, double, i32, double, double, i32, i32, i32, i32, [5 x float], [5 x float], [5 x float], [5 x float], double, double, double, ptr, double, i32, i32, ptr, ptr } +%"struct.pov::Fog_Struct.33.85.241.345.397.501.553.709.813.865.1125.1489.1645.2009.2061.2113.2321.3308.32.106.180.254.328.1068" = type { i32, double, double, double, [5 x float], [3 x double], ptr, float, ptr } +%"struct.pov::Turb_Struct.32.84.240.344.396.500.552.708.812.864.1124.1488.1644.2008.2060.2112.2320.3307.31.105.179.253.327.1067" = type { i16, ptr, ptr, [3 x double], i32, float, float } +%"struct.pov::Rainbow_Struct.34.86.242.346.398.502.554.710.814.866.1126.1490.1646.2010.2062.2114.2322.3309.33.107.181.255.329.1069" = type { double, double, double, double, double, double, double, [3 x double], [3 x double], [3 x double], ptr, ptr } +%"struct.pov::Skysphere_Struct.35.87.243.347.399.503.555.711.815.867.1127.1491.1647.2011.2063.2115.2323.3310.34.108.182.256.330.1070" = type { i32, ptr, ptr } +%"struct.pov::light_group_light_struct.36.88.244.348.400.504.556.712.816.868.1128.1492.1648.2012.2064.2116.2324.3311.35.109.183.257.331.1071" = type { ptr, ptr } @_ZN3pov5FrameE = external global %"struct.pov::Frame_Struct.37.89.245.349.401.505.557.713.817.869.1129.1493.1649.2013.2065.2117.2325.3312.36.110.184.258.332.1072", align 8 @_ZN3povL27Precompute_Camera_ConstantsE = external unnamed_addr global i1, align 4 @@ -52,13 +52,13 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: uwtable define fastcc void @_ZN3povL10create_rayEPNS_10Ray_StructEddi() unnamed_addr { entry: - %0 = load %"struct.pov::Camera_Struct.12.64.220.324.376.480.532.688.792.844.1104.1468.1624.1988.2040.2092.2300.3287.11.85.159.233.307.1047"*, %"struct.pov::Camera_Struct.12.64.220.324.376.480.532.688.792.844.1104.1468.1624.1988.2040.2092.2300.3287.11.85.159.233.307.1047"** getelementptr inbounds (%"struct.pov::Frame_Struct.37.89.245.349.401.505.557.713.817.869.1129.1493.1649.2013.2065.2117.2325.3312.36.110.184.258.332.1072", %"struct.pov::Frame_Struct.37.89.245.349.401.505.557.713.817.869.1129.1493.1649.2013.2065.2117.2325.3312.36.110.184.258.332.1072"* @_ZN3pov5FrameE, i64 0, i32 0), align 8 - %.b761 = load i1, i1* @_ZN3povL27Precompute_Camera_ConstantsE, align 4 + %0 = load ptr, ptr @_ZN3pov5FrameE, align 8 + %.b761 = load i1, ptr @_ZN3povL27Precompute_Camera_ConstantsE, align 4 br label %if.end79 if.end79: ; preds = %entry - %arraydecay89 = getelementptr inbounds %"struct.pov::Camera_Struct.12.64.220.324.376.480.532.688.792.844.1104.1468.1624.1988.2040.2092.2300.3287.11.85.159.233.307.1047", %"struct.pov::Camera_Struct.12.64.220.324.376.480.532.688.792.844.1104.1468.1624.1988.2040.2092.2300.3287.11.85.159.233.307.1047"* %0, i64 0, i32 3, i64 0 - %1 = load double, double* %arraydecay89, align 8 + %arraydecay89 = getelementptr inbounds %"struct.pov::Camera_Struct.12.64.220.324.376.480.532.688.792.844.1104.1468.1624.1988.2040.2092.2300.3287.11.85.159.233.307.1047", ptr %0, i64 0, i32 3, i64 0 + %1 = load double, ptr %arraydecay89, align 8 br i1 %.b761, label %if.then87, label %if.end79.if.end100_crit_edge if.end79.if.end100_crit_edge: ; preds = %if.end79 diff --git a/polly/test/ScopDetect/keep_going_expansion.ll b/polly/test/ScopDetect/keep_going_expansion.ll index e27fec9f3df1..9bcfb3924f6a 100644 --- a/polly/test/ScopDetect/keep_going_expansion.ll +++ b/polly/test/ScopDetect/keep_going_expansion.ll @@ -2,7 +2,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define i32 @a(i32 %n, i32* noalias %A, i32* noalias %B) #0 { +define i32 @a(i32 %n, ptr noalias %A, ptr noalias %B) #0 { entry: br label %entry.split @@ -15,8 +15,8 @@ for.cond2.preheader: ; preds = %for.body for.body: ; preds = %entry.split, %for.body %indvar = phi i64 [ 0, %entry.split ], [ %indvar.next, %for.body ] %j.02 = trunc i64 %indvar to i32 - %arrayidx = getelementptr i32, i32* %B, i64 %indvar - store i32 %j.02, i32* %arrayidx, align 4 + %arrayidx = getelementptr i32, ptr %B, i64 %indvar + store i32 %j.02, ptr %arrayidx, align 4 %indvar.next = add i64 %indvar, 1 %exitcond3 = icmp ne i64 %indvar.next, 32 br i1 %exitcond3, label %for.body, label %for.cond2.preheader @@ -25,19 +25,19 @@ for.body4: ; preds = %for.cond2.preheader %0 = phi i32 [ 0, %for.cond2.preheader ], [ %1, %for.body4 ] %mul = mul i32 %n, %0 %idxprom5 = sext i32 %mul to i64 - %arrayidx6 = getelementptr inbounds i32, i32* %A, i64 %idxprom5 - store i32 %0, i32* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %A, i64 %idxprom5 + store i32 %0, ptr %arrayidx6, align 4 %1 = add nsw i32 %0, 1 %exitcond = icmp ne i32 %1, 32 br i1 %exitcond, label %for.body4, label %for.end9 for.end9: ; preds = %for.body4 %idxprom10 = sext i32 %n to i64 - %arrayidx11 = getelementptr inbounds i32, i32* %A, i64 %idxprom10 - %2 = load i32, i32* %arrayidx11, align 4 + %arrayidx11 = getelementptr inbounds i32, ptr %A, i64 %idxprom10 + %2 = load i32, ptr %arrayidx11, align 4 %idxprom12 = sext i32 %n to i64 - %arrayidx13 = getelementptr inbounds i32, i32* %B, i64 %idxprom12 - %3 = load i32, i32* %arrayidx13, align 4 + %arrayidx13 = getelementptr inbounds i32, ptr %B, i64 %idxprom12 + %3 = load i32, ptr %arrayidx13, align 4 %add = add nsw i32 %3, %2 ret i32 %add } diff --git a/polly/test/ScopDetect/mod_ref_read_pointer.ll b/polly/test/ScopDetect/mod_ref_read_pointer.ll index 7a703cf3f088..95a4649f4705 100644 --- a/polly/test/ScopDetect/mod_ref_read_pointer.ll +++ b/polly/test/ScopDetect/mod_ref_read_pointer.ll @@ -14,18 +14,18 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -declare i32 @func(i32* %A) #1 +declare i32 @func(ptr %A) #1 -define void @jd(i32* %A) { +define void @jd(ptr %A) { entry: br label %for.body for.body: ; preds = %entry, %for.inc %i = phi i64 [ 0, %entry ], [ %i.next, %for.inc ] - %call = call i32 @func(i32* %A) + %call = call i32 @func(ptr %A) %tmp = add nsw i64 %i, 2 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %tmp - store i32 %call, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %tmp + store i32 %call, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopDetect/more-than-one-loop.ll b/polly/test/ScopDetect/more-than-one-loop.ll index 114bac1f3b8b..bfd226c1bcfc 100644 --- a/polly/test/ScopDetect/more-than-one-loop.ll +++ b/polly/test/ScopDetect/more-than-one-loop.ll @@ -14,7 +14,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A, float* %B, i64 %N) { +define void @foo(ptr %A, ptr %B, i64 %N) { entry: br label %bb @@ -32,10 +32,10 @@ bb3: ; preds = %bb9, %bb2 bb4: ; preds = %bb3 %tmp5 = sitofp i64 %i.0 to float - %tmp6 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp7 = load float, float* %tmp6, align 4 + %tmp6 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp7 = load float, ptr %tmp6, align 4 %tmp8 = fadd float %tmp7, %tmp5 - store float %tmp8, float* %tmp6, align 4 + store float %tmp8, ptr %tmp6, align 4 br label %bb9 bb9: ; preds = %bb4 @@ -55,10 +55,10 @@ bb13: ; preds = %bb19, %bb12 bb14: ; preds = %bb13 %tmp15 = sitofp i64 %i1.0 to float - %tmp16 = getelementptr inbounds float, float* %B, i64 %i1.0 - %tmp17 = load float, float* %tmp16, align 4 + %tmp16 = getelementptr inbounds float, ptr %B, i64 %i1.0 + %tmp17 = load float, ptr %tmp16, align 4 %tmp18 = fadd float %tmp17, %tmp15 - store float %tmp18, float* %tmp16, align 4 + store float %tmp18, ptr %tmp16, align 4 br label %bb19 bb19: ; preds = %bb14 diff --git a/polly/test/ScopDetect/multidim-with-undef-size.ll b/polly/test/ScopDetect/multidim-with-undef-size.ll index c5f12e1d9cf0..9973c6c72169 100644 --- a/polly/test/ScopDetect/multidim-with-undef-size.ll +++ b/polly/test/ScopDetect/multidim-with-undef-size.ll @@ -6,7 +6,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Make sure we do not detect the larger region bb14->bb19 that contains ; a multi-dimensional memory access with a size of 'undef * undef'. -define void @hoge(i8* %arg) { +define void @hoge(ptr %arg) { bb: br label %bb6 @@ -16,9 +16,9 @@ bb6: ; preds = %bb %tmp8 = add i64 %tmp7, 0 %tmp9 = add i64 %tmp8, 8 %tmp10 = sub i64 %tmp9, undef - %tmp11 = getelementptr i8, i8* %arg, i64 %tmp10 - %tmp12 = getelementptr inbounds i8, i8* %tmp11, i64 4 - %tmp13 = getelementptr inbounds i8, i8* %tmp12, i64 20 + %tmp11 = getelementptr i8, ptr %arg, i64 %tmp10 + %tmp12 = getelementptr inbounds i8, ptr %tmp11, i64 4 + %tmp13 = getelementptr inbounds i8, ptr %tmp12, i64 20 br label %bb14 bb14: ; preds = %bb14, %bb6 @@ -27,8 +27,7 @@ bb14: ; preds = %bb14, %bb6 br i1 false, label %bb14, label %bb17 bb17: ; preds = %bb14 - %tmp18 = bitcast i8* %tmp13 to i32* - store i32 undef, i32* %tmp18, align 4 + store i32 undef, ptr %tmp13, align 4 br label %bb19 bb19: ; preds = %bb17 diff --git a/polly/test/ScopDetect/multidim.ll b/polly/test/ScopDetect/multidim.ll index 003a0a843096..f43698819f32 100644 --- a/polly/test/ScopDetect/multidim.ll +++ b/polly/test/ScopDetect/multidim.ll @@ -5,7 +5,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Make sure we do not crash in this test case. -define void @hoge(i8* %arg) { +define void @hoge(ptr %arg) { bb: br label %bb9 @@ -17,18 +17,17 @@ bb9: ; preds = %bb %tmp13 = add i64 %tmp12, undef %tmp14 = add i64 %tmp13, 8 %tmp15 = sub i64 %tmp14, undef - %tmp16 = getelementptr i8, i8* %arg, i64 %tmp15 - %tmp17 = getelementptr inbounds i8, i8* %tmp16, i64 4 - %tmp18 = getelementptr inbounds i8, i8* %tmp17, i64 20 + %tmp16 = getelementptr i8, ptr %arg, i64 %tmp15 + %tmp17 = getelementptr inbounds i8, ptr %tmp16, i64 4 + %tmp18 = getelementptr inbounds i8, ptr %tmp17, i64 20 br label %bb19 bb19: ; preds = %bb19, %bb9 br i1 false, label %bb19, label %bb20 bb20: ; preds = %bb19 - %tmp21 = getelementptr inbounds i8, i8* %tmp18, i64 4 - %tmp22 = bitcast i8* %tmp21 to i32* - %tmp23 = load i32, i32* %tmp22 + %tmp21 = getelementptr inbounds i8, ptr %tmp18, i64 4 + %tmp23 = load i32, ptr %tmp21 br label %bb24 bb24: ; preds = %bb20 diff --git a/polly/test/ScopDetect/multidim_indirect_access.ll b/polly/test/ScopDetect/multidim_indirect_access.ll index 9cd1d3e11e78..3e06251f5fd1 100644 --- a/polly/test/ScopDetect/multidim_indirect_access.ll +++ b/polly/test/ScopDetect/multidim_indirect_access.ll @@ -18,25 +18,25 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i64 %N) { +define void @f(ptr %A, i64 %N) { bb: br label %bb0 bb0: %j = phi i64 [ %j.next, %bb1 ], [ 1, %bb ] - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %exitcond0 = icmp sgt i64 %N, %j %j.next = add nuw nsw i64 %j, 1 br i1 %exitcond0, label %bb1, label %bb13 bb1: ; preds = %bb7, %bb0 %i = phi i64 [ %i.next, %bb1 ], [ 1, %bb0 ] - %.0 = phi i32* [ %A, %bb0 ], [ %tmp12, %bb1 ] + %.0 = phi ptr [ %A, %bb0 ], [ %tmp12, %bb1 ] %tmp8 = sext i32 %tmp to i64 - %tmp9 = getelementptr inbounds i32, i32* %.0, i64 %tmp8 - store i32 42, i32* %tmp9, align 4 + %tmp9 = getelementptr inbounds i32, ptr %.0, i64 %tmp8 + store i32 42, ptr %tmp9, align 4 %tmp11 = sext i32 %tmp to i64 - %tmp12 = getelementptr inbounds i32, i32* %.0, i64 %tmp11 + %tmp12 = getelementptr inbounds i32, ptr %.0, i64 %tmp11 %i.next = add nuw nsw i64 %i, 1 %exitcond = icmp ne i64 %i, %N br i1 %exitcond, label %bb1, label %bb0 diff --git a/polly/test/ScopDetect/multidim_two_accesses_different_delinearization.ll b/polly/test/ScopDetect/multidim_two_accesses_different_delinearization.ll index 2664c37890ab..ed554a24a6d6 100644 --- a/polly/test/ScopDetect/multidim_two_accesses_different_delinearization.ll +++ b/polly/test/ScopDetect/multidim_two_accesses_different_delinearization.ll @@ -12,7 +12,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK-NOT: Valid Region for Scop -define void @foo(i64 %n, i64 %m, double* %A) { +define void @foo(i64 %n, i64 %m, ptr %A) { entry: br label %for.i @@ -24,12 +24,12 @@ for.j: %j = phi i64 [ 0, %for.i ], [ %j.inc, %for.j ] %tmp = mul nsw i64 %i, %m %vlaarrayidx.sum = add i64 %j, %tmp - %arrayidx = getelementptr inbounds double, double* %A, i64 %vlaarrayidx.sum - store double 1.0, double* %arrayidx + %arrayidx = getelementptr inbounds double, ptr %A, i64 %vlaarrayidx.sum + store double 1.0, ptr %arrayidx %tmp1 = mul nsw i64 %j, %n %vlaarrayidx.sum1 = add i64 %i, %tmp1 - %arrayidx1 = getelementptr inbounds double, double* %A, i64 %vlaarrayidx.sum1 - store double 1.0, double* %arrayidx1 + %arrayidx1 = getelementptr inbounds double, ptr %A, i64 %vlaarrayidx.sum1 + store double 1.0, ptr %arrayidx1 %j.inc = add nsw i64 %j, 1 %j.exitcond = icmp eq i64 %j.inc, %m br i1 %j.exitcond, label %for.i.inc, label %for.j diff --git a/polly/test/ScopDetect/nested_loop_single_exit.ll b/polly/test/ScopDetect/nested_loop_single_exit.ll index 45dbe416f2ef..377e8088eedb 100644 --- a/polly/test/ScopDetect/nested_loop_single_exit.ll +++ b/polly/test/ScopDetect/nested_loop_single_exit.ll @@ -11,7 +11,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br label %next @@ -25,8 +25,8 @@ for.j: for.i: %indvar = phi i64 [ 0, %for.j], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %for.inc8, label %for.i diff --git a/polly/test/ScopDetect/non-affine-conditional.ll b/polly/test/ScopDetect/non-affine-conditional.ll index 965c7035b662..fc2d0c02d2da 100644 --- a/polly/test/ScopDetect/non-affine-conditional.ll +++ b/polly/test/ScopDetect/non-affine-conditional.ll @@ -10,7 +10,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { bb: br label %bb1 @@ -20,14 +20,14 @@ bb1: ; preds = %bb8, %bb br i1 %exitcond, label %bb2, label %bb9 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp3 = load i32, i32* %tmp, align 4 + %tmp = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp3 = load i32, ptr %tmp, align 4 %tmp4 = icmp eq i32 %tmp3, 0 br i1 %tmp4, label %bb7, label %bb5 bb5: ; preds = %bb2 - %tmp6 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 0, i32* %tmp6, align 4 + %tmp6 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 0, ptr %tmp6, align 4 br label %bb7 bb7: ; preds = %bb2, %bb5 diff --git a/polly/test/ScopDetect/non-affine-float-compare.ll b/polly/test/ScopDetect/non-affine-float-compare.ll index 10ae14f8abe7..984f14aaff8f 100644 --- a/polly/test/ScopDetect/non-affine-float-compare.ll +++ b/polly/test/ScopDetect/non-affine-float-compare.ll @@ -9,7 +9,7 @@ ; CHECK: Valid Region for Scop: bb1 => bb14 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(float* %A) { +define void @f(ptr %A) { bb: br label %bb1 @@ -19,19 +19,19 @@ bb1: ; preds = %bb13, %bb br i1 %exitcond, label %bb2, label %bb14 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds float, float* %A, i64 %indvars.iv - %tmp3 = load float, float* %tmp, align 4 + %tmp = getelementptr inbounds float, ptr %A, i64 %indvars.iv + %tmp3 = load float, ptr %tmp, align 4 %tmp4 = add nsw i64 %indvars.iv, -1 - %tmp5 = getelementptr inbounds float, float* %A, i64 %tmp4 - %tmp6 = load float, float* %tmp5, align 4 + %tmp5 = getelementptr inbounds float, ptr %A, i64 %tmp4 + %tmp6 = load float, ptr %tmp5, align 4 %tmp7 = fcmp oeq float %tmp3, %tmp6 br i1 %tmp7, label %bb8, label %bb12 bb8: ; preds = %bb2 - %tmp9 = getelementptr inbounds float, float* %A, i64 %indvars.iv - %tmp10 = load float, float* %tmp9, align 4 + %tmp9 = getelementptr inbounds float, ptr %A, i64 %indvars.iv + %tmp10 = load float, ptr %tmp9, align 4 %tmp11 = fadd float %tmp10, 1.000000e+00 - store float %tmp11, float* %tmp9, align 4 + store float %tmp11, ptr %tmp9, align 4 br label %bb12 bb12: ; preds = %bb8, %bb2 diff --git a/polly/test/ScopDetect/non-affine-loop-condition-dependent-access.ll b/polly/test/ScopDetect/non-affine-loop-condition-dependent-access.ll index acb1076bed8a..068367fa1e3c 100644 --- a/polly/test/ScopDetect/non-affine-loop-condition-dependent-access.ll +++ b/polly/test/ScopDetect/non-affine-loop-condition-dependent-access.ll @@ -21,7 +21,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* noalias %A, i32* noalias %C) { +define void @f(ptr noalias %A, ptr noalias %C) { bb: br label %bb1 @@ -35,17 +35,17 @@ bb2: ; preds = %bb1 bb3: ; preds = %bb6, %bb2 %indvars.j = phi i32 [ %tmp4, %bb6 ], [ 0, %bb2 ] - %tmp = getelementptr inbounds i32, i32* %C, i32 %indvars.j - %tmp4 = load i32, i32* %tmp, align 4 + %tmp = getelementptr inbounds i32, ptr %C, i32 %indvars.j + %tmp4 = load i32, ptr %tmp, align 4 %tmp5 = icmp eq i32 %tmp4, 0 br i1 %tmp5, label %bb11, label %bb6 bb6: ; preds = %bb3 %tmp7 = sext i32 %tmp4 to i64 - %tmp8 = getelementptr inbounds i32, i32* %A, i64 %tmp7 - %tmp9 = load i32, i32* %tmp8, align 4 + %tmp8 = getelementptr inbounds i32, ptr %A, i64 %tmp7 + %tmp9 = load i32, ptr %tmp8, align 4 %tmp10 = add nsw i32 %tmp9, 1 - store i32 %tmp10, i32* %tmp8, align 4 + store i32 %tmp10, ptr %tmp8, align 4 br label %bb3 bb11: ; preds = %bb3 diff --git a/polly/test/ScopDetect/non-affine-loop-condition-dependent-access_2.ll b/polly/test/ScopDetect/non-affine-loop-condition-dependent-access_2.ll index 89d01a220b76..cd2140518b46 100644 --- a/polly/test/ScopDetect/non-affine-loop-condition-dependent-access_2.ll +++ b/polly/test/ScopDetect/non-affine-loop-condition-dependent-access_2.ll @@ -22,7 +22,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { bb: br label %bb11 @@ -50,15 +50,15 @@ bb15: ; preds = %bb24, %bb14 br i1 %exitcond, label %bb16, label %bb25 bb16: ; preds = %bb15 - %tmp = getelementptr inbounds i32, i32* %A, i64 %indvars.iv8 - %tmp17 = load i32, i32* %tmp, align 4 - %tmp18 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv5 - %tmp19 = load i32, i32* %tmp18, align 4 + %tmp = getelementptr inbounds i32, ptr %A, i64 %indvars.iv8 + %tmp17 = load i32, ptr %tmp, align 4 + %tmp18 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv5 + %tmp19 = load i32, ptr %tmp18, align 4 %tmp20 = add nsw i32 %tmp17, %tmp19 - %tmp21 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp22 = load i32, i32* %tmp21, align 4 + %tmp21 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp22 = load i32, ptr %tmp21, align 4 %tmp23 = add nsw i32 %tmp22, %tmp20 - store i32 %tmp23, i32* %tmp21, align 4 + store i32 %tmp23, ptr %tmp21, align 4 br label %bb24 bb24: ; preds = %bb16 diff --git a/polly/test/ScopDetect/non-affine-loop-condition-dependent-access_3.ll b/polly/test/ScopDetect/non-affine-loop-condition-dependent-access_3.ll index b0b838d97a25..fb936216e45c 100644 --- a/polly/test/ScopDetect/non-affine-loop-condition-dependent-access_3.ll +++ b/polly/test/ScopDetect/non-affine-loop-condition-dependent-access_3.ll @@ -22,7 +22,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { bb: br label %bb11 @@ -51,15 +51,15 @@ bb15: ; preds = %bb24, %bb14 br i1 %exitcond, label %bb16, label %bb25 bb16: ; preds = %bb15 - %tmp = getelementptr inbounds i32, i32* %A, i64 %indvars.iv8 - %tmp17 = load i32, i32* %tmp, align 4 - %tmp18 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv5 - %tmp19 = load i32, i32* %tmp18, align 4 + %tmp = getelementptr inbounds i32, ptr %A, i64 %indvars.iv8 + %tmp17 = load i32, ptr %tmp, align 4 + %tmp18 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv5 + %tmp19 = load i32, ptr %tmp18, align 4 %tmp20 = add nsw i32 %tmp17, %tmp19 - %tmp21 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp22 = load i32, i32* %tmp21, align 4 + %tmp21 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp22 = load i32, ptr %tmp21, align 4 %tmp23 = add nsw i32 %tmp22, %tmp20 - store i32 %tmp23, i32* %tmp21, align 4 + store i32 %tmp23, ptr %tmp21, align 4 br label %bb24 bb24: ; preds = %bb16 diff --git a/polly/test/ScopDetect/non-affine-loop.ll b/polly/test/ScopDetect/non-affine-loop.ll index 7445cf71bd9c..d5f7ea128a79 100644 --- a/polly/test/ScopDetect/non-affine-loop.ll +++ b/polly/test/ScopDetect/non-affine-loop.ll @@ -22,23 +22,23 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { bb: br label %bb1 bb1: ; preds = %bb9, %bb %indvars.iv = phi i64 [ %indvars.iv.next, %bb9 ], [ 0, %bb ] - %tmp = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %tmp, align 4 + %tmp = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %tmp, align 4 %tmp3 = sext i32 %tmp2 to i64 %tmp4 = icmp slt i64 %indvars.iv, %tmp3 br i1 %tmp4, label %bb5, label %bb10 bb5: ; preds = %bb1 - %tmp6 = getelementptr inbounds i32, i32* %A, i64 -1 - %tmp7 = load i32, i32* %tmp6, align 4 + %tmp6 = getelementptr inbounds i32, ptr %A, i64 -1 + %tmp7 = load i32, ptr %tmp6, align 4 %tmp8 = add nsw i32 %tmp7, 1 - store i32 %tmp8, i32* %tmp6, align 4 + store i32 %tmp8, ptr %tmp6, align 4 br label %bb9 bb9: ; preds = %bb5 diff --git a/polly/test/ScopDetect/non-beneficial-loops-small-trip-count.ll b/polly/test/ScopDetect/non-beneficial-loops-small-trip-count.ll index 60468d39e398..43af1684dccb 100644 --- a/polly/test/ScopDetect/non-beneficial-loops-small-trip-count.ll +++ b/polly/test/ScopDetect/non-beneficial-loops-small-trip-count.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %for.cond @@ -49,20 +49,20 @@ for.cond.7: ; preds = %for.inc, %for.body. br i1 %exitcond, label %for.body.9, label %for.end for.body.9: ; preds = %for.cond.7 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp = load i32, ptr %arrayidx, align 4 %tmp6 = add nsw i64 %indvars.iv, -1 - %arrayidx11 = getelementptr inbounds i32, i32* %A, i64 %tmp6 - %tmp7 = load i32, i32* %arrayidx11, align 4 + %arrayidx11 = getelementptr inbounds i32, ptr %A, i64 %tmp6 + %tmp7 = load i32, ptr %arrayidx11, align 4 %mul = mul nsw i32 %tmp, %tmp7 %tmp8 = add nuw nsw i64 %indvars.iv, 1 - %arrayidx13 = getelementptr inbounds i32, i32* %A, i64 %tmp8 - %tmp9 = load i32, i32* %arrayidx13, align 4 + %arrayidx13 = getelementptr inbounds i32, ptr %A, i64 %tmp8 + %tmp9 = load i32, ptr %arrayidx13, align 4 %add14 = add nsw i32 %mul, %tmp9 - %arrayidx16 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp10 = load i32, i32* %arrayidx16, align 4 + %arrayidx16 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp10 = load i32, ptr %arrayidx16, align 4 %add17 = add nsw i32 %tmp10, %add14 - store i32 %add17, i32* %arrayidx16, align 4 + store i32 %add17, ptr %arrayidx16, align 4 br label %for.inc for.inc: ; preds = %for.body.9 diff --git a/polly/test/ScopDetect/non-constant-add-rec-start-expr.ll b/polly/test/ScopDetect/non-constant-add-rec-start-expr.ll index b05f956d5cfe..4cddcc916a76 100644 --- a/polly/test/ScopDetect/non-constant-add-rec-start-expr.ll +++ b/polly/test/ScopDetect/non-constant-add-rec-start-expr.ll @@ -25,16 +25,16 @@ bb2: bb11: %tmp12 = phi i64 [ %tmp23, %bb24 ], [ 1, %bb2 ] - %tmp14 = getelementptr inbounds [17 x i32], [17 x i32]* %tmp1, i64 0, i64 1 + %tmp14 = getelementptr inbounds [17 x i32], ptr %tmp1, i64 0, i64 1 br label %bb15 bb15: %tmp16 = sub nsw i64 %tmp12, 1 %tmp17 = shl i64 %tmp16, 32 %tmp18 = ashr exact i64 %tmp17, 32 - %tmp19 = getelementptr inbounds [18 x [16 x i32]], [18 x [16 x i32]]* %tmp, i64 0, i64 %tmp4, i64 %tmp18 - %tmp20 = load i32, i32* %tmp19, align 4 - store i32 4, i32* %tmp19 + %tmp19 = getelementptr inbounds [18 x [16 x i32]], ptr %tmp, i64 0, i64 %tmp4, i64 %tmp18 + %tmp20 = load i32, ptr %tmp19, align 4 + store i32 4, ptr %tmp19 br label %bb21 bb21: diff --git a/polly/test/ScopDetect/non-simple-memory-accesses.ll b/polly/test/ScopDetect/non-simple-memory-accesses.ll index 781831f90e38..a82228982885 100644 --- a/polly/test/ScopDetect/non-simple-memory-accesses.ll +++ b/polly/test/ScopDetect/non-simple-memory-accesses.ll @@ -16,7 +16,7 @@ bb: br label %bb1 bb1: ; preds = %bb - %tmp = load atomic i8, i8* bitcast (i64* @global to i8*) acquire, align 8 + %tmp = load atomic i8, ptr @global acquire, align 8 br i1 false, label %bb2, label %bb3 bb2: ; preds = %bb1 diff --git a/polly/test/ScopDetect/non_affine_loop_condition.ll b/polly/test/ScopDetect/non_affine_loop_condition.ll index 2d7004f5a619..f268442cd8ee 100644 --- a/polly/test/ScopDetect/non_affine_loop_condition.ll +++ b/polly/test/ScopDetect/non_affine_loop_condition.ll @@ -13,7 +13,7 @@ ; CHECK: Valid Region for Scop: bb1 => bb12 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { bb: br label %bb1 @@ -26,16 +26,16 @@ bb2: ; preds = %bb1 br label %bb3 bb3: ; preds = %bb6, %bb2 - %tmp = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp4 = load i32, i32* %tmp, align 4 + %tmp = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp4 = load i32, ptr %tmp, align 4 %tmp5 = icmp eq i32 %tmp4, 0 br i1 %tmp5, label %bb10, label %bb6 bb6: ; preds = %bb3 - %tmp7 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp8 = load i32, i32* %tmp7, align 4 + %tmp7 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp8 = load i32, ptr %tmp7, align 4 %tmp9 = add nsw i32 %tmp8, -1 - store i32 %tmp9, i32* %tmp7, align 4 + store i32 %tmp9, ptr %tmp7, align 4 br label %bb3 bb10: ; preds = %bb3 diff --git a/polly/test/ScopDetect/only-one-affine-loop.ll b/polly/test/ScopDetect/only-one-affine-loop.ll index 699745dc9c8b..d6d50bb611d9 100644 --- a/polly/test/ScopDetect/only-one-affine-loop.ll +++ b/polly/test/ScopDetect/only-one-affine-loop.ll @@ -27,7 +27,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %for.cond @@ -56,10 +56,10 @@ for.cond.4: ; preds = %for.inc, %for.body. br i1 %exitcond, label %for.body.6, label %for.end for.body.6: ; preds = %for.cond.4 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv5 - %tmp11 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv5 + %tmp11 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp11, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body.6 @@ -92,10 +92,10 @@ for.cond.17: ; preds = %for.inc.23, %for.bo br i1 %exitcond3, label %for.body.19, label %for.end.25 for.body.19: ; preds = %for.cond.17 - %arrayidx21 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv5 - %tmp14 = load i32, i32* %arrayidx21, align 4 + %arrayidx21 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv5 + %tmp14 = load i32, ptr %arrayidx21, align 4 %inc22 = add nsw i32 %tmp14, 1 - store i32 %inc22, i32* %arrayidx21, align 4 + store i32 %inc22, ptr %arrayidx21, align 4 br label %for.inc.23 for.inc.23: ; preds = %for.body.19 @@ -110,8 +110,8 @@ for.inc.26: ; preds = %for.end.25 br label %for.cond.12 for.end.28: ; preds = %for.cond.12 - %arrayidx30 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv5 - %tmp15 = load i32, i32* %arrayidx30, align 4 + %arrayidx30 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv5 + %tmp15 = load i32, ptr %arrayidx30, align 4 %tobool = icmp eq i32 %tmp15, 0 br i1 %tobool, label %if.end, label %if.then @@ -133,10 +133,10 @@ for.cond.36: ; preds = %for.inc.43, %for.bo br i1 %cmp38, label %for.body.39, label %for.end.45 for.body.39: ; preds = %for.cond.36 - %arrayidx41 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv5 - %tmp16 = load i32, i32* %arrayidx41, align 4 + %arrayidx41 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv5 + %tmp16 = load i32, ptr %arrayidx41, align 4 %inc42 = add nsw i32 %tmp16, 1 - store i32 %inc42, i32* %arrayidx41, align 4 + store i32 %inc42, ptr %arrayidx41, align 4 br label %for.inc.43 for.inc.43: ; preds = %for.body.39 diff --git a/polly/test/ScopDetect/only_func_flag.ll b/polly/test/ScopDetect/only_func_flag.ll index 14053f845c78..d465cd0f50f7 100644 --- a/polly/test/ScopDetect/only_func_flag.ll +++ b/polly/test/ScopDetect/only_func_flag.ll @@ -24,7 +24,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %entry.split1 @@ -36,11 +36,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end @@ -49,7 +49,7 @@ for.end: ; preds = %for.cond } -define void @g(i32* %sum) { +define void @g(ptr %sum) { entry: br label %entry.split1 @@ -61,11 +61,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end @@ -74,7 +74,7 @@ for.end: ; preds = %for.cond } -define void @h(i32* %sum) { +define void @h(ptr %sum) { entry: br label %entry.split1 @@ -86,11 +86,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end diff --git a/polly/test/ScopDetect/only_func_flag_regex.ll b/polly/test/ScopDetect/only_func_flag_regex.ll index 881916d167f5..e6675798eeb9 100644 --- a/polly/test/ScopDetect/only_func_flag_regex.ll +++ b/polly/test/ScopDetect/only_func_flag_regex.ll @@ -31,7 +31,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f1(i32* %sum) { +define void @f1(ptr %sum) { entry: br label %entry.split1 @@ -43,11 +43,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end @@ -56,7 +56,7 @@ for.end: ; preds = %for.cond } -define void @f2(i32* %sum) { +define void @f2(ptr %sum) { entry: br label %entry.split1 @@ -68,11 +68,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end @@ -80,7 +80,7 @@ for.end: ; preds = %for.cond ret void } -define void @g1(i32* %sum) { +define void @g1(ptr %sum) { entry: br label %entry.split1 @@ -92,11 +92,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end @@ -104,7 +104,7 @@ for.end: ; preds = %for.cond ret void } -define void @h(i32* %sum) { +define void @h(ptr %sum) { entry: br label %entry.split1 @@ -116,11 +116,11 @@ entry.split: ; preds = %entry.split1 for.cond: ; preds = %for.cond, %entry.split %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end diff --git a/polly/test/ScopDetect/parametric-multiply-in-scev-2.ll b/polly/test/ScopDetect/parametric-multiply-in-scev-2.ll index 3a8c04cc2e8f..fc957a7f912c 100644 --- a/polly/test/ScopDetect/parametric-multiply-in-scev-2.ll +++ b/polly/test/ScopDetect/parametric-multiply-in-scev-2.ll @@ -4,7 +4,7 @@ ; CHECK-NOT: Valid Region target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" -define void @blam(float* %A, float* %B) { +define void @blam(ptr %A, ptr %B) { bb: %tmp1 = alloca i64 %tmp2 = shl i64 2, undef @@ -14,12 +14,12 @@ bb: loop: %indvar = phi i64 [ %indvar.next, %loop ], [ 0, %bb ] - %gep = getelementptr inbounds i64, i64* %tmp1, i64 %indvar - %tmp12 = load i64, i64* %gep + %gep = getelementptr inbounds i64, ptr %tmp1, i64 %indvar + %tmp12 = load i64, ptr %gep %tmp13 = mul nsw i64 %tmp12, %tmp4 - %ptr = getelementptr inbounds float, float* %B, i64 %tmp13 - %val = load float, float* %ptr - store float %val, float* %A + %ptr = getelementptr inbounds float, ptr %B, i64 %tmp13 + %val = load float, ptr %ptr + store float %val, ptr %A %indvar.next = add nsw i64 %indvar, 1 br i1 false, label %loop, label %bb21 diff --git a/polly/test/ScopDetect/parametric-multiply-in-scev.ll b/polly/test/ScopDetect/parametric-multiply-in-scev.ll index 83be1437f510..9c6e5ccc8f52 100644 --- a/polly/test/ScopDetect/parametric-multiply-in-scev.ll +++ b/polly/test/ScopDetect/parametric-multiply-in-scev.ll @@ -6,7 +6,7 @@ ; } target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" -define void @foo(float* %A, i64 %n, i64 %k) { +define void @foo(ptr %A, i64 %n, i64 %k) { entry: br label %for.j @@ -15,8 +15,8 @@ for.j: if.then: %mul = mul nsw i64 %n, %k - %arrayidx = getelementptr float, float* %A, i64 %mul - store float 0.000000e+00, float* %arrayidx + %arrayidx = getelementptr float, ptr %A, i64 %mul + store float 0.000000e+00, ptr %arrayidx br label %return return: diff --git a/polly/test/ScopDetect/phi_with_multi_exiting_edges.ll b/polly/test/ScopDetect/phi_with_multi_exiting_edges.ll index 3571e732aae4..054de168d76b 100644 --- a/polly/test/ScopDetect/phi_with_multi_exiting_edges.ll +++ b/polly/test/ScopDetect/phi_with_multi_exiting_edges.ll @@ -16,7 +16,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define float @test(i64 %n, float* noalias nonnull %A) { +define float @test(i64 %n, ptr noalias nonnull %A) { entry: br label %for.cond @@ -30,8 +30,8 @@ for.body: ; preds = %for.cond br label %for.inc for.inc: ; preds = %for.body - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp = load float, ptr %arrayidx, align 4 %add = fadd float %sum.0, %tmp %add1 = add nuw nsw i64 %i.0, 1 br label %for.cond @@ -50,8 +50,8 @@ for.body.5: ; preds = %for.cond.3 br label %for.inc.8 for.inc.8: ; preds = %for.body.5 - %arrayidx6 = getelementptr inbounds float, float* %A, i64 %i2.0 - %tmp1 = load float, float* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds float, ptr %A, i64 %i2.0 + %tmp1 = load float, ptr %arrayidx6, align 4 %add7 = fadd float %sum.1, %tmp1 %add9 = add nuw nsw i64 %i2.0, 1 br label %for.cond.3 diff --git a/polly/test/ScopDetect/profitability-large-basic-blocks.ll b/polly/test/ScopDetect/profitability-large-basic-blocks.ll index e9f4fde2774f..e1650febf11c 100644 --- a/polly/test/ScopDetect/profitability-large-basic-blocks.ll +++ b/polly/test/ScopDetect/profitability-large-basic-blocks.ll @@ -18,15 +18,15 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A, float* %B, i64 %N) { +define void @foo(ptr %A, ptr %B, i64 %N) { entry: br label %header header: %i.0 = phi i64 [ 0, %entry ], [ %tmp10, %header ] %tmp5 = sitofp i64 %i.0 to float - %tmp6 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp7 = load float, float* %tmp6, align 4 + %tmp6 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp7 = load float, ptr %tmp6, align 4 %tmp8 = fadd float %tmp7, %tmp5 %val0 = fadd float %tmp7, 1.0 %val1 = fadd float %val0, 1.0 @@ -72,7 +72,7 @@ header: %val41 = fadd float %val40, 1.0 %val42 = fadd float %val41, 1.0 %val43 = fadd float %val42, 1.0 - store float %val34, float* %tmp6, align 4 + store float %val34, ptr %tmp6, align 4 %exitcond = icmp ne i64 %i.0, 100 %tmp10 = add nsw i64 %i.0, 1 br i1 %exitcond, label %header, label %exit diff --git a/polly/test/ScopDetect/profitability-two-nested-loops.ll b/polly/test/ScopDetect/profitability-two-nested-loops.ll index 209758832301..525f91cbc2f4 100644 --- a/polly/test/ScopDetect/profitability-two-nested-loops.ll +++ b/polly/test/ScopDetect/profitability-two-nested-loops.ll @@ -16,7 +16,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-pc-linux-gnu" -define void @foo(float* %A, i64 %p) { +define void @foo(ptr %A, i64 %p) { bb: br label %bb3 @@ -61,10 +61,10 @@ bb11: ; preds = %bb10 bb12: ; preds = %bb10 %tmp13 = sitofp i64 %j.0 to float %tmp14 = add nuw nsw i64 %i.0, %j.0 - %tmp15 = getelementptr inbounds float, float* %A, i64 %tmp14 - %tmp16 = load float, float* %tmp15, align 4 + %tmp15 = getelementptr inbounds float, ptr %A, i64 %tmp14 + %tmp16 = load float, ptr %tmp15, align 4 %tmp17 = fadd float %tmp16, %tmp13 - store float %tmp17, float* %tmp15, align 4 + store float %tmp17, ptr %tmp15, align 4 br label %bb18 bb18: ; preds = %bb12 diff --git a/polly/test/ScopDetect/remove_all_children.ll b/polly/test/ScopDetect/remove_all_children.ll index 4dbfb126038e..6d5097b80607 100644 --- a/polly/test/ScopDetect/remove_all_children.ll +++ b/polly/test/ScopDetect/remove_all_children.ll @@ -2,7 +2,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" -define void @remove_all_children(i32* %eclass) { +define void @remove_all_children(ptr %eclass) { entry: br label %while.body @@ -21,7 +21,6 @@ if.end33: ; preds = %while.end30 while.body36: ; preds = %while.body36, %while.body36.lr.ph %indvar77 = phi i64 [ 0, %if.end33 ], [ %indvar.next78, %while.body36 ] - %arrayidx40 = getelementptr i32, i32* %eclass, i64 0 %indvar.next78 = add i64 %indvar77, 1 br i1 false, label %while.body36, label %while.end44 @@ -30,8 +29,7 @@ while.end44: ; preds = %while.body36, %if.e while.body50: ; preds = %while.body50, %while.body50.lr.ph %indvar79 = phi i64 [ 0, %while.end44 ], [ %indvar.next80, %while.body50 ] - %arrayidx55 = getelementptr i32, i32* %eclass, i64 0 - store i32 0, i32* %arrayidx55, align 4 + store i32 0, ptr %eclass, align 4 %indvar.next80 = add i64 %indvar79, 1 br i1 false, label %while.body50, label %while.cond.loopexit diff --git a/polly/test/ScopDetect/report-scop-location.ll b/polly/test/ScopDetect/report-scop-location.ll index 6ef39cd11979..750699cbe763 100644 --- a/polly/test/ScopDetect/report-scop-location.ll +++ b/polly/test/ScopDetect/report-scop-location.ll @@ -2,7 +2,7 @@ target datalayout = "e-i64:64-f80:128-s:64-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @foo(float* %A) #0 !dbg !4 { +define void @foo(ptr %A) #0 !dbg !4 { entry: br label %entry.split @@ -12,9 +12,9 @@ entry.split: ; preds = %entry for.body: ; preds = %entry.split, %for.body %indvar = phi i64 [ 0, %entry.split ], [ %indvar.next, %for.body ] %i.01 = trunc i64 %indvar to i32, !dbg !13 - %arrayidx = getelementptr float, float* %A, i64 %indvar, !dbg !13 + %arrayidx = getelementptr float, ptr %A, i64 %indvar, !dbg !13 %conv = sitofp i32 %i.01 to float, !dbg !13 - store float %conv, float* %arrayidx, align 4, !dbg !13 + store float %conv, ptr %arrayidx, align 4, !dbg !13 %indvar.next = add i64 %indvar, 1, !dbg !11 %exitcond = icmp ne i64 %indvar.next, 100, !dbg !11 br i1 %exitcond, label %for.body, label %for.end, !dbg !11 @@ -28,7 +28,7 @@ for.end: ; preds = %for.body ; CHECK: test.c:3: End of scop ; Function Attrs: nounwind uwtable -define void @bar(float* %A) #0 !dbg !7 { +define void @bar(ptr %A) #0 !dbg !7 { entry: br label %entry.split @@ -38,9 +38,9 @@ entry.split: ; preds = %entry for.body: ; preds = %entry.split, %for.body %indvar = phi i64 [ 0, %entry.split ], [ %indvar.next, %for.body ] %i.01 = trunc i64 %indvar to i32, !dbg !17 - %arrayidx = getelementptr float, float* %A, i64 %indvar, !dbg !17 + %arrayidx = getelementptr float, ptr %A, i64 %indvar, !dbg !17 %conv = sitofp i32 %i.01 to float, !dbg !17 - store float %conv, float* %arrayidx, align 4, !dbg !17 + store float %conv, ptr %arrayidx, align 4, !dbg !17 %indvar.next = add i64 %indvar, 1, !dbg !15 %exitcond = icmp ne i64 %indvar.next, 100, !dbg !15 br i1 %exitcond, label %for.body, label %for.end, !dbg !15 diff --git a/polly/test/ScopDetect/restrict-undef-size-scopdetect.ll b/polly/test/ScopDetect/restrict-undef-size-scopdetect.ll index 9d72856f5632..e94f1e7728c5 100644 --- a/polly/test/ScopDetect/restrict-undef-size-scopdetect.ll +++ b/polly/test/ScopDetect/restrict-undef-size-scopdetect.ll @@ -5,7 +5,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" %struct.bar = type { i32, [4 x i32] } -define void @f(%struct.bar* %arg) { +define void @f(ptr %arg) { bb: %tmp = alloca [4 x i32], align 16 br label %bb1 @@ -15,13 +15,12 @@ bb1: ; preds = %bb8, %bb br i1 false, label %bb3, label %bb6 bb3: ; preds = %bb1 - %tmp4 = getelementptr inbounds [4 x i32], [4 x i32]* %tmp, i64 0, i64 0 - %tmp5 = load i32, i32* %tmp4 + %tmp5 = load i32, ptr %tmp br label %bb8 bb6: ; preds = %bb1 - %tmp7 = getelementptr inbounds %struct.bar, %struct.bar* %arg, i64 0, i32 1, i64 undef - store i32 42, i32* %tmp7 + %tmp7 = getelementptr inbounds %struct.bar, ptr %arg, i64 0, i32 1, i64 undef + store i32 42, ptr %tmp7 br label %bb8 bb8: ; preds = %bb6, %bb3 diff --git a/polly/test/ScopDetect/run_time_alias_check.ll b/polly/test/ScopDetect/run_time_alias_check.ll index 4d5039642cbf..672f3dfa6365 100644 --- a/polly/test/ScopDetect/run_time_alias_check.ll +++ b/polly/test/ScopDetect/run_time_alias_check.ll @@ -2,9 +2,9 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -declare float* @getNextBasePtr(float*) readnone nounwind +declare ptr @getNextBasePtr(ptr) readnone nounwind -define void @base_pointer_is_inst_inside_invariant_1(i64 %n, float* %A, float* %B) { +define void @base_pointer_is_inst_inside_invariant_1(i64 %n, ptr %A, ptr %B) { entry: br label %for.i @@ -16,11 +16,11 @@ S1: ; To get an instruction inside a region, we use a function without side ; effects on which SCEV blocks, but for which it is still clear that the ; return value remains invariant throughout the whole loop. - %ptr = call float* @getNextBasePtr(float* %A) + %ptr = call ptr @getNextBasePtr(ptr %A) %conv = sitofp i64 %indvar.i to float - %arrayidx5 = getelementptr float, float* %ptr, i64 %indvar.i - store float %conv, float* %arrayidx5, align 4 - store float 1.0, float* %B + %arrayidx5 = getelementptr float, ptr %ptr, i64 %indvar.i + store float %conv, ptr %arrayidx5, align 4 + store float 1.0, ptr %B br label %for.i.inc for.i.inc: diff --git a/polly/test/ScopDetect/scev_remove_max.ll b/polly/test/ScopDetect/scev_remove_max.ll index 18342a43c4ec..5353e06bdf2f 100644 --- a/polly/test/ScopDetect/scev_remove_max.ll +++ b/polly/test/ScopDetect/scev_remove_max.ll @@ -10,7 +10,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -@vertPlane = external global i8*, align 8 +@vertPlane = external global ptr, align 8 define fastcc void @Maze2Mech(i64 %i, i64 %b1, i64 %yStart) { .split: @@ -19,7 +19,7 @@ define fastcc void @Maze2Mech(i64 %i, i64 %b1, i64 %yStart) { DrawSegment.exit34: ; preds = %.split %tmp = icmp ugt i64 %yStart, %b1 %tmp1 = select i1 %tmp, i64 %b1, i64 %yStart - %tmp2 = load i8*, i8** @vertPlane, align 8 + %tmp2 = load ptr, ptr @vertPlane, align 8 %y.04.i21 = add i64 %tmp1, 1 br label %.lr.ph.i24 @@ -27,8 +27,8 @@ DrawSegment.exit34: ; preds = %.split %y.05.i22 = phi i64 [ %y.0.i23, %.lr.ph.i24 ], [ %y.04.i21, %DrawSegment.exit34 ] %tmp3 = mul i64 %y.05.i22, undef %tmp4 = add i64 %tmp3, %i - %tmp5 = getelementptr inbounds i8, i8* %tmp2, i64 %tmp4 - %tmp6 = load i8, i8* %tmp5, align 1 + %tmp5 = getelementptr inbounds i8, ptr %tmp2, i64 %tmp4 + %tmp6 = load i8, ptr %tmp5, align 1 %y.0.i23 = add nuw i64 %y.05.i22, 1 br i1 false, label %bb, label %.lr.ph.i24 diff --git a/polly/test/ScopDetect/sequential_loops.ll b/polly/test/ScopDetect/sequential_loops.ll index a47b171d30fc..e6ac38aa1604 100644 --- a/polly/test/ScopDetect/sequential_loops.ll +++ b/polly/test/ScopDetect/sequential_loops.ll @@ -12,7 +12,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; A[i] = i; ; } -define void @f1(i64* %A, i64 %N) nounwind { +define void @f1(ptr %A, i64 %N) nounwind { ; CHECK-LABEL: 'Polly - Detect static control parts (SCoPs)' for function 'f1' entry: fence seq_cst @@ -20,16 +20,16 @@ entry: for.i.1: %indvar = phi i64 [ 0, %entry ], [ %indvar.next, %for.i.1 ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %for.i.2, label %for.i.1 for.i.2: %indvar.2 = phi i64 [ 0, %for.i.1 ], [ %indvar.next.2, %for.i.2 ] - %scevgep.2 = getelementptr i64, i64* %A, i64 %indvar.2 - store i64 %indvar.2, i64* %scevgep.2 + %scevgep.2 = getelementptr i64, ptr %A, i64 %indvar.2 + store i64 %indvar.2, ptr %scevgep.2 %indvar.next.2 = add nsw i64 %indvar.2, 1 %exitcond.2 = icmp eq i64 %indvar.next.2, %N br i1 %exitcond.2, label %return, label %for.i.2 @@ -59,7 +59,7 @@ return: ; A[i] = i; ; } -define void @f2(i64* %A, i64 %N) nounwind { +define void @f2(ptr %A, i64 %N) nounwind { ; CHECK-LABEL: 'Polly - Detect static control parts (SCoPs)' for function 'f2' entry: fence seq_cst @@ -67,8 +67,8 @@ entry: for.i.1: %indvar = phi i64 [ 0, %entry ], [ %indvar.next, %for.i.1 ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %preheader, label %for.i.1 @@ -78,8 +78,8 @@ preheader: for.i.2: %indvar.2 = phi i64 [ 0, %preheader ], [ %indvar.next.2, %for.i.2 ] - %scevgep.2 = getelementptr i64, i64* %A, i64 %indvar.2 - store i64 %indvar.2, i64* %scevgep.2 + %scevgep.2 = getelementptr i64, ptr %A, i64 %indvar.2 + store i64 %indvar.2, ptr %scevgep.2 %indvar.next.2 = add nsw i64 %indvar.2, 1 %exitcond.2 = icmp eq i64 %indvar.next.2, %N br i1 %exitcond.2, label %return, label %for.i.2 diff --git a/polly/test/ScopDetect/simple_loop.ll b/polly/test/ScopDetect/simple_loop.ll index 1cb310f77f6c..c8ed89a97d00 100644 --- a/polly/test/ScopDetect/simple_loop.ll +++ b/polly/test/ScopDetect/simple_loop.ll @@ -8,15 +8,15 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br label %for.i for.i: %indvar = phi i64 [ 0, %entry ], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i diff --git a/polly/test/ScopDetect/simple_loop_non_single_entry.ll b/polly/test/ScopDetect/simple_loop_non_single_entry.ll index 3ff115d43c96..22adec5d2039 100644 --- a/polly/test/ScopDetect/simple_loop_non_single_entry.ll +++ b/polly/test/ScopDetect/simple_loop_non_single_entry.ll @@ -17,7 +17,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br i1 true, label %then, label %else @@ -30,8 +30,8 @@ else: for.i: %indvar = phi i64 [ 0, %then ], [ 0, %else], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i diff --git a/polly/test/ScopDetect/simple_loop_non_single_exit.ll b/polly/test/ScopDetect/simple_loop_non_single_exit.ll index ac19444c5a14..71ac830cae7d 100644 --- a/polly/test/ScopDetect/simple_loop_non_single_exit.ll +++ b/polly/test/ScopDetect/simple_loop_non_single_exit.ll @@ -9,7 +9,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br label %next @@ -19,8 +19,8 @@ next: for.i: %indvar = phi i64 [ 0, %next], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i diff --git a/polly/test/ScopDetect/simple_loop_non_single_exit_2.ll b/polly/test/ScopDetect/simple_loop_non_single_exit_2.ll index 54c35e275420..d9915dc130d5 100644 --- a/polly/test/ScopDetect/simple_loop_non_single_exit_2.ll +++ b/polly/test/ScopDetect/simple_loop_non_single_exit_2.ll @@ -10,7 +10,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br i1 true, label %next, label %return @@ -20,8 +20,8 @@ next: for.i: %indvar = phi i64 [ 0, %next], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i diff --git a/polly/test/ScopDetect/simple_loop_two_phi_nodes.ll b/polly/test/ScopDetect/simple_loop_two_phi_nodes.ll index b5b6b18cb636..867bd50513f0 100644 --- a/polly/test/ScopDetect/simple_loop_two_phi_nodes.ll +++ b/polly/test/ScopDetect/simple_loop_two_phi_nodes.ll @@ -11,7 +11,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: %cmp = icmp sgt i64 %N, 0 br i1 %cmp, label %for.i, label %return @@ -19,8 +19,8 @@ entry: for.i: %indvar = phi i64 [ 0, %entry ], [ %indvar.next, %for.i ] %indvar_non_canonical = phi i64 [ 1, %entry ], [ %indvar_non_canonical.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar_non_canonical, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar_non_canonical, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %indvar_non_canonical.next = add nsw i64 %indvar_non_canonical, 1 %exitcond = icmp eq i64 %indvar.next, %N diff --git a/polly/test/ScopDetect/simple_loop_with_param.ll b/polly/test/ScopDetect/simple_loop_with_param.ll index 950be6b90a19..1ae5c6608739 100644 --- a/polly/test/ScopDetect/simple_loop_with_param.ll +++ b/polly/test/ScopDetect/simple_loop_with_param.ll @@ -16,7 +16,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* noalias %A, i64 %N, i64* noalias %init_ptr) nounwind { +define void @f(ptr noalias %A, i64 %N, ptr noalias %init_ptr) nounwind { entry: br label %for.i @@ -26,14 +26,14 @@ for.i: br label %entry.next entry.next: - %init = load i64, i64* %init_ptr + %init = load i64, ptr %init_ptr br label %for.j for.j: %indvar.j = phi i64 [ 0, %entry.next ], [ %indvar.j.next, %for.j ] %indvar.j.non_canonical = phi i64 [ %init, %entry.next ], [ %indvar.j.non_canonical.next, %for.j ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar.j - store i64 %indvar.j.non_canonical, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar.j + store i64 %indvar.j.non_canonical, ptr %scevgep %indvar.j.next = add nsw i64 %indvar.j, 1 %indvar.j.non_canonical.next = add nsw i64 %indvar.j.non_canonical, 1 %exitcond.j = icmp eq i64 %indvar.j.next, %N diff --git a/polly/test/ScopDetect/simple_loop_with_param_2.ll b/polly/test/ScopDetect/simple_loop_with_param_2.ll index dd6781f70a13..1a4750621c19 100644 --- a/polly/test/ScopDetect/simple_loop_with_param_2.ll +++ b/polly/test/ScopDetect/simple_loop_with_param_2.ll @@ -13,7 +13,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* noalias %A, i64 %N, i64* noalias %init_ptr) nounwind { +define void @f(ptr noalias %A, i64 %N, ptr noalias %init_ptr) nounwind { entry: br label %for.i @@ -23,14 +23,14 @@ for.i: br label %entry.next entry.next: - %init = load i64, i64* %init_ptr + %init = load i64, ptr %init_ptr br label %for.j for.j: %indvar.j = phi i64 [ 0, %entry.next ], [ %indvar.j.next, %for.j ] %init_plus_two = add i64 %init, 2 - %scevgep = getelementptr i64, i64* %A, i64 %indvar.j - store i64 %init_plus_two, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar.j + store i64 %init_plus_two, ptr %scevgep %indvar.j.next = add nsw i64 %indvar.j, 1 %exitcond.j = icmp eq i64 %indvar.j.next, %N br i1 %exitcond.j, label %for.i.end, label %for.j diff --git a/polly/test/ScopDetect/simple_non_single_entry.ll b/polly/test/ScopDetect/simple_non_single_entry.ll index 04f68dc0d19f..a1995a427903 100644 --- a/polly/test/ScopDetect/simple_non_single_entry.ll +++ b/polly/test/ScopDetect/simple_non_single_entry.ll @@ -24,7 +24,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br i1 true, label %then1, label %else1 @@ -53,8 +53,8 @@ for.i.head1: for.i: %indvar = phi i64 [ 0, %for.i.head1], [ %indvar.next, %for.i ] fence seq_cst - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i diff --git a/polly/test/ScopDetect/skip_function_attribute.ll b/polly/test/ScopDetect/skip_function_attribute.ll index 755ea84bd0e5..e85dbd4c2b83 100644 --- a/polly/test/ScopDetect/skip_function_attribute.ll +++ b/polly/test/ScopDetect/skip_function_attribute.ll @@ -11,7 +11,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @polly_skip_me(i32* %A, i32 %N) #0 { +define void @polly_skip_me(ptr %A, i32 %N) #0 { entry: br label %entry.split @@ -24,12 +24,12 @@ for.body.preheader: ; preds = %entry.split for.body: ; preds = %for.body.preheader, %for.body %i.02 = phi i32 [ %inc, %for.body ], [ 0, %for.body.preheader ] - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.02 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.02 + %tmp = load i32, ptr %arrayidx, align 4 %mul = mul nsw i32 %tmp, %tmp %add = add nsw i32 %mul, %tmp - %arrayidx3 = getelementptr inbounds i32, i32* %A, i32 %i.02 - store i32 %add, i32* %arrayidx3, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %A, i32 %i.02 + store i32 %add, ptr %arrayidx3, align 4 %inc = add nsw i32 %i.02, 1 %cmp = icmp slt i32 %inc, %N br i1 %cmp, label %for.body, label %for.end.loopexit diff --git a/polly/test/ScopDetect/srem_with_parametric_divisor.ll b/polly/test/ScopDetect/srem_with_parametric_divisor.ll index c58e7a0b0fc8..4b5c3b04c2ce 100644 --- a/polly/test/ScopDetect/srem_with_parametric_divisor.ll +++ b/polly/test/ScopDetect/srem_with_parametric_divisor.ll @@ -9,7 +9,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A, i64 %n, i64 %p) { +define void @foo(ptr %A, i64 %n, i64 %p) { bb: br label %bb1 @@ -20,10 +20,10 @@ bb1: ; preds = %bb6, %bb bb2: ; preds = %bb1 %tmp = srem i64 %n, %p - %tmp3 = getelementptr inbounds float, float* %A, i64 %tmp - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A, i64 %tmp + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, 1.000000e+00 - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 br label %bb6 bb6: ; preds = %bb2 diff --git a/polly/test/ScopDetect/statistics.ll b/polly/test/ScopDetect/statistics.ll index daae08dde067..64df3d081605 100644 --- a/polly/test/ScopDetect/statistics.ll +++ b/polly/test/ScopDetect/statistics.ll @@ -57,7 +57,7 @@ ; } target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo_0d(float* %A) { +define void @foo_0d(ptr %A) { bb: br label %bb1 @@ -65,14 +65,14 @@ bb1: br i1 true, label %exit, label %block block: - store float 42.0, float* %A + store float 42.0, ptr %A br label %exit exit: ret void } -define void @foo_1d(float* %A) { +define void @foo_1d(ptr %A) { bb: br label %bb1 @@ -83,10 +83,10 @@ bb1: ; preds = %bb6, %bb bb2: ; preds = %bb1 %tmp = sitofp i64 %i.0 to float - %tmp3 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, %tmp - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 br label %bb6 bb6: ; preds = %bb2 @@ -97,7 +97,7 @@ bb8: ; preds = %bb1 ret void } -define void @foo_2d(float* %A) { +define void @foo_2d(ptr %A) { bb: br label %bb2 @@ -118,10 +118,10 @@ bb5: ; preds = %bb4 %tmp = add nuw nsw i64 %i.0, %j.0 %tmp6 = sitofp i64 %tmp to float %tmp7 = add nuw nsw i64 %i.0, %j.0 - %tmp8 = getelementptr inbounds float, float* %A, i64 %tmp7 - %tmp9 = load float, float* %tmp8, align 4 + %tmp8 = getelementptr inbounds float, ptr %A, i64 %tmp7 + %tmp9 = load float, ptr %tmp8, align 4 %tmp10 = fadd float %tmp9, %tmp6 - store float %tmp10, float* %tmp8, align 4 + store float %tmp10, ptr %tmp8, align 4 br label %bb11 bb11: ; preds = %bb5 @@ -139,7 +139,7 @@ bb16: ; preds = %bb2 ret void } -define void @foo_3d(float* %A) { +define void @foo_3d(ptr %A) { bb: br label %bb3 @@ -170,10 +170,10 @@ bb8: ; preds = %bb7 %tmp10 = sitofp i64 %tmp9 to float %tmp11 = add nuw nsw i64 %i.0, %j.0 %tmp12 = add nuw nsw i64 %tmp11, %k.0 - %tmp13 = getelementptr inbounds float, float* %A, i64 %tmp12 - %tmp14 = load float, float* %tmp13, align 4 + %tmp13 = getelementptr inbounds float, ptr %A, i64 %tmp12 + %tmp14 = load float, ptr %tmp13, align 4 %tmp15 = fadd float %tmp14, %tmp10 - store float %tmp15, float* %tmp13, align 4 + store float %tmp15, ptr %tmp13, align 4 br label %bb16 bb16: ; preds = %bb8 @@ -198,7 +198,7 @@ bb24: ; preds = %bb3 ret void } -define void @foo_4d(float* %A) { +define void @foo_4d(ptr %A) { bb: br label %bb4 @@ -239,10 +239,10 @@ bb11: ; preds = %bb10 %tmp15 = add nuw nsw i64 %i.0, %j.0 %tmp16 = add nuw nsw i64 %tmp15, %k.0 %tmp17 = add nuw nsw i64 %tmp16, %l.0 - %tmp18 = getelementptr inbounds float, float* %A, i64 %tmp17 - %tmp19 = load float, float* %tmp18, align 4 + %tmp18 = getelementptr inbounds float, ptr %A, i64 %tmp17 + %tmp19 = load float, ptr %tmp18, align 4 %tmp20 = fadd float %tmp19, %tmp14 - store float %tmp20, float* %tmp18, align 4 + store float %tmp20, ptr %tmp18, align 4 br label %bb21 bb21: ; preds = %bb11 @@ -274,7 +274,7 @@ bb32: ; preds = %bb4 ret void } -define void @foo_zero_iterations(float* %A) { +define void @foo_zero_iterations(ptr %A) { bb: br label %bb1 @@ -285,10 +285,10 @@ bb1: ; preds = %bb6, %bb bb2: ; preds = %bb1 %tmp = sitofp i64 %i.0 to float - %tmp3 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, %tmp - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 br label %bb6 bb6: ; preds = %bb2 diff --git a/polly/test/ScopDetect/tlr_is_hoistable_load.ll b/polly/test/ScopDetect/tlr_is_hoistable_load.ll index aea93276b9b6..5c33522f6232 100644 --- a/polly/test/ScopDetect/tlr_is_hoistable_load.ll +++ b/polly/test/ScopDetect/tlr_is_hoistable_load.ll @@ -35,38 +35,37 @@ entry: %A = alloca [5 x i32], align 16 %len = alloca i32, align 4 %i = alloca i32, align 4 - %0 = bitcast [5 x i32]* %A to i8* - call void @llvm.memcpy.p0i8.p0i8.i64(i8* %0, i8* bitcast ([5 x i32]* @test.A to i8*), i64 20, i32 16, i1 false) - store i32 5, i32* %len, align 4 - store i32 0, i32* %i, align 4 + call void @llvm.memcpy.p0.p0.i64(ptr %A, ptr @test.A, i64 20, i32 16, i1 false) + store i32 5, ptr %len, align 4 + store i32 0, ptr %i, align 4 br label %for.cond for.cond: ; preds = %for.inc, %entry - %1 = load i32, i32* %i, align 4 - %2 = load i32, i32* %len, align 4 - %cmp = icmp slt i32 %1, %2 + %0 = load i32, ptr %i, align 4 + %1 = load i32, ptr %len, align 4 + %cmp = icmp slt i32 %0, %1 br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %3 = load i32, i32* %i, align 4 - %idxprom = sext i32 %3 to i64 - %arrayidx = getelementptr inbounds [5 x i32], [5 x i32]* %A, i64 0, i64 %idxprom - %4 = load i32, i32* %arrayidx, align 4 - %mul = mul nsw i32 %4, 2 - %5 = load i32, i32* %i, align 4 - %idxprom1 = sext i32 %5 to i64 - %arrayidx2 = getelementptr inbounds [5 x i32], [5 x i32]* %A, i64 0, i64 %idxprom1 - store i32 %mul, i32* %arrayidx2, align 4 + %2 = load i32, ptr %i, align 4 + %idxprom = sext i32 %2 to i64 + %arrayidx = getelementptr inbounds [5 x i32], ptr %A, i64 0, i64 %idxprom + %3 = load i32, ptr %arrayidx, align 4 + %mul = mul nsw i32 %3, 2 + %4 = load i32, ptr %i, align 4 + %idxprom1 = sext i32 %4 to i64 + %arrayidx2 = getelementptr inbounds [5 x i32], ptr %A, i64 0, i64 %idxprom1 + store i32 %mul, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body - %6 = load i32, i32* %i, align 4 - %inc = add nsw i32 %6, 1 - store i32 %inc, i32* %i, align 4 + %5 = load i32, ptr %i, align 4 + %inc = add nsw i32 %5, 1 + store i32 %inc, ptr %i, align 4 br label %for.cond for.end: ; preds = %for.cond ret void } -declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture writeonly, i8* nocapture readonly, i64, i32, i1) +declare void @llvm.memcpy.p0.p0.i64(ptr nocapture writeonly, ptr nocapture readonly, i64, i32, i1) diff --git a/polly/test/ScopDetectionDiagnostics/ReportAlias-01.ll b/polly/test/ScopDetectionDiagnostics/ReportAlias-01.ll index b47044598a59..97ba7f9634e9 100644 --- a/polly/test/ScopDetectionDiagnostics/ReportAlias-01.ll +++ b/polly/test/ScopDetectionDiagnostics/ReportAlias-01.ll @@ -11,22 +11,22 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %B) !dbg !4 { +define void @f(ptr %A, ptr %B) !dbg !4 { entry: br label %entry.split entry.split: ; preds = %entry - tail call void @llvm.dbg.value(metadata i32* %A, i64 0, metadata !13, metadata !DIExpression()), !dbg !14 - tail call void @llvm.dbg.value(metadata i32* %B, i64 0, metadata !15, metadata !DIExpression()), !dbg !16 + tail call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !13, metadata !DIExpression()), !dbg !14 + tail call void @llvm.dbg.value(metadata ptr %B, i64 0, metadata !15, metadata !DIExpression()), !dbg !16 tail call void @llvm.dbg.value(metadata i32 0, i64 0, metadata !18, metadata !DIExpression()), !dbg !20 br label %for.body, !dbg !21 for.body: ; preds = %entry.split, %for.body %indvar = phi i64 [ 0, %entry.split ], [ %indvar.next, %for.body ] - %arrayidx = getelementptr i32, i32* %B, i64 %indvar, !dbg !22 - %arrayidx2 = getelementptr i32, i32* %A, i64 %indvar, !dbg !22 - %0 = load i32, i32* %arrayidx, align 4, !dbg !22 - store i32 %0, i32* %arrayidx2, align 4, !dbg !22 + %arrayidx = getelementptr i32, ptr %B, i64 %indvar, !dbg !22 + %arrayidx2 = getelementptr i32, ptr %A, i64 %indvar, !dbg !22 + %0 = load i32, ptr %arrayidx, align 4, !dbg !22 + store i32 %0, ptr %arrayidx2, align 4, !dbg !22 tail call void @llvm.dbg.value(metadata !{null}, i64 0, metadata !18, metadata !DIExpression()), !dbg !20 %indvar.next = add i64 %indvar, 1, !dbg !21 %exitcond = icmp ne i64 %indvar.next, 42, !dbg !21 diff --git a/polly/test/ScopDetectionDiagnostics/ReportEntry.ll b/polly/test/ScopDetectionDiagnostics/ReportEntry.ll index bf82c78f3cb1..fc21e192f32c 100644 --- a/polly/test/ScopDetectionDiagnostics/ReportEntry.ll +++ b/polly/test/ScopDetectionDiagnostics/ReportEntry.ll @@ -2,7 +2,7 @@ ; CHECK: remark: <unknown>:0:0: Scop contains function entry (not yet supported). -define void @hoge(i8* %arg) { +define void @hoge(ptr %arg) { bb1: br i1 false, label %bb2, label %bb3 diff --git a/polly/test/ScopDetectionDiagnostics/ReportFuncCall-01.ll b/polly/test/ScopDetectionDiagnostics/ReportFuncCall-01.ll index a2e96dc3bfa0..abace4ba520d 100644 --- a/polly/test/ScopDetectionDiagnostics/ReportFuncCall-01.ll +++ b/polly/test/ScopDetectionDiagnostics/ReportFuncCall-01.ll @@ -11,7 +11,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @a(double* %A, i32 %n) #0 !dbg !4 { +define void @a(ptr %A, i32 %n) #0 !dbg !4 { entry: %cmp1 = icmp sgt i32 %n, 0, !dbg !10 br i1 %cmp1, label %for.body.lr.ph, label %for.end, !dbg !10 @@ -22,9 +22,9 @@ for.body.lr.ph: ; preds = %entry for.body: ; preds = %for.body, %for.body.lr.ph %indvar = phi i64 [ 0, %for.body.lr.ph ], [ %indvar.next, %for.body ] - %arrayidx = getelementptr double, double* %A, i64 %indvar, !dbg !12 - %call = tail call double @invalidCall(double* %A) #2, !dbg !12 - store double %call, double* %arrayidx, align 8, !dbg !12, !tbaa !14 + %arrayidx = getelementptr double, ptr %A, i64 %indvar, !dbg !12 + %call = tail call double @invalidCall(ptr %A) #2, !dbg !12 + store double %call, ptr %arrayidx, align 8, !dbg !12, !tbaa !14 %indvar.next = add i64 %indvar, 1, !dbg !10 %exitcond = icmp eq i64 %indvar.next, %0, !dbg !10 br i1 %exitcond, label %for.end.loopexit, label %for.body, !dbg !10 @@ -36,7 +36,7 @@ for.end: ; preds = %for.end.loopexit, % ret void, !dbg !18 } -declare double @invalidCall(double*) #1 +declare double @invalidCall(ptr) #1 ; CHECK: remark: ReportFuncCall.c:4:8: The following errors keep this region from being a Scop. ; CHECK: remark: ReportFuncCall.c:5:12: This function call cannot be handled. Try to inline it. diff --git a/polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegion.ll b/polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegion.ll index b6453b54b0df..8368a68b42f0 100644 --- a/polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegion.ll +++ b/polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegion.ll @@ -25,16 +25,16 @@ define void @foo(i32 %a, i32 %b) #0 !dbg !4 { entry: %a.addr = alloca i32, align 4 %b.addr = alloca i32, align 4 - store i32 %a, i32* %a.addr, align 4 - call void @llvm.dbg.declare(metadata i32* %a.addr, metadata !11, metadata !12), !dbg !13 - store i32 %b, i32* %b.addr, align 4 - call void @llvm.dbg.declare(metadata i32* %b.addr, metadata !14, metadata !12), !dbg !15 - %0 = load i32, i32* %b.addr, align 4, !dbg !16 + store i32 %a, ptr %a.addr, align 4 + call void @llvm.dbg.declare(metadata ptr %a.addr, metadata !11, metadata !12), !dbg !13 + store i32 %b, ptr %b.addr, align 4 + call void @llvm.dbg.declare(metadata ptr %b.addr, metadata !14, metadata !12), !dbg !15 + %0 = load i32, ptr %b.addr, align 4, !dbg !16 %cmp = icmp eq i32 %0, 42, !dbg !18 br i1 %cmp, label %if.then, label %if.end6, !dbg !19 if.then: ; preds = %entry - %1 = load i32, i32* %a.addr, align 4, !dbg !20 + %1 = load i32, ptr %a.addr, align 4, !dbg !20 %cmp1 = icmp sgt i32 %1, 0, !dbg !23 br i1 %cmp1, label %if.then2, label %if.end, !dbg !24 @@ -42,13 +42,13 @@ if.then2: ; preds = %if.then br label %LABEL1, !dbg !25 LABEL1: ; preds = %if.then4, %if.then2 - %2 = load i32, i32* %a.addr, align 4, !dbg !27 + %2 = load i32, ptr %a.addr, align 4, !dbg !27 %dec = add nsw i32 %2, -1, !dbg !27 - store i32 %dec, i32* %a.addr, align 4, !dbg !27 + store i32 %dec, ptr %a.addr, align 4, !dbg !27 br label %if.end, !dbg !29 if.end: ; preds = %LABEL1, %if.then - %3 = load i32, i32* %a.addr, align 4, !dbg !30 + %3 = load i32, ptr %a.addr, align 4, !dbg !30 %cmp3 = icmp sgt i32 %3, 0, !dbg !32 br i1 %cmp3, label %if.then4, label %if.end5, !dbg !33 @@ -56,9 +56,9 @@ if.then4: ; preds = %if.end br label %LABEL1, !dbg !34 if.end5: ; preds = %if.end - %4 = load i32, i32* %b.addr, align 4, !dbg !36 + %4 = load i32, ptr %b.addr, align 4, !dbg !36 %add = add nsw i32 %4, 42, !dbg !37 - store i32 %add, i32* %b.addr, align 4, !dbg !38 + store i32 %add, ptr %b.addr, align 4, !dbg !38 br label %if.end6, !dbg !39 if.end6: ; preds = %if.end5, %entry diff --git a/polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegionWithoutDebugLoc.ll b/polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegionWithoutDebugLoc.ll index 0f9d28d8d02e..82c6c33e287c 100644 --- a/polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegionWithoutDebugLoc.ll +++ b/polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegionWithoutDebugLoc.ll @@ -2,7 +2,7 @@ ; CHECK: remark: <unknown>:0:0: Irreducible region encountered in control flow. -define void @hoge(i8* %arg) { +define void @hoge(ptr %arg) { bb1: br i1 false, label %bb2, label %bb3 diff --git a/polly/test/ScopDetectionDiagnostics/ReportLoopBound-01.ll b/polly/test/ScopDetectionDiagnostics/ReportLoopBound-01.ll index a3f8fa3b510c..618237157e08 100644 --- a/polly/test/ScopDetectionDiagnostics/ReportLoopBound-01.ll +++ b/polly/test/ScopDetectionDiagnostics/ReportLoopBound-01.ll @@ -37,18 +37,18 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %n) !dbg !4 { +define void @f(ptr %A, i32 %n) !dbg !4 { entry: br label %entry.split entry.split: ; preds = %entry - tail call void @llvm.dbg.value(metadata i32* %A, i64 0, metadata !13, metadata !DIExpression()), !dbg !14 - tail call void @llvm.dbg.value(metadata i32* %A, i64 0, metadata !13, metadata !DIExpression()), !dbg !14 + tail call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !13, metadata !DIExpression()), !dbg !14 + tail call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !13, metadata !DIExpression()), !dbg !14 tail call void @llvm.dbg.value(metadata i32 %n, i64 0, metadata !15, metadata !DIExpression()), !dbg !16 tail call void @llvm.dbg.value(metadata i32 0, i64 0, metadata !18, metadata !DIExpression()), !dbg !20 %idxprom = sext i32 %n to i64, !dbg !21 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom, !dbg !21 - %0 = load i32, i32* %arrayidx, align 4, !dbg !21 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom, !dbg !21 + %0 = load i32, ptr %arrayidx, align 4, !dbg !21 %cmp3 = icmp sgt i32 %0, 0, !dbg !21 br i1 %cmp3, label %for.body.lr.ph, label %for.end, !dbg !21 @@ -57,13 +57,13 @@ for.body.lr.ph: ; preds = %entry.split for.body: ; preds = %for.body.lr.ph, %for.body %indvar = phi i64 [ 0, %for.body.lr.ph ], [ %indvar.next, %for.body ] - %arrayidx2 = getelementptr i32, i32* %A, i64 %indvar, !dbg !24 + %arrayidx2 = getelementptr i32, ptr %A, i64 %indvar, !dbg !24 %1 = add i64 %indvar, 1, !dbg !24 %inc = trunc i64 %1 to i32, !dbg !21 - store i32 0, i32* %arrayidx2, align 4, !dbg !24 + store i32 0, ptr %arrayidx2, align 4, !dbg !24 tail call void @llvm.dbg.value(metadata !{null}, i64 0, metadata !18, metadata !DIExpression()), !dbg !20 - %arrayidx3 = getelementptr inbounds i32, i32* %arrayidx, i64 %indvar, !dbg !21 - %2 = load i32, i32* %arrayidx3, align 4, !dbg !21 + %arrayidx3 = getelementptr inbounds i32, ptr %arrayidx, i64 %indvar, !dbg !21 + %2 = load i32, ptr %arrayidx3, align 4, !dbg !21 %cmp = icmp slt i32 %inc, %2, !dbg !21 %indvar.next = add i64 %indvar, 1, !dbg !21 br i1 %cmp, label %for.body, label %for.cond.for.end_crit_edge, !dbg !21 diff --git a/polly/test/ScopDetectionDiagnostics/ReportLoopHasNoExit.ll b/polly/test/ScopDetectionDiagnostics/ReportLoopHasNoExit.ll index 0a9305a200c2..5dbeaded45c9 100644 --- a/polly/test/ScopDetectionDiagnostics/ReportLoopHasNoExit.ll +++ b/polly/test/ScopDetectionDiagnostics/ReportLoopHasNoExit.ll @@ -24,26 +24,26 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @func(i32 %param0, i32 %N, i32* %A) #0 !dbg !6 { +define void @func(i32 %param0, i32 %N, ptr %A) #0 !dbg !6 { entry: %param0.addr = alloca i32, align 4 %N.addr = alloca i32, align 4 - %A.addr = alloca i32*, align 8 + %A.addr = alloca ptr, align 8 %i = alloca i32, align 4 - store i32 %param0, i32* %param0.addr, align 4 - store i32 %N, i32* %N.addr, align 4 - store i32* %A, i32** %A.addr, align 8 - store i32 0, i32* %i, align 4 + store i32 %param0, ptr %param0.addr, align 4 + store i32 %N, ptr %N.addr, align 4 + store ptr %A, ptr %A.addr, align 8 + store i32 0, ptr %i, align 4 br label %for.cond for.cond: ; preds = %for.inc, %entry - %0 = load i32, i32* %i, align 4 - %1 = load i32, i32* %N.addr, align 4 + %0 = load i32, ptr %i, align 4 + %1 = load i32, ptr %N.addr, align 4 %cmp = icmp slt i32 %0, %1 br i1 %cmp, label %for.body, label %for.end, !dbg !27 for.body: ; preds = %for.cond - %2 = load i32, i32* %param0.addr, align 4 + %2 = load i32, ptr %param0.addr, align 4 %tobool = icmp ne i32 %2, 0 br i1 %tobool, label %if.then, label %if.else @@ -51,28 +51,28 @@ if.then: ; preds = %for.body br label %while.body while.body: ; preds = %if.then, %while.body - %3 = load i32, i32* %i, align 4 + %3 = load i32, ptr %i, align 4 %idxprom = sext i32 %3 to i64 - %4 = load i32*, i32** %A.addr, align 8 - %arrayidx = getelementptr inbounds i32, i32* %4, i64 %idxprom - store i32 1, i32* %arrayidx, align 4 + %4 = load ptr, ptr %A.addr, align 8 + %arrayidx = getelementptr inbounds i32, ptr %4, i64 %idxprom + store i32 1, ptr %arrayidx, align 4 br label %while.body, !dbg !37 if.else: ; preds = %for.body - %5 = load i32, i32* %i, align 4 + %5 = load i32, ptr %i, align 4 %idxprom1 = sext i32 %5 to i64 - %6 = load i32*, i32** %A.addr, align 8 - %arrayidx2 = getelementptr inbounds i32, i32* %6, i64 %idxprom1 - store i32 2, i32* %arrayidx2, align 4 + %6 = load ptr, ptr %A.addr, align 8 + %arrayidx2 = getelementptr inbounds i32, ptr %6, i64 %idxprom1 + store i32 2, ptr %arrayidx2, align 4 br label %if.end if.end: ; preds = %if.else br label %for.inc for.inc: ; preds = %if.end - %7 = load i32, i32* %i, align 4 + %7 = load i32, ptr %i, align 4 %inc = add nsw i32 %7, 1 - store i32 %inc, i32* %i, align 4 + store i32 %inc, ptr %i, align 4 br label %for.cond for.end: ; preds = %for.cond diff --git a/polly/test/ScopDetectionDiagnostics/ReportMultipleNonAffineAccesses.ll b/polly/test/ScopDetectionDiagnostics/ReportMultipleNonAffineAccesses.ll index 1b9ffabb2325..634b63e6d44d 100644 --- a/polly/test/ScopDetectionDiagnostics/ReportMultipleNonAffineAccesses.ll +++ b/polly/test/ScopDetectionDiagnostics/ReportMultipleNonAffineAccesses.ll @@ -57,7 +57,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @manyaccesses(float* noalias %A, i64 %n, float* noalias %B) !dbg !4 { +define void @manyaccesses(ptr noalias %A, i64 %n, ptr noalias %B) !dbg !4 { entry: br label %entry.split @@ -69,28 +69,28 @@ for.body: ; preds = %entry.split, %for.b %tmp3 = phi i64 [ 0, %entry.split ], [ %tmp14, %for.body ], !dbg !15 %mul = mul i64 %tmp3, 2, !dbg !17 %tmp4 = mul i64 %tmp, %tmp3, !dbg !18 - %arrayidx8 = getelementptr float, float* %B, i64 %tmp4, !dbg !19 + %arrayidx8 = getelementptr float, ptr %B, i64 %tmp4, !dbg !19 %mul9 = mul i64 %n, %tmp3, !dbg !15 - %arrayidx12 = getelementptr float, float* %B, i64 %mul9, !dbg !20 - %arrayidx15 = getelementptr float, float* %B, i64 %tmp3, !dbg !21 + %arrayidx12 = getelementptr float, ptr %B, i64 %mul9, !dbg !20 + %arrayidx15 = getelementptr float, ptr %B, i64 %tmp3, !dbg !21 %mul1 = mul nsw i64 %mul, %tmp3, !dbg !17 - %arrayidx = getelementptr inbounds float, float* %A, i64 %mul1, !dbg !22 - %tmp5 = load float, float* %arrayidx, align 4, !dbg !22 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %mul1, !dbg !22 + %tmp5 = load float, ptr %arrayidx, align 4, !dbg !22 %mul3 = mul nsw i64 %mul, %tmp3, !dbg !27 %add1 = or i64 %mul3, 1, !dbg !27 - %arrayidx4 = getelementptr inbounds float, float* %A, i64 %add1, !dbg !28 - %tmp6 = load float, float* %arrayidx4, align 4, !dbg !28 - %tmp7 = load float, float* %B, align 4, !dbg !29 - %tmp8 = load float, float* %arrayidx8, align 4, !dbg !19 + %arrayidx4 = getelementptr inbounds float, ptr %A, i64 %add1, !dbg !28 + %tmp6 = load float, ptr %arrayidx4, align 4, !dbg !28 + %tmp7 = load float, ptr %B, align 4, !dbg !29 + %tmp8 = load float, ptr %arrayidx8, align 4, !dbg !19 %tmp9 = mul i64 %mul9, %tmp3, !dbg !15 %arrayidx10.sum = add i64 %tmp9, %tmp3, !dbg !15 - %arrayidx11 = getelementptr inbounds float, float* %B, i64 %arrayidx10.sum, !dbg !15 - %tmp10 = load float, float* %arrayidx11, align 4, !dbg !15 - %tmp11 = load float, float* %arrayidx12, align 4, !dbg !20 - %tmp12 = load float, float* %arrayidx15, align 4, !dbg !21 + %arrayidx11 = getelementptr inbounds float, ptr %B, i64 %arrayidx10.sum, !dbg !15 + %tmp10 = load float, ptr %arrayidx11, align 4, !dbg !15 + %tmp11 = load float, ptr %arrayidx12, align 4, !dbg !20 + %tmp12 = load float, ptr %arrayidx15, align 4, !dbg !21 %mul16 = mul nsw i64 %tmp3, %tmp3, !dbg !30 - %arrayidx18 = getelementptr inbounds float, float* %B, i64 %mul16, !dbg !31 - %tmp13 = load float, float* %arrayidx18, align 4, !dbg !31 + %arrayidx18 = getelementptr inbounds float, ptr %B, i64 %mul16, !dbg !31 + %tmp13 = load float, ptr %arrayidx18, align 4, !dbg !31 %add19 = fadd float %tmp5, %tmp6, !dbg !32 %add20 = fadd float %add19, %tmp7, !dbg !33 %add21 = fadd float %add20, %tmp8, !dbg !34 @@ -99,8 +99,8 @@ for.body: ; preds = %entry.split, %for.b %add24 = fadd float %add23, %tmp12, !dbg !37 %add25 = fadd float %add24, %tmp13, !dbg !38 %mul26 = mul nsw i64 %tmp3, %tmp3, !dbg !39 - %arrayidx27 = getelementptr inbounds float, float* %A, i64 %mul26, !dbg !40 - store float %add25, float* %arrayidx27, align 4, !dbg !40 + %arrayidx27 = getelementptr inbounds float, ptr %A, i64 %mul26, !dbg !40 + store float %add25, ptr %arrayidx27, align 4, !dbg !40 %tmp14 = add nsw i64 %tmp3, 1, !dbg !41 %exitcond = icmp ne i64 %tmp14, 1024, !dbg !10 br i1 %exitcond, label %for.body, label %for.end, !dbg !10 diff --git a/polly/test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll b/polly/test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll index 27fca8dc96be..23d8c9c061c9 100644 --- a/polly/test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll +++ b/polly/test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll @@ -12,12 +12,12 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) !dbg !4 { +define void @f(ptr %A) !dbg !4 { entry: br label %entry.split entry.split: ; preds = %entry - tail call void @llvm.dbg.value(metadata i32* %A, i64 0, metadata !13, metadata !DIExpression()), !dbg !14 + tail call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !13, metadata !DIExpression()), !dbg !14 tail call void @llvm.dbg.value(metadata i32 0, i64 0, metadata !16, metadata !DIExpression()), !dbg !18 br label %for.body, !dbg !19 @@ -25,8 +25,8 @@ for.body: ; preds = %entry.split, %for.b %0 = phi i32 [ 0, %entry.split ], [ %1, %for.body ], !dbg !20 %mul = mul nsw i32 %0, %0, !dbg !20 %idxprom1 = zext i32 %mul to i64, !dbg !20 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom1, !dbg !20 - store i32 0, i32* %arrayidx, align 4, !dbg !20 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom1, !dbg !20 + store i32 0, ptr %arrayidx, align 4, !dbg !20 %1 = add nsw i32 %0, 1, !dbg !21 tail call void @llvm.dbg.value(metadata i32 %1, i64 0, metadata !16, metadata !DIExpression()), !dbg !18 %exitcond = icmp ne i32 %1, 42, !dbg !19 diff --git a/polly/test/ScopDetectionDiagnostics/ReportUnprofitable.ll b/polly/test/ScopDetectionDiagnostics/ReportUnprofitable.ll index d4edc827d574..d35b7a28ba89 100644 --- a/polly/test/ScopDetectionDiagnostics/ReportUnprofitable.ll +++ b/polly/test/ScopDetectionDiagnostics/ReportUnprofitable.ll @@ -76,9 +76,9 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @onlyWrite(float* %A) #0 !dbg !4 { +define void @onlyWrite(ptr %A) #0 !dbg !4 { entry: - call void @llvm.dbg.value(metadata float* %A, i64 0, metadata !14, metadata !15), !dbg !16 + call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !14, metadata !15), !dbg !16 call void @llvm.dbg.value(metadata i64 0, i64 0, metadata !17, metadata !15), !dbg !20 br label %for.cond, !dbg !21 @@ -88,8 +88,8 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end, !dbg !22 for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0, !dbg !23 - store float 0.000000e+00, float* %arrayidx, align 4, !dbg !25 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0, !dbg !23 + store float 0.000000e+00, ptr %arrayidx, align 4, !dbg !25 br label %for.inc, !dbg !23 for.inc: ; preds = %for.body @@ -105,9 +105,9 @@ for.end: ; preds = %for.cond declare void @llvm.dbg.declare(metadata, metadata, metadata) #1 ; Function Attrs: nounwind uwtable -define void @onlyRead(float* %A) #0 !dbg !10 { +define void @onlyRead(ptr %A) #0 !dbg !10 { entry: - call void @llvm.dbg.value(metadata float* %A, i64 0, metadata !29, metadata !15), !dbg !30 + call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !29, metadata !15), !dbg !30 call void @llvm.dbg.value(metadata i64 0, i64 0, metadata !31, metadata !15), !dbg !33 br label %for.cond, !dbg !34 @@ -117,8 +117,8 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end, !dbg !35 for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0, !dbg !36 - %val = load float, float* %arrayidx, align 4, !dbg !38 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0, !dbg !36 + %val = load float, ptr %arrayidx, align 4, !dbg !38 br label %for.inc, !dbg !36 for.inc: ; preds = %for.body diff --git a/polly/test/ScopDetectionDiagnostics/ReportUnreachableInExit.ll b/polly/test/ScopDetectionDiagnostics/ReportUnreachableInExit.ll index 39908a0256e5..6c868db78ce7 100644 --- a/polly/test/ScopDetectionDiagnostics/ReportUnreachableInExit.ll +++ b/polly/test/ScopDetectionDiagnostics/ReportUnreachableInExit.ll @@ -10,15 +10,15 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %A, i64 %N) nounwind { +define void @f(ptr %A, i64 %N) nounwind { entry: fence seq_cst br label %for.i for.i: %indvar = phi i64 [ 0, %entry ], [ %indvar.next, %for.i ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar - store i64 %indvar, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar + store i64 %indvar, ptr %scevgep %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %N br i1 %exitcond, label %return, label %for.i diff --git a/polly/test/ScopDetectionDiagnostics/ReportVariantBasePtr-01.ll b/polly/test/ScopDetectionDiagnostics/ReportVariantBasePtr-01.ll index b3f152db901b..a82f56b7a5fa 100644 --- a/polly/test/ScopDetectionDiagnostics/ReportVariantBasePtr-01.ll +++ b/polly/test/ScopDetectionDiagnostics/ReportVariantBasePtr-01.ll @@ -19,36 +19,36 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.b = type { double** } +%struct.b = type { ptr } -define void @a(%struct.b* nocapture readonly %A) #0 !dbg !4 { +define void @a(ptr nocapture readonly %A) #0 !dbg !4 { entry: br label %entry.split entry.split: ; preds = %entry - tail call void @llvm.dbg.value(metadata %struct.b* %A, i64 0, metadata !16, metadata !DIExpression()), !dbg !23 + tail call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !16, metadata !DIExpression()), !dbg !23 tail call void @llvm.dbg.value(metadata i32 0, i64 0, metadata !17, metadata !DIExpression()), !dbg !25 br label %for.body, !dbg !27 for.body: ; preds = %for.body, %entry.split %indvar4 = phi i64 [ %indvar.next, %for.body ], [ 0, %entry.split ] - %b = getelementptr inbounds %struct.b, %struct.b* %A, i64 %indvar4, i32 0, !dbg !26 + %b = getelementptr inbounds %struct.b, ptr %A, i64 %indvar4, i32 0, !dbg !26 %0 = mul i64 %indvar4, 4, !dbg !26 %1 = add i64 %0, 3, !dbg !26 %2 = add i64 %0, 2, !dbg !26 %3 = add i64 %0, 1, !dbg !26 - %4 = load double**, double*** %b, align 8, !dbg !26, !tbaa !28 - %arrayidx = getelementptr double*, double** %4, i64 %0, !dbg !26 - store double* null, double** %arrayidx, align 8, !dbg !26, !tbaa !33 - %5 = load double**, double*** %b, align 8, !dbg !26, !tbaa !28 - %arrayidx.1 = getelementptr double*, double** %5, i64 %3, !dbg !26 - store double* null, double** %arrayidx.1, align 8, !dbg !26, !tbaa !33 - %6 = load double**, double*** %b, align 8, !dbg !26, !tbaa !28 - %arrayidx.2 = getelementptr double*, double** %6, i64 %2, !dbg !26 - store double* null, double** %arrayidx.2, align 8, !dbg !26, !tbaa !33 - %7 = load double**, double*** %b, align 8, !dbg !26, !tbaa !28 - %arrayidx.3 = getelementptr double*, double** %7, i64 %1, !dbg !26 - store double* null, double** %arrayidx.3, align 8, !dbg !26, !tbaa !33 + %4 = load ptr, ptr %b, align 8, !dbg !26, !tbaa !28 + %arrayidx = getelementptr ptr, ptr %4, i64 %0, !dbg !26 + store ptr null, ptr %arrayidx, align 8, !dbg !26, !tbaa !33 + %5 = load ptr, ptr %b, align 8, !dbg !26, !tbaa !28 + %arrayidx.1 = getelementptr ptr, ptr %5, i64 %3, !dbg !26 + store ptr null, ptr %arrayidx.1, align 8, !dbg !26, !tbaa !33 + %6 = load ptr, ptr %b, align 8, !dbg !26, !tbaa !28 + %arrayidx.2 = getelementptr ptr, ptr %6, i64 %2, !dbg !26 + store ptr null, ptr %arrayidx.2, align 8, !dbg !26, !tbaa !33 + %7 = load ptr, ptr %b, align 8, !dbg !26, !tbaa !28 + %arrayidx.3 = getelementptr ptr, ptr %7, i64 %1, !dbg !26 + store ptr null, ptr %arrayidx.3, align 8, !dbg !26, !tbaa !33 %indvar.next = add i64 %indvar4, 1, !dbg !27 %exitcond = icmp eq i64 %indvar.next, 8, !dbg !27 br i1 %exitcond, label %for.end, label %for.body, !dbg !27 diff --git a/polly/test/ScopDetectionDiagnostics/loop_has_multiple_exits.ll b/polly/test/ScopDetectionDiagnostics/loop_has_multiple_exits.ll index c34a09f9f224..7661bd004f5c 100644 --- a/polly/test/ScopDetectionDiagnostics/loop_has_multiple_exits.ll +++ b/polly/test/ScopDetectionDiagnostics/loop_has_multiple_exits.ll @@ -9,21 +9,21 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @encode_line(i8* nocapture readonly %input, i32 %offset, i32 %octets, i8* nocapture %line) !dbg !9 { +define void @encode_line(ptr nocapture readonly %input, i32 %offset, i32 %octets, ptr nocapture %line) !dbg !9 { entry: br label %entry.split, !dbg !26 entry.split: ; preds = %entry - call void @llvm.dbg.value(metadata i8* %input, metadata !17, metadata !DIExpression()), !dbg !26 + call void @llvm.dbg.value(metadata ptr %input, metadata !17, metadata !DIExpression()), !dbg !26 call void @llvm.dbg.value(metadata i32 %offset, metadata !18, metadata !DIExpression()), !dbg !27 call void @llvm.dbg.value(metadata i32 %octets, metadata !19, metadata !DIExpression()), !dbg !28 - call void @llvm.dbg.value(metadata i8* %line, metadata !20, metadata !DIExpression()), !dbg !29 + call void @llvm.dbg.value(metadata ptr %line, metadata !20, metadata !DIExpression()), !dbg !29 call void @llvm.dbg.value(metadata i32 0, metadata !21, metadata !DIExpression()), !dbg !30 %conv = trunc i32 %octets to i8, !dbg !31 call void @llvm.dbg.value(metadata i8 %conv, metadata !32, metadata !DIExpression()), !dbg !37 %tmp = and i8 %conv, 63, !dbg !39 %addconv.i = add nuw nsw i8 %tmp, 32, !dbg !40 - store i8 %addconv.i, i8* %line, align 1, !dbg !41, !tbaa !42 + store i8 %addconv.i, ptr %line, align 1, !dbg !41, !tbaa !42 call void @llvm.dbg.value(metadata i32 1, metadata !21, metadata !DIExpression()), !dbg !30 call void @llvm.dbg.value(metadata i32 %offset, metadata !18, metadata !DIExpression()), !dbg !27 call void @llvm.dbg.value(metadata i32 %octets, metadata !19, metadata !DIExpression()), !dbg !28 @@ -51,8 +51,8 @@ if.else: ; preds = %for.body br label %for.end if.then54: ; No predecessors! - %arrayidx56 = getelementptr inbounds i8, i8* %input, i64 %indvars.iv, !dbg !50 - %tmp2 = load i8, i8* %arrayidx56, align 1, !dbg !50, !tbaa !42 + %arrayidx56 = getelementptr inbounds i8, ptr %input, i64 %indvars.iv, !dbg !50 + %tmp2 = load i8, ptr %arrayidx56, align 1, !dbg !50, !tbaa !42 %tmp3 = lshr i8 %tmp2, 2, !dbg !54 call void @llvm.dbg.value(metadata i8 %tmp2, metadata !32, metadata !DIExpression(DW_OP_constu, 2, DW_OP_shra, DW_OP_stack_value)), !dbg !55 %addconv.i210 = add nuw nsw i8 %tmp3, 32, !dbg !57 @@ -60,9 +60,9 @@ if.then54: ; No predecessors! %inc62 = add nuw nsw i32 %loffs.0223, 1, !dbg !59 call void @llvm.dbg.value(metadata i32 %inc62, metadata !21, metadata !DIExpression()), !dbg !30 %tmp4 = zext i32 %loffs.0223 to i64, !dbg !60 - %arrayidx64 = getelementptr inbounds i8, i8* %line, i64 %tmp4, !dbg !60 - store i8 %addconv.i210, i8* %arrayidx64, align 1, !dbg !61, !tbaa !42 - %tmp5 = load i8, i8* %arrayidx56, align 1, !dbg !62, !tbaa !42 + %arrayidx64 = getelementptr inbounds i8, ptr %line, i64 %tmp4, !dbg !60 + store i8 %addconv.i210, ptr %arrayidx64, align 1, !dbg !61, !tbaa !42 + %tmp5 = load i8, ptr %arrayidx56, align 1, !dbg !62, !tbaa !42 %shl68 = shl i8 %tmp5, 4, !dbg !63 call void @llvm.dbg.value(metadata i8 %shl68, metadata !32, metadata !DIExpression()), !dbg !64 %tmp6 = and i8 %shl68, 48, !dbg !66 @@ -71,23 +71,23 @@ if.then54: ; No predecessors! %inc72 = add nuw nsw i32 %loffs.0223, 2, !dbg !68 call void @llvm.dbg.value(metadata i32 %inc72, metadata !21, metadata !DIExpression()), !dbg !30 %tmp7 = zext i32 %inc62 to i64, !dbg !69 - %arrayidx74 = getelementptr inbounds i8, i8* %line, i64 %tmp7, !dbg !69 - store i8 %addconv.i208, i8* %arrayidx74, align 1, !dbg !70, !tbaa !42 + %arrayidx74 = getelementptr inbounds i8, ptr %line, i64 %tmp7, !dbg !69 + store i8 %addconv.i208, ptr %arrayidx74, align 1, !dbg !70, !tbaa !42 %inc75 = add nuw nsw i32 %loffs.0223, 3, !dbg !71 call void @llvm.dbg.value(metadata i32 %inc75, metadata !21, metadata !DIExpression()), !dbg !30 %tmp8 = zext i32 %inc72 to i64, !dbg !72 - %arrayidx77 = getelementptr inbounds i8, i8* %line, i64 %tmp8, !dbg !72 - store i8 61, i8* %arrayidx77, align 1, !dbg !73, !tbaa !42 + %arrayidx77 = getelementptr inbounds i8, ptr %line, i64 %tmp8, !dbg !72 + store i8 61, ptr %arrayidx77, align 1, !dbg !73, !tbaa !42 %inc78 = add nuw nsw i32 %loffs.0223, 4, !dbg !74 call void @llvm.dbg.value(metadata i32 %inc78, metadata !21, metadata !DIExpression()), !dbg !30 %tmp9 = zext i32 %inc75 to i64, !dbg !75 - %arrayidx80 = getelementptr inbounds i8, i8* %line, i64 %tmp9, !dbg !75 - store i8 61, i8* %arrayidx80, align 1, !dbg !76, !tbaa !42 + %arrayidx80 = getelementptr inbounds i8, ptr %line, i64 %tmp9, !dbg !75 + store i8 61, ptr %arrayidx80, align 1, !dbg !76, !tbaa !42 br label %for.end, !dbg !77 if.then84: ; No predecessors! - %arrayidx86 = getelementptr inbounds i8, i8* %input, i64 %indvars.iv, !dbg !78 - %tmp10 = load i8, i8* %arrayidx86, align 1, !dbg !78, !tbaa !42 + %arrayidx86 = getelementptr inbounds i8, ptr %input, i64 %indvars.iv, !dbg !78 + %tmp10 = load i8, ptr %arrayidx86, align 1, !dbg !78, !tbaa !42 %tmp11 = lshr i8 %tmp10, 2, !dbg !82 call void @llvm.dbg.value(metadata i8 %tmp10, metadata !32, metadata !DIExpression(DW_OP_constu, 2, DW_OP_shra, DW_OP_stack_value)), !dbg !83 %addconv.i206 = add nuw nsw i8 %tmp11, 32, !dbg !85 @@ -95,13 +95,13 @@ if.then84: ; No predecessors! %inc92 = add nuw nsw i32 %loffs.0223, 1, !dbg !86 call void @llvm.dbg.value(metadata i32 %inc92, metadata !21, metadata !DIExpression()), !dbg !30 %tmp12 = zext i32 %loffs.0223 to i64, !dbg !87 - %arrayidx94 = getelementptr inbounds i8, i8* %line, i64 %tmp12, !dbg !87 - store i8 %addconv.i206, i8* %arrayidx94, align 1, !dbg !88, !tbaa !42 - %tmp13 = load i8, i8* %arrayidx86, align 1, !dbg !89, !tbaa !42 + %arrayidx94 = getelementptr inbounds i8, ptr %line, i64 %tmp12, !dbg !87 + store i8 %addconv.i206, ptr %arrayidx94, align 1, !dbg !88, !tbaa !42 + %tmp13 = load i8, ptr %arrayidx86, align 1, !dbg !89, !tbaa !42 %shl98 = shl i8 %tmp13, 4, !dbg !90 %tmp14 = add nsw i64 %indvars.iv, 1, !dbg !91 - %arrayidx101 = getelementptr inbounds i8, i8* %input, i64 %tmp14, !dbg !92 - %tmp15 = load i8, i8* %arrayidx101, align 1, !dbg !92, !tbaa !42 + %arrayidx101 = getelementptr inbounds i8, ptr %input, i64 %tmp14, !dbg !92 + %tmp15 = load i8, ptr %arrayidx101, align 1, !dbg !92, !tbaa !42 %tmp16 = ashr i8 %tmp15, 4, !dbg !93 %or104 = or i8 %tmp16, %shl98, !dbg !94 call void @llvm.dbg.value(metadata i8 %or104, metadata !32, metadata !DIExpression()), !dbg !95 @@ -111,9 +111,9 @@ if.then84: ; No predecessors! %inc108 = add nuw nsw i32 %loffs.0223, 2, !dbg !99 call void @llvm.dbg.value(metadata i32 %inc108, metadata !21, metadata !DIExpression()), !dbg !30 %tmp18 = zext i32 %inc92 to i64, !dbg !100 - %arrayidx110 = getelementptr inbounds i8, i8* %line, i64 %tmp18, !dbg !100 - store i8 %addconv.i204, i8* %arrayidx110, align 1, !dbg !101, !tbaa !42 - %tmp19 = load i8, i8* %arrayidx101, align 1, !dbg !102, !tbaa !42 + %arrayidx110 = getelementptr inbounds i8, ptr %line, i64 %tmp18, !dbg !100 + store i8 %addconv.i204, ptr %arrayidx110, align 1, !dbg !101, !tbaa !42 + %tmp19 = load i8, ptr %arrayidx101, align 1, !dbg !102, !tbaa !42 %shl115 = shl i8 %tmp19, 2, !dbg !103 call void @llvm.dbg.value(metadata i8 %shl115, metadata !32, metadata !DIExpression()), !dbg !104 %tmp20 = and i8 %shl115, 60, !dbg !106 @@ -122,18 +122,18 @@ if.then84: ; No predecessors! %inc119 = add nuw nsw i32 %loffs.0223, 3, !dbg !108 call void @llvm.dbg.value(metadata i32 %inc119, metadata !21, metadata !DIExpression()), !dbg !30 %tmp21 = zext i32 %inc108 to i64, !dbg !109 - %arrayidx121 = getelementptr inbounds i8, i8* %line, i64 %tmp21, !dbg !109 - store i8 %addconv.i202, i8* %arrayidx121, align 1, !dbg !110, !tbaa !42 + %arrayidx121 = getelementptr inbounds i8, ptr %line, i64 %tmp21, !dbg !109 + store i8 %addconv.i202, ptr %arrayidx121, align 1, !dbg !110, !tbaa !42 %inc122 = add nuw nsw i32 %loffs.0223, 4, !dbg !111 call void @llvm.dbg.value(metadata i32 %inc122, metadata !21, metadata !DIExpression()), !dbg !30 %tmp22 = zext i32 %inc119 to i64, !dbg !112 - %arrayidx124 = getelementptr inbounds i8, i8* %line, i64 %tmp22, !dbg !112 - store i8 61, i8* %arrayidx124, align 1, !dbg !113, !tbaa !42 + %arrayidx124 = getelementptr inbounds i8, ptr %line, i64 %tmp22, !dbg !112 + store i8 61, ptr %arrayidx124, align 1, !dbg !113, !tbaa !42 br label %for.end, !dbg !114 if.end126: ; preds = %for.body - %arrayidx6 = getelementptr inbounds i8, i8* %input, i64 %indvars.iv, !dbg !115 - %tmp23 = load i8, i8* %arrayidx6, align 1, !dbg !115, !tbaa !42 + %arrayidx6 = getelementptr inbounds i8, ptr %input, i64 %indvars.iv, !dbg !115 + %tmp23 = load i8, ptr %arrayidx6, align 1, !dbg !115, !tbaa !42 %tmp24 = lshr i8 %tmp23, 2, !dbg !117 call void @llvm.dbg.value(metadata i8 %tmp23, metadata !32, metadata !DIExpression(DW_OP_constu, 2, DW_OP_shra, DW_OP_stack_value)), !dbg !118 %addconv.i218 = add nuw nsw i8 %tmp24, 32, !dbg !120 @@ -141,13 +141,13 @@ if.end126: ; preds = %for.body %inc11 = add nuw nsw i32 %loffs.0223, 1, !dbg !121 call void @llvm.dbg.value(metadata i32 %inc11, metadata !21, metadata !DIExpression()), !dbg !30 %tmp25 = zext i32 %loffs.0223 to i64, !dbg !122 - %arrayidx13 = getelementptr inbounds i8, i8* %line, i64 %tmp25, !dbg !122 - store i8 %addconv.i218, i8* %arrayidx13, align 1, !dbg !123, !tbaa !42 - %tmp26 = load i8, i8* %arrayidx6, align 1, !dbg !124, !tbaa !42 + %arrayidx13 = getelementptr inbounds i8, ptr %line, i64 %tmp25, !dbg !122 + store i8 %addconv.i218, ptr %arrayidx13, align 1, !dbg !123, !tbaa !42 + %tmp26 = load i8, ptr %arrayidx6, align 1, !dbg !124, !tbaa !42 %shl = shl i8 %tmp26, 4, !dbg !125 %tmp27 = add nsw i64 %indvars.iv, 1, !dbg !126 - %arrayidx18 = getelementptr inbounds i8, i8* %input, i64 %tmp27, !dbg !127 - %tmp28 = load i8, i8* %arrayidx18, align 1, !dbg !127, !tbaa !42 + %arrayidx18 = getelementptr inbounds i8, ptr %input, i64 %tmp27, !dbg !127 + %tmp28 = load i8, ptr %arrayidx18, align 1, !dbg !127, !tbaa !42 %tmp29 = ashr i8 %tmp28, 4, !dbg !128 %or = or i8 %tmp29, %shl, !dbg !129 call void @llvm.dbg.value(metadata i8 %or, metadata !32, metadata !DIExpression()), !dbg !130 @@ -157,13 +157,13 @@ if.end126: ; preds = %for.body %inc24 = add nuw nsw i32 %loffs.0223, 2, !dbg !134 call void @llvm.dbg.value(metadata i32 %inc24, metadata !21, metadata !DIExpression()), !dbg !30 %tmp31 = zext i32 %inc11 to i64, !dbg !135 - %arrayidx26 = getelementptr inbounds i8, i8* %line, i64 %tmp31, !dbg !135 - store i8 %addconv.i216, i8* %arrayidx26, align 1, !dbg !136, !tbaa !42 - %tmp32 = load i8, i8* %arrayidx18, align 1, !dbg !137, !tbaa !42 + %arrayidx26 = getelementptr inbounds i8, ptr %line, i64 %tmp31, !dbg !135 + store i8 %addconv.i216, ptr %arrayidx26, align 1, !dbg !136, !tbaa !42 + %tmp32 = load i8, ptr %arrayidx18, align 1, !dbg !137, !tbaa !42 %shl31 = shl i8 %tmp32, 2, !dbg !138 %tmp33 = add nsw i64 %indvars.iv, 2, !dbg !139 - %arrayidx34 = getelementptr inbounds i8, i8* %input, i64 %tmp33, !dbg !140 - %tmp34 = load i8, i8* %arrayidx34, align 1, !dbg !140, !tbaa !42 + %arrayidx34 = getelementptr inbounds i8, ptr %input, i64 %tmp33, !dbg !140 + %tmp34 = load i8, ptr %arrayidx34, align 1, !dbg !140, !tbaa !42 %tmp35 = ashr i8 %tmp34, 6, !dbg !141 %or37 = or i8 %tmp35, %shl31, !dbg !142 call void @llvm.dbg.value(metadata i8 %or37, metadata !32, metadata !DIExpression()), !dbg !143 @@ -173,9 +173,9 @@ if.end126: ; preds = %for.body %inc41 = add nuw nsw i32 %loffs.0223, 3, !dbg !147 call void @llvm.dbg.value(metadata i32 %inc41, metadata !21, metadata !DIExpression()), !dbg !30 %tmp37 = zext i32 %inc24 to i64, !dbg !148 - %arrayidx43 = getelementptr inbounds i8, i8* %line, i64 %tmp37, !dbg !148 - store i8 %addconv.i214, i8* %arrayidx43, align 1, !dbg !149, !tbaa !42 - %tmp38 = load i8, i8* %arrayidx34, align 1, !dbg !150, !tbaa !42 + %arrayidx43 = getelementptr inbounds i8, ptr %line, i64 %tmp37, !dbg !148 + store i8 %addconv.i214, ptr %arrayidx43, align 1, !dbg !149, !tbaa !42 + %tmp38 = load i8, ptr %arrayidx34, align 1, !dbg !150, !tbaa !42 call void @llvm.dbg.value(metadata i8 %tmp38, metadata !32, metadata !DIExpression()), !dbg !151 %tmp39 = and i8 %tmp38, 63, !dbg !153 %addconv.i212 = add nuw nsw i8 %tmp39, 32, !dbg !154 @@ -183,8 +183,8 @@ if.end126: ; preds = %for.body %inc49 = add nuw nsw i32 %loffs.0223, 4, !dbg !155 call void @llvm.dbg.value(metadata i32 %inc49, metadata !21, metadata !DIExpression()), !dbg !30 %tmp40 = zext i32 %inc41 to i64, !dbg !156 - %arrayidx51 = getelementptr inbounds i8, i8* %line, i64 %tmp40, !dbg !156 - store i8 %addconv.i212, i8* %arrayidx51, align 1, !dbg !157, !tbaa !42 + %arrayidx51 = getelementptr inbounds i8, ptr %line, i64 %tmp40, !dbg !156 + store i8 %addconv.i212, ptr %arrayidx51, align 1, !dbg !157, !tbaa !42 %indvars.iv.next = add nsw i64 %indvars.iv, 3, !dbg !158 %sub = add nsw i32 %octets.addr.0221, -3, !dbg !159 call void @llvm.dbg.value(metadata i32 %inc49, metadata !21, metadata !DIExpression()), !dbg !30 @@ -199,11 +199,11 @@ for.end: ; preds = %if.end126, %if.then %inc128 = add nsw i32 %loffs.0.lcssa, 1, !dbg !162 call void @llvm.dbg.value(metadata i32 %inc128, metadata !21, metadata !DIExpression()), !dbg !30 %idxprom129 = sext i32 %loffs.0.lcssa to i64, !dbg !163 - %arrayidx130 = getelementptr inbounds i8, i8* %line, i64 %idxprom129, !dbg !163 - store i8 10, i8* %arrayidx130, align 1, !dbg !164, !tbaa !42 + %arrayidx130 = getelementptr inbounds i8, ptr %line, i64 %idxprom129, !dbg !163 + store i8 10, ptr %arrayidx130, align 1, !dbg !164, !tbaa !42 %idxprom131 = sext i32 %inc128 to i64, !dbg !165 - %arrayidx132 = getelementptr inbounds i8, i8* %line, i64 %idxprom131, !dbg !165 - store i8 0, i8* %arrayidx132, align 1, !dbg !166, !tbaa !42 + %arrayidx132 = getelementptr inbounds i8, ptr %line, i64 %idxprom131, !dbg !165 + store i8 0, ptr %arrayidx132, align 1, !dbg !166, !tbaa !42 ret void, !dbg !167 } diff --git a/polly/test/ScopDetectionDiagnostics/loop_partially_in_scop-2.ll b/polly/test/ScopDetectionDiagnostics/loop_partially_in_scop-2.ll index 0adaa358326d..667ed7d18ab5 100644 --- a/polly/test/ScopDetectionDiagnostics/loop_partially_in_scop-2.ll +++ b/polly/test/ScopDetectionDiagnostics/loop_partially_in_scop-2.ll @@ -2,16 +2,16 @@ ; CHECK: remark: <unknown>:0:0: Loop cannot be handled because not all latches are part of loop region. -define void @foo(i8* %str0) { +define void @foo(ptr %str0) { if.end32: br label %while.cond while.cond: - %str.1 = phi i8* [%str0, %if.end32], [%incdec.ptr58364, %lor.end], [%incdec.ptr58364, %while.cond] - %tmp5 = load i8, i8* %str.1, align 1 + %str.1 = phi ptr [%str0, %if.end32], [%incdec.ptr58364, %lor.end], [%incdec.ptr58364, %while.cond] + %tmp5 = load i8, ptr %str.1, align 1 %.off367 = add i8 %tmp5, -48 %tmp6 = icmp ult i8 %.off367, 10 - %incdec.ptr58364 = getelementptr inbounds i8, i8* %str.1, i64 1 + %incdec.ptr58364 = getelementptr inbounds i8, ptr %str.1, i64 1 br i1 %tmp6, label %while.cond, label %lor.end lor.end: diff --git a/polly/test/ScopInfo/20110312-Fail-without-basicaa.ll b/polly/test/ScopInfo/20110312-Fail-without-basicaa.ll index 56a541d24c6f..94dd5824777c 100644 --- a/polly/test/ScopInfo/20110312-Fail-without-basicaa.ll +++ b/polly/test/ScopInfo/20110312-Fail-without-basicaa.ll @@ -8,16 +8,16 @@ entry: br label %entry.split entry.split: ; preds = %entry - store float 0.000000e+00, float* %t.02.reg2mem + store float 0.000000e+00, ptr %t.02.reg2mem br label %for.body for.body: ; preds = %for.body, %entry.split %j.01 = phi i32 [ 0, %entry.split ], [ %inc1, %for.body ] - %t.02.reload = load float, float* %t.02.reg2mem + %t.02.reload = load float, ptr %t.02.reg2mem %inc = fadd float %t.02.reload, 1.000000e+00 %inc1 = add nsw i32 %j.01, 1 %exitcond = icmp eq i32 %inc1, 5000001 - store float %inc, float* %t.02.reg2mem + store float %inc, ptr %t.02.reg2mem br i1 %exitcond, label %for.end, label %for.body for.end: ; preds = %for.body diff --git a/polly/test/ScopInfo/20111108-Parameter-not-detected.ll b/polly/test/ScopInfo/20111108-Parameter-not-detected.ll index b88f6a89e94d..f295c8a57dca 100644 --- a/polly/test/ScopInfo/20111108-Parameter-not-detected.ll +++ b/polly/test/ScopInfo/20111108-Parameter-not-detected.ll @@ -3,7 +3,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 declare void @foo() -define i32 @main(i8* %A) nounwind uwtable { +define i32 @main(ptr %A) nounwind uwtable { entry: br label %for.cond @@ -28,8 +28,8 @@ for.body3: ; preds = %for.cond1 br i1 %cmp4, label %if.then, label %if.end if.then: ; preds = %for.body3 - %arrayidx = getelementptr i8, i8* %A, i64 %indvar - store i8 5, i8* %arrayidx + %arrayidx = getelementptr i8, ptr %A, i64 %indvar + store i8 5, ptr %arrayidx br label %if.end if.end: ; preds = %if.end.single_exit diff --git a/polly/test/ScopInfo/2012-03-16-Crash-because-of-unsigned-in-scev.ll b/polly/test/ScopInfo/2012-03-16-Crash-because-of-unsigned-in-scev.ll index 92118538cce7..b55d635947e5 100644 --- a/polly/test/ScopInfo/2012-03-16-Crash-because-of-unsigned-in-scev.ll +++ b/polly/test/ScopInfo/2012-03-16-Crash-because-of-unsigned-in-scev.ll @@ -4,12 +4,12 @@ target datalayout = "e-p:32:32:32-i64:64:64-i32:32:32-i16:16:16-i1:32:32-f64:64: @array = external global [64 x i8], align 8 -define void @foo(i32* %A) nounwind { +define void @foo(ptr %A) nounwind { entry: br label %if.then132 if.then132: - %loaded = load i32, i32* %A + %loaded = load i32, ptr %A %0 = icmp ugt i32 %loaded, 10 %umax = select i1 %0, i32 %loaded, i32 10 br label %do.body @@ -18,8 +18,8 @@ do.body: %indvar = phi i32 [ %3, %do.body ], [ 0, %if.then132 ] %1 = add i32 0, %umax %2 = sub i32 %1, %indvar - %arrayidx = getelementptr [64 x i8], [64 x i8]* @array, i32 0, i32 %2 - store i8 1, i8* %arrayidx, align 1 + %arrayidx = getelementptr [64 x i8], ptr @array, i32 0, i32 %2 + store i8 1, ptr %arrayidx, align 1 %3 = add i32 %indvar, 1 %exitcond = icmp eq i32 %3, 20 br i1 %exitcond, label %for.end, label %do.body diff --git a/polly/test/ScopInfo/2015-10-04-Crash-in-domain-generation.ll b/polly/test/ScopInfo/2015-10-04-Crash-in-domain-generation.ll index c09266040571..d4d931fd2e0c 100644 --- a/polly/test/ScopInfo/2015-10-04-Crash-in-domain-generation.ll +++ b/polly/test/ScopInfo/2015-10-04-Crash-in-domain-generation.ll @@ -3,7 +3,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @kernel_reg_detect([6 x i32]* %path) { +define void @kernel_reg_detect(ptr %path) { entry: br label %for.body.6 @@ -16,10 +16,8 @@ for.body.6: ; preds = %for.inc.43, %for.bo for.inc.40: ; preds = %for.inc.40, %for.body.6 %indvars.iv = phi i64 [ %indvars.iv.next, %for.inc.40 ], [ 0, %for.body.6 ] %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 - %arrayidx28 = getelementptr inbounds [6 x i32], [6 x i32]* %path, i64 0, i64 0 - %tmp = load i32, i32* %arrayidx28, align 4 - %arrayidx36 = getelementptr inbounds [6 x i32], [6 x i32]* %path, i64 0, i64 0 - store i32 0, i32* %arrayidx36, align 4 + %tmp = load i32, ptr %path, align 4 + store i32 0, ptr %path, align 4 %mul = mul i64 %indvars.iv, %indvars.iv %exitcond22 = icmp ne i64 %mul, 6 br i1 %exitcond22, label %for.inc.40, label %for.inc.43 diff --git a/polly/test/ScopInfo/Alias-0.ll b/polly/test/ScopInfo/Alias-0.ll index 0f0c0447b08f..0fc4ad91b7db 100644 --- a/polly/test/ScopInfo/Alias-0.ll +++ b/polly/test/ScopInfo/Alias-0.ll @@ -4,24 +4,24 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @f(i32* nocapture %a, i32* nocapture %b) nounwind { +define void @f(ptr nocapture %a, ptr nocapture %b) nounwind { bb.nph: %0 = tail call i32 (...) @rnd() nounwind ; <i32> [#uses=1] %1 = icmp eq i32 %0, 0 ; <i1> [#uses=1] - %iftmp.0.0 = select i1 %1, i32* %b, i32* %a ; <i32*> [#uses=2] + %iftmp.0.0 = select i1 %1, ptr %b, ptr %a ; <ptr> [#uses=2] br label %bb3 bb3: ; preds = %bb3, %bb.nph %i.06 = phi i64 [ 0, %bb.nph ], [ %tmp, %bb3 ] ; <i64> [#uses=3] - %scevgep = getelementptr i32, i32* %a, i64 %i.06 ; <i32*> [#uses=1] - %scevgep7 = getelementptr i32, i32* %iftmp.0.0, i64 %i.06 ; <i32*> [#uses=1] + %scevgep = getelementptr i32, ptr %a, i64 %i.06 ; <ptr> [#uses=1] + %scevgep7 = getelementptr i32, ptr %iftmp.0.0, i64 %i.06 ; <ptr> [#uses=1] %tmp = add i64 %i.06, 1 ; <i64> [#uses=3] - %scevgep8 = getelementptr i32, i32* %iftmp.0.0, i64 %tmp ; <i32*> [#uses=1] - %2 = load i32, i32* %scevgep, align 4 ; <i32> [#uses=1] - %3 = load i32, i32* %scevgep8, align 4 ; <i32> [#uses=1] + %scevgep8 = getelementptr i32, ptr %iftmp.0.0, i64 %tmp ; <ptr> [#uses=1] + %2 = load i32, ptr %scevgep, align 4 ; <i32> [#uses=1] + %3 = load i32, ptr %scevgep8, align 4 ; <i32> [#uses=1] %4 = shl i32 %3, 1 ; <i32> [#uses=1] %5 = add nsw i32 %4, %2 ; <i32> [#uses=1] - store i32 %5, i32* %scevgep7, align 4 + store i32 %5, ptr %scevgep7, align 4 %exitcond = icmp eq i64 %tmp, 64 ; <i1> [#uses=1] br i1 %exitcond, label %return, label %bb3 diff --git a/polly/test/ScopInfo/Alias-1.ll b/polly/test/ScopInfo/Alias-1.ll index a06511991c3e..eab8c062f4ba 100644 --- a/polly/test/ScopInfo/Alias-1.ll +++ b/polly/test/ScopInfo/Alias-1.ll @@ -4,25 +4,25 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @f(i32* nocapture %a, i32* nocapture %b) nounwind { +define void @f(ptr nocapture %a, ptr nocapture %b) nounwind { bb.nph: %0 = tail call i32 (...) @rnd() nounwind ; <i32> [#uses=1] %1 = icmp eq i32 %0, 0 ; <i1> [#uses=1] - %sel.b = getelementptr inbounds i32, i32* %b, i64 4 - %iftmp.0.0 = select i1 %1, i32* %sel.b, i32* %a ; <i32*> [#uses=2] + %sel.b = getelementptr inbounds i32, ptr %b, i64 4 + %iftmp.0.0 = select i1 %1, ptr %sel.b, ptr %a ; <ptr> [#uses=2] br label %bb3 bb3: ; preds = %bb3, %bb.nph %i.06 = phi i64 [ 0, %bb.nph ], [ %tmp, %bb3 ] ; <i64> [#uses=3] - %scevgep = getelementptr i32, i32* %a, i64 %i.06 ; <i32*> [#uses=1] - %scevgep7 = getelementptr i32, i32* %iftmp.0.0, i64 %i.06 ; <i32*> [#uses=1] + %scevgep = getelementptr i32, ptr %a, i64 %i.06 ; <ptr> [#uses=1] + %scevgep7 = getelementptr i32, ptr %iftmp.0.0, i64 %i.06 ; <ptr> [#uses=1] %tmp = add i64 %i.06, 1 ; <i64> [#uses=3] - %scevgep8 = getelementptr i32, i32* %iftmp.0.0, i64 %tmp ; <i32*> [#uses=1] - %2 = load i32, i32* %scevgep, align 4 ; <i32> [#uses=1] - %3 = load i32, i32* %scevgep8, align 4 ; <i32> [#uses=1] + %scevgep8 = getelementptr i32, ptr %iftmp.0.0, i64 %tmp ; <ptr> [#uses=1] + %2 = load i32, ptr %scevgep, align 4 ; <i32> [#uses=1] + %3 = load i32, ptr %scevgep8, align 4 ; <i32> [#uses=1] %4 = shl i32 %3, 1 ; <i32> [#uses=1] %5 = add nsw i32 %4, %2 ; <i32> [#uses=1] - store i32 %5, i32* %scevgep7, align 4 + store i32 %5, ptr %scevgep7, align 4 %exitcond = icmp eq i64 %tmp, 64 ; <i1> [#uses=1] br i1 %exitcond, label %return, label %bb3 diff --git a/polly/test/ScopInfo/Alias-2.ll b/polly/test/ScopInfo/Alias-2.ll index e007985e170b..64f1e0bc919d 100644 --- a/polly/test/ScopInfo/Alias-2.ll +++ b/polly/test/ScopInfo/Alias-2.ll @@ -4,26 +4,26 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @f(i32** nocapture %ptrs, i64 %p0, i64 %p1, i64 %p2) nounwind { +define void @f(ptr nocapture %ptrs, i64 %p0, i64 %p1, i64 %p2) nounwind { bb.nph: - %0 = getelementptr inbounds i32*, i32** %ptrs, i64 %p0 ; <i32**> [#uses=1] - %1 = load i32*, i32** %0, align 8 ; <i32*> [#uses=1] - %2 = getelementptr inbounds i32*, i32** %ptrs, i64 %p1 ; <i32**> [#uses=1] - %3 = load i32*, i32** %2, align 8 ; <i32*> [#uses=1] - %4 = getelementptr inbounds i32*, i32** %ptrs, i64 %p2 ; <i32**> [#uses=1] - %5 = load i32*, i32** %4, align 8 ; <i32*> [#uses=1] + %0 = getelementptr inbounds ptr, ptr %ptrs, i64 %p0 ; <ptr> [#uses=1] + %1 = load ptr, ptr %0, align 8 ; <ptr> [#uses=1] + %2 = getelementptr inbounds ptr, ptr %ptrs, i64 %p1 ; <ptr> [#uses=1] + %3 = load ptr, ptr %2, align 8 ; <ptr> [#uses=1] + %4 = getelementptr inbounds ptr, ptr %ptrs, i64 %p2 ; <ptr> [#uses=1] + %5 = load ptr, ptr %4, align 8 ; <ptr> [#uses=1] br label %bb bb: ; preds = %bb, %bb.nph %i.03 = phi i64 [ 0, %bb.nph ], [ %tmp, %bb ] ; <i64> [#uses=3] - %scevgep = getelementptr i32, i32* %3, i64 %i.03 ; <i32*> [#uses=1] - %scevgep4 = getelementptr i32, i32* %5, i64 %i.03 ; <i32*> [#uses=1] + %scevgep = getelementptr i32, ptr %3, i64 %i.03 ; <ptr> [#uses=1] + %scevgep4 = getelementptr i32, ptr %5, i64 %i.03 ; <ptr> [#uses=1] %tmp = add i64 %i.03, 1 ; <i64> [#uses=3] - %scevgep5 = getelementptr i32, i32* %1, i64 %tmp ; <i32*> [#uses=1] - %6 = load i32, i32* %scevgep, align 4 ; <i32> [#uses=1] - %7 = load i32, i32* %scevgep4, align 4 ; <i32> [#uses=1] + %scevgep5 = getelementptr i32, ptr %1, i64 %tmp ; <ptr> [#uses=1] + %6 = load i32, ptr %scevgep, align 4 ; <i32> [#uses=1] + %7 = load i32, ptr %scevgep4, align 4 ; <i32> [#uses=1] %8 = add nsw i32 %7, %6 ; <i32> [#uses=1] - store i32 %8, i32* %scevgep5, align 4 + store i32 %8, ptr %scevgep5, align 4 %exitcond = icmp eq i64 %tmp, 64 ; <i1> [#uses=1] br i1 %exitcond, label %return, label %bb diff --git a/polly/test/ScopInfo/Alias-3.ll b/polly/test/ScopInfo/Alias-3.ll index e4d107c62c59..5e9b94e692bc 100644 --- a/polly/test/ScopInfo/Alias-3.ll +++ b/polly/test/ScopInfo/Alias-3.ll @@ -4,17 +4,17 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @f(i32* nocapture %a, i32* nocapture %b) nounwind { +define void @f(ptr nocapture %a, ptr nocapture %b) nounwind { bb.nph: br label %bb bb: ; preds = %bb, %bb.nph %i.03 = phi i64 [ 0, %bb.nph ], [ %2, %bb ] ; <i64> [#uses=3] - %scevgep = getelementptr i32, i32* %b, i64 %i.03 ; <i32*> [#uses=1] - %scevgep4 = getelementptr i32, i32* %a, i64 %i.03 ; <i32*> [#uses=1] - %0 = load i32, i32* %scevgep, align 4 ; <i32> [#uses=1] + %scevgep = getelementptr i32, ptr %b, i64 %i.03 ; <ptr> [#uses=1] + %scevgep4 = getelementptr i32, ptr %a, i64 %i.03 ; <ptr> [#uses=1] + %0 = load i32, ptr %scevgep, align 4 ; <i32> [#uses=1] %1 = add nsw i32 %0, 2 ; <i32> [#uses=1] - store i32 %1, i32* %scevgep4, align 4 + store i32 %1, ptr %scevgep4, align 4 %2 = add nsw i64 %i.03, 1 ; <i64> [#uses=2] %exitcond = icmp eq i64 %2, 128 ; <i1> [#uses=1] br i1 %exitcond, label %return, label %bb diff --git a/polly/test/ScopInfo/Alias-4.ll b/polly/test/ScopInfo/Alias-4.ll index e1874063b7bc..4d5a91abb96f 100644 --- a/polly/test/ScopInfo/Alias-4.ll +++ b/polly/test/ScopInfo/Alias-4.ll @@ -4,17 +4,17 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @f(i32* noalias nocapture %a, i32* noalias nocapture %b) nounwind { +define void @f(ptr noalias nocapture %a, ptr noalias nocapture %b) nounwind { bb.nph: br label %bb bb: ; preds = %bb, %bb.nph %i.03 = phi i64 [ 0, %bb.nph ], [ %2, %bb ] ; <i64> [#uses=3] - %scevgep = getelementptr i32, i32* %b, i64 %i.03 ; <i32*> [#uses=1] - %scevgep4 = getelementptr i32, i32* %a, i64 %i.03 ; <i32*> [#uses=1] - %0 = load i32, i32* %scevgep, align 4 ; <i32> [#uses=1] + %scevgep = getelementptr i32, ptr %b, i64 %i.03 ; <ptr> [#uses=1] + %scevgep4 = getelementptr i32, ptr %a, i64 %i.03 ; <ptr> [#uses=1] + %0 = load i32, ptr %scevgep, align 4 ; <i32> [#uses=1] %1 = add nsw i32 %0, 2 ; <i32> [#uses=1] - store i32 %1, i32* %scevgep4, align 4 + store i32 %1, ptr %scevgep4, align 4 %2 = add nsw i64 %i.03, 1 ; <i64> [#uses=2] %exitcond = icmp eq i64 %2, 128 ; <i1> [#uses=1] br i1 %exitcond, label %return, label %bb diff --git a/polly/test/ScopInfo/BoundChecks/single-loop.ll b/polly/test/ScopInfo/BoundChecks/single-loop.ll index 24b5b35e41b1..bc96c907afc9 100644 --- a/polly/test/ScopInfo/BoundChecks/single-loop.ll +++ b/polly/test/ScopInfo/BoundChecks/single-loop.ll @@ -38,7 +38,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @foo(i64 %n, float* %A) #0 { +define void @foo(i64 %n, ptr %A) #0 { entry: br label %for.cond @@ -64,10 +64,10 @@ if.then.3: ; preds = %if.end if.end.4: ; preds = %if.end %conv = sitofp i64 %i.0 to float - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp = load float, ptr %arrayidx, align 4 %add = fadd float %tmp, %conv - store float %add, float* %arrayidx, align 4 + store float %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %if.end.4 diff --git a/polly/test/ScopInfo/BoundChecks/two-loops.ll b/polly/test/ScopInfo/BoundChecks/two-loops.ll index b1e7e1304797..14e07f42a3ae 100644 --- a/polly/test/ScopInfo/BoundChecks/two-loops.ll +++ b/polly/test/ScopInfo/BoundChecks/two-loops.ll @@ -35,7 +35,7 @@ ; AST: { /* original code */ } target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %n, float* %A) #0 { +define void @foo(i64 %n, ptr %A) #0 { entry: br label %for.cond @@ -69,10 +69,10 @@ if.then.6: ; preds = %if.end if.end.7: ; preds = %if.end %conv = sitofp i64 %i.0 to float - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp = load float, ptr %arrayidx, align 4 %add = fadd float %tmp, %conv - store float %add, float* %arrayidx, align 4 + store float %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %if.end.7 diff --git a/polly/test/ScopInfo/NonAffine/div_backedge.ll b/polly/test/ScopInfo/NonAffine/div_backedge.ll index c89be9d72122..a6aca032ef62 100644 --- a/polly/test/ScopInfo/NonAffine/div_backedge.ll +++ b/polly/test/ScopInfo/NonAffine/div_backedge.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A) { +define void @foo(ptr %A) { entry: br label %for.cond @@ -22,10 +22,10 @@ for.cond: ; preds = %for.inc, %entry br label %for.body for.body: ; preds = %for.cond - %arrayidx0 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp0 = load float, float* %arrayidx0, align 4 + %arrayidx0 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp0 = load float, ptr %arrayidx0, align 4 %add0 = fadd float %tmp0, 2.000000e+00 - store float %add0, float* %arrayidx0, align 4 + store float %add0, ptr %arrayidx0, align 4 %rem1 = sdiv i64 %i.0, 7 %tobool = icmp eq i64 %rem1, 4 br i1 %tobool, label %for.end, label %if.end diff --git a/polly/test/ScopInfo/NonAffine/div_domain.ll b/polly/test/ScopInfo/NonAffine/div_domain.ll index 678467d4fcde..f61c4eb459ed 100644 --- a/polly/test/ScopInfo/NonAffine/div_domain.ll +++ b/polly/test/ScopInfo/NonAffine/div_domain.ll @@ -31,7 +31,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A) { +define void @foo(ptr %A) { entry: br label %for.cond @@ -41,19 +41,19 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx0 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp0 = load float, float* %arrayidx0, align 4 + %arrayidx0 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp0 = load float, ptr %arrayidx0, align 4 %add0 = fadd float %tmp0, 2.000000e+00 - store float %add0, float* %arrayidx0, align 4 + store float %add0, ptr %arrayidx0, align 4 %rem1 = sdiv i64 %i.0, 2 %tobool = icmp ne i64 %rem1, 3 br i1 %tobool, label %if.end, label %if.then if.then: ; preds = %for.body - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp = load float, ptr %arrayidx, align 4 %add = fadd float %tmp, 2.000000e+00 - store float %add, float* %arrayidx, align 4 + store float %add, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %for.body, %if.then diff --git a/polly/test/ScopInfo/NonAffine/invariant_loads_dependent_in_non_affine_region.ll b/polly/test/ScopInfo/NonAffine/invariant_loads_dependent_in_non_affine_region.ll index 2cc9c4c8b0b6..f5d63dfb9d2c 100644 --- a/polly/test/ScopInfo/NonAffine/invariant_loads_dependent_in_non_affine_region.ll +++ b/polly/test/ScopInfo/NonAffine/invariant_loads_dependent_in_non_affine_region.ll @@ -23,7 +23,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %B, i32* %C) { +define void @f(ptr %A, ptr %B, ptr %C) { entry: br label %for.cond @@ -33,16 +33,16 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp = load i32, i32* %arrayidx, align 4 - %tmp1 = load i32, i32* %B, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp = load i32, ptr %arrayidx, align 4 + %tmp1 = load i32, ptr %B, align 4 %cmp1 = icmp eq i32 %tmp, %tmp1 br i1 %cmp1, label %if.then, label %if.end if.then: ; preds = %for.body - %tmp2 = load i32, i32* %C, align 4 - %arrayidx3 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp2, i32* %arrayidx3, align 4 + %tmp2 = load i32, ptr %C, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp2, ptr %arrayidx3, align 4 br label %if.end if.end: ; preds = %if.then, %for.body diff --git a/polly/test/ScopInfo/NonAffine/modulo_backedge.ll b/polly/test/ScopInfo/NonAffine/modulo_backedge.ll index db46bf2ef48e..dec63ca6813d 100644 --- a/polly/test/ScopInfo/NonAffine/modulo_backedge.ll +++ b/polly/test/ScopInfo/NonAffine/modulo_backedge.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A) { +define void @foo(ptr %A) { entry: br label %for.cond @@ -22,10 +22,10 @@ for.cond: ; preds = %for.inc, %entry br label %for.body for.body: ; preds = %for.cond - %arrayidx0 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp0 = load float, float* %arrayidx0, align 4 + %arrayidx0 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp0 = load float, ptr %arrayidx0, align 4 %add0 = fadd float %tmp0, 2.000000e+00 - store float %add0, float* %arrayidx0, align 4 + store float %add0, ptr %arrayidx0, align 4 %rem1 = srem i64 %i.0, 7 %tobool = icmp eq i64 %rem1, 0 br i1 %tobool, label %for.end, label %if.end diff --git a/polly/test/ScopInfo/NonAffine/modulo_domain.ll b/polly/test/ScopInfo/NonAffine/modulo_domain.ll index 5636ce53d916..f5ebec2b0346 100644 --- a/polly/test/ScopInfo/NonAffine/modulo_domain.ll +++ b/polly/test/ScopInfo/NonAffine/modulo_domain.ll @@ -18,7 +18,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A) { +define void @foo(ptr %A) { entry: br label %for.cond @@ -28,19 +28,19 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx0 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp0 = load float, float* %arrayidx0, align 4 + %arrayidx0 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp0 = load float, ptr %arrayidx0, align 4 %add0 = fadd float %tmp0, 2.000000e+00 - store float %add0, float* %arrayidx0, align 4 + store float %add0, ptr %arrayidx0, align 4 %rem1 = srem i64 %i.0, 2 %tobool = icmp eq i64 %rem1, 0 br i1 %tobool, label %if.end, label %if.then if.then: ; preds = %for.body - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp = load float, ptr %arrayidx, align 4 %add = fadd float %tmp, 2.000000e+00 - store float %add, float* %arrayidx, align 4 + store float %add, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %for.body, %if.then diff --git a/polly/test/ScopInfo/NonAffine/non-affine-loop-condition-dependent-access_1.ll b/polly/test/ScopInfo/NonAffine/non-affine-loop-condition-dependent-access_1.ll index eebeb5c0b9c6..837d9b21b16e 100644 --- a/polly/test/ScopInfo/NonAffine/non-affine-loop-condition-dependent-access_1.ll +++ b/polly/test/ScopInfo/NonAffine/non-affine-loop-condition-dependent-access_1.ll @@ -50,7 +50,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* noalias %A, i32* noalias %C) { +define void @f(ptr noalias %A, ptr noalias %C) { bb: br label %bb1 @@ -63,17 +63,17 @@ bb2: ; preds = %bb1 br label %bb3 bb3: ; preds = %bb6, %bb2 - %tmp = getelementptr inbounds i32, i32* %C, i64 %indvars.iv - %tmp4 = load i32, i32* %tmp, align 4 + %tmp = getelementptr inbounds i32, ptr %C, i64 %indvars.iv + %tmp4 = load i32, ptr %tmp, align 4 %tmp5 = icmp eq i32 %tmp4, 0 br i1 %tmp5, label %bb11, label %bb6 bb6: ; preds = %bb3 %tmp7 = sext i32 %tmp4 to i64 - %tmp8 = getelementptr inbounds i32, i32* %A, i64 %tmp7 - %tmp9 = load i32, i32* %tmp8, align 4 + %tmp8 = getelementptr inbounds i32, ptr %A, i64 %tmp7 + %tmp9 = load i32, ptr %tmp8, align 4 %tmp10 = add nsw i32 %tmp9, 1 - store i32 %tmp10, i32* %tmp8, align 4 + store i32 %tmp10, ptr %tmp8, align 4 br i1 true, label %bb11, label %bb3 bb11: ; preds = %bb3 diff --git a/polly/test/ScopInfo/NonAffine/non-affine-loop-condition-dependent-access_2.ll b/polly/test/ScopInfo/NonAffine/non-affine-loop-condition-dependent-access_2.ll index 811a380d3e55..f2574b77d6e5 100644 --- a/polly/test/ScopInfo/NonAffine/non-affine-loop-condition-dependent-access_2.ll +++ b/polly/test/ScopInfo/NonAffine/non-affine-loop-condition-dependent-access_2.ll @@ -103,7 +103,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { bb: br label %bb11 @@ -131,15 +131,15 @@ bb15: ; preds = %bb24, %bb14 br i1 %exitcond, label %bb16, label %bb25 bb16: ; preds = %bb15 - %tmp = getelementptr inbounds i32, i32* %A, i64 %indvars.iv8 - %tmp17 = load i32, i32* %tmp, align 4 - %tmp18 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv5 - %tmp19 = load i32, i32* %tmp18, align 4 + %tmp = getelementptr inbounds i32, ptr %A, i64 %indvars.iv8 + %tmp17 = load i32, ptr %tmp, align 4 + %tmp18 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv5 + %tmp19 = load i32, ptr %tmp18, align 4 %tmp20 = add nsw i32 %tmp17, %tmp19 - %tmp21 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp22 = load i32, i32* %tmp21, align 4 + %tmp21 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp22 = load i32, ptr %tmp21, align 4 %tmp23 = add nsw i32 %tmp22, %tmp20 - store i32 %tmp23, i32* %tmp21, align 4 + store i32 %tmp23, ptr %tmp21, align 4 br label %bb24 bb24: ; preds = %bb16 diff --git a/polly/test/ScopInfo/NonAffine/non-affine-loop-condition-dependent-access_3.ll b/polly/test/ScopInfo/NonAffine/non-affine-loop-condition-dependent-access_3.ll index 8beca1654a53..b11675b3662f 100644 --- a/polly/test/ScopInfo/NonAffine/non-affine-loop-condition-dependent-access_3.ll +++ b/polly/test/ScopInfo/NonAffine/non-affine-loop-condition-dependent-access_3.ll @@ -103,7 +103,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { bb: br label %bb11 @@ -132,15 +132,15 @@ bb15: ; preds = %bb24, %bb14 br i1 %exitcond, label %bb16, label %bb25 bb16: ; preds = %bb15 - %tmp = getelementptr inbounds i32, i32* %A, i64 %indvars.iv8 - %tmp17 = load i32, i32* %tmp, align 4 - %tmp18 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv5 - %tmp19 = load i32, i32* %tmp18, align 4 + %tmp = getelementptr inbounds i32, ptr %A, i64 %indvars.iv8 + %tmp17 = load i32, ptr %tmp, align 4 + %tmp18 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv5 + %tmp19 = load i32, ptr %tmp18, align 4 %tmp20 = add nsw i32 %tmp17, %tmp19 - %tmp21 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp22 = load i32, i32* %tmp21, align 4 + %tmp21 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp22 = load i32, ptr %tmp21, align 4 %tmp23 = add nsw i32 %tmp22, %tmp20 - store i32 %tmp23, i32* %tmp21, align 4 + store i32 %tmp23, ptr %tmp21, align 4 br label %bb24 bb24: ; preds = %bb16 diff --git a/polly/test/ScopInfo/NonAffine/non_affine_access_with_range_2.ll b/polly/test/ScopInfo/NonAffine/non_affine_access_with_range_2.ll index 96bc327e3247..34b04933af86 100644 --- a/polly/test/ScopInfo/NonAffine/non_affine_access_with_range_2.ll +++ b/polly/test/ScopInfo/NonAffine/non_affine_access_with_range_2.ll @@ -20,7 +20,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { bb: br label %bb4 @@ -39,10 +39,10 @@ bb6: ; preds = %bb11, %bb5 bb7: ; preds = %bb6 %tmp = mul nsw i64 %indvars.iv1, %indvars.iv - %tmp8 = getelementptr inbounds i32, i32* %A, i64 %tmp - %tmp9 = load i32, i32* %tmp8, align 4 + %tmp8 = getelementptr inbounds i32, ptr %A, i64 %tmp + %tmp9 = load i32, ptr %tmp8, align 4 %tmp10 = add nsw i32 %tmp9, 1 - store i32 %tmp10, i32* %tmp8, align 4 + store i32 %tmp10, ptr %tmp8, align 4 br label %bb11 bb11: ; preds = %bb7 diff --git a/polly/test/ScopInfo/NonAffine/non_affine_but_sdiv.ll b/polly/test/ScopInfo/NonAffine/non_affine_but_sdiv.ll index 015356c5e2f7..9955c88b2cfd 100644 --- a/polly/test/ScopInfo/NonAffine/non_affine_but_sdiv.ll +++ b/polly/test/ScopInfo/NonAffine/non_affine_but_sdiv.ll @@ -21,7 +21,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -36,17 +36,17 @@ for.body: ; preds = %for.cond %tmp1 = trunc i64 %indvars.iv to i32 %add = add nsw i32 %tmp1, %div %idxprom = sext i32 %add to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + %tmp2 = load i32, ptr %arrayidx, align 4 %div1 = sdiv i32 %N, -5 %tmp3 = trunc i64 %indvars.iv to i32 %add2 = add nsw i32 %tmp3, %div1 %idxprom3 = sext i32 %add2 to i64 - %arrayidx4 = getelementptr inbounds i32, i32* %A, i64 %idxprom3 - %tmp4 = load i32, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %A, i64 %idxprom3 + %tmp4 = load i32, ptr %arrayidx4, align 4 %add5 = add nsw i32 %tmp2, %tmp4 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %add5, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %add5, ptr %arrayidx7, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/NonAffine/non_affine_but_srem.ll b/polly/test/ScopInfo/NonAffine/non_affine_but_srem.ll index ab90638c5022..b194ee762e9f 100644 --- a/polly/test/ScopInfo/NonAffine/non_affine_but_srem.ll +++ b/polly/test/ScopInfo/NonAffine/non_affine_but_srem.ll @@ -37,7 +37,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @pos(float* %A, i64 %n) { +define void @pos(ptr %A, i64 %n) { bb: br label %bb1 @@ -48,10 +48,10 @@ bb1: ; preds = %bb6, %bb bb2: ; preds = %bb1 %tmp = srem i64 %n, 42 - %tmp3 = getelementptr inbounds float, float* %A, i64 %tmp - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A, i64 %tmp + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, 1.000000e+00 - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 br label %bb6 bb6: ; preds = %bb2 @@ -62,7 +62,7 @@ bb8: ; preds = %bb1 ret void } -define void @neg(float* %A, i64 %n) { +define void @neg(ptr %A, i64 %n) { bb: br label %bb1 @@ -73,10 +73,10 @@ bb1: ; preds = %bb6, %bb bb2: ; preds = %bb1 %tmp = srem i64 %n, -42 - %tmp3 = getelementptr inbounds float, float* %A, i64 %tmp - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A, i64 %tmp + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, 1.000000e+00 - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 br label %bb6 bb6: ; preds = %bb2 diff --git a/polly/test/ScopInfo/NonAffine/non_affine_conditional_nested.ll b/polly/test/ScopInfo/NonAffine/non_affine_conditional_nested.ll index 369fe9464cde..1f55530b137d 100644 --- a/polly/test/ScopInfo/NonAffine/non_affine_conditional_nested.ll +++ b/polly/test/ScopInfo/NonAffine/non_affine_conditional_nested.ll @@ -25,7 +25,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { bb: br label %bb1 @@ -35,24 +35,24 @@ bb1: ; preds = %bb17, %bb br i1 %exitcond, label %bb2, label %bb18 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp3 = load i32, i32* %tmp, align 4 + %tmp = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp3 = load i32, ptr %tmp, align 4 %tmp4 = icmp eq i32 %tmp3, 0 br i1 %tmp4, label %bb16, label %bb5 bb5: ; preds = %bb2 %tmp6 = add nsw i64 %indvars.iv, -1 - %tmp7 = getelementptr inbounds i32, i32* %A, i64 %tmp6 - %tmp8 = load i32, i32* %tmp7, align 4 + %tmp7 = getelementptr inbounds i32, ptr %A, i64 %tmp6 + %tmp8 = load i32, ptr %tmp7, align 4 %tmp9 = icmp eq i32 %tmp8, 0 br i1 %tmp9, label %bb15, label %bb10 bb10: ; preds = %bb5 %tmp11 = add nsw i64 %indvars.iv, -2 - %tmp12 = getelementptr inbounds i32, i32* %A, i64 %tmp11 - %tmp13 = load i32, i32* %tmp12, align 4 - %tmp14 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp13, i32* %tmp14, align 4 + %tmp12 = getelementptr inbounds i32, ptr %A, i64 %tmp11 + %tmp13 = load i32, ptr %tmp12, align 4 + %tmp14 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp13, ptr %tmp14, align 4 br label %bb15 bb15: ; preds = %bb5, %bb10 diff --git a/polly/test/ScopInfo/NonAffine/non_affine_conditional_surrounding_affine_loop.ll b/polly/test/ScopInfo/NonAffine/non_affine_conditional_surrounding_affine_loop.ll index 5009e8d6ed51..3511362304b4 100644 --- a/polly/test/ScopInfo/NonAffine/non_affine_conditional_surrounding_affine_loop.ll +++ b/polly/test/ScopInfo/NonAffine/non_affine_conditional_surrounding_affine_loop.ll @@ -107,7 +107,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { bb: %tmp = sext i32 %N to i64 br label %bb3 @@ -118,8 +118,8 @@ bb3: ; preds = %bb18, %bb br i1 %exitcond, label %bb4, label %bb19 bb4: ; preds = %bb3 - %tmp5 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv1 - %tmp6 = load i32, i32* %tmp5, align 4 + %tmp5 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv1 + %tmp6 = load i32, ptr %tmp5, align 4 %tmp7 = icmp eq i32 %tmp6, 0 br i1 %tmp7, label %bb17, label %bb8 @@ -132,10 +132,10 @@ bb9: ; preds = %bb15, %bb8 br i1 %tmp10, label %bb11, label %bb16 bb11: ; preds = %bb9 - %tmp12 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp13 = load i32, i32* %tmp12, align 4 + %tmp12 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp13 = load i32, ptr %tmp12, align 4 %tmp14 = add nsw i32 %tmp13, 1 - store i32 %tmp14, i32* %tmp12, align 4 + store i32 %tmp14, ptr %tmp12, align 4 br label %bb15 bb15: ; preds = %bb11 diff --git a/polly/test/ScopInfo/NonAffine/non_affine_conditional_surrounding_non_affine_loop.ll b/polly/test/ScopInfo/NonAffine/non_affine_conditional_surrounding_non_affine_loop.ll index 75fcd69432af..c2e1e46f6f18 100644 --- a/polly/test/ScopInfo/NonAffine/non_affine_conditional_surrounding_non_affine_loop.ll +++ b/polly/test/ScopInfo/NonAffine/non_affine_conditional_surrounding_non_affine_loop.ll @@ -113,7 +113,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { bb: %tmp = sext i32 %N to i64 br label %bb3 @@ -124,8 +124,8 @@ bb3: ; preds = %bb19, %bb br i1 %exitcond, label %bb4, label %bb20 bb4: ; preds = %bb3 - %tmp5 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv1 - %tmp6 = load i32, i32* %tmp5, align 4 + %tmp5 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv1 + %tmp6 = load i32, ptr %tmp5, align 4 %tmp7 = icmp eq i32 %tmp6, 0 br i1 %tmp7, label %bb18, label %bb8 @@ -139,10 +139,10 @@ bb9: ; preds = %bb16, %bb8 br i1 %tmp11, label %bb12, label %bb17 bb12: ; preds = %bb9 - %tmp13 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp14 = load i32, i32* %tmp13, align 4 + %tmp13 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp14 = load i32, ptr %tmp13, align 4 %tmp15 = add nsw i32 %tmp14, 1 - store i32 %tmp15, i32* %tmp13, align 4 + store i32 %tmp15, ptr %tmp13, align 4 br label %bb16 bb16: ; preds = %bb12 diff --git a/polly/test/ScopInfo/NonAffine/non_affine_float_compare.ll b/polly/test/ScopInfo/NonAffine/non_affine_float_compare.ll index d24b7fb249e7..c62447b6c15c 100644 --- a/polly/test/ScopInfo/NonAffine/non_affine_float_compare.ll +++ b/polly/test/ScopInfo/NonAffine/non_affine_float_compare.ll @@ -42,7 +42,7 @@ ; CHECK-NEXT: } target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(float* %A) { +define void @f(ptr %A) { bb: br label %bb1 @@ -52,19 +52,19 @@ bb1: ; preds = %bb13, %bb br i1 %exitcond, label %bb2, label %bb14 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds float, float* %A, i64 %indvars.iv - %tmp3 = load float, float* %tmp, align 4 + %tmp = getelementptr inbounds float, ptr %A, i64 %indvars.iv + %tmp3 = load float, ptr %tmp, align 4 %tmp4 = add nsw i64 %indvars.iv, -1 - %tmp5 = getelementptr inbounds float, float* %A, i64 %tmp4 - %tmp6 = load float, float* %tmp5, align 4 + %tmp5 = getelementptr inbounds float, ptr %A, i64 %tmp4 + %tmp6 = load float, ptr %tmp5, align 4 %tmp7 = fcmp oeq float %tmp3, %tmp6 br i1 %tmp7, label %bb8, label %bb12 bb8: ; preds = %bb2 - %tmp9 = getelementptr inbounds float, float* %A, i64 %indvars.iv - %tmp10 = load float, float* %tmp9, align 4 + %tmp9 = getelementptr inbounds float, ptr %A, i64 %indvars.iv + %tmp10 = load float, ptr %tmp9, align 4 %tmp11 = fadd float %tmp10, 1.000000e+00 - store float %tmp11, float* %tmp9, align 4 + store float %tmp11, ptr %tmp9, align 4 br label %bb12 bb12: ; preds = %bb8, %bb2 diff --git a/polly/test/ScopInfo/NonAffine/non_affine_loop_condition.ll b/polly/test/ScopInfo/NonAffine/non_affine_loop_condition.ll index eb4cb844627a..873b44b9c8cf 100644 --- a/polly/test/ScopInfo/NonAffine/non_affine_loop_condition.ll +++ b/polly/test/ScopInfo/NonAffine/non_affine_loop_condition.ll @@ -50,7 +50,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %C) { +define void @f(ptr %A, ptr %C) { bb: br label %bb1 @@ -63,16 +63,16 @@ bb2: ; preds = %bb1 br label %bb3 bb3: ; preds = %bb6, %bb2 - %tmp = getelementptr inbounds i32, i32* %C, i64 %indvars.iv - %tmp4 = load i32, i32* %tmp, align 4 + %tmp = getelementptr inbounds i32, ptr %C, i64 %indvars.iv + %tmp4 = load i32, ptr %tmp, align 4 %tmp5 = icmp eq i32 %tmp4, 0 br i1 %tmp5, label %bb10, label %bb6 bb6: ; preds = %bb3 - %tmp7 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp8 = load i32, i32* %tmp7, align 4 + %tmp7 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp8 = load i32, ptr %tmp7, align 4 %tmp9 = add nsw i32 %tmp8, 1 - store i32 %tmp9, i32* %tmp7, align 4 + store i32 %tmp9, ptr %tmp7, align 4 br label %bb3 bb10: ; preds = %bb3 diff --git a/polly/test/ScopInfo/NonAffine/non_affine_loop_used_later.ll b/polly/test/ScopInfo/NonAffine/non_affine_loop_used_later.ll index 135100ca60f3..127bf80b9451 100644 --- a/polly/test/ScopInfo/NonAffine/non_affine_loop_used_later.ll +++ b/polly/test/ScopInfo/NonAffine/non_affine_loop_used_later.ll @@ -97,7 +97,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N, i32 %M) { +define void @f(ptr %A, i32 %N, i32 %M) { bb: %tmp = icmp sgt i32 %M, 0 %smax = select i1 %tmp, i32 %M, i32 0 @@ -111,8 +111,8 @@ bb2: ; preds = %bb23, %bb br i1 %tmp3, label %bb4, label %bb24 bb4: ; preds = %bb2 - %tmp5 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp6 = load i32, i32* %tmp5, align 4 + %tmp5 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp6 = load i32, ptr %tmp5, align 4 %tmp7 = icmp eq i32 %tmp6, 0 br i1 %tmp7, label %bb18, label %bb8 @@ -125,10 +125,10 @@ bb9: ; preds = %bb15, %bb8 br i1 %tmp10, label %bb11, label %bb17 bb11: ; preds = %bb9 - %tmp12 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp13 = load i32, i32* %tmp12, align 4 + %tmp12 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp13 = load i32, ptr %tmp12, align 4 %tmp14 = add nsw i32 %tmp13, 1 - store i32 %tmp14, i32* %tmp12, align 4 + store i32 %tmp14, ptr %tmp12, align 4 br label %bb15 bb15: ; preds = %bb11 @@ -141,10 +141,10 @@ bb17: ; preds = %bb9 bb18: ; preds = %bb4, %bb17 %j.2 = phi i32 [ %smax, %bb17 ], [ %j.0, %bb4 ] %tmp19 = sext i32 %j.2 to i64 - %tmp20 = getelementptr inbounds i32, i32* %A, i64 %tmp19 - %tmp21 = load i32, i32* %tmp20, align 4 - %tmp22 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp21, i32* %tmp22, align 4 + %tmp20 = getelementptr inbounds i32, ptr %A, i64 %tmp19 + %tmp21 = load i32, ptr %tmp20, align 4 + %tmp22 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp21, ptr %tmp22, align 4 br label %bb23 bb23: ; preds = %bb18 diff --git a/polly/test/ScopInfo/NonAffine/non_affine_parametric_loop.ll b/polly/test/ScopInfo/NonAffine/non_affine_parametric_loop.ll index a66375467bfe..de011e29aeea 100644 --- a/polly/test/ScopInfo/NonAffine/non_affine_parametric_loop.ll +++ b/polly/test/ScopInfo/NonAffine/non_affine_parametric_loop.ll @@ -6,16 +6,16 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; A[INDEX[i]] = i; ; } -define void @foo(i64 %n, double* noalias %A, i64* noalias %INDEX) { +define void @foo(i64 %n, ptr noalias %A, ptr noalias %INDEX) { entry: br label %for.body for.body: %i = phi i64 [ %inc, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i64, i64* %INDEX, i64 %i - %val = load i64, i64* %arrayidx - %arrayidx1 = getelementptr inbounds double, double* %A, i64 %val - store double 1.0, double* %arrayidx1 + %arrayidx = getelementptr inbounds i64, ptr %INDEX, i64 %i + %val = load i64, ptr %arrayidx + %arrayidx1 = getelementptr inbounds double, ptr %A, i64 %val + store double 1.0, ptr %arrayidx1 %inc = add nsw i64 %i, 1 %exitcond = icmp eq i64 %inc, %n br i1 %exitcond, label %for.end, label %for.body diff --git a/polly/test/ScopInfo/NonAffine/non_affine_region_guaranteed_non-entry.ll b/polly/test/ScopInfo/NonAffine/non_affine_region_guaranteed_non-entry.ll index b93f9ee72ce8..7303b4ea47fd 100644 --- a/polly/test/ScopInfo/NonAffine/non_affine_region_guaranteed_non-entry.ll +++ b/polly/test/ScopInfo/NonAffine/non_affine_region_guaranteed_non-entry.ll @@ -16,7 +16,7 @@ ; CHECK-NEXT: { Stmt_region_entry__TO__region_exit[i0] -> MemRef_A[0] }; ; CHECK-NOT: MayWriteAccess -define void @f(i32* %A, i32* %B, i32* %C, float %b) { +define void @f(ptr %A, ptr %B, ptr %C, float %b) { entry: br label %for.cond @@ -35,18 +35,18 @@ bb3: br label %bb3 guaranteed: - %ptr = getelementptr i32, i32* %B, i32 %indvar - %val = load i32, i32* %ptr + %ptr = getelementptr i32, ptr %B, i32 %indvar + %val = load i32, ptr %ptr %cmp = icmp eq i32 %val, 0 - store i32 0, i32* %A + store i32 0, ptr %A br i1 %cmp, label %bb5, label %bb6 bb5: br label %region_exit bb6: - %ptr2 = getelementptr i32, i32* %C, i32 %indvar - %val2 = load i32, i32* %ptr2 + %ptr2 = getelementptr i32, ptr %C, i32 %indvar + %val2 = load i32, ptr %ptr2 %cmp2 = icmp eq i32 %val2, 0 br i1 %cmp2, label %region_exit, label %region_entry diff --git a/polly/test/ScopInfo/aliasing_conditional_alias_groups_1.ll b/polly/test/ScopInfo/aliasing_conditional_alias_groups_1.ll index b362b3ec429b..dc59fbfc66a8 100644 --- a/polly/test/ScopInfo/aliasing_conditional_alias_groups_1.ll +++ b/polly/test/ScopInfo/aliasing_conditional_alias_groups_1.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32 %b, i32* %A, i32* %B) { +define void @jd(i32 %b, ptr %A, ptr %B) { entry: br label %for.cond @@ -30,18 +30,18 @@ for.body: ; preds = %for.cond if.then: ; preds = %for.body %tmp = add nsw i64 %indvars.iv, -1 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %tmp - %tmp3 = load i32, i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp3, i32* %arrayidx2, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %tmp + %tmp3 = load i32, ptr %arrayidx, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp3, ptr %arrayidx2, align 4 br label %if.end if.else: ; preds = %for.body %tmp4 = add nsw i64 %indvars.iv, -1 - %arrayidx5 = getelementptr inbounds i32, i32* %B, i64 %tmp4 - %tmp5 = load i32, i32* %arrayidx5, align 4 - %arrayidx7 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv - store i32 %tmp5, i32* %arrayidx7, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %B, i64 %tmp4 + %tmp5 = load i32, ptr %arrayidx5, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %B, i64 %indvars.iv + store i32 %tmp5, ptr %arrayidx7, align 4 br label %if.end if.end: ; preds = %if.else, %if.then diff --git a/polly/test/ScopInfo/aliasing_conditional_alias_groups_2.ll b/polly/test/ScopInfo/aliasing_conditional_alias_groups_2.ll index 6ca40b2ee8e5..a19d60dd9147 100644 --- a/polly/test/ScopInfo/aliasing_conditional_alias_groups_2.ll +++ b/polly/test/ScopInfo/aliasing_conditional_alias_groups_2.ll @@ -16,7 +16,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32 %b, i32* %A, i32* %B) { +define void @jd(i32 %b, ptr %A, ptr %B) { entry: br label %for.cond @@ -30,17 +30,17 @@ for.body: ; preds = %for.cond br i1 %tobool, label %if.else, label %if.then if.then: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %B, i64 5 - %tmp = load i32, i32* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp, i32* %arrayidx1, align 4 + %arrayidx = getelementptr inbounds i32, ptr %B, i64 5 + %tmp = load i32, ptr %arrayidx, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp, ptr %arrayidx1, align 4 br label %if.end if.else: ; preds = %for.body - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 7 - %tmp1 = load i32, i32* %arrayidx2, align 4 - %arrayidx4 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv - store i32 %tmp1, i32* %arrayidx4, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 7 + %tmp1 = load i32, ptr %arrayidx2, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %B, i64 %indvars.iv + store i32 %tmp1, ptr %arrayidx4, align 4 br label %if.end if.end: ; preds = %if.else, %if.then diff --git a/polly/test/ScopInfo/aliasing_dead_access.ll b/polly/test/ScopInfo/aliasing_dead_access.ll index 176d0cf66453..2a725cf3c855 100644 --- a/polly/test/ScopInfo/aliasing_dead_access.ll +++ b/polly/test/ScopInfo/aliasing_dead_access.ll @@ -12,7 +12,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A, i32* %B) { +define void @jd(ptr %A, ptr %B) { entry: br label %for.cond @@ -31,10 +31,10 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %cmp2, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %B, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx, align 4 - %arrayidx5 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp1, i32* %arrayidx5, align 4 + %arrayidx = getelementptr inbounds i32, ptr %B, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp1, ptr %arrayidx5, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/ScopInfo/aliasing_many_arrays_to_compare.ll b/polly/test/ScopInfo/aliasing_many_arrays_to_compare.ll index ae5e8d7bcf20..937d4ada3ec9 100644 --- a/polly/test/ScopInfo/aliasing_many_arrays_to_compare.ll +++ b/polly/test/ScopInfo/aliasing_many_arrays_to_compare.ll @@ -18,7 +18,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A, float* %B, float* %C, float* %D) { +define void @foo(ptr %A, ptr %B, ptr %C, ptr %D) { entry: br label %for.cond @@ -28,22 +28,22 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp = load float, ptr %arrayidx, align 4 %inc = fadd float %tmp, 1.000000e+00 - store float %inc, float* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds float, float* %B, i64 %i.0 - %tmp1 = load float, float* %arrayidx1, align 4 + store float %inc, ptr %arrayidx, align 4 + %arrayidx1 = getelementptr inbounds float, ptr %B, i64 %i.0 + %tmp1 = load float, ptr %arrayidx1, align 4 %inc2 = fadd float %tmp1, 1.000000e+00 - store float %inc2, float* %arrayidx1, align 4 - %arrayidx3 = getelementptr inbounds float, float* %C, i64 %i.0 - %tmp2 = load float, float* %arrayidx3, align 4 + store float %inc2, ptr %arrayidx1, align 4 + %arrayidx3 = getelementptr inbounds float, ptr %C, i64 %i.0 + %tmp2 = load float, ptr %arrayidx3, align 4 %inc4 = fadd float %tmp2, 1.000000e+00 - store float %inc4, float* %arrayidx3, align 4 - %arrayidx5 = getelementptr inbounds float, float* %D, i64 %i.0 - %tmp3 = load float, float* %arrayidx5, align 4 + store float %inc4, ptr %arrayidx3, align 4 + %arrayidx5 = getelementptr inbounds float, ptr %D, i64 %i.0 + %tmp3 = load float, ptr %arrayidx5, align 4 %inc6 = fadd float %tmp3, 1.000000e+00 - store float %inc6, float* %arrayidx5, align 4 + store float %inc6, ptr %arrayidx5, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/aliasing_many_parameters_not_all_involved.ll b/polly/test/ScopInfo/aliasing_many_parameters_not_all_involved.ll index 2fad0cdd8d2e..c7592bcb09fc 100644 --- a/polly/test/ScopInfo/aliasing_many_parameters_not_all_involved.ll +++ b/polly/test/ScopInfo/aliasing_many_parameters_not_all_involved.ll @@ -18,7 +18,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A, i32* %B, i32* %C, i64 %p1, i64 %p2, i64 %p3, i64 %p4, i64 %p5, i64 %p6, i64 %p7, i64 %p8, i64 %p9, i64 %p10) { +define void @jd(ptr %A, ptr %B, ptr %C, i64 %p1, i64 %p2, i64 %p3, i64 %p4, i64 %p5, i64 %p6, i64 %p7, i64 %p8, i64 %p9, i64 %p10) { entry: br label %for.cond @@ -28,57 +28,57 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %B, i64 %p1 - %tmp = load i32, i32* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds i32, i32* %B, i64 %p2 - %tmp1 = load i32, i32* %arrayidx1, align 4 + %arrayidx = getelementptr inbounds i32, ptr %B, i64 %p1 + %tmp = load i32, ptr %arrayidx, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %B, i64 %p2 + %tmp1 = load i32, ptr %arrayidx1, align 4 %sub = sub nsw i32 %tmp, %tmp1 %sub2 = sub nsw i64 0, %p3 - %arrayidx3 = getelementptr inbounds i32, i32* %B, i64 %sub2 - %tmp2 = load i32, i32* %arrayidx3, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %B, i64 %sub2 + %tmp2 = load i32, ptr %arrayidx3, align 4 %add = add nsw i32 %sub, %tmp2 - %arrayidx4 = getelementptr inbounds i32, i32* %B, i64 %p4 - %tmp3 = load i32, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %B, i64 %p4 + %tmp3 = load i32, ptr %arrayidx4, align 4 %sub5 = sub nsw i32 %add, %tmp3 - %arrayidx6 = getelementptr inbounds i32, i32* %B, i64 %p5 - %tmp4 = load i32, i32* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %B, i64 %p5 + %tmp4 = load i32, ptr %arrayidx6, align 4 %add7 = add nsw i32 %sub5, %tmp4 %sub8 = sub nsw i64 0, %p6 - %arrayidx9 = getelementptr inbounds i32, i32* %B, i64 %sub8 - %tmp5 = load i32, i32* %arrayidx9, align 4 + %arrayidx9 = getelementptr inbounds i32, ptr %B, i64 %sub8 + %tmp5 = load i32, ptr %arrayidx9, align 4 %sub10 = sub nsw i32 %add7, %tmp5 - %arrayidx11 = getelementptr inbounds i32, i32* %B, i64 %p7 - %tmp6 = load i32, i32* %arrayidx11, align 4 + %arrayidx11 = getelementptr inbounds i32, ptr %B, i64 %p7 + %tmp6 = load i32, ptr %arrayidx11, align 4 %add12 = add nsw i32 %sub10, %tmp6 - %arrayidx13 = getelementptr inbounds i32, i32* %C, i64 %p3 - %tmp7 = load i32, i32* %arrayidx13, align 4 + %arrayidx13 = getelementptr inbounds i32, ptr %C, i64 %p3 + %tmp7 = load i32, ptr %arrayidx13, align 4 %sub14 = sub nsw i32 %add12, %tmp7 %sub15 = sub nsw i64 0, %p4 - %arrayidx16 = getelementptr inbounds i32, i32* %C, i64 %sub15 - %tmp8 = load i32, i32* %arrayidx16, align 4 + %arrayidx16 = getelementptr inbounds i32, ptr %C, i64 %sub15 + %tmp8 = load i32, ptr %arrayidx16, align 4 %add17 = add nsw i32 %sub14, %tmp8 - %arrayidx18 = getelementptr inbounds i32, i32* %C, i64 %p5 - %tmp9 = load i32, i32* %arrayidx18, align 4 + %arrayidx18 = getelementptr inbounds i32, ptr %C, i64 %p5 + %tmp9 = load i32, ptr %arrayidx18, align 4 %sub19 = sub nsw i32 %add17, %tmp9 - %arrayidx20 = getelementptr inbounds i32, i32* %C, i64 %p6 - %tmp10 = load i32, i32* %arrayidx20, align 4 + %arrayidx20 = getelementptr inbounds i32, ptr %C, i64 %p6 + %tmp10 = load i32, ptr %arrayidx20, align 4 %add21 = add nsw i32 %sub19, %tmp10 %sub22 = sub nsw i64 0, %p7 - %arrayidx23 = getelementptr inbounds i32, i32* %C, i64 %sub22 - %tmp11 = load i32, i32* %arrayidx23, align 4 + %arrayidx23 = getelementptr inbounds i32, ptr %C, i64 %sub22 + %tmp11 = load i32, ptr %arrayidx23, align 4 %sub24 = sub nsw i32 %add21, %tmp11 - %arrayidx25 = getelementptr inbounds i32, i32* %C, i64 %p8 - %tmp12 = load i32, i32* %arrayidx25, align 4 + %arrayidx25 = getelementptr inbounds i32, ptr %C, i64 %p8 + %tmp12 = load i32, ptr %arrayidx25, align 4 %add26 = add nsw i32 %sub24, %tmp12 - %arrayidx27 = getelementptr inbounds i32, i32* %C, i64 %p9 - %tmp13 = load i32, i32* %arrayidx27, align 4 + %arrayidx27 = getelementptr inbounds i32, ptr %C, i64 %p9 + %tmp13 = load i32, ptr %arrayidx27, align 4 %sub28 = sub nsw i32 %add26, %tmp13 %sub29 = sub nsw i64 0, %p10 - %arrayidx30 = getelementptr inbounds i32, i32* %C, i64 %sub29 - %tmp14 = load i32, i32* %arrayidx30, align 4 + %arrayidx30 = getelementptr inbounds i32, ptr %C, i64 %sub29 + %tmp14 = load i32, ptr %arrayidx30, align 4 %add31 = add nsw i32 %sub28, %tmp14 - %arrayidx32 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %add31, i32* %arrayidx32, align 4 + %arrayidx32 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %add31, ptr %arrayidx32, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/aliasing_many_read_only_acesses.ll b/polly/test/ScopInfo/aliasing_many_read_only_acesses.ll index 1f3e27140722..c22cfe55e118 100644 --- a/polly/test/ScopInfo/aliasing_many_read_only_acesses.ll +++ b/polly/test/ScopInfo/aliasing_many_read_only_acesses.ll @@ -23,7 +23,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @many_read_only_accesses(float* %A, float* %B) { +define void @many_read_only_accesses(ptr %A, ptr %B) { bb: br label %bb2 @@ -41,171 +41,171 @@ bb4: ; preds = %bb169, %bb3 br i1 %exitcond, label %bb5, label %bb171 bb5: ; preds = %bb4 - %tmp = getelementptr inbounds float, float* %B, i64 %i.0 - %tmp6 = load float, float* %tmp, align 4 + %tmp = getelementptr inbounds float, ptr %B, i64 %i.0 + %tmp6 = load float, ptr %tmp, align 4 %tmp7 = add nuw nsw i64 %i.0, 1 - %tmp8 = getelementptr inbounds float, float* %B, i64 %tmp7 - %tmp9 = load float, float* %tmp8, align 4 + %tmp8 = getelementptr inbounds float, ptr %B, i64 %tmp7 + %tmp9 = load float, ptr %tmp8, align 4 %tmp10 = fadd float %tmp6, %tmp9 %tmp11 = add nuw nsw i64 %i.0, 2 - %tmp12 = getelementptr inbounds float, float* %B, i64 %tmp11 - %tmp13 = load float, float* %tmp12, align 4 + %tmp12 = getelementptr inbounds float, ptr %B, i64 %tmp11 + %tmp13 = load float, ptr %tmp12, align 4 %tmp14 = fadd float %tmp10, %tmp13 %tmp15 = add nuw nsw i64 %i.0, 3 - %tmp16 = getelementptr inbounds float, float* %B, i64 %tmp15 - %tmp17 = load float, float* %tmp16, align 4 + %tmp16 = getelementptr inbounds float, ptr %B, i64 %tmp15 + %tmp17 = load float, ptr %tmp16, align 4 %tmp18 = fadd float %tmp14, %tmp17 %tmp19 = add nuw nsw i64 %i.0, 4 - %tmp20 = getelementptr inbounds float, float* %B, i64 %tmp19 - %tmp21 = load float, float* %tmp20, align 4 + %tmp20 = getelementptr inbounds float, ptr %B, i64 %tmp19 + %tmp21 = load float, ptr %tmp20, align 4 %tmp22 = fadd float %tmp18, %tmp21 %tmp23 = add nuw nsw i64 %i.0, 5 - %tmp24 = getelementptr inbounds float, float* %B, i64 %tmp23 - %tmp25 = load float, float* %tmp24, align 4 + %tmp24 = getelementptr inbounds float, ptr %B, i64 %tmp23 + %tmp25 = load float, ptr %tmp24, align 4 %tmp26 = fadd float %tmp22, %tmp25 %tmp27 = add nuw nsw i64 %i.0, 6 - %tmp28 = getelementptr inbounds float, float* %B, i64 %tmp27 - %tmp29 = load float, float* %tmp28, align 4 + %tmp28 = getelementptr inbounds float, ptr %B, i64 %tmp27 + %tmp29 = load float, ptr %tmp28, align 4 %tmp30 = fadd float %tmp26, %tmp29 %tmp31 = add nuw nsw i64 %i.0, 7 - %tmp32 = getelementptr inbounds float, float* %B, i64 %tmp31 - %tmp33 = load float, float* %tmp32, align 4 + %tmp32 = getelementptr inbounds float, ptr %B, i64 %tmp31 + %tmp33 = load float, ptr %tmp32, align 4 %tmp34 = fadd float %tmp30, %tmp33 %tmp35 = add nuw nsw i64 %i.0, 8 - %tmp36 = getelementptr inbounds float, float* %B, i64 %tmp35 - %tmp37 = load float, float* %tmp36, align 4 + %tmp36 = getelementptr inbounds float, ptr %B, i64 %tmp35 + %tmp37 = load float, ptr %tmp36, align 4 %tmp38 = fadd float %tmp34, %tmp37 %tmp39 = add nuw nsw i64 %i.0, 9 - %tmp40 = getelementptr inbounds float, float* %B, i64 %tmp39 - %tmp41 = load float, float* %tmp40, align 4 + %tmp40 = getelementptr inbounds float, ptr %B, i64 %tmp39 + %tmp41 = load float, ptr %tmp40, align 4 %tmp42 = fadd float %tmp38, %tmp41 - %tmp43 = getelementptr inbounds float, float* %B, i64 %i.0 - %tmp44 = load float, float* %tmp43, align 4 + %tmp43 = getelementptr inbounds float, ptr %B, i64 %i.0 + %tmp44 = load float, ptr %tmp43, align 4 %tmp45 = fadd float %tmp42, %tmp44 %tmp46 = add nuw nsw i64 %i.0, 11 - %tmp47 = getelementptr inbounds float, float* %B, i64 %tmp46 - %tmp48 = load float, float* %tmp47, align 4 + %tmp47 = getelementptr inbounds float, ptr %B, i64 %tmp46 + %tmp48 = load float, ptr %tmp47, align 4 %tmp49 = fadd float %tmp45, %tmp48 %tmp50 = add nuw nsw i64 %i.0, 12 - %tmp51 = getelementptr inbounds float, float* %B, i64 %tmp50 - %tmp52 = load float, float* %tmp51, align 4 + %tmp51 = getelementptr inbounds float, ptr %B, i64 %tmp50 + %tmp52 = load float, ptr %tmp51, align 4 %tmp53 = fadd float %tmp49, %tmp52 %tmp54 = add nuw nsw i64 %i.0, 13 - %tmp55 = getelementptr inbounds float, float* %B, i64 %tmp54 - %tmp56 = load float, float* %tmp55, align 4 + %tmp55 = getelementptr inbounds float, ptr %B, i64 %tmp54 + %tmp56 = load float, ptr %tmp55, align 4 %tmp57 = fadd float %tmp53, %tmp56 %tmp58 = add nuw nsw i64 %i.0, 14 - %tmp59 = getelementptr inbounds float, float* %B, i64 %tmp58 - %tmp60 = load float, float* %tmp59, align 4 + %tmp59 = getelementptr inbounds float, ptr %B, i64 %tmp58 + %tmp60 = load float, ptr %tmp59, align 4 %tmp61 = fadd float %tmp57, %tmp60 %tmp62 = add nuw nsw i64 %i.0, 15 - %tmp63 = getelementptr inbounds float, float* %B, i64 %tmp62 - %tmp64 = load float, float* %tmp63, align 4 + %tmp63 = getelementptr inbounds float, ptr %B, i64 %tmp62 + %tmp64 = load float, ptr %tmp63, align 4 %tmp65 = fadd float %tmp61, %tmp64 %tmp66 = add nuw nsw i64 %i.0, 16 - %tmp67 = getelementptr inbounds float, float* %B, i64 %tmp66 - %tmp68 = load float, float* %tmp67, align 4 + %tmp67 = getelementptr inbounds float, ptr %B, i64 %tmp66 + %tmp68 = load float, ptr %tmp67, align 4 %tmp69 = fadd float %tmp65, %tmp68 %tmp70 = add nuw nsw i64 %i.0, 17 - %tmp71 = getelementptr inbounds float, float* %B, i64 %tmp70 - %tmp72 = load float, float* %tmp71, align 4 + %tmp71 = getelementptr inbounds float, ptr %B, i64 %tmp70 + %tmp72 = load float, ptr %tmp71, align 4 %tmp73 = fadd float %tmp69, %tmp72 %tmp74 = add nuw nsw i64 %i.0, 18 - %tmp75 = getelementptr inbounds float, float* %B, i64 %tmp74 - %tmp76 = load float, float* %tmp75, align 4 + %tmp75 = getelementptr inbounds float, ptr %B, i64 %tmp74 + %tmp76 = load float, ptr %tmp75, align 4 %tmp77 = fadd float %tmp73, %tmp76 %tmp78 = add nuw nsw i64 %i.0, 19 - %tmp79 = getelementptr inbounds float, float* %B, i64 %tmp78 - %tmp80 = load float, float* %tmp79, align 4 + %tmp79 = getelementptr inbounds float, ptr %B, i64 %tmp78 + %tmp80 = load float, ptr %tmp79, align 4 %tmp81 = fadd float %tmp77, %tmp80 %tmp82 = add nuw nsw i64 %i.0, 10 - %tmp83 = getelementptr inbounds float, float* %B, i64 %tmp82 - %tmp84 = load float, float* %tmp83, align 4 + %tmp83 = getelementptr inbounds float, ptr %B, i64 %tmp82 + %tmp84 = load float, ptr %tmp83, align 4 %tmp85 = fadd float %tmp81, %tmp84 %tmp86 = add nuw nsw i64 %i.0, 21 - %tmp87 = getelementptr inbounds float, float* %B, i64 %tmp86 - %tmp88 = load float, float* %tmp87, align 4 + %tmp87 = getelementptr inbounds float, ptr %B, i64 %tmp86 + %tmp88 = load float, ptr %tmp87, align 4 %tmp89 = fadd float %tmp85, %tmp88 %tmp90 = add nuw nsw i64 %i.0, 22 - %tmp91 = getelementptr inbounds float, float* %B, i64 %tmp90 - %tmp92 = load float, float* %tmp91, align 4 + %tmp91 = getelementptr inbounds float, ptr %B, i64 %tmp90 + %tmp92 = load float, ptr %tmp91, align 4 %tmp93 = fadd float %tmp89, %tmp92 %tmp94 = add nuw nsw i64 %i.0, 23 - %tmp95 = getelementptr inbounds float, float* %B, i64 %tmp94 - %tmp96 = load float, float* %tmp95, align 4 + %tmp95 = getelementptr inbounds float, ptr %B, i64 %tmp94 + %tmp96 = load float, ptr %tmp95, align 4 %tmp97 = fadd float %tmp93, %tmp96 %tmp98 = add nuw nsw i64 %i.0, 24 - %tmp99 = getelementptr inbounds float, float* %B, i64 %tmp98 - %tmp100 = load float, float* %tmp99, align 4 + %tmp99 = getelementptr inbounds float, ptr %B, i64 %tmp98 + %tmp100 = load float, ptr %tmp99, align 4 %tmp101 = fadd float %tmp97, %tmp100 %tmp102 = add nuw nsw i64 %i.0, 25 - %tmp103 = getelementptr inbounds float, float* %B, i64 %tmp102 - %tmp104 = load float, float* %tmp103, align 4 + %tmp103 = getelementptr inbounds float, ptr %B, i64 %tmp102 + %tmp104 = load float, ptr %tmp103, align 4 %tmp105 = fadd float %tmp101, %tmp104 %tmp106 = add nuw nsw i64 %i.0, 26 - %tmp107 = getelementptr inbounds float, float* %B, i64 %tmp106 - %tmp108 = load float, float* %tmp107, align 4 + %tmp107 = getelementptr inbounds float, ptr %B, i64 %tmp106 + %tmp108 = load float, ptr %tmp107, align 4 %tmp109 = fadd float %tmp105, %tmp108 %tmp110 = add nuw nsw i64 %i.0, 27 - %tmp111 = getelementptr inbounds float, float* %B, i64 %tmp110 - %tmp112 = load float, float* %tmp111, align 4 + %tmp111 = getelementptr inbounds float, ptr %B, i64 %tmp110 + %tmp112 = load float, ptr %tmp111, align 4 %tmp113 = fadd float %tmp109, %tmp112 %tmp114 = add nuw nsw i64 %i.0, 28 - %tmp115 = getelementptr inbounds float, float* %B, i64 %tmp114 - %tmp116 = load float, float* %tmp115, align 4 + %tmp115 = getelementptr inbounds float, ptr %B, i64 %tmp114 + %tmp116 = load float, ptr %tmp115, align 4 %tmp117 = fadd float %tmp113, %tmp116 %tmp118 = add nuw nsw i64 %i.0, 29 - %tmp119 = getelementptr inbounds float, float* %B, i64 %tmp118 - %tmp120 = load float, float* %tmp119, align 4 + %tmp119 = getelementptr inbounds float, ptr %B, i64 %tmp118 + %tmp120 = load float, ptr %tmp119, align 4 %tmp121 = fadd float %tmp117, %tmp120 %tmp122 = add nuw nsw i64 %i.0, 20 - %tmp123 = getelementptr inbounds float, float* %B, i64 %tmp122 - %tmp124 = load float, float* %tmp123, align 4 + %tmp123 = getelementptr inbounds float, ptr %B, i64 %tmp122 + %tmp124 = load float, ptr %tmp123, align 4 %tmp125 = fadd float %tmp121, %tmp124 %tmp126 = add nuw nsw i64 %i.0, 31 - %tmp127 = getelementptr inbounds float, float* %B, i64 %tmp126 - %tmp128 = load float, float* %tmp127, align 4 + %tmp127 = getelementptr inbounds float, ptr %B, i64 %tmp126 + %tmp128 = load float, ptr %tmp127, align 4 %tmp129 = fadd float %tmp125, %tmp128 %tmp130 = add nuw nsw i64 %i.0, 32 - %tmp131 = getelementptr inbounds float, float* %B, i64 %tmp130 - %tmp132 = load float, float* %tmp131, align 4 + %tmp131 = getelementptr inbounds float, ptr %B, i64 %tmp130 + %tmp132 = load float, ptr %tmp131, align 4 %tmp133 = fadd float %tmp129, %tmp132 %tmp134 = add nuw nsw i64 %i.0, 33 - %tmp135 = getelementptr inbounds float, float* %B, i64 %tmp134 - %tmp136 = load float, float* %tmp135, align 4 + %tmp135 = getelementptr inbounds float, ptr %B, i64 %tmp134 + %tmp136 = load float, ptr %tmp135, align 4 %tmp137 = fadd float %tmp133, %tmp136 %tmp138 = add nuw nsw i64 %i.0, 34 - %tmp139 = getelementptr inbounds float, float* %B, i64 %tmp138 - %tmp140 = load float, float* %tmp139, align 4 + %tmp139 = getelementptr inbounds float, ptr %B, i64 %tmp138 + %tmp140 = load float, ptr %tmp139, align 4 %tmp141 = fadd float %tmp137, %tmp140 %tmp142 = add nuw nsw i64 %i.0, 35 - %tmp143 = getelementptr inbounds float, float* %B, i64 %tmp142 - %tmp144 = load float, float* %tmp143, align 4 + %tmp143 = getelementptr inbounds float, ptr %B, i64 %tmp142 + %tmp144 = load float, ptr %tmp143, align 4 %tmp145 = fadd float %tmp141, %tmp144 %tmp146 = add nuw nsw i64 %i.0, 36 - %tmp147 = getelementptr inbounds float, float* %B, i64 %tmp146 - %tmp148 = load float, float* %tmp147, align 4 + %tmp147 = getelementptr inbounds float, ptr %B, i64 %tmp146 + %tmp148 = load float, ptr %tmp147, align 4 %tmp149 = fadd float %tmp145, %tmp148 %tmp150 = add nuw nsw i64 %i.0, 37 - %tmp151 = getelementptr inbounds float, float* %B, i64 %tmp150 - %tmp152 = load float, float* %tmp151, align 4 + %tmp151 = getelementptr inbounds float, ptr %B, i64 %tmp150 + %tmp152 = load float, ptr %tmp151, align 4 %tmp153 = fadd float %tmp149, %tmp152 %tmp154 = add nuw nsw i64 %i.0, 38 - %tmp155 = getelementptr inbounds float, float* %B, i64 %tmp154 - %tmp156 = load float, float* %tmp155, align 4 + %tmp155 = getelementptr inbounds float, ptr %B, i64 %tmp154 + %tmp156 = load float, ptr %tmp155, align 4 %tmp157 = fadd float %tmp153, %tmp156 %tmp158 = add nuw nsw i64 %i.0, 39 - %tmp159 = getelementptr inbounds float, float* %B, i64 %tmp158 - %tmp160 = load float, float* %tmp159, align 4 + %tmp159 = getelementptr inbounds float, ptr %B, i64 %tmp158 + %tmp160 = load float, ptr %tmp159, align 4 %tmp161 = fadd float %tmp157, %tmp160 %tmp162 = add nuw nsw i64 %i.0, 30 - %tmp163 = getelementptr inbounds float, float* %B, i64 %tmp162 - %tmp164 = load float, float* %tmp163, align 4 + %tmp163 = getelementptr inbounds float, ptr %B, i64 %tmp162 + %tmp164 = load float, ptr %tmp163, align 4 %tmp165 = fadd float %tmp161, %tmp164 - %tmp166 = getelementptr inbounds float, float* %A, i64 %j.0 - %tmp167 = load float, float* %tmp166, align 4 + %tmp166 = getelementptr inbounds float, ptr %A, i64 %j.0 + %tmp167 = load float, ptr %tmp166, align 4 %tmp168 = fadd float %tmp167, %tmp165 - store float %tmp168, float* %tmp166, align 4 + store float %tmp168, ptr %tmp166, align 4 br label %bb169 bb169: ; preds = %bb5 diff --git a/polly/test/ScopInfo/aliasing_multiple_alias_groups.ll b/polly/test/ScopInfo/aliasing_multiple_alias_groups.ll index ee386029363e..16cb3dc0f5ac 100644 --- a/polly/test/ScopInfo/aliasing_multiple_alias_groups.ll +++ b/polly/test/ScopInfo/aliasing_multiple_alias_groups.ll @@ -10,20 +10,20 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* nocapture %Int0, i32* nocapture readonly %Int1, float* nocapture %Float0, float* nocapture readonly %Float1) { +define void @jd(ptr nocapture %Int0, ptr nocapture readonly %Int1, ptr nocapture %Float0, ptr nocapture readonly %Float1) { entry: br label %for.body for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32, i32* %Int1, i64 %indvars.iv - %tmp = load i32, i32* %arrayidx, align 4, !tbaa !0 - %arrayidx2 = getelementptr inbounds i32, i32* %Int0, i64 %indvars.iv - store i32 %tmp, i32* %arrayidx2, align 4, !tbaa !0 - %arrayidx4 = getelementptr inbounds float, float* %Float1, i64 %indvars.iv - %tmp1 = load float, float* %arrayidx4, align 4, !tbaa !4 - %arrayidx6 = getelementptr inbounds float, float* %Float0, i64 %indvars.iv - store float %tmp1, float* %arrayidx6, align 4, !tbaa !4 + %arrayidx = getelementptr inbounds i32, ptr %Int1, i64 %indvars.iv + %tmp = load i32, ptr %arrayidx, align 4, !tbaa !0 + %arrayidx2 = getelementptr inbounds i32, ptr %Int0, i64 %indvars.iv + store i32 %tmp, ptr %arrayidx2, align 4, !tbaa !0 + %arrayidx4 = getelementptr inbounds float, ptr %Float1, i64 %indvars.iv + %tmp1 = load float, ptr %arrayidx4, align 4, !tbaa !4 + %arrayidx6 = getelementptr inbounds float, ptr %Float0, i64 %indvars.iv + store float %tmp1, ptr %arrayidx6, align 4, !tbaa !4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 1024 br i1 %exitcond, label %for.end, label %for.body diff --git a/polly/test/ScopInfo/aliasing_with_non_affine_access.ll b/polly/test/ScopInfo/aliasing_with_non_affine_access.ll index d4a759e6e13a..056b644cd5ed 100644 --- a/polly/test/ScopInfo/aliasing_with_non_affine_access.ll +++ b/polly/test/ScopInfo/aliasing_with_non_affine_access.ll @@ -13,27 +13,26 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.info = type { i32, %struct.ctr*, i32, %struct.ord*, %struct.ctr*, i32, i8*, i32, i32, double } +%struct.info = type { i32, ptr, i32, ptr, ptr, i32, ptr, i32, i32, double } %struct.ctr = type { i32, i8, i8, i32 } %struct.ord = type { i32, i8 } ; Function Attrs: argmemonly nounwind -declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) #0 +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) #0 -define void @test1(%struct.info** %ppIdxInfo) { +define void @test1(ptr %ppIdxInfo) { entry: - %tmp0 = load %struct.info*, %struct.info** %ppIdxInfo, align 8 + %tmp0 = load ptr, ptr %ppIdxInfo, align 8 br label %if.end125 if.end125: ; preds = %entry - %tmp1 = load %struct.ctr*, %struct.ctr** undef, align 8 + %tmp1 = load ptr, ptr undef, align 8 br label %for.end143 for.end143: ; preds = %if.end125 - %tmp2 = bitcast %struct.ctr* %tmp1 to i8* - tail call void @llvm.memset.p0i8.i64(i8* %tmp2, i8 0, i64 32, i32 4, i1 false) - %needToFreeIdxStr = getelementptr inbounds %struct.info, %struct.info* %tmp0, i64 0, i32 7 - %tmp3 = load i32, i32* %needToFreeIdxStr, align 8 + tail call void @llvm.memset.p0.i64(ptr %tmp1, i8 0, i64 32, i32 4, i1 false) + %needToFreeIdxStr = getelementptr inbounds %struct.info, ptr %tmp0, i64 0, i32 7 + %tmp3 = load i32, ptr %needToFreeIdxStr, align 8 br i1 false, label %if.end149, label %if.then148 if.then148: ; preds = %for.end143 @@ -43,20 +42,19 @@ if.end149: ; preds = %if.then148, %for.en ret void } -define void @test2(%struct.info** %ppIdxInfo, i64 %n) { +define void @test2(ptr %ppIdxInfo, i64 %n) { entry: - %tmp0 = load %struct.info*, %struct.info** %ppIdxInfo, align 8 + %tmp0 = load ptr, ptr %ppIdxInfo, align 8 br label %if.end125 if.end125: ; preds = %entry - %tmp1 = load %struct.ctr*, %struct.ctr** undef, align 8 + %tmp1 = load ptr, ptr undef, align 8 br label %for.end143 for.end143: ; preds = %if.end125 - %tmp2 = bitcast %struct.ctr* %tmp1 to i8* - tail call void @llvm.memset.p0i8.i64(i8* %tmp2, i8 0, i64 %n, i32 4, i1 false) - %needToFreeIdxStr = getelementptr inbounds %struct.info, %struct.info* %tmp0, i64 0, i32 7 - %tmp3 = load i32, i32* %needToFreeIdxStr, align 8 + tail call void @llvm.memset.p0.i64(ptr %tmp1, i8 0, i64 %n, i32 4, i1 false) + %needToFreeIdxStr = getelementptr inbounds %struct.info, ptr %tmp0, i64 0, i32 7 + %tmp3 = load i32, ptr %needToFreeIdxStr, align 8 br i1 false, label %if.end149, label %if.then148 if.then148: ; preds = %for.end143 @@ -66,7 +64,7 @@ if.end149: ; preds = %if.then148, %for.en ret void } -define i32 @test3(i32* %x, i32 %n) { +define i32 @test3(ptr %x, i32 %n) { entry: br label %entry.split @@ -76,7 +74,6 @@ entry.split: ; preds = %entry br i1 %cmp8, label %for.body.lr.ph, label %for.cond.cleanup for.body.lr.ph: ; preds = %entry.split - %tmp0 = bitcast i32* %x to i8* br label %for.body for.cond.cleanup: ; preds = %for.body, %entry.split @@ -85,10 +82,10 @@ for.cond.cleanup: ; preds = %for.body, %entry.sp for.body: ; preds = %for.body, %for.body.lr.ph %i.09 = phi i64 [ 0, %for.body.lr.ph ], [ %inc, %for.body ] %mul = mul nsw i64 %i.09, %i.09 - tail call void @llvm.memset.p0i8.i64(i8* %tmp0, i8 0, i64 %mul, i32 4, i1 false) + tail call void @llvm.memset.p0.i64(ptr %x, i8 0, i64 %mul, i32 4, i1 false) %add = add nuw nsw i64 %i.09, 1000 - %arrayidx = getelementptr inbounds i32, i32* %x, i64 %add - store i32 5, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %x, i64 %add + store i32 5, ptr %arrayidx, align 4 %inc = add nuw nsw i64 %i.09, 1 %exitcond = icmp eq i64 %inc, %conv br i1 %exitcond, label %for.cond.cleanup, label %for.body diff --git a/polly/test/ScopInfo/allow-all-parameters-dereferencable.ll b/polly/test/ScopInfo/allow-all-parameters-dereferencable.ll index 22f77eef14df..d170a50e26fc 100644 --- a/polly/test/ScopInfo/allow-all-parameters-dereferencable.ll +++ b/polly/test/ScopInfo/allow-all-parameters-dereferencable.ll @@ -38,9 +38,9 @@ target triple = "x86_64-unknown-linux-gnu" @global = external global i32 ; Function Attrs: nounwind uwtable -define void @hoge(i32* noalias %arg, i32* noalias %arg1, [0 x double]* noalias %arg2, float* %A) #0 { +define void @hoge(ptr noalias %arg, ptr noalias %arg1, ptr noalias %arg2, ptr %A) #0 { bb: - %tmp = load i32, i32* @global, align 4 + %tmp = load i32, ptr @global, align 4 %tmp3 = icmp sgt i32 %tmp, 1 br label %bb14 @@ -51,16 +51,15 @@ bb15: ; preds = %bb14 br i1 %tmp3, label %bb16, label %bb27 bb16: ; preds = %bb15 - %tmp17 = load i32, i32* %arg1, align 4 + %tmp17 = load i32, ptr %arg1, align 4 br label %bb18 bb18: ; preds = %bb18, %bb16 %tmp19 = phi i32 [ %tmp25, %bb18 ], [ 1, %bb16 ] %tmp20 = sext i32 %tmp19 to i64 %tmp21 = add nsw i64 %tmp20, -1 - %tmp22 = getelementptr [0 x double], [0 x double]* %arg2, i64 0, i64 %tmp21 - %tmp23 = bitcast double* %tmp22 to i64* - store i64 undef, i64* %tmp23, align 8 + %tmp22 = getelementptr [0 x double], ptr %arg2, i64 0, i64 %tmp21 + store i64 undef, ptr %tmp22, align 8 %tmp24 = icmp eq i32 %tmp19, %tmp17 %tmp25 = add i32 %tmp19, 1 br i1 %tmp24, label %bb26, label %bb18 @@ -69,18 +68,18 @@ bb26: ; preds = %bb18 br label %bb27 bb27: ; preds = %bb26, %bb15 - %tmp28 = load i32, i32* %arg, align 4 - store float 42.0, float* %A + %tmp28 = load i32, ptr %arg, align 4 + store float 42.0, ptr %A br label %bb29 bb29: ; preds = %bb35, %bb27 - %tmp30 = load i32, i32* %arg1, align 4 - store float 42.0, float* %A + %tmp30 = load i32, ptr %arg1, align 4 + store float 42.0, ptr %A br label %bb31 bb31: ; preds = %bb31, %bb29 %tmp32 = phi i32 [ 1, %bb31 ], [ 1, %bb29 ] - store float 42.0, float* %A + store float 42.0, ptr %A %tmp33 = icmp eq i32 %tmp32, %tmp30 br i1 %tmp33, label %bb34, label %bb31 diff --git a/polly/test/ScopInfo/assume_gep_bounds.ll b/polly/test/ScopInfo/assume_gep_bounds.ll index 22b0c8341b7e..d0ce47148071 100644 --- a/polly/test/ScopInfo/assume_gep_bounds.ll +++ b/polly/test/ScopInfo/assume_gep_bounds.ll @@ -25,7 +25,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo([20 x [30 x float]]* %A, i64 %n, i64 %m, i64 %p) { +define void @foo(ptr %A, i64 %n, i64 %m, i64 %p) { entry: br label %for.cond @@ -54,8 +54,8 @@ for.body6: ; preds = %for.cond4 %add = add nsw i64 %i.0, %j.0 %add7 = add nsw i64 %add, %k.0 %conv = sitofp i64 %add7 to float - %arrayidx9 = getelementptr inbounds [20 x [30 x float]], [20 x [30 x float]]* %A, i64 %i.0, i64 %j.0, i64 %k.0 - store float %conv, float* %arrayidx9, align 4 + %arrayidx9 = getelementptr inbounds [20 x [30 x float]], ptr %A, i64 %i.0, i64 %j.0, i64 %k.0 + store float %conv, ptr %arrayidx9, align 4 br label %for.inc for.inc: ; preds = %for.body6 diff --git a/polly/test/ScopInfo/assume_gep_bounds_2.ll b/polly/test/ScopInfo/assume_gep_bounds_2.ll index 2b074bb4ef99..e327195da94c 100644 --- a/polly/test/ScopInfo/assume_gep_bounds_2.ll +++ b/polly/test/ScopInfo/assume_gep_bounds_2.ll @@ -21,7 +21,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo([20 x float]* noalias %A, [20 x float]* noalias %B, i64 %n, i64 %m, i64 %p) { +define void @foo(ptr noalias %A, ptr noalias %B, i64 %n, i64 %m, i64 %p) { entry: br label %for.cond @@ -41,8 +41,8 @@ for.cond1: ; preds = %for.inc, %for.body for.body3: ; preds = %for.cond1 %add = add nsw i64 %i.0, %j.0 %conv = sitofp i64 %add to float - %arrayidx4 = getelementptr inbounds [20 x float], [20 x float]* %A, i64 %i.0, i64 %j.0 - store float %conv, float* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds [20 x float], ptr %A, i64 %i.0, i64 %j.0 + store float %conv, ptr %arrayidx4, align 4 br label %for.inc for.inc: ; preds = %for.body3 @@ -75,8 +75,8 @@ for.cond14: ; preds = %for.inc22, %for.bod for.body17: ; preds = %for.cond14 %add18 = add nsw i64 %i8.0, %j13.0 %conv19 = sitofp i64 %add18 to float - %arrayidx21 = getelementptr inbounds [20 x float], [20 x float]* %B, i64 %i8.0, i64 %j13.0 - store float %conv19, float* %arrayidx21, align 4 + %arrayidx21 = getelementptr inbounds [20 x float], ptr %B, i64 %i8.0, i64 %j13.0 + store float %conv19, ptr %arrayidx21, align 4 br label %for.inc22 for.inc22: ; preds = %for.body17 diff --git a/polly/test/ScopInfo/assume_gep_bounds_many.ll b/polly/test/ScopInfo/assume_gep_bounds_many.ll index f927f5bd0320..261491564fc2 100644 --- a/polly/test/ScopInfo/assume_gep_bounds_many.ll +++ b/polly/test/ScopInfo/assume_gep_bounds_many.ll @@ -72,7 +72,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %n1_a, i64 %n1_b, i64 %n1_c, i64 %n1_d, i64 %n2_a, i64 %n2_b, i64 %n2_c, i64 %n2_d, i64 %n3_a, i64 %n3_b, i64 %n3_c, i64 %n3_d, i64 %n4_a, i64 %n4_b, i64 %n4_c, i64 %n4_d, i64 %n5_a, i64 %n5_b, i64 %n5_c, i64 %n5_d, i64 %n6_a, i64 %n6_b, i64 %n6_c, i64 %n6_d, i64 %n7_a, i64 %n7_b, i64 %n7_c, i64 %n7_d, i64 %n8_a, i64 %n8_b, i64 %n8_c, i64 %n8_d, i64 %n9_a, i64 %n9_b, i64 %n9_c, i64 %n9_d, i64 %p1_b, i64 %p1_c, i64 %p1_d, i64 %p2_b, i64 %p2_c, i64 %p2_d, i64 %p3_b, i64 %p3_c, i64 %p3_d, i64 %p4_b, i64 %p4_c, i64 %p4_d, i64 %p5_b, i64 %p5_c, i64 %p5_d, i64 %p6_b, i64 %p6_c, i64 %p6_d, i64 %p7_b, i64 %p7_c, i64 %p7_d, i64 %p8_b, i64 %p8_c, i64 %p8_d, i64 %p9_b, i64 %p9_c, i64 %p9_d, float* %A_1, float* %A_2, float* %A_3, float* %A_4, float* %A_5, float* %A_6, float* %A_7, float* %A_8, float* %A_9) { +define void @foo(i64 %n1_a, i64 %n1_b, i64 %n1_c, i64 %n1_d, i64 %n2_a, i64 %n2_b, i64 %n2_c, i64 %n2_d, i64 %n3_a, i64 %n3_b, i64 %n3_c, i64 %n3_d, i64 %n4_a, i64 %n4_b, i64 %n4_c, i64 %n4_d, i64 %n5_a, i64 %n5_b, i64 %n5_c, i64 %n5_d, i64 %n6_a, i64 %n6_b, i64 %n6_c, i64 %n6_d, i64 %n7_a, i64 %n7_b, i64 %n7_c, i64 %n7_d, i64 %n8_a, i64 %n8_b, i64 %n8_c, i64 %n8_d, i64 %n9_a, i64 %n9_b, i64 %n9_c, i64 %n9_d, i64 %p1_b, i64 %p1_c, i64 %p1_d, i64 %p2_b, i64 %p2_c, i64 %p2_d, i64 %p3_b, i64 %p3_c, i64 %p3_d, i64 %p4_b, i64 %p4_c, i64 %p4_d, i64 %p5_b, i64 %p5_c, i64 %p5_d, i64 %p6_b, i64 %p6_c, i64 %p6_d, i64 %p7_b, i64 %p7_c, i64 %p7_d, i64 %p8_b, i64 %p8_c, i64 %p8_d, i64 %p9_b, i64 %p9_c, i64 %p9_d, ptr %A_1, ptr %A_2, ptr %A_3, ptr %A_4, ptr %A_5, ptr %A_6, ptr %A_7, ptr %A_8, ptr %A_9) { bb: br label %bb1 @@ -113,16 +113,16 @@ bb11: ; preds = %bb9 %tmp16 = mul nuw i64 %p1_b, %p1_c %tmp17 = mul nuw i64 %tmp16, %p1_d %tmp18 = mul nsw i64 %i.0, %tmp17 - %tmp19 = getelementptr inbounds float, float* %A_1, i64 %tmp18 + %tmp19 = getelementptr inbounds float, ptr %A_1, i64 %tmp18 %tmp20 = mul nuw i64 %p1_c, %p1_d %tmp21 = mul nsw i64 %j.0, %tmp20 - %tmp22 = getelementptr inbounds float, float* %tmp19, i64 %tmp21 + %tmp22 = getelementptr inbounds float, ptr %tmp19, i64 %tmp21 %tmp23 = mul nsw i64 %k.0, %p1_d - %tmp24 = getelementptr inbounds float, float* %tmp22, i64 %tmp23 - %tmp25 = getelementptr inbounds float, float* %tmp24, i64 %l.0 - %tmp26 = load float, float* %tmp25, align 4 + %tmp24 = getelementptr inbounds float, ptr %tmp22, i64 %tmp23 + %tmp25 = getelementptr inbounds float, ptr %tmp24, i64 %l.0 + %tmp26 = load float, ptr %tmp25, align 4 %tmp27 = fadd float %tmp26, %tmp15 - store float %tmp27, float* %tmp25, align 4 + store float %tmp27, ptr %tmp25, align 4 br label %bb28 bb28: ; preds = %bb11 @@ -190,16 +190,16 @@ bb51: ; preds = %bb49 %tmp56 = mul nuw i64 %p2_b, %p2_c %tmp57 = mul nuw i64 %tmp56, %p2_d %tmp58 = mul nsw i64 %i1.0, %tmp57 - %tmp59 = getelementptr inbounds float, float* %A_2, i64 %tmp58 + %tmp59 = getelementptr inbounds float, ptr %A_2, i64 %tmp58 %tmp60 = mul nuw i64 %p2_c, %p2_d %tmp61 = mul nsw i64 %j2.0, %tmp60 - %tmp62 = getelementptr inbounds float, float* %tmp59, i64 %tmp61 + %tmp62 = getelementptr inbounds float, ptr %tmp59, i64 %tmp61 %tmp63 = mul nsw i64 %k3.0, %p2_d - %tmp64 = getelementptr inbounds float, float* %tmp62, i64 %tmp63 - %tmp65 = getelementptr inbounds float, float* %tmp64, i64 %l4.0 - %tmp66 = load float, float* %tmp65, align 4 + %tmp64 = getelementptr inbounds float, ptr %tmp62, i64 %tmp63 + %tmp65 = getelementptr inbounds float, ptr %tmp64, i64 %l4.0 + %tmp66 = load float, ptr %tmp65, align 4 %tmp67 = fadd float %tmp66, %tmp55 - store float %tmp67, float* %tmp65, align 4 + store float %tmp67, ptr %tmp65, align 4 br label %bb68 bb68: ; preds = %bb51 @@ -267,16 +267,16 @@ bb91: ; preds = %bb89 %tmp96 = mul nuw i64 %p3_b, %p3_c %tmp97 = mul nuw i64 %tmp96, %p3_d %tmp98 = mul nsw i64 %i5.0, %tmp97 - %tmp99 = getelementptr inbounds float, float* %A_3, i64 %tmp98 + %tmp99 = getelementptr inbounds float, ptr %A_3, i64 %tmp98 %tmp100 = mul nuw i64 %p3_c, %p3_d %tmp101 = mul nsw i64 %j6.0, %tmp100 - %tmp102 = getelementptr inbounds float, float* %tmp99, i64 %tmp101 + %tmp102 = getelementptr inbounds float, ptr %tmp99, i64 %tmp101 %tmp103 = mul nsw i64 %k7.0, %p3_d - %tmp104 = getelementptr inbounds float, float* %tmp102, i64 %tmp103 - %tmp105 = getelementptr inbounds float, float* %tmp104, i64 %l8.0 - %tmp106 = load float, float* %tmp105, align 4 + %tmp104 = getelementptr inbounds float, ptr %tmp102, i64 %tmp103 + %tmp105 = getelementptr inbounds float, ptr %tmp104, i64 %l8.0 + %tmp106 = load float, ptr %tmp105, align 4 %tmp107 = fadd float %tmp106, %tmp95 - store float %tmp107, float* %tmp105, align 4 + store float %tmp107, ptr %tmp105, align 4 br label %bb108 bb108: ; preds = %bb91 @@ -344,16 +344,16 @@ bb131: ; preds = %bb129 %tmp136 = mul nuw i64 %p4_b, %p4_c %tmp137 = mul nuw i64 %tmp136, %p4_d %tmp138 = mul nsw i64 %i9.0, %tmp137 - %tmp139 = getelementptr inbounds float, float* %A_4, i64 %tmp138 + %tmp139 = getelementptr inbounds float, ptr %A_4, i64 %tmp138 %tmp140 = mul nuw i64 %p4_c, %p4_d %tmp141 = mul nsw i64 %j10.0, %tmp140 - %tmp142 = getelementptr inbounds float, float* %tmp139, i64 %tmp141 + %tmp142 = getelementptr inbounds float, ptr %tmp139, i64 %tmp141 %tmp143 = mul nsw i64 %k11.0, %p4_d - %tmp144 = getelementptr inbounds float, float* %tmp142, i64 %tmp143 - %tmp145 = getelementptr inbounds float, float* %tmp144, i64 %l12.0 - %tmp146 = load float, float* %tmp145, align 4 + %tmp144 = getelementptr inbounds float, ptr %tmp142, i64 %tmp143 + %tmp145 = getelementptr inbounds float, ptr %tmp144, i64 %l12.0 + %tmp146 = load float, ptr %tmp145, align 4 %tmp147 = fadd float %tmp146, %tmp135 - store float %tmp147, float* %tmp145, align 4 + store float %tmp147, ptr %tmp145, align 4 br label %bb148 bb148: ; preds = %bb131 @@ -421,16 +421,16 @@ bb171: ; preds = %bb169 %tmp176 = mul nuw i64 %p5_b, %p5_c %tmp177 = mul nuw i64 %tmp176, %p5_d %tmp178 = mul nsw i64 %i13.0, %tmp177 - %tmp179 = getelementptr inbounds float, float* %A_5, i64 %tmp178 + %tmp179 = getelementptr inbounds float, ptr %A_5, i64 %tmp178 %tmp180 = mul nuw i64 %p5_c, %p5_d %tmp181 = mul nsw i64 %j14.0, %tmp180 - %tmp182 = getelementptr inbounds float, float* %tmp179, i64 %tmp181 + %tmp182 = getelementptr inbounds float, ptr %tmp179, i64 %tmp181 %tmp183 = mul nsw i64 %k15.0, %p5_d - %tmp184 = getelementptr inbounds float, float* %tmp182, i64 %tmp183 - %tmp185 = getelementptr inbounds float, float* %tmp184, i64 %l16.0 - %tmp186 = load float, float* %tmp185, align 4 + %tmp184 = getelementptr inbounds float, ptr %tmp182, i64 %tmp183 + %tmp185 = getelementptr inbounds float, ptr %tmp184, i64 %l16.0 + %tmp186 = load float, ptr %tmp185, align 4 %tmp187 = fadd float %tmp186, %tmp175 - store float %tmp187, float* %tmp185, align 4 + store float %tmp187, ptr %tmp185, align 4 br label %bb188 bb188: ; preds = %bb171 @@ -498,16 +498,16 @@ bb211: ; preds = %bb209 %tmp216 = mul nuw i64 %p6_b, %p6_c %tmp217 = mul nuw i64 %tmp216, %p6_d %tmp218 = mul nsw i64 %i17.0, %tmp217 - %tmp219 = getelementptr inbounds float, float* %A_6, i64 %tmp218 + %tmp219 = getelementptr inbounds float, ptr %A_6, i64 %tmp218 %tmp220 = mul nuw i64 %p6_c, %p6_d %tmp221 = mul nsw i64 %j18.0, %tmp220 - %tmp222 = getelementptr inbounds float, float* %tmp219, i64 %tmp221 + %tmp222 = getelementptr inbounds float, ptr %tmp219, i64 %tmp221 %tmp223 = mul nsw i64 %k19.0, %p6_d - %tmp224 = getelementptr inbounds float, float* %tmp222, i64 %tmp223 - %tmp225 = getelementptr inbounds float, float* %tmp224, i64 %l20.0 - %tmp226 = load float, float* %tmp225, align 4 + %tmp224 = getelementptr inbounds float, ptr %tmp222, i64 %tmp223 + %tmp225 = getelementptr inbounds float, ptr %tmp224, i64 %l20.0 + %tmp226 = load float, ptr %tmp225, align 4 %tmp227 = fadd float %tmp226, %tmp215 - store float %tmp227, float* %tmp225, align 4 + store float %tmp227, ptr %tmp225, align 4 br label %bb228 bb228: ; preds = %bb211 @@ -575,16 +575,16 @@ bb251: ; preds = %bb249 %tmp256 = mul nuw i64 %p7_b, %p7_c %tmp257 = mul nuw i64 %tmp256, %p7_d %tmp258 = mul nsw i64 %i21.0, %tmp257 - %tmp259 = getelementptr inbounds float, float* %A_7, i64 %tmp258 + %tmp259 = getelementptr inbounds float, ptr %A_7, i64 %tmp258 %tmp260 = mul nuw i64 %p7_c, %p7_d %tmp261 = mul nsw i64 %j22.0, %tmp260 - %tmp262 = getelementptr inbounds float, float* %tmp259, i64 %tmp261 + %tmp262 = getelementptr inbounds float, ptr %tmp259, i64 %tmp261 %tmp263 = mul nsw i64 %k23.0, %p7_d - %tmp264 = getelementptr inbounds float, float* %tmp262, i64 %tmp263 - %tmp265 = getelementptr inbounds float, float* %tmp264, i64 %l24.0 - %tmp266 = load float, float* %tmp265, align 4 + %tmp264 = getelementptr inbounds float, ptr %tmp262, i64 %tmp263 + %tmp265 = getelementptr inbounds float, ptr %tmp264, i64 %l24.0 + %tmp266 = load float, ptr %tmp265, align 4 %tmp267 = fadd float %tmp266, %tmp255 - store float %tmp267, float* %tmp265, align 4 + store float %tmp267, ptr %tmp265, align 4 br label %bb268 bb268: ; preds = %bb251 @@ -652,16 +652,16 @@ bb291: ; preds = %bb289 %tmp296 = mul nuw i64 %p8_b, %p8_c %tmp297 = mul nuw i64 %tmp296, %p8_d %tmp298 = mul nsw i64 %i25.0, %tmp297 - %tmp299 = getelementptr inbounds float, float* %A_8, i64 %tmp298 + %tmp299 = getelementptr inbounds float, ptr %A_8, i64 %tmp298 %tmp300 = mul nuw i64 %p8_c, %p8_d %tmp301 = mul nsw i64 %j26.0, %tmp300 - %tmp302 = getelementptr inbounds float, float* %tmp299, i64 %tmp301 + %tmp302 = getelementptr inbounds float, ptr %tmp299, i64 %tmp301 %tmp303 = mul nsw i64 %k27.0, %p8_d - %tmp304 = getelementptr inbounds float, float* %tmp302, i64 %tmp303 - %tmp305 = getelementptr inbounds float, float* %tmp304, i64 %l28.0 - %tmp306 = load float, float* %tmp305, align 4 + %tmp304 = getelementptr inbounds float, ptr %tmp302, i64 %tmp303 + %tmp305 = getelementptr inbounds float, ptr %tmp304, i64 %l28.0 + %tmp306 = load float, ptr %tmp305, align 4 %tmp307 = fadd float %tmp306, %tmp295 - store float %tmp307, float* %tmp305, align 4 + store float %tmp307, ptr %tmp305, align 4 br label %bb308 bb308: ; preds = %bb291 @@ -729,16 +729,16 @@ bb331: ; preds = %bb329 %tmp336 = mul nuw i64 %p9_b, %p9_c %tmp337 = mul nuw i64 %tmp336, %p9_d %tmp338 = mul nsw i64 %i29.0, %tmp337 - %tmp339 = getelementptr inbounds float, float* %A_9, i64 %tmp338 + %tmp339 = getelementptr inbounds float, ptr %A_9, i64 %tmp338 %tmp340 = mul nuw i64 %p9_c, %p9_d %tmp341 = mul nsw i64 %j30.0, %tmp340 - %tmp342 = getelementptr inbounds float, float* %tmp339, i64 %tmp341 + %tmp342 = getelementptr inbounds float, ptr %tmp339, i64 %tmp341 %tmp343 = mul nsw i64 %k31.0, %p9_d - %tmp344 = getelementptr inbounds float, float* %tmp342, i64 %tmp343 - %tmp345 = getelementptr inbounds float, float* %tmp344, i64 %l32.0 - %tmp346 = load float, float* %tmp345, align 4 + %tmp344 = getelementptr inbounds float, ptr %tmp342, i64 %tmp343 + %tmp345 = getelementptr inbounds float, ptr %tmp344, i64 %l32.0 + %tmp346 = load float, ptr %tmp345, align 4 %tmp347 = fadd float %tmp346, %tmp335 - store float %tmp347, float* %tmp345, align 4 + store float %tmp347, ptr %tmp345, align 4 br label %bb348 bb348: ; preds = %bb331 diff --git a/polly/test/ScopInfo/avoid_new_parameters_from_geps.ll b/polly/test/ScopInfo/avoid_new_parameters_from_geps.ll index 309ef6b33d20..0e17eb1d3668 100644 --- a/polly/test/ScopInfo/avoid_new_parameters_from_geps.ll +++ b/polly/test/ScopInfo/avoid_new_parameters_from_geps.ll @@ -13,10 +13,10 @@ ; CHECK-NEXT: Invalid Context: ; CHECK-NEXT: { : false } ; CHECK: Arrays { -; CHECK-NEXT: i32* MemRef_team2_0_in; // Element size 8 +; CHECK-NEXT: ptr MemRef_team2_0_in; // Element size 8 ; CHECK-NEXT: } ; CHECK-NEXT: Arrays (Bounds as pw_affs) { -; CHECK-NEXT: i32* MemRef_team2_0_in; // Element size 8 +; CHECK-NEXT: ptr MemRef_team2_0_in; // Element size 8 ; CHECK-NEXT: } ; CHECK-NEXT: Alias Groups (0): ; CHECK-NEXT: n/a @@ -50,14 +50,14 @@ for.body58: ; preds = %for.cond56.preheade br i1 %cmp59, label %if.then60, label %if.else71 if.then60: ; preds = %for.body58 - %arrayidx70 = getelementptr inbounds [18 x [15 x [3 x i32]]], [18 x [15 x [3 x i32]]]* @sched, i64 0, i64 1, i64 %indvars.iv78, i64 1 + %arrayidx70 = getelementptr inbounds [18 x [15 x [3 x i32]]], ptr @sched, i64 0, i64 1, i64 %indvars.iv78, i64 1 br label %land.lhs.true if.else71: ; preds = %for.body58 br label %land.lhs.true land.lhs.true: ; preds = %if.else71, %if.then60 - %team2.0.in = phi i32* [ %arrayidx70, %if.then60 ], [ undef, %if.else71 ] + %team2.0.in = phi ptr [ %arrayidx70, %if.then60 ], [ undef, %if.else71 ] br i1 undef, label %for.inc158, label %if.then86 if.then86: ; preds = %land.lhs.true diff --git a/polly/test/ScopInfo/bool-addrec.ll b/polly/test/ScopInfo/bool-addrec.ll index acecfb5b14ca..1924a4b5266b 100644 --- a/polly/test/ScopInfo/bool-addrec.ll +++ b/polly/test/ScopInfo/bool-addrec.ll @@ -10,7 +10,7 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n8:16:32-S64" -define void @f(i32* %a, i32 %x) { +define void @f(ptr %a, i32 %x) { entry: br label %for.body @@ -21,22 +21,22 @@ for.body: ; preds = %entry, %for.inc br i1 %cmp1, label %if.then, label %if.end if.then: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %a, i32 %i.03 - store i32 3, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %a, i32 %i.03 + store i32 3, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %if.then, %for.body %mul = shl nsw i32 %i.03, 1 - %arrayidx2 = getelementptr inbounds i32, i32* %a, i32 %mul - store i32 3, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %a, i32 %mul + store i32 3, ptr %arrayidx2, align 4 %rem32 = and i32 %i.03, 1 %cmp4 = icmp eq i32 %rem32, 0 br i1 %cmp4, label %if.then5, label %for.inc if.then5: ; preds = %if.end %mul6 = mul nsw i32 %i.03, 3 - %arrayidx7 = getelementptr inbounds i32, i32* %a, i32 %mul6 - store i32 3, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %a, i32 %mul6 + store i32 3, ptr %arrayidx7, align 4 br label %for.inc for.inc: ; preds = %if.end, %if.then5 diff --git a/polly/test/ScopInfo/bounded_loop_assumptions.ll b/polly/test/ScopInfo/bounded_loop_assumptions.ll index d35ca1f54f24..d472c7586c53 100644 --- a/polly/test/ScopInfo/bounded_loop_assumptions.ll +++ b/polly/test/ScopInfo/bounded_loop_assumptions.ll @@ -20,7 +20,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define i32 @jd(i32* noalias %A, i32 %x, i32 %N) { +define i32 @jd(ptr noalias %A, i32 %x, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -44,8 +44,8 @@ for.body3: ; preds = %for.cond1 br label %for.inc for.inc: ; preds = %for.body3 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %x.addr.1, %tmp1 %inc = add i32 %j.0, 1 br label %for.cond1 diff --git a/polly/test/ScopInfo/branch-references-loop-scev-with-unknown-iterations-2.ll b/polly/test/ScopInfo/branch-references-loop-scev-with-unknown-iterations-2.ll index 31180fc71411..5c5f264aab60 100644 --- a/polly/test/ScopInfo/branch-references-loop-scev-with-unknown-iterations-2.ll +++ b/polly/test/ScopInfo/branch-references-loop-scev-with-unknown-iterations-2.ll @@ -20,14 +20,14 @@ target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" target triple = "aarch64--linux-android" -define void @f(i16 %event, float* %A) { +define void @f(i16 %event, ptr %A) { entry: br label %loop loop: %indvar = phi i8 [ 0, %entry ], [ %indvar.next, %loop ] %indvar.next = add i8 %indvar, -1 - store float 1.0, float* %A + store float 1.0, ptr %A %cmp = icmp eq i8 %indvar.next, 0 br i1 false, label %barrier, label %loop @@ -39,7 +39,7 @@ branch: br i1 %cmp, label %branch, label %then then: - store float 1.0, float* %A + store float 1.0, ptr %A br label %end end: diff --git a/polly/test/ScopInfo/branch-references-loop-scev-with-unknown-iterations-3.ll b/polly/test/ScopInfo/branch-references-loop-scev-with-unknown-iterations-3.ll index 7ce66eb4cc35..d69d3a16c0d7 100644 --- a/polly/test/ScopInfo/branch-references-loop-scev-with-unknown-iterations-3.ll +++ b/polly/test/ScopInfo/branch-references-loop-scev-with-unknown-iterations-3.ll @@ -59,14 +59,14 @@ target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" target triple = "aarch64--linux-android" -define void @f(i16 %event, i8 %p, float* %A) { +define void @f(i16 %event, i8 %p, ptr %A) { entry: br label %loop loop: %indvar = phi i8 [ 0, %entry ], [ %indvar.next, %loop ] %indvar.next = add i8 %indvar, 1 - store float 1.0, float* %A + store float 1.0, ptr %A %cmp = icmp eq i8 %indvar.next, %p %possibly_infinite = icmp eq i8 100, %p br i1 %possibly_infinite, label %branch, label %loop @@ -75,7 +75,7 @@ branch: br i1 %cmp, label %end, label %then then: - store float 1.0, float* %A + store float 1.0, ptr %A br label %end end: diff --git a/polly/test/ScopInfo/branch-references-loop-scev-with-unknown-iterations.ll b/polly/test/ScopInfo/branch-references-loop-scev-with-unknown-iterations.ll index 0196b03916f6..57918fa5c92d 100644 --- a/polly/test/ScopInfo/branch-references-loop-scev-with-unknown-iterations.ll +++ b/polly/test/ScopInfo/branch-references-loop-scev-with-unknown-iterations.ll @@ -28,7 +28,7 @@ target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" target triple = "aarch64--linux-android" -define void @f(i16 %event, float* %A) { +define void @f(i16 %event, ptr %A) { entry: br label %loop @@ -42,7 +42,7 @@ branch: br i1 %cmp, label %end, label %then then: - store float 1.0, float* %A + store float 1.0, ptr %A br label %end end: diff --git a/polly/test/ScopInfo/bug_2011_1_5.ll b/polly/test/ScopInfo/bug_2011_1_5.ll index f00a73f53756..95c25f9d9cdb 100644 --- a/polly/test/ScopInfo/bug_2011_1_5.ll +++ b/polly/test/ScopInfo/bug_2011_1_5.ll @@ -12,7 +12,7 @@ entry: br label %bb1.i198.i bb1.i198.i: ; preds = %bb.i197.i, %psetq.exit196.i - %tmp51.i = inttoptr i64 0 to %struct.precisionType* + %tmp51.i = inttoptr i64 0 to ptr br i1 undef, label %bb1.i210.i, label %bb.i209.i bb.i209.i: ; preds = %bb1.i198.i @@ -23,8 +23,7 @@ bb1.i210.i: ; preds = %bb.i209.i, %bb1.i19 br i1 %0, label %bb1.i216.i, label %bb.i215.i bb.i215.i: ; preds = %bb1.i210.i - %1 = getelementptr inbounds %struct.precisionType, %struct.precisionType* %tmp51.i, i64 0, i32 0 - store i16 undef, i16* %1, align 2 + store i16 undef, ptr %tmp51.i, align 2 br label %bb1.i216.i bb1.i216.i: ; preds = %bb.i215.i, %bb1.i210.i diff --git a/polly/test/ScopInfo/bug_scev_not_fully_eval.ll b/polly/test/ScopInfo/bug_scev_not_fully_eval.ll index 2d5a4a501d8a..89d5f318829e 100644 --- a/polly/test/ScopInfo/bug_scev_not_fully_eval.ll +++ b/polly/test/ScopInfo/bug_scev_not_fully_eval.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-print-detect -disable-output < %s | not FileCheck %s target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -@edge.8265 = external global [72 x i32], align 32 ; <[72 x i32]*> [#uses=1] +@edge.8265 = external global [72 x i32], align 32 ; <ptr> [#uses=1] define void @compact_unitcell_edges() nounwind { bb.nph19: @@ -22,8 +22,8 @@ bb.nph: ; preds = %bb4 bb7: ; preds = %bb7, %bb.nph %indvar = phi i64 [ 0, %bb.nph ], [ %indvar.next, %bb7 ] ; <i64> [#uses=2] %tmp21 = add i64 %tmp, %indvar ; <i64> [#uses=1] - %scevgep = getelementptr [72 x i32], [72 x i32]* @edge.8265, i64 0, i64 %tmp21 ; <i32*> [#uses=1] - store i32 undef, i32* %scevgep, align 4 + %scevgep = getelementptr [72 x i32], ptr @edge.8265, i64 0, i64 %tmp21 ; <ptr> [#uses=1] + store i32 undef, ptr %scevgep, align 4 %indvar.next = add i64 %indvar, 1 ; <i64> [#uses=1] br i1 undef, label %bb10, label %bb7 diff --git a/polly/test/ScopInfo/cfg_consequences.ll b/polly/test/ScopInfo/cfg_consequences.ll index 8c5e7f294332..84f94b135735 100644 --- a/polly/test/ScopInfo/cfg_consequences.ll +++ b/polly/test/ScopInfo/cfg_consequences.ll @@ -216,112 +216,112 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @consequences(i32* %A, i32 %bool_cond, i32 %lhs, i32 %rhs) { +define void @consequences(ptr %A, i32 %bool_cond, i32 %lhs, i32 %rhs) { entry: br label %BC BC: ; preds = %entry - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 %tobool = icmp eq i32 %bool_cond, 0 br i1 %tobool, label %M_BC, label %S_BC S_BC: ; preds = %if.then - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %M_BC M_BC: ; preds = %BC, %S_BC - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %NEG_BC NEG_BC: ; preds = %if.end - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 %tobool1 = icmp eq i32 %bool_cond, 0 br i1 %tobool1, label %S_NEG_BC, label %M_NEG_BC S_NEG_BC: ; preds = %if.then.2 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %M_NEG_BC M_NEG_BC: ; preds = %NEG_BC, %S_NEG_BC - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %SLT SLT: ; preds = %if.end.3 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 %cmp = icmp slt i32 %lhs, %rhs br i1 %cmp, label %S_SLT, label %M_SLT S_SLT: ; preds = %if.then.4 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %M_SLT M_SLT: ; preds = %S_SLT, %SLT - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %SLE SLE: ; preds = %if.end.5 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 %cmp6 = icmp sgt i32 %lhs, %rhs br i1 %cmp6, label %M_SLE, label %S_SLE S_SLE: ; preds = %if.then.7 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %M_SLE M_SLE: ; preds = %SLE, %S_SLE - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %SGT SGT: ; preds = %if.end.8 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 %cmp9 = icmp sgt i32 %lhs, %rhs br i1 %cmp9, label %S_SGT, label %M_SGT S_SGT: ; preds = %if.then.10 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %M_SGT M_SGT: ; preds = %S_SGT, %SGT - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %SGE SGE: ; preds = %if.end.11 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 %cmp12 = icmp slt i32 %lhs, %rhs br i1 %cmp12, label %M_SGE, label %S_SGE S_SGE: ; preds = %if.then.13 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %M_SGE M_SGE: ; preds = %SGE, %S_SGE - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %EQ EQ: ; preds = %if.end.14 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 %cmp15 = icmp eq i32 %lhs, %rhs br i1 %cmp15, label %S_EQ, label %M_EQ S_EQ: ; preds = %if.then.16 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %M_EQ M_EQ: ; preds = %S_EQ, %EQ - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %NEQ NEQ: ; preds = %if.end.17 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 %cmp18 = icmp eq i32 %lhs, %rhs br i1 %cmp18, label %M_NEQ, label %S_NEQ S_NEQ: ; preds = %if.then.19 - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %M_NEQ M_NEQ: ; preds = %NEQ, %S_NEQ - store i32 0, i32* %A, align 4 + store i32 0, ptr %A, align 4 br label %exit exit: diff --git a/polly/test/ScopInfo/complex-branch-structure.ll b/polly/test/ScopInfo/complex-branch-structure.ll index 0ea7117ea48b..24ebdcf213f8 100644 --- a/polly/test/ScopInfo/complex-branch-structure.ll +++ b/polly/test/ScopInfo/complex-branch-structure.ll @@ -22,7 +22,7 @@ ; CHECK: Low complexity assumption: { : false } -define void @foo(float* %A, float* %B, float* %C, float* %D, float* %E, +define void @foo(ptr %A, ptr %B, ptr %C, ptr %D, ptr %E, i64 %A1.p, i64 %A2.p, i64 %A3.p, i64 %B1.p, i64 %B2.p, i64 %B3.p, i64 %C1.p, i64 %C2.p, i64 %C3.p, @@ -36,142 +36,142 @@ loop.header: switch i2 0, label %A0 [i2 1, label %A2 i2 2, label %A4] A0: - %val.A0 = load float, float* %A - store float %val.A0, float* %A + %val.A0 = load float, ptr %A + store float %val.A0, ptr %A br label %A1 A2: - %val.A2 = load float, float* %A - store float %val.A2, float* %A + %val.A2 = load float, ptr %A + store float %val.A2, ptr %A %A2.cmp = icmp eq i64 %A2.p, 0 br i1 %A2.cmp, label %A1, label %A3 A4: - %val.A4 = load float, float* %A - store float %val.A4, float* %A + %val.A4 = load float, ptr %A + store float %val.A4, ptr %A br label %A3 A1: - %val.A1 = load float, float* %A - store float %val.A1, float* %A + %val.A1 = load float, ptr %A + store float %val.A1, ptr %A %A1.cmp = icmp eq i64 %A1.p, 0 br i1 %A1.cmp, label %B0, label %B2 A3: - %val.A3 = load float, float* %A - store float %val.A3, float* %A + %val.A3 = load float, ptr %A + store float %val.A3, ptr %A %A3.cmp = icmp eq i64 %A3.p, 0 br i1 %A3.cmp, label %B2, label %B4 B0: - %val.B0 = load float, float* %B - store float %val.B0, float* %B + %val.B0 = load float, ptr %B + store float %val.B0, ptr %B br label %B1 B2: - %val.B2 = load float, float* %B - store float %val.B2, float* %B + %val.B2 = load float, ptr %B + store float %val.B2, ptr %B %B2.cmp = icmp eq i64 %B2.p, 0 br i1 %B2.cmp, label %B1, label %B3 B4: - %val.B4 = load float, float* %B - store float %val.B4, float* %B + %val.B4 = load float, ptr %B + store float %val.B4, ptr %B br label %B3 B1: - %val.B1 = load float, float* %B - store float %val.B1, float* %B + %val.B1 = load float, ptr %B + store float %val.B1, ptr %B %B1.cmp = icmp eq i64 %B1.p, 0 br i1 %B1.cmp, label %C0, label %C2 B3: - %val.B3 = load float, float* %A - store float %val.B3, float* %A + %val.B3 = load float, ptr %A + store float %val.B3, ptr %A %B3.cmp = icmp eq i64 %A3.p, 0 br i1 %B3.cmp, label %C2, label %C4 C0: - %val.C0 = load float, float* %C - store float %val.C0, float* %C + %val.C0 = load float, ptr %C + store float %val.C0, ptr %C br label %C1 C2: - %val.C2 = load float, float* %C - store float %val.C2, float* %C + %val.C2 = load float, ptr %C + store float %val.C2, ptr %C %C2.cmp = icmp eq i64 %C2.p, 0 br i1 %C2.cmp, label %C1, label %C3 C4: - %val.C4 = load float, float* %C - store float %val.C4, float* %C + %val.C4 = load float, ptr %C + store float %val.C4, ptr %C br label %C3 C1: - %val.C1 = load float, float* %C - store float %val.C1, float* %C + %val.C1 = load float, ptr %C + store float %val.C1, ptr %C %C1.cmp = icmp eq i64 %C1.p, 0 br i1 %C1.cmp, label %D0, label %D2 C3: - %val.C3 = load float, float* %C - store float %val.C3, float* %C + %val.C3 = load float, ptr %C + store float %val.C3, ptr %C %C3.cmp = icmp eq i64 %C3.p, 0 br i1 %C3.cmp, label %D2, label %D4 D0: - %val.D0 = load float, float* %D - store float %val.D0, float* %D + %val.D0 = load float, ptr %D + store float %val.D0, ptr %D br label %D1 D2: - %val.D2 = load float, float* %D - store float %val.D2, float* %D + %val.D2 = load float, ptr %D + store float %val.D2, ptr %D %D2.cmp = icmp eq i64 %D2.p, 0 br i1 %D2.cmp, label %D1, label %D3 D4: - %val.D4 = load float, float* %D - store float %val.D4, float* %D + %val.D4 = load float, ptr %D + store float %val.D4, ptr %D br label %D3 D1: - %val.D1 = load float, float* %D - store float %val.D1, float* %D + %val.D1 = load float, ptr %D + store float %val.D1, ptr %D %D1.cmp = icmp eq i64 %D1.p, 0 br i1 %D1.cmp, label %E0, label %E2 D3: - %val.D3 = load float, float* %D - store float %val.D3, float* %D + %val.D3 = load float, ptr %D + store float %val.D3, ptr %D %D3.cmp = icmp eq i64 %D3.p, 0 br i1 %D3.cmp, label %E2, label %E4 E0: - %val.E0 = load float, float* %E - store float %val.E0, float* %E + %val.E0 = load float, ptr %E + store float %val.E0, ptr %E br label %E1 E2: - %val.E2 = load float, float* %E - store float %val.E2, float* %E + %val.E2 = load float, ptr %E + store float %val.E2, ptr %E %E2.cmp = icmp eq i64 %E2.p, 0 br i1 %E2.cmp, label %E1, label %E3 E4: - %val.E4 = load float, float* %E - store float %val.E4, float* %E + %val.E4 = load float, ptr %E + store float %val.E4, ptr %E br label %E3 E1: - %val.E1 = load float, float* %E - store float %val.E1, float* %E + %val.E1 = load float, ptr %E + store float %val.E1, ptr %E %E1.cmp = icmp eq i64 %E1.p, 0 br i1 %E1.cmp, label %F0, label %F2 E3: - %val.E3 = load float, float* %E - store float %val.E3, float* %E + %val.E3 = load float, ptr %E + store float %val.E3, ptr %E %E3.cmp = icmp eq i64 %E3.p, 0 br i1 %E3.cmp, label %F2, label %F4 diff --git a/polly/test/ScopInfo/complex-condition.ll b/polly/test/ScopInfo/complex-condition.ll index cee9edb7f381..31d34b033725 100644 --- a/polly/test/ScopInfo/complex-condition.ll +++ b/polly/test/ScopInfo/complex-condition.ll @@ -23,119 +23,119 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %Begin Begin: ; preds = %entry - %tmp = load i32, i32* %A, align 4 + %tmp = load i32, ptr %A, align 4 %cmp = icmp eq i32 %tmp, 1 - %arrayidx1 = getelementptr inbounds i32, i32* %A, i64 1 - %tmp1 = load i32, i32* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %A, i64 1 + %tmp1 = load i32, ptr %arrayidx1, align 4 %cmp2 = icmp eq i32 %tmp1, 1 %or = or i1 %cmp, %cmp2 - %arrayidx4 = getelementptr inbounds i32, i32* %A, i64 2 - %tmp2 = load i32, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %A, i64 2 + %tmp2 = load i32, ptr %arrayidx4, align 4 %cmp5 = icmp eq i32 %tmp2, 1 %or7 = or i1 %or, %cmp5 - %arrayidx8 = getelementptr inbounds i32, i32* %A, i64 3 - %tmp3 = load i32, i32* %arrayidx8, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %A, i64 3 + %tmp3 = load i32, ptr %arrayidx8, align 4 %cmp9 = icmp eq i32 %tmp3, 1 %or11 = or i1 %or7, %cmp9 - %arrayidx12 = getelementptr inbounds i32, i32* %A, i64 4 - %tmp4 = load i32, i32* %arrayidx12, align 4 + %arrayidx12 = getelementptr inbounds i32, ptr %A, i64 4 + %tmp4 = load i32, ptr %arrayidx12, align 4 %cmp13 = icmp eq i32 %tmp4, 1 %or15 = or i1 %or11, %cmp13 - %arrayidx16 = getelementptr inbounds i32, i32* %A, i64 5 - %tmp5 = load i32, i32* %arrayidx16, align 4 + %arrayidx16 = getelementptr inbounds i32, ptr %A, i64 5 + %tmp5 = load i32, ptr %arrayidx16, align 4 %cmp17 = icmp eq i32 %tmp5, 1 %or19 = or i1 %or15, %cmp17 - %arrayidx20 = getelementptr inbounds i32, i32* %A, i64 6 - %tmp6 = load i32, i32* %arrayidx20, align 4 + %arrayidx20 = getelementptr inbounds i32, ptr %A, i64 6 + %tmp6 = load i32, ptr %arrayidx20, align 4 %cmp21 = icmp eq i32 %tmp6, 1 %or23 = or i1 %or19, %cmp21 - %arrayidx24 = getelementptr inbounds i32, i32* %A, i64 7 - %tmp7 = load i32, i32* %arrayidx24, align 4 + %arrayidx24 = getelementptr inbounds i32, ptr %A, i64 7 + %tmp7 = load i32, ptr %arrayidx24, align 4 %cmp25 = icmp eq i32 %tmp7, 1 %or27 = or i1 %or23, %cmp25 - %arrayidx28 = getelementptr inbounds i32, i32* %A, i64 8 - %tmp8 = load i32, i32* %arrayidx28, align 4 + %arrayidx28 = getelementptr inbounds i32, ptr %A, i64 8 + %tmp8 = load i32, ptr %arrayidx28, align 4 %cmp29 = icmp eq i32 %tmp8, 1 %or31 = or i1 %or27, %cmp29 - %arrayidx32 = getelementptr inbounds i32, i32* %A, i64 9 - %tmp9 = load i32, i32* %arrayidx32, align 4 + %arrayidx32 = getelementptr inbounds i32, ptr %A, i64 9 + %tmp9 = load i32, ptr %arrayidx32, align 4 %cmp33 = icmp eq i32 %tmp9, 1 %or35 = or i1 %or31, %cmp33 - %arrayidx36 = getelementptr inbounds i32, i32* %A, i64 10 - %tmp10 = load i32, i32* %arrayidx36, align 4 + %arrayidx36 = getelementptr inbounds i32, ptr %A, i64 10 + %tmp10 = load i32, ptr %arrayidx36, align 4 %cmp37 = icmp eq i32 %tmp10, 1 %or39 = or i1 %or35, %cmp37 - %arrayidx40 = getelementptr inbounds i32, i32* %A, i64 11 - %tmp11 = load i32, i32* %arrayidx40, align 4 + %arrayidx40 = getelementptr inbounds i32, ptr %A, i64 11 + %tmp11 = load i32, ptr %arrayidx40, align 4 %cmp41 = icmp eq i32 %tmp11, 1 %or43 = or i1 %or39, %cmp41 - %arrayidx44 = getelementptr inbounds i32, i32* %A, i64 12 - %tmp12 = load i32, i32* %arrayidx44, align 4 + %arrayidx44 = getelementptr inbounds i32, ptr %A, i64 12 + %tmp12 = load i32, ptr %arrayidx44, align 4 %cmp45 = icmp eq i32 %tmp12, 1 %or47 = or i1 %or43, %cmp45 - %arrayidx48 = getelementptr inbounds i32, i32* %A, i64 13 - %tmp13 = load i32, i32* %arrayidx48, align 4 + %arrayidx48 = getelementptr inbounds i32, ptr %A, i64 13 + %tmp13 = load i32, ptr %arrayidx48, align 4 %cmp49 = icmp eq i32 %tmp13, 1 %or51 = or i1 %or47, %cmp49 - %arrayidx52 = getelementptr inbounds i32, i32* %A, i64 14 - %tmp14 = load i32, i32* %arrayidx52, align 4 + %arrayidx52 = getelementptr inbounds i32, ptr %A, i64 14 + %tmp14 = load i32, ptr %arrayidx52, align 4 %cmp53 = icmp eq i32 %tmp14, 1 %or55 = or i1 %or51, %cmp53 - %arrayidx56 = getelementptr inbounds i32, i32* %A, i64 15 - %tmp15 = load i32, i32* %arrayidx56, align 4 + %arrayidx56 = getelementptr inbounds i32, ptr %A, i64 15 + %tmp15 = load i32, ptr %arrayidx56, align 4 %cmp57 = icmp eq i32 %tmp15, 1 %or59 = or i1 %or55, %cmp57 - %arrayidx60 = getelementptr inbounds i32, i32* %A, i64 16 - %tmp16 = load i32, i32* %arrayidx60, align 4 + %arrayidx60 = getelementptr inbounds i32, ptr %A, i64 16 + %tmp16 = load i32, ptr %arrayidx60, align 4 %cmp61 = icmp eq i32 %tmp16, 1 %or63 = or i1 %or59, %cmp61 - %arrayidx64 = getelementptr inbounds i32, i32* %A, i64 17 - %tmp17 = load i32, i32* %arrayidx64, align 4 + %arrayidx64 = getelementptr inbounds i32, ptr %A, i64 17 + %tmp17 = load i32, ptr %arrayidx64, align 4 %cmp65 = icmp eq i32 %tmp17, 1 %or67 = or i1 %or63, %cmp65 - %arrayidx68 = getelementptr inbounds i32, i32* %A, i64 18 - %tmp18 = load i32, i32* %arrayidx68, align 4 + %arrayidx68 = getelementptr inbounds i32, ptr %A, i64 18 + %tmp18 = load i32, ptr %arrayidx68, align 4 %cmp69 = icmp eq i32 %tmp18, 1 %or71 = or i1 %or67, %cmp69 - %arrayidx72 = getelementptr inbounds i32, i32* %A, i64 19 - %tmp19 = load i32, i32* %arrayidx72, align 4 + %arrayidx72 = getelementptr inbounds i32, ptr %A, i64 19 + %tmp19 = load i32, ptr %arrayidx72, align 4 %cmp73 = icmp eq i32 %tmp19, 1 %or75 = or i1 %or71, %cmp73 - %arrayidx76 = getelementptr inbounds i32, i32* %A, i64 20 - %tmp20 = load i32, i32* %arrayidx76, align 4 + %arrayidx76 = getelementptr inbounds i32, ptr %A, i64 20 + %tmp20 = load i32, ptr %arrayidx76, align 4 %cmp77 = icmp eq i32 %tmp20, 1 %or79 = or i1 %or75, %cmp77 - %arrayidx80 = getelementptr inbounds i32, i32* %A, i64 21 - %tmp21 = load i32, i32* %arrayidx80, align 4 + %arrayidx80 = getelementptr inbounds i32, ptr %A, i64 21 + %tmp21 = load i32, ptr %arrayidx80, align 4 %cmp81 = icmp eq i32 %tmp21, 1 %or83 = or i1 %or79, %cmp81 - %arrayidx84 = getelementptr inbounds i32, i32* %A, i64 22 - %tmp22 = load i32, i32* %arrayidx84, align 4 + %arrayidx84 = getelementptr inbounds i32, ptr %A, i64 22 + %tmp22 = load i32, ptr %arrayidx84, align 4 %cmp85 = icmp eq i32 %tmp22, 1 %or87 = or i1 %or83, %cmp85 - %arrayidx88 = getelementptr inbounds i32, i32* %A, i64 23 - %tmp23 = load i32, i32* %arrayidx88, align 4 + %arrayidx88 = getelementptr inbounds i32, ptr %A, i64 23 + %tmp23 = load i32, ptr %arrayidx88, align 4 %cmp88 = icmp eq i32 %tmp23, 1 %or89 = or i1 %or87, %cmp88 br i1 %or89, label %if.else, label %if.then if.then: ; preds = %Begin - %arrayidx90 = getelementptr inbounds i32, i32* %A, i64 -1 - %tmp24 = load i32, i32* %arrayidx90, align 4 + %arrayidx90 = getelementptr inbounds i32, ptr %A, i64 -1 + %tmp24 = load i32, ptr %arrayidx90, align 4 %inc = add nsw i32 %tmp24, 1 - store i32 %inc, i32* %arrayidx90, align 4 + store i32 %inc, ptr %arrayidx90, align 4 br label %if.end if.else: ; preds = %Begin - %arrayidx91 = getelementptr inbounds i32, i32* %A, i64 -1 - %tmp25 = load i32, i32* %arrayidx91, align 4 + %arrayidx91 = getelementptr inbounds i32, ptr %A, i64 -1 + %tmp25 = load i32, ptr %arrayidx91, align 4 %dec = add nsw i32 %tmp25, -1 - store i32 %dec, i32* %arrayidx91, align 4 + store i32 %dec, ptr %arrayidx91, align 4 br label %if.end if.end: ; preds = %if.else, %if.then diff --git a/polly/test/ScopInfo/complex-expression.ll b/polly/test/ScopInfo/complex-expression.ll index 72777b9ecdd6..1822c9de852a 100644 --- a/polly/test/ScopInfo/complex-expression.ll +++ b/polly/test/ScopInfo/complex-expression.ll @@ -13,7 +13,7 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" ; Function Attrs: norecurse nounwind -define i32 @foo(i32* nocapture readonly %src1, i32* nocapture readonly %src2, i32* nocapture %score, i32* nocapture %max, i32 %n) #0 { +define i32 @foo(ptr nocapture readonly %src1, ptr nocapture readonly %src2, ptr nocapture %score, ptr nocapture %max, i32 %n) #0 { entry: %cmp33 = icmp sgt i32 %n, 0 br i1 %cmp33, label %for.body.preheader, label %for.body7.preheader @@ -25,83 +25,83 @@ for.body7.preheader.loopexit: ; preds = %for.body br label %for.body7.preheader for.body7.preheader: ; preds = %for.body7.preheader.loopexit, %entry - %0 = load i32, i32* %score, align 4, !tbaa !3 + %0 = load i32, ptr %score, align 4, !tbaa !3 %cmp9 = icmp sgt i32 %0, -1 %.scoreMax.0 = select i1 %cmp9, i32 %0, i32 -1 - %arrayidx8.1 = getelementptr inbounds i32, i32* %score, i32 1 - %1 = load i32, i32* %arrayidx8.1, align 4, !tbaa !3 + %arrayidx8.1 = getelementptr inbounds i32, ptr %score, i32 1 + %1 = load i32, ptr %arrayidx8.1, align 4, !tbaa !3 %cmp9.1 = icmp sgt i32 %1, %.scoreMax.0 %.scoreMax.0.1 = select i1 %cmp9.1, i32 %1, i32 %.scoreMax.0 - %arrayidx8.2 = getelementptr inbounds i32, i32* %score, i32 2 - %2 = load i32, i32* %arrayidx8.2, align 4, !tbaa !3 + %arrayidx8.2 = getelementptr inbounds i32, ptr %score, i32 2 + %2 = load i32, ptr %arrayidx8.2, align 4, !tbaa !3 %cmp9.2 = icmp sgt i32 %2, %.scoreMax.0.1 %.scoreMax.0.2 = select i1 %cmp9.2, i32 %2, i32 %.scoreMax.0.1 - %arrayidx8.3 = getelementptr inbounds i32, i32* %score, i32 3 - %3 = load i32, i32* %arrayidx8.3, align 4, !tbaa !3 + %arrayidx8.3 = getelementptr inbounds i32, ptr %score, i32 3 + %3 = load i32, ptr %arrayidx8.3, align 4, !tbaa !3 %cmp9.3 = icmp sgt i32 %3, %.scoreMax.0.2 %.scoreMax.0.3 = select i1 %cmp9.3, i32 %3, i32 %.scoreMax.0.2 - %arrayidx8.4 = getelementptr inbounds i32, i32* %score, i32 4 - %4 = load i32, i32* %arrayidx8.4, align 4, !tbaa !3 + %arrayidx8.4 = getelementptr inbounds i32, ptr %score, i32 4 + %4 = load i32, ptr %arrayidx8.4, align 4, !tbaa !3 %cmp9.4 = icmp sgt i32 %4, %.scoreMax.0.3 %.scoreMax.0.4 = select i1 %cmp9.4, i32 %4, i32 %.scoreMax.0.3 - %arrayidx8.5 = getelementptr inbounds i32, i32* %score, i32 5 - %5 = load i32, i32* %arrayidx8.5, align 4, !tbaa !3 + %arrayidx8.5 = getelementptr inbounds i32, ptr %score, i32 5 + %5 = load i32, ptr %arrayidx8.5, align 4, !tbaa !3 %cmp9.5 = icmp sgt i32 %5, %.scoreMax.0.4 %.scoreMax.0.5 = select i1 %cmp9.5, i32 %5, i32 %.scoreMax.0.4 - %arrayidx8.6 = getelementptr inbounds i32, i32* %score, i32 6 - %6 = load i32, i32* %arrayidx8.6, align 4, !tbaa !3 + %arrayidx8.6 = getelementptr inbounds i32, ptr %score, i32 6 + %6 = load i32, ptr %arrayidx8.6, align 4, !tbaa !3 %cmp9.6 = icmp sgt i32 %6, %.scoreMax.0.5 %.scoreMax.0.6 = select i1 %cmp9.6, i32 %6, i32 %.scoreMax.0.5 - %arrayidx8.7 = getelementptr inbounds i32, i32* %score, i32 7 - %7 = load i32, i32* %arrayidx8.7, align 4, !tbaa !3 + %arrayidx8.7 = getelementptr inbounds i32, ptr %score, i32 7 + %7 = load i32, ptr %arrayidx8.7, align 4, !tbaa !3 %cmp9.7 = icmp sgt i32 %7, %.scoreMax.0.6 %.scoreMax.0.7 = select i1 %cmp9.7, i32 %7, i32 %.scoreMax.0.6 - %arrayidx8.8 = getelementptr inbounds i32, i32* %score, i32 8 - %8 = load i32, i32* %arrayidx8.8, align 4, !tbaa !3 + %arrayidx8.8 = getelementptr inbounds i32, ptr %score, i32 8 + %8 = load i32, ptr %arrayidx8.8, align 4, !tbaa !3 %cmp9.8 = icmp sgt i32 %8, %.scoreMax.0.7 %.scoreMax.0.8 = select i1 %cmp9.8, i32 %8, i32 %.scoreMax.0.7 - %arrayidx8.9 = getelementptr inbounds i32, i32* %score, i32 9 - %9 = load i32, i32* %arrayidx8.9, align 4, !tbaa !3 + %arrayidx8.9 = getelementptr inbounds i32, ptr %score, i32 9 + %9 = load i32, ptr %arrayidx8.9, align 4, !tbaa !3 %cmp9.9 = icmp sgt i32 %9, %.scoreMax.0.8 %.scoreMax.0.9 = select i1 %cmp9.9, i32 %9, i32 %.scoreMax.0.8 - %arrayidx8.10 = getelementptr inbounds i32, i32* %score, i32 10 - %10 = load i32, i32* %arrayidx8.10, align 4, !tbaa !3 + %arrayidx8.10 = getelementptr inbounds i32, ptr %score, i32 10 + %10 = load i32, ptr %arrayidx8.10, align 4, !tbaa !3 %cmp9.10 = icmp sgt i32 %10, %.scoreMax.0.9 %.scoreMax.0.10 = select i1 %cmp9.10, i32 %10, i32 %.scoreMax.0.9 - %arrayidx8.11 = getelementptr inbounds i32, i32* %score, i32 11 - %11 = load i32, i32* %arrayidx8.11, align 4, !tbaa !3 + %arrayidx8.11 = getelementptr inbounds i32, ptr %score, i32 11 + %11 = load i32, ptr %arrayidx8.11, align 4, !tbaa !3 %cmp9.11 = icmp sgt i32 %11, %.scoreMax.0.10 %.scoreMax.0.11 = select i1 %cmp9.11, i32 %11, i32 %.scoreMax.0.10 - %arrayidx8.12 = getelementptr inbounds i32, i32* %score, i32 12 - %12 = load i32, i32* %arrayidx8.12, align 4, !tbaa !3 + %arrayidx8.12 = getelementptr inbounds i32, ptr %score, i32 12 + %12 = load i32, ptr %arrayidx8.12, align 4, !tbaa !3 %cmp9.12 = icmp sgt i32 %12, %.scoreMax.0.11 %.scoreMax.0.12 = select i1 %cmp9.12, i32 %12, i32 %.scoreMax.0.11 - %arrayidx8.13 = getelementptr inbounds i32, i32* %score, i32 13 - %13 = load i32, i32* %arrayidx8.13, align 4, !tbaa !3 + %arrayidx8.13 = getelementptr inbounds i32, ptr %score, i32 13 + %13 = load i32, ptr %arrayidx8.13, align 4, !tbaa !3 %cmp9.13 = icmp sgt i32 %13, %.scoreMax.0.12 %.scoreMax.0.13 = select i1 %cmp9.13, i32 %13, i32 %.scoreMax.0.12 - %arrayidx8.14 = getelementptr inbounds i32, i32* %score, i32 14 - %14 = load i32, i32* %arrayidx8.14, align 4, !tbaa !3 + %arrayidx8.14 = getelementptr inbounds i32, ptr %score, i32 14 + %14 = load i32, ptr %arrayidx8.14, align 4, !tbaa !3 %cmp9.14 = icmp sgt i32 %14, %.scoreMax.0.13 %.scoreMax.0.14 = select i1 %cmp9.14, i32 %14, i32 %.scoreMax.0.13 - %arrayidx8.15 = getelementptr inbounds i32, i32* %score, i32 15 - %15 = load i32, i32* %arrayidx8.15, align 4, !tbaa !3 + %arrayidx8.15 = getelementptr inbounds i32, ptr %score, i32 15 + %15 = load i32, ptr %arrayidx8.15, align 4, !tbaa !3 %cmp9.15 = icmp sgt i32 %15, %.scoreMax.0.14 %.scoreMax.0.15 = select i1 %cmp9.15, i32 %15, i32 %.scoreMax.0.14 - %arrayidx8.16 = getelementptr inbounds i32, i32* %score, i32 16 - %16 = load i32, i32* %arrayidx8.16, align 4, !tbaa !3 + %arrayidx8.16 = getelementptr inbounds i32, ptr %score, i32 16 + %16 = load i32, ptr %arrayidx8.16, align 4, !tbaa !3 %cmp9.16 = icmp sgt i32 %16, %.scoreMax.0.15 %.scoreMax.0.16 = select i1 %cmp9.16, i32 %16, i32 %.scoreMax.0.15 - %arrayidx8.17 = getelementptr inbounds i32, i32* %score, i32 17 - %17 = load i32, i32* %arrayidx8.17, align 4, !tbaa !3 + %arrayidx8.17 = getelementptr inbounds i32, ptr %score, i32 17 + %17 = load i32, ptr %arrayidx8.17, align 4, !tbaa !3 %cmp9.17 = icmp sgt i32 %17, %.scoreMax.0.16 %.scoreMax.0.17 = select i1 %cmp9.17, i32 %17, i32 %.scoreMax.0.16 - %arrayidx8.18 = getelementptr inbounds i32, i32* %score, i32 18 - %18 = load i32, i32* %arrayidx8.18, align 4, !tbaa !3 + %arrayidx8.18 = getelementptr inbounds i32, ptr %score, i32 18 + %18 = load i32, ptr %arrayidx8.18, align 4, !tbaa !3 %cmp9.18 = icmp sgt i32 %18, %.scoreMax.0.17 %.scoreMax.0.18 = select i1 %cmp9.18, i32 %18, i32 %.scoreMax.0.17 - %arrayidx8.19 = getelementptr inbounds i32, i32* %score, i32 19 - %19 = load i32, i32* %arrayidx8.19, align 4, !tbaa !3 + %arrayidx8.19 = getelementptr inbounds i32, ptr %score, i32 19 + %19 = load i32, ptr %arrayidx8.19, align 4, !tbaa !3 %cmp9.19 = icmp sgt i32 %19, %.scoreMax.0.18 %.scoreMax.0.19 = select i1 %cmp9.19, i32 %19, i32 %.scoreMax.0.18 %cmp14 = icmp eq i32 %.scoreMax.0.19, -1 @@ -109,19 +109,19 @@ for.body7.preheader: ; preds = %for.body7.preheader for.body: ; preds = %for.body.preheader, %for.body %i.034 = phi i32 [ %inc, %for.body ], [ 0, %for.body.preheader ] - %arrayidx = getelementptr inbounds i32, i32* %src1, i32 %i.034 - %20 = load i32, i32* %arrayidx, align 4, !tbaa !3 - %arrayidx1 = getelementptr inbounds i32, i32* %src2, i32 %i.034 - %21 = load i32, i32* %arrayidx1, align 4, !tbaa !3 + %arrayidx = getelementptr inbounds i32, ptr %src1, i32 %i.034 + %20 = load i32, ptr %arrayidx, align 4, !tbaa !3 + %arrayidx1 = getelementptr inbounds i32, ptr %src2, i32 %i.034 + %21 = load i32, ptr %arrayidx1, align 4, !tbaa !3 %add = add nsw i32 %21, %20 - %arrayidx2 = getelementptr inbounds i32, i32* %score, i32 %i.034 - store i32 %add, i32* %arrayidx2, align 4, !tbaa !3 + %arrayidx2 = getelementptr inbounds i32, ptr %score, i32 %i.034 + store i32 %add, ptr %arrayidx2, align 4, !tbaa !3 %inc = add nuw nsw i32 %i.034, 1 %exitcond = icmp eq i32 %inc, %n br i1 %exitcond, label %for.body7.preheader.loopexit, label %for.body if.end16: ; preds = %for.body7.preheader - store i32 %.scoreMax.0.19, i32* %max, align 4, !tbaa !3 + store i32 %.scoreMax.0.19, ptr %max, align 4, !tbaa !3 br label %cleanup cleanup: ; preds = %for.body7.preheader, %if.end16 diff --git a/polly/test/ScopInfo/complex-loop-nesting.ll b/polly/test/ScopInfo/complex-loop-nesting.ll index ee559bfebcac..97a9bfd939d5 100644 --- a/polly/test/ScopInfo/complex-loop-nesting.ll +++ b/polly/test/ScopInfo/complex-loop-nesting.ll @@ -38,31 +38,31 @@ target datalayout = "e-m:e-i64:64-i128:128-n8:16:32:64-S128" -define void @foo(i32* %A) { +define void @foo(ptr %A) { entry: br label %for.body.outer for.body.outer: ; preds = %for.body, %entry %indvar = phi i32 [0, %entry], [%indvar.next, %for.body] - %addr = getelementptr i32, i32* %A, i32 %indvar - %val = load i32, i32* %addr + %addr = getelementptr i32, ptr %A, i32 %indvar + %val = load i32, ptr %addr %indvar.next = add i32 %indvar, 1 - store i32 %val, i32* %addr + store i32 %val, ptr %addr br label %for.body for.body: ; preds = %for.inc, %for.body.outer %indvar.2 = phi i32 [0, %for.body.outer], [%indvar.2.next, %for.inc] - %addr.2 = getelementptr i32, i32* %A, i32 %indvar.2 - %val.2 = load i32, i32* %addr.2 + %addr.2 = getelementptr i32, ptr %A, i32 %indvar.2 + %val.2 = load i32, ptr %addr.2 %indvar.2.next = add i32 %indvar.2, 1 - store i32 %val.2, i32* %addr.2 + store i32 %val.2, ptr %addr.2 %cond.1 = icmp sle i32 %indvar, 256 br i1 %cond.1, label %for.body.outer, label %for.inc for.inc: ; preds = %for.body - %addr.3 = getelementptr i32, i32* %A, i32 %indvar.2 - %val.3 = load i32, i32* %addr.3 - store i32 %val.3, i32* %addr.3 + %addr.3 = getelementptr i32, ptr %A, i32 %indvar.2 + %val.3 = load i32, ptr %addr.3 + store i32 %val.3, ptr %addr.3 %cond = icmp sle i32 %indvar.2, 1024 br i1 %cond, label %for.body, label %for.end diff --git a/polly/test/ScopInfo/complex-successor-structure-2.ll b/polly/test/ScopInfo/complex-successor-structure-2.ll index 55f7963e5e6b..6bb7bb14a8cc 100644 --- a/polly/test/ScopInfo/complex-successor-structure-2.ll +++ b/polly/test/ScopInfo/complex-successor-structure-2.ll @@ -109,7 +109,7 @@ target triple = "thumbv7--linux-android" @Table2 = external global [1792 x i16], align 2 @Table3 = external global [16 x i16], align 2 -define void @foo(i16* nocapture readonly %indice, i16* nocapture %Output, i16* nocapture readonly %In1, i16* nocapture readonly %In2, i16 signext %var, i16 signext %var2) { +define void @foo(ptr nocapture readonly %indice, ptr nocapture %Output, ptr nocapture readonly %In1, ptr nocapture readonly %In2, i16 signext %var, i16 signext %var2) { entry: %.reg2mem158 = alloca i16 %.reg2mem156 = alloca i16 @@ -118,420 +118,418 @@ entry: %.reg2mem150 = alloca i16 %.reg2mem = alloca i16 %Temp_Ref = alloca [16 x i16], align 2 - %0 = bitcast [16 x i16]* %Temp_Ref to i8* %cmp = icmp eq i16 %var, 0 br label %for.body for.body: ; preds = %for.body, %entry %i.2138 = phi i32 [ %inc47, %for.body ], [ 0, %entry ] - %arrayidx28 = getelementptr inbounds [16 x i16], [16 x i16]* @Table3, i32 0, i32 %i.2138 - %1 = load i16, i16* %arrayidx28, align 2 - %conv29 = sext i16 %1 to i32 - %arrayidx36 = getelementptr inbounds i16, i16* %In2, i32 %i.2138 - %2 = load i16, i16* %arrayidx36, align 2 - %conv37 = sext i16 %2 to i32 + %arrayidx28 = getelementptr inbounds [16 x i16], ptr @Table3, i32 0, i32 %i.2138 + %0 = load i16, ptr %arrayidx28, align 2 + %conv29 = sext i16 %0 to i32 + %arrayidx36 = getelementptr inbounds i16, ptr %In2, i32 %i.2138 + %1 = load i16, ptr %arrayidx36, align 2 + %conv37 = sext i16 %1 to i32 %shl38147 = add nsw i32 %conv37, %conv29 %add35.1 = add nuw nsw i32 %i.2138, 16 - %arrayidx36.1 = getelementptr inbounds i16, i16* %In2, i32 %add35.1 - %3 = load i16, i16* %arrayidx36.1, align 2 - %conv37.1 = sext i16 %3 to i32 + %arrayidx36.1 = getelementptr inbounds i16, ptr %In2, i32 %add35.1 + %2 = load i16, ptr %arrayidx36.1, align 2 + %conv37.1 = sext i16 %2 to i32 %shl38.1148 = add nsw i32 %conv37.1, %shl38147 %add35.2 = add nuw nsw i32 %i.2138, 32 - %arrayidx36.2 = getelementptr inbounds i16, i16* %In2, i32 %add35.2 - %4 = load i16, i16* %arrayidx36.2, align 2 - %conv37.2 = sext i16 %4 to i32 + %arrayidx36.2 = getelementptr inbounds i16, ptr %In2, i32 %add35.2 + %3 = load i16, ptr %arrayidx36.2, align 2 + %conv37.2 = sext i16 %3 to i32 %shl38.2149 = add nsw i32 %conv37.2, %shl38.1148 %add39.2 = shl i32 %shl38.2149, 14 %add43 = add nsw i32 %add39.2, 32768 %shr129 = lshr i32 %add43, 16 %conv44 = trunc i32 %shr129 to i16 - %arrayidx45 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 %i.2138 - store i16 %conv44, i16* %arrayidx45, align 2 + %arrayidx45 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 %i.2138 + store i16 %conv44, ptr %arrayidx45, align 2 %inc47 = add nuw nsw i32 %i.2138, 1 %exitcond144 = icmp eq i32 %i.2138, 15 br i1 %exitcond144, label %if.entry, label %for.body if.entry: ; preds = %for.body - %5 = load i16, i16* %In1, align 2 - %conv54 = sext i16 %5 to i32 + %4 = load i16, ptr %In1, align 2 + %conv54 = sext i16 %4 to i32 %mul55 = mul nsw i32 %conv54, 29491 %shr56127 = lshr i32 %mul55, 15 - %arrayidx57 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 0 - %6 = load i16, i16* %arrayidx57, align 2 - %conv58 = sext i16 %6 to i32 + %5 = load i16, ptr %Temp_Ref, align 2 + %conv58 = sext i16 %5 to i32 %mul59 = mul nsw i32 %conv58, 3277 %shr60128 = lshr i32 %mul59, 15 %add61 = add nuw nsw i32 %shr60128, %shr56127 %conv62 = trunc i32 %add61 to i16 - store i16 %conv62, i16* %Output, align 2 - %arrayidx53.1 = getelementptr inbounds i16, i16* %In1, i32 1 - %7 = load i16, i16* %arrayidx53.1, align 2 - %conv54.1 = sext i16 %7 to i32 + store i16 %conv62, ptr %Output, align 2 + %arrayidx53.1 = getelementptr inbounds i16, ptr %In1, i32 1 + %6 = load i16, ptr %arrayidx53.1, align 2 + %conv54.1 = sext i16 %6 to i32 %mul55.1 = mul nsw i32 %conv54.1, 29491 %shr56127.1 = lshr i32 %mul55.1, 15 - %arrayidx57.1 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 1 - %8 = load i16, i16* %arrayidx57.1, align 2 - %conv58.1 = sext i16 %8 to i32 + %arrayidx57.1 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 1 + %7 = load i16, ptr %arrayidx57.1, align 2 + %conv58.1 = sext i16 %7 to i32 %mul59.1 = mul nsw i32 %conv58.1, 3277 %shr60128.1 = lshr i32 %mul59.1, 15 %add61.1 = add nuw nsw i32 %shr60128.1, %shr56127.1 %conv62.1 = trunc i32 %add61.1 to i16 - %arrayidx63.1 = getelementptr inbounds i16, i16* %Output, i32 1 - store i16 %conv62.1, i16* %arrayidx63.1, align 2 - %arrayidx53.2 = getelementptr inbounds i16, i16* %In1, i32 2 - %9 = load i16, i16* %arrayidx53.2, align 2 - %conv54.2 = sext i16 %9 to i32 + %arrayidx63.1 = getelementptr inbounds i16, ptr %Output, i32 1 + store i16 %conv62.1, ptr %arrayidx63.1, align 2 + %arrayidx53.2 = getelementptr inbounds i16, ptr %In1, i32 2 + %8 = load i16, ptr %arrayidx53.2, align 2 + %conv54.2 = sext i16 %8 to i32 %mul55.2 = mul nsw i32 %conv54.2, 29491 %shr56127.2 = lshr i32 %mul55.2, 15 - %arrayidx57.2 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 2 - %10 = load i16, i16* %arrayidx57.2, align 2 - %conv58.2 = sext i16 %10 to i32 + %arrayidx57.2 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 2 + %9 = load i16, ptr %arrayidx57.2, align 2 + %conv58.2 = sext i16 %9 to i32 %mul59.2 = mul nsw i32 %conv58.2, 3277 %shr60128.2 = lshr i32 %mul59.2, 15 %add61.2 = add nuw nsw i32 %shr60128.2, %shr56127.2 %conv62.2 = trunc i32 %add61.2 to i16 - %arrayidx63.2 = getelementptr inbounds i16, i16* %Output, i32 2 - store i16 %conv62.2, i16* %arrayidx63.2, align 2 - %arrayidx53.3 = getelementptr inbounds i16, i16* %In1, i32 3 - %11 = load i16, i16* %arrayidx53.3, align 2 - %conv54.3 = sext i16 %11 to i32 + %arrayidx63.2 = getelementptr inbounds i16, ptr %Output, i32 2 + store i16 %conv62.2, ptr %arrayidx63.2, align 2 + %arrayidx53.3 = getelementptr inbounds i16, ptr %In1, i32 3 + %10 = load i16, ptr %arrayidx53.3, align 2 + %conv54.3 = sext i16 %10 to i32 %mul55.3 = mul nsw i32 %conv54.3, 29491 %shr56127.3 = lshr i32 %mul55.3, 15 - %arrayidx57.3 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 3 - %12 = load i16, i16* %arrayidx57.3, align 2 - %conv58.3 = sext i16 %12 to i32 + %arrayidx57.3 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 3 + %11 = load i16, ptr %arrayidx57.3, align 2 + %conv58.3 = sext i16 %11 to i32 %mul59.3 = mul nsw i32 %conv58.3, 3277 %shr60128.3 = lshr i32 %mul59.3, 15 %add61.3 = add nuw nsw i32 %shr60128.3, %shr56127.3 %conv62.3 = trunc i32 %add61.3 to i16 - %arrayidx63.3 = getelementptr inbounds i16, i16* %Output, i32 3 - store i16 %conv62.3, i16* %arrayidx63.3, align 2 - %arrayidx53.4 = getelementptr inbounds i16, i16* %In1, i32 4 - %13 = load i16, i16* %arrayidx53.4, align 2 - %conv54.4 = sext i16 %13 to i32 + %arrayidx63.3 = getelementptr inbounds i16, ptr %Output, i32 3 + store i16 %conv62.3, ptr %arrayidx63.3, align 2 + %arrayidx53.4 = getelementptr inbounds i16, ptr %In1, i32 4 + %12 = load i16, ptr %arrayidx53.4, align 2 + %conv54.4 = sext i16 %12 to i32 %mul55.4 = mul nsw i32 %conv54.4, 29491 %shr56127.4 = lshr i32 %mul55.4, 15 - %arrayidx57.4 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 4 - %14 = load i16, i16* %arrayidx57.4, align 2 - %conv58.4 = sext i16 %14 to i32 + %arrayidx57.4 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 4 + %13 = load i16, ptr %arrayidx57.4, align 2 + %conv58.4 = sext i16 %13 to i32 %mul59.4 = mul nsw i32 %conv58.4, 3277 %shr60128.4 = lshr i32 %mul59.4, 15 %add61.4 = add nuw nsw i32 %shr60128.4, %shr56127.4 %conv62.4 = trunc i32 %add61.4 to i16 - %arrayidx63.4 = getelementptr inbounds i16, i16* %Output, i32 4 - store i16 %conv62.4, i16* %arrayidx63.4, align 2 - %arrayidx53.5 = getelementptr inbounds i16, i16* %In1, i32 5 - %15 = load i16, i16* %arrayidx53.5, align 2 - %conv54.5 = sext i16 %15 to i32 + %arrayidx63.4 = getelementptr inbounds i16, ptr %Output, i32 4 + store i16 %conv62.4, ptr %arrayidx63.4, align 2 + %arrayidx53.5 = getelementptr inbounds i16, ptr %In1, i32 5 + %14 = load i16, ptr %arrayidx53.5, align 2 + %conv54.5 = sext i16 %14 to i32 %mul55.5 = mul nsw i32 %conv54.5, 29491 %shr56127.5 = lshr i32 %mul55.5, 15 - %arrayidx57.5 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 5 - %16 = load i16, i16* %arrayidx57.5, align 2 - %conv58.5 = sext i16 %16 to i32 + %arrayidx57.5 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 5 + %15 = load i16, ptr %arrayidx57.5, align 2 + %conv58.5 = sext i16 %15 to i32 %mul59.5 = mul nsw i32 %conv58.5, 3277 %shr60128.5 = lshr i32 %mul59.5, 15 %add61.5 = add nuw nsw i32 %shr60128.5, %shr56127.5 %conv62.5 = trunc i32 %add61.5 to i16 - %arrayidx63.5 = getelementptr inbounds i16, i16* %Output, i32 5 - store i16 %conv62.5, i16* %arrayidx63.5, align 2 - %arrayidx53.6 = getelementptr inbounds i16, i16* %In1, i32 6 - %17 = load i16, i16* %arrayidx53.6, align 2 - %conv54.6 = sext i16 %17 to i32 + %arrayidx63.5 = getelementptr inbounds i16, ptr %Output, i32 5 + store i16 %conv62.5, ptr %arrayidx63.5, align 2 + %arrayidx53.6 = getelementptr inbounds i16, ptr %In1, i32 6 + %16 = load i16, ptr %arrayidx53.6, align 2 + %conv54.6 = sext i16 %16 to i32 %mul55.6 = mul nsw i32 %conv54.6, 29491 %shr56127.6 = lshr i32 %mul55.6, 15 - %arrayidx57.6 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 6 - %18 = load i16, i16* %arrayidx57.6, align 2 - %conv58.6 = sext i16 %18 to i32 + %arrayidx57.6 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 6 + %17 = load i16, ptr %arrayidx57.6, align 2 + %conv58.6 = sext i16 %17 to i32 %mul59.6 = mul nsw i32 %conv58.6, 3277 %shr60128.6 = lshr i32 %mul59.6, 15 %add61.6 = add nuw nsw i32 %shr60128.6, %shr56127.6 %conv62.6 = trunc i32 %add61.6 to i16 - %arrayidx63.6 = getelementptr inbounds i16, i16* %Output, i32 6 - store i16 %conv62.6, i16* %arrayidx63.6, align 2 - %arrayidx53.7 = getelementptr inbounds i16, i16* %In1, i32 7 - %19 = load i16, i16* %arrayidx53.7, align 2 - %conv54.7 = sext i16 %19 to i32 + %arrayidx63.6 = getelementptr inbounds i16, ptr %Output, i32 6 + store i16 %conv62.6, ptr %arrayidx63.6, align 2 + %arrayidx53.7 = getelementptr inbounds i16, ptr %In1, i32 7 + %18 = load i16, ptr %arrayidx53.7, align 2 + %conv54.7 = sext i16 %18 to i32 %mul55.7 = mul nsw i32 %conv54.7, 29491 %shr56127.7 = lshr i32 %mul55.7, 15 - %arrayidx57.7 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 7 - %20 = load i16, i16* %arrayidx57.7, align 2 - %conv58.7 = sext i16 %20 to i32 + %arrayidx57.7 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 7 + %19 = load i16, ptr %arrayidx57.7, align 2 + %conv58.7 = sext i16 %19 to i32 %mul59.7 = mul nsw i32 %conv58.7, 3277 %shr60128.7 = lshr i32 %mul59.7, 15 %add61.7 = add nuw nsw i32 %shr60128.7, %shr56127.7 %conv62.7 = trunc i32 %add61.7 to i16 - %arrayidx63.7 = getelementptr inbounds i16, i16* %Output, i32 7 - store i16 %conv62.7, i16* %arrayidx63.7, align 2 - %arrayidx53.8 = getelementptr inbounds i16, i16* %In1, i32 8 - %21 = load i16, i16* %arrayidx53.8, align 2 - %conv54.8 = sext i16 %21 to i32 + %arrayidx63.7 = getelementptr inbounds i16, ptr %Output, i32 7 + store i16 %conv62.7, ptr %arrayidx63.7, align 2 + %arrayidx53.8 = getelementptr inbounds i16, ptr %In1, i32 8 + %20 = load i16, ptr %arrayidx53.8, align 2 + %conv54.8 = sext i16 %20 to i32 %mul55.8 = mul nsw i32 %conv54.8, 29491 %shr56127.8 = lshr i32 %mul55.8, 15 - %arrayidx57.8 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 8 - %22 = load i16, i16* %arrayidx57.8, align 2 - %conv58.8 = sext i16 %22 to i32 + %arrayidx57.8 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 8 + %21 = load i16, ptr %arrayidx57.8, align 2 + %conv58.8 = sext i16 %21 to i32 %mul59.8 = mul nsw i32 %conv58.8, 3277 %shr60128.8 = lshr i32 %mul59.8, 15 %add61.8 = add nuw nsw i32 %shr60128.8, %shr56127.8 %conv62.8 = trunc i32 %add61.8 to i16 - %arrayidx63.8 = getelementptr inbounds i16, i16* %Output, i32 8 - store i16 %conv62.8, i16* %arrayidx63.8, align 2 - %arrayidx53.9 = getelementptr inbounds i16, i16* %In1, i32 9 - %23 = load i16, i16* %arrayidx53.9, align 2 - %conv54.9 = sext i16 %23 to i32 + %arrayidx63.8 = getelementptr inbounds i16, ptr %Output, i32 8 + store i16 %conv62.8, ptr %arrayidx63.8, align 2 + %arrayidx53.9 = getelementptr inbounds i16, ptr %In1, i32 9 + %22 = load i16, ptr %arrayidx53.9, align 2 + %conv54.9 = sext i16 %22 to i32 %mul55.9 = mul nsw i32 %conv54.9, 29491 %shr56127.9 = lshr i32 %mul55.9, 15 - %arrayidx57.9 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 9 - %24 = load i16, i16* %arrayidx57.9, align 2 - %conv58.9 = sext i16 %24 to i32 + %arrayidx57.9 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 9 + %23 = load i16, ptr %arrayidx57.9, align 2 + %conv58.9 = sext i16 %23 to i32 %mul59.9 = mul nsw i32 %conv58.9, 3277 %shr60128.9 = lshr i32 %mul59.9, 15 %add61.9 = add nuw nsw i32 %shr60128.9, %shr56127.9 %conv62.9 = trunc i32 %add61.9 to i16 - %arrayidx63.9 = getelementptr inbounds i16, i16* %Output, i32 9 - store i16 %conv62.9, i16* %arrayidx63.9, align 2 - %arrayidx53.10 = getelementptr inbounds i16, i16* %In1, i32 10 - %25 = load i16, i16* %arrayidx53.10, align 2 - %conv54.10 = sext i16 %25 to i32 + %arrayidx63.9 = getelementptr inbounds i16, ptr %Output, i32 9 + store i16 %conv62.9, ptr %arrayidx63.9, align 2 + %arrayidx53.10 = getelementptr inbounds i16, ptr %In1, i32 10 + %24 = load i16, ptr %arrayidx53.10, align 2 + %conv54.10 = sext i16 %24 to i32 %mul55.10 = mul nsw i32 %conv54.10, 29491 %shr56127.10 = lshr i32 %mul55.10, 15 - %arrayidx57.10 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 10 - %26 = load i16, i16* %arrayidx57.10, align 2 - %conv58.10 = sext i16 %26 to i32 + %arrayidx57.10 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 10 + %25 = load i16, ptr %arrayidx57.10, align 2 + %conv58.10 = sext i16 %25 to i32 %mul59.10 = mul nsw i32 %conv58.10, 3277 %shr60128.10 = lshr i32 %mul59.10, 15 %add61.10 = add nuw nsw i32 %shr60128.10, %shr56127.10 %conv62.10 = trunc i32 %add61.10 to i16 - %arrayidx63.10 = getelementptr inbounds i16, i16* %Output, i32 10 - store i16 %conv62.10, i16* %arrayidx63.10, align 2 - %arrayidx53.11 = getelementptr inbounds i16, i16* %In1, i32 11 - %27 = load i16, i16* %arrayidx53.11, align 2 - %conv54.11 = sext i16 %27 to i32 + %arrayidx63.10 = getelementptr inbounds i16, ptr %Output, i32 10 + store i16 %conv62.10, ptr %arrayidx63.10, align 2 + %arrayidx53.11 = getelementptr inbounds i16, ptr %In1, i32 11 + %26 = load i16, ptr %arrayidx53.11, align 2 + %conv54.11 = sext i16 %26 to i32 %mul55.11 = mul nsw i32 %conv54.11, 29491 %shr56127.11 = lshr i32 %mul55.11, 15 - %arrayidx57.11 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 11 - %28 = load i16, i16* %arrayidx57.11, align 2 - %conv58.11 = sext i16 %28 to i32 + %arrayidx57.11 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 11 + %27 = load i16, ptr %arrayidx57.11, align 2 + %conv58.11 = sext i16 %27 to i32 %mul59.11 = mul nsw i32 %conv58.11, 3277 %shr60128.11 = lshr i32 %mul59.11, 15 %add61.11 = add nuw nsw i32 %shr60128.11, %shr56127.11 %conv62.11 = trunc i32 %add61.11 to i16 - %arrayidx63.11 = getelementptr inbounds i16, i16* %Output, i32 11 - store i16 %conv62.11, i16* %arrayidx63.11, align 2 - %arrayidx53.12 = getelementptr inbounds i16, i16* %In1, i32 12 - %29 = load i16, i16* %arrayidx53.12, align 2 - %conv54.12 = sext i16 %29 to i32 + %arrayidx63.11 = getelementptr inbounds i16, ptr %Output, i32 11 + store i16 %conv62.11, ptr %arrayidx63.11, align 2 + %arrayidx53.12 = getelementptr inbounds i16, ptr %In1, i32 12 + %28 = load i16, ptr %arrayidx53.12, align 2 + %conv54.12 = sext i16 %28 to i32 %mul55.12 = mul nsw i32 %conv54.12, 29491 %shr56127.12 = lshr i32 %mul55.12, 15 - %arrayidx57.12 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 12 - %30 = load i16, i16* %arrayidx57.12, align 2 - %conv58.12 = sext i16 %30 to i32 + %arrayidx57.12 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 12 + %29 = load i16, ptr %arrayidx57.12, align 2 + %conv58.12 = sext i16 %29 to i32 %mul59.12 = mul nsw i32 %conv58.12, 3277 %shr60128.12 = lshr i32 %mul59.12, 15 %add61.12 = add nuw nsw i32 %shr60128.12, %shr56127.12 %conv62.12 = trunc i32 %add61.12 to i16 - %arrayidx63.12 = getelementptr inbounds i16, i16* %Output, i32 12 - store i16 %conv62.12, i16* %arrayidx63.12, align 2 - %arrayidx53.13 = getelementptr inbounds i16, i16* %In1, i32 13 - %31 = load i16, i16* %arrayidx53.13, align 2 - %conv54.13 = sext i16 %31 to i32 + %arrayidx63.12 = getelementptr inbounds i16, ptr %Output, i32 12 + store i16 %conv62.12, ptr %arrayidx63.12, align 2 + %arrayidx53.13 = getelementptr inbounds i16, ptr %In1, i32 13 + %30 = load i16, ptr %arrayidx53.13, align 2 + %conv54.13 = sext i16 %30 to i32 %mul55.13 = mul nsw i32 %conv54.13, 29491 %shr56127.13 = lshr i32 %mul55.13, 15 - %arrayidx57.13 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 13 - %32 = load i16, i16* %arrayidx57.13, align 2 - %conv58.13 = sext i16 %32 to i32 + %arrayidx57.13 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 13 + %31 = load i16, ptr %arrayidx57.13, align 2 + %conv58.13 = sext i16 %31 to i32 %mul59.13 = mul nsw i32 %conv58.13, 3277 %shr60128.13 = lshr i32 %mul59.13, 15 %add61.13 = add nuw nsw i32 %shr60128.13, %shr56127.13 %conv62.13 = trunc i32 %add61.13 to i16 - %arrayidx63.13 = getelementptr inbounds i16, i16* %Output, i32 13 - store i16 %conv62.13, i16* %arrayidx63.13, align 2 - %arrayidx53.14 = getelementptr inbounds i16, i16* %In1, i32 14 - %33 = load i16, i16* %arrayidx53.14, align 2 - %conv54.14 = sext i16 %33 to i32 + %arrayidx63.13 = getelementptr inbounds i16, ptr %Output, i32 13 + store i16 %conv62.13, ptr %arrayidx63.13, align 2 + %arrayidx53.14 = getelementptr inbounds i16, ptr %In1, i32 14 + %32 = load i16, ptr %arrayidx53.14, align 2 + %conv54.14 = sext i16 %32 to i32 %mul55.14 = mul nsw i32 %conv54.14, 29491 %shr56127.14 = lshr i32 %mul55.14, 15 - %arrayidx57.14 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 14 - %34 = load i16, i16* %arrayidx57.14, align 2 - %conv58.14 = sext i16 %34 to i32 + %arrayidx57.14 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 14 + %33 = load i16, ptr %arrayidx57.14, align 2 + %conv58.14 = sext i16 %33 to i32 %mul59.14 = mul nsw i32 %conv58.14, 3277 %shr60128.14 = lshr i32 %mul59.14, 15 %add61.14 = add nuw nsw i32 %shr60128.14, %shr56127.14 %conv62.14 = trunc i32 %add61.14 to i16 - %arrayidx63.14 = getelementptr inbounds i16, i16* %Output, i32 14 - store i16 %conv62.14, i16* %arrayidx63.14, align 2 - %arrayidx53.15 = getelementptr inbounds i16, i16* %In1, i32 15 - %35 = load i16, i16* %arrayidx53.15, align 2 - %conv54.15 = sext i16 %35 to i32 + %arrayidx63.14 = getelementptr inbounds i16, ptr %Output, i32 14 + store i16 %conv62.14, ptr %arrayidx63.14, align 2 + %arrayidx53.15 = getelementptr inbounds i16, ptr %In1, i32 15 + %34 = load i16, ptr %arrayidx53.15, align 2 + %conv54.15 = sext i16 %34 to i32 %mul55.15 = mul nsw i32 %conv54.15, 29491 %shr56127.15 = lshr i32 %mul55.15, 15 - %arrayidx57.15 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 15 - %36 = load i16, i16* %arrayidx57.15, align 2 - %conv58.15 = sext i16 %36 to i32 + %arrayidx57.15 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 15 + %35 = load i16, ptr %arrayidx57.15, align 2 + %conv58.15 = sext i16 %35 to i32 %mul59.15 = mul nsw i32 %conv58.15, 3277 %shr60128.15 = lshr i32 %mul59.15, 15 %add61.15 = add nuw nsw i32 %shr60128.15, %shr56127.15 %conv62.15 = trunc i32 %add61.15 to i16 - %arrayidx63.15 = getelementptr inbounds i16, i16* %Output, i32 15 - store i16 %conv62.15, i16* %arrayidx63.15, align 2 - store i16 %conv62.9, i16* %.reg2mem - store i16 %conv62.10, i16* %.reg2mem150 - store i16 %conv62.11, i16* %.reg2mem152 - store i16 %conv62.12, i16* %.reg2mem154 - store i16 %conv62.13, i16* %.reg2mem156 - store i16 %conv62.14, i16* %.reg2mem158 - %.reload159 = load i16, i16* %.reg2mem158 - %.reload157 = load i16, i16* %.reg2mem156 - %.reload155 = load i16, i16* %.reg2mem154 - %.reload153 = load i16, i16* %.reg2mem152 - %.reload151 = load i16, i16* %.reg2mem150 - %.reload = load i16, i16* %.reg2mem - %37 = load i16, i16* %Output, align 2 - %cmp77 = icmp slt i16 %37, 128 + %arrayidx63.15 = getelementptr inbounds i16, ptr %Output, i32 15 + store i16 %conv62.15, ptr %arrayidx63.15, align 2 + store i16 %conv62.9, ptr %.reg2mem + store i16 %conv62.10, ptr %.reg2mem150 + store i16 %conv62.11, ptr %.reg2mem152 + store i16 %conv62.12, ptr %.reg2mem154 + store i16 %conv62.13, ptr %.reg2mem156 + store i16 %conv62.14, ptr %.reg2mem158 + %.reload159 = load i16, ptr %.reg2mem158 + %.reload157 = load i16, ptr %.reg2mem156 + %.reload155 = load i16, ptr %.reg2mem154 + %.reload153 = load i16, ptr %.reg2mem152 + %.reload151 = load i16, ptr %.reg2mem150 + %.reload = load i16, ptr %.reg2mem + %36 = load i16, ptr %Output, align 2 + %cmp77 = icmp slt i16 %36, 128 br i1 %cmp77, label %A0, label %B0 A0: ; preds = %if.entry - store i16 128, i16* %Output, align 2 + store i16 128, ptr %Output, align 2 br label %B0 B0: ; preds = %A, %if.entry - %38 = phi i16 [ 128, %A0 ], [ %37, %if.entry ] - %add84 = add i16 %38, 128 - %arrayidx74.1 = getelementptr inbounds i16, i16* %Output, i32 1 - %39 = load i16, i16* %arrayidx74.1, align 2 - %cmp77.1 = icmp slt i16 %39, %add84 + %37 = phi i16 [ 128, %A0 ], [ %36, %if.entry ] + %add84 = add i16 %37, 128 + %arrayidx74.1 = getelementptr inbounds i16, ptr %Output, i32 1 + %38 = load i16, ptr %arrayidx74.1, align 2 + %cmp77.1 = icmp slt i16 %38, %add84 br i1 %cmp77.1, label %A1, label %B1 A1: ; preds = %B - store i16 %add84, i16* %arrayidx74.1, align 2 + store i16 %add84, ptr %arrayidx74.1, align 2 br label %B1 B1: ; preds = %A1, %B - %40 = phi i16 [ %add84, %A1 ], [ %39, %B0 ] - %add84.1 = add i16 %40, 128 - %arrayidx74.2 = getelementptr inbounds i16, i16* %Output, i32 2 - %41 = load i16, i16* %arrayidx74.2, align 2 - %cmp77.2 = icmp slt i16 %41, %add84.1 + %39 = phi i16 [ %add84, %A1 ], [ %38, %B0 ] + %add84.1 = add i16 %39, 128 + %arrayidx74.2 = getelementptr inbounds i16, ptr %Output, i32 2 + %40 = load i16, ptr %arrayidx74.2, align 2 + %cmp77.2 = icmp slt i16 %40, %add84.1 br i1 %cmp77.2, label %A2, label %B2 A2: ; preds = %B1 - store i16 %add84.1, i16* %arrayidx74.2, align 2 + store i16 %add84.1, ptr %arrayidx74.2, align 2 br label %B2 B2: ; preds = %A2, %B1 - %42 = phi i16 [ %add84.1, %A2 ], [ %41, %B1 ] - %add84.2 = add i16 %42, 128 - %arrayidx74.3 = getelementptr inbounds i16, i16* %Output, i32 3 - %43 = load i16, i16* %arrayidx74.3, align 2 - %cmp77.3 = icmp slt i16 %43, %add84.2 + %41 = phi i16 [ %add84.1, %A2 ], [ %40, %B1 ] + %add84.2 = add i16 %41, 128 + %arrayidx74.3 = getelementptr inbounds i16, ptr %Output, i32 3 + %42 = load i16, ptr %arrayidx74.3, align 2 + %cmp77.3 = icmp slt i16 %42, %add84.2 br i1 %cmp77.3, label %A3, label %B3 A3: ; preds = %B2 - store i16 %add84.2, i16* %arrayidx74.3, align 2 + store i16 %add84.2, ptr %arrayidx74.3, align 2 br label %B3 B3: ; preds = %A3, %B2 - %44 = phi i16 [ %add84.2, %A3 ], [ %43, %B2 ] - %add84.3 = add i16 %44, 128 - %arrayidx74.4 = getelementptr inbounds i16, i16* %Output, i32 4 - %45 = load i16, i16* %arrayidx74.4, align 2 - %cmp77.4 = icmp slt i16 %45, %add84.3 + %43 = phi i16 [ %add84.2, %A3 ], [ %42, %B2 ] + %add84.3 = add i16 %43, 128 + %arrayidx74.4 = getelementptr inbounds i16, ptr %Output, i32 4 + %44 = load i16, ptr %arrayidx74.4, align 2 + %cmp77.4 = icmp slt i16 %44, %add84.3 br i1 %cmp77.4, label %A4, label %B4 A4: ; preds = %B3 - store i16 %add84.3, i16* %arrayidx74.4, align 2 + store i16 %add84.3, ptr %arrayidx74.4, align 2 br label %B4 B4: ; preds = %A4, %B3 - %46 = phi i16 [ %add84.3, %A4 ], [ %45, %B3 ] - %add84.4 = add i16 %44, 128 - %arrayidx74.5 = getelementptr inbounds i16, i16* %Output, i32 5 - %47 = load i16, i16* %arrayidx74.5, align 2 - %cmp77.5 = icmp slt i16 %47, %add84.4 + %45 = phi i16 [ %add84.3, %A4 ], [ %44, %B3 ] + %add84.4 = add i16 %43, 128 + %arrayidx74.5 = getelementptr inbounds i16, ptr %Output, i32 5 + %46 = load i16, ptr %arrayidx74.5, align 2 + %cmp77.5 = icmp slt i16 %46, %add84.4 br i1 %cmp77.5, label %A5, label %B5 A5: ; preds = %B4 - store i16 %add84.4, i16* %arrayidx74.5, align 2 + store i16 %add84.4, ptr %arrayidx74.5, align 2 br label %B5 B5: ; preds = %A5, %B4 - %48 = phi i16 [ %add84.4, %A5 ], [ %47, %B4 ] - %add84.5 = add i16 %44, 128 - %arrayidx74.6 = getelementptr inbounds i16, i16* %Output, i32 6 - %49 = load i16, i16* %arrayidx74.6, align 2 - %cmp77.6 = icmp slt i16 %49, %add84.5 + %47 = phi i16 [ %add84.4, %A5 ], [ %46, %B4 ] + %add84.5 = add i16 %43, 128 + %arrayidx74.6 = getelementptr inbounds i16, ptr %Output, i32 6 + %48 = load i16, ptr %arrayidx74.6, align 2 + %cmp77.6 = icmp slt i16 %48, %add84.5 br i1 %cmp77.6, label %A6, label %B6 A6: ; preds = %B5 - store i16 %add84.5, i16* %arrayidx74.6, align 2 + store i16 %add84.5, ptr %arrayidx74.6, align 2 br label %B6 B6: ; preds = %A6, %B5 - %50 = phi i16 [ %add84.5, %A6 ], [ %49, %B5 ] - %add84.6 = add i16 %44, 128 - %arrayidx74.7 = getelementptr inbounds i16, i16* %Output, i32 7 - %51 = load i16, i16* %arrayidx74.7, align 2 - %cmp77.7 = icmp slt i16 %51, %add84.6 + %49 = phi i16 [ %add84.5, %A6 ], [ %48, %B5 ] + %add84.6 = add i16 %43, 128 + %arrayidx74.7 = getelementptr inbounds i16, ptr %Output, i32 7 + %50 = load i16, ptr %arrayidx74.7, align 2 + %cmp77.7 = icmp slt i16 %50, %add84.6 br i1 %cmp77.7, label %A7, label %B7 A7: ; preds = %B6 - store i16 %add84.6, i16* %arrayidx74.7, align 2 + store i16 %add84.6, ptr %arrayidx74.7, align 2 br label %B7 B7: ; preds = %A7, %B6 - %52 = phi i16 [ %add84.6, %A7 ], [ %51, %B6 ] - %add84.7 = add i16 %44, 128 - %arrayidx74.8 = getelementptr inbounds i16, i16* %Output, i32 8 - %53 = load i16, i16* %arrayidx74.8, align 2 - %cmp77.8 = icmp slt i16 %53, %add84.7 + %51 = phi i16 [ %add84.6, %A7 ], [ %50, %B6 ] + %add84.7 = add i16 %43, 128 + %arrayidx74.8 = getelementptr inbounds i16, ptr %Output, i32 8 + %52 = load i16, ptr %arrayidx74.8, align 2 + %cmp77.8 = icmp slt i16 %52, %add84.7 br i1 %cmp77.8, label %A8, label %B8 A8: ; preds = %B7 - store i16 %add84.7, i16* %arrayidx74.8, align 2 + store i16 %add84.7, ptr %arrayidx74.8, align 2 br label %B8 B8: ; preds = %A8, %B7 - %54 = phi i16 [ %add84.7, %A8 ], [ %53, %B7 ] - %add84.8 = add i16 %44, 128 + %53 = phi i16 [ %add84.7, %A8 ], [ %52, %B7 ] + %add84.8 = add i16 %43, 128 %cmp77.9 = icmp slt i16 %.reload, %add84.8 br i1 %cmp77.9, label %A9, label %B9 A9: ; preds = %B8 - %arrayidx74.9 = getelementptr inbounds i16, i16* %Output, i32 9 - store i16 %add84.8, i16* %arrayidx74.9, align 2 + %arrayidx74.9 = getelementptr inbounds i16, ptr %Output, i32 9 + store i16 %add84.8, ptr %arrayidx74.9, align 2 br label %B9 B9: ; preds = %A9, %B8 - %55 = phi i16 [ %add84.8, %A9 ], [ %.reload, %B8 ] - %add84.9 = add i16 %44, 128 + %54 = phi i16 [ %add84.8, %A9 ], [ %.reload, %B8 ] + %add84.9 = add i16 %43, 128 %cmp77.10 = icmp slt i16 %.reload151, %add84.9 br i1 %cmp77.10, label %A10, label %B10 A10: ; preds = %B9 - %arrayidx74.10 = getelementptr inbounds i16, i16* %Output, i32 10 - store i16 %add84.9, i16* %arrayidx74.10, align 2 + %arrayidx74.10 = getelementptr inbounds i16, ptr %Output, i32 10 + store i16 %add84.9, ptr %arrayidx74.10, align 2 br label %B10 B10: ; preds = %A10, %B9 - %56 = phi i16 [ %add84.9, %A10 ], [ %.reload151, %B9 ] - %add84.10 = add i16 %44, 128 + %55 = phi i16 [ %add84.9, %A10 ], [ %.reload151, %B9 ] + %add84.10 = add i16 %43, 128 %cmp77.11 = icmp slt i16 %.reload153, %add84.10 br i1 %cmp77.11, label %A11, label %B11 A11: ; preds = %B10 - %arrayidx74.11 = getelementptr inbounds i16, i16* %Output, i32 11 - store i16 %add84.10, i16* %arrayidx74.11, align 2 + %arrayidx74.11 = getelementptr inbounds i16, ptr %Output, i32 11 + store i16 %add84.10, ptr %arrayidx74.11, align 2 br label %B11 B11: ; preds = %A11, %B10 - %57 = phi i16 [ %add84.10, %A11 ], [ %.reload153, %B10 ] - %add84.11 = add i16 %44, 128 + %56 = phi i16 [ %add84.10, %A11 ], [ %.reload153, %B10 ] + %add84.11 = add i16 %43, 128 %cmp77.12 = icmp slt i16 %.reload155, %add84.11 br i1 %cmp77.12, label %A12, label %B13 A12: ; preds = %B11 - %arrayidx74.12 = getelementptr inbounds i16, i16* %Output, i32 12 - store i16 %add84.11, i16* %arrayidx74.12, align 2 + %arrayidx74.12 = getelementptr inbounds i16, ptr %Output, i32 12 + store i16 %add84.11, ptr %arrayidx74.12, align 2 br label %B13 B13: ; preds = %A12, %B13 diff --git a/polly/test/ScopInfo/complex-successor-structure-3.ll b/polly/test/ScopInfo/complex-successor-structure-3.ll index c3b513800d19..14c3fc1babeb 100644 --- a/polly/test/ScopInfo/complex-successor-structure-3.ll +++ b/polly/test/ScopInfo/complex-successor-structure-3.ll @@ -141,32 +141,32 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i16* noalias %In, i32* noalias %Out) { +define void @f(ptr noalias %In, ptr noalias %Out) { entry: - %tmp = load i16, i16* %In, align 2 + %tmp = load i16, ptr %In, align 2 %conv = sext i16 %tmp to i32 %cmp = icmp slt i16 %tmp, 1041 br i1 %cmp, label %B0, label %C0 B0: ; preds = %entry - %arrayidx4 = getelementptr inbounds i32, i32* %Out, i64 1041 - %tmp3 = load i32, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %Out, i64 1041 + %tmp3 = load i32, ptr %arrayidx4, align 4 %inc5 = add nsw i32 %tmp3, 1 - store i32 %inc5, i32* %arrayidx4, align 4 + store i32 %inc5, ptr %arrayidx4, align 4 br label %A1 C0: ; preds = %entry %idxprom6 = sext i16 %tmp to i64 - %arrayidx7 = getelementptr inbounds i32, i32* %Out, i64 %idxprom6 - %tmp4 = load i32, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %Out, i64 %idxprom6 + %tmp4 = load i32, ptr %arrayidx7, align 4 %dec = add nsw i32 %tmp4, -1 - store i32 %dec, i32* %arrayidx7, align 4 + store i32 %dec, ptr %arrayidx7, align 4 br label %A1 A1: ; preds = %B0, %C0 %V.0 = phi i32 [ 1041, %B0 ], [ %conv, %C0 ] - %arrayidx10 = getelementptr inbounds i16, i16* %In, i64 1 - %tmp5 = load i16, i16* %arrayidx10, align 2 + %arrayidx10 = getelementptr inbounds i16, ptr %In, i64 1 + %tmp5 = load i16, ptr %arrayidx10, align 2 %conv11 = sext i16 %tmp5 to i32 %add12 = add nsw i32 %V.0, 42 %cmp13 = icmp slt i32 %conv11, %add12 @@ -175,46 +175,46 @@ A1: ; preds = %B0, %C0 B1: ; preds = %A1 %add16 = add nsw i32 %V.0, 42 %idxprom17 = sext i32 %add16 to i64 - %arrayidx18 = getelementptr inbounds i32, i32* %Out, i64 %idxprom17 - %tmp6 = load i32, i32* %arrayidx18, align 4 + %arrayidx18 = getelementptr inbounds i32, ptr %Out, i64 %idxprom17 + %tmp6 = load i32, ptr %arrayidx18, align 4 %inc19 = add nsw i32 %tmp6, 1 - store i32 %inc19, i32* %arrayidx18, align 4 + store i32 %inc19, ptr %arrayidx18, align 4 br label %A2 C1: ; preds = %A1 %idxprom21 = sext i16 %tmp5 to i64 - %arrayidx22 = getelementptr inbounds i32, i32* %Out, i64 %idxprom21 - %tmp7 = load i32, i32* %arrayidx22, align 4 + %arrayidx22 = getelementptr inbounds i32, ptr %Out, i64 %idxprom21 + %tmp7 = load i32, ptr %arrayidx22, align 4 %dec23 = add nsw i32 %tmp7, -1 - store i32 %dec23, i32* %arrayidx22, align 4 + store i32 %dec23, ptr %arrayidx22, align 4 br label %A2 A2: ; preds = %B1, %C1 - %arrayidx27 = getelementptr inbounds i16, i16* %In, i64 2 - %tmp8 = load i16, i16* %arrayidx27, align 2 + %arrayidx27 = getelementptr inbounds i16, ptr %In, i64 2 + %tmp8 = load i16, ptr %arrayidx27, align 2 %conv28 = sext i16 %tmp8 to i32 %cmp30 = icmp slt i16 %tmp8, 1041 br i1 %cmp30, label %B2, label %C2 B2: ; preds = %A2 - %arrayidx35 = getelementptr inbounds i32, i32* %Out, i64 1041 - %tmp9 = load i32, i32* %arrayidx35, align 4 + %arrayidx35 = getelementptr inbounds i32, ptr %Out, i64 1041 + %tmp9 = load i32, ptr %arrayidx35, align 4 %inc36 = add nsw i32 %tmp9, 1 - store i32 %inc36, i32* %arrayidx35, align 4 + store i32 %inc36, ptr %arrayidx35, align 4 br label %A3 C2: ; preds = %A2 %idxprom38 = sext i16 %tmp8 to i64 - %arrayidx39 = getelementptr inbounds i32, i32* %Out, i64 %idxprom38 - %tmp10 = load i32, i32* %arrayidx39, align 4 + %arrayidx39 = getelementptr inbounds i32, ptr %Out, i64 %idxprom38 + %tmp10 = load i32, ptr %arrayidx39, align 4 %dec40 = add nsw i32 %tmp10, -1 - store i32 %dec40, i32* %arrayidx39, align 4 + store i32 %dec40, ptr %arrayidx39, align 4 br label %A3 A3: ; preds = %B2, %C2 %V.1 = phi i32 [ 1041, %B2 ], [ %conv28, %C2 ] - %arrayidx44 = getelementptr inbounds i16, i16* %In, i64 3 - %tmp11 = load i16, i16* %arrayidx44, align 2 + %arrayidx44 = getelementptr inbounds i16, ptr %In, i64 3 + %tmp11 = load i16, ptr %arrayidx44, align 2 %conv45 = sext i16 %tmp11 to i32 %add46 = add nsw i32 %V.1, 42 %cmp47 = icmp slt i32 %conv45, %add46 @@ -223,142 +223,142 @@ A3: ; preds = %B2, %C2 B3: ; preds = %A3 %add50 = add nsw i32 %V.1, 42 %idxprom51 = sext i32 %add50 to i64 - %arrayidx52 = getelementptr inbounds i32, i32* %Out, i64 %idxprom51 - %tmp12 = load i32, i32* %arrayidx52, align 4 + %arrayidx52 = getelementptr inbounds i32, ptr %Out, i64 %idxprom51 + %tmp12 = load i32, ptr %arrayidx52, align 4 %inc53 = add nsw i32 %tmp12, 1 - store i32 %inc53, i32* %arrayidx52, align 4 + store i32 %inc53, ptr %arrayidx52, align 4 br label %A4 C3: ; preds = %A3 %idxprom55 = sext i16 %tmp11 to i64 - %arrayidx56 = getelementptr inbounds i32, i32* %Out, i64 %idxprom55 - %tmp13 = load i32, i32* %arrayidx56, align 4 + %arrayidx56 = getelementptr inbounds i32, ptr %Out, i64 %idxprom55 + %tmp13 = load i32, ptr %arrayidx56, align 4 %dec57 = add nsw i32 %tmp13, -1 - store i32 %dec57, i32* %arrayidx56, align 4 + store i32 %dec57, ptr %arrayidx56, align 4 br label %A4 A4: ; preds = %B3, %C3 - %arrayidx61 = getelementptr inbounds i16, i16* %In, i64 4 - %tmp14 = load i16, i16* %arrayidx61, align 2 + %arrayidx61 = getelementptr inbounds i16, ptr %In, i64 4 + %tmp14 = load i16, ptr %arrayidx61, align 2 %conv62 = sext i16 %tmp14 to i32 %cmp64 = icmp slt i16 %tmp14, 1041 br i1 %cmp64, label %B4, label %C4 B4: ; preds = %A4 - %arrayidx69 = getelementptr inbounds i32, i32* %Out, i64 1041 - %tmp15 = load i32, i32* %arrayidx69, align 4 + %arrayidx69 = getelementptr inbounds i32, ptr %Out, i64 1041 + %tmp15 = load i32, ptr %arrayidx69, align 4 %inc70 = add nsw i32 %tmp15, 1 - store i32 %inc70, i32* %arrayidx69, align 4 + store i32 %inc70, ptr %arrayidx69, align 4 br label %A5 C4: ; preds = %A4 %idxprom72 = sext i16 %tmp14 to i64 - %arrayidx73 = getelementptr inbounds i32, i32* %Out, i64 %idxprom72 - %tmp16 = load i32, i32* %arrayidx73, align 4 + %arrayidx73 = getelementptr inbounds i32, ptr %Out, i64 %idxprom72 + %tmp16 = load i32, ptr %arrayidx73, align 4 %dec74 = add nsw i32 %tmp16, -1 - store i32 %dec74, i32* %arrayidx73, align 4 + store i32 %dec74, ptr %arrayidx73, align 4 %phitmp = add nsw i32 %conv62, 42 br label %A5 A5: ; preds = %B4, %C4 %V.2 = phi i32 [ 1083, %B4 ], [ %phitmp, %C4 ] - %arrayidx78 = getelementptr inbounds i16, i16* %In, i64 5 - %tmp17 = load i16, i16* %arrayidx78, align 2 + %arrayidx78 = getelementptr inbounds i16, ptr %In, i64 5 + %tmp17 = load i16, ptr %arrayidx78, align 2 %conv79 = sext i16 %tmp17 to i32 %cmp81 = icmp slt i32 %conv79, %V.2 br i1 %cmp81, label %B5, label %C5 B5: ; preds = %A5 %idxprom85 = sext i32 %V.2 to i64 - %arrayidx86 = getelementptr inbounds i32, i32* %Out, i64 %idxprom85 - %tmp18 = load i32, i32* %arrayidx86, align 4 + %arrayidx86 = getelementptr inbounds i32, ptr %Out, i64 %idxprom85 + %tmp18 = load i32, ptr %arrayidx86, align 4 %inc87 = add nsw i32 %tmp18, 1 - store i32 %inc87, i32* %arrayidx86, align 4 + store i32 %inc87, ptr %arrayidx86, align 4 br label %A6 C5: ; preds = %A5 %idxprom89 = sext i16 %tmp17 to i64 - %arrayidx90 = getelementptr inbounds i32, i32* %Out, i64 %idxprom89 - %tmp19 = load i32, i32* %arrayidx90, align 4 + %arrayidx90 = getelementptr inbounds i32, ptr %Out, i64 %idxprom89 + %tmp19 = load i32, ptr %arrayidx90, align 4 %dec91 = add nsw i32 %tmp19, -1 - store i32 %dec91, i32* %arrayidx90, align 4 + store i32 %dec91, ptr %arrayidx90, align 4 br label %A6 A6: ; preds = %B5, %C5 - %arrayidx95 = getelementptr inbounds i16, i16* %In, i64 6 - %tmp20 = load i16, i16* %arrayidx95, align 2 + %arrayidx95 = getelementptr inbounds i16, ptr %In, i64 6 + %tmp20 = load i16, ptr %arrayidx95, align 2 %conv96 = sext i16 %tmp20 to i32 %cmp98 = icmp slt i16 %tmp20, 1041 br i1 %cmp98, label %B6, label %C6 B6: ; preds = %A6 - %arrayidx103 = getelementptr inbounds i32, i32* %Out, i64 1041 - %tmp21 = load i32, i32* %arrayidx103, align 4 + %arrayidx103 = getelementptr inbounds i32, ptr %Out, i64 1041 + %tmp21 = load i32, ptr %arrayidx103, align 4 %inc104 = add nsw i32 %tmp21, 1 - store i32 %inc104, i32* %arrayidx103, align 4 + store i32 %inc104, ptr %arrayidx103, align 4 br label %A7 C6: ; preds = %A6 %idxprom106 = sext i16 %tmp20 to i64 - %arrayidx107 = getelementptr inbounds i32, i32* %Out, i64 %idxprom106 - %tmp22 = load i32, i32* %arrayidx107, align 4 + %arrayidx107 = getelementptr inbounds i32, ptr %Out, i64 %idxprom106 + %tmp22 = load i32, ptr %arrayidx107, align 4 %dec108 = add nsw i32 %tmp22, -1 - store i32 %dec108, i32* %arrayidx107, align 4 + store i32 %dec108, ptr %arrayidx107, align 4 %phitmp1 = add nsw i32 %conv96, 42 br label %A7 A7: ; preds = %B6, %C6 %V.3 = phi i32 [ 1083, %B6 ], [ %phitmp1, %C6 ] - %arrayidx112 = getelementptr inbounds i16, i16* %In, i64 7 - %tmp23 = load i16, i16* %arrayidx112, align 2 + %arrayidx112 = getelementptr inbounds i16, ptr %In, i64 7 + %tmp23 = load i16, ptr %arrayidx112, align 2 %conv113 = sext i16 %tmp23 to i32 %cmp115 = icmp slt i32 %conv113, %V.3 br i1 %cmp115, label %B7, label %C7 B7: ; preds = %A7 %idxprom119 = sext i32 %V.3 to i64 - %arrayidx120 = getelementptr inbounds i32, i32* %Out, i64 %idxprom119 - %tmp24 = load i32, i32* %arrayidx120, align 4 + %arrayidx120 = getelementptr inbounds i32, ptr %Out, i64 %idxprom119 + %tmp24 = load i32, ptr %arrayidx120, align 4 %inc121 = add nsw i32 %tmp24, 1 - store i32 %inc121, i32* %arrayidx120, align 4 + store i32 %inc121, ptr %arrayidx120, align 4 br label %A8 C7: ; preds = %A7 %idxprom123 = sext i16 %tmp23 to i64 - %arrayidx124 = getelementptr inbounds i32, i32* %Out, i64 %idxprom123 - %tmp25 = load i32, i32* %arrayidx124, align 4 + %arrayidx124 = getelementptr inbounds i32, ptr %Out, i64 %idxprom123 + %tmp25 = load i32, ptr %arrayidx124, align 4 %dec125 = add nsw i32 %tmp25, -1 - store i32 %dec125, i32* %arrayidx124, align 4 + store i32 %dec125, ptr %arrayidx124, align 4 br label %A8 A8: ; preds = %B7, %C7 - %arrayidx129 = getelementptr inbounds i16, i16* %In, i64 8 - %tmp26 = load i16, i16* %arrayidx129, align 2 + %arrayidx129 = getelementptr inbounds i16, ptr %In, i64 8 + %tmp26 = load i16, ptr %arrayidx129, align 2 %cmp132 = icmp slt i16 %tmp26, 1041 br i1 %cmp132, label %B8, label %C8 B8: ; preds = %A8 - %arrayidx137 = getelementptr inbounds i32, i32* %Out, i64 1041 - %tmp27 = load i32, i32* %arrayidx137, align 4 + %arrayidx137 = getelementptr inbounds i32, ptr %Out, i64 1041 + %tmp27 = load i32, ptr %arrayidx137, align 4 %inc138 = add nsw i32 %tmp27, 1 - store i32 %inc138, i32* %arrayidx137, align 4 + store i32 %inc138, ptr %arrayidx137, align 4 br label %FINAL C8: ; preds = %A8 %idxprom140 = sext i16 %tmp26 to i64 - %arrayidx141 = getelementptr inbounds i32, i32* %Out, i64 %idxprom140 - %tmp28 = load i32, i32* %arrayidx141, align 4 + %arrayidx141 = getelementptr inbounds i32, ptr %Out, i64 %idxprom140 + %tmp28 = load i32, ptr %arrayidx141, align 4 %dec142 = add nsw i32 %tmp28, -1 - store i32 %dec142, i32* %arrayidx141, align 4 + store i32 %dec142, ptr %arrayidx141, align 4 %phitmp2 = sext i16 %tmp26 to i64 br label %FINAL FINAL: ; preds = %C8, %B8 %V.4 = phi i64 [ 1041, %B8 ], [ %phitmp2, %C8 ] - %arrayidx145 = getelementptr inbounds i32, i32* %Out, i64 %V.4 - %tmp29 = load i32, i32* %arrayidx145, align 4 + %arrayidx145 = getelementptr inbounds i32, ptr %Out, i64 %V.4 + %tmp29 = load i32, ptr %arrayidx145, align 4 %inc146 = add nsw i32 %tmp29, 1 - store i32 %inc146, i32* %arrayidx145, align 4 + store i32 %inc146, ptr %arrayidx145, align 4 br label %ScopExit ScopExit: diff --git a/polly/test/ScopInfo/complex-successor-structure.ll b/polly/test/ScopInfo/complex-successor-structure.ll index 66d6aef83cdc..364344045a6a 100644 --- a/polly/test/ScopInfo/complex-successor-structure.ll +++ b/polly/test/ScopInfo/complex-successor-structure.ll @@ -108,7 +108,7 @@ target triple = "thumbv7--linux-android" @Table2 = external global [1792 x i16], align 2 @Table3 = external global [16 x i16], align 2 -define void @foo(i16* nocapture readonly %indice, i16* nocapture %Output, i16* nocapture readonly %In1, i16* nocapture readonly %In2, i16 signext %var, i16 signext %var2) { +define void @foo(ptr nocapture readonly %indice, ptr nocapture %Output, ptr nocapture readonly %In1, ptr nocapture readonly %In2, i16 signext %var, i16 signext %var2) { entry: %.reg2mem158 = alloca i16 %.reg2mem156 = alloca i16 @@ -117,420 +117,418 @@ entry: %.reg2mem150 = alloca i16 %.reg2mem = alloca i16 %Temp_Ref = alloca [16 x i16], align 2 - %0 = bitcast [16 x i16]* %Temp_Ref to i8* %cmp = icmp eq i16 %var, 0 br label %for.body for.body: ; preds = %for.body, %entry %i.2138 = phi i32 [ %inc47, %for.body ], [ 0, %entry ] - %arrayidx28 = getelementptr inbounds [16 x i16], [16 x i16]* @Table3, i32 0, i32 %i.2138 - %1 = load i16, i16* %arrayidx28, align 2 - %conv29 = sext i16 %1 to i32 - %arrayidx36 = getelementptr inbounds i16, i16* %In2, i32 %i.2138 - %2 = load i16, i16* %arrayidx36, align 2 - %conv37 = sext i16 %2 to i32 + %arrayidx28 = getelementptr inbounds [16 x i16], ptr @Table3, i32 0, i32 %i.2138 + %0 = load i16, ptr %arrayidx28, align 2 + %conv29 = sext i16 %0 to i32 + %arrayidx36 = getelementptr inbounds i16, ptr %In2, i32 %i.2138 + %1 = load i16, ptr %arrayidx36, align 2 + %conv37 = sext i16 %1 to i32 %shl38147 = add nsw i32 %conv37, %conv29 %add35.1 = add nuw nsw i32 %i.2138, 16 - %arrayidx36.1 = getelementptr inbounds i16, i16* %In2, i32 %add35.1 - %3 = load i16, i16* %arrayidx36.1, align 2 - %conv37.1 = sext i16 %3 to i32 + %arrayidx36.1 = getelementptr inbounds i16, ptr %In2, i32 %add35.1 + %2 = load i16, ptr %arrayidx36.1, align 2 + %conv37.1 = sext i16 %2 to i32 %shl38.1148 = add nsw i32 %conv37.1, %shl38147 %add35.2 = add nuw nsw i32 %i.2138, 32 - %arrayidx36.2 = getelementptr inbounds i16, i16* %In2, i32 %add35.2 - %4 = load i16, i16* %arrayidx36.2, align 2 - %conv37.2 = sext i16 %4 to i32 + %arrayidx36.2 = getelementptr inbounds i16, ptr %In2, i32 %add35.2 + %3 = load i16, ptr %arrayidx36.2, align 2 + %conv37.2 = sext i16 %3 to i32 %shl38.2149 = add nsw i32 %conv37.2, %shl38.1148 %add39.2 = shl i32 %shl38.2149, 14 %add43 = add nsw i32 %add39.2, 32768 %shr129 = lshr i32 %add43, 16 %conv44 = trunc i32 %shr129 to i16 - %arrayidx45 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 %i.2138 - store i16 %conv44, i16* %arrayidx45, align 2 + %arrayidx45 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 %i.2138 + store i16 %conv44, ptr %arrayidx45, align 2 %inc47 = add nuw nsw i32 %i.2138, 1 %exitcond144 = icmp eq i32 %i.2138, 15 br i1 %exitcond144, label %if.entry, label %for.body if.entry: ; preds = %for.body - %5 = load i16, i16* %In1, align 2 - %conv54 = sext i16 %5 to i32 + %4 = load i16, ptr %In1, align 2 + %conv54 = sext i16 %4 to i32 %mul55 = mul nsw i32 %conv54, 29491 %shr56127 = lshr i32 %mul55, 15 - %arrayidx57 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 0 - %6 = load i16, i16* %arrayidx57, align 2 - %conv58 = sext i16 %6 to i32 + %5 = load i16, ptr %Temp_Ref, align 2 + %conv58 = sext i16 %5 to i32 %mul59 = mul nsw i32 %conv58, 3277 %shr60128 = lshr i32 %mul59, 15 %add61 = add nuw nsw i32 %shr60128, %shr56127 %conv62 = trunc i32 %add61 to i16 - store i16 %conv62, i16* %Output, align 2 - %arrayidx53.1 = getelementptr inbounds i16, i16* %In1, i32 1 - %7 = load i16, i16* %arrayidx53.1, align 2 - %conv54.1 = sext i16 %7 to i32 + store i16 %conv62, ptr %Output, align 2 + %arrayidx53.1 = getelementptr inbounds i16, ptr %In1, i32 1 + %6 = load i16, ptr %arrayidx53.1, align 2 + %conv54.1 = sext i16 %6 to i32 %mul55.1 = mul nsw i32 %conv54.1, 29491 %shr56127.1 = lshr i32 %mul55.1, 15 - %arrayidx57.1 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 1 - %8 = load i16, i16* %arrayidx57.1, align 2 - %conv58.1 = sext i16 %8 to i32 + %arrayidx57.1 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 1 + %7 = load i16, ptr %arrayidx57.1, align 2 + %conv58.1 = sext i16 %7 to i32 %mul59.1 = mul nsw i32 %conv58.1, 3277 %shr60128.1 = lshr i32 %mul59.1, 15 %add61.1 = add nuw nsw i32 %shr60128.1, %shr56127.1 %conv62.1 = trunc i32 %add61.1 to i16 - %arrayidx63.1 = getelementptr inbounds i16, i16* %Output, i32 1 - store i16 %conv62.1, i16* %arrayidx63.1, align 2 - %arrayidx53.2 = getelementptr inbounds i16, i16* %In1, i32 2 - %9 = load i16, i16* %arrayidx53.2, align 2 - %conv54.2 = sext i16 %9 to i32 + %arrayidx63.1 = getelementptr inbounds i16, ptr %Output, i32 1 + store i16 %conv62.1, ptr %arrayidx63.1, align 2 + %arrayidx53.2 = getelementptr inbounds i16, ptr %In1, i32 2 + %8 = load i16, ptr %arrayidx53.2, align 2 + %conv54.2 = sext i16 %8 to i32 %mul55.2 = mul nsw i32 %conv54.2, 29491 %shr56127.2 = lshr i32 %mul55.2, 15 - %arrayidx57.2 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 2 - %10 = load i16, i16* %arrayidx57.2, align 2 - %conv58.2 = sext i16 %10 to i32 + %arrayidx57.2 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 2 + %9 = load i16, ptr %arrayidx57.2, align 2 + %conv58.2 = sext i16 %9 to i32 %mul59.2 = mul nsw i32 %conv58.2, 3277 %shr60128.2 = lshr i32 %mul59.2, 15 %add61.2 = add nuw nsw i32 %shr60128.2, %shr56127.2 %conv62.2 = trunc i32 %add61.2 to i16 - %arrayidx63.2 = getelementptr inbounds i16, i16* %Output, i32 2 - store i16 %conv62.2, i16* %arrayidx63.2, align 2 - %arrayidx53.3 = getelementptr inbounds i16, i16* %In1, i32 3 - %11 = load i16, i16* %arrayidx53.3, align 2 - %conv54.3 = sext i16 %11 to i32 + %arrayidx63.2 = getelementptr inbounds i16, ptr %Output, i32 2 + store i16 %conv62.2, ptr %arrayidx63.2, align 2 + %arrayidx53.3 = getelementptr inbounds i16, ptr %In1, i32 3 + %10 = load i16, ptr %arrayidx53.3, align 2 + %conv54.3 = sext i16 %10 to i32 %mul55.3 = mul nsw i32 %conv54.3, 29491 %shr56127.3 = lshr i32 %mul55.3, 15 - %arrayidx57.3 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 3 - %12 = load i16, i16* %arrayidx57.3, align 2 - %conv58.3 = sext i16 %12 to i32 + %arrayidx57.3 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 3 + %11 = load i16, ptr %arrayidx57.3, align 2 + %conv58.3 = sext i16 %11 to i32 %mul59.3 = mul nsw i32 %conv58.3, 3277 %shr60128.3 = lshr i32 %mul59.3, 15 %add61.3 = add nuw nsw i32 %shr60128.3, %shr56127.3 %conv62.3 = trunc i32 %add61.3 to i16 - %arrayidx63.3 = getelementptr inbounds i16, i16* %Output, i32 3 - store i16 %conv62.3, i16* %arrayidx63.3, align 2 - %arrayidx53.4 = getelementptr inbounds i16, i16* %In1, i32 4 - %13 = load i16, i16* %arrayidx53.4, align 2 - %conv54.4 = sext i16 %13 to i32 + %arrayidx63.3 = getelementptr inbounds i16, ptr %Output, i32 3 + store i16 %conv62.3, ptr %arrayidx63.3, align 2 + %arrayidx53.4 = getelementptr inbounds i16, ptr %In1, i32 4 + %12 = load i16, ptr %arrayidx53.4, align 2 + %conv54.4 = sext i16 %12 to i32 %mul55.4 = mul nsw i32 %conv54.4, 29491 %shr56127.4 = lshr i32 %mul55.4, 15 - %arrayidx57.4 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 4 - %14 = load i16, i16* %arrayidx57.4, align 2 - %conv58.4 = sext i16 %14 to i32 + %arrayidx57.4 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 4 + %13 = load i16, ptr %arrayidx57.4, align 2 + %conv58.4 = sext i16 %13 to i32 %mul59.4 = mul nsw i32 %conv58.4, 3277 %shr60128.4 = lshr i32 %mul59.4, 15 %add61.4 = add nuw nsw i32 %shr60128.4, %shr56127.4 %conv62.4 = trunc i32 %add61.4 to i16 - %arrayidx63.4 = getelementptr inbounds i16, i16* %Output, i32 4 - store i16 %conv62.4, i16* %arrayidx63.4, align 2 - %arrayidx53.5 = getelementptr inbounds i16, i16* %In1, i32 5 - %15 = load i16, i16* %arrayidx53.5, align 2 - %conv54.5 = sext i16 %15 to i32 + %arrayidx63.4 = getelementptr inbounds i16, ptr %Output, i32 4 + store i16 %conv62.4, ptr %arrayidx63.4, align 2 + %arrayidx53.5 = getelementptr inbounds i16, ptr %In1, i32 5 + %14 = load i16, ptr %arrayidx53.5, align 2 + %conv54.5 = sext i16 %14 to i32 %mul55.5 = mul nsw i32 %conv54.5, 29491 %shr56127.5 = lshr i32 %mul55.5, 15 - %arrayidx57.5 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 5 - %16 = load i16, i16* %arrayidx57.5, align 2 - %conv58.5 = sext i16 %16 to i32 + %arrayidx57.5 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 5 + %15 = load i16, ptr %arrayidx57.5, align 2 + %conv58.5 = sext i16 %15 to i32 %mul59.5 = mul nsw i32 %conv58.5, 3277 %shr60128.5 = lshr i32 %mul59.5, 15 %add61.5 = add nuw nsw i32 %shr60128.5, %shr56127.5 %conv62.5 = trunc i32 %add61.5 to i16 - %arrayidx63.5 = getelementptr inbounds i16, i16* %Output, i32 5 - store i16 %conv62.5, i16* %arrayidx63.5, align 2 - %arrayidx53.6 = getelementptr inbounds i16, i16* %In1, i32 6 - %17 = load i16, i16* %arrayidx53.6, align 2 - %conv54.6 = sext i16 %17 to i32 + %arrayidx63.5 = getelementptr inbounds i16, ptr %Output, i32 5 + store i16 %conv62.5, ptr %arrayidx63.5, align 2 + %arrayidx53.6 = getelementptr inbounds i16, ptr %In1, i32 6 + %16 = load i16, ptr %arrayidx53.6, align 2 + %conv54.6 = sext i16 %16 to i32 %mul55.6 = mul nsw i32 %conv54.6, 29491 %shr56127.6 = lshr i32 %mul55.6, 15 - %arrayidx57.6 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 6 - %18 = load i16, i16* %arrayidx57.6, align 2 - %conv58.6 = sext i16 %18 to i32 + %arrayidx57.6 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 6 + %17 = load i16, ptr %arrayidx57.6, align 2 + %conv58.6 = sext i16 %17 to i32 %mul59.6 = mul nsw i32 %conv58.6, 3277 %shr60128.6 = lshr i32 %mul59.6, 15 %add61.6 = add nuw nsw i32 %shr60128.6, %shr56127.6 %conv62.6 = trunc i32 %add61.6 to i16 - %arrayidx63.6 = getelementptr inbounds i16, i16* %Output, i32 6 - store i16 %conv62.6, i16* %arrayidx63.6, align 2 - %arrayidx53.7 = getelementptr inbounds i16, i16* %In1, i32 7 - %19 = load i16, i16* %arrayidx53.7, align 2 - %conv54.7 = sext i16 %19 to i32 + %arrayidx63.6 = getelementptr inbounds i16, ptr %Output, i32 6 + store i16 %conv62.6, ptr %arrayidx63.6, align 2 + %arrayidx53.7 = getelementptr inbounds i16, ptr %In1, i32 7 + %18 = load i16, ptr %arrayidx53.7, align 2 + %conv54.7 = sext i16 %18 to i32 %mul55.7 = mul nsw i32 %conv54.7, 29491 %shr56127.7 = lshr i32 %mul55.7, 15 - %arrayidx57.7 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 7 - %20 = load i16, i16* %arrayidx57.7, align 2 - %conv58.7 = sext i16 %20 to i32 + %arrayidx57.7 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 7 + %19 = load i16, ptr %arrayidx57.7, align 2 + %conv58.7 = sext i16 %19 to i32 %mul59.7 = mul nsw i32 %conv58.7, 3277 %shr60128.7 = lshr i32 %mul59.7, 15 %add61.7 = add nuw nsw i32 %shr60128.7, %shr56127.7 %conv62.7 = trunc i32 %add61.7 to i16 - %arrayidx63.7 = getelementptr inbounds i16, i16* %Output, i32 7 - store i16 %conv62.7, i16* %arrayidx63.7, align 2 - %arrayidx53.8 = getelementptr inbounds i16, i16* %In1, i32 8 - %21 = load i16, i16* %arrayidx53.8, align 2 - %conv54.8 = sext i16 %21 to i32 + %arrayidx63.7 = getelementptr inbounds i16, ptr %Output, i32 7 + store i16 %conv62.7, ptr %arrayidx63.7, align 2 + %arrayidx53.8 = getelementptr inbounds i16, ptr %In1, i32 8 + %20 = load i16, ptr %arrayidx53.8, align 2 + %conv54.8 = sext i16 %20 to i32 %mul55.8 = mul nsw i32 %conv54.8, 29491 %shr56127.8 = lshr i32 %mul55.8, 15 - %arrayidx57.8 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 8 - %22 = load i16, i16* %arrayidx57.8, align 2 - %conv58.8 = sext i16 %22 to i32 + %arrayidx57.8 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 8 + %21 = load i16, ptr %arrayidx57.8, align 2 + %conv58.8 = sext i16 %21 to i32 %mul59.8 = mul nsw i32 %conv58.8, 3277 %shr60128.8 = lshr i32 %mul59.8, 15 %add61.8 = add nuw nsw i32 %shr60128.8, %shr56127.8 %conv62.8 = trunc i32 %add61.8 to i16 - %arrayidx63.8 = getelementptr inbounds i16, i16* %Output, i32 8 - store i16 %conv62.8, i16* %arrayidx63.8, align 2 - %arrayidx53.9 = getelementptr inbounds i16, i16* %In1, i32 9 - %23 = load i16, i16* %arrayidx53.9, align 2 - %conv54.9 = sext i16 %23 to i32 + %arrayidx63.8 = getelementptr inbounds i16, ptr %Output, i32 8 + store i16 %conv62.8, ptr %arrayidx63.8, align 2 + %arrayidx53.9 = getelementptr inbounds i16, ptr %In1, i32 9 + %22 = load i16, ptr %arrayidx53.9, align 2 + %conv54.9 = sext i16 %22 to i32 %mul55.9 = mul nsw i32 %conv54.9, 29491 %shr56127.9 = lshr i32 %mul55.9, 15 - %arrayidx57.9 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 9 - %24 = load i16, i16* %arrayidx57.9, align 2 - %conv58.9 = sext i16 %24 to i32 + %arrayidx57.9 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 9 + %23 = load i16, ptr %arrayidx57.9, align 2 + %conv58.9 = sext i16 %23 to i32 %mul59.9 = mul nsw i32 %conv58.9, 3277 %shr60128.9 = lshr i32 %mul59.9, 15 %add61.9 = add nuw nsw i32 %shr60128.9, %shr56127.9 %conv62.9 = trunc i32 %add61.9 to i16 - %arrayidx63.9 = getelementptr inbounds i16, i16* %Output, i32 9 - store i16 %conv62.9, i16* %arrayidx63.9, align 2 - %arrayidx53.10 = getelementptr inbounds i16, i16* %In1, i32 10 - %25 = load i16, i16* %arrayidx53.10, align 2 - %conv54.10 = sext i16 %25 to i32 + %arrayidx63.9 = getelementptr inbounds i16, ptr %Output, i32 9 + store i16 %conv62.9, ptr %arrayidx63.9, align 2 + %arrayidx53.10 = getelementptr inbounds i16, ptr %In1, i32 10 + %24 = load i16, ptr %arrayidx53.10, align 2 + %conv54.10 = sext i16 %24 to i32 %mul55.10 = mul nsw i32 %conv54.10, 29491 %shr56127.10 = lshr i32 %mul55.10, 15 - %arrayidx57.10 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 10 - %26 = load i16, i16* %arrayidx57.10, align 2 - %conv58.10 = sext i16 %26 to i32 + %arrayidx57.10 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 10 + %25 = load i16, ptr %arrayidx57.10, align 2 + %conv58.10 = sext i16 %25 to i32 %mul59.10 = mul nsw i32 %conv58.10, 3277 %shr60128.10 = lshr i32 %mul59.10, 15 %add61.10 = add nuw nsw i32 %shr60128.10, %shr56127.10 %conv62.10 = trunc i32 %add61.10 to i16 - %arrayidx63.10 = getelementptr inbounds i16, i16* %Output, i32 10 - store i16 %conv62.10, i16* %arrayidx63.10, align 2 - %arrayidx53.11 = getelementptr inbounds i16, i16* %In1, i32 11 - %27 = load i16, i16* %arrayidx53.11, align 2 - %conv54.11 = sext i16 %27 to i32 + %arrayidx63.10 = getelementptr inbounds i16, ptr %Output, i32 10 + store i16 %conv62.10, ptr %arrayidx63.10, align 2 + %arrayidx53.11 = getelementptr inbounds i16, ptr %In1, i32 11 + %26 = load i16, ptr %arrayidx53.11, align 2 + %conv54.11 = sext i16 %26 to i32 %mul55.11 = mul nsw i32 %conv54.11, 29491 %shr56127.11 = lshr i32 %mul55.11, 15 - %arrayidx57.11 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 11 - %28 = load i16, i16* %arrayidx57.11, align 2 - %conv58.11 = sext i16 %28 to i32 + %arrayidx57.11 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 11 + %27 = load i16, ptr %arrayidx57.11, align 2 + %conv58.11 = sext i16 %27 to i32 %mul59.11 = mul nsw i32 %conv58.11, 3277 %shr60128.11 = lshr i32 %mul59.11, 15 %add61.11 = add nuw nsw i32 %shr60128.11, %shr56127.11 %conv62.11 = trunc i32 %add61.11 to i16 - %arrayidx63.11 = getelementptr inbounds i16, i16* %Output, i32 11 - store i16 %conv62.11, i16* %arrayidx63.11, align 2 - %arrayidx53.12 = getelementptr inbounds i16, i16* %In1, i32 12 - %29 = load i16, i16* %arrayidx53.12, align 2 - %conv54.12 = sext i16 %29 to i32 + %arrayidx63.11 = getelementptr inbounds i16, ptr %Output, i32 11 + store i16 %conv62.11, ptr %arrayidx63.11, align 2 + %arrayidx53.12 = getelementptr inbounds i16, ptr %In1, i32 12 + %28 = load i16, ptr %arrayidx53.12, align 2 + %conv54.12 = sext i16 %28 to i32 %mul55.12 = mul nsw i32 %conv54.12, 29491 %shr56127.12 = lshr i32 %mul55.12, 15 - %arrayidx57.12 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 12 - %30 = load i16, i16* %arrayidx57.12, align 2 - %conv58.12 = sext i16 %30 to i32 + %arrayidx57.12 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 12 + %29 = load i16, ptr %arrayidx57.12, align 2 + %conv58.12 = sext i16 %29 to i32 %mul59.12 = mul nsw i32 %conv58.12, 3277 %shr60128.12 = lshr i32 %mul59.12, 15 %add61.12 = add nuw nsw i32 %shr60128.12, %shr56127.12 %conv62.12 = trunc i32 %add61.12 to i16 - %arrayidx63.12 = getelementptr inbounds i16, i16* %Output, i32 12 - store i16 %conv62.12, i16* %arrayidx63.12, align 2 - %arrayidx53.13 = getelementptr inbounds i16, i16* %In1, i32 13 - %31 = load i16, i16* %arrayidx53.13, align 2 - %conv54.13 = sext i16 %31 to i32 + %arrayidx63.12 = getelementptr inbounds i16, ptr %Output, i32 12 + store i16 %conv62.12, ptr %arrayidx63.12, align 2 + %arrayidx53.13 = getelementptr inbounds i16, ptr %In1, i32 13 + %30 = load i16, ptr %arrayidx53.13, align 2 + %conv54.13 = sext i16 %30 to i32 %mul55.13 = mul nsw i32 %conv54.13, 29491 %shr56127.13 = lshr i32 %mul55.13, 15 - %arrayidx57.13 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 13 - %32 = load i16, i16* %arrayidx57.13, align 2 - %conv58.13 = sext i16 %32 to i32 + %arrayidx57.13 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 13 + %31 = load i16, ptr %arrayidx57.13, align 2 + %conv58.13 = sext i16 %31 to i32 %mul59.13 = mul nsw i32 %conv58.13, 3277 %shr60128.13 = lshr i32 %mul59.13, 15 %add61.13 = add nuw nsw i32 %shr60128.13, %shr56127.13 %conv62.13 = trunc i32 %add61.13 to i16 - %arrayidx63.13 = getelementptr inbounds i16, i16* %Output, i32 13 - store i16 %conv62.13, i16* %arrayidx63.13, align 2 - %arrayidx53.14 = getelementptr inbounds i16, i16* %In1, i32 14 - %33 = load i16, i16* %arrayidx53.14, align 2 - %conv54.14 = sext i16 %33 to i32 + %arrayidx63.13 = getelementptr inbounds i16, ptr %Output, i32 13 + store i16 %conv62.13, ptr %arrayidx63.13, align 2 + %arrayidx53.14 = getelementptr inbounds i16, ptr %In1, i32 14 + %32 = load i16, ptr %arrayidx53.14, align 2 + %conv54.14 = sext i16 %32 to i32 %mul55.14 = mul nsw i32 %conv54.14, 29491 %shr56127.14 = lshr i32 %mul55.14, 15 - %arrayidx57.14 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 14 - %34 = load i16, i16* %arrayidx57.14, align 2 - %conv58.14 = sext i16 %34 to i32 + %arrayidx57.14 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 14 + %33 = load i16, ptr %arrayidx57.14, align 2 + %conv58.14 = sext i16 %33 to i32 %mul59.14 = mul nsw i32 %conv58.14, 3277 %shr60128.14 = lshr i32 %mul59.14, 15 %add61.14 = add nuw nsw i32 %shr60128.14, %shr56127.14 %conv62.14 = trunc i32 %add61.14 to i16 - %arrayidx63.14 = getelementptr inbounds i16, i16* %Output, i32 14 - store i16 %conv62.14, i16* %arrayidx63.14, align 2 - %arrayidx53.15 = getelementptr inbounds i16, i16* %In1, i32 15 - %35 = load i16, i16* %arrayidx53.15, align 2 - %conv54.15 = sext i16 %35 to i32 + %arrayidx63.14 = getelementptr inbounds i16, ptr %Output, i32 14 + store i16 %conv62.14, ptr %arrayidx63.14, align 2 + %arrayidx53.15 = getelementptr inbounds i16, ptr %In1, i32 15 + %34 = load i16, ptr %arrayidx53.15, align 2 + %conv54.15 = sext i16 %34 to i32 %mul55.15 = mul nsw i32 %conv54.15, 29491 %shr56127.15 = lshr i32 %mul55.15, 15 - %arrayidx57.15 = getelementptr inbounds [16 x i16], [16 x i16]* %Temp_Ref, i32 0, i32 15 - %36 = load i16, i16* %arrayidx57.15, align 2 - %conv58.15 = sext i16 %36 to i32 + %arrayidx57.15 = getelementptr inbounds [16 x i16], ptr %Temp_Ref, i32 0, i32 15 + %35 = load i16, ptr %arrayidx57.15, align 2 + %conv58.15 = sext i16 %35 to i32 %mul59.15 = mul nsw i32 %conv58.15, 3277 %shr60128.15 = lshr i32 %mul59.15, 15 %add61.15 = add nuw nsw i32 %shr60128.15, %shr56127.15 %conv62.15 = trunc i32 %add61.15 to i16 - %arrayidx63.15 = getelementptr inbounds i16, i16* %Output, i32 15 - store i16 %conv62.15, i16* %arrayidx63.15, align 2 - store i16 %conv62.9, i16* %.reg2mem - store i16 %conv62.10, i16* %.reg2mem150 - store i16 %conv62.11, i16* %.reg2mem152 - store i16 %conv62.12, i16* %.reg2mem154 - store i16 %conv62.13, i16* %.reg2mem156 - store i16 %conv62.14, i16* %.reg2mem158 - %.reload159 = load i16, i16* %.reg2mem158 - %.reload157 = load i16, i16* %.reg2mem156 - %.reload155 = load i16, i16* %.reg2mem154 - %.reload153 = load i16, i16* %.reg2mem152 - %.reload151 = load i16, i16* %.reg2mem150 - %.reload = load i16, i16* %.reg2mem - %37 = load i16, i16* %In1, align 2 - %cmp77 = icmp slt i16 %37, 128 + %arrayidx63.15 = getelementptr inbounds i16, ptr %Output, i32 15 + store i16 %conv62.15, ptr %arrayidx63.15, align 2 + store i16 %conv62.9, ptr %.reg2mem + store i16 %conv62.10, ptr %.reg2mem150 + store i16 %conv62.11, ptr %.reg2mem152 + store i16 %conv62.12, ptr %.reg2mem154 + store i16 %conv62.13, ptr %.reg2mem156 + store i16 %conv62.14, ptr %.reg2mem158 + %.reload159 = load i16, ptr %.reg2mem158 + %.reload157 = load i16, ptr %.reg2mem156 + %.reload155 = load i16, ptr %.reg2mem154 + %.reload153 = load i16, ptr %.reg2mem152 + %.reload151 = load i16, ptr %.reg2mem150 + %.reload = load i16, ptr %.reg2mem + %36 = load i16, ptr %In1, align 2 + %cmp77 = icmp slt i16 %36, 128 br i1 %cmp77, label %A0, label %B0 A0: ; preds = %if.entry - store i16 128, i16* %Output, align 2 + store i16 128, ptr %Output, align 2 br label %B0 B0: ; preds = %A, %if.entry - %38 = phi i16 [ 128, %A0 ], [ %37, %if.entry ] - %add84 = add i16 %38, 128 - %arrayidx74.1 = getelementptr inbounds i16, i16* %Output, i32 1 - %39 = load i16, i16* %arrayidx74.1, align 2 - %cmp77.1 = icmp slt i16 %39, %add84 + %37 = phi i16 [ 128, %A0 ], [ %36, %if.entry ] + %add84 = add i16 %37, 128 + %arrayidx74.1 = getelementptr inbounds i16, ptr %Output, i32 1 + %38 = load i16, ptr %arrayidx74.1, align 2 + %cmp77.1 = icmp slt i16 %38, %add84 br i1 %cmp77.1, label %A1, label %B1 A1: ; preds = %B - store i16 %add84, i16* %arrayidx74.1, align 2 + store i16 %add84, ptr %arrayidx74.1, align 2 br label %B1 B1: ; preds = %A1, %B - %40 = phi i16 [ %add84, %A1 ], [ %39, %B0 ] - %add84.1 = add i16 %40, 128 - %arrayidx74.2 = getelementptr inbounds i16, i16* %Output, i32 2 - %41 = load i16, i16* %arrayidx74.2, align 2 - %cmp77.2 = icmp slt i16 %41, %add84.1 + %39 = phi i16 [ %add84, %A1 ], [ %38, %B0 ] + %add84.1 = add i16 %39, 128 + %arrayidx74.2 = getelementptr inbounds i16, ptr %Output, i32 2 + %40 = load i16, ptr %arrayidx74.2, align 2 + %cmp77.2 = icmp slt i16 %40, %add84.1 br i1 %cmp77.2, label %A2, label %B2 A2: ; preds = %B1 - store i16 %add84.1, i16* %arrayidx74.2, align 2 + store i16 %add84.1, ptr %arrayidx74.2, align 2 br label %B2 B2: ; preds = %A2, %B1 - %42 = phi i16 [ %add84.1, %A2 ], [ %41, %B1 ] - %add84.2 = add i16 %42, 128 - %arrayidx74.3 = getelementptr inbounds i16, i16* %Output, i32 3 - %43 = load i16, i16* %arrayidx74.3, align 2 - %cmp77.3 = icmp slt i16 %43, %add84.2 + %41 = phi i16 [ %add84.1, %A2 ], [ %40, %B1 ] + %add84.2 = add i16 %41, 128 + %arrayidx74.3 = getelementptr inbounds i16, ptr %Output, i32 3 + %42 = load i16, ptr %arrayidx74.3, align 2 + %cmp77.3 = icmp slt i16 %42, %add84.2 br i1 %cmp77.3, label %A3, label %B3 A3: ; preds = %B2 - store i16 %add84.2, i16* %arrayidx74.3, align 2 + store i16 %add84.2, ptr %arrayidx74.3, align 2 br label %B3 B3: ; preds = %A3, %B2 - %44 = phi i16 [ %add84.2, %A3 ], [ %43, %B2 ] - %add84.3 = add i16 %44, 128 - %arrayidx74.4 = getelementptr inbounds i16, i16* %Output, i32 4 - %45 = load i16, i16* %arrayidx74.4, align 2 - %cmp77.4 = icmp slt i16 %45, %add84.3 + %43 = phi i16 [ %add84.2, %A3 ], [ %42, %B2 ] + %add84.3 = add i16 %43, 128 + %arrayidx74.4 = getelementptr inbounds i16, ptr %Output, i32 4 + %44 = load i16, ptr %arrayidx74.4, align 2 + %cmp77.4 = icmp slt i16 %44, %add84.3 br i1 %cmp77.4, label %A4, label %B4 A4: ; preds = %B3 - store i16 %add84.3, i16* %arrayidx74.4, align 2 + store i16 %add84.3, ptr %arrayidx74.4, align 2 br label %B4 B4: ; preds = %A4, %B3 - %46 = phi i16 [ %add84.3, %A4 ], [ %45, %B3 ] - %add84.4 = add i16 %46, 128 - %arrayidx74.5 = getelementptr inbounds i16, i16* %Output, i32 5 - %47 = load i16, i16* %arrayidx74.5, align 2 - %cmp77.5 = icmp slt i16 %47, %add84.4 + %45 = phi i16 [ %add84.3, %A4 ], [ %44, %B3 ] + %add84.4 = add i16 %45, 128 + %arrayidx74.5 = getelementptr inbounds i16, ptr %Output, i32 5 + %46 = load i16, ptr %arrayidx74.5, align 2 + %cmp77.5 = icmp slt i16 %46, %add84.4 br i1 %cmp77.5, label %A5, label %B5 A5: ; preds = %B4 - store i16 %add84.4, i16* %arrayidx74.5, align 2 + store i16 %add84.4, ptr %arrayidx74.5, align 2 br label %B5 B5: ; preds = %A5, %B4 - %48 = phi i16 [ %add84.4, %A5 ], [ %47, %B4 ] - %add84.5 = add i16 %48, 128 - %arrayidx74.6 = getelementptr inbounds i16, i16* %Output, i32 6 - %49 = load i16, i16* %arrayidx74.6, align 2 - %cmp77.6 = icmp slt i16 %49, %add84.5 + %47 = phi i16 [ %add84.4, %A5 ], [ %46, %B4 ] + %add84.5 = add i16 %47, 128 + %arrayidx74.6 = getelementptr inbounds i16, ptr %Output, i32 6 + %48 = load i16, ptr %arrayidx74.6, align 2 + %cmp77.6 = icmp slt i16 %48, %add84.5 br i1 %cmp77.6, label %A6, label %B6 A6: ; preds = %B5 - store i16 %add84.5, i16* %arrayidx74.6, align 2 + store i16 %add84.5, ptr %arrayidx74.6, align 2 br label %B6 B6: ; preds = %A6, %B5 - %50 = phi i16 [ %add84.5, %A6 ], [ %49, %B5 ] - %add84.6 = add i16 %50, 128 - %arrayidx74.7 = getelementptr inbounds i16, i16* %Output, i32 7 - %51 = load i16, i16* %arrayidx74.7, align 2 - %cmp77.7 = icmp slt i16 %51, %add84.6 + %49 = phi i16 [ %add84.5, %A6 ], [ %48, %B5 ] + %add84.6 = add i16 %49, 128 + %arrayidx74.7 = getelementptr inbounds i16, ptr %Output, i32 7 + %50 = load i16, ptr %arrayidx74.7, align 2 + %cmp77.7 = icmp slt i16 %50, %add84.6 br i1 %cmp77.7, label %A7, label %B7 A7: ; preds = %B6 - store i16 %add84.6, i16* %arrayidx74.7, align 2 + store i16 %add84.6, ptr %arrayidx74.7, align 2 br label %B7 B7: ; preds = %A7, %B6 - %52 = phi i16 [ %add84.6, %A7 ], [ %51, %B6 ] - %add84.7 = add i16 %52, 128 - %arrayidx74.8 = getelementptr inbounds i16, i16* %Output, i32 8 - %53 = load i16, i16* %arrayidx74.8, align 2 - %cmp77.8 = icmp slt i16 %53, %add84.7 + %51 = phi i16 [ %add84.6, %A7 ], [ %50, %B6 ] + %add84.7 = add i16 %51, 128 + %arrayidx74.8 = getelementptr inbounds i16, ptr %Output, i32 8 + %52 = load i16, ptr %arrayidx74.8, align 2 + %cmp77.8 = icmp slt i16 %52, %add84.7 br i1 %cmp77.8, label %A8, label %B8 A8: ; preds = %B7 - store i16 %add84.7, i16* %arrayidx74.8, align 2 + store i16 %add84.7, ptr %arrayidx74.8, align 2 br label %B8 B8: ; preds = %A8, %B7 - %54 = phi i16 [ %add84.7, %A8 ], [ %53, %B7 ] - %add84.8 = add i16 %54, 128 + %53 = phi i16 [ %add84.7, %A8 ], [ %52, %B7 ] + %add84.8 = add i16 %53, 128 %cmp77.9 = icmp slt i16 %.reload, %add84.8 br i1 %cmp77.9, label %A9, label %B9 A9: ; preds = %B8 - %arrayidx74.9 = getelementptr inbounds i16, i16* %Output, i32 9 - store i16 %add84.8, i16* %arrayidx74.9, align 2 + %arrayidx74.9 = getelementptr inbounds i16, ptr %Output, i32 9 + store i16 %add84.8, ptr %arrayidx74.9, align 2 br label %B9 B9: ; preds = %A9, %B8 - %55 = phi i16 [ %add84.8, %A9 ], [ %.reload, %B8 ] - %add84.9 = add i16 %55, 128 + %54 = phi i16 [ %add84.8, %A9 ], [ %.reload, %B8 ] + %add84.9 = add i16 %54, 128 %cmp77.10 = icmp slt i16 %.reload151, %add84.9 br i1 %cmp77.10, label %A10, label %B10 A10: ; preds = %B9 - %arrayidx74.10 = getelementptr inbounds i16, i16* %Output, i32 10 - store i16 %add84.9, i16* %arrayidx74.10, align 2 + %arrayidx74.10 = getelementptr inbounds i16, ptr %Output, i32 10 + store i16 %add84.9, ptr %arrayidx74.10, align 2 br label %B10 B10: ; preds = %A10, %B9 - %56 = phi i16 [ %add84.9, %A10 ], [ %.reload151, %B9 ] - %add84.10 = add i16 %56, 128 + %55 = phi i16 [ %add84.9, %A10 ], [ %.reload151, %B9 ] + %add84.10 = add i16 %55, 128 %cmp77.11 = icmp slt i16 %.reload153, %add84.10 br i1 %cmp77.11, label %A11, label %B11 A11: ; preds = %B10 - %arrayidx74.11 = getelementptr inbounds i16, i16* %Output, i32 11 - store i16 %add84.10, i16* %arrayidx74.11, align 2 + %arrayidx74.11 = getelementptr inbounds i16, ptr %Output, i32 11 + store i16 %add84.10, ptr %arrayidx74.11, align 2 br label %B11 B11: ; preds = %A11, %B10 - %57 = phi i16 [ %add84.10, %A11 ], [ %.reload153, %B10 ] - %add84.11 = add i16 %57, 128 + %56 = phi i16 [ %add84.10, %A11 ], [ %.reload153, %B10 ] + %add84.11 = add i16 %56, 128 %cmp77.12 = icmp slt i16 %.reload155, %add84.11 br i1 %cmp77.12, label %A12, label %B13 A12: ; preds = %B11 - %arrayidx74.12 = getelementptr inbounds i16, i16* %Output, i32 12 - store i16 %add84.11, i16* %arrayidx74.12, align 2 + %arrayidx74.12 = getelementptr inbounds i16, ptr %Output, i32 12 + store i16 %add84.11, ptr %arrayidx74.12, align 2 br label %B13 B13: ; preds = %A12, %B13 diff --git a/polly/test/ScopInfo/complex_domain_binary_condition.ll b/polly/test/ScopInfo/complex_domain_binary_condition.ll index 4434b9026d17..cec26855debb 100644 --- a/polly/test/ScopInfo/complex_domain_binary_condition.ll +++ b/polly/test/ScopInfo/complex_domain_binary_condition.ll @@ -8,11 +8,11 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" %struct.bc_struct.0.2.4.6.13.20.27.43.44.46.50.52.58.60.81.89.90.99.107.108.109.111.116.118.149 = type { i32, i32, i32, i32, [1024 x i8] } ; Function Attrs: nounwind uwtable -define void @bc_multiply(%struct.bc_struct.0.2.4.6.13.20.27.43.44.46.50.52.58.60.81.89.90.99.107.108.109.111.116.118.149* readonly %n1, i32 %scale) #0 { +define void @bc_multiply(ptr readonly %n1, i32 %scale) #0 { entry: - %0 = load i32, i32* undef, align 4 - %1 = load i32, i32* undef, align 4 - %2 = load i32, i32* undef, align 4 + %0 = load i32, ptr undef, align 4 + %1 = load i32, ptr undef, align 4 + %2 = load i32, ptr undef, align 4 %add3 = add nsw i32 %2, %1 %cmp = icmp sgt i32 %0, %2 %. = select i1 %cmp, i32 %0, i32 %2 @@ -21,8 +21,8 @@ entry: %cmp26 = icmp sgt i32 0, %scale.. %scale...add7 = select i1 %cmp26, i32 %scale.., i32 0 %sub = sub nsw i32 0, %scale...add7 - %add.ptr = getelementptr inbounds %struct.bc_struct.0.2.4.6.13.20.27.43.44.46.50.52.58.60.81.89.90.99.107.108.109.111.116.118.149, %struct.bc_struct.0.2.4.6.13.20.27.43.44.46.50.52.58.60.81.89.90.99.107.108.109.111.116.118.149* %n1, i64 0, i32 4, i64 0 - %add.ptr59 = getelementptr inbounds i8, i8* %add.ptr, i64 -1 + %add.ptr = getelementptr inbounds %struct.bc_struct.0.2.4.6.13.20.27.43.44.46.50.52.58.60.81.89.90.99.107.108.109.111.116.118.149, ptr %n1, i64 0, i32 4, i64 0 + %add.ptr59 = getelementptr inbounds i8, ptr %add.ptr, i64 -1 %idx.ext62 = sext i32 %add3 to i64 %cmp70140 = icmp sgt i32 %sub, 0 br label %for.body104.lr.ph @@ -40,13 +40,13 @@ for.body104: ; preds = %while.end146, %for. %cmp107 = icmp slt i64 %7, -1 %.op = xor i64 %7, -1 %idx.neg116 = select i1 %cmp107, i64 0, i64 %.op - %add.ptr117 = getelementptr inbounds i8, i8* %add.ptr59, i64 %idx.neg116 + %add.ptr117 = getelementptr inbounds i8, ptr %add.ptr59, i64 %idx.neg116 br label %while.body138 while.body138: ; preds = %while.body138, %for.body104 - %n1ptr.1126 = phi i8* [ %incdec.ptr139, %while.body138 ], [ %add.ptr117, %for.body104 ] - %incdec.ptr139 = getelementptr inbounds i8, i8* %n1ptr.1126, i64 -1 - %cmp132 = icmp uge i8* %incdec.ptr139, null + %n1ptr.1126 = phi ptr [ %incdec.ptr139, %while.body138 ], [ %add.ptr117, %for.body104 ] + %incdec.ptr139 = getelementptr inbounds i8, ptr %n1ptr.1126, i64 -1 + %cmp132 = icmp uge ptr %incdec.ptr139, null %cmp135 = icmp slt i64 0, -1 %or.cond99 = and i1 %cmp135, %cmp132 br i1 %or.cond99, label %while.body138, label %while.end146 diff --git a/polly/test/ScopInfo/complex_execution_context.ll b/polly/test/ScopInfo/complex_execution_context.ll index 0fd15deb9c5c..164254308fa9 100644 --- a/polly/test/ScopInfo/complex_execution_context.ll +++ b/polly/test/ScopInfo/complex_execution_context.ll @@ -9,7 +9,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @board = external global [421 x i8], align 16 ; Function Attrs: nounwind uwtable -define fastcc void @ping_recurse(i32* nocapture %mx, i32* nocapture %mr, i32 %color) unnamed_addr { +define fastcc void @ping_recurse(ptr nocapture %mx, ptr nocapture %mr, i32 %color) unnamed_addr { entry: br label %land.lhs.true38.1 @@ -17,32 +17,27 @@ if.end58: ; preds = %land.lhs.true38.2, ret void land.lhs.true38.1: ; preds = %entry - %arrayidx34.1 = getelementptr inbounds [421 x i8], [421 x i8]* @board, i64 0, i64 0 - %arrayidx40.1 = getelementptr inbounds i32, i32* %mr, i64 0 - %0 = load i32, i32* %arrayidx40.1, align 4 + %0 = load i32, ptr %mr, align 4 %cmp41.1 = icmp eq i32 %0, 0 br i1 %cmp41.1, label %land.lhs.true43.1, label %if.end54.1 land.lhs.true43.1: ; preds = %land.lhs.true38.1 - %arrayidx45.1 = getelementptr inbounds i32, i32* %mx, i64 0 - %1 = load i32, i32* %arrayidx45.1, align 4 + %1 = load i32, ptr %mx, align 4 %cmp46.1 = icmp eq i32 %1, 1 %cmp51.1 = icmp eq i32 0, %color %or.cond.1 = or i1 %cmp51.1, %cmp46.1 br i1 %or.cond.1, label %if.then53.1, label %if.end54.1 if.then53.1: ; preds = %land.lhs.true43.1 - tail call fastcc void @ping_recurse(i32* nonnull %mx, i32* nonnull %mr, i32 %color) + tail call fastcc void @ping_recurse(ptr nonnull %mx, ptr nonnull %mr, i32 %color) br label %if.end54.1 if.end54.1: ; preds = %if.then53.1, %land.lhs.true43.1, %land.lhs.true38.1 - %arrayidx34.2 = getelementptr inbounds [421 x i8], [421 x i8]* @board, i64 0, i64 0 - %2 = load i8, i8* %arrayidx34.2, align 1 + %2 = load i8, ptr @board, align 1 %cmp36.2 = icmp eq i8 %2, 3 br i1 %cmp36.2, label %if.end58, label %land.lhs.true38.2 land.lhs.true38.2: ; preds = %if.end54.1 - %arrayidx40.2 = getelementptr inbounds i32, i32* %mr, i64 0 - %3 = load i32, i32* %arrayidx40.2, align 4 + %3 = load i32, ptr %mr, align 4 br label %if.end58 } diff --git a/polly/test/ScopInfo/cond_constant_in_loop.ll b/polly/test/ScopInfo/cond_constant_in_loop.ll index 62bcecae77d3..ef7d857e1084 100644 --- a/polly/test/ScopInfo/cond_constant_in_loop.ll +++ b/polly/test/ScopInfo/cond_constant_in_loop.ll @@ -13,25 +13,25 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* nocapture %a, i64 %N, i64 %M) nounwind { +define void @f(ptr nocapture %a, i64 %N, i64 %M) nounwind { entry: %0 = icmp sgt i64 %M, 0 ; <i1> [#uses=1] br i1 %0, label %bb, label %return bb: ; preds = %bb3, %entry %1 = phi i64 [ 0, %entry ], [ %2, %bb3 ] ; <i64> [#uses=5] - %scevgep = getelementptr i64, i64* %a, i64 %1 ; <i64*> [#uses=2] + %scevgep = getelementptr i64, ptr %a, i64 %1 ; <ptr> [#uses=2] br i1 true, label %bb1, label %bb2 bb1: ; preds = %bb - store i64 %1, i64* %scevgep, align 8 + store i64 %1, ptr %scevgep, align 8 br label %bb3 bb2: ; preds = %bb %tmp7 = sub i64 %1, %N ; <i64> [#uses=1] - %scevgep8 = getelementptr i64, i64* %a, i64 %tmp7 ; <i64*> [#uses=1] - store i64 %M, i64* %scevgep, align 8 - store i64 0, i64* %scevgep8, align 8 + %scevgep8 = getelementptr i64, ptr %a, i64 %tmp7 ; <ptr> [#uses=1] + store i64 %M, ptr %scevgep, align 8 + store i64 0, ptr %scevgep8, align 8 br label %bb3 bb3: ; preds = %bb2, %bb1 diff --git a/polly/test/ScopInfo/cond_in_loop.ll b/polly/test/ScopInfo/cond_in_loop.ll index ed9e1022003c..2d435f6a6a93 100644 --- a/polly/test/ScopInfo/cond_in_loop.ll +++ b/polly/test/ScopInfo/cond_in_loop.ll @@ -13,26 +13,26 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* nocapture %a, i64 %N, i64 %M) nounwind { +define void @f(ptr nocapture %a, i64 %N, i64 %M) nounwind { entry: %0 = icmp sgt i64 %M, 0 ; <i1> [#uses=1] br i1 %0, label %bb, label %return bb: ; preds = %bb3, %entry %1 = phi i64 [ 0, %entry ], [ %3, %bb3 ] ; <i64> [#uses=5] - %scevgep = getelementptr i64, i64* %a, i64 %1 ; <i64*> [#uses=2] + %scevgep = getelementptr i64, ptr %a, i64 %1 ; <ptr> [#uses=2] %2 = icmp slt i64 %1, %N ; <i1> [#uses=1] br i1 %2, label %bb1, label %bb2 bb1: ; preds = %bb - store i64 %1, i64* %scevgep, align 8 + store i64 %1, ptr %scevgep, align 8 br label %bb3 bb2: ; preds = %bb %tmp7 = sub i64 %1, %N ; <i64> [#uses=1] - %scevgep8 = getelementptr i64, i64* %a, i64 %tmp7 ; <i64*> [#uses=1] - store i64 %M, i64* %scevgep, align 8 - store i64 0, i64* %scevgep8, align 8 + %scevgep8 = getelementptr i64, ptr %a, i64 %tmp7 ; <ptr> [#uses=1] + store i64 %M, ptr %scevgep, align 8 + store i64 0, ptr %scevgep8, align 8 br label %bb3 bb3: ; preds = %bb2, %bb1 diff --git a/polly/test/ScopInfo/condition-after-error-block-2.ll b/polly/test/ScopInfo/condition-after-error-block-2.ll index 61a18bd4ff55..695d864e483c 100644 --- a/polly/test/ScopInfo/condition-after-error-block-2.ll +++ b/polly/test/ScopInfo/condition-after-error-block-2.ll @@ -17,7 +17,7 @@ declare void @bar() -define void @foo(float* %X, i64 %p) { +define void @foo(ptr %X, i64 %p) { entry: br label %br @@ -32,7 +32,7 @@ br2: loop: %indvar = phi i64 [0, %br2], [%indvar.next, %loop] %indvar.next = add nsw i64 %indvar, 1 - store float 41.0, float* %X + store float 41.0, ptr %X %cmp2 = icmp sle i64 %indvar, 1024 br i1 %cmp2, label %loop, label %merge @@ -49,12 +49,12 @@ merge: br i1 %add, label %A, label %B A: - store float 42.0, float* %X + store float 42.0, ptr %X br label %exit B: call void @bar() - store float 41.0, float* %X + store float 41.0, ptr %X br label %exit exit: diff --git a/polly/test/ScopInfo/condition-after-error-block-before-scop.ll b/polly/test/ScopInfo/condition-after-error-block-before-scop.ll index 2f56ba613c77..184be3642f0c 100644 --- a/polly/test/ScopInfo/condition-after-error-block-before-scop.ll +++ b/polly/test/ScopInfo/condition-after-error-block-before-scop.ll @@ -3,14 +3,14 @@ target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -%class.node = type { i32 (...)**, %class.node* } +%class.node = type { ptr, ptr } -define void @foobar(double* %A) { +define void @foobar(ptr %A) { if.end: br i1 undef, label %if.then29, label %lor.lhs.false lor.lhs.false: - %call25 = tail call i32 undef(%class.node* undef) + %call25 = tail call i32 undef(ptr undef) br i1 undef, label %if.then29, label %if.end30 if.then29: @@ -33,7 +33,7 @@ if.end91: br i1 %tobool76.not, label %if.end98, label %if.then93 if.then93: - store double 0.0, double* %A + store double 0.0, ptr %A br label %if.end98 if.end98: @@ -43,6 +43,6 @@ if.end98: ; CHECK: polly.stmt.if.then93: -; CHECK: store double 0.000000e+00, double* %A +; CHECK: store double 0.000000e+00, ptr %A ; CHECK: br label %polly.exiting diff --git a/polly/test/ScopInfo/condtion-after-error-block.ll b/polly/test/ScopInfo/condtion-after-error-block.ll index e02863e005be..92e743e2d879 100644 --- a/polly/test/ScopInfo/condtion-after-error-block.ll +++ b/polly/test/ScopInfo/condtion-after-error-block.ll @@ -24,7 +24,7 @@ declare void @bar() -define void @foo(float* %X, i64 %p) { +define void @foo(ptr %X, i64 %p) { entry: br label %br @@ -39,7 +39,7 @@ br2: loop: %indvar = phi i64 [0, %br2], [%indvar.next, %loop] %indvar.next = add nsw i64 %indvar, 1 - store float 41.0, float* %X + store float 41.0, ptr %X %cmp2 = icmp sle i64 %indvar, 1024 br i1 %cmp2, label %loop, label %merge @@ -55,12 +55,12 @@ merge: br i1 %phi, label %A, label %B A: - store float 42.0, float* %X + store float 42.0, ptr %X br label %exit B: call void @bar() - store float 41.0, float* %X + store float 41.0, ptr %X br label %exit exit: diff --git a/polly/test/ScopInfo/const_srem_sdiv.ll b/polly/test/ScopInfo/const_srem_sdiv.ll index deb367fb9afe..3acca980da70 100644 --- a/polly/test/ScopInfo/const_srem_sdiv.ll +++ b/polly/test/ScopInfo/const_srem_sdiv.ll @@ -35,7 +35,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i64* %D, i64* %R) { +define void @f(ptr %D, ptr %R) { entry: br label %for.cond @@ -46,53 +46,53 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %rem = srem i64 8, 3 - %arrayidx = getelementptr inbounds i64, i64* %R, i64 %rem - %tmp = load i64, i64* %arrayidx, align 8 + %arrayidx = getelementptr inbounds i64, ptr %R, i64 %rem + %tmp = load i64, ptr %arrayidx, align 8 %div = sdiv i64 8, 3 - %arrayidx1 = getelementptr inbounds i64, i64* %D, i64 %div - store i64 %tmp, i64* %arrayidx1, align 8 + %arrayidx1 = getelementptr inbounds i64, ptr %D, i64 %div + store i64 %tmp, ptr %arrayidx1, align 8 %rem2 = srem i64 8, -3 - %arrayidx3 = getelementptr inbounds i64, i64* %R, i64 %rem2 - %tmp1 = load i64, i64* %arrayidx3, align 8 + %arrayidx3 = getelementptr inbounds i64, ptr %R, i64 %rem2 + %tmp1 = load i64, ptr %arrayidx3, align 8 %div5 = sdiv i64 8, -3 - %arrayidx6 = getelementptr inbounds i64, i64* %D, i64 %div5 - store i64 %tmp1, i64* %arrayidx6, align 8 + %arrayidx6 = getelementptr inbounds i64, ptr %D, i64 %div5 + store i64 %tmp1, ptr %arrayidx6, align 8 %rem8 = srem i64 -8, 3 - %arrayidx9 = getelementptr inbounds i64, i64* %R, i64 %rem8 - %tmp2 = load i64, i64* %arrayidx9, align 8 + %arrayidx9 = getelementptr inbounds i64, ptr %R, i64 %rem8 + %tmp2 = load i64, ptr %arrayidx9, align 8 %div11 = sdiv i64 -8, 3 - %arrayidx12 = getelementptr inbounds i64, i64* %D, i64 %div11 - store i64 %tmp2, i64* %arrayidx12, align 8 + %arrayidx12 = getelementptr inbounds i64, ptr %D, i64 %div11 + store i64 %tmp2, ptr %arrayidx12, align 8 %rem15 = srem i64 -8, -3 - %arrayidx16 = getelementptr inbounds i64, i64* %R, i64 %rem15 - %tmp3 = load i64, i64* %arrayidx16, align 8 + %arrayidx16 = getelementptr inbounds i64, ptr %R, i64 %rem15 + %tmp3 = load i64, ptr %arrayidx16, align 8 %div19 = sdiv i64 -8, -3 - %arrayidx20 = getelementptr inbounds i64, i64* %D, i64 %div19 - store i64 %tmp3, i64* %arrayidx20, align 8 + %arrayidx20 = getelementptr inbounds i64, ptr %D, i64 %div19 + store i64 %tmp3, ptr %arrayidx20, align 8 %rem29 = srem i64 1, 2 - %arrayidx30 = getelementptr inbounds i64, i64* %R, i64 %rem29 - %tmp5 = load i64, i64* %arrayidx30, align 8 + %arrayidx30 = getelementptr inbounds i64, ptr %R, i64 %rem29 + %tmp5 = load i64, ptr %arrayidx30, align 8 %div31 = sdiv i64 1, 2 - %arrayidx32 = getelementptr inbounds i64, i64* %D, i64 %div31 - store i64 %tmp5, i64* %arrayidx32, align 8 + %arrayidx32 = getelementptr inbounds i64, ptr %D, i64 %div31 + store i64 %tmp5, ptr %arrayidx32, align 8 %rem34 = srem i64 1, -2 - %arrayidx35 = getelementptr inbounds i64, i64* %R, i64 %rem34 - %tmp6 = load i64, i64* %arrayidx35, align 8 + %arrayidx35 = getelementptr inbounds i64, ptr %R, i64 %rem34 + %tmp6 = load i64, ptr %arrayidx35, align 8 %div37 = sdiv i64 1, -2 - %arrayidx38 = getelementptr inbounds i64, i64* %D, i64 %div37 - store i64 %tmp6, i64* %arrayidx38, align 8 + %arrayidx38 = getelementptr inbounds i64, ptr %D, i64 %div37 + store i64 %tmp6, ptr %arrayidx38, align 8 %rem40 = srem i64 -1, 2 - %arrayidx41 = getelementptr inbounds i64, i64* %R, i64 %rem40 - %tmp7 = load i64, i64* %arrayidx41, align 8 + %arrayidx41 = getelementptr inbounds i64, ptr %R, i64 %rem40 + %tmp7 = load i64, ptr %arrayidx41, align 8 %div43 = sdiv i64 -1, 2 - %arrayidx44 = getelementptr inbounds i64, i64* %D, i64 %div43 - store i64 %tmp7, i64* %arrayidx44, align 8 + %arrayidx44 = getelementptr inbounds i64, ptr %D, i64 %div43 + store i64 %tmp7, ptr %arrayidx44, align 8 %rem47 = srem i64 -1, -2 - %arrayidx48 = getelementptr inbounds i64, i64* %R, i64 %rem47 - %tmp8 = load i64, i64* %arrayidx48, align 8 + %arrayidx48 = getelementptr inbounds i64, ptr %R, i64 %rem47 + %tmp8 = load i64, ptr %arrayidx48, align 8 %div51 = sdiv i64 -1, -2 - %arrayidx52 = getelementptr inbounds i64, i64* %D, i64 %div51 - store i64 %tmp8, i64* %arrayidx52, align 8 + %arrayidx52 = getelementptr inbounds i64, ptr %D, i64 %div51 + store i64 %tmp8, ptr %arrayidx52, align 8 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/constant-non-integer-branch-condition.ll b/polly/test/ScopInfo/constant-non-integer-branch-condition.ll index 97649e2c8b6d..fc95a4cc7891 100644 --- a/polly/test/ScopInfo/constant-non-integer-branch-condition.ll +++ b/polly/test/ScopInfo/constant-non-integer-branch-condition.ll @@ -9,15 +9,15 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define i32 @main(i32* %A) #0 { +define i32 @main(ptr %A) #0 { entry: br label %entry.split entry.split: ; preds = %entry - br i1 icmp ne (i32 (...)* @test_weak, i32 (...)* null), label %if.then, label %cleanup + br i1 icmp ne (ptr @test_weak, ptr null), label %if.then, label %cleanup if.then: ; preds = %entry.split - store i32 0, i32* %A + store i32 0, ptr %A br label %cleanup cleanup: ; preds = %if.then, %entry.split diff --git a/polly/test/ScopInfo/constant_functions_outside_scop_as_unknown.ll b/polly/test/ScopInfo/constant_functions_outside_scop_as_unknown.ll index 671a281bd42f..38b2b8958e2f 100644 --- a/polly/test/ScopInfo/constant_functions_outside_scop_as_unknown.ll +++ b/polly/test/ScopInfo/constant_functions_outside_scop_as_unknown.ll @@ -8,25 +8,25 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" ; CHECK-NEXT: p2: %param2 ; CHECK-NEXT: Arrays { -define void @f(i8* %param1) { +define void @f(ptr %param1) { entry: br label %for.cond for.cond: - %hook = phi i8* [ %param1, %entry ], [ %add.ptr201, %cleanup ] + %hook = phi ptr [ %param1, %entry ], [ %add.ptr201, %cleanup ] br i1 undef, label %for.body, label %for.cond.cleanup for.body: %param2 = call i32 @g() - %add.ptr60 = getelementptr inbounds i8, i8* %hook, i32 %param2 + %add.ptr60 = getelementptr inbounds i8, ptr %hook, i32 %param2 br label %for.cond62 for.cond62: - %cmp64 = icmp ule i8* %add.ptr60, null + %cmp64 = icmp ule ptr %add.ptr60, null br i1 %cmp64, label %for.cond62, label %cleanup cleanup: - %add.ptr201 = getelementptr inbounds i8, i8* %hook, i32 1 + %add.ptr201 = getelementptr inbounds i8, ptr %hook, i32 1 br label %for.cond for.cond.cleanup: diff --git a/polly/test/ScopInfo/constant_start_integer.ll b/polly/test/ScopInfo/constant_start_integer.ll index 0b6240849f55..aa6640c98f73 100644 --- a/polly/test/ScopInfo/constant_start_integer.ll +++ b/polly/test/ScopInfo/constant_start_integer.ll @@ -19,7 +19,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK: MustWriteAccess ; CHECK: [p_0] -> { Stmt_for_body3[i0] -> MemRef_input[64p_0 + i0] }; -define void @foo(float* nocapture %input) { +define void @foo(ptr nocapture %input) { entry: br label %for.cond1.preheader @@ -32,11 +32,11 @@ for.body3: ; preds = %for.body3, %for.con %i.020 = phi i64 [ 0, %for.cond1.preheader ], [ %inc, %for.body3 ] %add = add nsw i64 %i.020, %mul %add4 = add nsw i64 %add, 1 - %arrayidx = getelementptr inbounds float, float* %input, i64 %add4 - %0 = load float, float* %arrayidx, align 8 + %arrayidx = getelementptr inbounds float, ptr %input, i64 %add4 + %0 = load float, ptr %arrayidx, align 8 %mul5 = fmul float %0, %0 - %arrayidx9 = getelementptr inbounds float, float* %input, i64 %add - store float %mul5, float* %arrayidx9, align 8 + %arrayidx9 = getelementptr inbounds float, ptr %input, i64 %add + store float %mul5, ptr %arrayidx9, align 8 %inc = add nsw i64 %i.020, 1 %exitcond = icmp eq i64 %inc, 63 br i1 %exitcond, label %for.inc10, label %for.body3 diff --git a/polly/test/ScopInfo/debug_call.ll b/polly/test/ScopInfo/debug_call.ll index bf597a9506e6..93b5bc520a00 100644 --- a/polly/test/ScopInfo/debug_call.ll +++ b/polly/test/ScopInfo/debug_call.ll @@ -2,7 +2,7 @@ ; ; Check that the call to dbg_printf is accepted as a debug-function. ; -declare void @dbg_printf(i8*, ...) +declare void @dbg_printf(ptr, ...) define void @func(i32 %n) { entry: @@ -14,7 +14,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - call void (i8*, ...) @dbg_printf(i8* null, i32 %j) + call void (ptr, ...) @dbg_printf(ptr null, i32 %j) br label %inc inc: diff --git a/polly/test/ScopInfo/delinearize-together-all-data-refs.ll b/polly/test/ScopInfo/delinearize-together-all-data-refs.ll index 98b071c058b1..108392b27f07 100644 --- a/polly/test/ScopInfo/delinearize-together-all-data-refs.ll +++ b/polly/test/ScopInfo/delinearize-together-all-data-refs.ll @@ -20,7 +20,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @foo(i64 %n, i64 %m, i64 %o, double* nocapture %A) { +define void @foo(i64 %n, i64 %m, i64 %o, ptr nocapture %A) { entry: %cmp35 = icmp sgt i64 %n, 0 br i1 %cmp35, label %for.cond1.preheader.lr.ph, label %for.end18 @@ -55,11 +55,11 @@ for.body6.lr.ph: ; preds = %for.cond4.preheader for.body6: ; preds = %for.body6, %for.body6.lr.ph %k.032 = phi i64 [ 0, %for.body6.lr.ph ], [ %inc, %for.body6 ] %arrayidx8.sum = add i64 %arrayidx.sum, %k.032 - %arrayidx9 = getelementptr inbounds double, double* %A, i64 %arrayidx8.sum - store double 1.000000e+00, double* %arrayidx9, align 8 + %arrayidx9 = getelementptr inbounds double, ptr %A, i64 %arrayidx8.sum + store double 1.000000e+00, ptr %arrayidx9, align 8 %arrayidx10.sum = add i64 %k.032, %2 - %arrayidx12 = getelementptr inbounds double, double* %A, i64 %arrayidx10.sum - store double 2.000000e+00, double* %arrayidx12, align 8 + %arrayidx12 = getelementptr inbounds double, ptr %A, i64 %arrayidx10.sum + store double 2.000000e+00, ptr %arrayidx12, align 8 %inc = add nsw i64 %k.032, 1 %osub = sub nsw i64 %o, 7 %exitcond = icmp eq i64 %inc, %osub diff --git a/polly/test/ScopInfo/div_by_zero.ll b/polly/test/ScopInfo/div_by_zero.ll index 7f0de0d51224..2205b85a9ebc 100644 --- a/polly/test/ScopInfo/div_by_zero.ll +++ b/polly/test/ScopInfo/div_by_zero.ll @@ -9,7 +9,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: br label %for.cond @@ -21,10 +21,10 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %div = sdiv i32 %i.0, 0 %idxprom = sext i32 %div to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + %tmp = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/do-not-model-error-block-accesses.ll b/polly/test/ScopInfo/do-not-model-error-block-accesses.ll index 8bd0ce34fdf6..997e0d4b37cf 100644 --- a/polly/test/ScopInfo/do-not-model-error-block-accesses.ll +++ b/polly/test/ScopInfo/do-not-model-error-block-accesses.ll @@ -14,8 +14,8 @@ entry.split: ; preds = %entry br i1 false, label %if.end.38, label %if.else if.else: ; preds = %entry.split - call void (i32, i32, i32*, ...) bitcast (void (...)* @BYTES_TO_BITS to void (i32, i32, i32*, ...)*)(i32 undef, i32 1, i32* undef) #2 - %0 = load i32, i32* null, align 4 + call void (i32, i32, ptr, ...) @BYTES_TO_BITS(i32 undef, i32 1, ptr undef) #2 + %0 = load i32, ptr null, align 4 br label %if.end.38 if.end.38: ; preds = %if.else, %entry.split diff --git a/polly/test/ScopInfo/eager-binary-and-or-conditions.ll b/polly/test/ScopInfo/eager-binary-and-or-conditions.ll index 56527f6bf5cb..e9ad63c51b85 100644 --- a/polly/test/ScopInfo/eager-binary-and-or-conditions.ll +++ b/polly/test/ScopInfo/eager-binary-and-or-conditions.ll @@ -46,7 +46,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @or(float* nocapture %A, i64 %n, i64 %m) #0 { +define void @or(ptr nocapture %A, i64 %n, i64 %m) #0 { entry: br label %for.body @@ -59,10 +59,10 @@ for.body: ; preds = %for.inc, %entry if.then: ; preds = %for.body %conv = sitofp i64 %i.03 to float - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.03 - %0 = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.03 + %0 = load float, ptr %arrayidx, align 4 %add = fadd float %conv, %0 - store float %add, float* %arrayidx, align 4 + store float %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %if.then, %for.body @@ -75,7 +75,7 @@ for.end: ; preds = %for.inc } ; Function Attrs: nounwind uwtable -define void @and(float* nocapture %A, i64 %n, i64 %m) #0 { +define void @and(ptr nocapture %A, i64 %n, i64 %m) #0 { entry: br label %for.body @@ -88,10 +88,10 @@ for.body: ; preds = %for.inc, %entry if.then: ; preds = %for.body %conv = sitofp i64 %i.03 to float - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.03 - %0 = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.03 + %0 = load float, ptr %arrayidx, align 4 %add = fadd float %conv, %0 - store float %add, float* %arrayidx, align 4 + store float %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body, %if.then diff --git a/polly/test/ScopInfo/early_exit_for_complex_domains.ll b/polly/test/ScopInfo/early_exit_for_complex_domains.ll index a06cd2869b8e..a72ea031c236 100644 --- a/polly/test/ScopInfo/early_exit_for_complex_domains.ll +++ b/polly/test/ScopInfo/early_exit_for_complex_domains.ll @@ -7,12 +7,11 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" %struct.regnode_charclass_class.2.42.654.690.726.870.978.1770.1806.1842.2166.2274.2382.2598.2814.3030.3064 = type { i8, i8, i16, i32, [32 x i8], [4 x i8] } ; Function Attrs: nounwind uwtable -define void @S_cl_or(%struct.regnode_charclass_class.2.42.654.690.726.870.978.1770.1806.1842.2166.2274.2382.2598.2814.3030.3064* %cl, %struct.regnode_charclass_class.2.42.654.690.726.870.978.1770.1806.1842.2166.2274.2382.2598.2814.3030.3064* %or_with) #0 { +define void @S_cl_or(ptr %cl, ptr %or_with) #0 { entry: - %flags = getelementptr inbounds %struct.regnode_charclass_class.2.42.654.690.726.870.978.1770.1806.1842.2166.2274.2382.2598.2814.3030.3064, %struct.regnode_charclass_class.2.42.654.690.726.870.978.1770.1806.1842.2166.2274.2382.2598.2814.3030.3064* %or_with, i64 0, i32 0 - %0 = load i8, i8* %flags, align 4, !tbaa !1 + %0 = load i8, ptr %or_with, align 4, !tbaa !1 %conv = zext i8 %0 to i32 - %1 = load i8, i8* undef, align 4, !tbaa !1 + %1 = load i8, ptr undef, align 4, !tbaa !1 br label %land.lhs.true35 land.lhs.true35: ; preds = %entry @@ -24,14 +23,14 @@ land.lhs.true35: ; preds = %entry br i1 %or.cond45, label %if.end91, label %for.body49 for.body49: ; preds = %land.lhs.true35 - %2 = load i8, i8* %flags, align 4, !tbaa !1 + %2 = load i8, ptr %or_with, align 4, !tbaa !1 %and65 = and i8 %2, 8 %tobool66 = icmp eq i8 %and65, 0 br i1 %tobool66, label %if.end91, label %for.body71 for.body71: ; preds = %for.body71, %for.body49 - %arrayidx77 = getelementptr inbounds %struct.regnode_charclass_class.2.42.654.690.726.870.978.1770.1806.1842.2166.2274.2382.2598.2814.3030.3064, %struct.regnode_charclass_class.2.42.654.690.726.870.978.1770.1806.1842.2166.2274.2382.2598.2814.3030.3064* %cl, i64 0, i32 5, i64 0 - store i8 undef, i8* %arrayidx77, align 1, !tbaa !7 + %arrayidx77 = getelementptr inbounds %struct.regnode_charclass_class.2.42.654.690.726.870.978.1770.1806.1842.2166.2274.2382.2598.2814.3030.3064, ptr %cl, i64 0, i32 5, i64 0 + store i8 undef, ptr %arrayidx77, align 1, !tbaa !7 br i1 false, label %for.body71, label %if.end91 if.end91: ; preds = %for.body71, %for.body49, %land.lhs.true35 diff --git a/polly/test/ScopInfo/error-blocks-1.ll b/polly/test/ScopInfo/error-blocks-1.ll index 0cabe902b497..03353edf297a 100644 --- a/polly/test/ScopInfo/error-blocks-1.ll +++ b/polly/test/ScopInfo/error-blocks-1.ll @@ -32,7 +32,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @g(i32* %A, i32 %N) { +define void @g(ptr %A, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -48,17 +48,17 @@ for.body: ; preds = %for.cond if.then: ; preds = %for.body call void (...) @f() #2 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp12 = load i32, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp12 = load i32, ptr %arrayidx2, align 4 %inc2 = add nsw i32 %tmp12, 1 - store i32 %inc2, i32* %arrayidx2, align 4 + store i32 %inc2, ptr %arrayidx2, align 4 br label %if.end if.end: ; preds = %if.then, %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp1, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %if.end diff --git a/polly/test/ScopInfo/error-blocks-2.ll b/polly/test/ScopInfo/error-blocks-2.ll index 6ec1d5c66b8a..29095dacacfb 100644 --- a/polly/test/ScopInfo/error-blocks-2.ll +++ b/polly/test/ScopInfo/error-blocks-2.ll @@ -31,10 +31,10 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32 %N, i32* noalias %valid, i32* noalias %ptr, i32* noalias %A) { +define void @f(i32 %N, ptr noalias %valid, ptr noalias %ptr, ptr noalias %A) { entry: - %ptr.addr = alloca i32*, align 8 - store i32* %ptr, i32** %ptr.addr, align 8 + %ptr.addr = alloca ptr, align 8 + store ptr %ptr, ptr %ptr.addr, align 8 %tmp = sext i32 %N to i64 br label %for.cond @@ -44,22 +44,22 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %valid_val = load i32, i32* %valid, align 4 + %valid_val = load i32, ptr %valid, align 4 %cmp1 = icmp eq i32 %valid_val, 0 br i1 %cmp1, label %if.then, label %if.end if.then: ; preds = %for.body - call void @doSth(i32** nonnull %ptr.addr) + call void @doSth(ptr nonnull %ptr.addr) br label %if.end if.end: ; preds = %if.then, %for.body br label %S S: ; preds = %if.end - %tmp2 = load i32*, i32** %ptr.addr, align 8 - %tmp3 = load i32, i32* %tmp2, align 4 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp3, i32* %arrayidx, align 4 + %tmp2 = load ptr, ptr %ptr.addr, align 8 + %tmp3 = load i32, ptr %tmp2, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp3, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %S @@ -70,4 +70,4 @@ for.end: ; preds = %for.cond ret void } -declare void @doSth(i32**) +declare void @doSth(ptr) diff --git a/polly/test/ScopInfo/error-blocks-3.ll b/polly/test/ScopInfo/error-blocks-3.ll index c3d921da2d7a..e7643601356d 100644 --- a/polly/test/ScopInfo/error-blocks-3.ll +++ b/polly/test/ScopInfo/error-blocks-3.ll @@ -28,7 +28,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @g(i32* %A, i32 %N) { +define void @g(ptr %A, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -48,17 +48,17 @@ if.then: ; preds = %for.body S: ; preds = %if.then %idxprom = sext i32 %call to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - %tmp1 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + %tmp1 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp1, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %if.end3 if.end3: ; preds = %if.end, %for.body - %arrayidx5 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx5, align 4 %inc6 = add nsw i32 %tmp2, 1 - store i32 %inc6, i32* %arrayidx5, align 4 + store i32 %inc6, ptr %arrayidx5, align 4 br label %for.inc for.inc: ; preds = %if.end3, %if.then2 diff --git a/polly/test/ScopInfo/escaping_empty_scop.ll b/polly/test/ScopInfo/escaping_empty_scop.ll index ff95512378b9..8837e19eefe4 100644 --- a/polly/test/ScopInfo/escaping_empty_scop.ll +++ b/polly/test/ScopInfo/escaping_empty_scop.ll @@ -27,7 +27,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define i32 @f(i32* %A) { +define i32 @f(ptr %A) { bb: br label %bb1 @@ -38,7 +38,7 @@ bb1: ; preds = %bb3, %bb bb2: ; preds = %bb1 %a.1 = mul i32 %i.0, 2 - store i32 %i.0, i32 *%A, align 4 + store i32 %i.0, ptr %A, align 4 br label %bb3 bb3: ; preds = %bb2 diff --git a/polly/test/ScopInfo/exit-phi-1.ll b/polly/test/ScopInfo/exit-phi-1.ll index 788e953a5b63..8e6c5fb9e211 100644 --- a/polly/test/ScopInfo/exit-phi-1.ll +++ b/polly/test/ScopInfo/exit-phi-1.ll @@ -9,7 +9,7 @@ ; ; CHECK: Arrays { ; CHECK-NEXT: double MemRef_up_3_ph; // Element size 8 -; CHECK-NEXT: i32* MemRef_A[*]; // Element size 8 +; CHECK-NEXT: ptr MemRef_A[*]; // Element size 8 ; CHECK-NEXT: double MemRef_up_3_ph; // Element size 8 ; CHECK-NEXT: } ; @@ -21,16 +21,16 @@ ; CODEGEN-NEXT: %up.3.ph = phi double [ 0.000000e+00, %entry ], [ %up.3.ph.ph.merge, %polly.merge_new_and_old ] ; ; CODEGEN: polly.stmt.if.then111: -; CODEGEN-NEXT: store double undef, double* %up.3.ph.s2a +; CODEGEN-NEXT: store double undef, ptr %up.3.ph.s2a ; ; CODEGEN: polly.exiting: -; CODEGEN-NEXT: %up.3.ph.ph.final_reload = load double, double* %up.3.ph.s2a +; CODEGEN-NEXT: %up.3.ph.ph.final_reload = load double, ptr %up.3.ph.s2a ; ; ModuleID = 'bugpoint-reduced-simplified.bc' target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: uwtable -define void @_ZN6soplex14SPxAggregateSM9eliminateERKNS_7SVectorEd(i32** nocapture readonly %A) { +define void @_ZN6soplex14SPxAggregateSM9eliminateERKNS_7SVectorEd(ptr nocapture readonly %A) { entry: br label %for.cond.outer304 @@ -39,9 +39,8 @@ for.cond.outer304: ; preds = %if.else113, %if.the br i1 undef, label %for.body, label %for.end for.body: ; preds = %for.cond.outer304 - %0 = load i32*, i32** %A, align 8 + %0 = load ptr, ptr %A, align 8 %add = fadd double %up.3.ph, undef - %val.i.i.i235 = getelementptr inbounds i32, i32* %0, i64 0 br i1 false, label %if.else113, label %if.then111 if.then111: ; preds = %for.body diff --git a/polly/test/ScopInfo/exit-phi-2.ll b/polly/test/ScopInfo/exit-phi-2.ll index 35d5080e3270..d218d5fa039b 100644 --- a/polly/test/ScopInfo/exit-phi-2.ll +++ b/polly/test/ScopInfo/exit-phi-2.ll @@ -6,7 +6,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" define void @local_book_besterror() { entry: - %0 = load i64, i64* undef, align 8 + %0 = load i64, ptr undef, align 8 %conv = trunc i64 %0 to i32 br label %for.body64 diff --git a/polly/test/ScopInfo/exit_phi_accesses-2.ll b/polly/test/ScopInfo/exit_phi_accesses-2.ll index 99a4728691b4..e376f0df9d54 100644 --- a/polly/test/ScopInfo/exit_phi_accesses-2.ll +++ b/polly/test/ScopInfo/exit_phi_accesses-2.ll @@ -20,7 +20,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define float @foo(float* %A) { +define float @foo(ptr %A) { entry: br label %header @@ -31,10 +31,10 @@ header: body: %i = phi i64 [ 0, %header ], [ %next, %body ] %sum = phi float [ 0.0, %header ], [ %sum.next, %body ] - %arrayidx = getelementptr float, float* %A, i64 %i + %arrayidx = getelementptr float, ptr %A, i64 %i %scalar = fadd float 0.0, 0.0 %next = add nuw nsw i64 %i, 1 - %val = load float, float* %arrayidx + %val = load float, ptr %arrayidx %sum.next = fadd float %sum, %val %cond = icmp ne i64 %i, 100 br i1 %cond, label %body, label %after diff --git a/polly/test/ScopInfo/exit_phi_accesses.ll b/polly/test/ScopInfo/exit_phi_accesses.ll index 7eb4c0d74963..f4fbe31f6b24 100644 --- a/polly/test/ScopInfo/exit_phi_accesses.ll +++ b/polly/test/ScopInfo/exit_phi_accesses.ll @@ -25,7 +25,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define float @foo(float %sum, float* %A) { +define float @foo(float %sum, ptr %A) { entry: br label %header diff --git a/polly/test/ScopInfo/expensive-boundary-context.ll b/polly/test/ScopInfo/expensive-boundary-context.ll index 4aaf055fd8f5..7001b96acd21 100644 --- a/polly/test/ScopInfo/expensive-boundary-context.ll +++ b/polly/test/ScopInfo/expensive-boundary-context.ll @@ -4,24 +4,24 @@ ; CHECK-NOT: Assumed Context: target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.hoge = type { i32, %struct.widget*, %struct.ham*, %struct.ham*, i32, %struct.wombat*, double*, i32, i32, i32**, i32, i32*, [6 x i32], i32, %struct.foo*, i32 } -%struct.widget = type { i32, i32, %struct.wombat*, i32*, %struct.quux*, i32, %struct.barney*, i32, i32, [3 x i32], i32 } -%struct.quux = type { %struct.wombat*, i32*, i32*, i32, i32, i32, [3 x [3 x [3 x %struct.hoge.0*]]]* } -%struct.hoge.0 = type { i32, %struct.hoge.0* } +%struct.hoge = type { i32, ptr, ptr, ptr, i32, ptr, ptr, i32, i32, ptr, i32, ptr, [6 x i32], i32, ptr, i32 } +%struct.widget = type { i32, i32, ptr, ptr, ptr, i32, ptr, i32, i32, [3 x i32], i32 } +%struct.quux = type { ptr, ptr, ptr, i32, i32, i32, ptr } +%struct.hoge.0 = type { i32, ptr } %struct.barney = type { [3 x i32], [3 x i32] } -%struct.ham = type { [3 x i32]*, i32, i32, i32, i32 } -%struct.wombat = type { %struct.barney*, i32, i32 } -%struct.foo = type { i32, i32, i32, i32, i32*, i32*, %struct.wibble**, %struct.wibble**, i32*, i32*, %struct.wibble*, %struct.wibble* } -%struct.wibble = type { %struct.foo.1**, i32 } +%struct.ham = type { ptr, i32, i32, i32, i32 } +%struct.wombat = type { ptr, i32, i32 } +%struct.foo = type { i32, i32, i32, i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr } +%struct.wibble = type { ptr, i32 } %struct.foo.1 = type { [3 x i32], [3 x i32], i32, i32, [4 x i32], [4 x i32] } ; Function Attrs: nounwind uwtable define void @hoge() #0 { bb: - %tmp52 = alloca %struct.hoge*, align 8 - %tmp53 = alloca %struct.barney*, align 8 - %tmp54 = alloca %struct.barney*, align 8 - %tmp55 = alloca %struct.barney*, align 8 + %tmp52 = alloca ptr, align 8 + %tmp53 = alloca ptr, align 8 + %tmp54 = alloca ptr, align 8 + %tmp55 = alloca ptr, align 8 br label %bb56 bb56: ; preds = %bb @@ -37,13 +37,10 @@ bb58: ; preds = %bb56 unreachable bb59: ; preds = %bb56 - %tmp = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp60 = getelementptr inbounds %struct.barney, %struct.barney* %tmp, i32 0, i32 1 - %tmp61 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp60, i64 0, i64 0 - %tmp62 = load i32, i32* %tmp61, align 4, !tbaa !5 - %tmp63 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp64 = getelementptr inbounds %struct.barney, %struct.barney* %tmp63, i32 0, i32 0 - %tmp65 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp64, i64 0, i64 0 + %tmp = load ptr, ptr %tmp54, align 8, !tbaa !1 + %tmp60 = getelementptr inbounds %struct.barney, ptr %tmp, i32 0, i32 1 + %tmp62 = load i32, ptr %tmp60, align 4, !tbaa !5 + %tmp63 = load ptr, ptr %tmp54, align 8, !tbaa !1 %tmp66 = sub nsw i32 %tmp62, 0 %tmp67 = add nsw i32 %tmp66, 1 %tmp68 = icmp slt i32 0, %tmp67 @@ -53,13 +50,12 @@ bb69: ; preds = %bb59 br label %bb70 bb70: ; preds = %bb69, %bb59 - %tmp71 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp72 = getelementptr inbounds %struct.barney, %struct.barney* %tmp71, i32 0, i32 1 - %tmp73 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp72, i64 0, i64 1 - %tmp74 = load i32, i32* %tmp73, align 4, !tbaa !5 - %tmp75 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp76 = getelementptr inbounds %struct.barney, %struct.barney* %tmp75, i32 0, i32 0 - %tmp77 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp76, i64 0, i64 1 + %tmp71 = load ptr, ptr %tmp54, align 8, !tbaa !1 + %tmp72 = getelementptr inbounds %struct.barney, ptr %tmp71, i32 0, i32 1 + %tmp73 = getelementptr inbounds [3 x i32], ptr %tmp72, i64 0, i64 1 + %tmp74 = load i32, ptr %tmp73, align 4, !tbaa !5 + %tmp75 = load ptr, ptr %tmp54, align 8, !tbaa !1 + %tmp77 = getelementptr inbounds [3 x i32], ptr %tmp75, i64 0, i64 1 %tmp78 = sub nsw i32 %tmp74, 0 %tmp79 = add nsw i32 %tmp78, 1 %tmp80 = icmp slt i32 0, %tmp79 @@ -69,13 +65,10 @@ bb81: ; preds = %bb70 br label %bb82 bb82: ; preds = %bb81, %bb70 - %tmp83 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp84 = getelementptr inbounds %struct.barney, %struct.barney* %tmp83, i32 0, i32 1 - %tmp85 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp84, i64 0, i64 0 - %tmp86 = load i32, i32* %tmp85, align 4, !tbaa !5 - %tmp87 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp88 = getelementptr inbounds %struct.barney, %struct.barney* %tmp87, i32 0, i32 0 - %tmp89 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp88, i64 0, i64 0 + %tmp83 = load ptr, ptr %tmp54, align 8, !tbaa !1 + %tmp84 = getelementptr inbounds %struct.barney, ptr %tmp83, i32 0, i32 1 + %tmp86 = load i32, ptr %tmp84, align 4, !tbaa !5 + %tmp87 = load ptr, ptr %tmp54, align 8, !tbaa !1 %tmp90 = sub nsw i32 %tmp86, 0 %tmp91 = add nsw i32 %tmp90, 1 %tmp92 = icmp slt i32 0, %tmp91 @@ -85,13 +78,10 @@ bb93: ; preds = %bb82 br label %bb94 bb94: ; preds = %bb93, %bb82 - %tmp95 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp96 = getelementptr inbounds %struct.barney, %struct.barney* %tmp95, i32 0, i32 1 - %tmp97 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp96, i64 0, i64 0 - %tmp98 = load i32, i32* %tmp97, align 4, !tbaa !5 - %tmp99 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp100 = getelementptr inbounds %struct.barney, %struct.barney* %tmp99, i32 0, i32 0 - %tmp101 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp100, i64 0, i64 0 + %tmp95 = load ptr, ptr %tmp54, align 8, !tbaa !1 + %tmp96 = getelementptr inbounds %struct.barney, ptr %tmp95, i32 0, i32 1 + %tmp98 = load i32, ptr %tmp96, align 4, !tbaa !5 + %tmp99 = load ptr, ptr %tmp54, align 8, !tbaa !1 %tmp102 = sub nsw i32 %tmp98, 0 %tmp103 = add nsw i32 %tmp102, 1 %tmp104 = icmp slt i32 0, %tmp103 @@ -101,13 +91,12 @@ bb105: ; preds = %bb94 br label %bb106 bb106: ; preds = %bb105, %bb94 - %tmp107 = load %struct.barney*, %struct.barney** %tmp53, align 8, !tbaa !1 - %tmp108 = getelementptr inbounds %struct.barney, %struct.barney* %tmp107, i32 0, i32 1 - %tmp109 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp108, i64 0, i64 1 - %tmp110 = load i32, i32* %tmp109, align 4, !tbaa !5 - %tmp111 = load %struct.barney*, %struct.barney** %tmp53, align 8, !tbaa !1 - %tmp112 = getelementptr inbounds %struct.barney, %struct.barney* %tmp111, i32 0, i32 0 - %tmp113 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp112, i64 0, i64 1 + %tmp107 = load ptr, ptr %tmp53, align 8, !tbaa !1 + %tmp108 = getelementptr inbounds %struct.barney, ptr %tmp107, i32 0, i32 1 + %tmp109 = getelementptr inbounds [3 x i32], ptr %tmp108, i64 0, i64 1 + %tmp110 = load i32, ptr %tmp109, align 4, !tbaa !5 + %tmp111 = load ptr, ptr %tmp53, align 8, !tbaa !1 + %tmp113 = getelementptr inbounds [3 x i32], ptr %tmp111, i64 0, i64 1 %tmp114 = sub nsw i32 %tmp110, 0 %tmp115 = add nsw i32 %tmp114, 1 %tmp116 = icmp slt i32 0, %tmp115 @@ -117,13 +106,10 @@ bb117: ; preds = %bb106 br label %bb118 bb118: ; preds = %bb117, %bb106 - %tmp119 = load %struct.barney*, %struct.barney** %tmp53, align 8, !tbaa !1 - %tmp120 = getelementptr inbounds %struct.barney, %struct.barney* %tmp119, i32 0, i32 1 - %tmp121 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp120, i64 0, i64 0 - %tmp122 = load i32, i32* %tmp121, align 4, !tbaa !5 - %tmp123 = load %struct.barney*, %struct.barney** %tmp53, align 8, !tbaa !1 - %tmp124 = getelementptr inbounds %struct.barney, %struct.barney* %tmp123, i32 0, i32 0 - %tmp125 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp124, i64 0, i64 0 + %tmp119 = load ptr, ptr %tmp53, align 8, !tbaa !1 + %tmp120 = getelementptr inbounds %struct.barney, ptr %tmp119, i32 0, i32 1 + %tmp122 = load i32, ptr %tmp120, align 4, !tbaa !5 + %tmp123 = load ptr, ptr %tmp53, align 8, !tbaa !1 %tmp126 = sub nsw i32 %tmp122, 0 %tmp127 = add nsw i32 %tmp126, 1 %tmp128 = icmp slt i32 0, %tmp127 @@ -133,13 +119,10 @@ bb129: ; preds = %bb118 br label %bb130 bb130: ; preds = %bb129, %bb118 - %tmp131 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp132 = getelementptr inbounds %struct.barney, %struct.barney* %tmp131, i32 0, i32 1 - %tmp133 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp132, i64 0, i64 0 - %tmp134 = load i32, i32* %tmp133, align 4, !tbaa !5 - %tmp135 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp136 = getelementptr inbounds %struct.barney, %struct.barney* %tmp135, i32 0, i32 0 - %tmp137 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp136, i64 0, i64 0 + %tmp131 = load ptr, ptr %tmp54, align 8, !tbaa !1 + %tmp132 = getelementptr inbounds %struct.barney, ptr %tmp131, i32 0, i32 1 + %tmp134 = load i32, ptr %tmp132, align 4, !tbaa !5 + %tmp135 = load ptr, ptr %tmp54, align 8, !tbaa !1 %tmp138 = sub nsw i32 %tmp134, 0 %tmp139 = add nsw i32 %tmp138, 1 %tmp140 = icmp slt i32 0, %tmp139 @@ -149,13 +132,10 @@ bb141: ; preds = %bb130 br label %bb142 bb142: ; preds = %bb141, %bb130 - %tmp143 = load %struct.barney*, %struct.barney** %tmp55, align 8, !tbaa !1 - %tmp144 = getelementptr inbounds %struct.barney, %struct.barney* %tmp143, i32 0, i32 1 - %tmp145 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp144, i64 0, i64 0 - %tmp146 = load i32, i32* %tmp145, align 4, !tbaa !5 - %tmp147 = load %struct.barney*, %struct.barney** %tmp55, align 8, !tbaa !1 - %tmp148 = getelementptr inbounds %struct.barney, %struct.barney* %tmp147, i32 0, i32 0 - %tmp149 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp148, i64 0, i64 0 + %tmp143 = load ptr, ptr %tmp55, align 8, !tbaa !1 + %tmp144 = getelementptr inbounds %struct.barney, ptr %tmp143, i32 0, i32 1 + %tmp146 = load i32, ptr %tmp144, align 4, !tbaa !5 + %tmp147 = load ptr, ptr %tmp55, align 8, !tbaa !1 %tmp150 = sub nsw i32 %tmp146, 0 %tmp151 = add nsw i32 %tmp150, 1 %tmp152 = icmp slt i32 0, %tmp151 @@ -165,14 +145,11 @@ bb153: ; preds = %bb142 br label %bb154 bb154: ; preds = %bb153, %bb142 - %tmp155 = load %struct.barney*, %struct.barney** %tmp53, align 8, !tbaa !1 - %tmp156 = getelementptr inbounds %struct.barney, %struct.barney* %tmp155, i32 0, i32 1 - %tmp157 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp156, i64 0, i64 0 - %tmp158 = load i32, i32* %tmp157, align 4, !tbaa !5 - %tmp159 = load %struct.barney*, %struct.barney** %tmp53, align 8, !tbaa !1 - %tmp160 = getelementptr inbounds %struct.barney, %struct.barney* %tmp159, i32 0, i32 0 - %tmp161 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp160, i64 0, i64 0 - %tmp162 = load i32, i32* %tmp161, align 4, !tbaa !5 + %tmp155 = load ptr, ptr %tmp53, align 8, !tbaa !1 + %tmp156 = getelementptr inbounds %struct.barney, ptr %tmp155, i32 0, i32 1 + %tmp158 = load i32, ptr %tmp156, align 4, !tbaa !5 + %tmp159 = load ptr, ptr %tmp53, align 8, !tbaa !1 + %tmp162 = load i32, ptr %tmp159, align 4, !tbaa !5 %tmp163 = sub nsw i32 %tmp158, %tmp162 %tmp164 = add nsw i32 %tmp163, 1 %tmp165 = icmp slt i32 0, %tmp164 @@ -182,14 +159,11 @@ bb166: ; preds = %bb154 br label %bb167 bb167: ; preds = %bb166, %bb154 - %tmp168 = load %struct.barney*, %struct.barney** %tmp53, align 8, !tbaa !1 - %tmp169 = getelementptr inbounds %struct.barney, %struct.barney* %tmp168, i32 0, i32 1 - %tmp170 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp169, i64 0, i64 0 - %tmp171 = load i32, i32* %tmp170, align 4, !tbaa !5 - %tmp172 = load %struct.barney*, %struct.barney** %tmp53, align 8, !tbaa !1 - %tmp173 = getelementptr inbounds %struct.barney, %struct.barney* %tmp172, i32 0, i32 0 - %tmp174 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp173, i64 0, i64 0 - %tmp175 = load i32, i32* %tmp174, align 4, !tbaa !5 + %tmp168 = load ptr, ptr %tmp53, align 8, !tbaa !1 + %tmp169 = getelementptr inbounds %struct.barney, ptr %tmp168, i32 0, i32 1 + %tmp171 = load i32, ptr %tmp169, align 4, !tbaa !5 + %tmp172 = load ptr, ptr %tmp53, align 8, !tbaa !1 + %tmp175 = load i32, ptr %tmp172, align 4, !tbaa !5 %tmp176 = sub nsw i32 %tmp171, %tmp175 %tmp177 = add nsw i32 %tmp176, 1 %tmp178 = icmp slt i32 0, %tmp177 @@ -199,14 +173,13 @@ bb179: ; preds = %bb167 br label %bb180 bb180: ; preds = %bb179, %bb167 - %tmp181 = load %struct.barney*, %struct.barney** %tmp53, align 8, !tbaa !1 - %tmp182 = getelementptr inbounds %struct.barney, %struct.barney* %tmp181, i32 0, i32 1 - %tmp183 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp182, i64 0, i64 1 - %tmp184 = load i32, i32* %tmp183, align 4, !tbaa !5 - %tmp185 = load %struct.barney*, %struct.barney** %tmp53, align 8, !tbaa !1 - %tmp186 = getelementptr inbounds %struct.barney, %struct.barney* %tmp185, i32 0, i32 0 - %tmp187 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp186, i64 0, i64 1 - %tmp188 = load i32, i32* %tmp187, align 4, !tbaa !5 + %tmp181 = load ptr, ptr %tmp53, align 8, !tbaa !1 + %tmp182 = getelementptr inbounds %struct.barney, ptr %tmp181, i32 0, i32 1 + %tmp183 = getelementptr inbounds [3 x i32], ptr %tmp182, i64 0, i64 1 + %tmp184 = load i32, ptr %tmp183, align 4, !tbaa !5 + %tmp185 = load ptr, ptr %tmp53, align 8, !tbaa !1 + %tmp187 = getelementptr inbounds [3 x i32], ptr %tmp185, i64 0, i64 1 + %tmp188 = load i32, ptr %tmp187, align 4, !tbaa !5 %tmp189 = sub nsw i32 %tmp184, %tmp188 %tmp190 = add nsw i32 %tmp189, 1 %tmp191 = icmp slt i32 0, %tmp190 @@ -216,14 +189,11 @@ bb192: ; preds = %bb180 br label %bb193 bb193: ; preds = %bb192, %bb180 - %tmp194 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp195 = getelementptr inbounds %struct.barney, %struct.barney* %tmp194, i32 0, i32 1 - %tmp196 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp195, i64 0, i64 0 - %tmp197 = load i32, i32* %tmp196, align 4, !tbaa !5 - %tmp198 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp199 = getelementptr inbounds %struct.barney, %struct.barney* %tmp198, i32 0, i32 0 - %tmp200 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp199, i64 0, i64 0 - %tmp201 = load i32, i32* %tmp200, align 4, !tbaa !5 + %tmp194 = load ptr, ptr %tmp54, align 8, !tbaa !1 + %tmp195 = getelementptr inbounds %struct.barney, ptr %tmp194, i32 0, i32 1 + %tmp197 = load i32, ptr %tmp195, align 4, !tbaa !5 + %tmp198 = load ptr, ptr %tmp54, align 8, !tbaa !1 + %tmp201 = load i32, ptr %tmp198, align 4, !tbaa !5 %tmp202 = sub nsw i32 %tmp197, %tmp201 %tmp203 = add nsw i32 %tmp202, 1 %tmp204 = icmp slt i32 0, %tmp203 @@ -233,14 +203,11 @@ bb205: ; preds = %bb193 br label %bb206 bb206: ; preds = %bb205, %bb193 - %tmp207 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp208 = getelementptr inbounds %struct.barney, %struct.barney* %tmp207, i32 0, i32 1 - %tmp209 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp208, i64 0, i64 0 - %tmp210 = load i32, i32* %tmp209, align 4, !tbaa !5 - %tmp211 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp212 = getelementptr inbounds %struct.barney, %struct.barney* %tmp211, i32 0, i32 0 - %tmp213 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp212, i64 0, i64 0 - %tmp214 = load i32, i32* %tmp213, align 4, !tbaa !5 + %tmp207 = load ptr, ptr %tmp54, align 8, !tbaa !1 + %tmp208 = getelementptr inbounds %struct.barney, ptr %tmp207, i32 0, i32 1 + %tmp210 = load i32, ptr %tmp208, align 4, !tbaa !5 + %tmp211 = load ptr, ptr %tmp54, align 8, !tbaa !1 + %tmp214 = load i32, ptr %tmp211, align 4, !tbaa !5 %tmp215 = sub nsw i32 %tmp210, %tmp214 %tmp216 = add nsw i32 %tmp215, 1 %tmp217 = icmp slt i32 0, %tmp216 @@ -250,14 +217,13 @@ bb218: ; preds = %bb206 br label %bb219 bb219: ; preds = %bb218, %bb206 - %tmp220 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp221 = getelementptr inbounds %struct.barney, %struct.barney* %tmp220, i32 0, i32 1 - %tmp222 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp221, i64 0, i64 1 - %tmp223 = load i32, i32* %tmp222, align 4, !tbaa !5 - %tmp224 = load %struct.barney*, %struct.barney** %tmp54, align 8, !tbaa !1 - %tmp225 = getelementptr inbounds %struct.barney, %struct.barney* %tmp224, i32 0, i32 0 - %tmp226 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp225, i64 0, i64 1 - %tmp227 = load i32, i32* %tmp226, align 4, !tbaa !5 + %tmp220 = load ptr, ptr %tmp54, align 8, !tbaa !1 + %tmp221 = getelementptr inbounds %struct.barney, ptr %tmp220, i32 0, i32 1 + %tmp222 = getelementptr inbounds [3 x i32], ptr %tmp221, i64 0, i64 1 + %tmp223 = load i32, ptr %tmp222, align 4, !tbaa !5 + %tmp224 = load ptr, ptr %tmp54, align 8, !tbaa !1 + %tmp226 = getelementptr inbounds [3 x i32], ptr %tmp224, i64 0, i64 1 + %tmp227 = load i32, ptr %tmp226, align 4, !tbaa !5 %tmp228 = sub nsw i32 %tmp223, %tmp227 %tmp229 = add nsw i32 %tmp228, 1 %tmp230 = icmp slt i32 0, %tmp229 @@ -267,14 +233,11 @@ bb231: ; preds = %bb219 br label %bb232 bb232: ; preds = %bb231, %bb219 - %tmp233 = load %struct.barney*, %struct.barney** %tmp55, align 8, !tbaa !1 - %tmp234 = getelementptr inbounds %struct.barney, %struct.barney* %tmp233, i32 0, i32 1 - %tmp235 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp234, i64 0, i64 0 - %tmp236 = load i32, i32* %tmp235, align 4, !tbaa !5 - %tmp237 = load %struct.barney*, %struct.barney** %tmp55, align 8, !tbaa !1 - %tmp238 = getelementptr inbounds %struct.barney, %struct.barney* %tmp237, i32 0, i32 0 - %tmp239 = getelementptr inbounds [3 x i32], [3 x i32]* %tmp238, i64 0, i64 0 - %tmp240 = load i32, i32* %tmp239, align 4, !tbaa !5 + %tmp233 = load ptr, ptr %tmp55, align 8, !tbaa !1 + %tmp234 = getelementptr inbounds %struct.barney, ptr %tmp233, i32 0, i32 1 + %tmp236 = load i32, ptr %tmp234, align 4, !tbaa !5 + %tmp237 = load ptr, ptr %tmp55, align 8, !tbaa !1 + %tmp240 = load i32, ptr %tmp237, align 4, !tbaa !5 %tmp241 = sub nsw i32 %tmp236, %tmp240 %tmp242 = add nsw i32 %tmp241, 1 %tmp243 = icmp slt i32 0, %tmp242 diff --git a/polly/test/ScopInfo/extract_constant_factor_introduces_new_parameter.ll b/polly/test/ScopInfo/extract_constant_factor_introduces_new_parameter.ll index 16dd05d53fd2..89ca344fdf54 100644 --- a/polly/test/ScopInfo/extract_constant_factor_introduces_new_parameter.ll +++ b/polly/test/ScopInfo/extract_constant_factor_introduces_new_parameter.ll @@ -18,7 +18,7 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" -define void @barney(i32* %arg, i32* %arg1, double* %arg2, i32* %arg3, i32 %a, i32 %b, i32 %c) { +define void @barney(ptr %arg, ptr %arg1, ptr %arg2, ptr %arg3, i32 %a, i32 %b, i32 %c) { bb: br label %bb10 @@ -31,9 +31,9 @@ bb11: ; preds = %bb10 %tmp8 = add nsw i32 %c, 1 %tmp12 = mul nsw i32 %b, %a %tmp13 = add nsw i32 %tmp8, %tmp12 - %tmp6 = getelementptr inbounds double, double* %arg2, i32 %tmp5 - %tmp14 = getelementptr inbounds double, double* %tmp6, i32 %tmp13 - %tmp15 = load double, double* %tmp14 + %tmp6 = getelementptr inbounds double, ptr %arg2, i32 %tmp5 + %tmp14 = getelementptr inbounds double, ptr %tmp6, i32 %tmp13 + %tmp15 = load double, ptr %tmp14 br label %bb16 bb16: ; preds = %bb11, %bb10 diff --git a/polly/test/ScopInfo/full-function.ll b/polly/test/ScopInfo/full-function.ll index 07af785304c2..670472576fe7 100644 --- a/polly/test/ScopInfo/full-function.ll +++ b/polly/test/ScopInfo/full-function.ll @@ -43,7 +43,7 @@ ; WITHOUT-FULL-NEXT: { Stmt_loop_1[i0] -> MemRef_A[0] }; ; WITHOUT-FULL-NEXT: } -define void @foo(float* %A, i32 %p) { +define void @foo(ptr %A, i32 %p) { bb: %cmp = icmp eq i32 %p, 42 br i1 %cmp, label %loop.1, label %loop.2 @@ -51,14 +51,14 @@ bb: loop.1: %indvar.1 = phi i64 [0, %bb], [%indvar.next.1, %loop.1] %indvar.next.1 = add i64 %indvar.1, 1 - store float 42.0, float* %A + store float 42.0, ptr %A %cmp.1 = icmp sle i64 %indvar.1, 1024 br i1 %cmp.1, label %loop.1, label %merge loop.2: %indvar.2 = phi i64 [0, %bb], [%indvar.next.2, %loop.2] %indvar.next.2 = add i64 %indvar.2, 1 - store float 42.0, float* %A + store float 42.0, ptr %A %cmp.2 = icmp sle i64 %indvar.2, 1024 br i1 %cmp.2, label %loop.2, label %merge diff --git a/polly/test/ScopInfo/granularity_same_name.ll b/polly/test/ScopInfo/granularity_same_name.ll index 96a7308b9fda..1ebf5c6f71a2 100644 --- a/polly/test/ScopInfo/granularity_same_name.ll +++ b/polly/test/ScopInfo/granularity_same_name.ll @@ -15,7 +15,7 @@ ; double unrelatedB = 21.0 + 21.0; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -26,7 +26,7 @@ for: body: %unrelatedA = fadd double 21.0, 21.0 - store double 0.0, double* %A + store double 0.0, ptr %A %unrelatedB = fadd double 21.0, 21.0 br label %inc diff --git a/polly/test/ScopInfo/granularity_scalar-indep.ll b/polly/test/ScopInfo/granularity_scalar-indep.ll index db99295d8a0f..fe509b468272 100644 --- a/polly/test/ScopInfo/granularity_scalar-indep.ll +++ b/polly/test/ScopInfo/granularity_scalar-indep.ll @@ -12,7 +12,7 @@ ; B[0] = valB; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -22,10 +22,10 @@ for: br i1 %j.cmp, label %body, label %exit body: - %valA = load double, double* %A + %valA = load double, ptr %A %valB = fadd double 21.0, 21.0 - store double %valA, double* %A - store double %valB, double* %B + store double %valA, ptr %A + store double %valB, ptr %B br label %inc inc: @@ -51,8 +51,8 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_body[i0] -> MemRef_A[0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %valA = load double, double* %A, align 8 -; CHECK-NEXT: store double %valA, double* %A, align 8 +; CHECK-NEXT: %valA = load double, ptr %A, align 8 +; CHECK-NEXT: store double %valA, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_body_b ; CHECK-NEXT: Domain := @@ -63,6 +63,6 @@ return: ; CHECK-NEXT: [n] -> { Stmt_body_b[i0] -> MemRef_B[0] }; ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %valB = fadd double 2.100000e+01, 2.100000e+01 -; CHECK-NEXT: store double %valB, double* %B, align 8 +; CHECK-NEXT: store double %valB, ptr %B, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ScopInfo/granularity_scalar-indep_cross-referencing-phi1.ll b/polly/test/ScopInfo/granularity_scalar-indep_cross-referencing-phi1.ll index 458e29121875..56bc11aed28d 100644 --- a/polly/test/ScopInfo/granularity_scalar-indep_cross-referencing-phi1.ll +++ b/polly/test/ScopInfo/granularity_scalar-indep_cross-referencing-phi1.ll @@ -17,7 +17,7 @@ ; A[0] = valA; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -25,7 +25,7 @@ for: %j = phi i32 [0, %entry], [%j.inc, %for] %valA = phi double [42.0, %entry], [%valB, %for] %valB = phi double [21.0, %entry], [%valA, %for] - store double %valA, double* %A + store double %valA, ptr %A %j.cmp = icmp slt i32 %j, %n %j.inc = add nuw nsw i32 %j, 1 br i1 %j.cmp, label %for, label %exit @@ -57,6 +57,6 @@ return: ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %valA = phi double [ 4.200000e+01, %entry ], [ %valB, %for ] ; CHECK-NEXT: %valB = phi double [ 2.100000e+01, %entry ], [ %valA, %for ] -; CHECK-NEXT: store double %valA, double* %A, align 8 +; CHECK-NEXT: store double %valA, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ScopInfo/granularity_scalar-indep_cross-referencing-phi2.ll b/polly/test/ScopInfo/granularity_scalar-indep_cross-referencing-phi2.ll index a17835683afc..f46cf4e6a0a2 100644 --- a/polly/test/ScopInfo/granularity_scalar-indep_cross-referencing-phi2.ll +++ b/polly/test/ScopInfo/granularity_scalar-indep_cross-referencing-phi2.ll @@ -17,7 +17,7 @@ ; A[0] = valA; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -25,7 +25,7 @@ for: %j = phi i32 [0, %entry], [%j.inc, %for] %valA = phi double [42.0, %entry], [%valB, %for] %valB = phi double [21.0, %entry], [%add, %for] - store double %valB, double* %A + store double %valB, ptr %A %add = fadd double %valA, 0.1 %j.cmp = icmp slt i32 %j, %n %j.inc = add nuw nsw i32 %j, 1 @@ -58,7 +58,7 @@ return: ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %valA = phi double [ 4.200000e+01, %entry ], [ %valB, %for ] ; CHECK-NEXT: %valB = phi double [ 2.100000e+01, %entry ], [ %add, %for ] -; CHECK-NEXT: store double %valB, double* %A, align 8 +; CHECK-NEXT: store double %valB, ptr %A, align 8 ; CHECK-NEXT: %add = fadd double %valA, 1.000000e-01 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ScopInfo/granularity_scalar-indep_epilogue.ll b/polly/test/ScopInfo/granularity_scalar-indep_epilogue.ll index 3d2f4ec1ca7e..e202e38f0844 100644 --- a/polly/test/ScopInfo/granularity_scalar-indep_epilogue.ll +++ b/polly/test/ScopInfo/granularity_scalar-indep_epilogue.ll @@ -12,7 +12,7 @@ ; phi = 42.0; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -22,8 +22,8 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %valA = load double, double* %A - store double %valA, double* %A + %valA = load double, ptr %A + store double %valA, ptr %A br label %bodyB bodyB: @@ -53,8 +53,8 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_bodyA[i0] -> MemRef_A[0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %valA = load double, double* %A, align 8 -; CHECK-NEXT: store double %valA, double* %A, align 8 +; CHECK-NEXT: %valA = load double, ptr %A, align 8 +; CHECK-NEXT: store double %valA, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_bodyA_last ; CHECK-NEXT: Domain := diff --git a/polly/test/ScopInfo/granularity_scalar-indep_epilogue_last.ll b/polly/test/ScopInfo/granularity_scalar-indep_epilogue_last.ll index 0dc207e85cdd..40af34bfb067 100644 --- a/polly/test/ScopInfo/granularity_scalar-indep_epilogue_last.ll +++ b/polly/test/ScopInfo/granularity_scalar-indep_epilogue_last.ll @@ -14,7 +14,7 @@ ; phi = valA; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -24,10 +24,10 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %valA = load double, double* %A - store double %valA, double* %A - %valB = load double, double* %B - store double %valB, double* %B + %valA = load double, ptr %A + store double %valA, ptr %A + %valB = load double, ptr %B + store double %valB, ptr %B br label %bodyB bodyB: @@ -59,8 +59,8 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: [n] -> { Stmt_bodyA[i0] -> MemRef_phi__phi[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %valA = load double, double* %A, align 8 -; CHECK-NEXT: store double %valA, double* %A, align 8 +; CHECK-NEXT: %valA = load double, ptr %A, align 8 +; CHECK-NEXT: store double %valA, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_bodyA_b ; CHECK-NEXT: Domain := @@ -72,7 +72,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_bodyA_b[i0] -> MemRef_B[0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %valB = load double, double* %B, align 8 -; CHECK-NEXT: store double %valB, double* %B, align 8 +; CHECK-NEXT: %valB = load double, ptr %B, align 8 +; CHECK-NEXT: store double %valB, ptr %B, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ScopInfo/granularity_scalar-indep_noepilogue.ll b/polly/test/ScopInfo/granularity_scalar-indep_noepilogue.ll index e3f7e8b45e03..9a0d207c0c2a 100644 --- a/polly/test/ScopInfo/granularity_scalar-indep_noepilogue.ll +++ b/polly/test/ScopInfo/granularity_scalar-indep_noepilogue.ll @@ -12,7 +12,7 @@ ; phi = valA; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -22,8 +22,8 @@ for: br i1 %j.cmp, label %bodyA, label %exit bodyA: - %valA = load double, double* %A - store double %valA, double* %A + %valA = load double, ptr %A + store double %valA, ptr %A br label %bodyB bodyB: @@ -55,7 +55,7 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: [n] -> { Stmt_bodyA[i0] -> MemRef_phi__phi[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %valA = load double, double* %A, align 8 -; CHECK-NEXT: store double %valA, double* %A, align 8 +; CHECK-NEXT: %valA = load double, ptr %A, align 8 +; CHECK-NEXT: store double %valA, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ScopInfo/granularity_scalar-indep_ordered-2.ll b/polly/test/ScopInfo/granularity_scalar-indep_ordered-2.ll index e533b10889fa..d093806bc9cc 100644 --- a/polly/test/ScopInfo/granularity_scalar-indep_ordered-2.ll +++ b/polly/test/ScopInfo/granularity_scalar-indep_ordered-2.ll @@ -14,7 +14,7 @@ ; A[0] = valB; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B, double* noalias nonnull %X, double* noalias nonnull %Y) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B, ptr noalias nonnull %X, ptr noalias nonnull %Y) { entry: br label %for @@ -24,12 +24,12 @@ for: br i1 %j.cmp, label %body, label %exit body: - %valX = load double, double* %X - store double %valX, double* %Y - %valA = load double, double* %A - %valB = load double, double* %B - store double %valA, double* %A - store double %valB, double* %A + %valX = load double, ptr %X + store double %valX, ptr %Y + %valA = load double, ptr %A + %valB = load double, ptr %B + store double %valA, ptr %A + store double %valB, ptr %A br label %inc inc: @@ -55,8 +55,8 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_body[i0] -> MemRef_Y[0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %valX = load double, double* %X, align 8 -; CHECK-NEXT: store double %valX, double* %Y, align 8 +; CHECK-NEXT: %valX = load double, ptr %X, align 8 +; CHECK-NEXT: store double %valX, ptr %Y, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_body_b ; CHECK-NEXT: Domain := @@ -72,9 +72,9 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_body_b[i0] -> MemRef_A[0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %valA = load double, double* %A, align 8 -; CHECK-NEXT: %valB = load double, double* %B, align 8 -; CHECK-NEXT: store double %valA, double* %A, align 8 -; CHECK-NEXT: store double %valB, double* %A, align 8 +; CHECK-NEXT: %valA = load double, ptr %A, align 8 +; CHECK-NEXT: %valB = load double, ptr %B, align 8 +; CHECK-NEXT: store double %valA, ptr %A, align 8 +; CHECK-NEXT: store double %valB, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ScopInfo/granularity_scalar-indep_ordered.ll b/polly/test/ScopInfo/granularity_scalar-indep_ordered.ll index f48b02a222de..b1d2936882aa 100644 --- a/polly/test/ScopInfo/granularity_scalar-indep_ordered.ll +++ b/polly/test/ScopInfo/granularity_scalar-indep_ordered.ll @@ -11,7 +11,7 @@ ; A[0] = valB; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -21,10 +21,10 @@ for: br i1 %j.cmp, label %body, label %exit body: - %valA = load double, double* %A - %valB = load double, double* %B - store double %valA, double* %A - store double %valB, double* %A + %valA = load double, ptr %A + %valB = load double, ptr %B + store double %valA, ptr %A + store double %valB, ptr %A br label %inc inc: @@ -54,9 +54,9 @@ return: ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [n] -> { Stmt_body[i0] -> MemRef_A[0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %valA = load double, double* %A, align 8 -; CHECK-NEXT: %valB = load double, double* %B, align 8 -; CHECK-NEXT: store double %valA, double* %A, align 8 -; CHECK-NEXT: store double %valB, double* %A, align 8 +; CHECK-NEXT: %valA = load double, ptr %A, align 8 +; CHECK-NEXT: %valB = load double, ptr %B, align 8 +; CHECK-NEXT: store double %valA, ptr %A, align 8 +; CHECK-NEXT: store double %valB, ptr %A, align 8 ; CHECK-NEXT: } ; CHECK-NEXT: } diff --git a/polly/test/ScopInfo/i1_params.ll b/polly/test/ScopInfo/i1_params.ll index 251b9a17c6d6..1cb1329b08f9 100644 --- a/polly/test/ScopInfo/i1_params.ll +++ b/polly/test/ScopInfo/i1_params.ll @@ -18,7 +18,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i1 %p0, i1 %p1, i32* %A) { +define void @f(i1 %p0, i1 %p1, ptr %A) { entry: %tmp4 = sext i1 %p0 to i64 %tmp = zext i1 %p1 to i64 @@ -31,11 +31,11 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %tmp5 = add nsw i64 %indvars.iv, %tmp - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %tmp5 - %tmp6 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %tmp5 + %tmp6 = load i32, ptr %arrayidx, align 4 %tmp7 = add nsw i64 %indvars.iv, %tmp4 - %arrayidx3 = getelementptr inbounds i32, i32* %A, i64 %tmp7 - store i32 %tmp6, i32* %arrayidx3, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %A, i64 %tmp7 + store i32 %tmp6, ptr %arrayidx3, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/infeasible-rtc.ll b/polly/test/ScopInfo/infeasible-rtc.ll index bd9907dc21cd..ef96627e640e 100644 --- a/polly/test/ScopInfo/infeasible-rtc.ll +++ b/polly/test/ScopInfo/infeasible-rtc.ll @@ -12,18 +12,18 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; Verify that we detect this scop, but that, due to an infeasible run-time ; check, we refuse to model it. -define void @test(i64* %a) nounwind uwtable { +define void @test(ptr %a) nounwind uwtable { preheader: br label %test1.header test1.header: %i = phi i56 [ 0, %preheader ], [ %i.1, %test1.header ] %tmp = zext i56 %i to i64 - %A.addr = getelementptr i64, i64* %a, i64 %tmp - %A.load = load i64, i64* %A.addr, align 4 + %A.addr = getelementptr i64, ptr %a, i64 %tmp + %A.load = load i64, ptr %A.addr, align 4 %A.inc = zext i56 %i to i64 %A.val = add nsw i64 %A.load, %A.inc - store i64 %A.val, i64* %A.addr, align 4 + store i64 %A.val, ptr %A.addr, align 4 %i.1 = add i56 %i, 1 %exitcond = icmp eq i56 %i.1, 0 br i1 %exitcond, label %test1.exit, label %test1.header @@ -37,18 +37,18 @@ test1.exit: ; SCOPS: { Stmt_header[i0] : 0 <= i0 <= 127 }; -define void @test2([128 x i32]* %a) nounwind uwtable { +define void @test2(ptr %a) nounwind uwtable { preheader: br label %header header: %i = phi i7 [ 0, %preheader ], [ %i.1, %header ] %tmp = zext i7 %i to i64 - %A.addr = getelementptr [128 x i32], [128 x i32]* %a, i64 0, i64 %tmp - %A.load = load i32, i32* %A.addr, align 4 + %A.addr = getelementptr [128 x i32], ptr %a, i64 0, i64 %tmp + %A.load = load i32, ptr %A.addr, align 4 %A.inc = zext i7 %i to i32 %A.val = add nsw i32 %A.load, %A.inc - store i32 %A.val, i32* %A.addr, align 4 + store i32 %A.val, ptr %A.addr, align 4 %i.1 = add i7 %i, 1 %exitcond = icmp eq i7 %i.1, 0 br i1 %exitcond, label %exit, label %header diff --git a/polly/test/ScopInfo/infeasible_invalid_context.ll b/polly/test/ScopInfo/infeasible_invalid_context.ll index 77212e28ddec..2c299f06c12e 100644 --- a/polly/test/ScopInfo/infeasible_invalid_context.ll +++ b/polly/test/ScopInfo/infeasible_invalid_context.ll @@ -12,11 +12,11 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739 = type { i32, i32, %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, i32, i32, %struct.plist.0.6.12.66.120.174.216.306.324.336.348.366.378.390.432.444.666.726.732.738* } -%struct.plist.0.6.12.66.120.174.216.306.324.336.348.366.378.390.432.444.666.726.732.738 = type { i32, %struct.plist.0.6.12.66.120.174.216.306.324.336.348.366.378.390.432.444.666.726.732.738* } +%struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739 = type { i32, i32, ptr, ptr, ptr, ptr, ptr, i32, i32, ptr } +%struct.plist.0.6.12.66.120.174.216.306.324.336.348.366.378.390.432.444.666.726.732.738 = type { i32, ptr } -@vFixedEdgeRoot = external global %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, align 8 -@hEdgeRoot = external global %struct.tnode.1.7.13.67.121.175.217.307.325.337.349.367.379.391.433.445.667.727.733.739*, align 8 +@vFixedEdgeRoot = external global ptr, align 8 +@hEdgeRoot = external global ptr, align 8 ; Function Attrs: nounwind uwtable define void @readgeo() #0 { @@ -55,7 +55,7 @@ if.else154: ; preds = %if.end116 br label %if.end193 if.end193: ; preds = %if.else154, %if.then120 - %0 = load i32, i32* %vx, align 4 + %0 = load i32, ptr %vx, align 4 br label %for.inc216 for.inc216: ; preds = %if.end193, %if.then93 diff --git a/polly/test/ScopInfo/integers.ll b/polly/test/ScopInfo/integers.ll index bb3c8830b77a..b608bf84cffa 100644 --- a/polly/test/ScopInfo/integers.ll +++ b/polly/test/ScopInfo/integers.ll @@ -5,13 +5,13 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" ; Large positive integer -define void @f(i1024* nocapture %a) nounwind { +define void @f(ptr nocapture %a) nounwind { entry: br label %bb bb: %indvar = phi i1024 [ 0, %entry ], [ %indvar.next, %bb ] - store i1024 %indvar, i1024* %a, align 8 + store i1024 %indvar, ptr %a, align 8 %indvar.next = add nsw i1024 %indvar, 1 %exitcond = icmp eq i1024 %indvar, 123456000000000000000000000 ; CHECK-LABEL: Function: f @@ -24,14 +24,14 @@ return: } ; Normal positive integer -define void @f2(i32* nocapture %a) nounwind { +define void @f2(ptr nocapture %a) nounwind { entry: br label %bb bb: %indvar = phi i32 [ 0, %entry ], [ %indvar.next, %bb ] - %scevgep = getelementptr i32, i32* %a, i32 %indvar - store i32 %indvar, i32* %scevgep, align 8 + %scevgep = getelementptr i32, ptr %a, i32 %indvar + store i32 %indvar, ptr %scevgep, align 8 %indvar.next = add nsw i32 %indvar, 1 %exitcond = icmp eq i32 %indvar, 123456 ; CHECK-LABEL: Function: f2 @@ -44,14 +44,14 @@ return: } ; Normal negative integer -define void @f3(i32* nocapture %a, i32 %n) nounwind { +define void @f3(ptr nocapture %a, i32 %n) nounwind { entry: br label %bb bb: %indvar = phi i32 [ 0, %entry ], [ %indvar.next, %bb ] - %scevgep = getelementptr i32, i32* %a, i32 %indvar - store i32 %indvar, i32* %scevgep, align 8 + %scevgep = getelementptr i32, ptr %a, i32 %indvar + store i32 %indvar, ptr %scevgep, align 8 %indvar.next = add nsw i32 %indvar, 1 %sub = sub i32 %n, 123456 %exitcond = icmp eq i32 %indvar, %sub @@ -65,14 +65,14 @@ return: } ; Large negative integer -define void @f4(i1024* nocapture %a, i1024 %n) nounwind { +define void @f4(ptr nocapture %a, i1024 %n) nounwind { entry: br label %bb bb: %indvar = phi i1024 [ 0, %entry ], [ %indvar.next, %bb ] - %scevgep = getelementptr i1024, i1024* %a, i1024 %indvar - store i1024 %indvar, i1024* %scevgep, align 8 + %scevgep = getelementptr i1024, ptr %a, i1024 %indvar + store i1024 %indvar, ptr %scevgep, align 8 %indvar.next = add nsw i1024 %indvar, 1 %sub = sub i1024 %n, 123456000000000000000000000000000000 ; CHECK-LABEL: Function: f4 @@ -85,14 +85,14 @@ return: ret void } -define void @f5(i1023* nocapture %a, i1023 %n) nounwind { +define void @f5(ptr nocapture %a, i1023 %n) nounwind { entry: br label %bb bb: %indvar = phi i1023 [ 0, %entry ], [ %indvar.next, %bb ] - %scevgep = getelementptr i1023, i1023* %a, i1023 %indvar - store i1023 %indvar, i1023* %scevgep, align 8 + %scevgep = getelementptr i1023, ptr %a, i1023 %indvar + store i1023 %indvar, ptr %scevgep, align 8 %indvar.next = add nsw i1023 %indvar, 1 %sub = sub i1023 %n, 123456000000000000000000000000000000 ; CHECK-LABEL: Function: f5 @@ -106,14 +106,14 @@ return: } ; Tiny negative integer -define void @f6(i3* nocapture %a, i3 %n) nounwind { +define void @f6(ptr nocapture %a, i3 %n) nounwind { entry: br label %bb bb: %indvar = phi i3 [ 0, %entry ], [ %indvar.next, %bb ] - %scevgep = getelementptr i3, i3* %a, i3 %indvar - store i3 %indvar, i3* %scevgep, align 8 + %scevgep = getelementptr i3, ptr %a, i3 %indvar + store i3 %indvar, ptr %scevgep, align 8 %indvar.next = add nsw i3 %indvar, 1 %sub = sub i3 %n, 3 ; CHECK-LABEL: Function: f6 diff --git a/polly/test/ScopInfo/inter-error-bb-dependence.ll b/polly/test/ScopInfo/inter-error-bb-dependence.ll index 5d23dfd297c2..4e23de7e6a99 100644 --- a/polly/test/ScopInfo/inter-error-bb-dependence.ll +++ b/polly/test/ScopInfo/inter-error-bb-dependence.ll @@ -6,7 +6,7 @@ target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f16:16:16-f32:32:32-f64:64:64-f128:128:128-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -declare noalias i8* @widget() +declare noalias ptr @widget() declare void @quux() @@ -33,12 +33,12 @@ bb25: ; preds = %bb25, %bb16 br i1 %tmp27, label %bb31, label %bb25 bb31: ; preds = %bb25, %bb16 - %tmp32 = call noalias i8* @widget() + %tmp32 = call noalias ptr @widget() br label %bb33 bb33: ; preds = %bb31 call void @quux() - %tmp34 = icmp eq i8* %tmp32, null + %tmp34 = icmp eq ptr %tmp32, null br label %bb36 bb36: ; preds = %bb33, %bb5 diff --git a/polly/test/ScopInfo/inter_bb_scalar_dep.ll b/polly/test/ScopInfo/inter_bb_scalar_dep.ll index fd6e1fe9047d..456f7a773f04 100644 --- a/polly/test/ScopInfo/inter_bb_scalar_dep.ll +++ b/polly/test/ScopInfo/inter_bb_scalar_dep.ll @@ -19,7 +19,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK: ReadAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: MemRef_init_ptr[0] -define void @f(i64* noalias %A, i64 %N, i64* noalias %init_ptr) #0 { +define void @f(ptr noalias %A, i64 %N, ptr noalias %init_ptr) #0 { entry: br label %for.i @@ -29,7 +29,7 @@ for.i: ; preds = %for.i.end, %entry br label %entry.next entry.next: ; preds = %for.i - %init = load i64, i64* %init_ptr + %init = load i64, ptr %init_ptr ; CHECK-NOT: Stmt_entry_next br label %for.j @@ -41,8 +41,8 @@ for.j: ; preds = %for.j, %entry.next ; CHECK-NEXT: [N] -> { Stmt_for_j[i0, i1] -> MemRef_init[] }; ; CHECK: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [N] -> { Stmt_for_j[i0, i1] -> MemRef_A[i1] }; - %scevgep = getelementptr i64, i64* %A, i64 %indvar.j - store i64 %init_plus_two, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar.j + store i64 %init_plus_two, ptr %scevgep %indvar.j.next = add nsw i64 %indvar.j, 1 %exitcond.j = icmp eq i64 %indvar.j.next, %N br i1 %exitcond.j, label %for.i.end, label %for.j diff --git a/polly/test/ScopInfo/intra-non-affine-stmt-phi-node.ll b/polly/test/ScopInfo/intra-non-affine-stmt-phi-node.ll index 2f839748bf53..859972b27402 100644 --- a/polly/test/ScopInfo/intra-non-affine-stmt-phi-node.ll +++ b/polly/test/ScopInfo/intra-non-affine-stmt-phi-node.ll @@ -20,7 +20,7 @@ ; CHECK-NEXT: { Stmt_backedge[i0] -> MemRef_A[0] }; ; CHECK-NEXT: } -define void @foo(float* %A, i1 %cond0, i1 %cond1) { +define void @foo(ptr %A, i1 %cond0, i1 %cond1) { entry: br label %loop @@ -40,7 +40,7 @@ branch2: backedge: %merge = phi float [%val0, %loop], [%val1, %branch1], [%val2, %branch2] %indvar.next = add i64 %indvar, 1 - store float %merge, float* %A + store float %merge, ptr %A %cmp = icmp sle i64 %indvar.next, 100 br i1 %cmp, label %loop, label %exit diff --git a/polly/test/ScopInfo/intra_and_inter_bb_scalar_dep.ll b/polly/test/ScopInfo/intra_and_inter_bb_scalar_dep.ll index 2153ac416ab3..37f4e0513ed3 100644 --- a/polly/test/ScopInfo/intra_and_inter_bb_scalar_dep.ll +++ b/polly/test/ScopInfo/intra_and_inter_bb_scalar_dep.ll @@ -33,7 +33,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* noalias %A, i64 %N, i64* noalias %init_ptr) #0 { +define void @f(ptr noalias %A, i64 %N, ptr noalias %init_ptr) #0 { entry: br label %for.i @@ -43,15 +43,15 @@ for.i: ; preds = %for.i.end, %entry br label %entry.next entry.next: ; preds = %for.i - %init = load i64, i64* %init_ptr + %init = load i64, ptr %init_ptr br label %for.j for.j: ; preds = %for.j, %entry.next %indvar.j = phi i64 [ 0, %entry.next ], [ %indvar.j.next, %for.j ] - %init_2 = load i64, i64* %init_ptr + %init_2 = load i64, ptr %init_ptr %init_sum = add i64 %init, %init_2 - %scevgep = getelementptr i64, i64* %A, i64 %indvar.j - store i64 %init_sum, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar.j + store i64 %init_sum, ptr %scevgep %indvar.j.next = add nsw i64 %indvar.j, 1 %exitcond.j = icmp eq i64 %indvar.j.next, %N br i1 %exitcond.j, label %for.i.end, label %for.j diff --git a/polly/test/ScopInfo/intra_bb_scalar_dep.ll b/polly/test/ScopInfo/intra_bb_scalar_dep.ll index 6cd9135d105c..0252273d3107 100644 --- a/polly/test/ScopInfo/intra_bb_scalar_dep.ll +++ b/polly/test/ScopInfo/intra_bb_scalar_dep.ll @@ -18,7 +18,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK: Invariant Accesses: ; CHECK-NEXT: ReadAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: [N] -> { Stmt_for_j[i0, i1] -> MemRef_init_ptr[0] }; -define void @f(i64* noalias %A, i64 %N, i64* noalias %init_ptr) #0 { +define void @f(ptr noalias %A, i64 %N, ptr noalias %init_ptr) #0 { entry: br label %for.i @@ -32,10 +32,10 @@ entry.next: ; preds = %for.i for.j: ; preds = %for.j, %entry.next %indvar.j = phi i64 [ 0, %entry.next ], [ %indvar.j.next, %for.j ] - %init = load i64, i64* %init_ptr + %init = load i64, ptr %init_ptr %init_plus_two = add i64 %init, 2 - %scevgep = getelementptr i64, i64* %A, i64 %indvar.j - store i64 %init_plus_two, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar.j + store i64 %init_plus_two, ptr %scevgep ; CHECK: Statements { ; CHECK-NEXT: Stmt_for_j ; CHECK-NOT: ReadAccess diff --git a/polly/test/ScopInfo/intrinsics.ll b/polly/test/ScopInfo/intrinsics.ll index 5d4d8c43e878..853429341381 100644 --- a/polly/test/ScopInfo/intrinsics.ll +++ b/polly/test/ScopInfo/intrinsics.ll @@ -3,7 +3,7 @@ ; Verify that we remove the ignored intrinsics from the instruction list. ; ; CHECK: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx, align 4 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx, align 4 ; CHECK-NEXT: } ; ; int A[1024]; @@ -26,9 +26,9 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %idxprom = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* %A, i64 0, i64 %idxprom + %arrayidx = getelementptr inbounds [1024 x i32], ptr %A, i64 0, i64 %idxprom call void @llvm.donothing() - store i32 %i.0, i32* %arrayidx, align 4 + store i32 %i.0, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/invalid_add_rec_after_invariant_load_remapping.ll b/polly/test/ScopInfo/invalid_add_rec_after_invariant_load_remapping.ll index 3c3566b4cb8e..8d0de03e9866 100644 --- a/polly/test/ScopInfo/invalid_add_rec_after_invariant_load_remapping.ll +++ b/polly/test/ScopInfo/invalid_add_rec_after_invariant_load_remapping.ll @@ -9,17 +9,17 @@ ; Check we do not crash. target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.codebook.48.118.748.1882.2972 = type { i64, i64, i64, %struct.static_codebook.19.89.719.1853.2971*, float*, i32*, i32*, i8*, i32*, i32, i32 } -%struct.static_codebook.19.89.719.1853.2971 = type { i64, i64, i64*, i32, i64, i64, i32, i32, i64*, %struct.encode_aux_nearestmatch.16.86.716.1850.2968*, %struct.encode_aux_threshmatch.17.87.717.1851.2969*, %struct.encode_aux_pigeonhole.18.88.718.1852.2970*, i32 } -%struct.encode_aux_nearestmatch.16.86.716.1850.2968 = type { i64*, i64*, i64*, i64*, i64, i64 } -%struct.encode_aux_threshmatch.17.87.717.1851.2969 = type { float*, i64*, i32, i32 } -%struct.encode_aux_pigeonhole.18.88.718.1852.2970 = type { float, float, i32, i32, i64*, i64, i64*, i64*, i64* } +%struct.codebook.48.118.748.1882.2972 = type { i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32 } +%struct.static_codebook.19.89.719.1853.2971 = type { i64, i64, ptr, i32, i64, i64, i32, i32, ptr, ptr, ptr, ptr, i32 } +%struct.encode_aux_nearestmatch.16.86.716.1850.2968 = type { ptr, ptr, ptr, ptr, i64, i64 } +%struct.encode_aux_threshmatch.17.87.717.1851.2969 = type { ptr, ptr, i32, i32 } +%struct.encode_aux_pigeonhole.18.88.718.1852.2970 = type { float, float, i32, i32, ptr, i64, ptr, ptr, ptr } ; Function Attrs: inlinehint nounwind uwtable declare i64 @decode_packed_entry_number() #0 ; Function Attrs: nounwind uwtable -define void @vorbis_book_decodev_set(%struct.codebook.48.118.748.1882.2972* %book) #1 { +define void @vorbis_book_decodev_set(ptr %book) #1 { entry: br i1 undef, label %for.body, label %return @@ -31,25 +31,23 @@ for.body: ; preds = %for.cond.loopexit, br i1 undef, label %return, label %if.end if.end: ; preds = %for.body - %valuelist = getelementptr inbounds %struct.codebook.48.118.748.1882.2972, %struct.codebook.48.118.748.1882.2972* %book, i64 0, i32 4 - %0 = load float*, float** %valuelist, align 8 + %valuelist = getelementptr inbounds %struct.codebook.48.118.748.1882.2972, ptr %book, i64 0, i32 4 + %0 = load ptr, ptr %valuelist, align 8 %sext = shl i64 %call, 32 %conv4 = ashr exact i64 %sext, 32 - %dim = getelementptr inbounds %struct.codebook.48.118.748.1882.2972, %struct.codebook.48.118.748.1882.2972* %book, i64 0, i32 0 - %1 = load i64, i64* %dim, align 8 + %1 = load i64, ptr %book, align 8 %mul = mul nsw i64 %1, %conv4 - %add.ptr = getelementptr inbounds float, float* %0, i64 %mul + %add.ptr = getelementptr inbounds float, ptr %0, i64 %mul %cmp8.7 = icmp sgt i64 %1, 0 br i1 %cmp8.7, label %for.body.10, label %for.cond.loopexit for.body.10: ; preds = %for.body.10, %if.end %indvars.iv15 = phi i64 [ %indvars.iv.next16, %for.body.10 ], [ 0, %if.end ] %indvars.iv.next16 = add nuw nsw i64 %indvars.iv15, 1 - %arrayidx = getelementptr inbounds float, float* %add.ptr, i64 %indvars.iv15 - %2 = bitcast float* %arrayidx to i32* - %3 = load i32, i32* %2, align 4 - %4 = load i64, i64* %dim, align 8 - %cmp8 = icmp slt i64 %indvars.iv.next16, %4 + %arrayidx = getelementptr inbounds float, ptr %add.ptr, i64 %indvars.iv15 + %2 = load i32, ptr %arrayidx, align 4 + %3 = load i64, ptr %book, align 8 + %cmp8 = icmp slt i64 %indvars.iv.next16, %3 br i1 %cmp8, label %for.body.10, label %for.cond.loopexit return: ; preds = %for.body, %for.cond.loopexit, %entry diff --git a/polly/test/ScopInfo/invalidate_iterator_during_MA_removal.ll b/polly/test/ScopInfo/invalidate_iterator_during_MA_removal.ll index 095daa0cd51e..dcb0ad301ba3 100644 --- a/polly/test/ScopInfo/invalidate_iterator_during_MA_removal.ll +++ b/polly/test/ScopInfo/invalidate_iterator_during_MA_removal.ll @@ -7,50 +7,48 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.vorbis_dsp_state.29.212.395.700.761.944.1066.1127.1188.2825.2980.1.51.76.101.126.780 = type { i32, %struct.vorbis_info.28.211.394.699.760.943.1065.1126.1187.2824.2979.0.50.75.100.125.779*, float**, float**, i32, i32, i32, i32, i32, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i8* } -%struct.vorbis_info.28.211.394.699.760.943.1065.1126.1187.2824.2979.0.50.75.100.125.779 = type { i32, i32, i64, i64, i64, i64, i64, i8* } -%struct.codec_setup_info.59.242.425.730.791.974.1096.1157.1218.2855.2992.13.63.88.113.138.792 = type { [2 x i64], i32, i32, i32, i32, i32, i32, [64 x %struct.vorbis_info_mode.36.219.402.707.768.951.1073.1134.1195.2832.2981.2.52.77.102.127.781*], [64 x i32], [64 x i8*], [64 x i32], [64 x i8*], [64 x i32], [64 x i8*], [256 x %struct.static_codebook.18.201.384.689.750.933.1055.1116.1177.2814.2985.6.56.81.106.131.785*], %struct.codebook.43.226.409.714.775.958.1080.1141.1202.2839.2986.7.57.82.107.132.786*, [4 x %struct.vorbis_info_psy.35.218.401.706.767.950.1072.1133.1194.2831.2987.8.58.83.108.133.787*], %struct.vorbis_info_psy_global.13.196.379.684.745.928.1050.1111.1172.2809.2988.9.59.84.109.134.788, %struct.bitrate_manager_info.56.239.422.727.788.971.1093.1154.1215.2852.2989.10.60.85.110.135.789, %struct.highlevel_encode_setup.58.241.424.729.790.973.1095.1156.1217.2854.2991.12.62.87.112.137.791, i32 } +%struct.vorbis_dsp_state.29.212.395.700.761.944.1066.1127.1188.2825.2980.1.51.76.101.126.780 = type { i32, ptr, ptr, ptr, i32, i32, i32, i32, i32, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, ptr } +%struct.vorbis_info.28.211.394.699.760.943.1065.1126.1187.2824.2979.0.50.75.100.125.779 = type { i32, i32, i64, i64, i64, i64, i64, ptr } +%struct.codec_setup_info.59.242.425.730.791.974.1096.1157.1218.2855.2992.13.63.88.113.138.792 = type { [2 x i64], i32, i32, i32, i32, i32, i32, [64 x ptr], [64 x i32], [64 x ptr], [64 x i32], [64 x ptr], [64 x i32], [64 x ptr], [256 x ptr], ptr, [4 x ptr], %struct.vorbis_info_psy_global.13.196.379.684.745.928.1050.1111.1172.2809.2988.9.59.84.109.134.788, %struct.bitrate_manager_info.56.239.422.727.788.971.1093.1154.1215.2852.2989.10.60.85.110.135.789, %struct.highlevel_encode_setup.58.241.424.729.790.973.1095.1156.1217.2854.2991.12.62.87.112.137.791, i32 } %struct.vorbis_info_mode.36.219.402.707.768.951.1073.1134.1195.2832.2981.2.52.77.102.127.781 = type { i32, i32, i32, i32 } -%struct.static_codebook.18.201.384.689.750.933.1055.1116.1177.2814.2985.6.56.81.106.131.785 = type { i64, i64, i64*, i32, i64, i64, i32, i32, i64*, %struct.encode_aux_nearestmatch.15.198.381.686.747.930.1052.1113.1174.2811.2982.3.53.78.103.128.782*, %struct.encode_aux_threshmatch.16.199.382.687.748.931.1053.1114.1175.2812.2983.4.54.79.104.129.783*, %struct.encode_aux_pigeonhole.17.200.383.688.749.932.1054.1115.1176.2813.2984.5.55.80.105.130.784*, i32 } -%struct.encode_aux_nearestmatch.15.198.381.686.747.930.1052.1113.1174.2811.2982.3.53.78.103.128.782 = type { i64*, i64*, i64*, i64*, i64, i64 } -%struct.encode_aux_threshmatch.16.199.382.687.748.931.1053.1114.1175.2812.2983.4.54.79.104.129.783 = type { float*, i64*, i32, i32 } -%struct.encode_aux_pigeonhole.17.200.383.688.749.932.1054.1115.1176.2813.2984.5.55.80.105.130.784 = type { float, float, i32, i32, i64*, i64, i64*, i64*, i64* } -%struct.codebook.43.226.409.714.775.958.1080.1141.1202.2839.2986.7.57.82.107.132.786 = type { i64, i64, i64, %struct.static_codebook.18.201.384.689.750.933.1055.1116.1177.2814.2985.6.56.81.106.131.785*, float*, i32*, i32*, i8*, i32*, i32, i32 } +%struct.static_codebook.18.201.384.689.750.933.1055.1116.1177.2814.2985.6.56.81.106.131.785 = type { i64, i64, ptr, i32, i64, i64, i32, i32, ptr, ptr, ptr, ptr, i32 } +%struct.encode_aux_nearestmatch.15.198.381.686.747.930.1052.1113.1174.2811.2982.3.53.78.103.128.782 = type { ptr, ptr, ptr, ptr, i64, i64 } +%struct.encode_aux_threshmatch.16.199.382.687.748.931.1053.1114.1175.2812.2983.4.54.79.104.129.783 = type { ptr, ptr, i32, i32 } +%struct.encode_aux_pigeonhole.17.200.383.688.749.932.1054.1115.1176.2813.2984.5.55.80.105.130.784 = type { float, float, i32, i32, ptr, i64, ptr, ptr, ptr } +%struct.codebook.43.226.409.714.775.958.1080.1141.1202.2839.2986.7.57.82.107.132.786 = type { i64, i64, i64, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32 } %struct.vorbis_info_psy.35.218.401.706.767.950.1072.1133.1194.2831.2987.8.58.83.108.133.787 = type { i32, float, float, [3 x float], float, float, float, [17 x float], i32, float, float, float, i32, i32, i32, [3 x [17 x float]], [40 x float], float, i32, i32, i32, i32, double } %struct.vorbis_info_psy_global.13.196.379.684.745.928.1050.1111.1172.2809.2988.9.59.84.109.134.788 = type { i32, [7 x float], [7 x float], float, float, float, [15 x i32], [2 x [15 x i32]], [15 x i32], [15 x i32], [2 x [15 x i32]] } %struct.bitrate_manager_info.56.239.422.727.788.971.1093.1154.1215.2852.2989.10.60.85.110.135.789 = type { double, double, double, double, double, double, double, double, double } -%struct.highlevel_encode_setup.58.241.424.729.790.973.1095.1156.1217.2854.2991.12.62.87.112.137.791 = type { i8*, i32, double, double, double, double, i32, i64, i64, i64, i64, double, double, double, i32, i32, double, double, double, double, double, double, [4 x %struct.highlevel_byblocktype.57.240.423.728.789.972.1094.1155.1216.2853.2990.11.61.86.111.136.790] } +%struct.highlevel_encode_setup.58.241.424.729.790.973.1095.1156.1217.2854.2991.12.62.87.112.137.791 = type { ptr, i32, double, double, double, double, i32, i64, i64, i64, i64, double, double, double, i32, i32, double, double, double, double, double, double, [4 x %struct.highlevel_byblocktype.57.240.423.728.789.972.1094.1155.1216.2853.2990.11.61.86.111.136.790] } %struct.highlevel_byblocktype.57.240.423.728.789.972.1094.1155.1216.2853.2990.11.61.86.111.136.790 = type { double, double, double, double } -%struct.private_state.60.243.426.731.792.975.1097.1158.1219.2856.3003.24.74.99.124.149.803 = type { %struct.envelope_lookup.48.231.414.719.780.963.1085.1146.1207.2844.2996.17.67.92.117.142.796*, [2 x i32], [2 x i8**], [2 x %struct.drft_lookup.51.234.417.722.783.966.1088.1149.1210.2847.2997.18.68.93.118.143.797], i32, i8**, i8**, %struct.vorbis_look_psy.50.233.416.721.782.965.1087.1148.1209.2846.2998.19.69.94.119.144.798*, %struct.vorbis_look_psy_global.44.227.410.715.776.959.1081.1142.1203.2840.2999.20.70.95.120.145.799*, i8*, i8*, i8*, %struct.bitrate_manager_state.49.232.415.720.781.964.1086.1147.1208.2845.3002.23.73.98.123.148.802, i64 } -%struct.envelope_lookup.48.231.414.719.780.963.1085.1146.1207.2844.2996.17.67.92.117.142.796 = type { i32, i32, i32, float, %struct.mdct_lookup.45.228.411.716.777.960.1082.1143.1204.2841.2993.14.64.89.114.139.793, float*, [7 x %struct.envelope_band.46.229.412.717.778.961.1083.1144.1205.2842.2994.15.65.90.115.140.794], %struct.envelope_filter_state.47.230.413.718.779.962.1084.1145.1206.2843.2995.16.66.91.116.141.795*, i32, i32*, i64, i64, i64, i64 } -%struct.mdct_lookup.45.228.411.716.777.960.1082.1143.1204.2841.2993.14.64.89.114.139.793 = type { i32, i32, float*, i32*, float } -%struct.envelope_band.46.229.412.717.778.961.1083.1144.1205.2842.2994.15.65.90.115.140.794 = type { i32, i32, float*, float } +%struct.private_state.60.243.426.731.792.975.1097.1158.1219.2856.3003.24.74.99.124.149.803 = type { ptr, [2 x i32], [2 x ptr], [2 x %struct.drft_lookup.51.234.417.722.783.966.1088.1149.1210.2847.2997.18.68.93.118.143.797], i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, %struct.bitrate_manager_state.49.232.415.720.781.964.1086.1147.1208.2845.3002.23.73.98.123.148.802, i64 } +%struct.envelope_lookup.48.231.414.719.780.963.1085.1146.1207.2844.2996.17.67.92.117.142.796 = type { i32, i32, i32, float, %struct.mdct_lookup.45.228.411.716.777.960.1082.1143.1204.2841.2993.14.64.89.114.139.793, ptr, [7 x %struct.envelope_band.46.229.412.717.778.961.1083.1144.1205.2842.2994.15.65.90.115.140.794], ptr, i32, ptr, i64, i64, i64, i64 } +%struct.mdct_lookup.45.228.411.716.777.960.1082.1143.1204.2841.2993.14.64.89.114.139.793 = type { i32, i32, ptr, ptr, float } +%struct.envelope_band.46.229.412.717.778.961.1083.1144.1205.2842.2994.15.65.90.115.140.794 = type { i32, i32, ptr, float } %struct.envelope_filter_state.47.230.413.718.779.962.1084.1145.1206.2843.2995.16.66.91.116.141.795 = type { [17 x float], i32, [15 x float], float, float, i32 } -%struct.drft_lookup.51.234.417.722.783.966.1088.1149.1210.2847.2997.18.68.93.118.143.797 = type { i32, float*, i32* } -%struct.vorbis_look_psy.50.233.416.721.782.965.1087.1148.1209.2846.2998.19.69.94.119.144.798 = type { i32, %struct.vorbis_info_psy.35.218.401.706.767.950.1072.1133.1194.2831.2987.8.58.83.108.133.787*, float***, float**, float*, i64*, i64*, i64, i64, i32, i32, i64 } -%struct.vorbis_look_psy_global.44.227.410.715.776.959.1081.1142.1203.2840.2999.20.70.95.120.145.799 = type { float, i32, %struct.vorbis_info_psy_global.13.196.379.684.745.928.1050.1111.1172.2809.2988.9.59.84.109.134.788*, [2 x [3 x i32]] } -%struct.bitrate_manager_state.49.232.415.720.781.964.1086.1147.1208.2845.3002.23.73.98.123.148.802 = type { i32*, i32*, i32, i32, i32, i64*, i32, i32, i32, i32, i32, i32, i64*, i64*, i64*, i64, i64, i32, i32, i32, i32, i32, double, %struct.oggpack_buffer.27.210.393.698.759.942.1064.1125.1186.2823.3000.21.71.96.121.146.800*, %struct.ogg_packet.39.222.405.710.771.954.1076.1137.1198.2835.3001.22.72.97.122.147.801* } -%struct.oggpack_buffer.27.210.393.698.759.942.1064.1125.1186.2823.3000.21.71.96.121.146.800 = type { i64, i32, i8*, i8*, i64 } -%struct.ogg_packet.39.222.405.710.771.954.1076.1137.1198.2835.3001.22.72.97.122.147.801 = type { i8*, i64, i64, i64, i64, i64 } +%struct.drft_lookup.51.234.417.722.783.966.1088.1149.1210.2847.2997.18.68.93.118.143.797 = type { i32, ptr, ptr } +%struct.vorbis_look_psy.50.233.416.721.782.965.1087.1148.1209.2846.2998.19.69.94.119.144.798 = type { i32, ptr, ptr, ptr, ptr, ptr, ptr, i64, i64, i32, i32, i64 } +%struct.vorbis_look_psy_global.44.227.410.715.776.959.1081.1142.1203.2840.2999.20.70.95.120.145.799 = type { float, i32, ptr, [2 x [3 x i32]] } +%struct.bitrate_manager_state.49.232.415.720.781.964.1086.1147.1208.2845.3002.23.73.98.123.148.802 = type { ptr, ptr, i32, i32, i32, ptr, i32, i32, i32, i32, i32, i32, ptr, ptr, ptr, i64, i64, i32, i32, i32, i32, i32, double, ptr, ptr } +%struct.oggpack_buffer.27.210.393.698.759.942.1064.1125.1186.2823.3000.21.71.96.121.146.800 = type { i64, i32, ptr, ptr, i64 } +%struct.ogg_packet.39.222.405.710.771.954.1076.1137.1198.2835.3001.22.72.97.122.147.801 = type { ptr, i64, i64, i64, i64, i64 } -define void @vorbis_synthesis_blockin(%struct.vorbis_dsp_state.29.212.395.700.761.944.1066.1127.1188.2825.2980.1.51.76.101.126.780* nocapture %v, double* %A) { +define void @vorbis_synthesis_blockin(ptr nocapture %v, ptr %A) { entry: br label %entry.split entry.split: ; preds = %entry - %vi1 = getelementptr inbounds %struct.vorbis_dsp_state.29.212.395.700.761.944.1066.1127.1188.2825.2980.1.51.76.101.126.780, %struct.vorbis_dsp_state.29.212.395.700.761.944.1066.1127.1188.2825.2980.1.51.76.101.126.780* %v, i64 0, i32 1 - %tmp = load %struct.vorbis_info.28.211.394.699.760.943.1065.1126.1187.2824.2979.0.50.75.100.125.779*, %struct.vorbis_info.28.211.394.699.760.943.1065.1126.1187.2824.2979.0.50.75.100.125.779** %vi1, align 8 - %codec_setup = getelementptr inbounds %struct.vorbis_info.28.211.394.699.760.943.1065.1126.1187.2824.2979.0.50.75.100.125.779, %struct.vorbis_info.28.211.394.699.760.943.1065.1126.1187.2824.2979.0.50.75.100.125.779* %tmp, i64 0, i32 7 - %tmp1 = bitcast i8** %codec_setup to %struct.codec_setup_info.59.242.425.730.791.974.1096.1157.1218.2855.2992.13.63.88.113.138.792** - %tmp2 = load %struct.codec_setup_info.59.242.425.730.791.974.1096.1157.1218.2855.2992.13.63.88.113.138.792*, %struct.codec_setup_info.59.242.425.730.791.974.1096.1157.1218.2855.2992.13.63.88.113.138.792** %tmp1, align 8 - %backend_state = getelementptr inbounds %struct.vorbis_dsp_state.29.212.395.700.761.944.1066.1127.1188.2825.2980.1.51.76.101.126.780, %struct.vorbis_dsp_state.29.212.395.700.761.944.1066.1127.1188.2825.2980.1.51.76.101.126.780* %v, i64 0, i32 19 - %tmp3 = bitcast i8** %backend_state to %struct.private_state.60.243.426.731.792.975.1097.1158.1219.2856.3003.24.74.99.124.149.803** - %tmp4 = load %struct.private_state.60.243.426.731.792.975.1097.1158.1219.2856.3003.24.74.99.124.149.803*, %struct.private_state.60.243.426.731.792.975.1097.1158.1219.2856.3003.24.74.99.124.149.803** %tmp3, align 8 + %vi1 = getelementptr inbounds %struct.vorbis_dsp_state.29.212.395.700.761.944.1066.1127.1188.2825.2980.1.51.76.101.126.780, ptr %v, i64 0, i32 1 + %tmp = load ptr, ptr %vi1, align 8 + %codec_setup = getelementptr inbounds %struct.vorbis_info.28.211.394.699.760.943.1065.1126.1187.2824.2979.0.50.75.100.125.779, ptr %tmp, i64 0, i32 7 + %tmp2 = load ptr, ptr %codec_setup, align 8 + %backend_state = getelementptr inbounds %struct.vorbis_dsp_state.29.212.395.700.761.944.1066.1127.1188.2825.2980.1.51.76.101.126.780, ptr %v, i64 0, i32 19 + %tmp4 = load ptr, ptr %backend_state, align 8 br i1 false, label %cleanup, label %if.end if.end: ; preds = %entry.split - %sample_count = getelementptr inbounds %struct.private_state.60.243.426.731.792.975.1097.1158.1219.2856.3003.24.74.99.124.149.803, %struct.private_state.60.243.426.731.792.975.1097.1158.1219.2856.3003.24.74.99.124.149.803* %tmp4, i64 0, i32 13 - store i64 -1, i64* %sample_count, align 8 + %sample_count = getelementptr inbounds %struct.private_state.60.243.426.731.792.975.1097.1158.1219.2856.3003.24.74.99.124.149.803, ptr %tmp4, i64 0, i32 13 + store i64 -1, ptr %sample_count, align 8 br label %cleanup cleanup: ; preds = %if.end, %entry.split diff --git a/polly/test/ScopInfo/invariant-load-instlist.ll b/polly/test/ScopInfo/invariant-load-instlist.ll index f1c6332679d5..7f4cf050f064 100644 --- a/polly/test/ScopInfo/invariant-load-instlist.ll +++ b/polly/test/ScopInfo/invariant-load-instlist.ll @@ -8,8 +8,8 @@ target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16 target triple = "x86_64-pc-windows-msvc19.27.29112" @b = external dso_local global i32, align 4 -@c = external dso_local global i32*, align 8 -@a = external dso_local local_unnamed_addr global i32**, align 8 +@c = external dso_local global ptr, align 8 +@a = external dso_local local_unnamed_addr global ptr, align 8 define void @func() { for.cond1.preheader.preheader: @@ -19,10 +19,10 @@ for.end12: br i1 undef, label %for.end12.1, label %for.end12 for.end12.1: - %0 = phi i32* [ %1, %for.end12.1 ], [ undef, %for.end12 ] + %0 = phi ptr [ %1, %for.end12.1 ], [ undef, %for.end12 ] %storemerge26.1 = phi i32 [ %inc14.1, %for.end12.1 ], [ 0, %for.end12 ] - %1 = load i32*, i32** @c, align 8 - store i32 0, i32* %1, align 4 + %1 = load ptr, ptr @c, align 8 + store i32 0, ptr %1, align 4 %inc14.1 = add nuw nsw i32 %storemerge26.1, 1 %exitcond.1.not = icmp eq i32 %inc14.1, 35 br i1 %exitcond.1.not, label %for.inc16.1, label %for.end12.1 diff --git a/polly/test/ScopInfo/invariant-loads-leave-read-only-statements.ll b/polly/test/ScopInfo/invariant-loads-leave-read-only-statements.ll index 964e9556defb..b97fe22e076e 100644 --- a/polly/test/ScopInfo/invariant-loads-leave-read-only-statements.ll +++ b/polly/test/ScopInfo/invariant-loads-leave-read-only-statements.ll @@ -19,33 +19,27 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%jl_value_t = type { %jl_value_t* } +%jl_value_t = type { ptr } -define %jl_value_t* @julia_gemm_22583(%jl_value_t*, %jl_value_t** %tmp1, i32) { +define ptr @julia_gemm_22583(ptr, ptr %tmp1, i32) { top: br label %top.split top.split: ; preds = %top - %tmp3 = load %jl_value_t*, %jl_value_t** %tmp1, align 8 - %tmp4 = bitcast %jl_value_t* %tmp3 to double** - %tmp5 = load double*, double** %tmp4, align 8 - %tmp6 = getelementptr inbounds %jl_value_t, %jl_value_t* %tmp3, i64 3, i32 0 - %tmp7 = bitcast %jl_value_t** %tmp6 to i64* - %tmp8 = load i64, i64* %tmp7, align 8 - %tmp9 = getelementptr %jl_value_t*, %jl_value_t** %tmp1, i64 1 - %tmp10 = load %jl_value_t*, %jl_value_t** %tmp9, align 8 - %tmp11 = bitcast %jl_value_t* %tmp10 to double** - %tmp12 = load double*, double** %tmp11, align 8 - %tmp13 = getelementptr inbounds %jl_value_t, %jl_value_t* %tmp10, i64 3, i32 0 - %tmp14 = bitcast %jl_value_t** %tmp13 to i64* - %tmp15 = load i64, i64* %tmp14, align 8 - %tmp16 = getelementptr %jl_value_t*, %jl_value_t** %tmp1, i64 2 - %tmp17 = load %jl_value_t*, %jl_value_t** %tmp16, align 8 - %tmp18 = bitcast %jl_value_t* %tmp17 to double** - %tmp19 = load double*, double** %tmp18, align 8 - %tmp20 = getelementptr inbounds %jl_value_t, %jl_value_t* %tmp17, i64 3, i32 0 - %tmp21 = bitcast %jl_value_t** %tmp20 to i64* - %tmp22 = load i64, i64* %tmp21, align 8 + %tmp3 = load ptr, ptr %tmp1, align 8 + %tmp5 = load ptr, ptr %tmp3, align 8 + %tmp6 = getelementptr inbounds %jl_value_t, ptr %tmp3, i64 3, i32 0 + %tmp8 = load i64, ptr %tmp6, align 8 + %tmp9 = getelementptr ptr, ptr %tmp1, i64 1 + %tmp10 = load ptr, ptr %tmp9, align 8 + %tmp12 = load ptr, ptr %tmp10, align 8 + %tmp13 = getelementptr inbounds %jl_value_t, ptr %tmp10, i64 3, i32 0 + %tmp15 = load i64, ptr %tmp13, align 8 + %tmp16 = getelementptr ptr, ptr %tmp1, i64 2 + %tmp17 = load ptr, ptr %tmp16, align 8 + %tmp19 = load ptr, ptr %tmp17, align 8 + %tmp20 = getelementptr inbounds %jl_value_t, ptr %tmp17, i64 3, i32 0 + %tmp22 = load i64, ptr %tmp20, align 8 %tmp23 = icmp sgt i64 %tmp8, 0 %tmp24 = select i1 %tmp23, i64 %tmp8, i64 0 %tmp25 = add i64 %tmp24, 1 @@ -78,20 +72,20 @@ L.4: ; preds = %L.4.preheader, %L.4 %tmp31 = add i64 %"#s4.0", -1 %tmp32 = mul i64 %tmp31, %tmp22 %tmp33 = add i64 %tmp32, %tmp30 - %tmp34 = getelementptr double, double* %tmp19, i64 %tmp33 - %tmp35 = load double, double* %tmp34, align 8 + %tmp34 = getelementptr double, ptr %tmp19, i64 %tmp33 + %tmp35 = load double, ptr %tmp34, align 8 %tmp36 = add i64 %"#s3.0", -1 %tmp37 = mul i64 %tmp36, %tmp8 %tmp38 = add i64 %tmp37, %tmp30 - %tmp39 = getelementptr double, double* %tmp5, i64 %tmp38 - %tmp40 = load double, double* %tmp39, align 8 + %tmp39 = getelementptr double, ptr %tmp5, i64 %tmp38 + %tmp40 = load double, ptr %tmp39, align 8 %tmp41 = mul i64 %tmp36, %tmp15 %tmp42 = add i64 %tmp41, %tmp31 - %tmp43 = getelementptr double, double* %tmp12, i64 %tmp42 - %tmp44 = load double, double* %tmp43, align 8 + %tmp43 = getelementptr double, ptr %tmp12, i64 %tmp42 + %tmp44 = load double, ptr %tmp43, align 8 %tmp45 = fmul double %tmp40, %tmp44 %tmp46 = fadd double %tmp35, %tmp45 - store double %tmp46, double* %tmp34, align 8 + store double %tmp46, ptr %tmp34, align 8 %tmp47 = icmp eq i64 %tmp29, %tmp25 br i1 %tmp47, label %L.7.loopexit, label %L.4 @@ -113,5 +107,5 @@ L.11.loopexit: ; preds = %L.9 br label %L.11 L.11: ; preds = %L.11.loopexit, %top.split - ret %jl_value_t* inttoptr (i64 140220477440016 to %jl_value_t*) + ret ptr inttoptr (i64 140220477440016 to ptr) } diff --git a/polly/test/ScopInfo/invariant_load.ll b/polly/test/ScopInfo/invariant_load.ll index 892e40380f6f..fcea77e19b85 100644 --- a/polly/test/ScopInfo/invariant_load.ll +++ b/polly/test/ScopInfo/invariant_load.ll @@ -11,7 +11,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* noalias %A, i32* noalias %B) { +define void @f(ptr noalias %A, ptr noalias %B) { bb: br label %bb1 @@ -21,9 +21,9 @@ bb1: ; preds = %bb4, %bb br i1 %exitcond, label %bb2, label %bb5 bb2: ; preds = %bb1 - %tmp = load i32, i32* %B, align 4 - %tmp3 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp, i32* %tmp3, align 4 + %tmp = load i32, ptr %B, align 4 + %tmp3 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp, ptr %tmp3, align 4 br label %bb4 bb4: ; preds = %bb2 diff --git a/polly/test/ScopInfo/invariant_load_access_classes_different_base_type_same_pointer.ll b/polly/test/ScopInfo/invariant_load_access_classes_different_base_type_same_pointer.ll index 2fd67c80746b..bbf6d69a5fbb 100644 --- a/polly/test/ScopInfo/invariant_load_access_classes_different_base_type_same_pointer.ll +++ b/polly/test/ScopInfo/invariant_load_access_classes_different_base_type_same_pointer.ll @@ -32,10 +32,10 @@ ; CODEGEN: br label %polly.split_new_and_old ; ; CODEGEN: polly.preload.begin: -; CODEGEN-DAG: %U.load[[f:[.0-9]*]] = load float, float* bitcast (i32* @U to float*) -; CODEGEN-DAG: store float %U.load[[f]], float* %U.f.preload.s2a -; CODEGEN-DAG: %U.load[[i:[.0-9]*]] = load i32, i32* @U -; CODEGEN-DAG: store i32 %U.load[[i]], i32* %U.i.preload.s2a +; CODEGEN-DAG: %U.load[[f:[.0-9]*]] = load float, ptr @U +; CODEGEN-DAG: store float %U.load[[f]], ptr %U.f.preload.s2a +; CODEGEN-DAG: %U.load[[i:[.0-9]*]] = load i32, ptr @U +; CODEGEN-DAG: store i32 %U.load[[i]], ptr %U.i.preload.s2a ; ; CODEGEN: polly.merge_new_and_old: ; CODEGEN-NOT: merge = phi @@ -50,7 +50,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @U = common global i32 0, align 4 -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %for.cond @@ -60,13 +60,12 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %U.i = load i32, i32* @U, align 4 - %U.cast = bitcast i32 *@U to float* - %U.f = load float, float* %U.cast, align 4 + %U.i = load i32, ptr @U, align 4 + %U.f = load float, ptr @U, align 4 %conv = fptosi float %U.f to i32 %add = add nsw i32 %U.i, %conv - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %add, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %add, 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_same_pointer_escaping.ll b/polly/test/ScopInfo/invariant_load_access_classes_different_base_type_same_pointer_escaping.ll index 7fbf7f7d27eb..011c2fe3d549 100644 --- a/polly/test/ScopInfo/invariant_load_access_classes_different_base_type_same_pointer_escaping.ll +++ b/polly/test/ScopInfo/invariant_load_access_classes_different_base_type_same_pointer_escaping.ll @@ -37,18 +37,18 @@ ; CODEGEN: br label %polly.split_new_and_old ; ; CODEGEN: polly.preload.begin: -; CODEGEN-DAG: %U.load[[f:[.0-9]*]] = load float, float* bitcast (i32* @U to float*) -; CODEGEN-DAG: store float %U.load[[f]], float* %U.f.preload.s2a -; CODEGEN-DAG: %U.load[[i:[.0-9]*]] = load i32, i32* @U -; CODEGEN-DAG: store i32 %U.load[[i]], i32* %U.i.preload.s2a +; CODEGEN-DAG: %U.load[[f:[.0-9]*]] = load float, ptr @U +; CODEGEN-DAG: store float %U.load[[f]], ptr %U.f.preload.s2a +; CODEGEN-DAG: %U.load[[i:[.0-9]*]] = load i32, ptr @U +; CODEGEN-DAG: store i32 %U.load[[i]], ptr %U.i.preload.s2a ; ; CODEGEN: polly.merge_new_and_old: ; CODEGEN-DAG: %U.f.merge = phi float [ %U.f.final_reload, %polly.exiting ], [ %U.f, %do.cond ] ; CODEGEN-DAG: %U.i.merge = phi i32 [ %U.i.final_reload, %polly.exiting ], [ %U.i, %do.cond ] ; ; CODEGEN: polly.loop_exit: -; CODEGEN-DAG: %U.f.final_reload = load float, float* %U.f.preload.s2a -; CODEGEN-DAG: %U.i.final_reload = load i32, i32* %U.i.preload.s2a +; CODEGEN-DAG: %U.f.final_reload = load float, ptr %U.f.preload.s2a +; CODEGEN-DAG: %U.i.final_reload = load i32, ptr %U.i.preload.s2a ; ; CODEGEN: polly.stmt.do.body: ; CODEGEN: %p_add = add nsw i32 %U.load[[i]], %p_conv @@ -57,19 +57,18 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @U = common global i32 0, align 4 -define i32 @f(i32* %A) { +define i32 @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 ] - %U.i = load i32, i32* @U, align 4 - %U.cast = bitcast i32 *@U to float* - %U.f = load float, float* %U.cast, align 4 + %U.i = load i32, ptr @U, align 4 + %U.f = load float, ptr @U, align 4 %conv = fptosi float %U.f to i32 %add = add nsw i32 %U.i, %conv - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %add, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %add, ptr %arrayidx, align 4 br label %do.cond do.cond: ; preds = %do.body diff --git a/polly/test/ScopInfo/invariant_load_addrec_sum.ll b/polly/test/ScopInfo/invariant_load_addrec_sum.ll index f5712770ad64..09b158d342ed 100644 --- a/polly/test/ScopInfo/invariant_load_addrec_sum.ll +++ b/polly/test/ScopInfo/invariant_load_addrec_sum.ll @@ -13,7 +13,7 @@ ; CHECK: [y, p_1_loaded_from_j] -> { Stmt_for_body[i0] -> MemRef_p[p_1_loaded_from_j + i0] }; -define void @a(i32 %y, i32* nocapture %p, i32* nocapture readonly %j) local_unnamed_addr #0 { +define void @a(i32 %y, ptr nocapture %p, ptr nocapture readonly %j) local_unnamed_addr #0 { entry: br label %entry.split @@ -23,11 +23,11 @@ entry.split: for.body: %i.024 = phi i32 [ %inc, %for.body ], [ 0, %entry.split ] - %0 = load i32, i32* %j, align 4 + %0 = load i32, ptr %j, align 4 %add = add nsw i32 %0, %i.024 %idxprom = sext i32 %add to i64 - %arrayidx = getelementptr inbounds i32, i32* %p, i64 %idxprom - store i32 %i.024, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %p, i64 %idxprom + store i32 %i.024, ptr %arrayidx, align 4 %inc = add nuw nsw i32 %i.024, 1 %exitcond26 = icmp eq i32 %inc, 10000 br i1 %exitcond26, label %if.end, label %for.body @@ -35,11 +35,11 @@ for.body: for.body5: %i1.023 = phi i32 [ %inc10, %for.body5 ], [ 0, %entry.split ] %mul = shl nsw i32 %i1.023, 1 - %1 = load i32, i32* %j, align 4 + %1 = load i32, ptr %j, align 4 %add6 = add nsw i32 %1, %i1.023 %idxprom7 = sext i32 %add6 to i64 - %arrayidx8 = getelementptr inbounds i32, i32* %p, i64 %idxprom7 - store i32 %mul, i32* %arrayidx8, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %p, i64 %idxprom7 + store i32 %mul, ptr %arrayidx8, align 4 %inc10 = add nuw nsw i32 %i1.023, 1 %exitcond = icmp eq i32 %inc10, 10000 br i1 %exitcond, label %if.end, label %for.body5 diff --git a/polly/test/ScopInfo/invariant_load_base_pointer.ll b/polly/test/ScopInfo/invariant_load_base_pointer.ll index edc4b7880f8d..ddf11d892adb 100644 --- a/polly/test/ScopInfo/invariant_load_base_pointer.ll +++ b/polly/test/ScopInfo/invariant_load_base_pointer.ll @@ -11,7 +11,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32** %BPLoc) { +define void @f(ptr %BPLoc) { bb: br label %bb1 @@ -21,9 +21,9 @@ bb1: ; preds = %bb4, %bb br i1 %exitcond, label %bb2, label %bb5 bb2: ; preds = %bb1 - %tmp = load i32*, i32** %BPLoc, align 8 - %tmp3 = getelementptr inbounds i32, i32* %tmp, i64 %indvars.iv - store i32 0, i32* %tmp3, align 4 + %tmp = load ptr, ptr %BPLoc, align 8 + %tmp3 = getelementptr inbounds i32, ptr %tmp, i64 %indvars.iv + store i32 0, ptr %tmp3, align 4 br label %bb4 bb4: ; preds = %bb2 diff --git a/polly/test/ScopInfo/invariant_load_base_pointer_conditional.ll b/polly/test/ScopInfo/invariant_load_base_pointer_conditional.ll index 863724664ef8..07f2c3768b0a 100644 --- a/polly/test/ScopInfo/invariant_load_base_pointer_conditional.ll +++ b/polly/test/ScopInfo/invariant_load_base_pointer_conditional.ll @@ -14,7 +14,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32** %BPLoc, i32* %A, i32 %N) { +define void @f(ptr %BPLoc, ptr %A, i32 %N) { bb: %tmp = sext i32 %N to i64 br label %bb1 @@ -29,14 +29,14 @@ bb3: ; preds = %bb1 br i1 %tmp4, label %bb5, label %bb8 bb5: ; preds = %bb3 - %tmp6 = load i32*, i32** %BPLoc, align 8 - %tmp7 = getelementptr inbounds i32, i32* %tmp6, i64 %indvars.iv - store i32 0, i32* %tmp7, align 4 + %tmp6 = load ptr, ptr %BPLoc, align 8 + %tmp7 = getelementptr inbounds i32, ptr %tmp6, i64 %indvars.iv + store i32 0, ptr %tmp7, align 4 br label %bb10 bb8: ; preds = %bb3 - %tmp9 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 0, i32* %tmp9, align 4 + %tmp9 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 0, ptr %tmp9, align 4 br label %bb10 bb10: ; preds = %bb8, %bb5 diff --git a/polly/test/ScopInfo/invariant_load_base_pointer_in_conditional.ll b/polly/test/ScopInfo/invariant_load_base_pointer_in_conditional.ll index ba6c905347b8..d66d718d492a 100644 --- a/polly/test/ScopInfo/invariant_load_base_pointer_in_conditional.ll +++ b/polly/test/ScopInfo/invariant_load_base_pointer_in_conditional.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %BP, i32* %A, i32 %N) { +define void @f(ptr %BP, ptr %A, i32 %N) { bb: %tmp = sext i32 %N to i64 br label %bb1 @@ -30,14 +30,14 @@ bb3: ; preds = %bb1 br i1 %tmp4, label %bb5, label %bb8 bb5: ; preds = %bb3 - %tmp9a = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %inv = load i32, i32 *%BP - store i32 %inv, i32* %tmp9a, align 4 + %tmp9a = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %inv = load i32, ptr %BP + store i32 %inv, ptr %tmp9a, align 4 br label %bb10 bb8: ; preds = %bb3 - %tmp9b = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 0, i32* %tmp9b, align 4 + %tmp9b = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 0, ptr %tmp9b, align 4 br label %bb10 bb10: ; preds = %bb8, %bb5 diff --git a/polly/test/ScopInfo/invariant_load_branch_condition.ll b/polly/test/ScopInfo/invariant_load_branch_condition.ll index 0e75d5c2b739..4f49d2969d86 100644 --- a/polly/test/ScopInfo/invariant_load_branch_condition.ll +++ b/polly/test/ScopInfo/invariant_load_branch_condition.ll @@ -24,21 +24,21 @@ ; CHECK-NEXT: [val] -> { Stmt_loop[i0] -> MemRef_X[0] }; ; CHECK-NEXT: } -define void @foo(i1* %ptr, float* %X) { +define void @foo(ptr %ptr, ptr %X) { entry: br label %next next: - %val = load i1, i1* %ptr + %val = load i1, ptr %ptr br i1 %val, label %a, label %loop a: - store float 1.0, float* %X + store float 1.0, ptr %X br label %merge loop: %indvar = phi i64 [0, %next], [%indvar.next, %loop] - store float 1.0, float* %X + store float 1.0, ptr %X %indvar.next = add nsw i64 %indvar, 1 %cmp = icmp sle i64 %indvar, 1024 br i1 %cmp, label %loop, label %merge diff --git a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs.ll b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs.ll index 905cf47610bd..c6a7faf2e355 100644 --- a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs.ll +++ b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs.ll @@ -17,7 +17,7 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_body2[i0] -> MemRef_baseB[0] }; -define void @foo(float** %A) { +define void @foo(ptr %A) { start: br label %loop @@ -28,13 +28,13 @@ loop: br i1 %icmp, label %body1, label %exit body1: - %baseA = load float*, float** %A - store float 42.0, float* %baseA + %baseA = load ptr, ptr %A + store float 42.0, ptr %baseA br label %body2 body2: - %baseB = load float*, float** %A - store float 42.0, float* %baseB + %baseB = load ptr, ptr %A + store float 42.0, ptr %baseB br label %latch latch: diff --git a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_2.ll b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_2.ll index abcc6e0e1e65..921dd4fbde5c 100644 --- a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_2.ll +++ b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_2.ll @@ -47,7 +47,7 @@ ; CHECK-NEXT: { Stmt_body4[i0] -> MemRef_ptr[] }; ; CHECK-NEXT: } -define void @foo(float** %A, float** %X) { +define void @foo(ptr %A, ptr %X) { start: br label %loop @@ -58,28 +58,28 @@ loop: br i1 %icmp, label %body0, label %exit body0: - %ptr = load float*, float** %A - store float* %ptr, float** %X + %ptr = load ptr, ptr %A + store ptr %ptr, ptr %X br label %body1 body1: - %baseA = load float*, float** %A - store float 42.0, float* %baseA + %baseA = load ptr, ptr %A + store float 42.0, ptr %baseA br label %body2 body2: - %ptr2 = load float*, float** %A - store float* %ptr, float** %X + %ptr2 = load ptr, ptr %A + store ptr %ptr, ptr %X br label %body3 body3: - %baseB = load float*, float** %A - store float 42.0, float* %baseB + %baseB = load ptr, ptr %A + store float 42.0, ptr %baseB br label %body4 body4: - %ptr3 = load float*, float** %A - store float* %ptr, float** %X + %ptr3 = load ptr, ptr %A + store ptr %ptr, ptr %X br label %latch latch: diff --git a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_3.ll b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_3.ll index c0310325b705..c15d11ca865d 100644 --- a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_3.ll +++ b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_3.ll @@ -28,7 +28,7 @@ ; CHECK-NEXT: { Stmt_body2[i0] -> MemRef_baseB[0] }; -define void @foo(float** %A) { +define void @foo(ptr %A) { start: br label %loop @@ -39,14 +39,14 @@ loop: br i1 %icmp, label %body1, label %exit body1: - %baseA = load float*, float** %A - store float 42.0, float* %baseA + %baseA = load ptr, ptr %A + store float 42.0, ptr %baseA %cmp = icmp slt i64 %indvar.next, 512 br i1 %cmp, label %body2, label %latch body2: - %baseB = load float*, float** %A - store float 42.0, float* %baseB + %baseB = load ptr, ptr %A + store float 42.0, ptr %baseB br label %latch latch: diff --git a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_4.ll b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_4.ll index 0a454992d1ba..0495a330792c 100644 --- a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_4.ll +++ b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_4.ll @@ -22,7 +22,7 @@ ; CHECK-NEXT: } -define void @foo(float** %A, i64 %n, i64 %m) { +define void @foo(ptr %A, i64 %n, i64 %m) { start: br label %loop @@ -33,16 +33,16 @@ loop: br i1 %icmp, label %body1, label %exit body1: - %baseB = load float*, float** %A - store float 42.0, float* %baseB + %baseB = load ptr, ptr %A + store float 42.0, ptr %baseB br label %body2 body2: - %baseA = load float*, float** %A + %baseA = load ptr, ptr %A %offsetA = mul i64 %indvar, %n %offsetA2 = add i64 %offsetA, %indvar - %ptrA = getelementptr float, float* %baseA, i64 %offsetA2 - store float 42.0, float* %ptrA + %ptrA = getelementptr float, ptr %baseA, i64 %offsetA2 + store float 42.0, ptr %ptrA br label %latch latch: diff --git a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_4b.ll b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_4b.ll index 3734527f7323..9144fcf186c3 100644 --- a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_4b.ll +++ b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_4b.ll @@ -20,7 +20,7 @@ ; CHECK-NEXT: [m, n] -> { Stmt_body2[i0] -> MemRef_baseA[i0, i0] }; ; CHECK-NEXT: } -define void @foo(float** %A, i64 %n, i64 %m) { +define void @foo(ptr %A, i64 %n, i64 %m) { start: br label %loop @@ -31,19 +31,19 @@ loop: br i1 %icmp, label %body1, label %exit body1: - %baseB = load float*, float** %A + %baseB = load ptr, ptr %A %offsetB = mul i64 %indvar, %m %offsetB2 = add i64 %offsetB, %indvar - %ptrB = getelementptr float, float* %baseB, i64 %offsetB2 - store float 42.0, float* %ptrB + %ptrB = getelementptr float, ptr %baseB, i64 %offsetB2 + store float 42.0, ptr %ptrB br label %body2 body2: - %baseA = load float*, float** %A + %baseA = load ptr, ptr %A %offsetA = mul i64 %indvar, %n %offsetA2 = add i64 %offsetA, %indvar - %ptrA = getelementptr float, float* %baseA, i64 %offsetA2 - store float 42.0, float* %ptrA + %ptrA = getelementptr float, ptr %baseA, i64 %offsetA2 + store float 42.0, ptr %ptrA br label %latch latch: diff --git a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_4c.ll b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_4c.ll index 7fa375d6c1d2..aefacff6b46f 100644 --- a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_4c.ll +++ b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_4c.ll @@ -21,7 +21,7 @@ ; CHECK-NEXT: { Stmt_body2[i0] -> MemRef_baseA[0] }; ; CHECK-NEXT: } -define void @foo(float** %A, i64 %n, i64 %m) { +define void @foo(ptr %A, i64 %n, i64 %m) { start: br label %loop @@ -32,14 +32,13 @@ loop: br i1 %icmp, label %body1, label %exit body1: - %baseB = load float*, float** %A - store float 42.0, float* %baseB + %baseB = load ptr, ptr %A + store float 42.0, ptr %baseB br label %body2 body2: - %baseA = load float*, float** %A - %ptrcast = bitcast float* %baseA to i64* - store i64 42, i64* %ptrcast + %baseA = load ptr, ptr %A + store i64 42, ptr %baseA br label %latch latch: diff --git a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_5.ll b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_5.ll index d137b919bf50..ecc0c0a23014 100644 --- a/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_5.ll +++ b/polly/test/ScopInfo/invariant_load_canonicalize_array_baseptrs_5.ll @@ -42,7 +42,7 @@ ; CHECK-NEXT: { Stmt_body2[i0] -> MemRef_baseA2[0] }; ; CHECK-NEXT: } -define void @foo(float** %A, float* %B) { +define void @foo(ptr %A, ptr %B) { start: br label %loop @@ -53,17 +53,17 @@ loop: br i1 %icmp, label %body1, label %exit body1: - %baseA1 = load float*, float** %A - %ptr = getelementptr inbounds float, float* %baseA1, i64 %indvar - %v0 = load float, float* %ptr - %v1 = load float, float* %baseA1 - store float %v0, float* %B - store float %v1, float* %B + %baseA1 = load ptr, ptr %A + %ptr = getelementptr inbounds float, ptr %baseA1, i64 %indvar + %v0 = load float, ptr %ptr + %v1 = load float, ptr %baseA1 + store float %v0, ptr %B + store float %v1, ptr %B br label %body2 body2: - %baseA2 = load float*, float** %A - store float undef, float* %baseA2 + %baseA2 = load ptr, ptr %A + store float undef, ptr %baseA2 br label %body3 body3: diff --git a/polly/test/ScopInfo/invariant_load_complex_condition.ll b/polly/test/ScopInfo/invariant_load_complex_condition.ll index 7149b50a1d20..e721c222db5f 100644 --- a/polly/test/ScopInfo/invariant_load_complex_condition.ll +++ b/polly/test/ScopInfo/invariant_load_complex_condition.ll @@ -3,7 +3,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.IP = type { i32****, i32***, %struct.P, %struct.S, %struct.m } +%struct.IP = type { ptr, ptr, %struct.P, %struct.S, %struct.m } %struct.P = type { i32 } %struct.S = type { i32 } %struct.D = type { i32 } @@ -32,7 +32,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; CHECK-NEXT: [block_y, block_x] -> { Stmt_entry_split[] -> MemRef0[] }; ; CHECK-NEXT: } -@img = external global %struct.IP*, align 8 +@img = external global ptr, align 8 ; Function Attrs: nounwind uwtable define void @dct_luma(i32 %block_x, i32 %block_y) #0 { @@ -47,15 +47,13 @@ entry.split: ; preds = %entry %rem5 = srem i32 %div, 2 %add6 = add nsw i32 %mul4, %rem5 %idxprom = sext i32 %add6 to i64 - %0 = load %struct.IP*, %struct.IP** @img, align 8 - %cofAC = getelementptr inbounds %struct.IP, %struct.IP* %0, i32 0, i32 0 - %1 = load i32****, i32***** %cofAC, align 8 - %arrayidx = getelementptr inbounds i32***, i32**** %1, i64 0 - %2 = load i32***, i32**** %arrayidx, align 8 - %arrayidx8 = getelementptr inbounds i32**, i32*** %2, i64 %idxprom - %3 = load i32**, i32*** %arrayidx8, align 8 - %mb_data = getelementptr inbounds %struct.IP, %struct.IP* %0, i64 0, i32 4 - %4 = load %struct.m, %struct.m* %mb_data, align 8 + %0 = load ptr, ptr @img, align 8 + %1 = load ptr, ptr %0, align 8 + %2 = load ptr, ptr %1, align 8 + %arrayidx8 = getelementptr inbounds ptr, ptr %2, i64 %idxprom + %3 = load ptr, ptr %arrayidx8, align 8 + %mb_data = getelementptr inbounds %struct.IP, ptr %0, i64 0, i32 4 + %4 = load %struct.m, ptr %mb_data, align 8 br i1 false, label %land.rhs, label %land.end land.rhs: ; preds = %entry.split diff --git a/polly/test/ScopInfo/invariant_load_condition.ll b/polly/test/ScopInfo/invariant_load_condition.ll index 5992bec42b30..84546984709e 100644 --- a/polly/test/ScopInfo/invariant_load_condition.ll +++ b/polly/test/ScopInfo/invariant_load_condition.ll @@ -12,7 +12,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %C) { +define void @f(ptr %A, ptr %C) { bb: br label %bb1 @@ -22,13 +22,13 @@ bb1: ; preds = %bb7, %bb br i1 %exitcond, label %bb2, label %bb8 bb2: ; preds = %bb1 - %tmp = load i32, i32* %C, align 4 + %tmp = load i32, ptr %C, align 4 %tmp3 = icmp eq i32 %tmp, 0 br i1 %tmp3, label %bb6, label %bb4 bb4: ; preds = %bb2 - %tmp5 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 0, i32* %tmp5, align 4 + %tmp5 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 0, ptr %tmp5, align 4 br label %bb6 bb6: ; preds = %bb2, %bb4 diff --git a/polly/test/ScopInfo/invariant_load_dereferenceable.ll b/polly/test/ScopInfo/invariant_load_dereferenceable.ll index a9f62fba1f88..adba32d8d463 100644 --- a/polly/test/ScopInfo/invariant_load_dereferenceable.ll +++ b/polly/test/ScopInfo/invariant_load_dereferenceable.ll @@ -17,7 +17,7 @@ ; CHECK-NOT: Function: foo_undereferanceable -define void @foo_dereferanceable(double* %A, double* %B, i64* dereferenceable(8) align 8 %sizeA_ptr, +define void @foo_dereferanceable(ptr %A, ptr %B, ptr dereferenceable(8) align 8 %sizeA_ptr, i32 %lb.i, i32 %lb.j, i32 %ub.i, i32 %ub.j) { entry: br label %for.i @@ -46,11 +46,11 @@ stmt: %sext.i = sext i32 %indvar.i to i64 %sext.j = sext i32 %indvar.j to i64 - %sizeA = load i64, i64* %sizeA_ptr + %sizeA = load i64, ptr %sizeA_ptr %prodA = mul i64 %sext.j, %sizeA %offsetA = add i64 %sext.i, %prodA - %ptrA = getelementptr double, double* %A, i64 %offsetA - store double 42.0, double* %ptrA + %ptrA = getelementptr double, ptr %A, i64 %offsetA + store double 42.0, ptr %ptrA br label %for.latch.j @@ -64,7 +64,7 @@ exit: ret void } -define void @foo_undereferanceable(double* %A, double* %B, i64* %sizeA_ptr) { +define void @foo_undereferanceable(ptr %A, ptr %B, ptr %sizeA_ptr) { entry: br label %for.i @@ -92,11 +92,11 @@ stmt: %sext.i = sext i32 %indvar.i to i64 %sext.j = sext i32 %indvar.j to i64 - %sizeA = load i64, i64* %sizeA_ptr + %sizeA = load i64, ptr %sizeA_ptr %prodA = mul i64 %sext.j, %sizeA %offsetA = add i64 %sext.i, %prodA - %ptrA = getelementptr double, double* %A, i64 %offsetA - store double 42.0, double* %ptrA + %ptrA = getelementptr double, ptr %A, i64 %offsetA + store double 42.0, ptr %ptrA br label %for.latch.j diff --git a/polly/test/ScopInfo/invariant_load_distinct_parameter_valuations.ll b/polly/test/ScopInfo/invariant_load_distinct_parameter_valuations.ll index e0944f70be34..60b4a1daa824 100644 --- a/polly/test/ScopInfo/invariant_load_distinct_parameter_valuations.ll +++ b/polly/test/ScopInfo/invariant_load_distinct_parameter_valuations.ll @@ -24,7 +24,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @encode_residual_fixed(i32* %res, i32* %smp, i32 %n, i32 %order) { +define void @encode_residual_fixed(ptr %res, ptr %smp, i32 %n, i32 %order) { bb: br label %.split @@ -37,12 +37,12 @@ bb: bb1: ; preds = %.split %tmp = add nsw i32 %order, -1 %tmp2 = sext i32 %tmp to i64 - %tmp3 = getelementptr inbounds i32, i32* %smp, i64 %tmp2 - %tmp4 = load i32, i32* %tmp3, align 4 + %tmp3 = getelementptr inbounds i32, ptr %smp, i64 %tmp2 + %tmp4 = load i32, ptr %tmp3, align 4 %tmp5 = add nsw i32 %order, -2 %tmp6 = sext i32 %tmp5 to i64 - %tmp7 = getelementptr inbounds i32, i32* %smp, i64 %tmp6 - %tmp8 = load i32, i32* %tmp7, align 4 + %tmp7 = getelementptr inbounds i32, ptr %smp, i64 %tmp6 + %tmp8 = load i32, ptr %tmp7, align 4 %tmp9 = sub nsw i32 %tmp4, %tmp8 %tmp10 = icmp slt i32 %order, %n br i1 %tmp10, label %.lr.ph, label %.loopexit @@ -54,8 +54,8 @@ bb1: ; preds = %.split bb12: ; preds = %bb12, %.lr.ph %indvars.iv = phi i64 [ %tmp11, %.lr.ph ], [ %indvars.iv.next, %bb12 ] %i.03 = phi i32 [ %order, %.lr.ph ], [ %tmp14, %bb12 ] - %tmp13 = getelementptr inbounds i32, i32* %res, i64 %indvars.iv - store i32 %tmp9, i32* %tmp13, align 4 + %tmp13 = getelementptr inbounds i32, ptr %res, i64 %indvars.iv + store i32 %tmp9, ptr %tmp13, align 4 %tmp14 = add nsw i32 %i.03, 2 %tmp15 = icmp slt i32 %tmp14, %n %indvars.iv.next = add nsw i64 %indvars.iv, 2 @@ -64,12 +64,12 @@ bb12: ; preds = %bb12, %.lr.ph bb16: ; preds = %.split %tmp17 = add nsw i32 %order, -1 %tmp18 = sext i32 %tmp17 to i64 - %tmp19 = getelementptr inbounds i32, i32* %smp, i64 %tmp18 - %tmp20 = load i32, i32* %tmp19, align 4 + %tmp19 = getelementptr inbounds i32, ptr %smp, i64 %tmp18 + %tmp20 = load i32, ptr %tmp19, align 4 %tmp21 = add nsw i32 %order, -2 %tmp22 = sext i32 %tmp21 to i64 - %tmp23 = getelementptr inbounds i32, i32* %smp, i64 %tmp22 - %tmp24 = load i32, i32* %tmp23, align 4 + %tmp23 = getelementptr inbounds i32, ptr %smp, i64 %tmp22 + %tmp24 = load i32, ptr %tmp23, align 4 %tmp25 = sub nsw i32 %tmp20, %tmp24 %tmp26 = icmp slt i32 %order, %n br i1 %tmp26, label %.lr.ph5, label %.loopexit2 @@ -81,8 +81,8 @@ bb16: ; preds = %.split bb28: ; preds = %bb28, %.lr.ph5 %indvars.iv6 = phi i64 [ %tmp27, %.lr.ph5 ], [ %indvars.iv.next7, %bb28 ] %i.14 = phi i32 [ %order, %.lr.ph5 ], [ %tmp30, %bb28 ] - %tmp29 = getelementptr inbounds i32, i32* %res, i64 %indvars.iv6 - store i32 %tmp25, i32* %tmp29, align 4 + %tmp29 = getelementptr inbounds i32, ptr %res, i64 %indvars.iv6 + store i32 %tmp25, ptr %tmp29, align 4 %tmp30 = add nsw i32 %i.14, 2 %tmp31 = icmp slt i32 %tmp30, %n %indvars.iv.next7 = add nsw i64 %indvars.iv6, 2 @@ -101,8 +101,8 @@ bb28: ; preds = %bb28, %.lr.ph5 br label %bb32 bb32: ; preds = %.loopexit2, %.loopexit, %.split - %tmp33 = getelementptr inbounds i32, i32* %res, i64 2 - %tmp34 = load i32, i32* %tmp33, align 4 + %tmp33 = getelementptr inbounds i32, ptr %res, i64 2 + %tmp34 = load i32, ptr %tmp33, align 4 %tmp35 = icmp eq i32 %tmp34, 5 br i1 %tmp35, label %bb37, label %bb36 diff --git a/polly/test/ScopInfo/invariant_load_in_non_affine.ll b/polly/test/ScopInfo/invariant_load_in_non_affine.ll index 410b7407f21c..d00bc2d642e0 100644 --- a/polly/test/ScopInfo/invariant_load_in_non_affine.ll +++ b/polly/test/ScopInfo/invariant_load_in_non_affine.ll @@ -12,7 +12,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A, float* %B, i64* %p) { +define void @foo(ptr %A, ptr %B, ptr %p) { bb: br label %bb2 @@ -30,21 +30,21 @@ bb4: ; preds = %bb18, %bb3 br i1 %exitcond, label %bb5, label %bb20 bb5: ; preds = %bb4 - %tmp = getelementptr inbounds float, float* %B, i64 %i.0 - %tmp6 = load float, float* %tmp, align 4 + %tmp = getelementptr inbounds float, ptr %B, i64 %i.0 + %tmp6 = load float, ptr %tmp, align 4 %tmp7 = fcmp une float %tmp6, 0.000000e+00 br i1 %tmp7, label %bb8, label %bb17 bb8: ; preds = %bb5 %tmp9 = mul nuw nsw i64 %i.0, %j.0 %tmp10 = sitofp i64 %tmp9 to float - %tmp11 = load i64, i64* %p, align 8 + %tmp11 = load i64, ptr %p, align 8 %tmp12 = mul nsw i64 %i.0, %tmp11 %tmp13 = add nsw i64 %tmp12, %j.0 - %tmp14 = getelementptr inbounds float, float* %A, i64 %tmp13 - %tmp15 = load float, float* %tmp14, align 4 + %tmp14 = getelementptr inbounds float, ptr %A, i64 %tmp13 + %tmp15 = load float, ptr %tmp14, align 4 %tmp16 = fadd float %tmp15, %tmp10 - store float %tmp16, float* %tmp14, align 4 + store float %tmp16, ptr %tmp14, align 4 br label %bb17 bb17: ; preds = %bb8, %bb5 diff --git a/polly/test/ScopInfo/invariant_load_loop_ub.ll b/polly/test/ScopInfo/invariant_load_loop_ub.ll index e8c4e6dc8d37..856b6e4dd508 100644 --- a/polly/test/ScopInfo/invariant_load_loop_ub.ll +++ b/polly/test/ScopInfo/invariant_load_loop_ub.ll @@ -12,20 +12,20 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %UB) { +define void @f(ptr %A, ptr %UB) { bb: br label %bb1 bb1: ; preds = %bb6, %bb %indvars.iv = phi i64 [ %indvars.iv.next, %bb6 ], [ 0, %bb ] - %tmp = load i32, i32* %UB, align 4 + %tmp = load i32, ptr %UB, align 4 %tmp2 = sext i32 %tmp to i64 %tmp3 = icmp slt i64 %indvars.iv, %tmp2 br i1 %tmp3, label %bb4, label %bb7 bb4: ; preds = %bb1 - %tmp5 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 0, i32* %tmp5, align 4 + %tmp5 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 0, ptr %tmp5, align 4 br label %bb6 bb6: ; preds = %bb4 diff --git a/polly/test/ScopInfo/invariant_load_ptr_ptr_noalias.ll b/polly/test/ScopInfo/invariant_load_ptr_ptr_noalias.ll index a588a5d9b994..69463d420aca 100644 --- a/polly/test/ScopInfo/invariant_load_ptr_ptr_noalias.ll +++ b/polly/test/ScopInfo/invariant_load_ptr_ptr_noalias.ll @@ -13,14 +13,14 @@ ; CHECK: } ; ; CHECK: Arrays { -; CHECK: i32** MemRef_A[*]; -; CHECK: i32* MemRef_tmp3[*]; [BasePtrOrigin: MemRef_A] +; CHECK: ptr MemRef_A[*]; +; CHECK: ptr MemRef_tmp3[*]; [BasePtrOrigin: MemRef_A] ; CHECK: i32 MemRef_tmp5[*]; [BasePtrOrigin: MemRef_tmp3] ; CHECK: } ; ; CHECK: Arrays (Bounds as pw_affs) { -; CHECK: i32** MemRef_A[*]; -; CHECK: i32* MemRef_tmp3[*]; [BasePtrOrigin: MemRef_A] +; CHECK: ptr MemRef_A[*]; +; CHECK: ptr MemRef_tmp3[*]; [BasePtrOrigin: MemRef_A] ; CHECK: i32 MemRef_tmp5[*]; [BasePtrOrigin: MemRef_tmp3] ; CHECK: } ; @@ -31,7 +31,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32*** %A) { +define void @f(ptr %A) { bb: br label %bb1 @@ -41,12 +41,12 @@ bb1: ; preds = %bb7, %bb br i1 %exitcond, label %bb2, label %bb8 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i32**, i32*** %A, i64 42 - %tmp3 = load i32**, i32*** %tmp, align 8 - %tmp4 = getelementptr inbounds i32*, i32** %tmp3, i64 32 - %tmp5 = load i32*, i32** %tmp4, align 8 - %tmp6 = getelementptr inbounds i32, i32* %tmp5, i64 %indvars.iv - store i32 0, i32* %tmp6, align 4 + %tmp = getelementptr inbounds ptr, ptr %A, i64 42 + %tmp3 = load ptr, ptr %tmp, align 8 + %tmp4 = getelementptr inbounds ptr, ptr %tmp3, i64 32 + %tmp5 = load ptr, ptr %tmp4, align 8 + %tmp6 = getelementptr inbounds i32, ptr %tmp5, i64 %indvars.iv + store i32 0, ptr %tmp6, align 4 br label %bb7 bb7: ; preds = %bb2 diff --git a/polly/test/ScopInfo/invariant_load_scalar_dep.ll b/polly/test/ScopInfo/invariant_load_scalar_dep.ll index 0feda0b13025..79a10426862a 100644 --- a/polly/test/ScopInfo/invariant_load_scalar_dep.ll +++ b/polly/test/ScopInfo/invariant_load_scalar_dep.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* noalias %A, i32* noalias %B) { +define void @f(ptr noalias %A, ptr noalias %B) { bb: br label %bb1 @@ -25,12 +25,12 @@ bb1: ; preds = %bb4, %bb br i1 %exitcond, label %bb2, label %bb5 bb2: ; preds = %bb1 - %tmp = load i32, i32* %B, align 4 + %tmp = load i32, ptr %B, align 4 br label %bb2b bb2b: - %tmp3 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp, i32* %tmp3, align 4 + %tmp3 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp, ptr %tmp3, align 4 br label %bb4 bb4: ; preds = %bb2 diff --git a/polly/test/ScopInfo/invariant_load_stmt_domain.ll b/polly/test/ScopInfo/invariant_load_stmt_domain.ll index 82d2dfdf9f67..6cd71c85ea2f 100644 --- a/polly/test/ScopInfo/invariant_load_stmt_domain.ll +++ b/polly/test/ScopInfo/invariant_load_stmt_domain.ll @@ -36,7 +36,7 @@ ; CHECK-NEXT: { Stmt_loop_next[i0] -> MemRef_val__phi[] }; ; CHECK-NEXT: } -define void @foo(float* %a, float* noalias %B) { +define void @foo(ptr %a, ptr noalias %B) { entry: br label %loop @@ -44,14 +44,14 @@ loop: %indvar = phi i64 [0, %entry], [%indvar.next, %loop.next] %val = phi float [1.0, %entry], [%a.val, %loop.next] %indvar.next = add nuw nsw i64 %indvar, 1 - %ptr = getelementptr float, float* %B, i64 %indvar - store float %val, float* %ptr + %ptr = getelementptr float, ptr %B, i64 %indvar + store float %val, ptr %ptr %icmp = icmp eq i64 %indvar.next, 2 br i1 %icmp, label %ret, label %loop.next loop.next: - %Aptr = getelementptr float, float* %a, i64 %indvar.next - %a.val = load float, float* %Aptr + %Aptr = getelementptr float, ptr %a, i64 %indvar.next + %a.val = load float, ptr %Aptr br label %loop ret: diff --git a/polly/test/ScopInfo/invariant_load_zext_parameter-2.ll b/polly/test/ScopInfo/invariant_load_zext_parameter-2.ll index 11d471036838..e77515280241 100644 --- a/polly/test/ScopInfo/invariant_load_zext_parameter-2.ll +++ b/polly/test/ScopInfo/invariant_load_zext_parameter-2.ll @@ -30,10 +30,10 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %I0, i32* %I1, i32* %I2, i32* %V, i64 %p0, i64 %p1, i64 %p2, i64 %p3) { +define void @f(ptr %I0, ptr %I1, ptr %I2, ptr %V, i64 %p0, i64 %p1, i64 %p2, i64 %p3) { entry: - %tmp = load i32, i32* %I1, align 4 - store i32 %tmp, i32* %V, align 4 + %tmp = load i32, ptr %I1, align 4 + store i32 %tmp, ptr %V, align 4 br label %for.cond for.cond: ; preds = %for.inc, %entry @@ -42,29 +42,29 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %tmp3 = load i32, i32* %I1, align 4 + %tmp3 = load i32, ptr %I1, align 4 %conv = sext i32 %tmp3 to i64 %mul = mul nsw i64 %conv, %p0 %conv1 = sext i32 %tmp3 to i64 %mul2 = mul nsw i64 %conv1, %p1 %add = add nsw i64 %mul, %mul2 - %arrayidx = getelementptr inbounds i32, i32* %I0, i64 %add - %tmp4 = load i32, i32* %arrayidx, align 4 - %arrayidx3 = getelementptr inbounds i32, i32* %V, i64 %indvars.iv1 - store i32 %tmp4, i32* %arrayidx3, align 4 - %tmp5 = load i32, i32* %I2, align 4 + %arrayidx = getelementptr inbounds i32, ptr %I0, i64 %add + %tmp4 = load i32, ptr %arrayidx, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %V, i64 %indvars.iv1 + store i32 %tmp4, ptr %arrayidx3, align 4 + %tmp5 = load i32, ptr %I2, align 4 %conv5 = sext i32 %tmp5 to i64 %mul6 = mul nsw i64 %conv5, %p0 - %arrayidx7 = getelementptr inbounds i32, i32* %I2, i64 1 - %tmp6 = load i32, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %I2, i64 1 + %tmp6 = load i32, ptr %arrayidx7, align 4 %conv8 = sext i32 %tmp6 to i64 %mul9 = mul nsw i64 %conv8, %p1 - %arrayidx10 = getelementptr inbounds i32, i32* %I2, i64 2 - %tmp7 = load i32, i32* %arrayidx10, align 4 + %arrayidx10 = getelementptr inbounds i32, ptr %I2, i64 2 + %tmp7 = load i32, ptr %arrayidx10, align 4 %conv11 = sext i32 %tmp7 to i64 %mul12 = mul nsw i64 %conv11, %p2 - %arrayidx13 = getelementptr inbounds i32, i32* %I2, i64 3 - %tmp8 = load i32, i32* %arrayidx13, align 4 + %arrayidx13 = getelementptr inbounds i32, ptr %I2, i64 3 + %tmp8 = load i32, ptr %arrayidx13, align 4 %conv14 = sext i32 %tmp8 to i64 %mul15 = mul nsw i64 %conv14, %p3 br label %do.body @@ -76,18 +76,18 @@ do.body: ; preds = %do.cond, %for.body if.then: ; preds = %do.body %add18 = add nsw i64 %mul6, %mul12 - %arrayidx19 = getelementptr inbounds i32, i32* %I1, i64 %add18 - %tmp9 = load i32, i32* %arrayidx19, align 4 - %arrayidx21 = getelementptr inbounds i32, i32* %V, i64 %indvars.iv1 - %tmp10 = load i32, i32* %arrayidx21, align 4 + %arrayidx19 = getelementptr inbounds i32, ptr %I1, i64 %add18 + %tmp9 = load i32, ptr %arrayidx19, align 4 + %arrayidx21 = getelementptr inbounds i32, ptr %V, i64 %indvars.iv1 + %tmp10 = load i32, ptr %arrayidx21, align 4 %add22 = add nsw i32 %tmp10, %tmp9 - store i32 %add22, i32* %arrayidx21, align 4 - %arrayidx23 = getelementptr inbounds i32, i32* %I1, i64 %add - %tmp11 = load i32, i32* %arrayidx23, align 4 - %arrayidx25 = getelementptr inbounds i32, i32* %V, i64 %indvars.iv1 - %tmp12 = load i32, i32* %arrayidx25, align 4 + store i32 %add22, ptr %arrayidx21, align 4 + %arrayidx23 = getelementptr inbounds i32, ptr %I1, i64 %add + %tmp11 = load i32, ptr %arrayidx23, align 4 + %arrayidx25 = getelementptr inbounds i32, ptr %V, i64 %indvars.iv1 + %tmp12 = load i32, ptr %arrayidx25, align 4 %add26 = add nsw i32 %tmp12, %tmp11 - store i32 %add26, i32* %arrayidx25, align 4 + store i32 %add26, ptr %arrayidx25, align 4 br label %if.end if.end: ; preds = %if.then, %do.body diff --git a/polly/test/ScopInfo/invariant_load_zextended_in_own_execution_context.ll b/polly/test/ScopInfo/invariant_load_zextended_in_own_execution_context.ll index 576e0bb586e5..775369e55c92 100644 --- a/polly/test/ScopInfo/invariant_load_zextended_in_own_execution_context.ll +++ b/polly/test/ScopInfo/invariant_load_zextended_in_own_execution_context.ll @@ -6,7 +6,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @currpc = external global i32, align 4 -@inbuff = external global i8*, align 8 +@inbuff = external global ptr, align 8 ; Function Attrs: uwtable define void @_Z13dotableswitchP9Classfile() { @@ -14,8 +14,8 @@ entry: br i1 undef, label %for.end, label %while.body while.body: ; preds = %while.body, %entry - store i8* undef, i8** @inbuff, align 8 - %0 = load i32, i32* @currpc, align 4 + store ptr undef, ptr @inbuff, align 8 + %0 = load i32, ptr @currpc, align 4 %rem = and i32 %0, 3 %tobool = icmp eq i32 %rem, 0 br i1 %tobool, label %while.end, label %while.body diff --git a/polly/test/ScopInfo/invariant_loads_complicated_dependences.ll b/polly/test/ScopInfo/invariant_loads_complicated_dependences.ll index a13344123dcf..1d54ccc69023 100644 --- a/polly/test/ScopInfo/invariant_loads_complicated_dependences.ll +++ b/polly/test/ScopInfo/invariant_loads_complicated_dependences.ll @@ -30,7 +30,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* noalias %A, i32* noalias %V, i32* noalias %U, i32* noalias %UBptr, i32* noalias %LBptr) { +define void @f(ptr noalias %A, ptr noalias %V, ptr noalias %U, ptr noalias %UBptr, ptr noalias %LBptr) { entry: br label %for.cond @@ -40,7 +40,7 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %LB = load i32, i32* %LBptr, align 4 + %LB = load i32, ptr %LBptr, align 4 br label %do.body do.body: ; preds = %do.cond, %for.body @@ -49,19 +49,19 @@ do.body: ; preds = %do.cond, %for.body br i1 %cmp1, label %if.then, label %if.else if.then: ; preds = %do.body - %tmp1 = load i32, i32* %V, align 4 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %tmp1 = load i32, ptr %V, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp2, %tmp1 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %if.end if.else: ; preds = %do.body - %tmp3 = load i32, i32* %U, align 4 - %arrayidx3 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp4 = load i32, i32* %arrayidx3, align 4 + %tmp3 = load i32, ptr %U, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp4 = load i32, ptr %arrayidx3, align 4 %add4 = add nsw i32 %tmp4, %tmp3 - store i32 %add4, i32* %arrayidx3, align 4 + store i32 %add4, ptr %arrayidx3, align 4 br label %if.end if.end: ; preds = %if.else, %if.then @@ -69,7 +69,7 @@ if.end: ; preds = %if.else, %if.then do.cond: ; preds = %if.end %inc = add nsw i32 %j.0, 1 - %UB = load i32, i32* %UBptr, align 4 + %UB = load i32, ptr %UBptr, align 4 %cmp5 = icmp slt i32 %j.0, %UB br i1 %cmp5, label %do.body, label %do.end diff --git a/polly/test/ScopInfo/invariant_loads_cyclic_dependences.ll b/polly/test/ScopInfo/invariant_loads_cyclic_dependences.ll index 658eb54db194..e97de0c936bc 100644 --- a/polly/test/ScopInfo/invariant_loads_cyclic_dependences.ll +++ b/polly/test/ScopInfo/invariant_loads_cyclic_dependences.ll @@ -22,7 +22,7 @@ ; target datalayout = "e-m:e-i32:64-f80:128-n8:16:32:64-S128" -define void @f(i32* noalias %V, i32* noalias %UB, i32* noalias %A) { +define void @f(ptr noalias %V, ptr noalias %UB, ptr noalias %A) { entry: br label %for.cond @@ -36,18 +36,18 @@ for.body: ; preds = %for.cond do.body: ; preds = %do.cond, %for.body %indvars.iv = phi i32 [ %indvars.iv.next, %do.cond ], [ 0, %for.body ] - %tmp = load i32, i32* %V, align 4 + %tmp = load i32, ptr %V, align 4 %tmp4 = add nuw nsw i32 %indvars.iv, %indvars.iv2 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %tmp4 - %tmp5 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %tmp4 + %tmp5 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp5, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %do.cond do.cond: ; preds = %do.body %indvars.iv.next = add nuw nsw i32 %indvars.iv, 1 - %arrayidx3 = getelementptr inbounds i32, i32* %UB, i32 %tmp - %tmp6 = load i32, i32* %arrayidx3, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %UB, i32 %tmp + %tmp6 = load i32, ptr %arrayidx3, align 4 %cmp4 = icmp slt i32 %indvars.iv, %tmp6 br i1 %cmp4, label %do.body, label %do.end diff --git a/polly/test/ScopInfo/invariant_loop_bounds.ll b/polly/test/ScopInfo/invariant_loop_bounds.ll index 537e1937414c..4e1fd88fac30 100644 --- a/polly/test/ScopInfo/invariant_loop_bounds.ll +++ b/polly/test/ScopInfo/invariant_loop_bounds.ll @@ -50,7 +50,7 @@ entry: for.cond: ; preds = %for.inc.16, %entry %indvars.iv5 = phi i64 [ %indvars.iv.next6, %for.inc.16 ], [ 0, %entry ] - %bounds2 = load i32, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @bounds, i64 0, i64 2), align 4 + %bounds2 = load i32, ptr getelementptr inbounds ([3 x i32], ptr @bounds, i64 0, i64 2), align 4 %tmp7 = sext i32 %bounds2 to i64 %cmp = icmp slt i64 %indvars.iv5, %tmp7 br i1 %cmp, label %for.body, label %for.end.18 @@ -60,7 +60,7 @@ for.body: ; preds = %for.cond for.cond.1: ; preds = %for.inc.13, %for.body %indvars.iv3 = phi i64 [ %indvars.iv.next4, %for.inc.13 ], [ 0, %for.body ] - %bounds1 = load i32, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @bounds, i64 0, i64 1), align 4 + %bounds1 = load i32, ptr getelementptr inbounds ([3 x i32], ptr @bounds, i64 0, i64 1), align 4 %tmp9 = sext i32 %bounds1 to i64 %cmp2 = icmp slt i64 %indvars.iv3, %tmp9 br i1 %cmp2, label %for.body.3, label %for.end.15 @@ -70,7 +70,7 @@ for.body.3: ; preds = %for.cond.1 for.cond.4: ; preds = %for.inc, %for.body.3 %indvars.iv = phi i64 [ %indvars.iv.next, %for.inc ], [ 0, %for.body.3 ] - %bounds0 = load i32, i32* getelementptr inbounds ([3 x i32], [3 x i32]* @bounds, i64 0, i64 0), align 4 + %bounds0 = load i32, ptr @bounds, align 4 %tmp11 = sext i32 %bounds0 to i64 %cmp5 = icmp slt i64 %indvars.iv, %tmp11 br i1 %cmp5, label %for.body.6, label %for.end @@ -80,10 +80,10 @@ for.body.6: ; preds = %for.cond.4 %tmp13 = add nsw i64 %tmp12, %indvars.iv5 %tmp14 = trunc i64 %tmp13 to i32 %conv = sitofp i32 %tmp14 to double - %arrayidx11 = getelementptr inbounds [1024 x [1024 x [1024 x double]]], [1024 x [1024 x [1024 x double]]]* @data, i64 0, i64 %indvars.iv5, i64 %indvars.iv3, i64 %indvars.iv - %tmp15 = load double, double* %arrayidx11, align 8 + %arrayidx11 = getelementptr inbounds [1024 x [1024 x [1024 x double]]], ptr @data, i64 0, i64 %indvars.iv5, i64 %indvars.iv3, i64 %indvars.iv + %tmp15 = load double, ptr %arrayidx11, align 8 %add12 = fadd double %tmp15, %conv - store double %add12, double* %arrayidx11, align 8 + store double %add12, ptr %arrayidx11, align 8 br label %for.inc for.inc: ; preds = %for.body.6 diff --git a/polly/test/ScopInfo/invariant_same_loop_bound_multiple_times-1.ll b/polly/test/ScopInfo/invariant_same_loop_bound_multiple_times-1.ll index 6cb5f26cec03..3d5737bbe168 100644 --- a/polly/test/ScopInfo/invariant_same_loop_bound_multiple_times-1.ll +++ b/polly/test/ScopInfo/invariant_same_loop_bound_multiple_times-1.ll @@ -48,7 +48,7 @@ entry: for.cond: ; preds = %for.inc.16, %entry %indvars.iv5 = phi i64 [ %indvars.iv.next6, %for.inc.16 ], [ 0, %entry ] - %bounds0l0 = load i32, i32* getelementptr inbounds ([1 x i32], [1 x i32]* @bounds, i64 0, i64 0), align 4 + %bounds0l0 = load i32, ptr @bounds, align 4 %tmp7 = sext i32 %bounds0l0 to i64 %cmp = icmp slt i64 %indvars.iv5, %tmp7 br i1 %cmp, label %for.body, label %for.end.18 @@ -58,7 +58,7 @@ for.body: ; preds = %for.cond for.cond.1: ; preds = %for.inc.13, %for.body %indvars.iv3 = phi i64 [ %indvars.iv.next4, %for.inc.13 ], [ 0, %for.body ] - %bounds0l1 = load i32, i32* getelementptr inbounds ([1 x i32], [1 x i32]* @bounds, i64 0, i64 0), align 4 + %bounds0l1 = load i32, ptr @bounds, align 4 %tmp9 = sext i32 %bounds0l1 to i64 %cmp2 = icmp slt i64 %indvars.iv3, %tmp9 br i1 %cmp2, label %for.body.3, label %for.end.15 @@ -68,7 +68,7 @@ for.body.3: ; preds = %for.cond.1 for.cond.4: ; preds = %for.inc, %for.body.3 %indvars.iv = phi i64 [ %indvars.iv.next, %for.inc ], [ 0, %for.body.3 ] - %bounds0l2 = load i32, i32* getelementptr inbounds ([1 x i32], [1 x i32]* @bounds, i64 0, i64 0), align 4 + %bounds0l2 = load i32, ptr @bounds, align 4 %tmp11 = sext i32 %bounds0l2 to i64 %cmp5 = icmp slt i64 %indvars.iv, %tmp11 br i1 %cmp5, label %for.body.6, label %for.end @@ -78,10 +78,10 @@ for.body.6: ; preds = %for.cond.4 %tmp13 = add nsw i64 %tmp12, %indvars.iv5 %tmp14 = trunc i64 %tmp13 to i32 %conv = sitofp i32 %tmp14 to double - %arrayidx11 = getelementptr inbounds [1024 x [1024 x [1024 x double]]], [1024 x [1024 x [1024 x double]]]* @data, i64 0, i64 %indvars.iv5, i64 %indvars.iv3, i64 %indvars.iv - %tmp15 = load double, double* %arrayidx11, align 8 + %arrayidx11 = getelementptr inbounds [1024 x [1024 x [1024 x double]]], ptr @data, i64 0, i64 %indvars.iv5, i64 %indvars.iv3, i64 %indvars.iv + %tmp15 = load double, ptr %arrayidx11, align 8 %add12 = fadd double %tmp15, %conv - store double %add12, double* %arrayidx11, align 8 + store double %add12, ptr %arrayidx11, align 8 br label %for.inc for.inc: ; preds = %for.body.6 diff --git a/polly/test/ScopInfo/invariant_same_loop_bound_multiple_times-2.ll b/polly/test/ScopInfo/invariant_same_loop_bound_multiple_times-2.ll index dcfb60e57c39..e2de503eb83f 100644 --- a/polly/test/ScopInfo/invariant_same_loop_bound_multiple_times-2.ll +++ b/polly/test/ScopInfo/invariant_same_loop_bound_multiple_times-2.ll @@ -50,7 +50,7 @@ entry: for.cond: ; preds = %for.inc.16, %entry %indvars.iv5 = phi i64 [ %indvars.iv.next6, %for.inc.16 ], [ 0, %entry ] - %bounds0l0 = load i32, i32* getelementptr inbounds ([1 x i32], [1 x i32]* @bounds, i64 0, i64 0), align 4 + %bounds0l0 = load i32, ptr @bounds, align 4 %tmp7 = sext i32 %bounds0l0 to i64 %cmp = icmp slt i64 %indvars.iv5, %tmp7 br i1 %cmp, label %for.body, label %for.end.18 @@ -61,7 +61,7 @@ for.body: ; preds = %for.cond for.cond.1: ; preds = %for.inc.13, %for.body %indvars.iv3 = phi i64 [ %indvars.iv.next4, %for.inc.13 ], [ 0, %for.body ] - %bounds0l1 = load i32, i32* getelementptr inbounds ([1 x i32], [1 x i32]* @bounds, i64 0, i64 0), align 4 + %bounds0l1 = load i32, ptr @bounds, align 4 %tmp9 = sext i32 %bounds0l1 to i64 %cmp2 = icmp slt i64 %indvars.iv3, %tmp9 br i1 %cmp2, label %for.body.3, label %for.end.15 @@ -71,7 +71,7 @@ for.body.3: ; preds = %for.cond.1 for.cond.4: ; preds = %for.inc, %for.body.3 %indvars.iv = phi i64 [ %indvars.iv.next, %for.inc ], [ 0, %for.body.3 ] - %bounds0l2 = load i32, i32* getelementptr inbounds ([1 x i32], [1 x i32]* @bounds, i64 0, i64 0), align 4 + %bounds0l2 = load i32, ptr @bounds, align 4 %tmp11 = sext i32 %bounds0l2 to i64 %cmp5 = icmp slt i64 %indvars.iv, %tmp11 br i1 %cmp5, label %for.body.6, label %for.end @@ -81,10 +81,10 @@ for.body.6: ; preds = %for.cond.4 %tmp13 = add nsw i64 %tmp12, %indvars.iv5 %tmp14 = trunc i64 %tmp13 to i32 %conv = sitofp i32 %tmp14 to double - %arrayidx11 = getelementptr inbounds [1024 x [1024 x [1024 x double]]], [1024 x [1024 x [1024 x double]]]* @data, i64 0, i64 %indvars.iv5, i64 %indvars.iv3, i64 %indvars.iv - %tmp15 = load double, double* %arrayidx11, align 8 + %arrayidx11 = getelementptr inbounds [1024 x [1024 x [1024 x double]]], ptr @data, i64 0, i64 %indvars.iv5, i64 %indvars.iv3, i64 %indvars.iv + %tmp15 = load double, ptr %arrayidx11, align 8 %add12 = fadd double %tmp15, %conv - store double %add12, double* %arrayidx11, align 8 + store double %add12, ptr %arrayidx11, align 8 br label %for.inc for.inc: ; preds = %for.body.6 diff --git a/polly/test/ScopInfo/isl_aff_out_of_bounds.ll b/polly/test/ScopInfo/isl_aff_out_of_bounds.ll index 1bd89b6884a4..ca1b235be358 100644 --- a/polly/test/ScopInfo/isl_aff_out_of_bounds.ll +++ b/polly/test/ScopInfo/isl_aff_out_of_bounds.ll @@ -7,29 +7,29 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 declare double @frexp(double) -define void @vorbis_lsp_to_curve(float* %lsp, i32 %m) { +define void @vorbis_lsp_to_curve(ptr %lsp, i32 %m) { entry: %q.1.reg2mem = alloca float, align 4 br i1 undef, label %do.body, label %while.end do.body: ; preds = %do.body, %entry - %ftmp.0 = phi float* [ %add.ptr, %do.body ], [ %lsp, %entry ] - %add.ptr = getelementptr inbounds float, float* %ftmp.0, i64 2 + %ftmp.0 = phi ptr [ %add.ptr, %do.body ], [ %lsp, %entry ] + %add.ptr = getelementptr inbounds float, ptr %ftmp.0, i64 2 br i1 true, label %do.end, label %do.body do.end: ; preds = %do.body br i1 false, label %if.end.single_exit, label %if.then if.then: ; preds = %do.end - %0 = load float, float* %add.ptr, align 4 - store float %0, float* %q.1.reg2mem, align 4 + %0 = load float, ptr %add.ptr, align 4 + store float %0, ptr %q.1.reg2mem, align 4 br label %if.end.single_exit if.end.single_exit: ; preds = %do.end, %if.then br label %if.end if.end: ; preds = %if.end.single_exit - %q.1.reload = load float, float* %q.1.reg2mem, align 4 + %q.1.reload = load float, ptr %q.1.reg2mem, align 4 %conv31 = fpext float %q.1.reload to double %call32 = call double @frexp(double %conv31) unreachable diff --git a/polly/test/ScopInfo/isl_trip_count_01.ll b/polly/test/ScopInfo/isl_trip_count_01.ll index ea1800870fab..fc6b79c5a68a 100644 --- a/polly/test/ScopInfo/isl_trip_count_01.ll +++ b/polly/test/ScopInfo/isl_trip_count_01.ll @@ -12,7 +12,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" -define void @f(i32* nocapture %A, i32 %N, i32 %M) { +define void @f(ptr nocapture %A, i32 %N, i32 %M) { entry: %cmp3 = icmp sgt i32 %M, %N br i1 %cmp3, label %while.end, label %while.body.preheader @@ -24,8 +24,8 @@ while.body: %i.05 = phi i32 [ %inc, %while.body ], [ 0, %while.body.preheader ] %M.addr.04 = phi i32 [ %add, %while.body ], [ %M, %while.body.preheader ] %inc = add nuw nsw i32 %i.05, 1 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.05 - store i32 1, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.05 + store i32 1, ptr %arrayidx, align 4 %add = add nsw i32 %M.addr.04, 4 %cmp = icmp sgt i32 %add, %N br i1 %cmp, label %while.end.loopexit, label %while.body diff --git a/polly/test/ScopInfo/isl_trip_count_02.ll b/polly/test/ScopInfo/isl_trip_count_02.ll index 6ea570d74d62..9376cb415cec 100644 --- a/polly/test/ScopInfo/isl_trip_count_02.ll +++ b/polly/test/ScopInfo/isl_trip_count_02.ll @@ -11,7 +11,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" -define void @f(i32* %A, i32 %N, i32 %M) { +define void @f(ptr %A, i32 %N, i32 %M) { entry: br label %entry.split @@ -21,8 +21,8 @@ entry.split: for.body: %indvars.iv = phi i32 [ %indvars.iv.next, %for.body ], [ %M, %entry.split ] - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %indvars.iv - store i32 %indvars.iv, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %indvars.iv + store i32 %indvars.iv, ptr %arrayidx, align 4 %cmp = icmp slt i32 %M, %N %indvars.iv.next = add i32 %indvars.iv, 1 br i1 %cmp, label %for.cond.for.end_crit_edge, label %for.body diff --git a/polly/test/ScopInfo/isl_trip_count_03.ll b/polly/test/ScopInfo/isl_trip_count_03.ll index 51af3700fd67..f5b0048a0e0e 100644 --- a/polly/test/ScopInfo/isl_trip_count_03.ll +++ b/polly/test/ScopInfo/isl_trip_count_03.ll @@ -36,7 +36,7 @@ for.body.lr.ph: ; preds = %entry.split for.body: ; preds = %for.body.lr.ph, %for.body %indvar = phi i64 [ 0, %for.body.lr.ph ], [ %indvar.next, %for.next ] - %arrayidx = getelementptr [100 x i32], [100 x i32]* @A, i64 0, i64 %indvar + %arrayidx = getelementptr [100 x i32], ptr @A, i64 0, i64 %indvar %0 = mul i64 %indvar, 2 %1 = add i64 %0, 2 %add1 = trunc i64 %1 to i32 @@ -45,9 +45,9 @@ for.body: ; preds = %for.body.lr.ph, %fo br i1 %cmp, label %for.next, label %for.cond.for.end_crit_edge for.next: - %2 = load i32, i32* %arrayidx, align 4 + %2 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %2, 1 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.body for.cond.for.end_crit_edge: ; preds = %for.body diff --git a/polly/test/ScopInfo/isl_trip_count_multiple_exiting_blocks.ll b/polly/test/ScopInfo/isl_trip_count_multiple_exiting_blocks.ll index 42b0f3cff17a..91bc19e2de44 100644 --- a/polly/test/ScopInfo/isl_trip_count_multiple_exiting_blocks.ll +++ b/polly/test/ScopInfo/isl_trip_count_multiple_exiting_blocks.ll @@ -21,7 +21,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %do.body @@ -34,9 +34,9 @@ if.then: ; preds = %do.body br label %do.end if.end: ; preds = %do.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv %tmp = trunc i64 %indvars.iv to i32 - store i32 %tmp, i32* %arrayidx, align 4 + store i32 %tmp, ptr %arrayidx, align 4 br label %do.cond do.cond: ; preds = %if.end diff --git a/polly/test/ScopInfo/licm_load.ll b/polly/test/ScopInfo/licm_load.ll index f131b7e51579..1ba6f9135dea 100644 --- a/polly/test/ScopInfo/licm_load.ll +++ b/polly/test/ScopInfo/licm_load.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i32 %n, float* noalias nonnull %A, float* noalias nonnull %B, i32 %j) { +define void @foo(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B, i32 %j) { entry: %tmp = sext i32 %n to i64 br label %for.cond @@ -25,12 +25,10 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %idxprom = sext i32 %j to i64 - %arrayidx = getelementptr inbounds float, float* %B, i64 %idxprom - %tmp1 = bitcast float* %arrayidx to i32* - %tmp2 = load i32, i32* %tmp1, align 4 - %arrayidx2 = getelementptr inbounds float, float* %A, i64 %indvars.iv - %tmp3 = bitcast float* %arrayidx2 to i32* - store i32 %tmp2, i32* %tmp3, align 4 + %arrayidx = getelementptr inbounds float, ptr %B, i64 %idxprom + %tmp2 = load i32, ptr %arrayidx, align 4 + %arrayidx2 = getelementptr inbounds float, ptr %A, i64 %indvars.iv + store i32 %tmp2, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/licm_potential_store.ll b/polly/test/ScopInfo/licm_potential_store.ll index 885745693289..19aeeb605e40 100644 --- a/polly/test/ScopInfo/licm_potential_store.ll +++ b/polly/test/ScopInfo/licm_potential_store.ll @@ -24,57 +24,56 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i32 %n, float* noalias nonnull %A, float %x) { +define void @foo(i32 %n, ptr noalias nonnull %A, float %x) { entry: %n.addr = alloca i32, align 4 - %A.addr = alloca float*, align 8 + %A.addr = alloca ptr, align 8 %x.addr = alloca float, align 4 %i = alloca i32, align 4 %j = alloca i32, align 4 - store i32 %n, i32* %n.addr, align 4 - store float* %A, float** %A.addr, align 8 - store float %x, float* %x.addr, align 4 - %tmp = load i32, i32* %n.addr, align 4 + store i32 %n, ptr %n.addr, align 4 + store ptr %A, ptr %A.addr, align 8 + store float %x, ptr %x.addr, align 4 + %tmp = load i32, ptr %n.addr, align 4 %tmp1 = zext i32 %tmp to i64 - store i32 0, i32* %i, align 4 + store i32 0, ptr %i, align 4 br label %for.cond for.cond: ; preds = %for.inc.4, %entry - %tmp2 = load i32, i32* %i, align 4 + %tmp2 = load i32, ptr %i, align 4 %cmp = icmp slt i32 %tmp2, 5 br i1 %cmp, label %for.body, label %for.end.6 for.body: ; preds = %for.cond - store i32 0, i32* %j, align 4 + store i32 0, ptr %j, align 4 br label %for.cond.1 for.cond.1: ; preds = %for.inc, %for.body - %tmp3 = load i32, i32* %j, align 4 - %tmp4 = load i32, i32* %n.addr, align 4 + %tmp3 = load i32, ptr %j, align 4 + %tmp4 = load i32, ptr %n.addr, align 4 %cmp2 = icmp slt i32 %tmp3, %tmp4 br i1 %cmp2, label %for.body.3, label %for.end for.body.3: ; preds = %for.cond.1 - store float 7.000000e+00, float* %x.addr, align 4 + store float 7.000000e+00, ptr %x.addr, align 4 br label %for.inc for.inc: ; preds = %for.body.3 - %tmp5 = load i32, i32* %j, align 4 + %tmp5 = load i32, ptr %j, align 4 %add = add nsw i32 %tmp5, 1 - store i32 %add, i32* %j, align 4 + store i32 %add, ptr %j, align 4 br label %for.cond.1 for.end: ; preds = %for.cond.1 - %tmp6 = load float, float* %x.addr, align 4 - %tmp7 = load float*, float** %A.addr, align 8 - %arrayidx = getelementptr inbounds float, float* %tmp7, i64 0 - store float %tmp6, float* %arrayidx, align 4 + %tmp6 = load float, ptr %x.addr, align 4 + %tmp7 = load ptr, ptr %A.addr, align 8 + store float %tmp6, ptr %tmp7, align 4 br label %for.inc.4 for.inc.4: ; preds = %for.end - %tmp8 = load i32, i32* %i, align 4 + %tmp8 = load i32, ptr %i, align 4 %add5 = add nsw i32 %tmp8, 1 - store i32 %add5, i32* %i, align 4 + store i32 %add5, ptr %i, align 4 br label %for.cond for.end.6: ; preds = %for.cond diff --git a/polly/test/ScopInfo/licm_reduction_nested.ll b/polly/test/ScopInfo/licm_reduction_nested.ll index 232af93df7b8..a3ba478cd9ff 100644 --- a/polly/test/ScopInfo/licm_reduction_nested.ll +++ b/polly/test/ScopInfo/licm_reduction_nested.ll @@ -14,7 +14,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64* noalias %A, i64* noalias %B, i64 %j) { +define void @foo(ptr noalias %A, ptr noalias %B, i64 %j) { entry: br label %for.cond @@ -33,12 +33,12 @@ for.cond.1: ; preds = %for.inc, %for.body for.body.3: ; preds = %for.cond.1 %add = add nuw nsw i64 %i.0, %k.0 - %arrayidx = getelementptr inbounds i64, i64* %B, i64 %add - %tmp = load i64, i64* %arrayidx, align 8 - %arrayidx4 = getelementptr inbounds i64, i64* %A, i64 %j - %tmp2 = load i64, i64* %arrayidx4, align 8 + %arrayidx = getelementptr inbounds i64, ptr %B, i64 %add + %tmp = load i64, ptr %arrayidx, align 8 + %arrayidx4 = getelementptr inbounds i64, ptr %A, i64 %j + %tmp2 = load i64, ptr %arrayidx4, align 8 %add5 = add i64 %tmp2, %tmp - store i64 %add5, i64* %arrayidx4, align 8 + store i64 %add5, ptr %arrayidx4, align 8 br label %for.inc for.inc: ; preds = %for.body.3 diff --git a/polly/test/ScopInfo/long-compile-time-alias-analysis.ll b/polly/test/ScopInfo/long-compile-time-alias-analysis.ll index 173efa4d3edc..1cbecf086968 100644 --- a/polly/test/ScopInfo/long-compile-time-alias-analysis.ll +++ b/polly/test/ScopInfo/long-compile-time-alias-analysis.ll @@ -6,47 +6,45 @@ target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" target triple = "aarch64--linux-android" -%0 = type { i8*, i64, i64, i64, i64, i64, i64 } +%0 = type { ptr, i64, i64, i64, i64, i64, i64 } -define void @_Z1fR1SS0_Ph(%0* nocapture readonly dereferenceable(56) %arg, %0* nocapture readonly dereferenceable(56) %arg1, i8* nocapture readonly %arg2) { +define void @_Z1fR1SS0_Ph(ptr nocapture readonly dereferenceable(56) %arg, ptr nocapture readonly dereferenceable(56) %arg1, ptr nocapture readonly %arg2) { bb: - %tmp = getelementptr inbounds %0, %0* %arg1, i64 0, i32 1 - %tmp3 = getelementptr inbounds %0, %0* %arg, i64 0, i32 0 - %tmp4 = load i8*, i8** %tmp3, align 8 - %tmp5 = getelementptr inbounds %0, %0* %arg, i64 0, i32 4 - %tmp6 = load i64, i64* %tmp5, align 8 - %tmp7 = getelementptr inbounds %0, %0* %arg, i64 0, i32 1 - %tmp8 = load i64, i64* %tmp7, align 8 + %tmp = getelementptr inbounds %0, ptr %arg1, i64 0, i32 1 + %tmp4 = load ptr, ptr %arg, align 8 + %tmp5 = getelementptr inbounds %0, ptr %arg, i64 0, i32 4 + %tmp6 = load i64, ptr %tmp5, align 8 + %tmp7 = getelementptr inbounds %0, ptr %arg, i64 0, i32 1 + %tmp8 = load i64, ptr %tmp7, align 8 %tmp9 = mul i64 %tmp8, %tmp6 - %tmp10 = getelementptr inbounds i8, i8* %tmp4, i64 %tmp9 - %tmp11 = getelementptr inbounds %0, %0* %arg, i64 0, i32 3 - %tmp12 = load i64, i64* %tmp11, align 8 - %tmp13 = getelementptr inbounds i8, i8* %tmp10, i64 %tmp12 - %tmp14 = getelementptr inbounds %0, %0* %arg, i64 0, i32 6 - %tmp15 = load i64, i64* %tmp14, align 8 + %tmp10 = getelementptr inbounds i8, ptr %tmp4, i64 %tmp9 + %tmp11 = getelementptr inbounds %0, ptr %arg, i64 0, i32 3 + %tmp12 = load i64, ptr %tmp11, align 8 + %tmp13 = getelementptr inbounds i8, ptr %tmp10, i64 %tmp12 + %tmp14 = getelementptr inbounds %0, ptr %arg, i64 0, i32 6 + %tmp15 = load i64, ptr %tmp14, align 8 %tmp16 = add i64 %tmp15, 1 %tmp17 = icmp eq i64 %tmp16, %tmp6 br i1 %tmp17, label %bb51, label %bb18 bb18: ; preds = %bb - %tmp19 = getelementptr inbounds %0, %0* %arg, i64 0, i32 2 - %tmp20 = load i64, i64* %tmp19, align 8 + %tmp19 = getelementptr inbounds %0, ptr %arg, i64 0, i32 2 + %tmp20 = load i64, ptr %tmp19, align 8 %tmp21 = mul i64 %tmp20, %tmp8 - %tmp22 = getelementptr inbounds i8, i8* %tmp13, i64 %tmp21 - %tmp23 = getelementptr inbounds i8, i8* %tmp22, i64 %tmp9 - %tmp24 = getelementptr inbounds i8, i8* %tmp23, i64 %tmp12 - %tmp25 = bitcast %0* %arg1 to i16** - %tmp26 = load i16*, i16** %tmp25, align 8 - %tmp27 = load i64, i64* %tmp, align 8 - %tmp28 = getelementptr inbounds %0, %0* %arg1, i64 0, i32 4 - %tmp29 = load i64, i64* %tmp28, align 8 + %tmp22 = getelementptr inbounds i8, ptr %tmp13, i64 %tmp21 + %tmp23 = getelementptr inbounds i8, ptr %tmp22, i64 %tmp9 + %tmp24 = getelementptr inbounds i8, ptr %tmp23, i64 %tmp12 + %tmp26 = load ptr, ptr %arg1, align 8 + %tmp27 = load i64, ptr %tmp, align 8 + %tmp28 = getelementptr inbounds %0, ptr %arg1, i64 0, i32 4 + %tmp29 = load i64, ptr %tmp28, align 8 %tmp30 = mul i64 %tmp27, %tmp29 - %tmp31 = getelementptr inbounds i16, i16* %tmp26, i64 %tmp30 - %tmp32 = getelementptr inbounds %0, %0* %arg1, i64 0, i32 3 - %tmp33 = load i64, i64* %tmp32, align 8 - %tmp34 = getelementptr inbounds i16, i16* %tmp31, i64 %tmp33 - %tmp35 = getelementptr inbounds %0, %0* %arg, i64 0, i32 5 - %tmp36 = load i64, i64* %tmp35, align 8 + %tmp31 = getelementptr inbounds i16, ptr %tmp26, i64 %tmp30 + %tmp32 = getelementptr inbounds %0, ptr %arg1, i64 0, i32 3 + %tmp33 = load i64, ptr %tmp32, align 8 + %tmp34 = getelementptr inbounds i16, ptr %tmp31, i64 %tmp33 + %tmp35 = getelementptr inbounds %0, ptr %arg, i64 0, i32 5 + %tmp36 = load i64, ptr %tmp35, align 8 br label %bb37 bb37: ; preds = %bb57, %bb18 @@ -56,9 +54,9 @@ bb37: ; preds = %bb57, %bb18 %tmp41 = phi i64 [ %tmp8, %bb18 ], [ %tmp61, %bb57 ] %tmp42 = phi i64 [ %tmp12, %bb18 ], [ %tmp62, %bb57 ] %tmp43 = phi i64 [ %tmp36, %bb18 ], [ %tmp63, %bb57 ] - %tmp44 = phi i16* [ %tmp34, %bb18 ], [ %tmp69, %bb57 ] - %tmp45 = phi i8* [ %tmp13, %bb18 ], [ %tmp64, %bb57 ] - %tmp46 = phi i8* [ %tmp24, %bb18 ], [ %tmp68, %bb57 ] + %tmp44 = phi ptr [ %tmp34, %bb18 ], [ %tmp69, %bb57 ] + %tmp45 = phi ptr [ %tmp13, %bb18 ], [ %tmp64, %bb57 ] + %tmp46 = phi ptr [ %tmp24, %bb18 ], [ %tmp68, %bb57 ] %tmp47 = phi i64 [ 0, %bb18 ], [ %tmp70, %bb57 ] %tmp48 = add i64 %tmp43, 1 %tmp49 = sub i64 %tmp48, %tmp42 @@ -69,10 +67,10 @@ bb51: ; preds = %bb57, %bb ret void bb52: ; preds = %bb176 - %tmp53 = load i64, i64* %tmp7, align 8 - %tmp54 = load i64, i64* %tmp, align 8 - %tmp55 = load i64, i64* %tmp14, align 8 - %tmp56 = load i64, i64* %tmp5, align 8 + %tmp53 = load i64, ptr %tmp7, align 8 + %tmp54 = load i64, ptr %tmp, align 8 + %tmp55 = load i64, ptr %tmp14, align 8 + %tmp56 = load i64, ptr %tmp5, align 8 br label %bb57 bb57: ; preds = %bb52, %bb37 @@ -82,12 +80,12 @@ bb57: ; preds = %bb52, %bb37 %tmp61 = phi i64 [ %tmp53, %bb52 ], [ %tmp41, %bb37 ] %tmp62 = phi i64 [ %tmp179, %bb52 ], [ %tmp42, %bb37 ] %tmp63 = phi i64 [ %tmp178, %bb52 ], [ %tmp43, %bb37 ] - %tmp64 = getelementptr inbounds i8, i8* %tmp45, i64 %tmp61 + %tmp64 = getelementptr inbounds i8, ptr %tmp45, i64 %tmp61 %tmp65 = and i64 %tmp47, 1 %tmp66 = icmp eq i64 %tmp65, 0 - %tmp67 = getelementptr inbounds i8, i8* %tmp46, i64 %tmp61 - %tmp68 = select i1 %tmp66, i8* %tmp46, i8* %tmp67 - %tmp69 = getelementptr inbounds i16, i16* %tmp44, i64 %tmp60 + %tmp67 = getelementptr inbounds i8, ptr %tmp46, i64 %tmp61 + %tmp68 = select i1 %tmp66, ptr %tmp46, ptr %tmp67 + %tmp69 = getelementptr inbounds i16, ptr %tmp44, i64 %tmp60 %tmp70 = add i64 %tmp47, 1 %tmp71 = add i64 %tmp59, 1 %tmp72 = sub i64 %tmp71, %tmp58 @@ -97,18 +95,18 @@ bb57: ; preds = %bb52, %bb37 bb74: ; preds = %bb176, %bb37 %tmp75 = phi i64 [ %tmp181, %bb176 ], [ %tmp49, %bb37 ] %tmp76 = phi i64 [ %tmp177, %bb176 ], [ 0, %bb37 ] - %tmp77 = getelementptr inbounds i8, i8* %tmp45, i64 %tmp76 - %tmp78 = load i8, i8* %tmp77, align 1 + %tmp77 = getelementptr inbounds i8, ptr %tmp45, i64 %tmp76 + %tmp78 = load i8, ptr %tmp77, align 1 %tmp79 = zext i8 %tmp78 to i32 %tmp80 = or i64 %tmp76, 1 - %tmp81 = getelementptr inbounds i8, i8* %tmp45, i64 %tmp80 - %tmp82 = load i8, i8* %tmp81, align 1 + %tmp81 = getelementptr inbounds i8, ptr %tmp45, i64 %tmp80 + %tmp82 = load i8, ptr %tmp81, align 1 %tmp83 = zext i8 %tmp82 to i32 - %tmp84 = getelementptr inbounds i8, i8* %tmp46, i64 %tmp76 - %tmp85 = load i8, i8* %tmp84, align 1 + %tmp84 = getelementptr inbounds i8, ptr %tmp46, i64 %tmp76 + %tmp85 = load i8, ptr %tmp84, align 1 %tmp86 = zext i8 %tmp85 to i32 - %tmp87 = getelementptr inbounds i8, i8* %tmp46, i64 %tmp80 - %tmp88 = load i8, i8* %tmp87, align 1 + %tmp87 = getelementptr inbounds i8, ptr %tmp46, i64 %tmp80 + %tmp88 = load i8, ptr %tmp87, align 1 %tmp89 = zext i8 %tmp88 to i32 %tmp90 = mul nuw nsw i32 %tmp86, 517 %tmp91 = add nsw i32 %tmp90, -66176 @@ -157,21 +155,21 @@ bb120: ; preds = %bb109 bb124: ; preds = %bb120 %tmp125 = sext i32 %tmp101 to i64 - %tmp126 = getelementptr inbounds i8, i8* %arg2, i64 %tmp125 - %tmp127 = load i8, i8* %tmp126, align 1 + %tmp126 = getelementptr inbounds i8, ptr %arg2, i64 %tmp125 + %tmp127 = load i8, ptr %tmp126, align 1 %tmp128 = zext i8 %tmp127 to i32 %tmp129 = lshr i32 %tmp128, 3 %tmp130 = shl nuw nsw i32 %tmp129, 11 %tmp131 = sext i32 %tmp111 to i64 - %tmp132 = getelementptr inbounds i8, i8* %arg2, i64 %tmp131 - %tmp133 = load i8, i8* %tmp132, align 1 + %tmp132 = getelementptr inbounds i8, ptr %arg2, i64 %tmp131 + %tmp133 = load i8, ptr %tmp132, align 1 %tmp134 = zext i8 %tmp133 to i32 %tmp135 = lshr i32 %tmp134, 2 %tmp136 = shl nuw nsw i32 %tmp135, 5 %tmp137 = or i32 %tmp136, %tmp130 %tmp138 = sext i32 %tmp113 to i64 - %tmp139 = getelementptr inbounds i8, i8* %arg2, i64 %tmp138 - %tmp140 = load i8, i8* %tmp139, align 1 + %tmp139 = getelementptr inbounds i8, ptr %arg2, i64 %tmp138 + %tmp140 = load i8, ptr %tmp139, align 1 %tmp141 = zext i8 %tmp140 to i32 %tmp142 = lshr i32 %tmp141, 3 %tmp143 = or i32 %tmp137, %tmp142 @@ -182,16 +180,16 @@ bb145: ; preds = %bb124 %tmp146 = add nsw i32 %tmp97, %tmp115 %tmp147 = sdiv i32 %tmp146, 256 %tmp148 = sext i32 %tmp147 to i64 - %tmp149 = getelementptr inbounds i8, i8* %arg2, i64 %tmp148 - %tmp150 = load i8, i8* %tmp149, align 1 + %tmp149 = getelementptr inbounds i8, ptr %arg2, i64 %tmp148 + %tmp150 = load i8, ptr %tmp149, align 1 %tmp151 = extractvalue { i32, i1 } %tmp122, 0 %tmp152 = sdiv i32 %tmp151, 256 %tmp153 = sext i32 %tmp152 to i64 - %tmp154 = getelementptr inbounds i8, i8* %arg2, i64 %tmp153 - %tmp155 = load i8, i8* %tmp154, align 1 + %tmp154 = getelementptr inbounds i8, ptr %arg2, i64 %tmp153 + %tmp155 = load i8, ptr %tmp154, align 1 %tmp156 = sext i32 %tmp117 to i64 - %tmp157 = getelementptr inbounds i8, i8* %arg2, i64 %tmp156 - %tmp158 = load i8, i8* %tmp157, align 1 + %tmp157 = getelementptr inbounds i8, ptr %arg2, i64 %tmp156 + %tmp158 = load i8, ptr %tmp157, align 1 %tmp159 = zext i8 %tmp158 to i32 %tmp160 = lshr i32 %tmp159, 3 %tmp161 = shl nuw nsw i32 %tmp160, 11 @@ -204,21 +202,20 @@ bb145: ; preds = %bb124 %tmp168 = or i32 %tmp167, %tmp161 %tmp169 = shl nuw i32 %tmp168, 16 %tmp170 = or i32 %tmp169, %tmp143 - %tmp171 = getelementptr inbounds i16, i16* %tmp44, i64 %tmp76 - %tmp172 = bitcast i16* %tmp171 to i32* - store i32 %tmp170, i32* %tmp172, align 4 + %tmp171 = getelementptr inbounds i16, ptr %tmp44, i64 %tmp76 + store i32 %tmp170, ptr %tmp171, align 4 br label %bb176 bb173: ; preds = %bb124 %tmp174 = trunc i32 %tmp143 to i16 - %tmp175 = getelementptr inbounds i16, i16* %tmp44, i64 %tmp76 - store i16 %tmp174, i16* %tmp175, align 2 + %tmp175 = getelementptr inbounds i16, ptr %tmp44, i64 %tmp76 + store i16 %tmp174, ptr %tmp175, align 2 br label %bb176 bb176: ; preds = %bb173, %bb145 %tmp177 = add i64 %tmp76, 2 - %tmp178 = load i64, i64* %tmp35, align 8 - %tmp179 = load i64, i64* %tmp11, align 8 + %tmp178 = load i64, ptr %tmp35, align 8 + %tmp179 = load i64, ptr %tmp11, align 8 %tmp180 = add i64 %tmp178, 1 %tmp181 = sub i64 %tmp180, %tmp179 %tmp182 = icmp ult i64 %tmp177, %tmp181 diff --git a/polly/test/ScopInfo/long-sequence-of-error-blocks-2.ll b/polly/test/ScopInfo/long-sequence-of-error-blocks-2.ll index 5fdc15e26f52..c88ea1327389 100644 --- a/polly/test/ScopInfo/long-sequence-of-error-blocks-2.ll +++ b/polly/test/ScopInfo/long-sequence-of-error-blocks-2.ll @@ -3,38 +3,38 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -%struct.hoge = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [8 x [2 x i32]], [8 x [2 x i32]], [4 x [4 x i32]], i32, i32, i32, i32, [256 x i8], [256 x i8], [256 x i8], [256 x i8], [256 x i8], i32, i32, i32, i32, i32, i32, [500 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [256 x i8], [256 x i8], [256 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [1024 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [256 x i8], [256 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [256 x i8], i32, i32, i32*, i32*, i8*, i32*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, double, double, [5 x double], i32, [8 x i32], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [6 x double], [6 x double], [256 x i8], i32, i32, i32, i32, [2 x [5 x i32]], [2 x [5 x i32]], i32, i32, i32, i32, i32, i32, i32, i32, i32, [3 x i32], i32 } +%struct.hoge = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [8 x [2 x i32]], [8 x [2 x i32]], [4 x [4 x i32]], i32, i32, i32, i32, [256 x i8], [256 x i8], [256 x i8], [256 x i8], [256 x i8], i32, i32, i32, i32, i32, i32, [500 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [256 x i8], [256 x i8], [256 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [1024 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [256 x i8], [256 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [256 x i8], i32, i32, ptr, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, double, double, [5 x double], i32, [8 x i32], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [6 x double], [6 x double], [256 x i8], i32, i32, i32, i32, [2 x [5 x i32]], [2 x [5 x i32]], i32, i32, i32, i32, i32, i32, i32, i32, i32, [3 x i32], i32 } ; The execution context of invalid loads in this test case has at some point become very complex and we should bail. ; CHECK-NOT: Statements @global = external global [300 x i8], align 16 -@global1 = external global %struct.hoge*, align 8 +@global1 = external global ptr, align 8 @global2 = external unnamed_addr constant [79 x i8], align 1 @global3 = external unnamed_addr constant [57 x i8], align 1 declare void @widget() #0 ; Function Attrs: nounwind -declare void @quux(i8*, i64, i8*, ...) #1 +declare void @quux(ptr, i64, ptr, ...) #1 ; Function Attrs: nounwind uwtable -define void @hoge(float* %A) #2 { +define void @hoge(ptr %A) #2 { bb: br label %bb15 bb15: ; preds = %bb - %tmp = load %struct.hoge*, %struct.hoge** @global1, align 8, !tbaa !1 - %tmp16 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp, i64 0, i32 153 - store float 1.0, float* %A - %tmp17 = load i32, i32* %tmp16, align 4, !tbaa !5 + %tmp = load ptr, ptr @global1, align 8, !tbaa !1 + %tmp16 = getelementptr inbounds %struct.hoge, ptr %tmp, i64 0, i32 153 + store float 1.0, ptr %A + %tmp17 = load i32, ptr %tmp16, align 4, !tbaa !5 %tmp18 = icmp eq i32 %tmp17, 0 br i1 %tmp18, label %bb24, label %bb19 bb19: ; preds = %bb15 - %tmp20 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp, i64 0, i32 50 - store float 1.0, float* %A - %tmp21 = load i32, i32* %tmp20, align 8, !tbaa !9 + %tmp20 = getelementptr inbounds %struct.hoge, ptr %tmp, i64 0, i32 50 + store float 1.0, ptr %A + %tmp21 = load i32, ptr %tmp20, align 8, !tbaa !9 %tmp22 = icmp eq i32 %tmp21, 0 br i1 %tmp22, label %bb24, label %bb23 @@ -43,44 +43,43 @@ bb23: ; preds = %bb19 br label %bb24 bb24: ; preds = %bb23, %bb19, %bb15 - %tmp25 = load %struct.hoge*, %struct.hoge** @global1, align 8, !tbaa !1 - store float 1.0, float* %A - %tmp26 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp25, i64 0, i32 16 - %tmp27 = load i32, i32* %tmp26, align 8, !tbaa !10 + %tmp25 = load ptr, ptr @global1, align 8, !tbaa !1 + store float 1.0, ptr %A + %tmp26 = getelementptr inbounds %struct.hoge, ptr %tmp25, i64 0, i32 16 + %tmp27 = load i32, ptr %tmp26, align 8, !tbaa !10 %tmp28 = icmp eq i32 %tmp27, 3 br i1 %tmp28, label %bb29, label %bb34 bb29: ; preds = %bb24 - %tmp30 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp25, i64 0, i32 0 - store float 1.0, float* %A - %tmp31 = load i32, i32* %tmp30, align 8, !tbaa !11 + store float 1.0, ptr %A + %tmp31 = load i32, ptr %tmp25, align 8, !tbaa !11 %tmp32 = icmp slt i32 %tmp31, 144 br i1 %tmp32, label %bb33, label %bb34 bb33: ; preds = %bb29 - call void (i8*, i64, i8*, ...) @quux(i8* getelementptr inbounds ([300 x i8], [300 x i8]* @global, i64 0, i64 0), i64 300, i8* getelementptr inbounds ([79 x i8], [79 x i8]* @global2, i64 0, i64 0), i32 144) #3 + call void (ptr, i64, ptr, ...) @quux(ptr @global, i64 300, ptr @global2, i32 144) #3 br label %bb34 bb34: ; preds = %bb33, %bb29, %bb24 - %tmp35 = load %struct.hoge*, %struct.hoge** @global1, align 8, !tbaa !1 - store float 1.0, float* %A - %tmp36 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp35, i64 0, i32 40 - %tmp37 = load i32, i32* %tmp36, align 8, !tbaa !12 + %tmp35 = load ptr, ptr @global1, align 8, !tbaa !1 + store float 1.0, ptr %A + %tmp36 = getelementptr inbounds %struct.hoge, ptr %tmp35, i64 0, i32 40 + %tmp37 = load i32, ptr %tmp36, align 8, !tbaa !12 %tmp38 = icmp eq i32 %tmp37, 0 br i1 %tmp38, label %bb49, label %bb39 bb39: ; preds = %bb34 - %tmp40 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp35, i64 0, i32 46 - store float 1.0, float* %A - %tmp41 = load i32, i32* %tmp40, align 8, !tbaa !13 + %tmp40 = getelementptr inbounds %struct.hoge, ptr %tmp35, i64 0, i32 46 + store float 1.0, ptr %A + %tmp41 = load i32, ptr %tmp40, align 8, !tbaa !13 %tmp42 = icmp eq i32 %tmp41, 0 br i1 %tmp42, label %bb49, label %bb43 bb43: ; preds = %bb39 - %tmp44 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp35, i64 0, i32 7 - store float 1.0, float* %A - %tmp45 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp35, i64 0, i32 48 - %tmp46 = load i32, i32* %tmp45, align 8, !tbaa !14 + %tmp44 = getelementptr inbounds %struct.hoge, ptr %tmp35, i64 0, i32 7 + store float 1.0, ptr %A + %tmp45 = getelementptr inbounds %struct.hoge, ptr %tmp35, i64 0, i32 48 + %tmp46 = load i32, ptr %tmp45, align 8, !tbaa !14 %tmp47 = icmp slt i32 0, %tmp46 br i1 %tmp47, label %bb48, label %bb49 @@ -89,29 +88,29 @@ bb48: ; preds = %bb43 br label %bb49 bb49: ; preds = %bb48, %bb43, %bb39, %bb34 - store float 1.0, float* %A - %tmp50 = load %struct.hoge*, %struct.hoge** @global1, align 8, !tbaa !1 - %tmp51 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp50, i64 0, i32 198 - %tmp52 = load i32, i32* %tmp51, align 8, !tbaa !15 + store float 1.0, ptr %A + %tmp50 = load ptr, ptr @global1, align 8, !tbaa !1 + %tmp51 = getelementptr inbounds %struct.hoge, ptr %tmp50, i64 0, i32 198 + %tmp52 = load i32, ptr %tmp51, align 8, !tbaa !15 %tmp53 = icmp eq i32 %tmp52, 0 br i1 %tmp53, label %bb59, label %bb54 bb54: ; preds = %bb49 - store float 1.0, float* %A - %tmp55 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp50, i64 0, i32 16 - %tmp56 = load i32, i32* %tmp55, align 8, !tbaa !10 + store float 1.0, ptr %A + %tmp55 = getelementptr inbounds %struct.hoge, ptr %tmp50, i64 0, i32 16 + %tmp56 = load i32, ptr %tmp55, align 8, !tbaa !10 %tmp57 = icmp eq i32 %tmp56, 0 br i1 %tmp57, label %bb58, label %bb59 bb58: ; preds = %bb54 - call void (i8*, i64, i8*, ...) @quux(i8* getelementptr inbounds ([300 x i8], [300 x i8]* @global, i64 0, i64 0), i64 300, i8* getelementptr inbounds ([57 x i8], [57 x i8]* @global3, i64 0, i64 0)) #3 + call void (ptr, i64, ptr, ...) @quux(ptr @global, i64 300, ptr @global3) #3 br label %bb59 bb59: ; preds = %bb58, %bb54, %bb49 - store float 1.0, float* %A - %tmp60 = load %struct.hoge*, %struct.hoge** @global1, align 8, !tbaa !1 - %tmp61 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp60, i64 0, i32 31 - %tmp62 = load i32, i32* %tmp61, align 4, !tbaa !16 + store float 1.0, ptr %A + %tmp60 = load ptr, ptr @global1, align 8, !tbaa !1 + %tmp61 = getelementptr inbounds %struct.hoge, ptr %tmp60, i64 0, i32 31 + %tmp62 = load i32, ptr %tmp61, align 4, !tbaa !16 %tmp63 = icmp eq i32 %tmp62, 0 br i1 %tmp63, label %bb65, label %bb64 diff --git a/polly/test/ScopInfo/long-sequence-of-error-blocks.ll b/polly/test/ScopInfo/long-sequence-of-error-blocks.ll index 2b4553e6d4da..5b6ea9cc212d 100644 --- a/polly/test/ScopInfo/long-sequence-of-error-blocks.ll +++ b/polly/test/ScopInfo/long-sequence-of-error-blocks.ll @@ -4,7 +4,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -%struct.hoge = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [8 x [2 x i32]], [8 x [2 x i32]], [4 x [4 x i32]], i32, i32, i32, i32, [256 x i8], [256 x i8], [256 x i8], [256 x i8], [256 x i8], i32, i32, i32, i32, i32, i32, [500 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [256 x i8], [256 x i8], [256 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [1024 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [256 x i8], [256 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [256 x i8], i32, i32, i32*, i32*, i8*, i32*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, double, double, [5 x double], i32, [8 x i32], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [6 x double], [6 x double], [256 x i8], i32, i32, i32, i32, [2 x [5 x i32]], [2 x [5 x i32]], i32, i32, i32, i32, i32, i32, i32, i32, i32, [3 x i32], i32 } +%struct.hoge = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [8 x [2 x i32]], [8 x [2 x i32]], [4 x [4 x i32]], i32, i32, i32, i32, [256 x i8], [256 x i8], [256 x i8], [256 x i8], [256 x i8], i32, i32, i32, i32, i32, i32, [500 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [256 x i8], [256 x i8], [256 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [1024 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [256 x i8], [256 x i8], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [256 x i8], i32, i32, ptr, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, double, double, [5 x double], i32, [8 x i32], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [6 x double], [6 x double], [256 x i8], i32, i32, i32, i32, [2 x [5 x i32]], [2 x [5 x i32]], i32, i32, i32, i32, i32, i32, i32, i32, i32, [3 x i32], i32 } ; This test case contains a long sequence of branch instructions together with ; function calls that are considered 'error blocks'. We verify that the @@ -47,32 +47,32 @@ target triple = "x86_64-unknown-linux-gnu" ; CHECK-NEXT: } @global = external global [300 x i8], align 16 -@global1 = external global %struct.hoge*, align 8 +@global1 = external global ptr, align 8 @global2 = external unnamed_addr constant [79 x i8], align 1 @global3 = external unnamed_addr constant [57 x i8], align 1 declare void @widget() #0 ; Function Attrs: nounwind -declare void @quux(i8*, i64, i8*, ...) #1 +declare void @quux(ptr, i64, ptr, ...) #1 ; Function Attrs: nounwind uwtable -define void @hoge(float* %A) #2 { +define void @hoge(ptr %A) #2 { bb: br label %bb15 bb15: ; preds = %bb - %tmp = load %struct.hoge*, %struct.hoge** @global1, align 8, !tbaa !1 - %tmp16 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp, i64 0, i32 153 - store float 1.0, float* %A - %tmp17 = load i32, i32* %tmp16, align 4, !tbaa !5 + %tmp = load ptr, ptr @global1, align 8, !tbaa !1 + %tmp16 = getelementptr inbounds %struct.hoge, ptr %tmp, i64 0, i32 153 + store float 1.0, ptr %A + %tmp17 = load i32, ptr %tmp16, align 4, !tbaa !5 %tmp18 = icmp eq i32 %tmp17, 0 br i1 %tmp18, label %bb24, label %bb19 bb19: ; preds = %bb15 - %tmp20 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp, i64 0, i32 50 - store float 1.0, float* %A - %tmp21 = load i32, i32* %tmp20, align 8, !tbaa !9 + %tmp20 = getelementptr inbounds %struct.hoge, ptr %tmp, i64 0, i32 50 + store float 1.0, ptr %A + %tmp21 = load i32, ptr %tmp20, align 8, !tbaa !9 %tmp22 = icmp eq i32 %tmp21, 0 br i1 %tmp22, label %bb24, label %bb23 @@ -81,22 +81,21 @@ bb23: ; preds = %bb19 br label %bb24 bb24: ; preds = %bb23, %bb19, %bb15 - %tmp25 = load %struct.hoge*, %struct.hoge** @global1, align 8, !tbaa !1 - store float 1.0, float* %A - %tmp26 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp25, i64 0, i32 16 - %tmp27 = load i32, i32* %tmp26, align 8, !tbaa !10 + %tmp25 = load ptr, ptr @global1, align 8, !tbaa !1 + store float 1.0, ptr %A + %tmp26 = getelementptr inbounds %struct.hoge, ptr %tmp25, i64 0, i32 16 + %tmp27 = load i32, ptr %tmp26, align 8, !tbaa !10 %tmp28 = icmp eq i32 %tmp27, 3 br i1 %tmp28, label %bb29, label %bb34 bb29: ; preds = %bb24 - %tmp30 = getelementptr inbounds %struct.hoge, %struct.hoge* %tmp25, i64 0, i32 0 - store float 1.0, float* %A - %tmp31 = load i32, i32* %tmp30, align 8, !tbaa !11 + store float 1.0, ptr %A + %tmp31 = load i32, ptr %tmp25, align 8, !tbaa !11 %tmp32 = icmp slt i32 %tmp31, 144 br i1 %tmp32, label %bb33, label %bb34 bb33: ; preds = %bb29 - call void (i8*, i64, i8*, ...) @quux(i8* getelementptr inbounds ([300 x i8], [300 x i8]* @global, i64 0, i64 0), i64 300, i8* getelementptr inbounds ([79 x i8], [79 x i8]* @global2, i64 0, i64 0), i32 144) #3 + call void (ptr, i64, ptr, ...) @quux(ptr @global, i64 300, ptr @global2, i32 144) #3 br label %bb34 bb34: ; preds = %bb33, %bb29, %bb24 diff --git a/polly/test/ScopInfo/loop-multiexit-succ-cond.ll b/polly/test/ScopInfo/loop-multiexit-succ-cond.ll index bf6529b5c9d3..350db05c6dc0 100644 --- a/polly/test/ScopInfo/loop-multiexit-succ-cond.ll +++ b/polly/test/ScopInfo/loop-multiexit-succ-cond.ll @@ -39,7 +39,7 @@ declare void @g(); -define void @func(i64 %count1, i64 %count2, i32 %dobreak, float* %A) { +define void @func(i64 %count1, i64 %count2, i32 %dobreak, ptr %A) { entry: %fadd = fadd float undef, undef br label %loopguard @@ -50,7 +50,7 @@ loopguard: loop_enter: - store float 1.0, float* %A + store float 1.0, ptr %A br label %loop_header loop_header: @@ -66,7 +66,7 @@ loop_continue: loop_break: - store float 2.0, float* %A + store float 2.0, ptr %A br label %loop_break_error loop_break_error: @@ -79,7 +79,7 @@ loop_break_g: loop_finish: - store float 3.0, float* %A + store float 3.0, ptr %A br label %loop_finish_error loop_finish_error: @@ -88,7 +88,7 @@ loop_finish_error: loop_skip: - store float 4.0, float* %A + store float 4.0, ptr %A br label %loop_skip_error loop_skip_error: @@ -98,6 +98,6 @@ loop_skip_error: return: %phi = phi float [ 0.0, %loop_finish_error ], [ 0.0, %loop_break_error ], [ 2.0, %loop_break_g ], [ 3.0, %loop_skip_error ] - store float 1.0, float* %A + store float 1.0, ptr %A ret void } diff --git a/polly/test/ScopInfo/loop_affine_bound_0.ll b/polly/test/ScopInfo/loop_affine_bound_0.ll index e029082c5a6c..33f49df7780f 100644 --- a/polly/test/ScopInfo/loop_affine_bound_0.ll +++ b/polly/test/ScopInfo/loop_affine_bound_0.ll @@ -10,7 +10,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f([128 x i64]* nocapture %a, i64 %N, i64 %M) nounwind { +define void @f(ptr nocapture %a, i64 %N, i64 %M) nounwind { entry: %0 = shl i64 %N, 2 ; <i64> [#uses=2] %1 = mul i64 %M, 7 ; <i64> [#uses=2] @@ -21,8 +21,8 @@ entry: bb1: ; preds = %bb2.preheader, %bb1 %i.06 = phi i64 [ 0, %bb2.preheader ], [ %5, %bb1 ] ; <i64> [#uses=2] - %scevgep = getelementptr [128 x i64], [128 x i64]* %a, i64 %i.06, i64 %10 ; <i64*> [#uses=1] - store i64 0, i64* %scevgep, align 8 + %scevgep = getelementptr [128 x i64], ptr %a, i64 %i.06, i64 %10 ; <ptr> [#uses=1] + store i64 0, ptr %scevgep, align 8 %5 = add nsw i64 %i.06, 1 ; <i64> [#uses=2] %exitcond = icmp eq i64 %5, %8 ; <i1> [#uses=1] br i1 %exitcond, label %bb3, label %bb1 diff --git a/polly/test/ScopInfo/loop_affine_bound_1.ll b/polly/test/ScopInfo/loop_affine_bound_1.ll index 7c58d201308d..38e47b74465b 100644 --- a/polly/test/ScopInfo/loop_affine_bound_1.ll +++ b/polly/test/ScopInfo/loop_affine_bound_1.ll @@ -10,7 +10,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f([128 x i64]* nocapture %a, i64 %N, i64 %M) nounwind { +define void @f(ptr nocapture %a, i64 %N, i64 %M) nounwind { entry: %0 = shl i64 %N, 2 ; <i64> [#uses=2] %1 = mul i64 %M, 7 ; <i64> [#uses=2] @@ -21,8 +21,8 @@ entry: bb1: ; preds = %bb2.preheader, %bb1 %indvar = phi i64 [ 0, %bb2.preheader ], [ %indvar.next, %bb1 ] ; <i64> [#uses=2] - %scevgep = getelementptr [128 x i64], [128 x i64]* %a, i64 %indvar, i64 %tmp10 ; <i64*> [#uses=1] - store i64 0, i64* %scevgep, align 8 + %scevgep = getelementptr [128 x i64], ptr %a, i64 %indvar, i64 %tmp10 ; <ptr> [#uses=1] + store i64 0, ptr %scevgep, align 8 %indvar.next = add i64 %indvar, 1 ; <i64> [#uses=2] %exitcond = icmp sge i64 %indvar.next, %tmp9 ; <i1> [#uses=1] br i1 %exitcond, label %bb3, label %bb1 diff --git a/polly/test/ScopInfo/loop_affine_bound_2.ll b/polly/test/ScopInfo/loop_affine_bound_2.ll index a5e5de18de38..e34662f4e6ab 100644 --- a/polly/test/ScopInfo/loop_affine_bound_2.ll +++ b/polly/test/ScopInfo/loop_affine_bound_2.ll @@ -10,7 +10,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f([128 x i64]* nocapture %a, i64 %N, i64 %M) nounwind { +define void @f(ptr nocapture %a, i64 %N, i64 %M) nounwind { entry: %0 = shl i64 %N, 2 %1 = mul i64 %M, 7 @@ -46,8 +46,8 @@ bb: ; preds = %bb3, %bb.nph8 bb1: ; preds = %bb1, %bb %indvar = phi i64 [ 0, %bb ], [ %indvar.next, %bb1 ] %tmp16 = add i64 %indvar, %tmp15 - %scevgep = getelementptr [128 x i64], [128 x i64]* %a, i64 %tmp16, i64 %tmp17 - store i64 0, i64* %scevgep + %scevgep = getelementptr [128 x i64], ptr %a, i64 %tmp16, i64 %tmp17 + store i64 0, ptr %scevgep %indvar.next = add i64 %indvar, 1 %exitcond = icmp eq i64 %indvar.next, %tmp13 br i1 %exitcond, label %bb3, label %bb1 diff --git a/polly/test/ScopInfo/loop_carry.ll b/polly/test/ScopInfo/loop_carry.ll index 786837c18565..f7c1dca0919c 100644 --- a/polly/test/ScopInfo/loop_carry.ll +++ b/polly/test/ScopInfo/loop_carry.ll @@ -12,14 +12,14 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; return 0; ;} -define i64 @f(i64* nocapture %a, i64 %n) nounwind { +define i64 @f(ptr nocapture %a, i64 %n) nounwind { entry: %0 = icmp sgt i64 %n, 1 ; <i1> [#uses=1] br i1 %0, label %bb.nph, label %bb2 bb.nph: ; preds = %entry %tmp = add i64 %n, -1 ; <i64> [#uses=1] - %.pre = load i64, i64* %a, align 8 ; <i64> [#uses=1] + %.pre = load i64, ptr %a, align 8 ; <i64> [#uses=1] br label %bb bb: ; preds = %bb, %bb.nph @@ -27,16 +27,16 @@ bb: ; preds = %bb, %bb.nph %indvar = phi i64 [ 0, %bb.nph ], [ %tmp6, %bb ] ; <i64> [#uses=3] %k.05 = phi i64 [ 1, %bb.nph ], [ %tmp5, %bb ] ; <i64> [#uses=1] %tmp6 = add i64 %indvar, 1 ; <i64> [#uses=3] - %scevgep = getelementptr i64, i64* %a, i64 %tmp6 ; <i64*> [#uses=1] + %scevgep = getelementptr i64, ptr %a, i64 %tmp6 ; <ptr> [#uses=1] %tmp2 = mul nsw i64 %tmp1, %k.05 ; <i64> [#uses=2] - store i64 %tmp2, i64* %scevgep, align 8 + store i64 %tmp2, ptr %scevgep, align 8 %tmp7 = shl i64 %indvar, 1 ; <i64> [#uses=1] %tmp11 = add i64 %indvar, 4 ; <i64> [#uses=1] %tmp8 = add i64 %tmp7, 2 ; <i64> [#uses=1] - %scevgep12 = getelementptr i64, i64* %a, i64 %tmp11 ; <i64*> [#uses=1] - %scevgep9 = getelementptr i64, i64* %a, i64 %tmp8 ; <i64*> [#uses=1] - %tmp3 = load i64, i64* %scevgep9, align 8 ; <i64> [#uses=1] - %tmp4 = load i64, i64* %scevgep12, align 8 ; <i64> [#uses=1] + %scevgep12 = getelementptr i64, ptr %a, i64 %tmp11 ; <ptr> [#uses=1] + %scevgep9 = getelementptr i64, ptr %a, i64 %tmp8 ; <ptr> [#uses=1] + %tmp3 = load i64, ptr %scevgep9, align 8 ; <i64> [#uses=1] + %tmp4 = load i64, ptr %scevgep12, align 8 ; <i64> [#uses=1] %tmp5 = add nsw i64 %tmp3, %tmp4 ; <i64> [#uses=1] %exitcond = icmp eq i64 %tmp6, %tmp ; <i1> [#uses=1] br i1 %exitcond, label %bb2, label %bb diff --git a/polly/test/ScopInfo/many-scalar-dependences.ll b/polly/test/ScopInfo/many-scalar-dependences.ll index 962a42ac8604..aaa02f581a1c 100644 --- a/polly/test/ScopInfo/many-scalar-dependences.ll +++ b/polly/test/ScopInfo/many-scalar-dependences.ll @@ -147,7 +147,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f([100 x float]* %a) { +define void @f(ptr %a) { bb: br label %bb5 @@ -184,10 +184,10 @@ bb11: ; preds = %bb10 bb12: ; preds = %bb11, %bb10 %x.3 = phi float [ 4.200000e+01, %bb11 ], [ %x.2, %bb10 ] - %tmp13 = getelementptr inbounds [100 x float], [100 x float]* %a, i64 %indvars.iv2, i64 %indvars.iv - %tmp14 = load float, float* %tmp13, align 4 + %tmp13 = getelementptr inbounds [100 x float], ptr %a, i64 %indvars.iv2, i64 %indvars.iv + %tmp14 = load float, ptr %tmp13, align 4 %tmp15 = fadd float %tmp14, %x.3 - store float %tmp15, float* %tmp13, align 4 + store float %tmp15, ptr %tmp13, align 4 br label %bb16 bb16: ; preds = %bb12 diff --git a/polly/test/ScopInfo/max-loop-depth.ll b/polly/test/ScopInfo/max-loop-depth.ll index 3e69c08ff5b9..3c7db4458604 100644 --- a/polly/test/ScopInfo/max-loop-depth.ll +++ b/polly/test/ScopInfo/max-loop-depth.ll @@ -16,7 +16,7 @@ ; CHECK: Max Loop Depth: 1 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i32* %A, i32* %B, i64 %N, i64 %M) { +define void @foo(ptr %A, ptr %B, i64 %N, i64 %M) { entry: %cmp1 = icmp slt i64 0, %M br i1 %cmp1, label %for.body1, label %for.end1 @@ -29,10 +29,10 @@ entry: for.body2: ; preds = %for.body1, %for.inc2 %i.1 = phi i64 [ 0, %for.body1 ], [ %i.next.1, %for.inc2 ] - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %i.1 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %i.1 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 1 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc2 for.inc2: ; preds = %for.body2 @@ -47,10 +47,10 @@ entry: for.body3: ; preds = %for.end2 %i.2 = phi i64 [ 0, %for.end2 ], [ %i.next.2, %for.inc3 ] - %arrayidx1 = getelementptr inbounds i32, i32* %A, i64 %i.2 - %tmp1 = load i32, i32* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %A, i64 %i.2 + %tmp1 = load i32, ptr %arrayidx1, align 4 %add1 = add nsw i32 %tmp1, 1 - store i32 %add1, i32* %arrayidx1, align 4 + store i32 %add1, ptr %arrayidx1, align 4 br label %for.inc3 for.inc3: ; preds = %for.body3 diff --git a/polly/test/ScopInfo/memcpy-raw-source.ll b/polly/test/ScopInfo/memcpy-raw-source.ll index 2612b2abdc53..137ab8229220 100644 --- a/polly/test/ScopInfo/memcpy-raw-source.ll +++ b/polly/test/ScopInfo/memcpy-raw-source.ll @@ -8,7 +8,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @tonemasks = external global [17 x [6 x [56 x float]]], align 16 ; Function Attrs: argmemonly nounwind -declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture writeonly, i8* nocapture readonly, i64, i32, i1) #0 +declare void @llvm.memcpy.p0.p0.i64(ptr nocapture writeonly, ptr nocapture readonly, i64, i32, i1) #0 ; Function Attrs: nounwind uwtable define void @setup_tone_curves() #1 { @@ -24,27 +24,20 @@ for.cond7.preheader: ; preds = %for.cond7.preheader for.body36: ; preds = %for.body36, %for.cond7.preheader %indvars.iv49 = phi i64 [ %indvars.iv.next50, %for.body36 ], [ 0, %for.cond7.preheader ] - %arraydecay42 = getelementptr inbounds [17 x [8 x [56 x float]]], [17 x [8 x [56 x float]]]* %workc, i64 0, i64 0, i64 0, i64 0 - %0 = bitcast float* %arraydecay42 to i8* - %arraydecay47 = getelementptr inbounds [17 x [6 x [56 x float]]], [17 x [6 x [56 x float]]]* @tonemasks, i64 0, i64 0, i64 %indvars.iv49, i64 0 - %1 = bitcast float* %arraydecay47 to i8* - call void @llvm.memcpy.p0i8.p0i8.i64(i8* %0, i8* %1, i64 224, i32 16, i1 false) + %arraydecay47 = getelementptr inbounds [17 x [6 x [56 x float]]], ptr @tonemasks, i64 0, i64 0, i64 %indvars.iv49, i64 0 + call void @llvm.memcpy.p0.p0.i64(ptr %workc, ptr %arraydecay47, i64 224, i32 16, i1 false) %indvars.iv.next50 = add nuw nsw i64 %indvars.iv49, 1 br i1 false, label %for.body36, label %for.end50 for.end50: ; preds = %for.body36 - %arrayidx38 = getelementptr inbounds [17 x [8 x [56 x float]]], [17 x [8 x [56 x float]]]* %workc, i64 0, i64 0 - %2 = bitcast [8 x [56 x float]]* %arrayidx38 to i8* - %arraydecay58 = getelementptr inbounds [17 x [6 x [56 x float]]], [17 x [6 x [56 x float]]]* @tonemasks, i64 0, i64 0, i64 0, i64 0 - %3 = bitcast float* %arraydecay58 to i8* - call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 224, i32 16, i1 false) + call void @llvm.memcpy.p0.p0.i64(ptr %workc, ptr @tonemasks, i64 224, i32 16, i1 false) br label %for.body74 for.body74: ; preds = %for.body74, %for.end50 %indvars.iv53 = phi i64 [ %indvars.iv.next54, %for.body74 ], [ 0, %for.end50 ] - %arrayidx99 = getelementptr inbounds [17 x [8 x [56 x float]]], [17 x [8 x [56 x float]]]* %workc, i64 0, i64 0, i64 0, i64 %indvars.iv53 - %4 = load float, float* %arrayidx99, align 4 - store float undef, float* %arrayidx99, align 4 + %arrayidx99 = getelementptr inbounds [17 x [8 x [56 x float]]], ptr %workc, i64 0, i64 0, i64 0, i64 %indvars.iv53 + %0 = load float, ptr %arrayidx99, align 4 + store float undef, ptr %arrayidx99, align 4 %indvars.iv.next54 = add nuw nsw i64 %indvars.iv53, 1 %exitcond57 = icmp ne i64 %indvars.iv.next54, 56 br i1 %exitcond57, label %for.body74, label %for.inc104 diff --git a/polly/test/ScopInfo/memset.ll b/polly/test/ScopInfo/memset.ll index 85c28ec116f9..ef86b4c275e5 100644 --- a/polly/test/ScopInfo/memset.ll +++ b/polly/test/ScopInfo/memset.ll @@ -13,10 +13,9 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_for_body3[i0, i1] -> MemRef_A[o0] : 0 <= o0 <= 186 }; ; -; IR: %[[r1:[a-zA-Z0-9]*]] = bitcast i32* %A to i8* ; ; IR: polly.stmt.for.body3: -; IR: call void @llvm.memset.p0i8.i64(i8* align 4 %[[r1]], i8 36, i64 187, i1 false) +; IR: call void @llvm.memset.p0.i64(ptr align 4 %A, i8 36, i64 187, i1 false) ; ; #include <string.h> ; @@ -28,7 +27,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* noalias %A) { +define void @jd(ptr noalias %A) { entry: br label %for.cond @@ -46,8 +45,7 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %tmp = bitcast i32* %A to i8* - call void @llvm.memset.p0i8.i64(i8* %tmp, i8 36, i64 187, i32 4, i1 false) + call void @llvm.memset.p0.i64(ptr %A, i8 36, i64 187, i32 4, i1 false) br label %for.inc for.inc: ; preds = %for.body3 @@ -65,5 +63,5 @@ for.end6: ; preds = %for.cond ret void } -declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) #1 +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) #1 diff --git a/polly/test/ScopInfo/memset_null.ll b/polly/test/ScopInfo/memset_null.ll index d1ae8481c85a..1608ff6ebef4 100644 --- a/polly/test/ScopInfo/memset_null.ll +++ b/polly/test/ScopInfo/memset_null.ll @@ -18,7 +18,7 @@ ; target datalayout = "e-m:e-i64:64-i128:128-n8:16:32:64-S128" -define void @test(i32* %A) { +define void @test(ptr %A) { entry: br i1 undef, label %for.end68, label %for.cond5.preheader.lr.ph @@ -26,12 +26,12 @@ for.cond5.preheader.lr.ph: ; preds = %entry br label %for.cond5.preheader.us221 for.cond5.preheader.us221: ; preds = %for.cond5.preheader.us221, %for.cond5.preheader.lr.ph - store i32 0, i32* %A - call void @llvm.memset.p0i8.i64(i8* null, i8 0, i64 undef, i32 1, i1 false) + store i32 0, ptr %A + call void @llvm.memset.p0.i64(ptr null, i8 0, i64 undef, i32 1, i1 false) br i1 true, label %for.end68, label %for.cond5.preheader.us221 for.end68: ; preds = %for.cond5.preheader.us221, %entry ret void } -declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) +declare void @llvm.memset.p0.i64(ptr nocapture, i8, i64, i32, i1) diff --git a/polly/test/ScopInfo/mismatching-array-dimensions.ll b/polly/test/ScopInfo/mismatching-array-dimensions.ll index 10edd12eeef2..a1c6d4e82127 100644 --- a/polly/test/ScopInfo/mismatching-array-dimensions.ll +++ b/polly/test/ScopInfo/mismatching-array-dimensions.ll @@ -6,7 +6,7 @@ target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-apple-macosx10.9.0" ; Function Attrs: nounwind ssp uwtable -define void @hoge([38 x [64 x float]]* %arg, [32 x [2 x float]]* %arg5, i32 %arg6) #0 { +define void @hoge(ptr %arg, ptr %arg5, i32 %arg6) #0 { bb: br i1 undef, label %bb7, label %bb25 @@ -16,15 +16,12 @@ bb7: ; preds = %bb21, %bb br i1 %tmp9, label %bb10, label %bb21 bb10: ; preds = %bb10, %bb7 - %tmp11 = getelementptr inbounds [32 x [2 x float]], [32 x [2 x float]]* %arg5, i64 %tmp8, i64 0 - %tmp = bitcast [2 x float]* %tmp11 to i32* - %tmp12 = load i32, i32* %tmp, align 4, !tbaa !4 - %tmp13 = getelementptr inbounds [32 x [2 x float]], [32 x [2 x float]]* %arg5, i64 %tmp8, i64 0, i64 1 - %tmp14 = bitcast float* %tmp13 to i32* - %tmp15 = load i32, i32* %tmp14, align 4, !tbaa !4 - %tmp16 = getelementptr inbounds [38 x [64 x float]], [38 x [64 x float]]* %arg, i64 1, i64 0, i64 %tmp8 - %tmp17 = bitcast float* %tmp16 to i32* - store i32 %tmp15, i32* %tmp17, align 4, !tbaa !4 + %tmp11 = getelementptr inbounds [32 x [2 x float]], ptr %arg5, i64 %tmp8, i64 0 + %tmp12 = load i32, ptr %tmp11, align 4, !tbaa !4 + %tmp13 = getelementptr inbounds [32 x [2 x float]], ptr %arg5, i64 %tmp8, i64 0, i64 1 + %tmp15 = load i32, ptr %tmp13, align 4, !tbaa !4 + %tmp16 = getelementptr inbounds [38 x [64 x float]], ptr %arg, i64 1, i64 0, i64 %tmp8 + store i32 %tmp15, ptr %tmp16, align 4, !tbaa !4 %tmp18 = add nuw nsw i64 0, 1 %tmp19 = trunc i64 %tmp18 to i32 %tmp20 = icmp ne i32 %tmp19, %arg6 diff --git a/polly/test/ScopInfo/mod_ref_access_pointee_arguments.ll b/polly/test/ScopInfo/mod_ref_access_pointee_arguments.ll index 7b624ee42696..72889324e37e 100644 --- a/polly/test/ScopInfo/mod_ref_access_pointee_arguments.ll +++ b/polly/test/ScopInfo/mod_ref_access_pointee_arguments.ll @@ -27,18 +27,17 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* noalias %A, i32* noalias %B) { +define void @jd(ptr noalias %A, ptr noalias %B) { entry: br label %for.body for.body: ; preds = %entry, %for.inc %i = phi i64 [ 0, %entry ], [ %i.next, %for.inc ] - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %i - %arrayidx1 = getelementptr inbounds i32, i32* %B, i64 %i - %bc = bitcast i32* %arrayidx to i8* - call void @f(i8* %bc, i32 1, i32 1, i32 1) - %tmp = load i32, i32* %arrayidx1 - store i32 %tmp, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %i + %arrayidx1 = getelementptr inbounds i32, ptr %B, i64 %i + call void @f(ptr %arrayidx, i32 1, i32 1, i32 1) + %tmp = load i32, ptr %arrayidx1 + store i32 %tmp, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -50,6 +49,6 @@ for.end: ; preds = %for.inc ret void } -declare void @f(i8*, i32, i32, i32) #0 +declare void @f(ptr, i32, i32, i32) #0 attributes #0 = { argmemonly nounwind } diff --git a/polly/test/ScopInfo/mod_ref_read_pointee_arguments.ll b/polly/test/ScopInfo/mod_ref_read_pointee_arguments.ll index 7b9f494ecbe0..2f6c6792fd9d 100644 --- a/polly/test/ScopInfo/mod_ref_read_pointee_arguments.ll +++ b/polly/test/ScopInfo/mod_ref_read_pointee_arguments.ll @@ -31,9 +31,9 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* noalias %A, i32* noalias %B) gc "dummy" { +define void @jd(ptr noalias %A, ptr noalias %B) gc "dummy" { entry: - %dummyloc = alloca i8* + %dummyloc = alloca ptr br label %entry.split entry.split: ; preds = %entry @@ -41,13 +41,12 @@ entry.split: ; preds = %entry for.body: ; preds = %entry.split, %for.inc %i = phi i64 [ 0, %entry.split ], [ %i.next, %for.inc ] - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %i - %arrayidx1 = getelementptr inbounds i32, i32* %B, i64 %i - %bc = bitcast i32* %arrayidx to i8* - %dummy = call i8* @f(i8* %bc, i8** null) - store i8* %dummy, i8** %dummyloc, align 4 - %tmp = load i32, i32* %arrayidx1 - store i32 %tmp, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %i + %arrayidx1 = getelementptr inbounds i32, ptr %B, i64 %i + %dummy = call ptr @f(ptr %arrayidx, ptr null) + store ptr %dummy, ptr %dummyloc, align 4 + %tmp = load i32, ptr %arrayidx1 + store i32 %tmp, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -59,6 +58,6 @@ for.end: ; preds = %for.inc ret void } -declare i8* @f(i8*, i8**) #0 +declare ptr @f(ptr, ptr) #0 attributes #0 = { argmemonly readonly nounwind } diff --git a/polly/test/ScopInfo/mod_ref_read_pointer.ll b/polly/test/ScopInfo/mod_ref_read_pointer.ll index c66d7f4be442..657e37c68a7b 100644 --- a/polly/test/ScopInfo/mod_ref_read_pointer.ll +++ b/polly/test/ScopInfo/mod_ref_read_pointer.ll @@ -23,16 +23,16 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A) { +define void @jd(ptr %A) { entry: br label %for.body for.body: ; preds = %entry, %for.inc %i = phi i64 [ 0, %entry ], [ %i.next, %for.inc ] - %call = call i32 @func(i32* %A) #2 + %call = call i32 @func(ptr %A) #2 %tmp = add nsw i64 %i, 2 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %tmp - store i32 %call, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %tmp + store i32 %call, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -44,6 +44,6 @@ for.end: ; preds = %for.inc ret void } -declare i32 @func(i32*) #0 +declare i32 @func(ptr) #0 attributes #0 = { nounwind readonly } diff --git a/polly/test/ScopInfo/mod_ref_read_pointers.ll b/polly/test/ScopInfo/mod_ref_read_pointers.ll index 7cad5698fcff..7ed3423a2aeb 100644 --- a/polly/test/ScopInfo/mod_ref_read_pointers.ll +++ b/polly/test/ScopInfo/mod_ref_read_pointers.ll @@ -30,19 +30,19 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* noalias %A, i32* noalias %B) { +define void @jd(ptr noalias %A, ptr noalias %B) { entry: br label %for.body for.body: ; preds = %entry, %for.inc %i = phi i64 [ 0, %entry ], [ %i.next, %for.inc ] - %call = call i32 @func(i32* %A) - %arrayidx = getelementptr inbounds i32, i32* %B, i64 %i - %tmp = load i32, i32* %arrayidx, align 4 + %call = call i32 @func(ptr %A) + %arrayidx = getelementptr inbounds i32, ptr %B, i64 %i + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %call, %tmp %tmp1 = add nsw i64 %i, 2 - %arrayidx1 = getelementptr inbounds i32, i32* %A, i64 %tmp1 - store i32 %add, i32* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %A, i64 %tmp1 + store i32 %add, ptr %arrayidx1, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -54,6 +54,6 @@ for.end: ; preds = %for.inc ret void } -declare i32 @func(i32*) #0 +declare i32 @func(ptr) #0 attributes #0 = { nounwind readonly } diff --git a/polly/test/ScopInfo/modulo_zext_1.ll b/polly/test/ScopInfo/modulo_zext_1.ll index 5b853ae36cd5..d611ec4807b5 100644 --- a/polly/test/ScopInfo/modulo_zext_1.ll +++ b/polly/test/ScopInfo/modulo_zext_1.ll @@ -25,7 +25,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: br label %for.cond @@ -38,10 +38,10 @@ for.body: ; preds = %for.cond %i.t = trunc i32 %i.0 to i1 %rem = zext i1 %i.t to i32 %idxprom = sext i32 %rem to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + %tmp = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/modulo_zext_2.ll b/polly/test/ScopInfo/modulo_zext_2.ll index a2099ed37c13..8d2321849174 100644 --- a/polly/test/ScopInfo/modulo_zext_2.ll +++ b/polly/test/ScopInfo/modulo_zext_2.ll @@ -26,7 +26,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -43,10 +43,10 @@ for.body: ; preds = %for.cond br i1 %tobool, label %if.end, label %if.then if.then: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp2, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %for.body, %if.then diff --git a/polly/test/ScopInfo/modulo_zext_3.ll b/polly/test/ScopInfo/modulo_zext_3.ll index 99b4df31f93a..acb26dc1c77f 100644 --- a/polly/test/ScopInfo/modulo_zext_3.ll +++ b/polly/test/ScopInfo/modulo_zext_3.ll @@ -26,7 +26,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i64* %A, i64 %N) { +define void @f(ptr %A, i64 %N) { entry: br label %for.cond @@ -38,10 +38,10 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %i.t = trunc i64 %i.0 to i33 %rem = zext i33 %i.t to i64 - %arrayidx = getelementptr inbounds i64, i64* %A, i64 %rem - %tmp = load i64, i64* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i64, ptr %A, i64 %rem + %tmp = load i64, ptr %arrayidx, align 4 %inc = add nsw i64 %tmp, 1 - store i64 %inc, i64* %arrayidx, align 4 + store i64 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/multi-scop.ll b/polly/test/ScopInfo/multi-scop.ll index ccea6d525472..186aee832946 100644 --- a/polly/test/ScopInfo/multi-scop.ll +++ b/polly/test/ScopInfo/multi-scop.ll @@ -2,7 +2,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; This test case contains two scops. -define void @test(i32 %l, double* %a) { +define void @test(i32 %l, ptr %a) { entry: br label %entry.split @@ -22,8 +22,8 @@ for.body81: ; preds = %for.body81, %for.en %j.19 = phi i32 [ %shl, %for.end ], [ %add169, %for.body81 ] %add13710 = or i32 %j.19, 1 %idxprom138 = sext i32 %add13710 to i64 - %arrayidx139 = getelementptr inbounds double, double* %a, i64 %idxprom138 - store double undef, double* %arrayidx139, align 8 + %arrayidx139 = getelementptr inbounds double, ptr %a, i64 %idxprom138 + store double undef, ptr %arrayidx139, align 8 %add169 = add nsw i32 %j.19, 2 br i1 false, label %for.body81, label %for.end170 diff --git a/polly/test/ScopInfo/multidim_2d-diagonal-matrix.ll b/polly/test/ScopInfo/multidim_2d-diagonal-matrix.ll index f1de0d07c0aa..278c06a2fdba 100644 --- a/polly/test/ScopInfo/multidim_2d-diagonal-matrix.ll +++ b/polly/test/ScopInfo/multidim_2d-diagonal-matrix.ll @@ -22,7 +22,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK: [n] -> { Stmt_for_i[i0] -> MemRef_A[i0, i0] }; -define void @foo(i64 %n, double* %A) { +define void @foo(i64 %n, ptr %A) { entry: br label %for.i @@ -30,8 +30,8 @@ for.i: %i = phi i64 [ 0, %entry ], [ %i.inc, %for.i ] %tmp = mul nsw i64 %i, %n %vlaarrayidx.sum = add i64 %i, %tmp - %arrayidx = getelementptr inbounds double, double* %A, i64 %vlaarrayidx.sum - store double 1.0, double* %arrayidx + %arrayidx = getelementptr inbounds double, ptr %A, i64 %vlaarrayidx.sum + store double 1.0, ptr %arrayidx %i.inc = add nsw i64 %i, 1 %i.exitcond = icmp eq i64 %i.inc, %n br i1 %i.exitcond, label %end, label %for.i diff --git a/polly/test/ScopInfo/multidim_2d_outer_parametric_offset.ll b/polly/test/ScopInfo/multidim_2d_outer_parametric_offset.ll index 1d97418a24bc..06a76466c25e 100644 --- a/polly/test/ScopInfo/multidim_2d_outer_parametric_offset.ll +++ b/polly/test/ScopInfo/multidim_2d_outer_parametric_offset.ll @@ -25,7 +25,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK-NEXT: [m, p] -> { Stmt_for_j[i0, i1] -> MemRef_A[p + i0, i1] }; ; CHECK-NEXT: } -define void @foo(i64 %n, i64 %m, i64 %p, double* %A) { +define void @foo(i64 %n, i64 %m, i64 %p, ptr %A) { entry: br label %for.i @@ -38,8 +38,8 @@ for.i: for.j: %j = phi i64 [ 0, %for.i ], [ %j.inc, %for.j ] %vlaarrayidx.sum = add i64 %j, %tmp - %arrayidx = getelementptr inbounds double, double* %A, i64 %vlaarrayidx.sum - store double 1.0, double* %arrayidx + %arrayidx = getelementptr inbounds double, ptr %A, i64 %vlaarrayidx.sum + store double 1.0, ptr %arrayidx %j.inc = add nsw i64 %j, 1 %j.exitcond = icmp eq i64 %j.inc, %m br i1 %j.exitcond, label %for.i.inc, label %for.j diff --git a/polly/test/ScopInfo/multidim_2d_parametric_array_static_loop_bounds.ll b/polly/test/ScopInfo/multidim_2d_parametric_array_static_loop_bounds.ll index 0f353d874212..bfbe5682d44a 100644 --- a/polly/test/ScopInfo/multidim_2d_parametric_array_static_loop_bounds.ll +++ b/polly/test/ScopInfo/multidim_2d_parametric_array_static_loop_bounds.ll @@ -23,7 +23,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK-NEXT: [m] -> { Stmt_for_j[i0, i1] -> MemRef_A[i0, i1] }; ; CHECK-NEXT: } -define void @foo(i64 %n, i64 %m, double* %A) { +define void @foo(i64 %n, i64 %m, ptr %A) { entry: br label %for.i @@ -35,8 +35,8 @@ for.i: for.j: %j = phi i64 [ 0, %for.i ], [ %j.inc, %for.j ] %vlaarrayidx.sum = add i64 %j, %tmp - %arrayidx = getelementptr inbounds double, double* %A, i64 %vlaarrayidx.sum - store double 1.0, double* %arrayidx + %arrayidx = getelementptr inbounds double, ptr %A, i64 %vlaarrayidx.sum + store double 1.0, ptr %arrayidx %j.inc = add nsw i64 %j, 1 %j.exitcond = icmp eq i64 %j.inc, 150 br i1 %j.exitcond, label %for.i.inc, label %for.j diff --git a/polly/test/ScopInfo/multidim_2d_with_modref_call.ll b/polly/test/ScopInfo/multidim_2d_with_modref_call.ll index 76bebad986c7..ba934adb675a 100644 --- a/polly/test/ScopInfo/multidim_2d_with_modref_call.ll +++ b/polly/test/ScopInfo/multidim_2d_with_modref_call.ll @@ -123,16 +123,16 @@ target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f16:16:16-f32:32:32-f64:64:64-f128:128:128-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @ham(i64* noalias %arg, i64* noalias %arg1, i64* noalias %arg2, i64* noalias %arg3, [1000 x double]* noalias %arg4) unnamed_addr { +define void @ham(ptr noalias %arg, ptr noalias %arg1, ptr noalias %arg2, ptr noalias %arg3, ptr noalias %arg4) unnamed_addr { bb: br label %bb5 bb5: ; preds = %bb - %tmp = load i64, i64* %arg1, align 8 + %tmp = load i64, ptr %arg1, align 8 %tmp6 = icmp slt i64 %tmp, 0 %tmp7 = select i1 %tmp6, i64 0, i64 %tmp %tmp8 = xor i64 %tmp7, -1 - %tmp9 = load i64, i64* %arg, align 8 + %tmp9 = load i64, ptr %arg, align 8 %tmp10 = icmp sgt i64 %tmp9, 0 br i1 %tmp10, label %bb11, label %bb32 @@ -141,7 +141,7 @@ bb11: ; preds = %bb5 bb12: ; preds = %bb28, %bb11 %tmp13 = phi i64 [ %tmp30, %bb28 ], [ 1, %bb11 ] - %tmp14 = load i64, i64* %arg1, align 8 + %tmp14 = load i64, ptr %arg1, align 8 %tmp15 = icmp sgt i64 %tmp14, 0 br i1 %tmp15, label %bb16, label %bb28 @@ -155,10 +155,10 @@ bb17: ; preds = %bb17, %bb16 %tmp21 = add i64 %tmp20, %tmp18 %tmp22 = add i64 %tmp18, %tmp13 %tmp23 = sitofp i64 %tmp22 to double - %tmp24 = getelementptr [1000 x double], [1000 x double]* %arg4, i64 0, i64 %tmp21 - %call = call double @func(double* %tmp24) #2 + %tmp24 = getelementptr [1000 x double], ptr %arg4, i64 0, i64 %tmp21 + %call = call double @func(ptr %tmp24) #2 %sum = fadd double %call, %tmp23 - store double %sum, double* %tmp24, align 8 + store double %sum, ptr %tmp24, align 8 %tmp25 = icmp eq i64 %tmp18, %tmp14 %tmp26 = add i64 %tmp18, 1 br i1 %tmp25, label %bb27, label %bb17 @@ -178,6 +178,6 @@ bb32: ; preds = %bb31, %bb5 ret void } -declare double @func(double*) #1 +declare double @func(ptr) #1 attributes #1 = { nounwind readonly } diff --git a/polly/test/ScopInfo/multidim_2d_with_modref_call_2.ll b/polly/test/ScopInfo/multidim_2d_with_modref_call_2.ll index fe8cfdd03528..3da123fd1f60 100644 --- a/polly/test/ScopInfo/multidim_2d_with_modref_call_2.ll +++ b/polly/test/ScopInfo/multidim_2d_with_modref_call_2.ll @@ -27,12 +27,12 @@ ; CHECK-NEXT: Arrays { ; CHECK-NEXT: i64 MemRef_arg1[*]; // Element size 8 ; CHECK-NEXT: i64 MemRef_tmp13; // Element size 8 -; CHECK-NEXT: [1000 x double]* MemRef_arg4[*]; // Element size 8 +; CHECK-NEXT: ptr MemRef_arg4[*]; // Element size 8 ; CHECK-NEXT: } ; CHECK-NEXT: Arrays (Bounds as pw_affs) { ; CHECK-NEXT: i64 MemRef_arg1[*]; // Element size 8 ; CHECK-NEXT: i64 MemRef_tmp13; // Element size 8 -; CHECK-NEXT: [1000 x double]* MemRef_arg4[*]; // Element size 8 +; CHECK-NEXT: ptr MemRef_arg4[*]; // Element size 8 ; CHECK-NEXT: } ; CHECK-NEXT: Alias Groups (0): ; CHECK-NEXT: n/a @@ -80,14 +80,14 @@ ; NONAFFINE-NEXT: i64 MemRef_arg1[*]; // Element size 8 ; NONAFFINE-NEXT: i64 MemRef_tmp7; // Element size 8 ; NONAFFINE-NEXT: i64 MemRef_tmp8; // Element size 8 -; NONAFFINE-NEXT: [1000 x double]* MemRef_arg4[*]; // Element size 8 +; NONAFFINE-NEXT: ptr MemRef_arg4[*]; // Element size 8 ; NONAFFINE-NEXT: } ; NONAFFINE-NEXT: Arrays (Bounds as pw_affs) { ; NONAFFINE-NEXT: i64 MemRef_arg[*]; // Element size 8 ; NONAFFINE-NEXT: i64 MemRef_arg1[*]; // Element size 8 ; NONAFFINE-NEXT: i64 MemRef_tmp7; // Element size 8 ; NONAFFINE-NEXT: i64 MemRef_tmp8; // Element size 8 -; NONAFFINE-NEXT: [1000 x double]* MemRef_arg4[*]; // Element size 8 +; NONAFFINE-NEXT: ptr MemRef_arg4[*]; // Element size 8 ; NONAFFINE-NEXT: } ; NONAFFINE-NEXT: Alias Groups (0): ; NONAFFINE-NEXT: n/a @@ -118,16 +118,16 @@ target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f16:16:16-f32:32:32-f64:64:64-f128:128:128-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @ham(i64* noalias %arg, i64* noalias %arg1, i64* noalias %arg2, i64* noalias %arg3, [1000 x double]* noalias %arg4) gc "dummy" { +define void @ham(ptr noalias %arg, ptr noalias %arg1, ptr noalias %arg2, ptr noalias %arg3, ptr noalias %arg4) gc "dummy" { bb: br label %bb5 bb5: ; preds = %bb - %tmp = load i64, i64* %arg1, align 8 + %tmp = load i64, ptr %arg1, align 8 %tmp6 = icmp slt i64 %tmp, 0 %tmp7 = select i1 %tmp6, i64 0, i64 %tmp %tmp8 = xor i64 %tmp7, -1 - %tmp9 = load i64, i64* %arg, align 8 + %tmp9 = load i64, ptr %arg, align 8 %tmp10 = icmp sgt i64 %tmp9, 0 br i1 %tmp10, label %bb11, label %bb32 @@ -136,7 +136,7 @@ bb11: ; preds = %bb5 bb12: ; preds = %bb28, %bb11 %tmp13 = phi i64 [ %tmp30, %bb28 ], [ 1, %bb11 ] - %tmp14 = load i64, i64* %arg1, align 8 + %tmp14 = load i64, ptr %arg1, align 8 %tmp15 = icmp sgt i64 %tmp14, 0 br i1 %tmp15, label %bb16, label %bb28 @@ -150,10 +150,9 @@ bb17: ; preds = %bb17, %bb16 %tmp21 = add i64 %tmp20, %tmp18 %tmp22 = add i64 %tmp18, %tmp13 %tmp23 = sitofp i64 %tmp22 to double - %tmp24 = getelementptr [1000 x double], [1000 x double]* %arg4, i64 0, i64 %tmp21 - %bc = bitcast double* %tmp24 to i8* - %dummy = call i8* @llvm.gcread(i8* %bc, i8** null) - store double %tmp23, double* %tmp24, align 8 + %tmp24 = getelementptr [1000 x double], ptr %arg4, i64 0, i64 %tmp21 + %dummy = call ptr @llvm.gcread(ptr %tmp24, ptr null) + store double %tmp23, ptr %tmp24, align 8 %tmp25 = icmp eq i64 %tmp18, %tmp14 %tmp26 = add i64 %tmp18, 1 br i1 %tmp25, label %bb27, label %bb17 @@ -173,4 +172,4 @@ bb32: ; preds = %bb31, %bb5 ret void } -declare i8* @llvm.gcread(i8*, i8**) +declare ptr @llvm.gcread(ptr, ptr) diff --git a/polly/test/ScopInfo/multidim_3d_parametric_array_static_loop_bounds.ll b/polly/test/ScopInfo/multidim_3d_parametric_array_static_loop_bounds.ll index c2fe44b49469..988475575fec 100644 --- a/polly/test/ScopInfo/multidim_3d_parametric_array_static_loop_bounds.ll +++ b/polly/test/ScopInfo/multidim_3d_parametric_array_static_loop_bounds.ll @@ -27,7 +27,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK-NEXT: [m, o] -> { Stmt_for_k[i0, i1, i2] -> MemRef_A[i0, i1, i2] }; ; CHECK-NEXT: } -define void @foo(i64 %n, i64 %m, i64 %o, double* %A) { +define void @foo(i64 %n, i64 %m, i64 %o, ptr %A) { entry: br label %for.i @@ -45,8 +45,8 @@ for.k: %subscript1 = add i64 %j, %subscript0 %subscript2 = mul i64 %subscript1, %o %subscript = add i64 %subscript2, %k - %idx = getelementptr inbounds double, double* %A, i64 %subscript - store double 1.0, double* %idx + %idx = getelementptr inbounds double, ptr %A, i64 %subscript + store double 1.0, ptr %idx br label %for.k.inc for.k.inc: diff --git a/polly/test/ScopInfo/multidim_fixedsize_different_dimensionality.ll b/polly/test/ScopInfo/multidim_fixedsize_different_dimensionality.ll index a9f84ec363a8..ddc35a46a633 100644 --- a/polly/test/ScopInfo/multidim_fixedsize_different_dimensionality.ll +++ b/polly/test/ScopInfo/multidim_fixedsize_different_dimensionality.ll @@ -92,7 +92,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @first_higher_dimensional([400 x float]* %A) { +define void @first_higher_dimensional(ptr %A) { bb: br label %bb4 @@ -112,10 +112,10 @@ bb6: ; preds = %bb12, %bb5 bb7: ; preds = %bb6 %tmp = add nuw nsw i64 %i.0, %j.0 %tmp8 = sitofp i64 %tmp to float - %tmp9 = getelementptr inbounds [400 x float], [400 x float]* %A, i64 %i.0, i64 %j.0 - %tmp10 = load float, float* %tmp9, align 4 + %tmp9 = getelementptr inbounds [400 x float], ptr %A, i64 %i.0, i64 %j.0 + %tmp10 = load float, ptr %tmp9, align 4 %tmp11 = fadd float %tmp10, %tmp8 - store float %tmp11, float* %tmp9, align 4 + store float %tmp11, ptr %tmp9, align 4 br label %bb12 bb12: ; preds = %bb7 @@ -130,12 +130,11 @@ bb15: ; preds = %bb14 br label %bb4 bb17: ; preds = %bb4 - %tmp18 = getelementptr inbounds [400 x float], [400 x float]* %A, i64 100, i64 100 - %tmp19 = load float, float* %tmp18, align 4 - %tmp20 = getelementptr inbounds [400 x float], [400 x float]* %A, i64 0, i64 0 - %tmp21 = load float, float* %tmp20, align 4 + %tmp18 = getelementptr inbounds [400 x float], ptr %A, i64 100, i64 100 + %tmp19 = load float, ptr %tmp18, align 4 + %tmp21 = load float, ptr %A, align 4 %tmp22 = fadd float %tmp21, %tmp19 - store float %tmp22, float* %tmp20, align 4 + store float %tmp22, ptr %A, align 4 br label %bb23 bb23: ; preds = %bb35, %bb17 @@ -154,10 +153,10 @@ bb25: ; preds = %bb32, %bb24 bb26: ; preds = %bb25 %tmp27 = add nuw nsw i64 %i1.0, %j2.0 %tmp28 = sitofp i64 %tmp27 to float - %tmp29 = getelementptr inbounds [400 x float], [400 x float]* %A, i64 %i1.0, i64 %j2.0 - %tmp30 = load float, float* %tmp29, align 4 + %tmp29 = getelementptr inbounds [400 x float], ptr %A, i64 %i1.0, i64 %j2.0 + %tmp30 = load float, ptr %tmp29, align 4 %tmp31 = fadd float %tmp30, %tmp28 - store float %tmp31, float* %tmp29, align 4 + store float %tmp31, ptr %tmp29, align 4 br label %bb32 bb32: ; preds = %bb26 @@ -175,7 +174,7 @@ bb37: ; preds = %bb23 ret void } -define void @first_lower_dimensional([400 x float]* %A, [400 x float]* %B) { +define void @first_lower_dimensional(ptr %A, ptr %B) { bb: br label %bb4 @@ -195,10 +194,10 @@ bb6: ; preds = %bb12, %bb5 bb7: ; preds = %bb6 %tmp = add nuw nsw i64 %i.0, %j.0 %tmp8 = sitofp i64 %tmp to float - %tmp9 = getelementptr inbounds [400 x float], [400 x float]* %B, i64 %i.0, i64 %j.0 - %tmp10 = load float, float* %tmp9, align 4 + %tmp9 = getelementptr inbounds [400 x float], ptr %B, i64 %i.0, i64 %j.0 + %tmp10 = load float, ptr %tmp9, align 4 %tmp11 = fadd float %tmp10, %tmp8 - store float %tmp11, float* %tmp9, align 4 + store float %tmp11, ptr %tmp9, align 4 br label %bb12 bb12: ; preds = %bb7 @@ -213,12 +212,11 @@ bb15: ; preds = %bb14 br label %bb4 bb17: ; preds = %bb4 - %tmp18 = getelementptr inbounds [400 x float], [400 x float]* %B, i64 100, i64 100 - %tmp19 = load float, float* %tmp18, align 4 - %tmp20 = getelementptr inbounds [400 x float], [400 x float]* %A, i64 0, i64 0 - %tmp21 = load float, float* %tmp20, align 4 + %tmp18 = getelementptr inbounds [400 x float], ptr %B, i64 100, i64 100 + %tmp19 = load float, ptr %tmp18, align 4 + %tmp21 = load float, ptr %A, align 4 %tmp22 = fadd float %tmp21, %tmp19 - store float %tmp22, float* %tmp20, align 4 + store float %tmp22, ptr %A, align 4 br label %bb23 bb23: ; preds = %bb35, %bb17 @@ -237,10 +235,10 @@ bb25: ; preds = %bb32, %bb24 bb26: ; preds = %bb25 %tmp27 = add nuw nsw i64 %i1.0, %j2.0 %tmp28 = sitofp i64 %tmp27 to float - %tmp29 = getelementptr inbounds [400 x float], [400 x float]* %A, i64 %i1.0, i64 %j2.0 - %tmp30 = load float, float* %tmp29, align 4 + %tmp29 = getelementptr inbounds [400 x float], ptr %A, i64 %i1.0, i64 %j2.0 + %tmp30 = load float, ptr %tmp29, align 4 %tmp31 = fadd float %tmp30, %tmp28 - store float %tmp31, float* %tmp29, align 4 + store float %tmp31, ptr %tmp29, align 4 br label %bb32 bb32: ; preds = %bb26 diff --git a/polly/test/ScopInfo/multidim_fixedsize_multi_offset.ll b/polly/test/ScopInfo/multidim_fixedsize_multi_offset.ll index d21a4fc0051b..9c749f0c48c8 100644 --- a/polly/test/ScopInfo/multidim_fixedsize_multi_offset.ll +++ b/polly/test/ScopInfo/multidim_fixedsize_multi_offset.ll @@ -36,10 +36,9 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f([2 x i32]* %A) { +define void @f(ptr %A) { entry: - %arrayidx3 = getelementptr inbounds [2 x i32], [2 x i32]* %A, i64 1, i64 0 - %tmp = bitcast i32* %arrayidx3 to [2 x i32]* + %arrayidx3 = getelementptr inbounds [2 x i32], ptr %A, i64 1, i64 0 br label %for.cond for.cond: ; preds = %for.inc, %entry @@ -48,14 +47,14 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx5 = getelementptr inbounds [2 x i32], [2 x i32]* %A, i64 %indvars.iv, i64 0 - %tmp1 = load i32, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds [2 x i32], ptr %A, i64 %indvars.iv, i64 0 + %tmp1 = load i32, ptr %arrayidx5, align 4 %inc = add nsw i32 %tmp1, 1 - store i32 %inc, i32* %arrayidx5, align 4 - %arrayidx8 = getelementptr inbounds [2 x i32], [2 x i32]* %tmp, i64 %indvars.iv, i64 0 - %tmp2 = load i32, i32* %arrayidx8, align 4 + store i32 %inc, ptr %arrayidx5, align 4 + %arrayidx8 = getelementptr inbounds [2 x i32], ptr %arrayidx3, i64 %indvars.iv, i64 0 + %tmp2 = load i32, ptr %arrayidx8, align 4 %inc9 = add nsw i32 %tmp2, 1 - store i32 %inc9, i32* %arrayidx8, align 4 + store i32 %inc9, ptr %arrayidx8, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/multidim_fold_constant_dim.ll b/polly/test/ScopInfo/multidim_fold_constant_dim.ll index 258278e9dec1..e95d400a860c 100644 --- a/polly/test/ScopInfo/multidim_fold_constant_dim.ll +++ b/polly/test/ScopInfo/multidim_fold_constant_dim.ll @@ -38,7 +38,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" %struct.com = type { double, double } %struct.com2 = type { [20000000000 x double] } -define void @foo(i64 %n, %struct.com* %A) { +define void @foo(i64 %n, ptr %A) { entry: br label %for.cond @@ -57,17 +57,16 @@ for.cond1: ; preds = %for.inc, %for.body for.body3: ; preds = %for.cond1 %tmp = mul nsw i64 %i.0, %n - %arrayidx = getelementptr inbounds %struct.com, %struct.com* %A, i64 %tmp - %arrayidx4 = getelementptr inbounds %struct.com, %struct.com* %arrayidx, i64 %j.0 - %Img = getelementptr inbounds %struct.com, %struct.com* %arrayidx4, i64 0, i32 1 - %tmp2 = load double, double* %Img, align 8 + %arrayidx = getelementptr inbounds %struct.com, ptr %A, i64 %tmp + %arrayidx4 = getelementptr inbounds %struct.com, ptr %arrayidx, i64 %j.0 + %Img = getelementptr inbounds %struct.com, ptr %arrayidx4, i64 0, i32 1 + %tmp2 = load double, ptr %Img, align 8 %tmp3 = mul nsw i64 %i.0, %n - %arrayidx5 = getelementptr inbounds %struct.com, %struct.com* %A, i64 %tmp3 - %arrayidx6 = getelementptr inbounds %struct.com, %struct.com* %arrayidx5, i64 %j.0 - %Real = getelementptr inbounds %struct.com, %struct.com* %arrayidx6, i64 0, i32 0 - %tmp4 = load double, double* %Real, align 8 + %arrayidx5 = getelementptr inbounds %struct.com, ptr %A, i64 %tmp3 + %arrayidx6 = getelementptr inbounds %struct.com, ptr %arrayidx5, i64 %j.0 + %tmp4 = load double, ptr %arrayidx6, align 8 %add = fadd double %tmp4, %tmp2 - store double %add, double* %Real, align 8 + store double %add, ptr %arrayidx6, align 8 br label %for.inc for.inc: ; preds = %for.body3 @@ -89,7 +88,7 @@ for.end9: ; preds = %for.cond ; CHECK-NEXT: double MemRef_O[*][%n]; // Element size 8 ; CHECK-NEXT: } -define void @foo_overflow(i64 %n, %struct.com2* nocapture %O) local_unnamed_addr #0 { +define void @foo_overflow(i64 %n, ptr nocapture %O) local_unnamed_addr #0 { entry: br label %for.body @@ -99,7 +98,7 @@ for.cond.cleanup: ; preds = %for.cond.cleanup3 for.body: ; preds = %for.cond.cleanup3, %entry %i.024 = phi i64 [ 0, %entry ], [ %inc12, %for.cond.cleanup3 ] %0 = mul nsw i64 %i.024, %n - %arrayidx = getelementptr inbounds %struct.com2, %struct.com2* %O, i64 %0 + %arrayidx = getelementptr inbounds %struct.com2, ptr %O, i64 %0 br label %for.body4 for.cond.cleanup3: ; preds = %for.body4 @@ -109,14 +108,12 @@ for.cond.cleanup3: ; preds = %for.body4 for.body4: ; preds = %for.body4, %for.body %j.023 = phi i64 [ 0, %for.body ], [ %inc, %for.body4 ] - %arrayidx5 = getelementptr inbounds %struct.com2, %struct.com2* %arrayidx, i64 %j.023 - %Real = getelementptr inbounds %struct.com2, %struct.com2* %arrayidx5, i64 0, i32 0 - %arrayidx6 = getelementptr inbounds [20000000000 x double], [20000000000 x double]* %Real, i64 0, i64 1 - %1 = load double, double* %arrayidx6, align 8 - %arrayidx10 = getelementptr inbounds [20000000000 x double], [20000000000 x double]* %Real, i64 0, i64 0 - %2 = load double, double* %arrayidx10, align 8 + %arrayidx5 = getelementptr inbounds %struct.com2, ptr %arrayidx, i64 %j.023 + %arrayidx6 = getelementptr inbounds [20000000000 x double], ptr %arrayidx5, i64 0, i64 1 + %1 = load double, ptr %arrayidx6, align 8 + %2 = load double, ptr %arrayidx5, align 8 %add = fadd double %1, %2 - store double %add, double* %arrayidx10, align 8 + store double %add, ptr %arrayidx5, align 8 %inc = add nuw nsw i64 %j.023, 1 %exitcond = icmp eq i64 %inc, 1000 br i1 %exitcond, label %for.cond.cleanup3, label %for.body4 diff --git a/polly/test/ScopInfo/multidim_fortran_2d.ll b/polly/test/ScopInfo/multidim_fortran_2d.ll index 38310f87cc7b..29279a4e886b 100644 --- a/polly/test/ScopInfo/multidim_fortran_2d.ll +++ b/polly/test/ScopInfo/multidim_fortran_2d.ll @@ -23,16 +23,16 @@ target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f16:16:16-f32:32:32-f64:64:64-f128:128:128-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @ham(i64* noalias %arg, i64* noalias %arg1, i64* noalias %arg2, i64* noalias %arg3, [0 x double]* noalias %arg4) unnamed_addr { +define void @ham(ptr noalias %arg, ptr noalias %arg1, ptr noalias %arg2, ptr noalias %arg3, ptr noalias %arg4) unnamed_addr { bb: br label %bb5 bb5: ; preds = %bb - %tmp = load i64, i64* %arg1, align 8 + %tmp = load i64, ptr %arg1, align 8 %tmp6 = icmp slt i64 %tmp, 0 %tmp7 = select i1 %tmp6, i64 0, i64 %tmp %tmp8 = xor i64 %tmp7, -1 - %tmp9 = load i64, i64* %arg, align 8 + %tmp9 = load i64, ptr %arg, align 8 %tmp10 = icmp sgt i64 %tmp9, 0 br i1 %tmp10, label %bb11, label %bb32 @@ -41,7 +41,7 @@ bb11: ; preds = %bb5 bb12: ; preds = %bb28, %bb11 %tmp13 = phi i64 [ %tmp30, %bb28 ], [ 1, %bb11 ] - %tmp14 = load i64, i64* %arg1, align 8 + %tmp14 = load i64, ptr %arg1, align 8 %tmp15 = icmp sgt i64 %tmp14, 0 br i1 %tmp15, label %bb16, label %bb28 @@ -55,8 +55,8 @@ bb17: ; preds = %bb17, %bb16 %tmp21 = add i64 %tmp20, %tmp18 %tmp22 = add i64 %tmp18, %tmp13 %tmp23 = sitofp i64 %tmp22 to double - %tmp24 = getelementptr [0 x double], [0 x double]* %arg4, i64 0, i64 %tmp21 - store double %tmp23, double* %tmp24, align 8 + %tmp24 = getelementptr [0 x double], ptr %arg4, i64 0, i64 %tmp21 + store double %tmp23, ptr %tmp24, align 8 %tmp25 = icmp eq i64 %tmp18, %tmp14 %tmp26 = add i64 %tmp18, 1 br i1 %tmp25, label %bb27, label %bb17 diff --git a/polly/test/ScopInfo/multidim_fortran_2d_params.ll b/polly/test/ScopInfo/multidim_fortran_2d_params.ll index 55db42c96bdf..93145b399ca5 100644 --- a/polly/test/ScopInfo/multidim_fortran_2d_params.ll +++ b/polly/test/ScopInfo/multidim_fortran_2d_params.ll @@ -26,16 +26,16 @@ target triple = "x86_64-unknown-linux-gnu" module asm "\09.ident\09\22GCC: (GNU) 4.6.4 LLVM: 3.3.1\22" ; Function Attrs: nounwind uwtable -define void @blam(i64* noalias %arg, i64* noalias %nj, i64* noalias %arg2, i64* noalias %arg3, [0 x double]* noalias %a) unnamed_addr #0 { +define void @blam(ptr noalias %arg, ptr noalias %nj, ptr noalias %arg2, ptr noalias %arg3, ptr noalias %a) unnamed_addr #0 { bb: br label %bb5 bb5: ; preds = %bb - %nj_loaded = load i64, i64* %nj, align 8 + %nj_loaded = load i64, ptr %nj, align 8 %tmp6 = icmp slt i64 %nj_loaded, 0 %tmp7 = select i1 %tmp6, i64 0, i64 %nj_loaded %tmp8 = xor i64 %tmp7, -1 - %tmp9 = load i64, i64* %arg, align 8 + %tmp9 = load i64, ptr %arg, align 8 %tmp10 = icmp sgt i64 %tmp9, 0 br i1 %tmp10, label %bb11, label %bb36 @@ -44,7 +44,7 @@ bb11: ; preds = %bb5 bb12: ; preds = %bb32, %bb11 %tmp13 = phi i64 [ %tmp34, %bb32 ], [ 1, %bb11 ] - %nj_loaded2 = load i64, i64* %nj, align 8 + %nj_loaded2 = load i64, ptr %nj, align 8 %tmp15 = icmp sgt i64 %nj_loaded2, 0 br i1 %tmp15, label %bb16, label %bb32 @@ -53,8 +53,8 @@ bb16: ; preds = %bb12 bb17: ; preds = %bb17, %bb16 %tmp18 = phi i64 [ %tmp30, %bb17 ], [ 1, %bb16 ] - %tmp19 = load i64, i64* %arg2, align 8 - %tmp20 = load i64, i64* %arg3, align 8 + %tmp19 = load i64, ptr %arg2, align 8 + %tmp20 = load i64, ptr %arg3, align 8 %tmp21 = add i64 %tmp20, %tmp13 %tmp22 = mul i64 %tmp21, %tmp7 %tmp23 = add i64 %tmp18, %tmp8 @@ -62,8 +62,8 @@ bb17: ; preds = %bb17, %bb16 %tmp25 = add i64 %tmp24, %tmp22 %tmp26 = add i64 %tmp18, %tmp13 %tmp27 = sitofp i64 %tmp26 to double - %tmp28 = getelementptr [0 x double], [0 x double]* %a, i64 0, i64 %tmp25 - store double %tmp27, double* %tmp28, align 8 + %tmp28 = getelementptr [0 x double], ptr %a, i64 0, i64 %tmp25 + store double %tmp27, ptr %tmp28, align 8 %tmp29 = icmp eq i64 %tmp18, %nj_loaded2 %tmp30 = add i64 %tmp18, 1 br i1 %tmp29, label %bb31, label %bb17 diff --git a/polly/test/ScopInfo/multidim_fortran_2d_with_modref_call.ll b/polly/test/ScopInfo/multidim_fortran_2d_with_modref_call.ll index ce65c3ad7bfd..dff6a8be85cf 100644 --- a/polly/test/ScopInfo/multidim_fortran_2d_with_modref_call.ll +++ b/polly/test/ScopInfo/multidim_fortran_2d_with_modref_call.ll @@ -124,16 +124,16 @@ target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f16:16:16-f32:32:32-f64:64:64-f128:128:128-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @ham(i64* noalias %arg, i64* noalias %arg1, i64* noalias %arg2, i64* noalias %arg3, [0 x double]* noalias %arg4) unnamed_addr { +define void @ham(ptr noalias %arg, ptr noalias %arg1, ptr noalias %arg2, ptr noalias %arg3, ptr noalias %arg4) unnamed_addr { bb: br label %bb5 bb5: ; preds = %bb - %tmp = load i64, i64* %arg1, align 8 + %tmp = load i64, ptr %arg1, align 8 %tmp6 = icmp slt i64 %tmp, 0 %tmp7 = select i1 %tmp6, i64 0, i64 %tmp %tmp8 = xor i64 %tmp7, -1 - %tmp9 = load i64, i64* %arg, align 8 + %tmp9 = load i64, ptr %arg, align 8 %tmp10 = icmp sgt i64 %tmp9, 0 br i1 %tmp10, label %bb11, label %bb32 @@ -142,7 +142,7 @@ bb11: ; preds = %bb5 bb12: ; preds = %bb28, %bb11 %tmp13 = phi i64 [ %tmp30, %bb28 ], [ 1, %bb11 ] - %tmp14 = load i64, i64* %arg1, align 8 + %tmp14 = load i64, ptr %arg1, align 8 %tmp15 = icmp sgt i64 %tmp14, 0 br i1 %tmp15, label %bb16, label %bb28 @@ -156,10 +156,10 @@ bb17: ; preds = %bb17, %bb16 %tmp21 = add i64 %tmp20, %tmp18 %tmp22 = add i64 %tmp18, %tmp13 %tmp23 = sitofp i64 %tmp22 to double - %tmp24 = getelementptr [0 x double], [0 x double]* %arg4, i64 0, i64 %tmp21 - %call = call double @func(double* %tmp24) #2 + %tmp24 = getelementptr [0 x double], ptr %arg4, i64 0, i64 %tmp21 + %call = call double @func(ptr %tmp24) #2 %sum = fadd double %call, %tmp23 - store double %sum, double* %tmp24, align 8 + store double %sum, ptr %tmp24, align 8 %tmp25 = icmp eq i64 %tmp18, %tmp14 %tmp26 = add i64 %tmp18, 1 br i1 %tmp25, label %bb27, label %bb17 @@ -179,6 +179,6 @@ bb32: ; preds = %bb31, %bb5 ret void } -declare double @func(double*) #1 +declare double @func(ptr) #1 attributes #1 = { nounwind readonly } diff --git a/polly/test/ScopInfo/multidim_fortran_srem.ll b/polly/test/ScopInfo/multidim_fortran_srem.ll index 144c06fce43a..8c24c5b8ee71 100644 --- a/polly/test/ScopInfo/multidim_fortran_srem.ll +++ b/polly/test/ScopInfo/multidim_fortran_srem.ll @@ -30,38 +30,37 @@ target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64: ; CHECK-NEXT: [tmp180, tmp177, tmp183, tmp162, tmp157, tmp150, tmp146, tmp140, tmp] -> { Stmt_bb203[i0, i1, i2] -> MemRef_arg55[1 + i0, 1 + i1, 1 + i2] }; ; CHECK-NEXT: } -define void @pluto(i32* noalias %arg, [0 x i32]* noalias %arg2, [0 x i32]* noalias %arg3, [0 x i32]* noalias %arg4, [0 x i32]* noalias %arg5, [0 x i32]* noalias %arg6, [0 x i32]* noalias %arg7, [0 x i32]* noalias %arg8, [0 x i32]* noalias %arg9, double* noalias %arg10, double* noalias %arg11, [0 x double]* noalias %arg12, [0 x double]* noalias %arg13, [0 x i32]* noalias %arg14, i32* noalias %arg15, [0 x i32]* noalias %arg16, i32* noalias %arg17, i32* noalias %arg18, i32* noalias %arg19, i32* noalias %arg20, i32* noalias %arg21, i32* noalias %arg22, i32* noalias %arg23, i32* noalias %arg24, i32* noalias %arg25, i32* noalias %arg26, i32* noalias %arg27, [0 x double]* noalias %arg28, [0 x double]* noalias %arg29, [0 x double]* noalias %arg30, [0 x double]* noalias %arg31, [0 x double]* noalias %arg32, [0 x double]* noalias %arg33, [0 x double]* noalias %arg34, [0 x double]* noalias %arg35, [0 x double]* noalias %arg36, [0 x double]* noalias %arg37, [0 x double]* noalias %arg38, [0 x double]* noalias %arg39, [0 x double]* noalias %arg40, [0 x double]* noalias %arg41, [0 x double]* noalias %arg42, [0 x double]* noalias %arg43, [0 x double]* noalias %arg44, [0 x double]* noalias %arg45, [0 x double]* noalias %arg46, [0 x double]* noalias %arg47, [0 x double]* noalias %arg48, [0 x double]* noalias %arg49, [0 x double]* noalias %arg50, [0 x double]* noalias %arg51, [0 x double]* noalias %arg52, [0 x double]* noalias %arg53, [0 x double]* noalias %arg54, [0 x double]* noalias %arg55, [0 x double]* noalias %arg56, [0 x double]* noalias %arg57, [0 x double]* noalias %arg58, [0 x double]* noalias %arg59, [0 x double]* noalias %arg60, [0 x double]* noalias %arg61, [0 x double]* noalias %arg62, [0 x double]* noalias %arg63, [0 x double]* noalias %arg64, [0 x double]* noalias %arg65, [0 x double]* noalias %arg66, [0 x double]* noalias %arg67, [0 x double]* noalias %arg68, [0 x double]* noalias %arg69, i32* noalias %arg70, i32* noalias %arg71, i32* noalias %arg72, i32* noalias %arg73, i32* noalias %arg74, i32* noalias %arg75, i32* noalias %arg76, i32* noalias %arg77, i32* noalias %arg78, i32* noalias %arg79, i32* noalias %arg80, i32* noalias %arg81, i32* noalias %arg82, i32* noalias %arg83, i32* noalias %arg84, i32* noalias %arg85, i32* noalias %arg86, i32* noalias %arg87, i32* noalias %arg88, i32* noalias %arg89, i32* noalias %arg90, i32* noalias %arg91, i32* noalias %arg92, i32* noalias %arg93, i32* noalias %arg94, i32* noalias %arg95, i32* noalias %arg96, i32* noalias %arg97, [0 x double]* noalias %arg98, [0 x double]* noalias %arg99, [0 x double]* noalias %arg100, [0 x double]* noalias %arg101, double* noalias %arg102, double* noalias %arg103, double* noalias %arg104, i32* noalias %arg105, double* noalias %arg106, double* noalias %arg107, [0 x double]* noalias %arg108, [0 x double]* noalias %arg109, [0 x double]* noalias %arg110, [0 x double]* noalias %arg111, [0 x double]* noalias %arg112, [0 x double]* noalias %arg113, [0 x double]* noalias %arg114, [0 x double]* noalias %arg115, [0 x double]* noalias %arg116, [0 x double]* noalias %arg117, [0 x double]* noalias %arg118, [0 x double]* noalias %arg119, [0 x double]* noalias %arg120, [0 x double]* noalias %arg121, [0 x double]* noalias %arg122, [0 x double]* noalias %arg123, [0 x double]* noalias %arg124, [0 x double]* noalias %arg125, [0 x double]* noalias %arg126, [0 x double]* noalias %arg127, [0 x double]* noalias %arg128, [0 x double]* noalias %arg129, [0 x double]* noalias %arg130, [0 x double]* noalias %arg131, i32* noalias %arg132, [0 x double]* noalias %arg133, [0 x double]* noalias %arg134, [0 x double]* noalias %arg135) { +define void @pluto(ptr noalias %arg, ptr noalias %arg2, ptr noalias %arg3, ptr noalias %arg4, ptr noalias %arg5, ptr noalias %arg6, ptr noalias %arg7, ptr noalias %arg8, ptr noalias %arg9, ptr noalias %arg10, ptr noalias %arg11, ptr noalias %arg12, ptr noalias %arg13, ptr noalias %arg14, ptr noalias %arg15, ptr noalias %arg16, ptr noalias %arg17, ptr noalias %arg18, ptr noalias %arg19, ptr noalias %arg20, ptr noalias %arg21, ptr noalias %arg22, ptr noalias %arg23, ptr noalias %arg24, ptr noalias %arg25, ptr noalias %arg26, ptr noalias %arg27, ptr noalias %arg28, ptr noalias %arg29, ptr noalias %arg30, ptr noalias %arg31, ptr noalias %arg32, ptr noalias %arg33, ptr noalias %arg34, ptr noalias %arg35, ptr noalias %arg36, ptr noalias %arg37, ptr noalias %arg38, ptr noalias %arg39, ptr noalias %arg40, ptr noalias %arg41, ptr noalias %arg42, ptr noalias %arg43, ptr noalias %arg44, ptr noalias %arg45, ptr noalias %arg46, ptr noalias %arg47, ptr noalias %arg48, ptr noalias %arg49, ptr noalias %arg50, ptr noalias %arg51, ptr noalias %arg52, ptr noalias %arg53, ptr noalias %arg54, ptr noalias %arg55, ptr noalias %arg56, ptr noalias %arg57, ptr noalias %arg58, ptr noalias %arg59, ptr noalias %arg60, ptr noalias %arg61, ptr noalias %arg62, ptr noalias %arg63, ptr noalias %arg64, ptr noalias %arg65, ptr noalias %arg66, ptr noalias %arg67, ptr noalias %arg68, ptr noalias %arg69, ptr noalias %arg70, ptr noalias %arg71, ptr noalias %arg72, ptr noalias %arg73, ptr noalias %arg74, ptr noalias %arg75, ptr noalias %arg76, ptr noalias %arg77, ptr noalias %arg78, ptr noalias %arg79, ptr noalias %arg80, ptr noalias %arg81, ptr noalias %arg82, ptr noalias %arg83, ptr noalias %arg84, ptr noalias %arg85, ptr noalias %arg86, ptr noalias %arg87, ptr noalias %arg88, ptr noalias %arg89, ptr noalias %arg90, ptr noalias %arg91, ptr noalias %arg92, ptr noalias %arg93, ptr noalias %arg94, ptr noalias %arg95, ptr noalias %arg96, ptr noalias %arg97, ptr noalias %arg98, ptr noalias %arg99, ptr noalias %arg100, ptr noalias %arg101, ptr noalias %arg102, ptr noalias %arg103, ptr noalias %arg104, ptr noalias %arg105, ptr noalias %arg106, ptr noalias %arg107, ptr noalias %arg108, ptr noalias %arg109, ptr noalias %arg110, ptr noalias %arg111, ptr noalias %arg112, ptr noalias %arg113, ptr noalias %arg114, ptr noalias %arg115, ptr noalias %arg116, ptr noalias %arg117, ptr noalias %arg118, ptr noalias %arg119, ptr noalias %arg120, ptr noalias %arg121, ptr noalias %arg122, ptr noalias %arg123, ptr noalias %arg124, ptr noalias %arg125, ptr noalias %arg126, ptr noalias %arg127, ptr noalias %arg128, ptr noalias %arg129, ptr noalias %arg130, ptr noalias %arg131, ptr noalias %arg132, ptr noalias %arg133, ptr noalias %arg134, ptr noalias %arg135) { bb: br label %bb136 bb136: ; preds = %bb - %tmp = load i32, i32* %arg19, align 4 + %tmp = load i32, ptr %arg19, align 4 %tmp137 = sext i32 %tmp to i64 %tmp138 = icmp slt i64 %tmp137, 0 %tmp139 = select i1 %tmp138, i64 0, i64 %tmp137 - %tmp140 = load i32, i32* %arg20, align 4 + %tmp140 = load i32, ptr %arg20, align 4 %tmp141 = sext i32 %tmp140 to i64 %tmp142 = mul nsw i64 %tmp139, %tmp141 %tmp143 = icmp slt i64 %tmp142, 0 %tmp144 = select i1 %tmp143, i64 0, i64 %tmp142 %tmp145 = xor i64 %tmp139, -1 - %tmp146 = load i32, i32* %arg19, align 4 + %tmp146 = load i32, ptr %arg19, align 4 %tmp147 = sext i32 %tmp146 to i64 %tmp148 = icmp slt i64 %tmp147, 0 %tmp149 = select i1 %tmp148, i64 0, i64 %tmp147 - %tmp150 = load i32, i32* %arg20, align 4 + %tmp150 = load i32, ptr %arg20, align 4 %tmp151 = sext i32 %tmp150 to i64 %tmp152 = mul nsw i64 %tmp149, %tmp151 %tmp153 = icmp slt i64 %tmp152, 0 %tmp154 = select i1 %tmp153, i64 0, i64 %tmp152 %tmp155 = xor i64 %tmp149, -1 - %tmp156 = getelementptr inbounds [0 x i32], [0 x i32]* %arg3, i64 0, i64 0 - %tmp157 = load i32, i32* %tmp156, align 4 + %tmp157 = load i32, ptr %arg3, align 4 %tmp158 = sext i32 %tmp157 to i64 %tmp159 = icmp slt i64 %tmp158, 0 %tmp160 = select i1 %tmp159, i64 0, i64 %tmp158 - %tmp161 = getelementptr [0 x i32], [0 x i32]* %arg3, i64 0, i64 1 - %tmp162 = load i32, i32* %tmp161, align 4 + %tmp161 = getelementptr [0 x i32], ptr %arg3, i64 0, i64 1 + %tmp162 = load i32, ptr %tmp161, align 4 %tmp163 = sext i32 %tmp162 to i64 %tmp164 = mul nsw i64 %tmp160, %tmp163 %tmp165 = icmp slt i64 %tmp164, 0 @@ -72,17 +71,16 @@ bb136: ; preds = %bb %tmp170 = shl i64 %tmp169, 3 %tmp171 = icmp ne i64 %tmp170, 0 %tmp172 = select i1 %tmp171, i64 %tmp170, i64 1 - %tmp173 = tail call noalias i8* @wobble(i64 %tmp172) #1 + %tmp173 = tail call noalias ptr @wobble(i64 %tmp172) #1 %tmp174 = xor i64 %tmp160, -1 %tmp175 = sub i64 %tmp174, %tmp166 - %tmp176 = getelementptr inbounds [0 x i32], [0 x i32]* %arg3, i64 0, i64 0 - %tmp177 = load i32, i32* %tmp176, align 4 + %tmp177 = load i32, ptr %arg3, align 4 %tmp178 = sext i32 %tmp177 to i64 - %tmp179 = getelementptr [0 x i32], [0 x i32]* %arg3, i64 0, i64 1 - %tmp180 = load i32, i32* %tmp179, align 4 + %tmp179 = getelementptr [0 x i32], ptr %arg3, i64 0, i64 1 + %tmp180 = load i32, ptr %tmp179, align 4 %tmp181 = sext i32 %tmp180 to i64 - %tmp182 = getelementptr [0 x i32], [0 x i32]* %arg3, i64 0, i64 2 - %tmp183 = load i32, i32* %tmp182, align 4 + %tmp182 = getelementptr [0 x i32], ptr %arg3, i64 0, i64 2 + %tmp183 = load i32, ptr %tmp182, align 4 %tmp184 = sext i32 %tmp183 to i64 %tmp185 = add nsw i64 %tmp184, -1 %tmp186 = icmp sgt i64 %tmp185, 1 @@ -121,17 +119,15 @@ bb203: ; preds = %bb202, %bb203 %tmp207 = add i64 %tmp206, %tmp175 %tmp208 = add i64 %tmp207, %tmp205 %tmp209 = add i64 %tmp208, %tmp204 - %tmp210 = bitcast i8* %tmp173 to double* - %tmp211 = getelementptr double, double* %tmp210, i64 %tmp209 - %tmp212 = load double, double* %tmp211, align 8 + %tmp211 = getelementptr double, ptr %tmp173, i64 %tmp209 + %tmp212 = load double, ptr %tmp211, align 8 %tmp213 = mul i64 %tmp199, %tmp160 %tmp214 = mul i64 %tmp194, %tmp166 %tmp215 = add i64 %tmp214, %tmp175 %tmp216 = add i64 %tmp215, %tmp213 %tmp217 = add i64 %tmp216, %tmp204 - %tmp218 = bitcast i8* %tmp173 to double* - %tmp219 = getelementptr double, double* %tmp218, i64 %tmp217 - %tmp220 = load double, double* %tmp219, align 8 + %tmp219 = getelementptr double, ptr %tmp173, i64 %tmp217 + %tmp220 = load double, ptr %tmp219, align 8 %tmp221 = fadd double %tmp212, %tmp220 %tmp222 = mul i64 %tmp199, %tmp139 %tmp223 = mul i64 %tmp189, %tmp144 @@ -145,11 +141,11 @@ bb203: ; preds = %bb202, %bb203 %tmp231 = add i64 %tmp230, %tmp229 %tmp232 = add i64 %tmp231, %tmp228 %tmp233 = add i64 %tmp232, %tmp204 - %tmp234 = getelementptr [0 x double], [0 x double]* %arg56, i64 0, i64 %tmp233 - %tmp235 = load double, double* %tmp234, align 8 + %tmp234 = getelementptr [0 x double], ptr %arg56, i64 0, i64 %tmp233 + %tmp235 = load double, ptr %tmp234, align 8 %tmp236 = fadd double %tmp235, %tmp221 - %tmp237 = getelementptr [0 x double], [0 x double]* %arg55, i64 0, i64 %tmp227 - store double %tmp236, double* %tmp237, align 8 + %tmp237 = getelementptr [0 x double], ptr %arg55, i64 0, i64 %tmp227 + store double %tmp236, ptr %tmp237, align 8 %tmp238 = icmp eq i64 %tmp204, %tmp200 %tmp239 = add i64 %tmp204, 1 br i1 %tmp238, label %bb240, label %bb203 @@ -174,11 +170,11 @@ bb248: ; preds = %bb245 br label %bb249 bb249: ; preds = %bb248, %bb136 - %tmp250 = icmp eq i8* %tmp173, null + %tmp250 = icmp eq ptr %tmp173, null br i1 %tmp250, label %bb252, label %bb251 bb251: ; preds = %bb249 - tail call void @snork(i8* %tmp173) #1 + tail call void @snork(ptr %tmp173) #1 br label %bb252 bb252: ; preds = %bb251, %bb249 @@ -186,7 +182,7 @@ bb252: ; preds = %bb251, %bb249 } ; Function Attrs: nounwind -declare noalias i8* @wobble(i64) #1 +declare noalias ptr @wobble(i64) #1 ; Function Attrs: nounwind -declare void @snork(i8*) #1 +declare void @snork(ptr) #1 diff --git a/polly/test/ScopInfo/multidim_gep_pointercast.ll b/polly/test/ScopInfo/multidim_gep_pointercast.ll index 9db31cba516e..20d59fa91eaf 100644 --- a/polly/test/ScopInfo/multidim_gep_pointercast.ll +++ b/polly/test/ScopInfo/multidim_gep_pointercast.ll @@ -10,10 +10,9 @@ ; *((<4 x short> *)&A[7 * i][0]) = *((<4 x short>)&B[7 * i][0]); ; } ; -define void @f([4 x i16]* %A, i32 %N, i32 %P) { +define void @f(ptr %A, i32 %N, i32 %P) { entry: - %arrayidx1 = getelementptr inbounds [4 x i16], [4 x i16]* %A, i32 %P, i64 0 - %tmp = bitcast i16* %arrayidx1 to [4 x i16]* + %arrayidx1 = getelementptr inbounds [4 x i16], ptr %A, i32 %P, i64 0 br label %for.cond for.cond: @@ -23,12 +22,10 @@ for.cond: for.body: %mul = mul nsw i32 %indvars.iv, 7 - %arrayidx4 = getelementptr inbounds [4 x i16], [4 x i16]* %tmp, i32 %mul, i64 0 - %bc4 = bitcast i16* %arrayidx4 to <4 x i16>* - %tmp3 = load <4 x i16>, <4 x i16>* %bc4 - %arrayidx8 = getelementptr inbounds [4 x i16], [4 x i16]* %A, i32 %mul, i64 0 - %bc8 = bitcast i16* %arrayidx8 to <4 x i16>* - store <4 x i16> %tmp3, <4 x i16>* %bc8 + %arrayidx4 = getelementptr inbounds [4 x i16], ptr %arrayidx1, i32 %mul, i64 0 + %tmp3 = load <4 x i16>, ptr %arrayidx4 + %arrayidx8 = getelementptr inbounds [4 x i16], ptr %A, i32 %mul, i64 0 + store <4 x i16> %tmp3, ptr %arrayidx8 br label %for.inc for.inc: diff --git a/polly/test/ScopInfo/multidim_gep_pointercast2.ll b/polly/test/ScopInfo/multidim_gep_pointercast2.ll index 325103501941..deed9c7c3f57 100644 --- a/polly/test/ScopInfo/multidim_gep_pointercast2.ll +++ b/polly/test/ScopInfo/multidim_gep_pointercast2.ll @@ -10,7 +10,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f([2 x i16]* %A) { +define void @f(ptr %A) { entry: br label %for.cond @@ -21,9 +21,8 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %tmp = shl nsw i64 %indvars.iv, 2 - %arrayidx1 = getelementptr inbounds [2 x i16], [2 x i16]* %A, i64 %tmp, i64 0 - %tmp2 = bitcast i16* %arrayidx1 to i64* - store i64 0, i64* %tmp2, align 8 + %arrayidx1 = getelementptr inbounds [2 x i16], ptr %A, i64 %tmp, i64 0 + store i64 0, ptr %arrayidx1, align 8 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/multidim_invalid_dimension.ll b/polly/test/ScopInfo/multidim_invalid_dimension.ll index 465f209984bf..e1ec2e1ce3be 100644 --- a/polly/test/ScopInfo/multidim_invalid_dimension.ll +++ b/polly/test/ScopInfo/multidim_invalid_dimension.ll @@ -5,7 +5,7 @@ target triple = "aarch64-unknown-linux-gnueabi" ; Make sure we don't crash trying delinearize the memory access ; CHECK: region: 'bb4 => bb14' ; CHECK-NEXT: Invalid Scop! -define void @f(i8* %arg, i32 %arg1, i32 %arg2, i32 %arg3) { +define void @f(ptr %arg, i32 %arg1, i32 %arg2, i32 %arg3) { bb: br label %bb4 @@ -15,9 +15,8 @@ bb4: %tmp6 = select i1 %tmp5, i32 %tmp, i32 0 %tmp7 = mul nsw i32 %tmp6, %arg3 %tmp8 = sext i32 %tmp7 to i64 - %tmp9 = getelementptr inbounds i8, i8* %arg, i64 %tmp8 - %tmp10 = bitcast i8* %tmp9 to i32* - %tmp11 = load i32, i32* %tmp10, align 4 + %tmp9 = getelementptr inbounds i8, ptr %arg, i64 %tmp8 + %tmp11 = load i32, ptr %tmp9, align 4 %tmp12 = add nsw i32 %tmp, 1 %tmp13 = icmp slt i32 %tmp, %arg1 br i1 %tmp13, label %bb4, label %bb14 diff --git a/polly/test/ScopInfo/multidim_ivs_and_integer_offsets_3d.ll b/polly/test/ScopInfo/multidim_ivs_and_integer_offsets_3d.ll index 3ac1c8050a42..9f7e6bc4a2a2 100644 --- a/polly/test/ScopInfo/multidim_ivs_and_integer_offsets_3d.ll +++ b/polly/test/ScopInfo/multidim_ivs_and_integer_offsets_3d.ll @@ -27,7 +27,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK-NEXT: [o, m, n] -> { Stmt_for_k[i0, i1, i2] -> MemRef_A[3 + i0, i1, 7 + i2] }; ; CHECK-NEXT: } -define void @foo(i64 %n, i64 %m, i64 %o, double* %A) { +define void @foo(i64 %n, i64 %m, i64 %o, ptr %A) { entry: br label %for.i @@ -48,8 +48,8 @@ for.k: %subscript2 = mul i64 %subscript1, %o %offset2 = add nsw i64 %k, 7 %subscript = add i64 %subscript2, %offset2 - %idx = getelementptr inbounds double, double* %A, i64 %subscript - store double 1.0, double* %idx + %idx = getelementptr inbounds double, ptr %A, i64 %subscript + store double 1.0, ptr %idx br label %for.k.inc for.k.inc: diff --git a/polly/test/ScopInfo/multidim_ivs_and_parameteric_offsets_3d.ll b/polly/test/ScopInfo/multidim_ivs_and_parameteric_offsets_3d.ll index 2d59fffe983a..131bb7b3ebed 100644 --- a/polly/test/ScopInfo/multidim_ivs_and_parameteric_offsets_3d.ll +++ b/polly/test/ScopInfo/multidim_ivs_and_parameteric_offsets_3d.ll @@ -34,7 +34,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK-NEXT: [o, m, n, p, q, r] -> { Stmt_for_k[i0, i1, i2] -> MemRef_A[-1 + p + i0, -1 + m + q + i1, o + r + i2] : i1 <= -q and i2 < -r; Stmt_for_k[i0, i1, i2] -> MemRef_A[p + i0, -1 + q + i1, o + r + i2] : i1 > -q and i2 < -r; Stmt_for_k[i0, i1, i2] -> MemRef_A[-1 + p + i0, m + q + i1, r + i2] : i1 < -q and i2 >= -r; Stmt_for_k[i0, i1, i2] -> MemRef_A[p + i0, q + i1, r + i2] : i1 >= -q and i2 >= -r }; ; CHECK-NEXT: } -define void @foo(i64 %n, i64 %m, i64 %o, double* %A, i64 %p, i64 %q, i64 %r) { +define void @foo(i64 %n, i64 %m, i64 %o, ptr %A, i64 %p, i64 %q, i64 %r) { entry: br label %for.i @@ -55,8 +55,8 @@ for.k: %subscript2 = mul i64 %subscript1, %o %offset2 = add nsw i64 %k, %r %subscript = add i64 %subscript2, %offset2 - %idx = getelementptr inbounds double, double* %A, i64 %subscript - store double 1.0, double* %idx + %idx = getelementptr inbounds double, ptr %A, i64 %subscript + store double 1.0, ptr %idx br label %for.k.inc for.k.inc: diff --git a/polly/test/ScopInfo/multidim_many_references.ll b/polly/test/ScopInfo/multidim_many_references.ll index 4fa59e6c092d..b0483b267260 100644 --- a/polly/test/ScopInfo/multidim_many_references.ll +++ b/polly/test/ScopInfo/multidim_many_references.ll @@ -32,7 +32,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; formulation of the assumption tracking cause LLVM to crash due to excessive ; memory usage due to an overly large number of disjuncts being formed. -%struct.Mat = type { float*, i64, i64, i64 } +%struct.Mat = type { ptr, i64, i64, i64 } ; CHECK: Assumed Context: ; CHECK-DAG: a2_cols >= -1 + a1_cols @@ -73,165 +73,146 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; CHECK-DAG: a19_cols >= -1 + a1_cols define void @jacobi(i64 %nn, - %struct.Mat* %a1, - %struct.Mat* %a2, - %struct.Mat* %a3, - %struct.Mat* %a4, - %struct.Mat* %a5, - %struct.Mat* %a6, - %struct.Mat* %a7, - %struct.Mat* %a8, - %struct.Mat* %a9, - %struct.Mat* %a10, - %struct.Mat* %a11, - %struct.Mat* %a12, - %struct.Mat* %a13, - %struct.Mat* %a14, - %struct.Mat* %a15, - %struct.Mat* %a16, - %struct.Mat* %a17, - %struct.Mat* %a18, - %struct.Mat* %a19 + ptr %a1, + ptr %a2, + ptr %a3, + ptr %a4, + ptr %a5, + ptr %a6, + ptr %a7, + ptr %a8, + ptr %a9, + ptr %a10, + ptr %a11, + ptr %a12, + ptr %a13, + ptr %a14, + ptr %a15, + ptr %a16, + ptr %a17, + ptr %a18, + ptr %a19 ) { entry: br label %entry.split entry.split: - %a1.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a1, i32 0, i32 0 - %a1.data = load float*, float** %a1.data.ptr, align 8 - %a1.rows.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a1, i32 0, i32 1 - %a1.rows = load i64, i64* %a1.rows.ptr, align 8 - %a1.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a1, i32 0, i32 2 - %a1.cols = load i64, i64* %a1.cols.ptr, align 8 - %a1.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a1, i32 0, i32 3 - %a1.deps = load i64, i64* %a1.deps.ptr, align 8 - - %a2.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a2, i32 0, i32 0 - %a2.data = load float*, float** %a2.data.ptr, align 8 - %a2.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a2, i32 0, i32 2 - %a2.cols = load i64, i64* %a2.cols.ptr, align 8 - %a2.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a2, i32 0, i32 3 - %a2.deps = load i64, i64* %a2.deps.ptr, align 8 - - %a3.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a3, i32 0, i32 0 - %a3.data = load float*, float** %a3.data.ptr, align 8 - %a3.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a3, i32 0, i32 2 - %a3.cols = load i64, i64* %a3.cols.ptr, align 8 - %a3.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a3, i32 0, i32 3 - %a3.deps = load i64, i64* %a3.deps.ptr, align 8 - - %a4.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a4, i32 0, i32 0 - %a4.data = load float*, float** %a4.data.ptr, align 8 - %a4.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a4, i32 0, i32 2 - %a4.cols = load i64, i64* %a4.cols.ptr, align 8 - %a4.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a4, i32 0, i32 3 - %a4.deps = load i64, i64* %a4.deps.ptr, align 8 - - %a5.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a5, i32 0, i32 0 - %a5.data = load float*, float** %a5.data.ptr, align 8 - %a5.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a5, i32 0, i32 2 - %a5.cols = load i64, i64* %a5.cols.ptr, align 8 - %a5.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a5, i32 0, i32 3 - %a5.deps = load i64, i64* %a5.deps.ptr, align 8 - - %a6.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a6, i32 0, i32 0 - %a6.data = load float*, float** %a6.data.ptr, align 8 - %a6.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a6, i32 0, i32 2 - %a6.cols = load i64, i64* %a6.cols.ptr, align 8 - %a6.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a6, i32 0, i32 3 - %a6.deps = load i64, i64* %a6.deps.ptr, align 8 - - %a7.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a7, i32 0, i32 0 - %a7.data = load float*, float** %a7.data.ptr, align 8 - %a7.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a7, i32 0, i32 2 - %a7.cols = load i64, i64* %a7.cols.ptr, align 8 - %a7.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a7, i32 0, i32 3 - %a7.deps = load i64, i64* %a7.deps.ptr, align 8 - - %a8.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a8, i32 0, i32 0 - %a8.data = load float*, float** %a8.data.ptr, align 8 - %a8.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a8, i32 0, i32 2 - %a8.cols = load i64, i64* %a8.cols.ptr, align 8 - %a8.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a8, i32 0, i32 3 - %a8.deps = load i64, i64* %a8.deps.ptr, align 8 - - %a9.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a9, i32 0, i32 0 - %a9.data = load float*, float** %a9.data.ptr, align 8 - %a9.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a9, i32 0, i32 2 - %a9.cols = load i64, i64* %a9.cols.ptr, align 8 - %a9.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a9, i32 0, i32 3 - %a9.deps = load i64, i64* %a9.deps.ptr, align 8 - - %a10.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a10, i32 0, i32 0 - %a10.data = load float*, float** %a10.data.ptr, align 8 - %a10.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a10, i32 0, i32 2 - %a10.cols = load i64, i64* %a10.cols.ptr, align 8 - %a10.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a10, i32 0, i32 3 - %a10.deps = load i64, i64* %a10.deps.ptr, align 8 - - %a11.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a11, i32 0, i32 0 - %a11.data = load float*, float** %a11.data.ptr, align 8 - %a11.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a11, i32 0, i32 2 - %a11.cols = load i64, i64* %a11.cols.ptr, align 8 - %a11.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a11, i32 0, i32 3 - %a11.deps = load i64, i64* %a11.deps.ptr, align 8 - - %a12.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a12, i32 0, i32 0 - %a12.data = load float*, float** %a12.data.ptr, align 8 - %a12.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a12, i32 0, i32 2 - %a12.cols = load i64, i64* %a12.cols.ptr, align 8 - %a12.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a12, i32 0, i32 3 - %a12.deps = load i64, i64* %a12.deps.ptr, align 8 - - %a13.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a13, i32 0, i32 0 - %a13.data = load float*, float** %a13.data.ptr, align 8 - %a13.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a13, i32 0, i32 2 - %a13.cols = load i64, i64* %a13.cols.ptr, align 8 - %a13.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a13, i32 0, i32 3 - %a13.deps = load i64, i64* %a13.deps.ptr, align 8 - - %a14.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a14, i32 0, i32 0 - %a14.data = load float*, float** %a14.data.ptr, align 8 - %a14.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a14, i32 0, i32 2 - %a14.cols = load i64, i64* %a14.cols.ptr, align 8 - %a14.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a14, i32 0, i32 3 - %a14.deps = load i64, i64* %a14.deps.ptr, align 8 - - %a15.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a15, i32 0, i32 0 - %a15.data = load float*, float** %a15.data.ptr, align 8 - %a15.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a15, i32 0, i32 2 - %a15.cols = load i64, i64* %a15.cols.ptr, align 8 - %a15.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a15, i32 0, i32 3 - %a15.deps = load i64, i64* %a15.deps.ptr, align 8 - - %a16.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a16, i32 0, i32 0 - %a16.data = load float*, float** %a16.data.ptr, align 8 - %a16.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a16, i32 0, i32 2 - %a16.cols = load i64, i64* %a16.cols.ptr, align 8 - %a16.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a16, i32 0, i32 3 - %a16.deps = load i64, i64* %a16.deps.ptr, align 8 - - %a17.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a17, i32 0, i32 0 - %a17.data = load float*, float** %a17.data.ptr, align 8 - %a17.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a17, i32 0, i32 2 - %a17.cols = load i64, i64* %a17.cols.ptr, align 8 - %a17.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a17, i32 0, i32 3 - %a17.deps = load i64, i64* %a17.deps.ptr, align 8 - - %a18.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a18, i32 0, i32 0 - %a18.data = load float*, float** %a18.data.ptr, align 8 - %a18.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a18, i32 0, i32 2 - %a18.cols = load i64, i64* %a18.cols.ptr, align 8 - %a18.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a18, i32 0, i32 3 - %a18.deps = load i64, i64* %a18.deps.ptr, align 8 - - %a19.data.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a19, i32 0, i32 0 - %a19.data = load float*, float** %a19.data.ptr, align 8 - %a19.cols.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a19, i32 0, i32 2 - %a19.cols = load i64, i64* %a19.cols.ptr, align 8 - %a19.deps.ptr = getelementptr inbounds %struct.Mat, %struct.Mat* %a19, i32 0, i32 3 - %a19.deps = load i64, i64* %a19.deps.ptr, align 8 + %a1.data = load ptr, ptr %a1, align 8 + %a1.rows.ptr = getelementptr inbounds %struct.Mat, ptr %a1, i32 0, i32 1 + %a1.rows = load i64, ptr %a1.rows.ptr, align 8 + %a1.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a1, i32 0, i32 2 + %a1.cols = load i64, ptr %a1.cols.ptr, align 8 + %a1.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a1, i32 0, i32 3 + %a1.deps = load i64, ptr %a1.deps.ptr, align 8 + + %a2.data = load ptr, ptr %a2, align 8 + %a2.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a2, i32 0, i32 2 + %a2.cols = load i64, ptr %a2.cols.ptr, align 8 + %a2.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a2, i32 0, i32 3 + %a2.deps = load i64, ptr %a2.deps.ptr, align 8 + + %a3.data = load ptr, ptr %a3, align 8 + %a3.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a3, i32 0, i32 2 + %a3.cols = load i64, ptr %a3.cols.ptr, align 8 + %a3.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a3, i32 0, i32 3 + %a3.deps = load i64, ptr %a3.deps.ptr, align 8 + + %a4.data = load ptr, ptr %a4, align 8 + %a4.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a4, i32 0, i32 2 + %a4.cols = load i64, ptr %a4.cols.ptr, align 8 + %a4.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a4, i32 0, i32 3 + %a4.deps = load i64, ptr %a4.deps.ptr, align 8 + + %a5.data = load ptr, ptr %a5, align 8 + %a5.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a5, i32 0, i32 2 + %a5.cols = load i64, ptr %a5.cols.ptr, align 8 + %a5.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a5, i32 0, i32 3 + %a5.deps = load i64, ptr %a5.deps.ptr, align 8 + + %a6.data = load ptr, ptr %a6, align 8 + %a6.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a6, i32 0, i32 2 + %a6.cols = load i64, ptr %a6.cols.ptr, align 8 + %a6.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a6, i32 0, i32 3 + %a6.deps = load i64, ptr %a6.deps.ptr, align 8 + + %a7.data = load ptr, ptr %a7, align 8 + %a7.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a7, i32 0, i32 2 + %a7.cols = load i64, ptr %a7.cols.ptr, align 8 + %a7.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a7, i32 0, i32 3 + %a7.deps = load i64, ptr %a7.deps.ptr, align 8 + + %a8.data = load ptr, ptr %a8, align 8 + %a8.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a8, i32 0, i32 2 + %a8.cols = load i64, ptr %a8.cols.ptr, align 8 + %a8.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a8, i32 0, i32 3 + %a8.deps = load i64, ptr %a8.deps.ptr, align 8 + + %a9.data = load ptr, ptr %a9, align 8 + %a9.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a9, i32 0, i32 2 + %a9.cols = load i64, ptr %a9.cols.ptr, align 8 + %a9.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a9, i32 0, i32 3 + %a9.deps = load i64, ptr %a9.deps.ptr, align 8 + + %a10.data = load ptr, ptr %a10, align 8 + %a10.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a10, i32 0, i32 2 + %a10.cols = load i64, ptr %a10.cols.ptr, align 8 + %a10.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a10, i32 0, i32 3 + %a10.deps = load i64, ptr %a10.deps.ptr, align 8 + + %a11.data = load ptr, ptr %a11, align 8 + %a11.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a11, i32 0, i32 2 + %a11.cols = load i64, ptr %a11.cols.ptr, align 8 + %a11.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a11, i32 0, i32 3 + %a11.deps = load i64, ptr %a11.deps.ptr, align 8 + + %a12.data = load ptr, ptr %a12, align 8 + %a12.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a12, i32 0, i32 2 + %a12.cols = load i64, ptr %a12.cols.ptr, align 8 + %a12.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a12, i32 0, i32 3 + %a12.deps = load i64, ptr %a12.deps.ptr, align 8 + + %a13.data = load ptr, ptr %a13, align 8 + %a13.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a13, i32 0, i32 2 + %a13.cols = load i64, ptr %a13.cols.ptr, align 8 + %a13.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a13, i32 0, i32 3 + %a13.deps = load i64, ptr %a13.deps.ptr, align 8 + + %a14.data = load ptr, ptr %a14, align 8 + %a14.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a14, i32 0, i32 2 + %a14.cols = load i64, ptr %a14.cols.ptr, align 8 + %a14.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a14, i32 0, i32 3 + %a14.deps = load i64, ptr %a14.deps.ptr, align 8 + + %a15.data = load ptr, ptr %a15, align 8 + %a15.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a15, i32 0, i32 2 + %a15.cols = load i64, ptr %a15.cols.ptr, align 8 + %a15.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a15, i32 0, i32 3 + %a15.deps = load i64, ptr %a15.deps.ptr, align 8 + + %a16.data = load ptr, ptr %a16, align 8 + %a16.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a16, i32 0, i32 2 + %a16.cols = load i64, ptr %a16.cols.ptr, align 8 + %a16.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a16, i32 0, i32 3 + %a16.deps = load i64, ptr %a16.deps.ptr, align 8 + + %a17.data = load ptr, ptr %a17, align 8 + %a17.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a17, i32 0, i32 2 + %a17.cols = load i64, ptr %a17.cols.ptr, align 8 + %a17.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a17, i32 0, i32 3 + %a17.deps = load i64, ptr %a17.deps.ptr, align 8 + + %a18.data = load ptr, ptr %a18, align 8 + %a18.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a18, i32 0, i32 2 + %a18.cols = load i64, ptr %a18.cols.ptr, align 8 + %a18.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a18, i32 0, i32 3 + %a18.deps = load i64, ptr %a18.deps.ptr, align 8 + + %a19.data = load ptr, ptr %a19, align 8 + %a19.cols.ptr = getelementptr inbounds %struct.Mat, ptr %a19, i32 0, i32 2 + %a19.cols = load i64, ptr %a19.cols.ptr, align 8 + %a19.deps.ptr = getelementptr inbounds %struct.Mat, ptr %a19, i32 0, i32 3 + %a19.deps = load i64, ptr %a19.deps.ptr, align 8 br label %for.n for.n: @@ -257,8 +238,8 @@ for.body.k: %a1.idx.j = mul i64 %a1.deps, %indvar.j %a1.tmp6 = add i64 %a1.tmp5, %a1.idx.j %a1.idx.k = add i64 %a1.tmp6, %indvar.k - %a1.ptr = getelementptr float, float* %a1.data, i64 %a1.idx.k - %sum = load float, float* %a1.ptr, align 4 + %a1.ptr = getelementptr float, ptr %a1.data, i64 %a1.idx.k + %sum = load float, ptr %a1.ptr, align 4 %a2.tmp1 = add i64 %a2.cols, 1 %a2.tmp2 = mul i64 %a2.deps, %a2.tmp1 @@ -269,8 +250,8 @@ for.body.k: %a2.idx.j = mul i64 %a2.deps, %indvar.j %a2.tmp6 = add i64 %a2.tmp5, %a2.idx.j %a2.idx.k = add i64 %a2.tmp6, %indvar.k - %a2.ptr = getelementptr float, float* %a2.data, i64 %a2.idx.k - %a2.val = load float, float* %a2.ptr, align 4 + %a2.ptr = getelementptr float, ptr %a2.data, i64 %a2.idx.k + %a2.val = load float, ptr %a2.ptr, align 4 %sum.a2 = fadd float %sum, %a2.val %a3.tmp1 = add i64 %a3.cols, 1 @@ -282,8 +263,8 @@ for.body.k: %a3.idx.j = mul i64 %a3.deps, %indvar.j %a3.tmp6 = add i64 %a3.tmp5, %a3.idx.j %a3.idx.k = add i64 %a3.tmp6, %indvar.k - %a3.ptr = getelementptr float, float* %a3.data, i64 %a3.idx.k - %a3.val = load float, float* %a3.ptr, align 4 + %a3.ptr = getelementptr float, ptr %a3.data, i64 %a3.idx.k + %a3.val = load float, ptr %a3.ptr, align 4 %sum.a3 = fadd float %sum.a2, %a3.val %a4.tmp1 = add i64 %a4.cols, 1 @@ -295,8 +276,8 @@ for.body.k: %a4.idx.j = mul i64 %a4.deps, %indvar.j %a4.tmp6 = add i64 %a4.tmp5, %a4.idx.j %a4.idx.k = add i64 %a4.tmp6, %indvar.k - %a4.ptr = getelementptr float, float* %a4.data, i64 %a4.idx.k - %a4.val = load float, float* %a4.ptr, align 4 + %a4.ptr = getelementptr float, ptr %a4.data, i64 %a4.idx.k + %a4.val = load float, ptr %a4.ptr, align 4 %sum.a4 = fadd float %sum.a3, %a4.val %a5.tmp1 = add i64 %a5.cols, 1 @@ -308,8 +289,8 @@ for.body.k: %a5.idx.j = mul i64 %a5.deps, %indvar.j %a5.tmp6 = add i64 %a5.tmp5, %a5.idx.j %a5.idx.k = add i64 %a5.tmp6, %indvar.k - %a5.ptr = getelementptr float, float* %a5.data, i64 %a5.idx.k - %a5.val = load float, float* %a5.ptr, align 4 + %a5.ptr = getelementptr float, ptr %a5.data, i64 %a5.idx.k + %a5.val = load float, ptr %a5.ptr, align 4 %sum.a5 = fadd float %sum.a4, %a5.val %a6.tmp1 = add i64 %a6.cols, 1 @@ -321,8 +302,8 @@ for.body.k: %a6.idx.j = mul i64 %a6.deps, %indvar.j %a6.tmp6 = add i64 %a6.tmp5, %a6.idx.j %a6.idx.k = add i64 %a6.tmp6, %indvar.k - %a6.ptr = getelementptr float, float* %a6.data, i64 %a6.idx.k - %a6.val = load float, float* %a6.ptr, align 4 + %a6.ptr = getelementptr float, ptr %a6.data, i64 %a6.idx.k + %a6.val = load float, ptr %a6.ptr, align 4 %sum.a6 = fadd float %sum.a5, %a6.val %a7.tmp1 = add i64 %a7.cols, 1 @@ -334,8 +315,8 @@ for.body.k: %a7.idx.j = mul i64 %a7.deps, %indvar.j %a7.tmp6 = add i64 %a7.tmp5, %a7.idx.j %a7.idx.k = add i64 %a7.tmp6, %indvar.k - %a7.ptr = getelementptr float, float* %a7.data, i64 %a7.idx.k - %a7.val = load float, float* %a7.ptr, align 4 + %a7.ptr = getelementptr float, ptr %a7.data, i64 %a7.idx.k + %a7.val = load float, ptr %a7.ptr, align 4 %sum.a7 = fadd float %sum.a6, %a7.val %a8.tmp1 = add i64 %a8.cols, 1 @@ -347,8 +328,8 @@ for.body.k: %a8.idx.j = mul i64 %a8.deps, %indvar.j %a8.tmp6 = add i64 %a8.tmp5, %a8.idx.j %a8.idx.k = add i64 %a8.tmp6, %indvar.k - %a8.ptr = getelementptr float, float* %a8.data, i64 %a8.idx.k - %a8.val = load float, float* %a8.ptr, align 4 + %a8.ptr = getelementptr float, ptr %a8.data, i64 %a8.idx.k + %a8.val = load float, ptr %a8.ptr, align 4 %sum.a8 = fadd float %sum.a7, %a8.val %a9.tmp1 = add i64 %a9.cols, 1 @@ -360,8 +341,8 @@ for.body.k: %a9.idx.j = mul i64 %a9.deps, %indvar.j %a9.tmp6 = add i64 %a9.tmp5, %a9.idx.j %a9.idx.k = add i64 %a9.tmp6, %indvar.k - %a9.ptr = getelementptr float, float* %a9.data, i64 %a9.idx.k - %a9.val = load float, float* %a9.ptr, align 4 + %a9.ptr = getelementptr float, ptr %a9.data, i64 %a9.idx.k + %a9.val = load float, ptr %a9.ptr, align 4 %sum.a9 = fadd float %sum.a8, %a9.val %a10.tmp1 = add i64 %a10.cols, 1 @@ -373,8 +354,8 @@ for.body.k: %a10.idx.j = mul i64 %a10.deps, %indvar.j %a10.tmp6 = add i64 %a10.tmp5, %a10.idx.j %a10.idx.k = add i64 %a10.tmp6, %indvar.k - %a10.ptr = getelementptr float, float* %a10.data, i64 %a10.idx.k - %a10.val = load float, float* %a10.ptr, align 4 + %a10.ptr = getelementptr float, ptr %a10.data, i64 %a10.idx.k + %a10.val = load float, ptr %a10.ptr, align 4 %sum.a10 = fadd float %sum.a9, %a10.val %a11.tmp1 = add i64 %a11.cols, 1 @@ -386,8 +367,8 @@ for.body.k: %a11.idx.j = mul i64 %a11.deps, %indvar.j %a11.tmp6 = add i64 %a11.tmp5, %a11.idx.j %a11.idx.k = add i64 %a11.tmp6, %indvar.k - %a11.ptr = getelementptr float, float* %a11.data, i64 %a11.idx.k - %a11.val = load float, float* %a11.ptr, align 4 + %a11.ptr = getelementptr float, ptr %a11.data, i64 %a11.idx.k + %a11.val = load float, ptr %a11.ptr, align 4 %sum.a11 = fadd float %sum.a10, %a11.val %a12.tmp1 = add i64 %a12.cols, 1 @@ -399,8 +380,8 @@ for.body.k: %a12.idx.j = mul i64 %a12.deps, %indvar.j %a12.tmp6 = add i64 %a12.tmp5, %a12.idx.j %a12.idx.k = add i64 %a12.tmp6, %indvar.k - %a12.ptr = getelementptr float, float* %a12.data, i64 %a12.idx.k - %a12.val = load float, float* %a12.ptr, align 4 + %a12.ptr = getelementptr float, ptr %a12.data, i64 %a12.idx.k + %a12.val = load float, ptr %a12.ptr, align 4 %sum.a12 = fadd float %sum.a11, %a12.val %a13.tmp1 = add i64 %a13.cols, 1 @@ -412,8 +393,8 @@ for.body.k: %a13.idx.j = mul i64 %a13.deps, %indvar.j %a13.tmp6 = add i64 %a13.tmp5, %a13.idx.j %a13.idx.k = add i64 %a13.tmp6, %indvar.k - %a13.ptr = getelementptr float, float* %a13.data, i64 %a13.idx.k - %a13.val = load float, float* %a13.ptr, align 4 + %a13.ptr = getelementptr float, ptr %a13.data, i64 %a13.idx.k + %a13.val = load float, ptr %a13.ptr, align 4 %sum.a13 = fadd float %sum.a12, %a13.val %a14.tmp1 = add i64 %a14.cols, 1 @@ -425,8 +406,8 @@ for.body.k: %a14.idx.j = mul i64 %a14.deps, %indvar.j %a14.tmp6 = add i64 %a14.tmp5, %a14.idx.j %a14.idx.k = add i64 %a14.tmp6, %indvar.k - %a14.ptr = getelementptr float, float* %a14.data, i64 %a14.idx.k - %a14.val = load float, float* %a14.ptr, align 4 + %a14.ptr = getelementptr float, ptr %a14.data, i64 %a14.idx.k + %a14.val = load float, ptr %a14.ptr, align 4 %sum.a14 = fadd float %sum.a13, %a14.val %a15.tmp1 = add i64 %a15.cols, 1 @@ -438,8 +419,8 @@ for.body.k: %a15.idx.j = mul i64 %a15.deps, %indvar.j %a15.tmp6 = add i64 %a15.tmp5, %a15.idx.j %a15.idx.k = add i64 %a15.tmp6, %indvar.k - %a15.ptr = getelementptr float, float* %a15.data, i64 %a15.idx.k - %a15.val = load float, float* %a15.ptr, align 4 + %a15.ptr = getelementptr float, ptr %a15.data, i64 %a15.idx.k + %a15.val = load float, ptr %a15.ptr, align 4 %sum.a15 = fadd float %sum.a14, %a15.val %a16.tmp1 = add i64 %a16.cols, 1 @@ -451,8 +432,8 @@ for.body.k: %a16.idx.j = mul i64 %a16.deps, %indvar.j %a16.tmp6 = add i64 %a16.tmp5, %a16.idx.j %a16.idx.k = add i64 %a16.tmp6, %indvar.k - %a16.ptr = getelementptr float, float* %a16.data, i64 %a16.idx.k - %a16.val = load float, float* %a16.ptr, align 4 + %a16.ptr = getelementptr float, ptr %a16.data, i64 %a16.idx.k + %a16.val = load float, ptr %a16.ptr, align 4 %sum.a16 = fadd float %sum.a15, %a16.val %a17.tmp1 = add i64 %a17.cols, 1 @@ -464,8 +445,8 @@ for.body.k: %a17.idx.j = mul i64 %a17.deps, %indvar.j %a17.tmp6 = add i64 %a17.tmp5, %a17.idx.j %a17.idx.k = add i64 %a17.tmp6, %indvar.k - %a17.ptr = getelementptr float, float* %a17.data, i64 %a17.idx.k - %a17.val = load float, float* %a17.ptr, align 4 + %a17.ptr = getelementptr float, ptr %a17.data, i64 %a17.idx.k + %a17.val = load float, ptr %a17.ptr, align 4 %sum.a17 = fadd float %sum.a16, %a17.val %a18.tmp1 = add i64 %a18.cols, 1 @@ -477,8 +458,8 @@ for.body.k: %a18.idx.j = mul i64 %a18.deps, %indvar.j %a18.tmp6 = add i64 %a18.tmp5, %a18.idx.j %a18.idx.k = add i64 %a18.tmp6, %indvar.k - %a18.ptr = getelementptr float, float* %a18.data, i64 %a18.idx.k - %a18.val = load float, float* %a18.ptr, align 4 + %a18.ptr = getelementptr float, ptr %a18.data, i64 %a18.idx.k + %a18.val = load float, ptr %a18.ptr, align 4 %sum.a18 = fadd float %sum.a17, %a18.val %a19.tmp1 = add i64 %a19.cols, 1 @@ -490,8 +471,8 @@ for.body.k: %a19.idx.j = mul i64 %a19.deps, %indvar.j %a19.tmp6 = add i64 %a19.tmp5, %a19.idx.j %a19.idx.k = add i64 %a19.tmp6, %indvar.k - %a19.ptr = getelementptr float, float* %a19.data, i64 %a19.idx.k - store float %sum.a18, float* %a19.ptr, align 4 + %a19.ptr = getelementptr float, ptr %a19.data, i64 %a19.idx.k + store float %sum.a18, ptr %a19.ptr, align 4 %indvar.k.next = add i64 %indvar.k, 1 %a1.deps.sub = add i64 %a1.deps, -2 diff --git a/polly/test/ScopInfo/multidim_nested_start_integer.ll b/polly/test/ScopInfo/multidim_nested_start_integer.ll index ae59dbdfbf66..741a0ef45c27 100644 --- a/polly/test/ScopInfo/multidim_nested_start_integer.ll +++ b/polly/test/ScopInfo/multidim_nested_start_integer.ll @@ -27,7 +27,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK-NEXT: [o, m, n] -> { Stmt_for_k[i0, i1, i2] -> MemRef_A[3 + i0, i1, 7 + i2] }; ; CHECK-NEXT: } -define void @foo(i64 %n, i64 %m, i64 %o, double* %A) { +define void @foo(i64 %n, i64 %m, i64 %o, ptr %A) { entry: br label %for.i @@ -48,8 +48,8 @@ for.k: %subscript2 = mul i64 %subscript1, %o %offset2 = add nsw i64 %k, 7 %subscript = add i64 %subscript2, %offset2 - %idx = getelementptr inbounds double, double* %A, i64 %subscript - store double 1.0, double* %idx + %idx = getelementptr inbounds double, ptr %A, i64 %subscript + store double 1.0, ptr %idx br label %for.k.inc for.k.inc: diff --git a/polly/test/ScopInfo/multidim_nested_start_share_parameter.ll b/polly/test/ScopInfo/multidim_nested_start_share_parameter.ll index 27afdd86e9db..692746bad3d7 100644 --- a/polly/test/ScopInfo/multidim_nested_start_share_parameter.ll +++ b/polly/test/ScopInfo/multidim_nested_start_share_parameter.ll @@ -21,7 +21,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK: [o, m, n] -> { Stmt_for_k[i0, i1, i2] -> MemRef_A[3 + i0, 10 + i1, 7 + i2] }; ; CHECK: [o, m, n] -> { Stmt_for_k[i0, i1, i2] -> MemRef_A[13 + i0, i1, 17 + i2] }; -define void @foo(i64 %n, i64 %m, i64 %o, double* %A) { +define void @foo(i64 %n, i64 %m, i64 %o, ptr %A) { entry: br label %for.i @@ -43,8 +43,8 @@ for.k: %subscript2 = mul i64 %subscript1, %o %offset2 = add nsw i64 %k, 7 %subscript3 = add i64 %subscript2, %offset2 - %idx = getelementptr inbounds double, double* %A, i64 %subscript3 - store double 1.0, double* %idx + %idx = getelementptr inbounds double, ptr %A, i64 %subscript3 + store double 1.0, ptr %idx %offset3 = add nsw i64 %i, 13 %subscript4 = mul i64 %offset3, %m @@ -53,8 +53,8 @@ for.k: %subscript6 = mul i64 %subscript5, %o %offset5 = add nsw i64 %k, 17 %subscript7 = add i64 %subscript6, %offset5 - %idx1 = getelementptr inbounds double, double* %A, i64 %subscript7 - store double 11.0, double* %idx1 + %idx1 = getelementptr inbounds double, ptr %A, i64 %subscript7 + store double 11.0, ptr %idx1 br label %for.k.inc diff --git a/polly/test/ScopInfo/multidim_only_ivs_2d.ll b/polly/test/ScopInfo/multidim_only_ivs_2d.ll index 15a4e7848076..71245642e751 100644 --- a/polly/test/ScopInfo/multidim_only_ivs_2d.ll +++ b/polly/test/ScopInfo/multidim_only_ivs_2d.ll @@ -26,7 +26,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK-NEXT: [m, n] -> { Stmt_for_j[i0, i1] -> MemRef_A[i0, i1] }; ; CHECK-NEXT: } -define void @foo(i64 %n, i64 %m, double* %A) { +define void @foo(i64 %n, i64 %m, ptr %A) { entry: br label %for.i @@ -38,8 +38,8 @@ for.i: for.j: %j = phi i64 [ 0, %for.i ], [ %j.inc, %for.j ] %vlaarrayidx.sum = add i64 %j, %tmp - %arrayidx = getelementptr inbounds double, double* %A, i64 %vlaarrayidx.sum - store double 1.0, double* %arrayidx + %arrayidx = getelementptr inbounds double, ptr %A, i64 %vlaarrayidx.sum + store double 1.0, ptr %arrayidx %j.inc = add nsw i64 %j, 1 %j.exitcond = icmp eq i64 %j.inc, %m br i1 %j.exitcond, label %for.i.inc, label %for.j diff --git a/polly/test/ScopInfo/multidim_only_ivs_3d.ll b/polly/test/ScopInfo/multidim_only_ivs_3d.ll index 575a0dc8f61c..a019d58b241d 100644 --- a/polly/test/ScopInfo/multidim_only_ivs_3d.ll +++ b/polly/test/ScopInfo/multidim_only_ivs_3d.ll @@ -27,7 +27,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK-NEXT: [o, m, n] -> { Stmt_for_k[i0, i1, i2] -> MemRef_A[i0, i1, i2] }; ; CHECK-NEXT: } -define void @foo(i64 %n, i64 %m, i64 %o, double* %A) { +define void @foo(i64 %n, i64 %m, i64 %o, ptr %A) { entry: br label %for.i @@ -45,8 +45,8 @@ for.k: %subscript1 = add i64 %j, %subscript0 %subscript2 = mul i64 %subscript1, %o %subscript = add i64 %subscript2, %k - %idx = getelementptr inbounds double, double* %A, i64 %subscript - store double 1.0, double* %idx + %idx = getelementptr inbounds double, ptr %A, i64 %subscript + store double 1.0, ptr %idx br label %for.k.inc for.k.inc: diff --git a/polly/test/ScopInfo/multidim_only_ivs_3d_cast.ll b/polly/test/ScopInfo/multidim_only_ivs_3d_cast.ll index f47c01275d86..41577ef1a0be 100644 --- a/polly/test/ScopInfo/multidim_only_ivs_3d_cast.ll +++ b/polly/test/ScopInfo/multidim_only_ivs_3d_cast.ll @@ -39,7 +39,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" -define void @foo(i32 %n, i32 %m, i32 %o, double* %A) { +define void @foo(i32 %n, i32 %m, i32 %o, ptr %A) { entry: %m_zext = zext i32 %m to i64 %n_zext = zext i32 %o to i64 @@ -62,8 +62,8 @@ for.k: %tmp.us.us = add i64 %j, %tmp %tmp17.us.us = mul i64 %tmp.us.us, %n_zext %subscript = add i64 %tmp17.us.us, %k - %idx = getelementptr inbounds double, double* %A, i64 %subscript - store double 1.0, double* %idx + %idx = getelementptr inbounds double, ptr %A, i64 %subscript + store double 1.0, ptr %idx br label %for.k.inc for.k.inc: diff --git a/polly/test/ScopInfo/multidim_only_ivs_3d_reverse.ll b/polly/test/ScopInfo/multidim_only_ivs_3d_reverse.ll index 9320aaa65a91..25907f2ee79c 100644 --- a/polly/test/ScopInfo/multidim_only_ivs_3d_reverse.ll +++ b/polly/test/ScopInfo/multidim_only_ivs_3d_reverse.ll @@ -32,7 +32,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; CHECK-NEXT: [m, o, n] -> { Stmt_for_j[i0, i1, i2] -> MemRef_A[i0, i2, i1] }; ; CHECK-NEXT: } -define void @foo(i64 %n, i64 %m, i64 %o, double* %A) { +define void @foo(i64 %n, i64 %m, i64 %o, ptr %A) { entry: br label %for.i @@ -50,8 +50,8 @@ for.j: %subscript1 = add i64 %j, %subscript0 %subscript2 = mul i64 %subscript1, %o %subscript = add i64 %subscript2, %k - %idx = getelementptr inbounds double, double* %A, i64 %subscript - store double 1.0, double* %idx + %idx = getelementptr inbounds double, ptr %A, i64 %subscript + store double 1.0, ptr %idx br label %for.j.inc for.j.inc: diff --git a/polly/test/ScopInfo/multidim_param_in_subscript-2.ll b/polly/test/ScopInfo/multidim_param_in_subscript-2.ll index 9ca173781cec..0790664f7129 100644 --- a/polly/test/ScopInfo/multidim_param_in_subscript-2.ll +++ b/polly/test/ScopInfo/multidim_param_in_subscript-2.ll @@ -17,7 +17,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %n, i64 %m, float* %A) { +define void @foo(i64 %n, i64 %m, ptr %A) { entry: br label %for.cond @@ -52,17 +52,17 @@ for.body6: ; preds = %for.cond4 %tmp2 = mul nsw i64 %sub9, %m %arrayidx.sum = add i64 %tmp1, %tmp2 %arrayidx10.sum = add i64 %arrayidx.sum, %sub7 - %arrayidx11 = getelementptr inbounds float, float* %A, i64 %arrayidx10.sum - %tmp3 = load float, float* %arrayidx11, align 4 + %arrayidx11 = getelementptr inbounds float, ptr %A, i64 %arrayidx10.sum + %tmp3 = load float, ptr %arrayidx11, align 4 %tmp4 = mul nuw i64 %n, %m %tmp5 = mul nsw i64 %i.0, %tmp4 %tmp6 = mul nsw i64 %j.0, %m %arrayidx12.sum = add i64 %tmp5, %tmp6 %arrayidx13.sum = add i64 %arrayidx12.sum, %k.0 - %arrayidx14 = getelementptr inbounds float, float* %A, i64 %arrayidx13.sum - %tmp7 = load float, float* %arrayidx14, align 4 + %arrayidx14 = getelementptr inbounds float, ptr %A, i64 %arrayidx13.sum + %tmp7 = load float, ptr %arrayidx14, align 4 %add = fadd float %tmp7, %tmp3 - store float %add, float* %arrayidx14, align 4 + store float %add, ptr %arrayidx14, align 4 br label %for.inc for.inc: ; preds = %for.body6 diff --git a/polly/test/ScopInfo/multidim_param_in_subscript.ll b/polly/test/ScopInfo/multidim_param_in_subscript.ll index d7fbc378f5e5..b8ec80b321fe 100644 --- a/polly/test/ScopInfo/multidim_param_in_subscript.ll +++ b/polly/test/ScopInfo/multidim_param_in_subscript.ll @@ -18,7 +18,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %n, float* %A) { +define void @foo(i64 %n, ptr %A) { entry: br label %for.cond @@ -40,14 +40,14 @@ for.body3: ; preds = %for.cond1 %sub4 = add nsw i64 %sub, -1 %tmp = mul nsw i64 %i.0, %n %arrayidx.sum = add i64 %tmp, %sub4 - %arrayidx5 = getelementptr inbounds float, float* %A, i64 %arrayidx.sum - %tmp1 = load float, float* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds float, ptr %A, i64 %arrayidx.sum + %tmp1 = load float, ptr %arrayidx5, align 4 %tmp2 = mul nsw i64 %i.0, %n %arrayidx6.sum = add i64 %tmp2, %j.0 - %arrayidx7 = getelementptr inbounds float, float* %A, i64 %arrayidx6.sum - %tmp3 = load float, float* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds float, ptr %A, i64 %arrayidx6.sum + %tmp3 = load float, ptr %arrayidx7, align 4 %add = fadd float %tmp3, %tmp1 - store float %add, float* %arrayidx7, align 4 + store float %add, ptr %arrayidx7, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/ScopInfo/multidim_parameter_addrec_product.ll b/polly/test/ScopInfo/multidim_parameter_addrec_product.ll index a500fd400805..7db3e9dc3b5f 100644 --- a/polly/test/ScopInfo/multidim_parameter_addrec_product.ll +++ b/polly/test/ScopInfo/multidim_parameter_addrec_product.ll @@ -19,7 +19,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A, i64* %p) { +define void @foo(ptr %A, ptr %p) { bb: br label %bb2 @@ -39,13 +39,13 @@ bb4: ; preds = %bb13, %bb3 bb5: ; preds = %bb4 %tmp = add nuw nsw i64 %i.0, %j.0 %tmp6 = sitofp i64 %tmp to float - %pval = load i64, i64* %p, align 8 + %pval = load i64, ptr %p, align 8 %tmp8 = mul nsw i64 %i.0, %pval %tmp9 = add nsw i64 %tmp8, %j.0 - %tmp10 = getelementptr inbounds float, float* %A, i64 %tmp9 - %tmp11 = load float, float* %tmp10, align 4 + %tmp10 = getelementptr inbounds float, ptr %A, i64 %tmp9 + %tmp11 = load float, ptr %tmp10, align 4 %tmp12 = fadd float %tmp11, %tmp6 - store float %tmp12, float* %tmp10, align 4 + store float %tmp12, ptr %tmp10, align 4 br label %bb13 bb13: ; preds = %bb5 diff --git a/polly/test/ScopInfo/multidim_single_and_multidim_array.ll b/polly/test/ScopInfo/multidim_single_and_multidim_array.ll index 591db81d7825..1e302dec4861 100644 --- a/polly/test/ScopInfo/multidim_single_and_multidim_array.ll +++ b/polly/test/ScopInfo/multidim_single_and_multidim_array.ll @@ -60,15 +60,15 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; DELIN-NEXT: [n] -> { Stmt_for_i_2[i0] -> MemRef_X[-1 + n, i0] }; ; DELIN-NEXT: } -define void @single-and-multi-dimensional-array(i64 %n, float* %X) { +define void @single-and-multi-dimensional-array(i64 %n, ptr %X) { entry: br label %for.i.1 for.i.1: %indvar.1 = phi i64 [ 0, %entry ], [ %indvar.next.1, %for.i.1 ] %offset.1 = mul i64 %n, %indvar.1 - %arrayidx.1 = getelementptr float, float* %X, i64 %offset.1 - store float 1.000000e+00, float* %arrayidx.1 + %arrayidx.1 = getelementptr float, ptr %X, i64 %offset.1 + store float 1.000000e+00, ptr %arrayidx.1 %indvar.next.1 = add nsw i64 %indvar.1, 1 %exitcond.1 = icmp ne i64 %indvar.next.1, %n br i1 %exitcond.1, label %for.i.1, label %next @@ -81,8 +81,8 @@ for.i.2: %offset.2.a = add i64 %n, -1 %offset.2.b = mul i64 %n, %offset.2.a %offset.2.c = add i64 %offset.2.b, %indvar.2 - %arrayidx.2 = getelementptr float, float* %X, i64 %offset.2.c - store float 1.000000e+00, float* %arrayidx.2 + %arrayidx.2 = getelementptr float, ptr %X, i64 %offset.2.c + store float 1.000000e+00, ptr %arrayidx.2 %indvar.next.2 = add nsw i64 %indvar.2, 1 %exitcond.2 = icmp ne i64 %indvar.next.2, %n br i1 %exitcond.2, label %for.i.2, label %exit diff --git a/polly/test/ScopInfo/multidim_srem.ll b/polly/test/ScopInfo/multidim_srem.ll index 24aa52577826..f89843f0a5bc 100644 --- a/polly/test/ScopInfo/multidim_srem.ll +++ b/polly/test/ScopInfo/multidim_srem.ll @@ -23,7 +23,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %n, float* %A) #0 { +define void @foo(i64 %n, ptr %A) #0 { entry: br label %entry.split @@ -51,13 +51,13 @@ for.body.8: ; preds = %for.body.8.lr.ph, % %rem = srem i64 %i.06, 2 %0 = mul nuw i64 %n, %n %1 = mul nsw i64 %0, %rem - %arrayidx = getelementptr inbounds float, float* %A, i64 %1 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %1 %2 = mul nsw i64 %j.04, %n - %arrayidx9 = getelementptr inbounds float, float* %arrayidx, i64 %2 - %arrayidx10 = getelementptr inbounds float, float* %arrayidx9, i64 %k.02 - %3 = load float, float* %arrayidx10, align 4, !tbaa !1 + %arrayidx9 = getelementptr inbounds float, ptr %arrayidx, i64 %2 + %arrayidx10 = getelementptr inbounds float, ptr %arrayidx9, i64 %k.02 + %3 = load float, ptr %arrayidx10, align 4, !tbaa !1 %add = fadd float %3, 1.000000e+01 - store float %add, float* %arrayidx10, align 4, !tbaa !1 + store float %add, ptr %arrayidx10, align 4, !tbaa !1 %inc = add nuw nsw i64 %k.02, 1 %exitcond = icmp ne i64 %inc, %n br i1 %exitcond, label %for.body.8, label %for.cond.5.for.inc.11_crit_edge @@ -83,10 +83,10 @@ for.end.16: ; preds = %for.inc.14 } ; Function Attrs: nounwind -declare void @llvm.lifetime.start(i64, i8* nocapture) #1 +declare void @llvm.lifetime.start(i64, ptr nocapture) #1 ; Function Attrs: nounwind -declare void @llvm.lifetime.end(i64, i8* nocapture) #1 +declare void @llvm.lifetime.end(i64, ptr nocapture) #1 attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" } attributes #1 = { nounwind } diff --git a/polly/test/ScopInfo/multidim_with_bitcast.ll b/polly/test/ScopInfo/multidim_with_bitcast.ll index fa59670b07a8..b77ff689b953 100644 --- a/polly/test/ScopInfo/multidim_with_bitcast.ll +++ b/polly/test/ScopInfo/multidim_with_bitcast.ll @@ -9,7 +9,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; CHECK: Stmt_bb7[i0, i1] -> MemRef_B[i0, i1] ; CHECK: Stmt_bb17[i0] -> MemRef_B[i0, 100] -define void @kernel(float* %A, [101 x float]* %B, [101 x float]* %C, float* %D) { +define void @kernel(ptr %A, ptr %B, ptr %C, ptr %D) { bb: br label %bb4 @@ -27,19 +27,17 @@ bb6: ; preds = %bb16, %bb5 br i1 %exitcond, label %bb17, label %bb7 bb7: ; preds = %bb6 - %tmp = getelementptr inbounds float, float* %D, i64 %indvars.iv - %tmp8 = load float, float* %tmp, align 4 - %tmp9 = getelementptr inbounds [101 x float], [101 x float]* %B, i64 %indvars.iv1, i64 %indvars.iv - %tmp10 = load float, float* %tmp9, align 4 + %tmp = getelementptr inbounds float, ptr %D, i64 %indvars.iv + %tmp8 = load float, ptr %tmp, align 4 + %tmp9 = getelementptr inbounds [101 x float], ptr %B, i64 %indvars.iv1, i64 %indvars.iv + %tmp10 = load float, ptr %tmp9, align 4 %tmp11 = fmul float %tmp8, %tmp10 - %tmp12 = getelementptr inbounds [101 x float], [101 x float]* %C, i64 %indvars.iv1, i64 %indvars.iv - store float %tmp11, float* %tmp12, align 4 - %tmp13 = getelementptr inbounds float, float* %A, i64 %indvars.iv - %0 = bitcast float* %tmp13 to i32* - %tmp141 = load i32, i32* %0, align 4 - %tmp15 = getelementptr inbounds [101 x float], [101 x float]* %B, i64 %indvars.iv1, i64 %indvars.iv - %1 = bitcast float* %tmp15 to i32* - store i32 %tmp141, i32* %1, align 4 + %tmp12 = getelementptr inbounds [101 x float], ptr %C, i64 %indvars.iv1, i64 %indvars.iv + store float %tmp11, ptr %tmp12, align 4 + %tmp13 = getelementptr inbounds float, ptr %A, i64 %indvars.iv + %tmp141 = load i32, ptr %tmp13, align 4 + %tmp15 = getelementptr inbounds [101 x float], ptr %B, i64 %indvars.iv1, i64 %indvars.iv + store i32 %tmp141, ptr %tmp15, align 4 br label %bb16 bb16: ; preds = %bb7 @@ -49,8 +47,8 @@ bb16: ; preds = %bb7 bb17: ; preds = %bb6 %tmp18 = trunc i64 %indvars.iv1 to i32 %tmp19 = sitofp i32 %tmp18 to float - %tmp20 = getelementptr inbounds [101 x float], [101 x float]* %B, i64 %indvars.iv1, i64 100 - store float %tmp19, float* %tmp20, align 4 + %tmp20 = getelementptr inbounds [101 x float], ptr %B, i64 %indvars.iv1, i64 100 + store float %tmp19, ptr %tmp20, align 4 br label %bb21 bb21: ; preds = %bb17 diff --git a/polly/test/ScopInfo/multiple-binary-or-conditions.ll b/polly/test/ScopInfo/multiple-binary-or-conditions.ll index 34cbcc8e451a..b905a11f577c 100644 --- a/polly/test/ScopInfo/multiple-binary-or-conditions.ll +++ b/polly/test/ScopInfo/multiple-binary-or-conditions.ll @@ -16,7 +16,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @or(float* nocapture %A, i64 %n, i64 %m, i64 %p) #0 { +define void @or(ptr nocapture %A, i64 %n, i64 %m, i64 %p) #0 { entry: br label %for.body @@ -31,10 +31,10 @@ for.body: ; preds = %for.inc, %entry if.then: ; preds = %for.body %conv = sitofp i64 %i.03 to float - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.03 - %0 = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.03 + %0 = load float, ptr %arrayidx, align 4 %add = fadd float %conv, %0 - store float %add, float* %arrayidx, align 4 + store float %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %if.then, %for.body diff --git a/polly/test/ScopInfo/multiple-types-access-offset-not-dividable-by-element-size.ll b/polly/test/ScopInfo/multiple-types-access-offset-not-dividable-by-element-size.ll index c2257d97651e..2d03ad941c05 100644 --- a/polly/test/ScopInfo/multiple-types-access-offset-not-dividable-by-element-size.ll +++ b/polly/test/ScopInfo/multiple-types-access-offset-not-dividable-by-element-size.ll @@ -44,7 +44,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @multiple_types(i8* %Short, i8* %Float, i8* %Double) { +define void @multiple_types(ptr %Short, ptr %Float, ptr %Double) { bb: br label %bb1 @@ -54,24 +54,21 @@ bb1: ; preds = %bb17, %bb br i1 %exitcond, label %bb2, label %bb19 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i8, i8* %Short, i64 %i.0 - %tmp3 = bitcast i8* %tmp to i16* - %tmp4 = load i16, i16* %tmp3, align 1 + %tmp = getelementptr inbounds i8, ptr %Short, i64 %i.0 + %tmp4 = load i16, ptr %tmp, align 1 %tmp5 = trunc i16 %tmp4 to i8 - %tmp6 = getelementptr inbounds i8, i8* %Short, i64 %i.0 - store i8 %tmp5, i8* %tmp6, align 1 - %tmp7 = getelementptr inbounds i8, i8* %Float, i64 %i.0 - %tmp8 = bitcast i8* %tmp7 to float* - %tmp9 = load float, float* %tmp8, align 1 + %tmp6 = getelementptr inbounds i8, ptr %Short, i64 %i.0 + store i8 %tmp5, ptr %tmp6, align 1 + %tmp7 = getelementptr inbounds i8, ptr %Float, i64 %i.0 + %tmp9 = load float, ptr %tmp7, align 1 %tmp10 = fptosi float %tmp9 to i8 - %tmp11 = getelementptr inbounds i8, i8* %Float, i64 %i.0 - store i8 %tmp10, i8* %tmp11, align 1 - %tmp12 = getelementptr inbounds i8, i8* %Double, i64 %i.0 - %tmp13 = bitcast i8* %tmp12 to double* - %tmp14 = load double, double* %tmp13, align 1 + %tmp11 = getelementptr inbounds i8, ptr %Float, i64 %i.0 + store i8 %tmp10, ptr %tmp11, align 1 + %tmp12 = getelementptr inbounds i8, ptr %Double, i64 %i.0 + %tmp14 = load double, ptr %tmp12, align 1 %tmp15 = fptosi double %tmp14 to i8 - %tmp16 = getelementptr inbounds i8, i8* %Double, i64 %i.0 - store i8 %tmp15, i8* %tmp16, align 1 + %tmp16 = getelementptr inbounds i8, ptr %Double, i64 %i.0 + store i8 %tmp15, ptr %tmp16, align 1 br label %bb17 bb17: ; preds = %bb2 diff --git a/polly/test/ScopInfo/multiple-types-non-affine-2.ll b/polly/test/ScopInfo/multiple-types-non-affine-2.ll index 6acaa85f47c9..5b0aa5de1e71 100644 --- a/polly/test/ScopInfo/multiple-types-non-affine-2.ll +++ b/polly/test/ScopInfo/multiple-types-non-affine-2.ll @@ -39,7 +39,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @multiple_types(i32* noalias %Short, i32* noalias %Char, i32* noalias %Double) { +define void @multiple_types(ptr noalias %Short, ptr noalias %Char, ptr noalias %Double) { bb: br label %bb1 @@ -50,24 +50,21 @@ bb1: ; preds = %bb20, %bb bb2: ; preds = %bb1 %quad = and i64 %i.0, 8 - %tmp3 = getelementptr inbounds i32, i32* %Short, i64 %quad - %tmp4 = bitcast i32* %tmp3 to i16* - %tmp5 = load i16, i16* %tmp4, align 2 + %tmp3 = getelementptr inbounds i32, ptr %Short, i64 %quad + %tmp5 = load i16, ptr %tmp3, align 2 %tmp6 = zext i16 %tmp5 to i32 - %tmp7 = getelementptr inbounds i32, i32* %Short, i64 %i.0 - store i32 %tmp6, i32* %tmp7, align 1 - %tmp9 = getelementptr inbounds i32, i32* %Char, i64 %quad - %tmp10 = bitcast i32* %tmp9 to i8* - %tmp11 = load i8, i8* %tmp10, align 4 + %tmp7 = getelementptr inbounds i32, ptr %Short, i64 %i.0 + store i32 %tmp6, ptr %tmp7, align 1 + %tmp9 = getelementptr inbounds i32, ptr %Char, i64 %quad + %tmp11 = load i8, ptr %tmp9, align 4 %tmp12 = zext i8 %tmp11 to i32 - %tmp13 = getelementptr inbounds i32, i32* %Char, i64 %i.0 - store i32 %tmp12, i32* %tmp13, align 1 - %tmp15 = getelementptr inbounds i32, i32* %Double, i64 %quad - %tmp16 = bitcast i32* %tmp15 to double* - %tmp17 = load double, double* %tmp16, align 8 + %tmp13 = getelementptr inbounds i32, ptr %Char, i64 %i.0 + store i32 %tmp12, ptr %tmp13, align 1 + %tmp15 = getelementptr inbounds i32, ptr %Double, i64 %quad + %tmp17 = load double, ptr %tmp15, align 8 %tmp18 = fptosi double %tmp17 to i32 - %tmp19 = getelementptr inbounds i32, i32* %Double, i64 %i.0 - store i32 %tmp18, i32* %tmp19, align 1 + %tmp19 = getelementptr inbounds i32, ptr %Double, i64 %i.0 + store i32 %tmp18, ptr %tmp19, align 1 br label %bb20 bb20: ; preds = %bb2 diff --git a/polly/test/ScopInfo/multiple-types-non-affine.ll b/polly/test/ScopInfo/multiple-types-non-affine.ll index 91b694abb68d..8e4be4c86d5a 100644 --- a/polly/test/ScopInfo/multiple-types-non-affine.ll +++ b/polly/test/ScopInfo/multiple-types-non-affine.ll @@ -39,7 +39,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @multiple_types(i8* noalias %Short, i16* noalias %Float, i8* noalias %Double) { +define void @multiple_types(ptr noalias %Short, ptr noalias %Float, ptr noalias %Double) { bb: br label %bb1 @@ -50,24 +50,21 @@ bb1: ; preds = %bb20, %bb bb2: ; preds = %bb1 %quad = and i64 %i.0, 8 - %tmp3 = getelementptr inbounds i8, i8* %Short, i64 %quad - %tmp4 = bitcast i8* %tmp3 to i16* - %tmp5 = load i16, i16* %tmp4, align 2 + %tmp3 = getelementptr inbounds i8, ptr %Short, i64 %quad + %tmp5 = load i16, ptr %tmp3, align 2 %tmp6 = trunc i16 %tmp5 to i8 - %tmp7 = getelementptr inbounds i8, i8* %Short, i64 %i.0 - store i8 %tmp6, i8* %tmp7, align 1 - %tmp9 = getelementptr inbounds i16, i16* %Float, i64 %quad - %tmp10 = bitcast i16* %tmp9 to float* - %tmp11 = load float, float* %tmp10, align 4 + %tmp7 = getelementptr inbounds i8, ptr %Short, i64 %i.0 + store i8 %tmp6, ptr %tmp7, align 1 + %tmp9 = getelementptr inbounds i16, ptr %Float, i64 %quad + %tmp11 = load float, ptr %tmp9, align 4 %tmp12 = fptosi float %tmp11 to i16 - %tmp13 = getelementptr inbounds i16, i16* %Float, i64 %i.0 - store i16 %tmp12, i16* %tmp13, align 1 - %tmp15 = getelementptr inbounds i8, i8* %Double, i64 %quad - %tmp16 = bitcast i8* %tmp15 to double* - %tmp17 = load double, double* %tmp16, align 8 + %tmp13 = getelementptr inbounds i16, ptr %Float, i64 %i.0 + store i16 %tmp12, ptr %tmp13, align 1 + %tmp15 = getelementptr inbounds i8, ptr %Double, i64 %quad + %tmp17 = load double, ptr %tmp15, align 8 %tmp18 = fptosi double %tmp17 to i8 - %tmp19 = getelementptr inbounds i8, i8* %Double, i64 %i.0 - store i8 %tmp18, i8* %tmp19, align 1 + %tmp19 = getelementptr inbounds i8, ptr %Double, i64 %i.0 + store i8 %tmp18, ptr %tmp19, align 1 br label %bb20 bb20: ; preds = %bb2 diff --git a/polly/test/ScopInfo/multiple-types-non-power-of-two-2.ll b/polly/test/ScopInfo/multiple-types-non-power-of-two-2.ll index cfdbbe5b6f9e..01f5923457b4 100644 --- a/polly/test/ScopInfo/multiple-types-non-power-of-two-2.ll +++ b/polly/test/ScopInfo/multiple-types-non-power-of-two-2.ll @@ -32,7 +32,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @multiple_types(i8* %A) { +define void @multiple_types(ptr %A) { bb: br label %bb1 @@ -43,18 +43,16 @@ bb1: ; preds = %bb20, %bb bb2: ; preds = %bb1 %load.i128.offset = mul i64 %i.0, 16 - %load.i128.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i128.offset - %load.i128.ptrcast = bitcast i8* %load.i128.ptr to i128* - %load.i128.val = load i128, i128* %load.i128.ptrcast + %load.i128.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i128.offset + %load.i128.val = load i128, ptr %load.i128.ptr %load.i192.offset = mul i64 %i.0, 24 - %load.i192.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i192.offset - %load.i192.ptrcast = bitcast i8* %load.i192.ptr to i192* - %load.i192.val = load i192, i192* %load.i192.ptrcast + %load.i192.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i192.offset + %load.i192.val = load i192, ptr %load.i192.ptr %load.i192.val.trunc = trunc i192 %load.i192.val to i128 %sum = add i128 %load.i128.val, %load.i192.val.trunc - store i128 %sum, i128* %load.i128.ptrcast + store i128 %sum, ptr %load.i128.ptr br label %bb20 bb20: ; preds = %bb2 diff --git a/polly/test/ScopInfo/multiple-types-non-power-of-two.ll b/polly/test/ScopInfo/multiple-types-non-power-of-two.ll index b48c12e2ed7b..142a5ac395b3 100644 --- a/polly/test/ScopInfo/multiple-types-non-power-of-two.ll +++ b/polly/test/ScopInfo/multiple-types-non-power-of-two.ll @@ -61,7 +61,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @multiple_types(i8* %A) { +define void @multiple_types(ptr %A) { bb: br label %bb1 @@ -72,69 +72,58 @@ bb1: ; preds = %bb20, %bb bb2: ; preds = %bb1 %load.i1.offset = mul i64 %i.0, 1 - %load.i1.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i1.offset - %load.i1.ptrcast = bitcast i8* %load.i1.ptr to i1* - %load.i1.val = load i1, i1* %load.i1.ptrcast + %load.i1.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i1.offset + %load.i1.val = load i1, ptr %load.i1.ptr %load.i1.val.trunc = zext i1 %load.i1.val to i8 %load.i16.offset = mul i64 %i.0, 2 - %load.i16.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i16.offset - %load.i16.ptrcast = bitcast i8* %load.i16.ptr to i16* - %load.i16.val = load i16, i16* %load.i16.ptrcast + %load.i16.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i16.offset + %load.i16.val = load i16, ptr %load.i16.ptr %load.i16.val.trunc = trunc i16 %load.i16.val to i8 %load.i24.offset = mul i64 %i.0, 4 - %load.i24.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i24.offset - %load.i24.ptrcast = bitcast i8* %load.i24.ptr to i24* - %load.i24.val = load i24, i24* %load.i24.ptrcast + %load.i24.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i24.offset + %load.i24.val = load i24, ptr %load.i24.ptr %load.i24.val.trunc = trunc i24 %load.i24.val to i8 %load.i32.offset = mul i64 %i.0, 4 - %load.i32.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i32.offset - %load.i32.ptrcast = bitcast i8* %load.i32.ptr to i32* - %load.i32.val = load i32, i32* %load.i32.ptrcast + %load.i32.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i32.offset + %load.i32.val = load i32, ptr %load.i32.ptr %load.i32.val.trunc = trunc i32 %load.i32.val to i8 %load.i40.offset = mul i64 %i.0, 8 - %load.i40.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i40.offset - %load.i40.ptrcast = bitcast i8* %load.i40.ptr to i40* - %load.i40.val = load i40, i40* %load.i40.ptrcast + %load.i40.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i40.offset + %load.i40.val = load i40, ptr %load.i40.ptr %load.i40.val.trunc = trunc i40 %load.i40.val to i8 %load.i48.offset = mul i64 %i.0, 8 - %load.i48.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i48.offset - %load.i48.ptrcast = bitcast i8* %load.i48.ptr to i48* - %load.i48.val = load i48, i48* %load.i48.ptrcast + %load.i48.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i48.offset + %load.i48.val = load i48, ptr %load.i48.ptr %load.i48.val.trunc = trunc i48 %load.i48.val to i8 %load.i56.offset = mul i64 %i.0, 8 - %load.i56.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i56.offset - %load.i56.ptrcast = bitcast i8* %load.i56.ptr to i56* - %load.i56.val = load i56, i56* %load.i56.ptrcast + %load.i56.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i56.offset + %load.i56.val = load i56, ptr %load.i56.ptr %load.i56.val.trunc = trunc i56 %load.i56.val to i8 %load.i64.offset = mul i64 %i.0, 8 - %load.i64.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i64.offset - %load.i64.ptrcast = bitcast i8* %load.i64.ptr to i64* - %load.i64.val = load i64, i64* %load.i64.ptrcast + %load.i64.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i64.offset + %load.i64.val = load i64, ptr %load.i64.ptr %load.i64.val.trunc = trunc i64 %load.i64.val to i8 %load.i120.offset = mul i64 %i.0, 16 - %load.i120.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i120.offset - %load.i120.ptrcast = bitcast i8* %load.i120.ptr to i120* - %load.i120.val = load i120, i120* %load.i120.ptrcast + %load.i120.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i120.offset + %load.i120.val = load i120, ptr %load.i120.ptr %load.i120.val.trunc = trunc i120 %load.i120.val to i8 %load.i192.offset = mul i64 %i.0, 24 - %load.i192.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i192.offset - %load.i192.ptrcast = bitcast i8* %load.i192.ptr to i192* - %load.i192.val = load i192, i192* %load.i192.ptrcast + %load.i192.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i192.offset + %load.i192.val = load i192, ptr %load.i192.ptr %load.i192.val.trunc = trunc i192 %load.i192.val to i8 %load.i248.offset = mul i64 %i.0, 32 - %load.i248.ptr = getelementptr inbounds i8, i8* %A, i64 %load.i248.offset - %load.i248.ptrcast = bitcast i8* %load.i248.ptr to i248* - %load.i248.val = load i248, i248* %load.i248.ptrcast + %load.i248.ptr = getelementptr inbounds i8, ptr %A, i64 %load.i248.offset + %load.i248.val = load i248, ptr %load.i248.ptr %load.i248.val.trunc = trunc i248 %load.i248.val to i8 %sum = add i8 %load.i1.val.trunc, %load.i16.val.trunc @@ -147,8 +136,8 @@ bb2: ; preds = %bb1 %sum6 = add i8 %sum5, %load.i120.val.trunc %sum7 = add i8 %sum6, %load.i192.val.trunc %sum8 = add i8 %sum7, %load.i248.val.trunc - %tmp7 = getelementptr inbounds i8, i8* %A, i64 %i.0 - store i8 %sum8, i8* %tmp7 + %tmp7 = getelementptr inbounds i8, ptr %A, i64 %i.0 + store i8 %sum8, ptr %tmp7 br label %bb20 bb20: ; preds = %bb2 diff --git a/polly/test/ScopInfo/multiple-types-two-dimensional-2.ll b/polly/test/ScopInfo/multiple-types-two-dimensional-2.ll index 11a5663fc276..1e2e53e85c25 100644 --- a/polly/test/ScopInfo/multiple-types-two-dimensional-2.ll +++ b/polly/test/ScopInfo/multiple-types-two-dimensional-2.ll @@ -16,7 +16,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %n, i64 %m, i8* %A) { +define void @foo(i64 %n, i64 %m, ptr %A) { bb: br label %bb1 @@ -36,16 +36,15 @@ bb3: ; preds = %bb17, %bb2 bb6: ; preds = %bb3 %tmp7 = mul nsw i64 %i.0, %m - %tmp8 = getelementptr inbounds i8, i8* %A, i64 %tmp7 - %tmp9 = getelementptr inbounds i8, i8* %tmp8, i64 %j.0 - %tmp10 = load i8, i8* %tmp9, align 1 + %tmp8 = getelementptr inbounds i8, ptr %A, i64 %tmp7 + %tmp9 = getelementptr inbounds i8, ptr %tmp8, i64 %j.0 + %tmp10 = load i8, ptr %tmp9, align 1 %tmp11 = sitofp i8 %tmp10 to float %tmp12 = shl nsw i64 %j.0, 2 %tmp13 = mul nsw i64 %i.0, %m - %tmp14 = getelementptr inbounds i8, i8* %A, i64 %tmp13 - %tmp15 = getelementptr inbounds i8, i8* %tmp14, i64 %tmp12 - %tmp16 = bitcast i8* %tmp15 to float* - store float %tmp11, float* %tmp16, align 4 + %tmp14 = getelementptr inbounds i8, ptr %A, i64 %tmp13 + %tmp15 = getelementptr inbounds i8, ptr %tmp14, i64 %tmp12 + store float %tmp11, ptr %tmp15, align 4 br label %bb17 bb17: ; preds = %bb6 diff --git a/polly/test/ScopInfo/multiple-types-two-dimensional.ll b/polly/test/ScopInfo/multiple-types-two-dimensional.ll index 3e17ba00749c..21dc96e6f95d 100644 --- a/polly/test/ScopInfo/multiple-types-two-dimensional.ll +++ b/polly/test/ScopInfo/multiple-types-two-dimensional.ll @@ -15,7 +15,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %n, i64 %m, i8* %A) { +define void @foo(i64 %n, i64 %m, ptr %A) { bb: br label %bb1 @@ -36,15 +36,14 @@ bb3: ; preds = %bb17, %bb2 bb6: ; preds = %bb3 %tmp7 = shl nsw i64 %j.0, 2 %tmp8 = mul nsw i64 %i.0, %m - %tmp9 = getelementptr inbounds i8, i8* %A, i64 %tmp8 - %tmp10 = getelementptr inbounds i8, i8* %tmp9, i64 %tmp7 - %tmp11 = bitcast i8* %tmp10 to float* - %tmp12 = load float, float* %tmp11, align 4 + %tmp9 = getelementptr inbounds i8, ptr %A, i64 %tmp8 + %tmp10 = getelementptr inbounds i8, ptr %tmp9, i64 %tmp7 + %tmp12 = load float, ptr %tmp10, align 4 %tmp13 = fptosi float %tmp12 to i8 %tmp14 = mul nsw i64 %i.0, %m - %tmp15 = getelementptr inbounds i8, i8* %A, i64 %tmp14 - %tmp16 = getelementptr inbounds i8, i8* %tmp15, i64 %j.0 - store i8 %tmp13, i8* %tmp16, align 1 + %tmp15 = getelementptr inbounds i8, ptr %A, i64 %tmp14 + %tmp16 = getelementptr inbounds i8, ptr %tmp15, i64 %j.0 + store i8 %tmp13, ptr %tmp16, align 1 br label %bb17 bb17: ; preds = %bb6 diff --git a/polly/test/ScopInfo/multiple-types.ll b/polly/test/ScopInfo/multiple-types.ll index 0df532326af4..16db191c522f 100644 --- a/polly/test/ScopInfo/multiple-types.ll +++ b/polly/test/ScopInfo/multiple-types.ll @@ -32,7 +32,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @multiple_types(i8* %Short, i8* %Float, i8* %Double) { +define void @multiple_types(ptr %Short, ptr %Float, ptr %Double) { bb: br label %bb1 @@ -43,26 +43,23 @@ bb1: ; preds = %bb20, %bb bb2: ; preds = %bb1 %tmp = shl nsw i64 %i.0, 1 - %tmp3 = getelementptr inbounds i8, i8* %Short, i64 %tmp - %tmp4 = bitcast i8* %tmp3 to i16* - %tmp5 = load i16, i16* %tmp4, align 2 + %tmp3 = getelementptr inbounds i8, ptr %Short, i64 %tmp + %tmp5 = load i16, ptr %tmp3, align 2 %tmp6 = trunc i16 %tmp5 to i8 - %tmp7 = getelementptr inbounds i8, i8* %Short, i64 %i.0 - store i8 %tmp6, i8* %tmp7, align 1 + %tmp7 = getelementptr inbounds i8, ptr %Short, i64 %i.0 + store i8 %tmp6, ptr %tmp7, align 1 %tmp8 = shl nsw i64 %i.0, 2 - %tmp9 = getelementptr inbounds i8, i8* %Float, i64 %tmp8 - %tmp10 = bitcast i8* %tmp9 to float* - %tmp11 = load float, float* %tmp10, align 4 + %tmp9 = getelementptr inbounds i8, ptr %Float, i64 %tmp8 + %tmp11 = load float, ptr %tmp9, align 4 %tmp12 = fptosi float %tmp11 to i8 - %tmp13 = getelementptr inbounds i8, i8* %Float, i64 %i.0 - store i8 %tmp12, i8* %tmp13, align 1 + %tmp13 = getelementptr inbounds i8, ptr %Float, i64 %i.0 + store i8 %tmp12, ptr %tmp13, align 1 %tmp14 = shl nsw i64 %i.0, 3 - %tmp15 = getelementptr inbounds i8, i8* %Double, i64 %tmp14 - %tmp16 = bitcast i8* %tmp15 to double* - %tmp17 = load double, double* %tmp16, align 8 + %tmp15 = getelementptr inbounds i8, ptr %Double, i64 %tmp14 + %tmp17 = load double, ptr %tmp15, align 8 %tmp18 = fptosi double %tmp17 to i8 - %tmp19 = getelementptr inbounds i8, i8* %Double, i64 %i.0 - store i8 %tmp18, i8* %tmp19, align 1 + %tmp19 = getelementptr inbounds i8, ptr %Double, i64 %i.0 + store i8 %tmp18, ptr %tmp19, align 1 br label %bb20 bb20: ; preds = %bb2 diff --git a/polly/test/ScopInfo/multiple_exiting_blocks.ll b/polly/test/ScopInfo/multiple_exiting_blocks.ll index 2551fea8ff77..f8e5d4106a16 100644 --- a/polly/test/ScopInfo/multiple_exiting_blocks.ll +++ b/polly/test/ScopInfo/multiple_exiting_blocks.ll @@ -21,7 +21,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N, i32 %P, i32 %Q) { +define void @f(ptr %A, i32 %N, i32 %P, i32 %Q) { entry: %tmp = sext i32 %N to i64 %tmp1 = sext i32 %Q to i64 @@ -41,10 +41,10 @@ if.then: ; preds = %for.body br label %for.end if.end: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp3 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp3 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp3, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 %cmp2 = icmp sgt i64 %indvars.iv, %tmp1 br i1 %cmp2, label %if.then.3, label %if.end.4 diff --git a/polly/test/ScopInfo/multiple_exiting_blocks_two_loop.ll b/polly/test/ScopInfo/multiple_exiting_blocks_two_loop.ll index f9ee557a5031..c695f3c913db 100644 --- a/polly/test/ScopInfo/multiple_exiting_blocks_two_loop.ll +++ b/polly/test/ScopInfo/multiple_exiting_blocks_two_loop.ll @@ -27,7 +27,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(i64 %n, float* %A) { +define void @foo(i64 %n, ptr %A) { entry: br label %for.cond @@ -59,10 +59,10 @@ if.then.6: ; preds = %if.end if.end.7: ; preds = %if.end %conv = sitofp i64 %i.0 to float - %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp = load float, ptr %arrayidx, align 4 %add = fadd float %tmp, %conv - store float %add, float* %arrayidx, align 4 + store float %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %if.end.7 diff --git a/polly/test/ScopInfo/multiple_latch_blocks.ll b/polly/test/ScopInfo/multiple_latch_blocks.ll index eb9e8640807c..d3949e7e2c3c 100644 --- a/polly/test/ScopInfo/multiple_latch_blocks.ll +++ b/polly/test/ScopInfo/multiple_latch_blocks.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N, i32 %P, i32 %Q) { +define void @f(ptr %A, i32 %N, i32 %P, i32 %Q) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -33,10 +33,10 @@ if.then: ; preds = %for.body br label %for.cond if.end: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp2, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %if.end, %if.then diff --git a/polly/test/ScopInfo/nested-loops.ll b/polly/test/ScopInfo/nested-loops.ll index 42032d985c39..ed814f826829 100644 --- a/polly/test/ScopInfo/nested-loops.ll +++ b/polly/test/ScopInfo/nested-loops.ll @@ -2,7 +2,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* nocapture %a) nounwind { +define void @f(ptr nocapture %a) nounwind { entry: br label %for.i @@ -19,8 +19,8 @@ for.j: br i1 %exitcond.j, label %body, label %for.i body: - %scevgep = getelementptr i64, i64* %a, i64 %j - store i64 %j, i64* %scevgep + %scevgep = getelementptr i64, ptr %a, i64 %j + store i64 %j, ptr %scevgep br label %for.j return: diff --git a/polly/test/ScopInfo/no-scalar-deps-in-non-affine-subregion.ll b/polly/test/ScopInfo/no-scalar-deps-in-non-affine-subregion.ll index e3a138861a76..7c55e242641c 100644 --- a/polly/test/ScopInfo/no-scalar-deps-in-non-affine-subregion.ll +++ b/polly/test/ScopInfo/no-scalar-deps-in-non-affine-subregion.ll @@ -23,7 +23,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { bb: br label %bb1 @@ -33,8 +33,8 @@ bb1: ; preds = %bb12, %bb br i1 %exitcond, label %bb2, label %bb13 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp3 = load i32, i32* %tmp, align 4 + %tmp = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp3 = load i32, ptr %tmp, align 4 %tmp4 = icmp eq i32 %tmp3, 0 br i1 %tmp4, label %bb11, label %bb5 @@ -50,8 +50,8 @@ bb8: ; preds = %bb5 bb9: ; preds = %bb8, %bb7 %x.0 = phi i32 [ 1, %bb7 ], [ 2, %bb8 ] - %tmp10 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %x.0, i32* %tmp10, align 4 + %tmp10 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %x.0, ptr %tmp10, align 4 br label %bb11 bb11: ; preds = %bb2, %bb9 diff --git a/polly/test/ScopInfo/non-affine-region-phi.ll b/polly/test/ScopInfo/non-affine-region-phi.ll index bc6c0706b61e..f99782b9a0ff 100644 --- a/polly/test/ScopInfo/non-affine-region-phi.ll +++ b/polly/test/ScopInfo/non-affine-region-phi.ll @@ -30,7 +30,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { bb: br label %bb1 @@ -40,8 +40,8 @@ bb1: ; preds = %bb14, %bb br i1 %exitcond, label %bb2, label %bb15 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp3 = load i32, i32* %tmp, align 4 + %tmp = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp3 = load i32, ptr %tmp, align 4 %tmp4 = icmp eq i32 %tmp3, 0 br i1 %tmp4, label %bb13, label %bb5 @@ -50,15 +50,15 @@ bb5: ; preds = %bb2 br i1 %tmp6, label %bb7, label %bb11 bb7: ; preds = %bb5 - %tmp8 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp9 = load i32, i32* %tmp8, align 4 + %tmp8 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp9 = load i32, ptr %tmp8, align 4 %tmp10 = add nsw i32 %tmp9, 1 br label %bb11 bb11: ; preds = %bb7, %bb5 %x.0 = phi i32 [ %tmp10, %bb7 ], [ 0, %bb5 ] - %tmp12 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %x.0, i32* %tmp12, align 4 + %tmp12 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %x.0, ptr %tmp12, align 4 br label %bb13 bb13: ; preds = %bb2, %bb11 diff --git a/polly/test/ScopInfo/non-affine-region-with-loop-2.ll b/polly/test/ScopInfo/non-affine-region-with-loop-2.ll index 89b5ce256b4b..b673fda5ec3c 100644 --- a/polly/test/ScopInfo/non-affine-region-with-loop-2.ll +++ b/polly/test/ScopInfo/non-affine-region-with-loop-2.ll @@ -11,7 +11,7 @@ ; CHECK: Schedule := ; CHECK: [indvar] -> { Stmt_loop2__TO__loop[] -> [1, 0] : indvar >= 101 or indvar <= 99 }; ; -define void @foo(i64* %A, i64 %p) { +define void @foo(ptr %A, i64 %p) { entry: br label %loop @@ -38,7 +38,7 @@ loop2: %indvar.2 = phi i64 [0, %loop3], [%indvar.next.2, %loop2], [0, %cond] %indvar.next.2 = add i64 %indvar.2, 1 %prod = mul i64 %indvar.2, %indvar.2 - store i64 %indvar, i64* %A + store i64 %indvar, ptr %A %cmp.2 = icmp eq i64 %prod, 100 br i1 %cmp.2, label %loop2, label %next2 diff --git a/polly/test/ScopInfo/non-affine-region-with-loop.ll b/polly/test/ScopInfo/non-affine-region-with-loop.ll index 88bcb11207fe..32dde8b4a682 100644 --- a/polly/test/ScopInfo/non-affine-region-with-loop.ll +++ b/polly/test/ScopInfo/non-affine-region-with-loop.ll @@ -4,7 +4,7 @@ ; CHECK: Domain := ; CHECK-NEXT: { Stmt_loop2__TO__loop[] }; ; -define void @foo(i64* %A, i64 %p) { +define void @foo(ptr %A, i64 %p) { entry: br label %loop @@ -25,7 +25,7 @@ loop2: %indvar.2 = phi i64 [0, %next], [%indvar.next.2, %loop2], [0, %cond] %indvar.next.2 = add i64 %indvar.2, 1 %prod = mul i64 %indvar.2, %indvar.2 - store i64 %indvar, i64* %A + store i64 %indvar, ptr %A %cmp.2 = icmp eq i64 %prod, 100 br i1 %cmp.2, label %loop2, label %next2 diff --git a/polly/test/ScopInfo/non-precise-inv-load-1.ll b/polly/test/ScopInfo/non-precise-inv-load-1.ll index 415a8442e69b..5394206dd547 100644 --- a/polly/test/ScopInfo/non-precise-inv-load-1.ll +++ b/polly/test/ScopInfo/non-precise-inv-load-1.ll @@ -24,7 +24,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @GI = common global [256 x i32] zeroinitializer, align 16 -define void @f(i32* %A, i8 zeroext %c) { +define void @f(ptr %A, i8 zeroext %c) { entry: br label %for.cond @@ -36,12 +36,12 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %add = add i8 %c, 1 %idxprom = sext i8 %add to i64 - %arrayidx = getelementptr inbounds i32, i32* getelementptr inbounds ([256 x i32], [256 x i32]* @GI, i64 0, i64 128), i64 %idxprom - %tmp = load i32, i32* %arrayidx, align 4 - %arrayidx3 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx3, align 4 + %arrayidx = getelementptr inbounds i32, ptr getelementptr inbounds ([256 x i32], ptr @GI, i64 0, i64 128), i64 %idxprom + %tmp = load i32, ptr %arrayidx, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx3, align 4 %add4 = add nsw i32 %tmp1, %tmp - store i32 %add4, i32* %arrayidx3, align 4 + store i32 %add4, ptr %arrayidx3, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/non-precise-inv-load-2.ll b/polly/test/ScopInfo/non-precise-inv-load-2.ll index 56ca9d748046..5c0c56513a08 100644 --- a/polly/test/ScopInfo/non-precise-inv-load-2.ll +++ b/polly/test/ScopInfo/non-precise-inv-load-2.ll @@ -20,7 +20,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %I, i8 zeroext %c) { +define void @f(ptr %A, ptr %I, i8 zeroext %c) { entry: br label %for.cond @@ -32,12 +32,12 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %sub = add i8 %c, -1 %conv = zext i8 %sub to i64 - %arrayidx = getelementptr inbounds i32, i32* %I, i64 %conv - %tmp = load i32, i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx2, align 4 + %arrayidx = getelementptr inbounds i32, ptr %I, i64 %conv + %tmp = load i32, ptr %arrayidx, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx2, align 4 %add = add nsw i32 %tmp1, %tmp - store i32 %add, i32* %arrayidx2, align 4 + store i32 %add, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/non-precise-inv-load-3.ll b/polly/test/ScopInfo/non-precise-inv-load-3.ll index cd437bdefb0e..09d09319656b 100644 --- a/polly/test/ScopInfo/non-precise-inv-load-3.ll +++ b/polly/test/ScopInfo/non-precise-inv-load-3.ll @@ -14,7 +14,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i8 zeroext %c, i32* %I) { +define void @f(ptr %A, i8 zeroext %c, ptr %I) { entry: br label %for.cond @@ -29,11 +29,11 @@ for.body: ; preds = %for.cond br i1 %cmp3, label %if.then, label %if.end if.then: ; preds = %for.body - %tmp = load i32, i32* %I, align 4 - %arrayidx5 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx5, align 4 + %tmp = load i32, ptr %I, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx5, align 4 %add6 = add nsw i32 %tmp1, %tmp - store i32 %add6, i32* %arrayidx5, align 4 + store i32 %add6, ptr %arrayidx5, align 4 br label %if.end if.end: ; preds = %if.then, %for.body diff --git a/polly/test/ScopInfo/non-precise-inv-load-4.ll b/polly/test/ScopInfo/non-precise-inv-load-4.ll index 333dd4d6894a..da5f656576d1 100644 --- a/polly/test/ScopInfo/non-precise-inv-load-4.ll +++ b/polly/test/ScopInfo/non-precise-inv-load-4.ll @@ -20,7 +20,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @I = common global [1 x i32] zeroinitializer, align 4 -define void @f(i32* %A, i8 zeroext %c) { +define void @f(ptr %A, i8 zeroext %c) { entry: br label %for.cond @@ -35,11 +35,11 @@ for.body: ; preds = %for.cond br i1 %cmp3, label %if.then, label %if.end if.then: ; preds = %for.body - %tmp = load i32, i32* getelementptr inbounds ([1 x i32], [1 x i32]* @I, i64 0, i64 0), align 4 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx, align 4 + %tmp = load i32, ptr @I, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx, align 4 %add5 = add nsw i32 %tmp1, %tmp - store i32 %add5, i32* %arrayidx, align 4 + store i32 %add5, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %if.then, %for.body diff --git a/polly/test/ScopInfo/non-precise-inv-load-5.ll b/polly/test/ScopInfo/non-precise-inv-load-5.ll index 765e3992763f..bff5f59a3302 100644 --- a/polly/test/ScopInfo/non-precise-inv-load-5.ll +++ b/polly/test/ScopInfo/non-precise-inv-load-5.ll @@ -28,7 +28,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @I = common global [1024 x i32] zeroinitializer, align 16 -define void @f(i32* %A, i8 zeroext %c) { +define void @f(ptr %A, i8 zeroext %c) { entry: br label %for.cond @@ -40,19 +40,19 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %add = add i8 %c, 1 %cmp3 = icmp eq i8 %add, 128 - %arrayidx6 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv + %arrayidx6 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv br i1 %cmp3, label %if.then, label %if.else if.then: ; preds = %for.body - %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @I, i64 0, i8 %c - %tmp = load i32, i32* %arrayidx, align 4 - %tmp1 = load i32, i32* %arrayidx6, align 4 + %arrayidx = getelementptr inbounds [1024 x i32], ptr @I, i64 0, i8 %c + %tmp = load i32, ptr %arrayidx, align 4 + %tmp1 = load i32, ptr %arrayidx6, align 4 %add7 = add nsw i32 %tmp1, %tmp - store i32 %add7, i32* %arrayidx6, align 4 + store i32 %add7, ptr %arrayidx6, align 4 br label %for.inc if.else: ; preds = %if.then, %for.body - store i32 0, i32* %arrayidx6, align 4 + store i32 0, ptr %arrayidx6, align 4 br label %for.inc for.inc: ; preds = %if.else, if.then diff --git a/polly/test/ScopInfo/non-precise-inv-load-6.ll b/polly/test/ScopInfo/non-precise-inv-load-6.ll index f3d307306464..03540a8ead96 100644 --- a/polly/test/ScopInfo/non-precise-inv-load-6.ll +++ b/polly/test/ScopInfo/non-precise-inv-load-6.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %I, i32* %A, i64 %c) { +define void @f(ptr %I, ptr %A, i64 %c) { entry: br label %for.cond @@ -25,11 +25,11 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %tmp = load i32, i32* %I, align 4 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx, align 4 + %tmp = load i32, ptr %I, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx, align 4 %add = add i32 %tmp1, %tmp - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/non-pure-function-call.ll b/polly/test/ScopInfo/non-pure-function-call.ll index 35bd7b19daf2..4ffb8d28865d 100644 --- a/polly/test/ScopInfo/non-pure-function-call.ll +++ b/polly/test/ScopInfo/non-pure-function-call.ll @@ -16,7 +16,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -35,10 +35,10 @@ if.then: ; preds = %for.body br label %if.end if.end: ; preds = %if.then, %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp1, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %if.end diff --git a/polly/test/ScopInfo/non-pure-function-calls-causes-dead-blocks.ll b/polly/test/ScopInfo/non-pure-function-calls-causes-dead-blocks.ll index 7d69dc18db09..27998b50b74f 100644 --- a/polly/test/ScopInfo/non-pure-function-calls-causes-dead-blocks.ll +++ b/polly/test/ScopInfo/non-pure-function-calls-causes-dead-blocks.ll @@ -46,7 +46,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @kernel(i32* %A, i32* %B, i32 %timeit, i32 %N) { +define void @kernel(ptr %A, ptr %B, i32 %timeit, i32 %N) { entry: br label %entry.split @@ -60,8 +60,7 @@ if.then: ; preds = %entry ; Dead block if we assume if.then not to be executed because of the call if.then.split: ; preds = %if.then - %A0 = getelementptr inbounds i32, i32* %A, i64 0 - store i32 0, i32* %A0, align 4 + store i32 0, ptr %A, align 4 br label %for.cond.pre for.cond.pre: @@ -74,12 +73,12 @@ for.cond: ; preds = %for.inc, %if.end br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %B, i64 %indvars.iv1 - %tmp3 = load i32, i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv1 - %tmp4 = load i32, i32* %arrayidx2, align 4 + %arrayidx = getelementptr inbounds i32, ptr %B, i64 %indvars.iv1 + %tmp3 = load i32, ptr %arrayidx, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv1 + %tmp4 = load i32, ptr %arrayidx2, align 4 %add = add nsw i32 %tmp4, %tmp3 - store i32 %add, i32* %arrayidx2, align 4 + store i32 %add, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -109,12 +108,12 @@ for.cond.7: ; preds = %for.inc.15, %if.end br i1 %cmp8, label %for.body.9, label %for.end.17 for.body.9: ; preds = %for.cond.7 - %arrayidx11 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv - %tmp6 = load i32, i32* %arrayidx11, align 4 - %arrayidx13 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp7 = load i32, i32* %arrayidx13, align 4 + %arrayidx11 = getelementptr inbounds i32, ptr %B, i64 %indvars.iv + %tmp6 = load i32, ptr %arrayidx11, align 4 + %arrayidx13 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp7 = load i32, ptr %arrayidx13, align 4 %add14 = add nsw i32 %tmp7, %tmp6 - store i32 %add14, i32* %arrayidx13, align 4 + store i32 %add14, ptr %arrayidx13, align 4 br label %for.inc.15 for.inc.15: ; preds = %for.body.9 diff --git a/polly/test/ScopInfo/non-pure-function-calls.ll b/polly/test/ScopInfo/non-pure-function-calls.ll index 25a32c276ee2..3ecf75853773 100644 --- a/polly/test/ScopInfo/non-pure-function-calls.ll +++ b/polly/test/ScopInfo/non-pure-function-calls.ll @@ -38,7 +38,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @kernel(i32* %A, i32* %B, i32 %timeit, i32 %N) { +define void @kernel(ptr %A, ptr %B, i32 %timeit, i32 %N) { entry: %tobool = icmp eq i32 %timeit, 0 br i1 %tobool, label %if.end, label %if.then @@ -57,12 +57,12 @@ for.cond: ; preds = %for.inc, %if.end br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %B, i64 %indvars.iv1 - %tmp3 = load i32, i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv1 - %tmp4 = load i32, i32* %arrayidx2, align 4 + %arrayidx = getelementptr inbounds i32, ptr %B, i64 %indvars.iv1 + %tmp3 = load i32, ptr %arrayidx, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv1 + %tmp4 = load i32, ptr %arrayidx2, align 4 %add = add nsw i32 %tmp4, %tmp3 - store i32 %add, i32* %arrayidx2, align 4 + store i32 %add, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -88,12 +88,12 @@ for.cond.7: ; preds = %for.inc.15, %if.end br i1 %cmp8, label %for.body.9, label %for.end.17 for.body.9: ; preds = %for.cond.7 - %arrayidx11 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv - %tmp6 = load i32, i32* %arrayidx11, align 4 - %arrayidx13 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp7 = load i32, i32* %arrayidx13, align 4 + %arrayidx11 = getelementptr inbounds i32, ptr %B, i64 %indvars.iv + %tmp6 = load i32, ptr %arrayidx11, align 4 + %arrayidx13 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp7 = load i32, ptr %arrayidx13, align 4 %add14 = add nsw i32 %tmp7, %tmp6 - store i32 %add14, i32* %arrayidx13, align 4 + store i32 %add14, ptr %arrayidx13, align 4 br label %for.inc.15 for.inc.15: ; preds = %for.body.9 diff --git a/polly/test/ScopInfo/non_affine_access.ll b/polly/test/ScopInfo/non_affine_access.ll index fd9393301324..a83c9484ad52 100644 --- a/polly/test/ScopInfo/non_affine_access.ll +++ b/polly/test/ScopInfo/non_affine_access.ll @@ -7,7 +7,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 ; A[i * i] = i; ; -define void @foo(i64 *%A) nounwind uwtable ssp { +define void @foo(ptr %A) nounwind uwtable ssp { entry: br label %entry.split @@ -17,8 +17,8 @@ entry.split: ; preds = %entry for.body: ; preds = %entry.split, %for.body %indvar = phi i64 [ 0, %entry.split ], [ %indvar.next, %for.body ] %mul = mul nsw i64 %indvar, %indvar - %arrayidx = getelementptr inbounds i64, i64* %A, i64 %mul - store i64 %indvar, i64* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i64, ptr %A, i64 %mul + store i64 %indvar, ptr %arrayidx, align 4 %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp ne i64 %indvar.next, 1024 br i1 %exitcond, label %for.body, label %for.end diff --git a/polly/test/ScopInfo/non_affine_region_1.ll b/polly/test/ScopInfo/non_affine_region_1.ll index d3b6c484d262..7c4312599cf0 100644 --- a/polly/test/ScopInfo/non_affine_region_1.ll +++ b/polly/test/ScopInfo/non_affine_region_1.ll @@ -55,7 +55,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %b) { +define void @f(ptr %A, i32 %b) { bb: br label %bb1 @@ -85,15 +85,15 @@ bb8: ; preds = %bb4 bb10: ; preds = %bb9, %bb3 %x.1 = phi i32 [ 0, %bb3 ], [ 3, %bb7 ], [ %b, %bb8 ] %tmp11 = sext i32 %x.1 to i64 - %tmp12 = getelementptr inbounds i32, i32* %A, i64 %tmp11 - %tmp13 = load i32, i32* %tmp12, align 4 + %tmp12 = getelementptr inbounds i32, ptr %A, i64 %tmp11 + %tmp13 = load i32, ptr %tmp12, align 4 %tmp14 = icmp eq i32 %tmp13, 0 br i1 %tmp14, label %bb18, label %bb15 bb15: ; preds = %bb10 %tmp16 = sext i32 %x.1 to i64 - %tmp17 = getelementptr inbounds i32, i32* %A, i64 %tmp16 - store i32 0, i32* %tmp17, align 4 + %tmp17 = getelementptr inbounds i32, ptr %A, i64 %tmp16 + store i32 0, ptr %tmp17, align 4 br label %bb18 bb18: ; preds = %bb10, %bb15 diff --git a/polly/test/ScopInfo/non_affine_region_2.ll b/polly/test/ScopInfo/non_affine_region_2.ll index a13845526227..0bc467c92bcb 100644 --- a/polly/test/ScopInfo/non_affine_region_2.ll +++ b/polly/test/ScopInfo/non_affine_region_2.ll @@ -44,7 +44,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %b) { +define void @f(ptr %A, i32 %b) { bb: %tmp = sext i32 %b to i64 %tmp1 = sext i32 %b to i64 @@ -56,8 +56,8 @@ bb2: ; preds = %bb20, %bb br i1 %exitcond, label %bb3, label %bb21 bb3: ; preds = %bb2 - %tmp4 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp5 = load i32, i32* %tmp4, align 4 + %tmp4 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp5 = load i32, ptr %tmp4, align 4 %tmp6 = icmp eq i32 %tmp5, 0 br i1 %tmp6, label %bb18, label %bb7 @@ -90,8 +90,8 @@ bb17: ; preds = %bb16, %bb9 bb18: ; preds = %bb3, %bb17 %x.2 = phi i32 [ %x.1, %bb17 ], [ 0, %bb3 ] - %tmp19 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %x.2, i32* %tmp19, align 4 + %tmp19 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %x.2, ptr %tmp19, align 4 br label %bb20 bb20: ; preds = %bb18 diff --git a/polly/test/ScopInfo/non_affine_region_3.ll b/polly/test/ScopInfo/non_affine_region_3.ll index e960028b8afa..6d5f94df6110 100644 --- a/polly/test/ScopInfo/non_affine_region_3.ll +++ b/polly/test/ScopInfo/non_affine_region_3.ll @@ -45,7 +45,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %b) { +define void @f(ptr %A, i32 %b) { bb: %tmp = sext i32 %b to i64 %tmp1 = sext i32 %b to i64 @@ -57,8 +57,8 @@ bb2: ; preds = %bb20, %bb br i1 %exitcond, label %bb3, label %bb21 bb3: ; preds = %bb2 - %tmp4 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp5 = load i32, i32* %tmp4, align 4 + %tmp4 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp5 = load i32, ptr %tmp4, align 4 %tmp6 = icmp eq i32 %tmp5, 0 br i1 %tmp6, label %bb18, label %bb7 @@ -83,8 +83,8 @@ bb15: ; preds = %bb10 bb18: ; preds = %bb3, %bb13, %bb15, %bb9 %x.2 = phi i32 [ 0, %bb9 ], [ %tmp14, %bb13 ], [ %b, %bb15 ], [ 0, %bb3 ] - %tmp19 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %x.2, i32* %tmp19, align 4 + %tmp19 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %x.2, ptr %tmp19, align 4 br label %bb20 bb20: ; preds = %bb18 diff --git a/polly/test/ScopInfo/non_affine_region_4.ll b/polly/test/ScopInfo/non_affine_region_4.ll index fa1e5d494593..f37e0ecb89d1 100644 --- a/polly/test/ScopInfo/non_affine_region_4.ll +++ b/polly/test/ScopInfo/non_affine_region_4.ll @@ -53,7 +53,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %b) { +define void @f(ptr %A, i32 %b) { bb: br label %bb1 @@ -63,8 +63,8 @@ bb1: ; preds = %bb10, %bb br i1 %exitcond, label %bb2, label %bb11 bb2: ; preds = %bb1 - %tmp = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %x = load i32, i32* %tmp, align 4 + %tmp = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %x = load i32, ptr %tmp, align 4 %tmp4 = add nsw i32 %x, 1 %tmp5 = icmp eq i32 %tmp4, 0 br i1 %tmp5, label %bb7, label %bb6 @@ -76,8 +76,8 @@ bb7: ; preds = %bb2, %bb6 %y = phi i32 [ 1, %bb6 ], [ 0, %bb2 ] %tmp4copy = add nsw i32 %x, 1 %tmp8 = add nsw i32 %tmp4copy, %y - %tmp9 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp8, i32* %tmp9, align 4 + %tmp9 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp8, ptr %tmp9, align 4 br label %bb10 bb10: ; preds = %bb7 diff --git a/polly/test/ScopInfo/nonaffine-buildMemoryAccess.ll b/polly/test/ScopInfo/nonaffine-buildMemoryAccess.ll index 323c7883ac42..445dd164898b 100644 --- a/polly/test/ScopInfo/nonaffine-buildMemoryAccess.ll +++ b/polly/test/ScopInfo/nonaffine-buildMemoryAccess.ll @@ -3,7 +3,7 @@ ; CHECK: Domain := ; CHECK-NEXT: { Stmt_while_cond_i__TO__while_end_i[] }; ; -define i32 @func(i32 %param0, i32 %param1, i64* %param2) #3 { +define i32 @func(i32 %param0, i32 %param1, ptr %param2) #3 { entry: %var0 = alloca i32 @@ -24,22 +24,22 @@ if.end.i1.i: ; preds = %while.cond.i exit1.i: ; preds = %if.end.i1.i %var7 = srem i32 %var3, 64 %var8 = sext i32 %var5 to i64 - %var9 = getelementptr inbounds i64, i64* %param2, i64 %var8 - %var10 = load i64, i64* %var9, align 8 + %var9 = getelementptr inbounds i64, ptr %param2, i64 %var8 + %var10 = load i64, ptr %var9, align 8 %var11 = zext i32 %var7 to i64 %var12 = shl i64 1, %var11 %var13 = and i64 %var10, %var12 %var14 = icmp eq i64 %var13, 0 - store i32 %var2, i32* %var1 - store i32 %var3, i32* %var0 + store i32 %var2, ptr %var1 + store i32 %var3, ptr %var0 br i1 %var14, label %while.cond.i.backedge, label %while.end.i while.cond.i.backedge: ; preds = %exit1.i, %while.cond.i, %if.end.i1.i br label %while.cond.i while.end.i: - %var15 = load i32, i32* %var0 - %var16 = load i32, i32* %var1 + %var15 = load i32, ptr %var0 + %var16 = load i32, ptr %var1 %var17 = add i32 %var15, %var16 ret i32 %var17 } diff --git a/polly/test/ScopInfo/not-a-reduction.ll b/polly/test/ScopInfo/not-a-reduction.ll index da8cacff8eca..87909290fd71 100644 --- a/polly/test/ScopInfo/not-a-reduction.ll +++ b/polly/test/ScopInfo/not-a-reduction.ll @@ -26,17 +26,17 @@ bb: bb3: ; preds = %bb7, %bb %indvar = phi i64 [ %indvar.next, %bb7 ], [ 0, %bb ] - %scevgep = getelementptr [4 x float], [4 x float]* @A, i64 0, i64 %indvar - %scevgep1 = getelementptr [4 x float], [4 x float]* @C, i64 0, i64 %indvar - %scevgep2 = getelementptr [4 x float], [4 x float]* @B, i64 0, i64 %indvar + %scevgep = getelementptr [4 x float], ptr @A, i64 0, i64 %indvar + %scevgep1 = getelementptr [4 x float], ptr @C, i64 0, i64 %indvar + %scevgep2 = getelementptr [4 x float], ptr @B, i64 0, i64 %indvar %exitcond = icmp ne i64 %indvar, 4 br i1 %exitcond, label %bb4, label %bb8 bb4: ; preds = %bb3 - %tmp = load float, float* %scevgep2, align 4 - %tmp5 = load float, float* %scevgep1, align 4 + %tmp = load float, ptr %scevgep2, align 4 + %tmp5 = load float, ptr %scevgep1, align 4 %tmp6 = fmul float %tmp, %tmp5 - store float %tmp6, float* %scevgep, align 4 + store float %tmp6, ptr %scevgep, align 4 br label %bb7 bb7: ; preds = %bb4 diff --git a/polly/test/ScopInfo/opaque-struct.ll b/polly/test/ScopInfo/opaque-struct.ll index 3808bba4a617..19fdd9bf9179 100644 --- a/polly/test/ScopInfo/opaque-struct.ll +++ b/polly/test/ScopInfo/opaque-struct.ll @@ -8,13 +8,12 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" %struct.stmt = type opaque ; Function Attrs: nounwind uwtable -define void @columnMem(%struct.stmt* %pStmt) #0 { +define void @columnMem(ptr %pStmt) #0 { entry: br label %if.else if.else: ; preds = %entry - %db = bitcast %struct.stmt* %pStmt to %struct.s3** - %0 = load %struct.s3*, %struct.s3** %db, align 8 + %0 = load ptr, ptr %pStmt, align 8 br i1 false, label %if.end9, label %if.then7 if.then7: ; preds = %if.else diff --git a/polly/test/ScopInfo/out-of-scop-use-in-region-entry-phi-node.ll b/polly/test/ScopInfo/out-of-scop-use-in-region-entry-phi-node.ll index edbe4a3cd10b..e17164e89372 100644 --- a/polly/test/ScopInfo/out-of-scop-use-in-region-entry-phi-node.ll +++ b/polly/test/ScopInfo/out-of-scop-use-in-region-entry-phi-node.ll @@ -10,13 +10,13 @@ bb: br label %bb2 bb2: ; preds = %bb - %tmp = load i64*, i64** undef + %tmp = load ptr, ptr undef br label %bb3 bb3: ; preds = %bb9, %bb2 - %tmp4 = phi i64* [ %tmp, %bb2 ], [ %tmp5, %bb9 ] - %tmp5 = getelementptr inbounds i64, i64* %tmp4, i64 1 - %tmp6 = load i64, i64* %tmp5 + %tmp4 = phi ptr [ %tmp, %bb2 ], [ %tmp5, %bb9 ] + %tmp5 = getelementptr inbounds i64, ptr %tmp4, i64 1 + %tmp6 = load i64, ptr %tmp5 %tmp7 = and i64 %tmp6, 4160749568 br i1 false, label %bb8, label %bb9 diff --git a/polly/test/ScopInfo/parameter-constant-division.ll b/polly/test/ScopInfo/parameter-constant-division.ll index f105f526b6db..cd6b9e3526aa 100644 --- a/polly/test/ScopInfo/parameter-constant-division.ll +++ b/polly/test/ScopInfo/parameter-constant-division.ll @@ -29,21 +29,21 @@ ; ModuleID = 'bugpoint-reduced-simplified.bc' target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.frame_store = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, %struct.picture*, %struct.picture*, %struct.picture* } -%struct.picture = type { i32, i32, i32, i32, i32, i32, [6 x [33 x i64]], [6 x [33 x i64]], [6 x [33 x i64]], [6 x [33 x i64]], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i16**, i16*, i16*, i16**, i16**, i16***, i8*, i16***, i64***, i64***, i16****, i8**, i8**, %struct.picture*, %struct.picture*, %struct.picture*, i32, i32, i32, i32, i32, i32, i32 } +%struct.frame_store = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr, ptr } +%struct.picture = type { i32, i32, i32, i32, i32, i32, [6 x [33 x i64]], [6 x [33 x i64]], [6 x [33 x i64]], [6 x [33 x i64]], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32 } ; Function Attrs: nounwind uwtable -define void @dpb_split_field(%struct.frame_store* %fs) #0 { +define void @dpb_split_field(ptr %fs) #0 { entry: - %frame = getelementptr inbounds %struct.frame_store, %struct.frame_store* %fs, i64 0, i32 10 + %frame = getelementptr inbounds %struct.frame_store, ptr %fs, i64 0, i32 10 br label %for.cond538.preheader.lr.ph for.cond538.preheader.lr.ph: ; preds = %entry - %bottom_field578 = getelementptr inbounds %struct.frame_store, %struct.frame_store* %fs, i64 0, i32 12 + %bottom_field578 = getelementptr inbounds %struct.frame_store, ptr %fs, i64 0, i32 12 br label %for.cond538.preheader for.cond538.preheader: ; preds = %for.inc912, %for.cond538.preheader.lr.ph - %tmp0 = phi %struct.picture* [ undef, %for.cond538.preheader.lr.ph ], [ %tmp11, %for.inc912 ] + %tmp0 = phi ptr [ undef, %for.cond538.preheader.lr.ph ], [ %tmp11, %for.inc912 ] br i1 undef, label %land.lhs.true563, label %for.inc912 land.lhs.true563: ; preds = %for.cond538.preheader @@ -55,38 +55,37 @@ land.lhs.true563: ; preds = %for.cond538.prehead %tmp10a = shl i32 %tmp9a, 1 %add559 = add i32 %tmp10a, %rem558 %idxprom564 = sext i32 %add559 to i64 - %mb_field566 = getelementptr inbounds %struct.picture, %struct.picture* %tmp0, i64 0, i32 31 - %tmp1 = load i8*, i8** %mb_field566, align 8 - %arrayidx567 = getelementptr inbounds i8, i8* %tmp1, i64 %idxprom564 - %tmp2 = load i8, i8* %arrayidx567, align 1 - store i8 0, i8* %arrayidx567 + %mb_field566 = getelementptr inbounds %struct.picture, ptr %tmp0, i64 0, i32 31 + %tmp1 = load ptr, ptr %mb_field566, align 8 + %arrayidx567 = getelementptr inbounds i8, ptr %tmp1, i64 %idxprom564 + %tmp2 = load i8, ptr %arrayidx567, align 1 + store i8 0, ptr %arrayidx567 br i1 false, label %if.end908, label %if.then570 if.then570: ; preds = %land.lhs.true563 - %tmp3 = load %struct.picture*, %struct.picture** %frame, align 8 - %mv = getelementptr inbounds %struct.picture, %struct.picture* %tmp3, i64 0, i32 35 - %tmp4 = load i16****, i16***** %mv, align 8 - %tmp5 = load %struct.picture*, %struct.picture** %bottom_field578, align 8 - %mv612 = getelementptr inbounds %struct.picture, %struct.picture* %tmp5, i64 0, i32 35 - %tmp6 = load i16****, i16***** %mv612, align 8 - %arrayidx647 = getelementptr inbounds i16***, i16**** %tmp4, i64 1 - %ref_id726 = getelementptr inbounds %struct.picture, %struct.picture* %tmp3, i64 0, i32 34 - %tmp7 = load i64***, i64**** %ref_id726, align 8 - %arrayidx746 = getelementptr inbounds i64**, i64*** %tmp7, i64 5 - %tmp8 = load %struct.picture*, %struct.picture** %frame, align 8 - %mv783 = getelementptr inbounds %struct.picture, %struct.picture* %tmp8, i64 0, i32 35 - %tmp9 = load i16****, i16***** %mv783, align 8 - %arrayidx804 = getelementptr inbounds i16***, i16**** %tmp9, i64 1 - %tmp10 = load i16***, i16**** %arrayidx804, align 8 - %arrayidx805 = getelementptr inbounds i16**, i16*** %tmp10, i64 0 - store i16*** %tmp10, i16**** %arrayidx804 + %tmp3 = load ptr, ptr %frame, align 8 + %mv = getelementptr inbounds %struct.picture, ptr %tmp3, i64 0, i32 35 + %tmp4 = load ptr, ptr %mv, align 8 + %tmp5 = load ptr, ptr %bottom_field578, align 8 + %mv612 = getelementptr inbounds %struct.picture, ptr %tmp5, i64 0, i32 35 + %tmp6 = load ptr, ptr %mv612, align 8 + %arrayidx647 = getelementptr inbounds ptr, ptr %tmp4, i64 1 + %ref_id726 = getelementptr inbounds %struct.picture, ptr %tmp3, i64 0, i32 34 + %tmp7 = load ptr, ptr %ref_id726, align 8 + %arrayidx746 = getelementptr inbounds ptr, ptr %tmp7, i64 5 + %tmp8 = load ptr, ptr %frame, align 8 + %mv783 = getelementptr inbounds %struct.picture, ptr %tmp8, i64 0, i32 35 + %tmp9 = load ptr, ptr %mv783, align 8 + %arrayidx804 = getelementptr inbounds ptr, ptr %tmp9, i64 1 + %tmp10 = load ptr, ptr %arrayidx804, align 8 + store ptr %tmp10, ptr %arrayidx804 br label %if.end908 if.end908: ; preds = %if.then570, %land.lhs.true563 br label %for.inc912 for.inc912: ; preds = %if.end908, %for.cond538.preheader - %tmp11 = phi %struct.picture* [ %tmp0, %for.cond538.preheader ], [ undef, %if.end908 ] + %tmp11 = phi ptr [ %tmp0, %for.cond538.preheader ], [ undef, %if.end908 ] br i1 undef, label %for.cond538.preheader, label %for.cond1392.preheader for.cond1392.preheader: ; preds = %for.inc912 diff --git a/polly/test/ScopInfo/parameter_in_dead_statement.ll b/polly/test/ScopInfo/parameter_in_dead_statement.ll index 5e8a807f1dca..4b4a87f098d7 100644 --- a/polly/test/ScopInfo/parameter_in_dead_statement.ll +++ b/polly/test/ScopInfo/parameter_in_dead_statement.ll @@ -23,7 +23,7 @@ entry.split: ; preds = %entry if.end: ; preds = %entry.split tail call void @_ZN8NWindows16NSynchronization8CSynchro5EnterEv() - %0 = load i32, i32* null, align 8 + %0 = load i32, ptr null, align 8 %add = add nsw i32 %0, %releaseCount %cmp2 = icmp sgt i32 %add, 0 br i1 %cmp2, label %if.then3, label %if.end5 diff --git a/polly/test/ScopInfo/parameter_with_constant_factor_in_add.ll b/polly/test/ScopInfo/parameter_with_constant_factor_in_add.ll index d7eaf59a3cf9..72d580801573 100644 --- a/polly/test/ScopInfo/parameter_with_constant_factor_in_add.ll +++ b/polly/test/ScopInfo/parameter_with_constant_factor_in_add.ll @@ -11,7 +11,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @BPredPartitionCost(i32* %A) #0 { +define void @BPredPartitionCost(ptr %A) #0 { entry: %curr_blk = alloca [16 x [16 x i32]], align 16 br label %for.cond261.preheader.lr.ph @@ -33,10 +33,10 @@ for.cond273.preheader: ; preds = %for.cond261.prehead for.body276: ; preds = %for.body276, %for.cond273.preheader %indvars.iv = phi i64 [ 0, %for.cond273.preheader ], [ %indvars.iv.next, %for.body276 ] %3 = add nsw i64 0, %indvars.iv189 - %arrayidx282 = getelementptr inbounds [16 x [16 x i32]], [16 x [16 x i32]]* %curr_blk, i64 0, i64 %3, i64 0 - %4 = load i32, i32* %arrayidx282, align 4 - %arridx = getelementptr i32, i32* %A, i64 %3 - store i32 0, i32* %arridx, align 4 + %arrayidx282 = getelementptr inbounds [16 x [16 x i32]], ptr %curr_blk, i64 0, i64 %3, i64 0 + %4 = load i32, ptr %arrayidx282, align 4 + %arridx = getelementptr i32, ptr %A, i64 %3 + store i32 0, ptr %arridx, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 br i1 false, label %for.body276, label %for.end291 diff --git a/polly/test/ScopInfo/partially_invariant_load_1.ll b/polly/test/ScopInfo/partially_invariant_load_1.ll index 226cfb9ab8d6..274a7873c782 100644 --- a/polly/test/ScopInfo/partially_invariant_load_1.ll +++ b/polly/test/ScopInfo/partially_invariant_load_1.ll @@ -23,7 +23,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %I, i32 %N) { +define void @f(ptr %A, ptr %I, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -34,19 +34,19 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp, label %for.body, label %for.end for.body: ; preds = %for.cond - %tmp1 = load i32, i32* %I, align 4 + %tmp1 = load i32, ptr %I, align 4 %cmp1 = icmp eq i32 %tmp1, 42 br i1 %cmp1, label %if.then, label %if.else if.then: ; preds = %for.body - store i32 0, i32* %I, align 4 + store i32 0, ptr %I, align 4 br label %if.end if.else: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp2, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %if.else, %if.then diff --git a/polly/test/ScopInfo/partially_invariant_load_2.ll b/polly/test/ScopInfo/partially_invariant_load_2.ll index 03ddfa51ab80..ee1092883f72 100644 --- a/polly/test/ScopInfo/partially_invariant_load_2.ll +++ b/polly/test/ScopInfo/partially_invariant_load_2.ll @@ -25,7 +25,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %I, i32 %N, i32 %p, i32 %q) { +define void @f(ptr %A, ptr %I, i32 %N, i32 %p, i32 %q) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -40,26 +40,26 @@ for.body: ; preds = %for.cond br i1 %cmp1, label %if.then, label %if.end4 if.then: ; preds = %for.body - store i32 0, i32* %I, align 4 - %tmp1 = load i32, i32* %I, align 4 + store i32 0, ptr %I, align 4 + %tmp1 = load i32, ptr %I, align 4 %cmp2 = icmp eq i32 %tmp1, %q br i1 %cmp2, label %if.then3, label %if.end if.then3: ; preds = %if.then - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %mul = shl nsw i32 %tmp2, 1 - store i32 %mul, i32* %arrayidx, align 4 + store i32 %mul, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %if.then3, %if.then br label %if.end4 if.end4: ; preds = %if.end, %for.body - %arrayidx6 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp3 = load i32, i32* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp3 = load i32, ptr %arrayidx6, align 4 %inc = add nsw i32 %tmp3, 1 - store i32 %inc, i32* %arrayidx6, align 4 + store i32 %inc, ptr %arrayidx6, align 4 br label %for.inc for.inc: ; preds = %if.end4 diff --git a/polly/test/ScopInfo/phi-in-non-affine-region.ll b/polly/test/ScopInfo/phi-in-non-affine-region.ll index 7926c2c76ed8..6ef24e3f1456 100644 --- a/polly/test/ScopInfo/phi-in-non-affine-region.ll +++ b/polly/test/ScopInfo/phi-in-non-affine-region.ll @@ -34,7 +34,7 @@ bb: br label %bb1 bb1: ; preds = %bb - %tmp = load double, double* getelementptr inbounds (%struct.hoge, %struct.hoge* @global, i64 0, i32 0), align 8 + %tmp = load double, ptr @global, align 8 br i1 false, label %bb3, label %bb2 bb2: ; preds = %bb1 diff --git a/polly/test/ScopInfo/phi_after_error_block.ll b/polly/test/ScopInfo/phi_after_error_block.ll index af5c919c2d30..039fb86bec5b 100644 --- a/polly/test/ScopInfo/phi_after_error_block.ll +++ b/polly/test/ScopInfo/phi_after_error_block.ll @@ -2,7 +2,7 @@ declare void @bar() -define void @foo(float* %A, i64 %p) { +define void @foo(ptr %A, i64 %p) { start: br label %next @@ -19,13 +19,13 @@ ok: merge: %phi = phi i64 [0, %error], [1, %ok] - store float 42.0, float* %A + store float 42.0, ptr %A %cmp = icmp eq i64 %phi, %p br i1 %cmp, label %loop, label %exit loop: %indvar = phi i64 [0, %merge], [%indvar.next, %loop] - store float 42.0, float* %A + store float 42.0, ptr %A %indvar.next = add i64 %indvar, 1 %cmp2 = icmp sle i64 %indvar, 1024 br i1 %cmp2, label %loop, label %exit diff --git a/polly/test/ScopInfo/phi_condition_modeling_1.ll b/polly/test/ScopInfo/phi_condition_modeling_1.ll index c89601a2ed34..a879c2005ad8 100644 --- a/polly/test/ScopInfo/phi_condition_modeling_1.ll +++ b/polly/test/ScopInfo/phi_condition_modeling_1.ll @@ -34,7 +34,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %c, i32 %N) { +define void @f(ptr %A, i32 %c, i32 %N) { bb: %tmp = sext i32 %N to i64 %tmp1 = sext i32 %c to i64 @@ -57,8 +57,8 @@ bb7: ; preds = %bb4 bb8: ; preds = %bb7, %bb6 %tmp.0 = phi i32 [ 3, %bb6 ], [ 5, %bb7 ] - %tmp9 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp.0, i32* %tmp9, align 4 + %tmp9 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp.0, ptr %tmp9, align 4 br label %bb10 bb10: ; preds = %bb8 diff --git a/polly/test/ScopInfo/phi_condition_modeling_2.ll b/polly/test/ScopInfo/phi_condition_modeling_2.ll index 3dbf04816bd1..cedc140f8438 100644 --- a/polly/test/ScopInfo/phi_condition_modeling_2.ll +++ b/polly/test/ScopInfo/phi_condition_modeling_2.ll @@ -48,7 +48,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %c, i32 %N) { +define void @f(ptr %A, i32 %c, i32 %N) { bb: %tmp = sext i32 %N to i64 %tmp1 = sext i32 %c to i64 @@ -74,8 +74,8 @@ bb8: ; preds = %bb7, %bb6 br label %bb8b bb8b: - %tmp9 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %tmp.0, i32* %tmp9, align 4 + %tmp9 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %tmp.0, ptr %tmp9, align 4 br label %bb10 bb10: ; preds = %bb8 diff --git a/polly/test/ScopInfo/phi_conditional_simple_1.ll b/polly/test/ScopInfo/phi_conditional_simple_1.ll index 731f97ba4057..90213a953767 100644 --- a/polly/test/ScopInfo/phi_conditional_simple_1.ll +++ b/polly/test/ScopInfo/phi_conditional_simple_1.ll @@ -32,7 +32,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A, i32 %c) { +define void @jd(ptr %A, i32 %c) { entry: br label %for.cond @@ -53,8 +53,8 @@ if.else: ; preds = %for.body if.end: ; preds = %if.else, %if.then %phi = phi i32 [ 1, %if.then], [ 2, %if.else ] - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %phi, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %phi, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %if.end diff --git a/polly/test/ScopInfo/phi_loop_carried_float.ll b/polly/test/ScopInfo/phi_loop_carried_float.ll index 84b2d070d1ed..d8d2608329bc 100644 --- a/polly/test/ScopInfo/phi_loop_carried_float.ll +++ b/polly/test/ScopInfo/phi_loop_carried_float.ll @@ -31,7 +31,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(float* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { bb: %tmp = sext i32 %N to i64 br label %bb1 @@ -46,8 +46,8 @@ bb3: ; preds = %bb1 br label %bb4 bb4: ; preds = %bb3 - %tmp5 = getelementptr inbounds float, float* %A, i64 %indvars.iv - %tmp6 = load float, float* %tmp5, align 4 + %tmp5 = getelementptr inbounds float, ptr %A, i64 %indvars.iv + %tmp6 = load float, ptr %tmp5, align 4 %tmp7 = fadd float %tmp.0, %tmp6 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 br label %bb1 diff --git a/polly/test/ScopInfo/phi_not_grouped_at_top.ll b/polly/test/ScopInfo/phi_not_grouped_at_top.ll index b3491c62dfbf..be082165b635 100644 --- a/polly/test/ScopInfo/phi_not_grouped_at_top.ll +++ b/polly/test/ScopInfo/phi_not_grouped_at_top.ll @@ -3,18 +3,18 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3 declare i32 @funa() align 2 -declare i32 @generic_personality_v0(i32, i64, i8*, i8*) +declare i32 @generic_personality_v0(i32, i64, ptr, ptr) -define void @funb() personality i32 (i32, i64, i8*, i8*)* @generic_personality_v0 { +define void @funb() personality ptr @generic_personality_v0 { entry: br label %bb117 bb117: ; preds = %bb56 %0 = invoke i32 @funa() - to label %bb121 unwind label %invcont118 ; <%struct.btHullTriangle*> [#uses=1] + to label %bb121 unwind label %invcont118 ; <ptr> [#uses=1] invcont118: ; preds = %bb117 - %d = landingpad { i8*, i32 } cleanup catch i32* null + %d = landingpad { ptr, i32 } cleanup catch ptr null br label %bb121 bb121: ; preds = %bb120, %invcont118 diff --git a/polly/test/ScopInfo/phi_scalar_simple_1.ll b/polly/test/ScopInfo/phi_scalar_simple_1.ll index fb8d573ff4f1..d042613c023f 100644 --- a/polly/test/ScopInfo/phi_scalar_simple_1.ll +++ b/polly/test/ScopInfo/phi_scalar_simple_1.ll @@ -77,7 +77,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define i32 @jd(i32* noalias %A, i32 %x, i32 %N) { +define i32 @jd(ptr noalias %A, i32 %x, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -101,8 +101,8 @@ for.body3: ; preds = %for.cond1 br label %for.inc for.inc: ; preds = %for.body3 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %x.addr.1, %tmp1 %inc = add nsw i32 %j.0, 1 br label %for.cond1 diff --git a/polly/test/ScopInfo/phi_scalar_simple_2.ll b/polly/test/ScopInfo/phi_scalar_simple_2.ll index f9bf1412eee2..fb4292e05ca6 100644 --- a/polly/test/ScopInfo/phi_scalar_simple_2.ll +++ b/polly/test/ScopInfo/phi_scalar_simple_2.ll @@ -89,7 +89,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define i32 @jd(i32* noalias %A, i32 %x, i32 %N, i32 %c) { +define i32 @jd(ptr noalias %A, i32 %x, i32 %N, i32 %c) { entry: %tmp = sext i32 %N to i64 %tmp1 = sext i32 %c to i64 @@ -98,8 +98,8 @@ entry: for.cond: ; preds = %for.inc5, %entry %indvars.iv = phi i64 [ %indvars.iv.next, %for.inc5 ], [ 0, %entry ] %x.addr.0 = phi i32 [ %x, %entry ], [ %x.addr.1, %for.inc5 ] - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - store i32 %x.addr.0, i32* %arrayidx2 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + store i32 %x.addr.0, ptr %arrayidx2 %cmp = icmp slt i64 %indvars.iv, %tmp br i1 %cmp, label %for.body, label %for.end7 @@ -117,8 +117,8 @@ for.body3: ; preds = %for.cond1 br i1 %cmp4, label %if.then, label %if.end if.then: ; preds = %for.body3 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %x.addr.1, %tmp2 br label %if.end diff --git a/polly/test/ScopInfo/phi_with_invoke_edge.ll b/polly/test/ScopInfo/phi_with_invoke_edge.ll index 4a9cf595e3f8..dbcf04c0561a 100644 --- a/polly/test/ScopInfo/phi_with_invoke_edge.ll +++ b/polly/test/ScopInfo/phi_with_invoke_edge.ll @@ -1,26 +1,26 @@ ; RUN: opt %loadPolly -polly-detect -disable-output < %s target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -declare i32 @generic_personality_v0(i32, i64, i8*, i8*) +declare i32 @generic_personality_v0(i32, i64, ptr, ptr) -define i16 @v() personality i32 (i32, i64, i8*, i8*)* @generic_personality_v0 { +define i16 @v() personality ptr @generic_personality_v0 { entry: br i1 undef, label %bb16, label %invcont12 invcont12: ; preds = %invcont11 - %a = invoke i16 @v() to label %return unwind label %lpad22 ; <i16*> [#uses=1] + %a = invoke i16 @v() to label %return unwind label %lpad22 ; <ptr> [#uses=1] bb16: ; preds = %bb7 br i1 undef, label %bb9, label %return return: ; preds = %bb16, %invcont12 - %b = phi i16 [ %a, %invcont12 ], [ 0, %bb16 ] ; <i16*> [#uses=1] + %b = phi i16 [ %a, %invcont12 ], [ 0, %bb16 ] ; <ptr> [#uses=1] ret i16 %b bb9: ; preds = %bb3 ret i16 0 lpad22: ; preds = %invcont12 - %d = landingpad { i8*, i32 } cleanup catch i32* null + %d = landingpad { ptr, i32 } cleanup catch ptr null unreachable } diff --git a/polly/test/ScopInfo/pointer-comparison-no-nsw.ll b/polly/test/ScopInfo/pointer-comparison-no-nsw.ll index f1cb82a7b057..094c5ccab54d 100644 --- a/polly/test/ScopInfo/pointer-comparison-no-nsw.ll +++ b/polly/test/ScopInfo/pointer-comparison-no-nsw.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %B) { +define void @f(ptr %A, ptr %B) { entry: br label %entry.split @@ -23,15 +23,15 @@ entry.split: br i1 true, label %while.cond, label %while.end while.cond: ; preds = %while.body, %entry - %A.addr.0 = phi i32* [ %A, %entry.split ], [ %incdec.ptr, %while.body ] - %cmp = icmp eq i32* %A.addr.0, %B + %A.addr.0 = phi ptr [ %A, %entry.split ], [ %incdec.ptr, %while.body ] + %cmp = icmp eq ptr %A.addr.0, %B br i1 %cmp, label %while.end, label %while.body while.body: ; preds = %while.cond - %tmp = load i32, i32* %A.addr.0, align 4 + %tmp = load i32, ptr %A.addr.0, align 4 %add = add i32 %tmp, 1 - store i32 %add, i32* %A.addr.0, align 4 - %incdec.ptr = getelementptr i32, i32* %A.addr.0, i64 1 + store i32 %add, ptr %A.addr.0, align 4 + %incdec.ptr = getelementptr i32, ptr %A.addr.0, i64 1 br label %while.cond while.end: ; preds = %while.cond diff --git a/polly/test/ScopInfo/pointer-comparison.ll b/polly/test/ScopInfo/pointer-comparison.ll index 38c043b6ca4d..15ce0491209a 100644 --- a/polly/test/ScopInfo/pointer-comparison.ll +++ b/polly/test/ScopInfo/pointer-comparison.ll @@ -17,20 +17,20 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %B) { +define void @f(ptr %A, ptr %B) { entry: br label %while.cond while.cond: ; preds = %while.body, %entry - %A.addr.0 = phi i32* [ %A, %entry ], [ %incdec.ptr, %while.body ] - %cmp = icmp eq i32* %A.addr.0, %B + %A.addr.0 = phi ptr [ %A, %entry ], [ %incdec.ptr, %while.body ] + %cmp = icmp eq ptr %A.addr.0, %B br i1 %cmp, label %while.end, label %while.body while.body: ; preds = %while.cond - %tmp = load i32, i32* %A.addr.0, align 4 + %tmp = load i32, ptr %A.addr.0, align 4 %add = add nsw i32 %tmp, 1 - store i32 %add, i32* %A.addr.0, align 4 - %incdec.ptr = getelementptr inbounds i32, i32* %A.addr.0, i64 1 + store i32 %add, ptr %A.addr.0, align 4 + %incdec.ptr = getelementptr inbounds i32, ptr %A.addr.0, i64 1 br label %while.cond while.end: ; preds = %while.cond diff --git a/polly/test/ScopInfo/pointer-type-expressions.ll b/polly/test/ScopInfo/pointer-type-expressions.ll index 01c64982d9eb..ebbb644340f6 100644 --- a/polly/test/ScopInfo/pointer-type-expressions.ll +++ b/polly/test/ScopInfo/pointer-type-expressions.ll @@ -9,18 +9,18 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* nocapture %a, i64 %N, float * %P) nounwind { +define void @f(ptr nocapture %a, i64 %N, ptr %P) nounwind { entry: br label %bb bb: %i = phi i64 [ 0, %entry ], [ %i.inc, %bb.backedge ] - %brcond = icmp ne float* %P, null + %brcond = icmp ne ptr %P, null br i1 %brcond, label %store, label %bb.backedge store: - %scevgep = getelementptr inbounds i64, i64* %a, i64 %i - store i64 %i, i64* %scevgep + %scevgep = getelementptr inbounds i64, ptr %a, i64 %i + store i64 %i, ptr %scevgep br label %bb.backedge bb.backedge: diff --git a/polly/test/ScopInfo/pointer-used-as-base-pointer-and-scalar-read.ll b/polly/test/ScopInfo/pointer-used-as-base-pointer-and-scalar-read.ll index db4c059313ee..3ac86a3443af 100644 --- a/polly/test/ScopInfo/pointer-used-as-base-pointer-and-scalar-read.ll +++ b/polly/test/ScopInfo/pointer-used-as-base-pointer-and-scalar-read.ll @@ -6,13 +6,13 @@ ; CHECK: Arrays { ; CHECK-NEXT: float MemRef_A[*]; // Element size 4 -; CHECK-NEXT: float* MemRef_x__phi; // Element size 8 -; CHECK-NEXT: float* MemRef_C[*]; // Element size 8 +; CHECK-NEXT: ptr MemRef_x__phi; // Element size 8 +; CHECK-NEXT: ptr MemRef_C[*]; // Element size 8 ; CHECK-NEXT: } ; CHECK: Arrays (Bounds as pw_affs) { ; CHECK-NEXT: float MemRef_A[*]; // Element size 4 -; CHECK-NEXT: float* MemRef_x__phi; // Element size 8 -; CHECK-NEXT: float* MemRef_C[*]; // Element size 8 +; CHECK-NEXT: ptr MemRef_x__phi; // Element size 8 +; CHECK-NEXT: ptr MemRef_C[*]; // Element size 8 ; CHECK-NEXT: } ; CHECK: Alias Groups (0): ; CHECK-NEXT: n/a @@ -48,7 +48,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* noalias %A, float* noalias %B, float ** noalias %C, i32 %p) { +define void @foo(ptr noalias %A, ptr noalias %B, ptr noalias %C, i32 %p) { bb: br label %bb1 @@ -62,16 +62,16 @@ bb2: br i1 %cmp, label %then, label %else then: - store float 3.0, float* %A + store float 3.0, ptr %A br label %bb8 else: - store float 4.0, float* %A + store float 4.0, ptr %A br label %bb8 bb8: - %x = phi float* [%A, %then], [%B, %else] - store float* %x, float** %C + %x = phi ptr [%A, %then], [%B, %else] + store ptr %x, ptr %C %tmp9 = add nuw nsw i64 %i.0, 1 br label %bb1 diff --git a/polly/test/ScopInfo/polly-timeout-parameter-bounds.ll b/polly/test/ScopInfo/polly-timeout-parameter-bounds.ll index b1949a00450f..8152010c2c99 100644 --- a/polly/test/ScopInfo/polly-timeout-parameter-bounds.ll +++ b/polly/test/ScopInfo/polly-timeout-parameter-bounds.ll @@ -216,9 +216,9 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" target triple = "thumbv7--linux-android" -define i32 @f(i32* nocapture readonly %arg5) { +define i32 @f(ptr nocapture readonly %arg5) { bb: - %tmp = load i32, i32* %arg5, align 4 + %tmp = load i32, ptr %arg5, align 4 %tmp6 = icmp eq i32 %tmp, 0 br i1 %tmp6, label %bb9, label %bb7 diff --git a/polly/test/ScopInfo/pr38218.ll b/polly/test/ScopInfo/pr38218.ll index 301607e1be3b..74103f9a2ac3 100644 --- a/polly/test/ScopInfo/pr38218.ll +++ b/polly/test/ScopInfo/pr38218.ll @@ -7,20 +7,19 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" define dso_local void @pr38219() { start: - %tmp1.i.i.i = icmp ne i64** null, null + %tmp1.i.i.i = icmp ne ptr null, null call void @llvm.assume(i1 %tmp1.i.i.i) - %tmp1 = extractvalue { [0 x i64*]*, i64 } undef, 0 - %tmp.i1 = getelementptr inbounds [0 x i64*], [0 x i64*]* %tmp1, i64 0, i64 0 + %tmp1 = extractvalue { ptr, i64 } undef, 0 br label %bb10.i bb10.i: - %_10.12.i = phi i64** [ %tmp.i1, %start ], [ undef, %_ZN4core3ptr13drop_in_place17hd1d510ec1955c343E.exit.i ] - %tmp1.i.i2.i.i.i.i = load i64*, i64** %_10.12.i, align 8 - store i64 undef, i64* %tmp1.i.i2.i.i.i.i, align 1 + %_10.12.i = phi ptr [ %tmp1, %start ], [ undef, %_ZN4core3ptr13drop_in_place17hd1d510ec1955c343E.exit.i ] + %tmp1.i.i2.i.i.i.i = load ptr, ptr %_10.12.i, align 8 + store i64 undef, ptr %tmp1.i.i2.i.i.i.i, align 1 br label %bb3.i.i.i bb3.i.i.i: - store i64 0, i64* inttoptr (i64 8 to i64*), align 8 + store i64 0, ptr inttoptr (i64 8 to ptr), align 8 br label %_ZN4core3ptr13drop_in_place17hd1d510ec1955c343E.exit.i _ZN4core3ptr13drop_in_place17hd1d510ec1955c343E.exit.i: diff --git a/polly/test/ScopInfo/preserve-equiv-class-order-in-basic_block.ll b/polly/test/ScopInfo/preserve-equiv-class-order-in-basic_block.ll index 77b7b311b5ee..4a68acd3d509 100644 --- a/polly/test/ScopInfo/preserve-equiv-class-order-in-basic_block.ll +++ b/polly/test/ScopInfo/preserve-equiv-class-order-in-basic_block.ll @@ -18,16 +18,16 @@ entry.split: ; preds = %entry for.body: ; preds = %for.body, %entry.split %indvars.iv = phi i64 [ 0, %entry.split ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds [56 x i32], [56 x i32]* @a, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [56 x i32], ptr @a, i64 0, i64 %indvars.iv %0 = trunc i64 %indvars.iv to i32 - store i32 %0, i32* %arrayidx, align 4, !tbaa !0 + store i32 %0, ptr %arrayidx, align 4, !tbaa !0 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 56 br i1 %exitcond, label %for.end, label %for.body for.end: ; preds = %for.body - %1 = load i32, i32* @e, align 4, !tbaa !0 - store i32 2, i32* @e, align 4, !tbaa !0 + %1 = load i32, ptr @e, align 4, !tbaa !0 + store i32 2, ptr @e, align 4, !tbaa !0 %2 = trunc i32 %1 to i16 %conv = and i16 %2, 1 %tobool = icmp eq i16 %conv, 0 @@ -35,14 +35,14 @@ for.end: ; preds = %for.body for.body3: ; preds = %for.end, %for.inc11 %storemerge20 = phi i32 [ 2, %for.end ], [ %dec12, %for.inc11 ] - %3 = load i8, i8* @d, align 1 + %3 = load i8, ptr @d, align 1 %cmp6 = icmp eq i8 %3, 8 %or.cond = or i1 %tobool, %cmp6 br i1 %or.cond, label %for.inc11, label %for.inc11.loopexit for.inc11.loopexit: ; preds = %for.body3 - store i32 0, i32* @b, align 4, !tbaa !0 - store i8 8, i8* @d, align 1, !tbaa !4 + store i32 0, ptr @b, align 4, !tbaa !0 + store i8 8, ptr @d, align 1, !tbaa !4 br label %for.inc11 for.inc11: ; preds = %for.inc11.loopexit, %for.body3 @@ -51,9 +51,9 @@ for.inc11: ; preds = %for.inc11.loopexit, br i1 %cmp2, label %for.body3, label %for.end13 for.end13: ; preds = %for.inc11 - store i16 %conv, i16* @f, align 2, !tbaa !5 - store i32 -19, i32* @e, align 4, !tbaa !0 - %4 = load i32, i32* @b, align 4, !tbaa !0 + store i16 %conv, ptr @f, align 2, !tbaa !5 + store i32 -19, ptr @e, align 4, !tbaa !0 + %4 = load i32, ptr @b, align 4, !tbaa !0 ret i32 %4 } @@ -77,7 +77,7 @@ for.end13: ; preds = %for.inc11 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: { Stmt_for_end_a[] -> MemRef_conv[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: %1 = load i32, i32* @e, align 4, !tbaa !0 +; CHECK-NEXT: %1 = load i32, ptr @e, align 4, !tbaa !0 ; CHECK-NEXT: %2 = trunc i32 %1 to i16 ; CHECK-NEXT: %conv = and i16 %2, 1 ; CHECK-NEXT: %tobool = icmp eq i16 %conv, 0 @@ -90,5 +90,5 @@ for.end13: ; preds = %for.inc11 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_for_end[] -> MemRef_e[0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 2, i32* @e, align 4, !tbaa !0 +; CHECK-NEXT: store i32 2, ptr @e, align 4, !tbaa !0 ; CHECK-NEXT: } diff --git a/polly/test/ScopInfo/process_added_dimensions.ll b/polly/test/ScopInfo/process_added_dimensions.ll index 4edc8e3db1b9..6cb270a071f4 100644 --- a/polly/test/ScopInfo/process_added_dimensions.ll +++ b/polly/test/ScopInfo/process_added_dimensions.ll @@ -28,14 +28,12 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" -declare noalias i8* @malloc() +declare noalias ptr @malloc() define i32 @main() { entry: - %call = tail call noalias i8* @malloc() - %0 = bitcast i8* %call to [6 x [6 x [64 x i32]]]* - %arrayidx51.5.phi.trans.insert = getelementptr inbounds i8, i8* %call, i64 8960 - %1 = bitcast i8* %arrayidx51.5.phi.trans.insert to i32* + %call = tail call noalias ptr @malloc() + %arrayidx51.5.phi.trans.insert = getelementptr inbounds i8, ptr %call, i64 8960 br label %for.cond40.preheader.4 for.end76: ; preds = %for.inc71.5 @@ -44,10 +42,10 @@ for.end76: ; preds = %for.inc71.5 for.cond40.preheader.4: ; preds = %for.inc71.5, %entry %t.0131 = phi i32 [ 0, %entry ], [ %inc75, %for.inc71.5 ] %indvars.iv.next135 = add nuw nsw i64 0, 1 - %2 = trunc i64 %indvars.iv.next135 to i32 + %0 = trunc i64 %indvars.iv.next135 to i32 %indvars.iv.next = add nuw nsw i64 0, 1 %exitcond = icmp eq i64 %indvars.iv.next, 64 - %exitcond137 = icmp eq i32 %2, 6 + %exitcond137 = icmp eq i32 %0, 6 %indvars.iv.next135.1 = add nuw nsw i64 1, 1 %indvars.iv.next.1 = add nuw nsw i64 0, 1 %exitcond.1 = icmp eq i64 %indvars.iv.next.1, 64 @@ -68,8 +66,8 @@ for.cond40.preheader.4: ; preds = %for.inc71.5, %entry %exitcond.4 = icmp eq i64 %indvars.iv.next.4, 64 %lftr.wideiv.4 = trunc i64 %indvars.iv.next135.4 to i32 %exitcond137.4 = icmp eq i32 %lftr.wideiv.4, 6 - %arrayidx23.5 = getelementptr inbounds [6 x [6 x [64 x i32]]], [6 x [6 x [64 x i32]]]* %0, i64 0, i64 5, i64 5, i64 0 - store i32 36, i32* %arrayidx23.5, align 4 + %arrayidx23.5 = getelementptr inbounds [6 x [6 x [64 x i32]]], ptr %call, i64 0, i64 5, i64 5, i64 0 + store i32 36, ptr %arrayidx23.5, align 4 %indvars.iv.next.5 = add nuw nsw i64 0, 1 %exitcond.5 = icmp eq i64 %indvars.iv.next.5, 64 %indvars.iv.next143 = add nuw nsw i64 1, 1 @@ -104,7 +102,7 @@ for.cond40.preheader.5: ; preds = %for.body44.4 %indvars.iv.next149.4 = add nuw nsw i64 4, 1 %lftr.wideiv150.4 = trunc i64 %indvars.iv.next149.4 to i32 %exitcond151.4 = icmp eq i32 %lftr.wideiv150.4, 6 - %.pre160 = load i32, i32* %1, align 4 + %.pre160 = load i32, ptr %arrayidx51.5.phi.trans.insert, align 4 br label %for.body44.5 for.body44.5: ; preds = %for.body44.5, %for.cond40.preheader.5 diff --git a/polly/test/ScopInfo/ranged_parameter.ll b/polly/test/ScopInfo/ranged_parameter.ll index 4dcfe3e6a57b..4b04960ee845 100644 --- a/polly/test/ScopInfo/ranged_parameter.ll +++ b/polly/test/ScopInfo/ranged_parameter.ll @@ -13,9 +13,9 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A, i32* %p) { +define void @jd(ptr %A, ptr %p) { entry: - %tmp = load i32, i32* %p, align 4, !range !0 + %tmp = load i32, ptr %p, align 4, !range !0 br label %for.cond for.cond: ; preds = %for.inc, %entry @@ -26,8 +26,8 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %add = add i32 %i.0, %tmp %idxprom = sext i32 %add to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - store i32 %i.0, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + store i32 %i.0, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/ranged_parameter_2.ll b/polly/test/ScopInfo/ranged_parameter_2.ll index 7f620a1db9b9..cd7d2bfb84d0 100644 --- a/polly/test/ScopInfo/ranged_parameter_2.ll +++ b/polly/test/ScopInfo/ranged_parameter_2.ll @@ -12,24 +12,21 @@ target datalayout = "e-p:64:64:64-S128-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f16:16:16-f32:32:32-f64:64:64-f128:128:128-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" -define void @zot(double* noalias %arg, double** %D, i32 %n) { +define void @zot(ptr noalias %arg, ptr %D, i32 %n) { bb: br label %bb1 bb1: - %tmp4 = load double*, double** %D + %tmp4 = load ptr, ptr %D %tmp5 = add i64 undef, 3 %tmp6 = add i64 %tmp5, undef %tmp7 = add i64 %tmp6, undef - %tmp8 = getelementptr double, double* %tmp4, i64 %tmp7 - %tmp9 = bitcast double* %tmp8 to i64* - store i64 42, i64* %tmp9 + %tmp8 = getelementptr double, ptr %tmp4, i64 %tmp7 + store i64 42, ptr %tmp8 br label %bb11 bb11: - %tmp12 = getelementptr double, double* %arg, i64 0 - %tmp13 = bitcast double* %tmp12 to i64* - store i64 43, i64* %tmp13 + store i64 43, ptr %arg br label %bb14 bb14: diff --git a/polly/test/ScopInfo/ranged_parameter_wrap.ll b/polly/test/ScopInfo/ranged_parameter_wrap.ll index c15f2374b993..173746352cf0 100644 --- a/polly/test/ScopInfo/ranged_parameter_wrap.ll +++ b/polly/test/ScopInfo/ranged_parameter_wrap.ll @@ -13,9 +13,9 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A, i32* %p) { +define void @jd(ptr %A, ptr %p) { entry: - %tmp = load i32, i32* %p, align 4, !range !0 + %tmp = load i32, ptr %p, align 4, !range !0 br label %for.cond for.cond: ; preds = %for.inc, %entry @@ -26,8 +26,8 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %add = add i32 %i.0, %tmp %idxprom = sext i32 %add to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - store i32 %i.0, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + store i32 %i.0, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/ranged_parameter_wrap_2.ll b/polly/test/ScopInfo/ranged_parameter_wrap_2.ll index 8f830fcb42b8..33f57f37a1e8 100644 --- a/polly/test/ScopInfo/ranged_parameter_wrap_2.ll +++ b/polly/test/ScopInfo/ranged_parameter_wrap_2.ll @@ -39,41 +39,41 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @jd(i32* %A, - i32* %p_0, - i32* %p_1, - i32* %p_2, - i32* %p_3, - i32* %p_4, - i32* %p_5, - i32* %p_6, - i32* %p_7, - i32* %p_8, - i32* %p_9, - i32* %p_10, - i32* %p_11, - i32* %p_12, - i32* %p_13, - i32* %p_14, - i32* %p_15 +define void @jd(ptr %A, + ptr %p_0, + ptr %p_1, + ptr %p_2, + ptr %p_3, + ptr %p_4, + ptr %p_5, + ptr %p_6, + ptr %p_7, + ptr %p_8, + ptr %p_9, + ptr %p_10, + ptr %p_11, + ptr %p_12, + ptr %p_13, + ptr %p_14, + ptr %p_15 ) { entry: - %tmp_0 = load i32, i32* %p_0, !range !0 - %tmp_1 = load i32, i32* %p_1, !range !0 - %tmp_2 = load i32, i32* %p_2, !range !0 - %tmp_3 = load i32, i32* %p_3, !range !0 - %tmp_4 = load i32, i32* %p_4, !range !0 - %tmp_5 = load i32, i32* %p_5, !range !0 - %tmp_6 = load i32, i32* %p_6, !range !0 - %tmp_7 = load i32, i32* %p_7, !range !0 - %tmp_8 = load i32, i32* %p_8, !range !0 - %tmp_9 = load i32, i32* %p_9, !range !0 - %tmp_10 = load i32, i32* %p_10, !range !0 - %tmp_11 = load i32, i32* %p_11, !range !0 - %tmp_12 = load i32, i32* %p_12, !range !0 - %tmp_13 = load i32, i32* %p_13, !range !0 - %tmp_14 = load i32, i32* %p_14, !range !0 - %tmp_15 = load i32, i32* %p_15, !range !0 + %tmp_0 = load i32, ptr %p_0, !range !0 + %tmp_1 = load i32, ptr %p_1, !range !0 + %tmp_2 = load i32, ptr %p_2, !range !0 + %tmp_3 = load i32, ptr %p_3, !range !0 + %tmp_4 = load i32, ptr %p_4, !range !0 + %tmp_5 = load i32, ptr %p_5, !range !0 + %tmp_6 = load i32, ptr %p_6, !range !0 + %tmp_7 = load i32, ptr %p_7, !range !0 + %tmp_8 = load i32, ptr %p_8, !range !0 + %tmp_9 = load i32, ptr %p_9, !range !0 + %tmp_10 = load i32, ptr %p_10, !range !0 + %tmp_11 = load i32, ptr %p_11, !range !0 + %tmp_12 = load i32, ptr %p_12, !range !0 + %tmp_13 = load i32, ptr %p_13, !range !0 + %tmp_14 = load i32, ptr %p_14, !range !0 + %tmp_15 = load i32, ptr %p_15, !range !0 br label %for.cond for.cond: ; preds = %for.inc, %entry @@ -84,113 +84,113 @@ for.cond: ; preds = %for.inc, %entry for.body_0: %add_0 = add i32 %i.0, %tmp_0 %idxprom_0 = sext i32 %add_0 to i64 - %arrayidx_0 = getelementptr inbounds i32, i32* %A, i64 %idxprom_0 - store i32 %i.0, i32* %arrayidx_0, align 4 + %arrayidx_0 = getelementptr inbounds i32, ptr %A, i64 %idxprom_0 + store i32 %i.0, ptr %arrayidx_0, align 4 br label %for.body_1 for.body_1: %add_1 = add i32 %i.0, %tmp_1 %idxprom_1 = sext i32 %add_1 to i64 - %arrayidx_1 = getelementptr inbounds i32, i32* %A, i64 %idxprom_1 - store i32 %i.0, i32* %arrayidx_1, align 4 + %arrayidx_1 = getelementptr inbounds i32, ptr %A, i64 %idxprom_1 + store i32 %i.0, ptr %arrayidx_1, align 4 br label %for.body_2 for.body_2: %add_2 = add i32 %i.0, %tmp_2 %idxprom_2 = sext i32 %add_2 to i64 - %arrayidx_2 = getelementptr inbounds i32, i32* %A, i64 %idxprom_2 - store i32 %i.0, i32* %arrayidx_2, align 4 + %arrayidx_2 = getelementptr inbounds i32, ptr %A, i64 %idxprom_2 + store i32 %i.0, ptr %arrayidx_2, align 4 br label %for.body_3 for.body_3: %add_3 = add i32 %i.0, %tmp_3 %idxprom_3 = sext i32 %add_3 to i64 - %arrayidx_3 = getelementptr inbounds i32, i32* %A, i64 %idxprom_3 - store i32 %i.0, i32* %arrayidx_3, align 4 + %arrayidx_3 = getelementptr inbounds i32, ptr %A, i64 %idxprom_3 + store i32 %i.0, ptr %arrayidx_3, align 4 br label %for.body_4 for.body_4: %add_4 = add i32 %i.0, %tmp_4 %idxprom_4 = sext i32 %add_4 to i64 - %arrayidx_4 = getelementptr inbounds i32, i32* %A, i64 %idxprom_4 - store i32 %i.0, i32* %arrayidx_4, align 4 + %arrayidx_4 = getelementptr inbounds i32, ptr %A, i64 %idxprom_4 + store i32 %i.0, ptr %arrayidx_4, align 4 br label %for.body_5 for.body_5: %add_5 = add i32 %i.0, %tmp_5 %idxprom_5 = sext i32 %add_5 to i64 - %arrayidx_5 = getelementptr inbounds i32, i32* %A, i64 %idxprom_5 - store i32 %i.0, i32* %arrayidx_5, align 4 + %arrayidx_5 = getelementptr inbounds i32, ptr %A, i64 %idxprom_5 + store i32 %i.0, ptr %arrayidx_5, align 4 br label %for.body_6 for.body_6: %add_6 = add i32 %i.0, %tmp_6 %idxprom_6 = sext i32 %add_6 to i64 - %arrayidx_6 = getelementptr inbounds i32, i32* %A, i64 %idxprom_6 - store i32 %i.0, i32* %arrayidx_6, align 4 + %arrayidx_6 = getelementptr inbounds i32, ptr %A, i64 %idxprom_6 + store i32 %i.0, ptr %arrayidx_6, align 4 br label %for.body_7 for.body_7: %add_7 = add i32 %i.0, %tmp_7 %idxprom_7 = sext i32 %add_7 to i64 - %arrayidx_7 = getelementptr inbounds i32, i32* %A, i64 %idxprom_7 - store i32 %i.0, i32* %arrayidx_7, align 4 + %arrayidx_7 = getelementptr inbounds i32, ptr %A, i64 %idxprom_7 + store i32 %i.0, ptr %arrayidx_7, align 4 br label %for.body_8 for.body_8: %add_8 = add i32 %i.0, %tmp_8 %idxprom_8 = sext i32 %add_8 to i64 - %arrayidx_8 = getelementptr inbounds i32, i32* %A, i64 %idxprom_8 - store i32 %i.0, i32* %arrayidx_8, align 4 + %arrayidx_8 = getelementptr inbounds i32, ptr %A, i64 %idxprom_8 + store i32 %i.0, ptr %arrayidx_8, align 4 br label %for.body_9 for.body_9: %add_9 = add i32 %i.0, %tmp_9 %idxprom_9 = sext i32 %add_9 to i64 - %arrayidx_9 = getelementptr inbounds i32, i32* %A, i64 %idxprom_9 - store i32 %i.0, i32* %arrayidx_9, align 4 + %arrayidx_9 = getelementptr inbounds i32, ptr %A, i64 %idxprom_9 + store i32 %i.0, ptr %arrayidx_9, align 4 br label %for.body_10 for.body_10: %add_10 = add i32 %i.0, %tmp_10 %idxprom_10 = sext i32 %add_10 to i64 - %arrayidx_10 = getelementptr inbounds i32, i32* %A, i64 %idxprom_10 - store i32 %i.0, i32* %arrayidx_10, align 4 + %arrayidx_10 = getelementptr inbounds i32, ptr %A, i64 %idxprom_10 + store i32 %i.0, ptr %arrayidx_10, align 4 br label %for.body_11 for.body_11: %add_11 = add i32 %i.0, %tmp_11 %idxprom_11 = sext i32 %add_11 to i64 - %arrayidx_11 = getelementptr inbounds i32, i32* %A, i64 %idxprom_11 - store i32 %i.0, i32* %arrayidx_11, align 4 + %arrayidx_11 = getelementptr inbounds i32, ptr %A, i64 %idxprom_11 + store i32 %i.0, ptr %arrayidx_11, align 4 br label %for.body_12 for.body_12: %add_12 = add i32 %i.0, %tmp_12 %idxprom_12 = sext i32 %add_12 to i64 - %arrayidx_12 = getelementptr inbounds i32, i32* %A, i64 %idxprom_12 - store i32 %i.0, i32* %arrayidx_12, align 4 + %arrayidx_12 = getelementptr inbounds i32, ptr %A, i64 %idxprom_12 + store i32 %i.0, ptr %arrayidx_12, align 4 br label %for.body_13 for.body_13: %add_13 = add i32 %i.0, %tmp_13 %idxprom_13 = sext i32 %add_13 to i64 - %arrayidx_13 = getelementptr inbounds i32, i32* %A, i64 %idxprom_13 - store i32 %i.0, i32* %arrayidx_13, align 4 + %arrayidx_13 = getelementptr inbounds i32, ptr %A, i64 %idxprom_13 + store i32 %i.0, ptr %arrayidx_13, align 4 br label %for.body_14 for.body_14: %add_14 = add i32 %i.0, %tmp_14 %idxprom_14 = sext i32 %add_14 to i64 - %arrayidx_14 = getelementptr inbounds i32, i32* %A, i64 %idxprom_14 - store i32 %i.0, i32* %arrayidx_14, align 4 + %arrayidx_14 = getelementptr inbounds i32, ptr %A, i64 %idxprom_14 + store i32 %i.0, ptr %arrayidx_14, align 4 br label %for.body_15 for.body_15: %add_15 = add i32 %i.0, %tmp_15 %idxprom_15 = sext i32 %add_15 to i64 - %arrayidx_15 = getelementptr inbounds i32, i32* %A, i64 %idxprom_15 - store i32 %i.0, i32* %arrayidx_15, align 4 + %arrayidx_15 = getelementptr inbounds i32, ptr %A, i64 %idxprom_15 + store i32 %i.0, ptr %arrayidx_15, align 4 br label %for.body_end for.body_end: diff --git a/polly/test/ScopInfo/read-only-scalar-used-in-phi-2.ll b/polly/test/ScopInfo/read-only-scalar-used-in-phi-2.ll index 605a03da3139..23c7aa261ac0 100644 --- a/polly/test/ScopInfo/read-only-scalar-used-in-phi-2.ll +++ b/polly/test/ScopInfo/read-only-scalar-used-in-phi-2.ll @@ -17,15 +17,15 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define float @foo(float %sum, float* %A) { +define float @foo(float %sum, ptr %A) { bb: br label %bb1 bb1: %i = phi i64 [ 0, %bb ], [ %i.next, %bb1 ] %phisum = phi float [ %sum, %bb ], [ %tmp5, %bb1 ] - %tmp = getelementptr inbounds float, float* %A, i64 %i - %tmp4 = load float, float* %tmp, align 4 + %tmp = getelementptr inbounds float, ptr %A, i64 %i + %tmp4 = load float, ptr %tmp, align 4 %tmp5 = fadd float %phisum, %tmp4 %i.next = add nuw nsw i64 %i, 1 %exitcond = icmp ne i64 %i, 100 diff --git a/polly/test/ScopInfo/read-only-scalar-used-in-phi.ll b/polly/test/ScopInfo/read-only-scalar-used-in-phi.ll index d1095a18e4d8..20f44c94251c 100644 --- a/polly/test/ScopInfo/read-only-scalar-used-in-phi.ll +++ b/polly/test/ScopInfo/read-only-scalar-used-in-phi.ll @@ -37,7 +37,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define float @foo(float %sum, float* %A) { +define float @foo(float %sum, ptr %A) { bb: br label %next @@ -47,8 +47,8 @@ next: bb1: %i = phi i64 [ 0, %next ], [ %i.next, %bb1 ] %phisum = phi float [ %sum, %next ], [ %tmp5, %bb1 ] - %tmp = getelementptr inbounds float, float* %A, i64 %i - %tmp4 = load float, float* %tmp, align 4 + %tmp = getelementptr inbounds float, ptr %A, i64 %i + %tmp4 = load float, ptr %tmp, align 4 %tmp5 = fadd float %phisum, %tmp4 %i.next = add nuw nsw i64 %i, 1 %exitcond = icmp ne i64 %i, 100 diff --git a/polly/test/ScopInfo/read-only-scalars.ll b/polly/test/ScopInfo/read-only-scalars.ll index bddaac5a25b1..71c2d21e357a 100644 --- a/polly/test/ScopInfo/read-only-scalars.ll +++ b/polly/test/ScopInfo/read-only-scalars.ll @@ -11,7 +11,7 @@ ; SCALARS: { Stmt_stmt1[i0] -> MemRef_scalar2[] }; -define void @foo(float* noalias %A, float* %B, float %scalar, float %scalar2) { +define void @foo(ptr noalias %A, ptr %B, float %scalar, float %scalar2) { entry: br label %loop @@ -20,10 +20,10 @@ loop: br label %stmt1 stmt1: - %val = load float, float* %A + %val = load float, ptr %A %sum = fadd float %val, %scalar - store float %sum, float* %A - store float %scalar2, float* %B + store float %sum, ptr %A + store float %scalar2, ptr %B br label %loop.backedge loop.backedge: diff --git a/polly/test/ScopInfo/read-only-statements.ll b/polly/test/ScopInfo/read-only-statements.ll index 37acd9ce9c5b..a93063ea3ad6 100644 --- a/polly/test/ScopInfo/read-only-statements.ll +++ b/polly/test/ScopInfo/read-only-statements.ll @@ -31,7 +31,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %for.cond @@ -41,30 +41,30 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp = load i32, ptr %arrayidx, align 4 br label %for.body.1 for.body.1: - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx2, align 4 br label %for.body.2 for.body.2: - %arrayidx5 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx5, align 4 %add = add nsw i32 %tmp2, 1 - store i32 %add, i32* %arrayidx5, align 4 + store i32 %add, ptr %arrayidx5, align 4 br label %for.body.3 for.body.3: - %arrayidx7 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp3 = load i32, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp3 = load i32, ptr %arrayidx7, align 4 br label %for.body.4 for.body.4: - %arrayidx10 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp4 = load i32, i32* %arrayidx10, align 4 + %arrayidx10 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp4 = load i32, ptr %arrayidx10, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/reduction_alternating_base.ll b/polly/test/ScopInfo/reduction_alternating_base.ll index af4a14d45bd3..854e28023a3e 100644 --- a/polly/test/ScopInfo/reduction_alternating_base.ll +++ b/polly/test/ScopInfo/reduction_alternating_base.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %for.cond @@ -24,10 +24,10 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %rem = srem i32 %i.0, 2 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %rem - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %rem + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/reduction_chain_partially_outside_the_scop.ll b/polly/test/ScopInfo/reduction_chain_partially_outside_the_scop.ll index 8f978cd8bea7..fb0274972082 100644 --- a/polly/test/ScopInfo/reduction_chain_partially_outside_the_scop.ll +++ b/polly/test/ScopInfo/reduction_chain_partially_outside_the_scop.ll @@ -13,10 +13,10 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" @c = common global i32 0, align 4 @d = common global i32 0, align 4 -define void @loads_outside_scop(i32* %sum) { +define void @loads_outside_scop(ptr %sum) { entry: - %tmp = load i32, i32* @c, align 4 - %tmp1 = load i32, i32* @d, align 4 + %tmp = load i32, ptr @c, align 4 + %tmp1 = load i32, ptr @d, align 4 br label %for.cond for.cond: ; preds = %for.inc, %entry @@ -26,7 +26,7 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %add = add nsw i32 %tmp, %tmp1 - store i32 %add, i32* %sum, align 4 + store i32 %add, ptr %sum, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -38,10 +38,10 @@ for.end: ; preds = %for.cond } -define void @binop_outside_scop(i32* %sum) { +define void @binop_outside_scop(ptr %sum) { entry: - %tmp = load i32, i32* @c, align 4 - %tmp1 = load i32, i32* @d, align 4 + %tmp = load i32, ptr @c, align 4 + %tmp1 = load i32, ptr @d, align 4 %add = add nsw i32 %tmp, %tmp1 br label %for.cond @@ -51,7 +51,7 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - store i32 %add, i32* %sum, align 4 + store i32 %add, ptr %sum, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/reduction_disabled_multiplicative.ll b/polly/test/ScopInfo/reduction_disabled_multiplicative.ll index ef51a0fd3ec1..7120740fbf34 100644 --- a/polly/test/ScopInfo/reduction_disabled_multiplicative.ll +++ b/polly/test/ScopInfo/reduction_disabled_multiplicative.ll @@ -34,13 +34,13 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %mul = mul nsw i32 %i1.0, 3 - %tmp = load i32, i32* @sum, align 4 + %tmp = load i32, ptr @sum, align 4 %add = add nsw i32 %tmp, %mul - store i32 %add, i32* @sum, align 4 + store i32 %add, ptr @sum, align 4 %add2 = add nsw i32 %i1.0, 3 - %tmp1 = load i32, i32* @prod, align 4 + %tmp1 = load i32, ptr @prod, align 4 %mul3 = mul nsw i32 %tmp1, %add2 - store i32 %mul3, i32* @prod, align 4 + store i32 %mul3, ptr @prod, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/reduction_escaping_intermediate.ll b/polly/test/ScopInfo/reduction_escaping_intermediate.ll index 9d450b98afbe..dde09108ecc4 100644 --- a/polly/test/ScopInfo/reduction_escaping_intermediate.ll +++ b/polly/test/ScopInfo/reduction_escaping_intermediate.ll @@ -18,7 +18,7 @@ ; CHECK: escape target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32 %N, i32* noalias %sums, i32* noalias %escape) { +define void @f(i32 %N, ptr noalias %sums, ptr noalias %escape) { entry: br label %for.cond @@ -36,14 +36,14 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %sums, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sums, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 5 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 %sub = sub nsw i32 %N, %i.0 %add5 = add nsw i32 %sub, %j.0 - %arrayidx6 = getelementptr inbounds i32, i32* %escape, i32 %add5 - store i32 %add, i32* %arrayidx6, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %escape, i32 %add5 + store i32 %add, ptr %arrayidx6, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/ScopInfo/reduction_escaping_intermediate_2.ll b/polly/test/ScopInfo/reduction_escaping_intermediate_2.ll index 4c616e08c302..702fc56025d9 100644 --- a/polly/test/ScopInfo/reduction_escaping_intermediate_2.ll +++ b/polly/test/ScopInfo/reduction_escaping_intermediate_2.ll @@ -22,7 +22,7 @@ ; CHECK: escape target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32 %N, i32* noalias %sums, i32* noalias %escape) { +define void @f(i32 %N, ptr noalias %sums, ptr noalias %escape) { entry: br label %for.cond @@ -40,20 +40,20 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %sums, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sums, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 5 - store i32 %add, i32* %arrayidx, align 4 - %arrayidx4 = getelementptr inbounds i32, i32* %escape, i32 %i.0 - %tmp2 = load i32, i32* %arrayidx4, align 4 + store i32 %add, ptr %arrayidx, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %escape, i32 %i.0 + %tmp2 = load i32, ptr %arrayidx4, align 4 %sub = add nsw i32 %i.0, -1 - %arrayidx5 = getelementptr inbounds i32, i32* %sums, i32 %sub - %tmp3 = load i32, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %sums, i32 %sub + %tmp3 = load i32, ptr %arrayidx5, align 4 %add6 = add nsw i32 %tmp2, %tmp3 %sub7 = sub nsw i32 %N, %i.0 %add8 = add nsw i32 %sub7, %j.0 - %arrayidx9 = getelementptr inbounds i32, i32* %escape, i32 %add8 - store i32 %add6, i32* %arrayidx9, align 4 + %arrayidx9 = getelementptr inbounds i32, ptr %escape, i32 %add8 + store i32 %add6, ptr %arrayidx9, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/ScopInfo/reduction_invalid_different_operators.ll b/polly/test/ScopInfo/reduction_invalid_different_operators.ll index 2f69ebf8895b..f47919dcad99 100644 --- a/polly/test/ScopInfo/reduction_invalid_different_operators.ll +++ b/polly/test/ScopInfo/reduction_invalid_different_operators.ll @@ -21,30 +21,30 @@ entry: br label %entry.split entry.split: ; preds = %entry - store i32 0, i32* %sum.0 - store i32 0, i32* %sth.0 + store i32 0, ptr %sum.0 + store i32 0, ptr %sth.0 br label %for.cond for.cond: ; preds = %for.cond, %entry.split %i.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ] - %sth.0.reload = load i32, i32* %sth.0 - %sum.0.reload = load i32, i32* %sum.0 + %sth.0.reload = load i32, ptr %sth.0 + %sum.0.reload = load i32, ptr %sum.0 %exitcond = icmp ne i32 %i.0, 1024 %mul = mul nsw i32 %sth.0.reload, %sth.0.reload %add1 = add nsw i32 %sth.0.reload, %mul %tmp = mul i32 %sum.0.reload, 5 - store i32 %tmp, i32* %sum.0 - %sum.1.reload = load i32, i32* %sum.0 + store i32 %tmp, ptr %sum.0 + %sum.1.reload = load i32, ptr %sum.0 %mul3 = add i32 %sum.1.reload, 25 %add2 = add nsw i32 %add1, %sth.0.reload %inc = add nsw i32 %i.0, 1 - store i32 %mul3, i32* %sum.0 - store i32 %add2, i32* %sth.0 + store i32 %mul3, ptr %sum.0 + store i32 %add2, ptr %sth.0 br i1 %exitcond, label %for.cond, label %for.end for.end: ; preds = %for.cond - %sum.0.reload.2 = load i32, i32* %sum.0 - %sth.0.reload.2 = load i32, i32* %sth.0 + %sum.0.reload.2 = load i32, ptr %sum.0 + %sth.0.reload.2 = load i32, ptr %sth.0 %add4 = add nsw i32 %sum.0.reload.2, %sth.0.reload.2 ret i32 %add4 } diff --git a/polly/test/ScopInfo/reduction_invalid_overlapping_accesses.ll b/polly/test/ScopInfo/reduction_invalid_overlapping_accesses.ll index 1b76be3899c0..be1d7b5bbbd9 100644 --- a/polly/test/ScopInfo/reduction_invalid_overlapping_accesses.ll +++ b/polly/test/ScopInfo/reduction_invalid_overlapping_accesses.ll @@ -14,7 +14,7 @@ ; CHECK-NOT: Reduction Type: * target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sums) { +define void @f(ptr %sums) { entry: br label %for.cond @@ -32,15 +32,15 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %sums, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sums, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 5 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 %add4 = add nsw i32 %i.0, 10 - %arrayidx5 = getelementptr inbounds i32, i32* %sums, i32 %add4 - %tmp2 = load i32, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %sums, i32 %add4 + %tmp2 = load i32, ptr %arrayidx5, align 4 %mul = mul nsw i32 %tmp2, 5 - store i32 %mul, i32* %arrayidx5, align 4 + store i32 %mul, ptr %arrayidx5, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/ScopInfo/reduction_multiple_loops_array_sum.ll b/polly/test/ScopInfo/reduction_multiple_loops_array_sum.ll index b03a091b6e1b..8d20fa13ffe5 100644 --- a/polly/test/ScopInfo/reduction_multiple_loops_array_sum.ll +++ b/polly/test/ScopInfo/reduction_multiple_loops_array_sum.ll @@ -30,7 +30,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* noalias %A, i32* noalias %sum) { +define void @f(ptr noalias %A, ptr noalias %sum) { entry: br label %for.cond @@ -40,9 +40,9 @@ for.cond: ; preds = %for.inc6, %entry br i1 %exitcond1, label %for.body, label %for.end8 for.body: ; preds = %for.cond - %tmp = load i32, i32* %sum, align 4 + %tmp = load i32, ptr %sum, align 4 %mul = mul nsw i32 %tmp, 7 - store i32 %mul, i32* %sum, align 4 + store i32 %mul, ptr %sum, align 4 br label %for.cond1 for.cond1: ; preds = %for.inc, %for.body @@ -52,11 +52,11 @@ for.cond1: ; preds = %for.inc, %for.body for.body3: ; preds = %for.cond1 %add = add nsw i32 %i.0, %j.0 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %add - %tmp2 = load i32, i32* %arrayidx, align 4 - %tmp3 = load i32, i32* %sum, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %add + %tmp2 = load i32, ptr %arrayidx, align 4 + %tmp3 = load i32, ptr %sum, align 4 %add4 = add nsw i32 %tmp3, %tmp2 - store i32 %add4, i32* %sum, align 4 + store i32 %add4, ptr %sum, align 4 br label %for.inc for.inc: ; preds = %for.body3 @@ -64,9 +64,9 @@ for.inc: ; preds = %for.body3 br label %for.cond1 for.end: ; preds = %for.cond1 - %tmp4 = load i32, i32* %sum, align 4 + %tmp4 = load i32, ptr %sum, align 4 %mul5 = mul nsw i32 %tmp4, 5 - store i32 %mul5, i32* %sum, align 4 + store i32 %mul5, ptr %sum, align 4 br label %for.inc6 for.inc6: ; preds = %for.end diff --git a/polly/test/ScopInfo/reduction_multiple_loops_array_sum_1.ll b/polly/test/ScopInfo/reduction_multiple_loops_array_sum_1.ll index c2384887edef..782332b56aad 100644 --- a/polly/test/ScopInfo/reduction_multiple_loops_array_sum_1.ll +++ b/polly/test/ScopInfo/reduction_multiple_loops_array_sum_1.ll @@ -30,43 +30,43 @@ ; } target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define i32 @f(i32* noalias %A) { +define i32 @f(ptr noalias %A) { entry: %sum.04.reg2mem = alloca i32 %sum.12.reg2mem = alloca i32 br label %entry.split entry.split: ; preds = %entry - store i32 0, i32* %sum.04.reg2mem + store i32 0, ptr %sum.04.reg2mem br label %for.body for.body: ; preds = %for.inc5, %entry.split %indvars.iv23 = phi i64 [ 0, %entry.split ], [ %3, %for.inc5 ] - %sum.04.reload = load i32, i32* %sum.04.reg2mem + %sum.04.reload = load i32, ptr %sum.04.reg2mem %mul = mul nsw i32 %sum.04.reload, 7 - store i32 %mul, i32* %sum.12.reg2mem + store i32 %mul, ptr %sum.12.reg2mem br label %for.inc for.inc: ; preds = %for.inc, %for.body %indvars.iv1 = phi i64 [ 0, %for.body ], [ %1, %for.inc ] - %sum.12.reload = load i32, i32* %sum.12.reg2mem + %sum.12.reload = load i32, ptr %sum.12.reg2mem %0 = add i64 %indvars.iv23, %indvars.iv1 - %arrayidx = getelementptr i32, i32* %A, i64 %0 - %tmp5 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr i32, ptr %A, i64 %0 + %tmp5 = load i32, ptr %arrayidx, align 4 %add4 = add nsw i32 %tmp5, %sum.12.reload %1 = add nuw nsw i64 %indvars.iv1, 1 %exitcond1 = icmp eq i64 %1, 100 - store i32 %add4, i32* %sum.12.reg2mem + store i32 %add4, ptr %sum.12.reg2mem br i1 %exitcond1, label %for.inc5, label %for.inc for.inc5: ; preds = %for.inc - %2 = load i32, i32* %sum.12.reg2mem + %2 = load i32, ptr %sum.12.reg2mem %3 = add nuw nsw i64 %indvars.iv23, 1 %exitcond2 = icmp eq i64 %3, 100 - store i32 %2, i32* %sum.04.reg2mem + store i32 %2, ptr %sum.04.reg2mem br i1 %exitcond2, label %for.end7, label %for.body for.end7: ; preds = %for.inc5 - %4 = load i32, i32* %sum.04.reg2mem + %4 = load i32, ptr %sum.04.reg2mem ret i32 %4 } diff --git a/polly/test/ScopInfo/reduction_multiple_simple_binary.ll b/polly/test/ScopInfo/reduction_multiple_simple_binary.ll index 16393a4c480f..0f1a3ad90dac 100644 --- a/polly/test/ScopInfo/reduction_multiple_simple_binary.ll +++ b/polly/test/ScopInfo/reduction_multiple_simple_binary.ll @@ -47,7 +47,7 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" @prod = common global i32 0, align 4 @last = common global i32 0, align 4 -define void @f(i32* noalias %A) { +define void @f(ptr noalias %A) { entry: br label %for.cond @@ -58,35 +58,35 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %add = add nsw i32 %i1.0, 1 - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %add - %tmp = load i32, i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i32 %i1.0 - %tmp1 = load i32, i32* %arrayidx2, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %add + %tmp = load i32, ptr %arrayidx, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i32 %i1.0 + %tmp1 = load i32, ptr %arrayidx2, align 4 %add3 = add nsw i32 %tmp, %tmp1 - store i32 %add3, i32* @first, align 4 + store i32 %add3, ptr @first, align 4 %mul = mul nsw i32 %i1.0, 3 - %tmp2 = load i32, i32* @sum, align 4 + %tmp2 = load i32, ptr @sum, align 4 %add4 = add nsw i32 %tmp2, %mul - store i32 %add4, i32* @sum, align 4 + store i32 %add4, ptr @sum, align 4 %sub = add nsw i32 %i1.0, -1 - %arrayidx5 = getelementptr inbounds i32, i32* %A, i32 %sub - %tmp3 = load i32, i32* %arrayidx5, align 4 - %arrayidx6 = getelementptr inbounds i32, i32* %A, i32 %i1.0 - %tmp4 = load i32, i32* %arrayidx6, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %A, i32 %sub + %tmp3 = load i32, ptr %arrayidx5, align 4 + %arrayidx6 = getelementptr inbounds i32, ptr %A, i32 %i1.0 + %tmp4 = load i32, ptr %arrayidx6, align 4 %add7 = add nsw i32 %tmp3, %tmp4 - store i32 %add7, i32* @middle, align 4 + store i32 %add7, ptr @middle, align 4 %add8 = add nsw i32 %i1.0, 3 - %tmp5 = load i32, i32* @prod, align 4 + %tmp5 = load i32, ptr @prod, align 4 %mul9 = mul nsw i32 %tmp5, %add8 - store i32 %mul9, i32* @prod, align 4 + store i32 %mul9, ptr @prod, align 4 %sub10 = add nsw i32 %i1.0, -1 - %arrayidx11 = getelementptr inbounds i32, i32* %A, i32 %sub10 - %tmp6 = load i32, i32* %arrayidx11, align 4 + %arrayidx11 = getelementptr inbounds i32, ptr %A, i32 %sub10 + %tmp6 = load i32, ptr %arrayidx11, align 4 %add12 = add nsw i32 %i1.0, 1 - %arrayidx13 = getelementptr inbounds i32, i32* %A, i32 %add12 - %tmp7 = load i32, i32* %arrayidx13, align 4 + %arrayidx13 = getelementptr inbounds i32, ptr %A, i32 %add12 + %tmp7 = load i32, ptr %arrayidx13, align 4 %add14 = add nsw i32 %tmp6, %tmp7 - store i32 %add14, i32* @last, align 4 + store i32 %add14, ptr @last, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/reduction_non_overlapping_chains.ll b/polly/test/ScopInfo/reduction_non_overlapping_chains.ll index 350014e57150..4e3f841cd8e1 100644 --- a/polly/test/ScopInfo/reduction_non_overlapping_chains.ll +++ b/polly/test/ScopInfo/reduction_non_overlapping_chains.ll @@ -15,7 +15,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sums) { +define void @f(ptr %sums) { entry: br label %for.cond @@ -33,15 +33,15 @@ for.cond1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body3, label %for.end for.body3: ; preds = %for.cond1 - %arrayidx = getelementptr inbounds i32, i32* %sums, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sums, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, 5 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 %add4 = add nsw i32 %i.0, 1024 - %arrayidx5 = getelementptr inbounds i32, i32* %sums, i32 %add4 - %tmp2 = load i32, i32* %arrayidx5, align 4 + %arrayidx5 = getelementptr inbounds i32, ptr %sums, i32 %add4 + %tmp2 = load i32, ptr %arrayidx5, align 4 %mul = mul nsw i32 %tmp2, 5 - store i32 %mul, i32* %arrayidx5, align 4 + store i32 %mul, ptr %arrayidx5, align 4 br label %for.inc for.inc: ; preds = %for.body3 diff --git a/polly/test/ScopInfo/reduction_only_reduction_like_access.ll b/polly/test/ScopInfo/reduction_only_reduction_like_access.ll index 3b6ffa218d30..0c61d63a2d45 100644 --- a/polly/test/ScopInfo/reduction_only_reduction_like_access.ll +++ b/polly/test/ScopInfo/reduction_only_reduction_like_access.ll @@ -8,7 +8,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %for.cond @@ -19,11 +19,11 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %sub = sub nsw i32 99, %i.0 - %arrayidx = getelementptr inbounds i32, i32* %sum, i32 %sub - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %sum, i32 %sub + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %i.0 - %arrayidx1 = getelementptr inbounds i32, i32* %sum, i32 %i.0 - store i32 %add, i32* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds i32, ptr %sum, i32 %i.0 + store i32 %add, ptr %arrayidx1, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/reduction_simple_fp.ll b/polly/test/ScopInfo/reduction_simple_fp.ll index 5956359cba1b..ba0a034a17e3 100644 --- a/polly/test/ScopInfo/reduction_simple_fp.ll +++ b/polly/test/ScopInfo/reduction_simple_fp.ll @@ -11,7 +11,7 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f_no_fast_math(float* %sum) { +define void @f_no_fast_math(ptr %sum) { entry: br label %for.cond @@ -24,9 +24,9 @@ for.body: ; preds = %for.cond %conv = sitofp i32 %i.0 to float %pi = fptrunc double 3.41 to float %mul = fmul float %conv, %pi - %tmp = load float, float* %sum, align 4 + %tmp = load float, ptr %sum, align 4 %add = fadd float %tmp, %mul - store float %add, float* %sum, align 4 + store float %add, ptr %sum, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -37,7 +37,7 @@ for.end: ; preds = %for.cond ret void } -define void @f_fast_math(float* %sum) { +define void @f_fast_math(ptr %sum) { entry: br label %for.cond @@ -50,9 +50,9 @@ for.body: ; preds = %for.cond %conv = sitofp i32 %i.0 to float %pi = fptrunc double 3.41 to float %mul = fmul fast float %conv, %pi - %tmp = load float, float* %sum, align 4 + %tmp = load float, ptr %sum, align 4 %add = fadd fast float %tmp, %mul - store float %add, float* %sum, align 4 + store float %add, ptr %sum, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/reduction_simple_w_constant.ll b/polly/test/ScopInfo/reduction_simple_w_constant.ll index 6ffa5a638020..dc1f8550602d 100644 --- a/polly/test/ScopInfo/reduction_simple_w_constant.ll +++ b/polly/test/ScopInfo/reduction_simple_w_constant.ll @@ -8,16 +8,16 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %for.cond for.cond: ; preds = %for.cond, %entry %i1.0 = phi i32 [ 0, %entry ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %add = add nsw i32 %sum.reload, 3 %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end diff --git a/polly/test/ScopInfo/reduction_simple_w_iv.ll b/polly/test/ScopInfo/reduction_simple_w_iv.ll index f322d956868e..b6c3229d08d5 100644 --- a/polly/test/ScopInfo/reduction_simple_w_iv.ll +++ b/polly/test/ScopInfo/reduction_simple_w_iv.ll @@ -8,17 +8,17 @@ ; } target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f(i32* %sum) { +define void @f(ptr %sum) { entry: br label %for.cond for.cond: ; preds = %for.cond, %entr %i1.0 = phi i32 [ 0, %entry ], [ %inc, %for.cond ] - %sum.reload = load i32, i32* %sum + %sum.reload = load i32, ptr %sum %mul = mul nsw i32 %i1.0, 3 %add = add nsw i32 %sum.reload, %mul %inc = add nsw i32 %i1.0, 1 - store i32 %add, i32* %sum + store i32 %add, ptr %sum %cmp = icmp slt i32 %i1.0, 100 br i1 %cmp, label %for.cond, label %for.end diff --git a/polly/test/ScopInfo/reduction_two_identical_reads.ll b/polly/test/ScopInfo/reduction_two_identical_reads.ll index a74b7556786b..19d45a5f4ea9 100644 --- a/polly/test/ScopInfo/reduction_two_identical_reads.ll +++ b/polly/test/ScopInfo/reduction_two_identical_reads.ll @@ -14,7 +14,7 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" -define void @f_one_load_case(i32* %A) { +define void @f_one_load_case(ptr %A) { entry: br label %for.cond @@ -24,11 +24,11 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp, %tmp - %arrayidx2 = getelementptr inbounds i32, i32* %A, i32 %i.0 - store i32 %add, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i32 %i.0 + store i32 %add, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -39,7 +39,7 @@ for.end: ; preds = %for.cond ret void } -define void @f_two_loads_case(i32* %A) { +define void @f_two_loads_case(ptr %A) { entry: br label %for.cond @@ -49,13 +49,13 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmp = load i32, i32* %arrayidx, align 4 - %arrayidxCopy = getelementptr inbounds i32, i32* %A, i32 %i.0 - %tmpCopy = load i32, i32* %arrayidxCopy, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmp = load i32, ptr %arrayidx, align 4 + %arrayidxCopy = getelementptr inbounds i32, ptr %A, i32 %i.0 + %tmpCopy = load i32, ptr %arrayidxCopy, align 4 %add = add nsw i32 %tmp, %tmpCopy - %arrayidx2 = getelementptr inbounds i32, i32* %A, i32 %i.0 - store i32 %add, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i32 %i.0 + store i32 %add, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/redundant_parameter_constraint.ll b/polly/test/ScopInfo/redundant_parameter_constraint.ll index 015b84fae9ed..c9d912191eed 100644 --- a/polly/test/ScopInfo/redundant_parameter_constraint.ll +++ b/polly/test/ScopInfo/redundant_parameter_constraint.ll @@ -12,7 +12,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @wraps(i32* %A, i32 %p, i16 signext %q, i8 signext %r1, i8 signext %r2) { +define void @wraps(ptr %A, i32 %p, i16 signext %q, i8 signext %r1, i8 signext %r2) { entry: br label %for.cond @@ -25,13 +25,13 @@ for.body: ; preds = %for.cond %conv3 = sext i8 %r1 to i64 %conv4 = sext i8 %r2 to i64 %add = add nsw i64 %conv3, %conv4 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %add - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %add + %tmp = load i32, ptr %arrayidx, align 4 %conv5 = sext i16 %q to i32 %add6 = add nsw i32 %conv5, %p %idxprom7 = sext i32 %add6 to i64 - %arrayidx8 = getelementptr inbounds i32, i32* %A, i64 %idxprom7 - store i32 %tmp, i32* %arrayidx8, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %A, i64 %idxprom7 + store i32 %tmp, ptr %arrayidx8, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/region-with-instructions.ll b/polly/test/ScopInfo/region-with-instructions.ll index 111a2e3c4270..39d4a72a7814 100644 --- a/polly/test/ScopInfo/region-with-instructions.ll +++ b/polly/test/ScopInfo/region-with-instructions.ll @@ -25,16 +25,16 @@ ; CHECK: MayWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK: [tmp44, tmp9] -> { Stmt_bb48__TO__bb56[i0] -> MemRef_A[i0] }; ; CHECK: Instructions { -; CHECK: %tmp51 = load i64, i64* %tmp50, align 8 +; CHECK: %tmp51 = load i64, ptr %tmp50, align 8 ; CHECK: %tmp52 = and i64 %tmp51, %tmp26 ; CHECK: %tmp53 = icmp eq i64 %tmp52, %tmp26 -; CHECK: store i64 42, i64* %tmp50, align 8 +; CHECK: store i64 42, ptr %tmp50, align 8 ; CHECK: } ; CHECK: } target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @quux(i32 %arg, i32 %arg1, i64* %A, i64 %tmp9, i64 %tmp24, i64 %tmp14, i64 %tmp22, i64 %tmp44) { +define void @quux(i32 %arg, i32 %arg1, ptr %A, i64 %tmp9, i64 %tmp24, i64 %tmp14, i64 %tmp22, i64 %tmp44) { bb: %tmp26 = or i64 %tmp22, %tmp24 br label %bb39 @@ -49,16 +49,16 @@ bb46: ; preds = %bb39 bb48: ; preds = %bb56, %bb46 %tmp49 = phi i64 [ 0, %bb46 ], [ %tmp57, %bb56 ] - %tmp50 = getelementptr inbounds i64, i64* %A, i64 %tmp49 - %tmp51 = load i64, i64* %tmp50, align 8 + %tmp50 = getelementptr inbounds i64, ptr %A, i64 %tmp49 + %tmp51 = load i64, ptr %tmp50, align 8 %tmp52 = and i64 %tmp51, %tmp26 %tmp53 = icmp eq i64 %tmp52, %tmp26 - store i64 42, i64* %tmp50, align 8 + store i64 42, ptr %tmp50, align 8 br i1 %tmp53, label %bb54, label %bb56 bb54: ; preds = %bb48 %tmp55 = xor i64 %tmp51, %tmp47 - store i64 %tmp55, i64* %tmp50, align 8 + store i64 %tmp55, ptr %tmp50, align 8 br label %bb56 bb56: ; preds = %bb54, %bb48 diff --git a/polly/test/ScopInfo/remarks.ll b/polly/test/ScopInfo/remarks.ll index 3f989c5cfe4a..dcdeb58c7694 100644 --- a/polly/test/ScopInfo/remarks.ll +++ b/polly/test/ScopInfo/remarks.ll @@ -41,13 +41,13 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @.str = private unnamed_addr constant [8 x i8] c"Printf!\00", align 1 -define void @valid(i32* %A, i32* %B, i32 %N, i32 %M, [100 x i32]* %C, i32 %Debug) #0 !dbg !4 { +define void @valid(ptr %A, ptr %B, i32 %N, i32 %M, ptr %C, i32 %Debug) #0 !dbg !4 { entry: - call void @llvm.dbg.value(metadata i32* %A, i64 0, metadata !23, metadata !24), !dbg !25 - call void @llvm.dbg.value(metadata i32* %B, i64 0, metadata !26, metadata !24), !dbg !27 + call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !23, metadata !24), !dbg !25 + call void @llvm.dbg.value(metadata ptr %B, i64 0, metadata !26, metadata !24), !dbg !27 call void @llvm.dbg.value(metadata i32 %N, i64 0, metadata !28, metadata !24), !dbg !29 call void @llvm.dbg.value(metadata i32 %M, i64 0, metadata !30, metadata !24), !dbg !31 - call void @llvm.dbg.value(metadata [100 x i32]* %C, i64 0, metadata !32, metadata !24), !dbg !33 + call void @llvm.dbg.value(metadata ptr %C, i64 0, metadata !32, metadata !24), !dbg !33 call void @llvm.dbg.value(metadata i32 %Debug, i64 0, metadata !34, metadata !24), !dbg !35 br label %entry.split @@ -57,8 +57,7 @@ entry.split: br i1 %cmp, label %if.then, label %if.end, !dbg !39 if.then: ; preds = %entry - %arrayidx1 = getelementptr inbounds [100 x i32], [100 x i32]* %C, i64 0, i64 0, !dbg !40 - store i32 0, i32* %arrayidx1, align 4, !dbg !41 + store i32 0, ptr %C, align 4, !dbg !41 br label %if.end, !dbg !40 if.end: ; preds = %if.then, %entry @@ -84,16 +83,16 @@ for.cond.3: ; preds = %for.inc, %for.body for.body.5: ; preds = %for.cond.3 %tmp8 = mul i64 %indvars.iv3, %M64, !dbg !59 %tmp9 = add i64 %tmp8, %indvars.iv, !dbg !61 - %arrayidx7 = getelementptr inbounds i32, i32* %A, i64 %tmp9, !dbg !62 - %tmp10 = load i32, i32* %arrayidx7, align 4, !dbg !62 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i64 %tmp9, !dbg !62 + %tmp10 = load i32, ptr %arrayidx7, align 4, !dbg !62 %tmp11 = add i64 %indvars.iv3, %indvars.iv, !dbg !63 - %arrayidx10 = getelementptr inbounds i32, i32* %B, i64 %tmp11, !dbg !64 - %tmp12 = load i32, i32* %arrayidx10, align 4, !dbg !64 + %arrayidx10 = getelementptr inbounds i32, ptr %B, i64 %tmp11, !dbg !64 + %tmp12 = load i32, ptr %arrayidx10, align 4, !dbg !64 %add11 = add i32 %tmp10, %tmp12, !dbg !65 - %arrayidx15 = getelementptr inbounds [100 x i32], [100 x i32]* %C, i64 %indvars.iv3, i64 %indvars.iv, !dbg !66 - %tmp13 = load i32, i32* %arrayidx15, align 4, !dbg !67 + %arrayidx15 = getelementptr inbounds [100 x i32], ptr %C, i64 %indvars.iv3, i64 %indvars.iv, !dbg !66 + %tmp13 = load i32, ptr %arrayidx15, align 4, !dbg !67 %add16 = add i32 %tmp13, %add11, !dbg !67 - store i32 %add16, i32* %arrayidx15, align 4, !dbg !67 + store i32 %add16, ptr %arrayidx15, align 4, !dbg !67 br label %for.inc, !dbg !68 for.inc: ; preds = %for.body.5 @@ -106,7 +105,7 @@ for.end: ; preds = %for.cond.3 br i1 %tobool, label %if.end.18, label %if.then.17, !dbg !72 if.then.17: ; preds = %for.end - %call = call i32 (i8*, ...) @printf(i8* nonnull getelementptr inbounds ([8 x i8], [8 x i8]* @.str, i64 0, i64 0)) #3, !dbg !73 + %call = call i32 (ptr, ...) @printf(ptr nonnull @.str) #3, !dbg !73 br label %if.end.18, !dbg !73 if.end.18: ; preds = %for.end, %if.then.17 @@ -123,11 +122,11 @@ for.end.21: ; preds = %for.cond declare void @llvm.dbg.declare(metadata, metadata, metadata) #1 -declare i32 @printf(i8*, ...) #2 +declare i32 @printf(ptr, ...) #2 -define void @invalid0(i32* %A) #0 !dbg !13 { +define void @invalid0(ptr %A) #0 !dbg !13 { entry: - call void @llvm.dbg.value(metadata i32* %A, i64 0, metadata !77, metadata !24), !dbg !78 + call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !77, metadata !24), !dbg !78 call void @llvm.dbg.value(metadata i32 0, i64 0, metadata !79, metadata !24), !dbg !81 br label %for.cond, !dbg !82 @@ -146,12 +145,12 @@ for.cond.1: ; preds = %for.inc, %for.body br i1 %exitcond, label %for.body.3, label %for.end, !dbg !90 for.body.3: ; preds = %for.cond.1 - %tmp = load i32, i32* %A, align 4, !dbg !93 + %tmp = load i32, ptr %A, align 4, !dbg !93 %tobool = icmp eq i32 %tmp, 0, !dbg !93 br i1 %tobool, label %if.end, label %if.then, !dbg !95 if.then: ; preds = %for.body.3 - store i32 0, i32* %A, align 4, !dbg !96 + store i32 0, ptr %A, align 4, !dbg !96 br label %if.end, !dbg !97 if.end: ; preds = %for.body.3, %if.then diff --git a/polly/test/ScopInfo/required-invariant-loop-bounds.ll b/polly/test/ScopInfo/required-invariant-loop-bounds.ll index cc6c5ac7eafa..248acbea6e68 100644 --- a/polly/test/ScopInfo/required-invariant-loop-bounds.ll +++ b/polly/test/ScopInfo/required-invariant-loop-bounds.ll @@ -31,7 +31,7 @@ entry: for.cond: ; preds = %for.inc.6, %entry %i.0 = phi i64 [ 0, %entry ], [ %inc7, %for.inc.6 ] - %bounds0 = load i64, i64* getelementptr inbounds ([2 x i64], [2 x i64]* @bounds, i64 0, i64 0), align 16 + %bounds0 = load i64, ptr @bounds, align 16 %cmp = icmp sgt i64 %i.0, %bounds0 br i1 %cmp, label %for.end.8, label %for.body @@ -40,17 +40,17 @@ for.body: ; preds = %for.cond for.cond.1: ; preds = %for.inc, %for.body %j.0 = phi i64 [ 0, %for.body ], [ %inc, %for.inc ] - %bounds1 = load i64, i64* getelementptr inbounds ([2 x i64], [2 x i64]* @bounds, i64 0, i64 1), align 8 + %bounds1 = load i64, ptr getelementptr inbounds ([2 x i64], ptr @bounds, i64 0, i64 1), align 8 %cmp2 = icmp sgt i64 %j.0, %bounds1 br i1 %cmp2, label %for.end, label %for.body.3 for.body.3: ; preds = %for.cond.1 %add = add nsw i64 %i.0, %j.0 %conv = sitofp i64 %add to double - %arrayidx4 = getelementptr inbounds [1000 x [1000 x double]], [1000 x [1000 x double]]* @A, i64 0, i64 %i.0, i64 %j.0 - %tmp2 = load double, double* %arrayidx4, align 8 + %arrayidx4 = getelementptr inbounds [1000 x [1000 x double]], ptr @A, i64 0, i64 %i.0, i64 %j.0 + %tmp2 = load double, ptr %arrayidx4, align 8 %add5 = fadd double %tmp2, %conv - store double %add5, double* %arrayidx4, align 8 + store double %add5, ptr %arrayidx4, align 8 br label %for.inc for.inc: ; preds = %for.body.3 diff --git a/polly/test/ScopInfo/restriction_in_dead_block.ll b/polly/test/ScopInfo/restriction_in_dead_block.ll index df8c9cb84835..81d9b96be419 100644 --- a/polly/test/ScopInfo/restriction_in_dead_block.ll +++ b/polly/test/ScopInfo/restriction_in_dead_block.ll @@ -17,7 +17,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i8* %A, i8 signext %N) { +define void @f(ptr %A, i8 signext %N) { entry: br label %for.cond @@ -37,13 +37,13 @@ if.then: ; preds = %for.body br i1 %cmp7, label %if.then9, label %if.end10 if.then9: ; preds = %if.end - %arrayidx = getelementptr inbounds i8, i8* %A, i8 %indvars.iv - store i8 1, i8* %arrayidx, align 1 + %arrayidx = getelementptr inbounds i8, ptr %A, i8 %indvars.iv + store i8 1, ptr %arrayidx, align 1 br label %if.end10 if.end10: ; preds = %if.then9, %if.end - %arrayidx12 = getelementptr inbounds i8, i8* %A, i8 %indvars.iv - store i8 0, i8* %arrayidx12, align 1 + %arrayidx12 = getelementptr inbounds i8, ptr %A, i8 %indvars.iv + store i8 0, ptr %arrayidx12, align 1 br label %for.inc for.inc: ; preds = %if.end10, %if.then diff --git a/polly/test/ScopInfo/run-time-check-many-array-disjuncts.ll b/polly/test/ScopInfo/run-time-check-many-array-disjuncts.ll index 857853d4a094..d36da2b2becf 100644 --- a/polly/test/ScopInfo/run-time-check-many-array-disjuncts.ll +++ b/polly/test/ScopInfo/run-time-check-many-array-disjuncts.ll @@ -12,47 +12,45 @@ target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" target triple = "aarch64--linux-android" -%0 = type { i8*, i64, i64, i64, i64, i64, i64 } +%0 = type { ptr, i64, i64, i64, i64, i64, i64 } -define void @_Z1fR1SS0_Ph(%0* nocapture readonly dereferenceable(56) %arg, %0* nocapture readonly dereferenceable(56) %arg1, i8* nocapture readonly %arg2) { +define void @_Z1fR1SS0_Ph(ptr nocapture readonly dereferenceable(56) %arg, ptr nocapture readonly dereferenceable(56) %arg1, ptr nocapture readonly %arg2) { bb: - %tmp = getelementptr inbounds %0, %0* %arg1, i64 0, i32 1 - %tmp3 = getelementptr inbounds %0, %0* %arg, i64 0, i32 0 - %tmp4 = load i8*, i8** %tmp3, align 8 - %tmp5 = getelementptr inbounds %0, %0* %arg, i64 0, i32 4 - %tmp6 = load i64, i64* %tmp5, align 8 - %tmp7 = getelementptr inbounds %0, %0* %arg, i64 0, i32 1 - %tmp8 = load i64, i64* %tmp7, align 8 + %tmp = getelementptr inbounds %0, ptr %arg1, i64 0, i32 1 + %tmp4 = load ptr, ptr %arg, align 8 + %tmp5 = getelementptr inbounds %0, ptr %arg, i64 0, i32 4 + %tmp6 = load i64, ptr %tmp5, align 8 + %tmp7 = getelementptr inbounds %0, ptr %arg, i64 0, i32 1 + %tmp8 = load i64, ptr %tmp7, align 8 %tmp9 = mul i64 %tmp8, %tmp6 - %tmp10 = getelementptr inbounds i8, i8* %tmp4, i64 %tmp9 - %tmp11 = getelementptr inbounds %0, %0* %arg, i64 0, i32 3 - %tmp12 = load i64, i64* %tmp11, align 8 - %tmp13 = getelementptr inbounds i8, i8* %tmp10, i64 %tmp12 - %tmp14 = getelementptr inbounds %0, %0* %arg, i64 0, i32 6 - %tmp15 = load i64, i64* %tmp14, align 8 + %tmp10 = getelementptr inbounds i8, ptr %tmp4, i64 %tmp9 + %tmp11 = getelementptr inbounds %0, ptr %arg, i64 0, i32 3 + %tmp12 = load i64, ptr %tmp11, align 8 + %tmp13 = getelementptr inbounds i8, ptr %tmp10, i64 %tmp12 + %tmp14 = getelementptr inbounds %0, ptr %arg, i64 0, i32 6 + %tmp15 = load i64, ptr %tmp14, align 8 %tmp16 = add i64 %tmp15, 1 %tmp17 = icmp eq i64 %tmp16, %tmp6 br i1 %tmp17, label %bb51, label %bb18 bb18: ; preds = %bb - %tmp19 = getelementptr inbounds %0, %0* %arg, i64 0, i32 2 - %tmp20 = load i64, i64* %tmp19, align 8 + %tmp19 = getelementptr inbounds %0, ptr %arg, i64 0, i32 2 + %tmp20 = load i64, ptr %tmp19, align 8 %tmp21 = mul i64 %tmp20, %tmp8 - %tmp22 = getelementptr inbounds i8, i8* %tmp13, i64 %tmp21 - %tmp23 = getelementptr inbounds i8, i8* %tmp22, i64 %tmp9 - %tmp24 = getelementptr inbounds i8, i8* %tmp23, i64 %tmp12 - %tmp25 = bitcast %0* %arg1 to i16** - %tmp26 = load i16*, i16** %tmp25, align 8 - %tmp27 = load i64, i64* %tmp, align 8 - %tmp28 = getelementptr inbounds %0, %0* %arg1, i64 0, i32 4 - %tmp29 = load i64, i64* %tmp28, align 8 + %tmp22 = getelementptr inbounds i8, ptr %tmp13, i64 %tmp21 + %tmp23 = getelementptr inbounds i8, ptr %tmp22, i64 %tmp9 + %tmp24 = getelementptr inbounds i8, ptr %tmp23, i64 %tmp12 + %tmp26 = load ptr, ptr %arg1, align 8 + %tmp27 = load i64, ptr %tmp, align 8 + %tmp28 = getelementptr inbounds %0, ptr %arg1, i64 0, i32 4 + %tmp29 = load i64, ptr %tmp28, align 8 %tmp30 = mul i64 %tmp27, %tmp29 - %tmp31 = getelementptr inbounds i16, i16* %tmp26, i64 %tmp30 - %tmp32 = getelementptr inbounds %0, %0* %arg1, i64 0, i32 3 - %tmp33 = load i64, i64* %tmp32, align 8 - %tmp34 = getelementptr inbounds i16, i16* %tmp31, i64 %tmp33 - %tmp35 = getelementptr inbounds %0, %0* %arg, i64 0, i32 5 - %tmp36 = load i64, i64* %tmp35, align 8 + %tmp31 = getelementptr inbounds i16, ptr %tmp26, i64 %tmp30 + %tmp32 = getelementptr inbounds %0, ptr %arg1, i64 0, i32 3 + %tmp33 = load i64, ptr %tmp32, align 8 + %tmp34 = getelementptr inbounds i16, ptr %tmp31, i64 %tmp33 + %tmp35 = getelementptr inbounds %0, ptr %arg, i64 0, i32 5 + %tmp36 = load i64, ptr %tmp35, align 8 br label %bb37 bb37: ; preds = %bb57, %bb18 @@ -62,9 +60,9 @@ bb37: ; preds = %bb57, %bb18 %tmp41 = phi i64 [ %tmp8, %bb18 ], [ %tmp61, %bb57 ] %tmp42 = phi i64 [ %tmp12, %bb18 ], [ %tmp62, %bb57 ] %tmp43 = phi i64 [ %tmp36, %bb18 ], [ %tmp63, %bb57 ] - %tmp44 = phi i16* [ %tmp34, %bb18 ], [ %tmp69, %bb57 ] - %tmp45 = phi i8* [ %tmp13, %bb18 ], [ %tmp64, %bb57 ] - %tmp46 = phi i8* [ %tmp24, %bb18 ], [ %tmp68, %bb57 ] + %tmp44 = phi ptr [ %tmp34, %bb18 ], [ %tmp69, %bb57 ] + %tmp45 = phi ptr [ %tmp13, %bb18 ], [ %tmp64, %bb57 ] + %tmp46 = phi ptr [ %tmp24, %bb18 ], [ %tmp68, %bb57 ] %tmp47 = phi i64 [ 0, %bb18 ], [ %tmp70, %bb57 ] %tmp48 = add i64 %tmp43, 1 %tmp49 = sub i64 %tmp48, %tmp42 @@ -75,10 +73,10 @@ bb51: ; preds = %bb57, %bb ret void bb52: ; preds = %bb176 - %tmp53 = load i64, i64* %tmp7, align 8 - %tmp54 = load i64, i64* %tmp, align 8 - %tmp55 = load i64, i64* %tmp14, align 8 - %tmp56 = load i64, i64* %tmp5, align 8 + %tmp53 = load i64, ptr %tmp7, align 8 + %tmp54 = load i64, ptr %tmp, align 8 + %tmp55 = load i64, ptr %tmp14, align 8 + %tmp56 = load i64, ptr %tmp5, align 8 br label %bb57 bb57: ; preds = %bb52, %bb37 @@ -88,12 +86,12 @@ bb57: ; preds = %bb52, %bb37 %tmp61 = phi i64 [ %tmp53, %bb52 ], [ %tmp41, %bb37 ] %tmp62 = phi i64 [ %tmp179, %bb52 ], [ %tmp42, %bb37 ] %tmp63 = phi i64 [ %tmp178, %bb52 ], [ %tmp43, %bb37 ] - %tmp64 = getelementptr inbounds i8, i8* %tmp45, i64 %tmp61 + %tmp64 = getelementptr inbounds i8, ptr %tmp45, i64 %tmp61 %tmp65 = and i64 %tmp47, 1 %tmp66 = icmp eq i64 %tmp65, 0 - %tmp67 = getelementptr inbounds i8, i8* %tmp46, i64 %tmp61 - %tmp68 = select i1 %tmp66, i8* %tmp46, i8* %tmp67 - %tmp69 = getelementptr inbounds i16, i16* %tmp44, i64 %tmp60 + %tmp67 = getelementptr inbounds i8, ptr %tmp46, i64 %tmp61 + %tmp68 = select i1 %tmp66, ptr %tmp46, ptr %tmp67 + %tmp69 = getelementptr inbounds i16, ptr %tmp44, i64 %tmp60 %tmp70 = add i64 %tmp47, 1 %tmp71 = add i64 %tmp59, 1 %tmp72 = sub i64 %tmp71, %tmp58 @@ -103,18 +101,18 @@ bb57: ; preds = %bb52, %bb37 bb74: ; preds = %bb176, %bb37 %tmp75 = phi i64 [ %tmp181, %bb176 ], [ %tmp49, %bb37 ] %tmp76 = phi i64 [ %tmp177, %bb176 ], [ 0, %bb37 ] - %tmp77 = getelementptr inbounds i8, i8* %tmp45, i64 %tmp76 - %tmp78 = load i8, i8* %tmp77, align 1 + %tmp77 = getelementptr inbounds i8, ptr %tmp45, i64 %tmp76 + %tmp78 = load i8, ptr %tmp77, align 1 %tmp79 = zext i8 %tmp78 to i32 %tmp80 = or i64 %tmp76, 1 - %tmp81 = getelementptr inbounds i8, i8* %tmp45, i64 %tmp80 - %tmp82 = load i8, i8* %tmp81, align 1 + %tmp81 = getelementptr inbounds i8, ptr %tmp45, i64 %tmp80 + %tmp82 = load i8, ptr %tmp81, align 1 %tmp83 = zext i8 %tmp82 to i32 - %tmp84 = getelementptr inbounds i8, i8* %tmp46, i64 %tmp76 - %tmp85 = load i8, i8* %tmp84, align 1 + %tmp84 = getelementptr inbounds i8, ptr %tmp46, i64 %tmp76 + %tmp85 = load i8, ptr %tmp84, align 1 %tmp86 = zext i8 %tmp85 to i32 - %tmp87 = getelementptr inbounds i8, i8* %tmp46, i64 %tmp80 - %tmp88 = load i8, i8* %tmp87, align 1 + %tmp87 = getelementptr inbounds i8, ptr %tmp46, i64 %tmp80 + %tmp88 = load i8, ptr %tmp87, align 1 %tmp89 = zext i8 %tmp88 to i32 %tmp90 = mul nuw nsw i32 %tmp86, 517 %tmp91 = add nsw i32 %tmp90, -66176 @@ -163,21 +161,21 @@ bb120: ; preds = %bb109 bb124: ; preds = %bb120 %tmp125 = sext i32 %tmp101 to i64 - %tmp126 = getelementptr inbounds i8, i8* %arg2, i64 %tmp125 - %tmp127 = load i8, i8* %tmp126, align 1 + %tmp126 = getelementptr inbounds i8, ptr %arg2, i64 %tmp125 + %tmp127 = load i8, ptr %tmp126, align 1 %tmp128 = zext i8 %tmp127 to i32 %tmp129 = lshr i32 %tmp128, 3 %tmp130 = shl nuw nsw i32 %tmp129, 11 %tmp131 = sext i32 %tmp111 to i64 - %tmp132 = getelementptr inbounds i8, i8* %arg2, i64 %tmp131 - %tmp133 = load i8, i8* %tmp132, align 1 + %tmp132 = getelementptr inbounds i8, ptr %arg2, i64 %tmp131 + %tmp133 = load i8, ptr %tmp132, align 1 %tmp134 = zext i8 %tmp133 to i32 %tmp135 = lshr i32 %tmp134, 2 %tmp136 = shl nuw nsw i32 %tmp135, 5 %tmp137 = or i32 %tmp136, %tmp130 %tmp138 = sext i32 %tmp113 to i64 - %tmp139 = getelementptr inbounds i8, i8* %arg2, i64 %tmp138 - %tmp140 = load i8, i8* %tmp139, align 1 + %tmp139 = getelementptr inbounds i8, ptr %arg2, i64 %tmp138 + %tmp140 = load i8, ptr %tmp139, align 1 %tmp141 = zext i8 %tmp140 to i32 %tmp142 = lshr i32 %tmp141, 3 %tmp143 = or i32 %tmp137, %tmp142 @@ -188,16 +186,16 @@ bb145: ; preds = %bb124 %tmp146 = add nsw i32 %tmp97, %tmp115 %tmp147 = sdiv i32 %tmp146, 256 %tmp148 = sext i32 %tmp147 to i64 - %tmp149 = getelementptr inbounds i8, i8* %arg2, i64 %tmp148 - %tmp150 = load i8, i8* %tmp149, align 1 + %tmp149 = getelementptr inbounds i8, ptr %arg2, i64 %tmp148 + %tmp150 = load i8, ptr %tmp149, align 1 %tmp151 = extractvalue { i32, i1 } %tmp122, 0 %tmp152 = sdiv i32 %tmp151, 256 %tmp153 = sext i32 %tmp152 to i64 - %tmp154 = getelementptr inbounds i8, i8* %arg2, i64 %tmp153 - %tmp155 = load i8, i8* %tmp154, align 1 + %tmp154 = getelementptr inbounds i8, ptr %arg2, i64 %tmp153 + %tmp155 = load i8, ptr %tmp154, align 1 %tmp156 = sext i32 %tmp117 to i64 - %tmp157 = getelementptr inbounds i8, i8* %arg2, i64 %tmp156 - %tmp158 = load i8, i8* %tmp157, align 1 + %tmp157 = getelementptr inbounds i8, ptr %arg2, i64 %tmp156 + %tmp158 = load i8, ptr %tmp157, align 1 %tmp159 = zext i8 %tmp158 to i32 %tmp160 = lshr i32 %tmp159, 3 %tmp161 = shl nuw nsw i32 %tmp160, 11 @@ -210,21 +208,20 @@ bb145: ; preds = %bb124 %tmp168 = or i32 %tmp167, %tmp161 %tmp169 = shl nuw i32 %tmp168, 16 %tmp170 = or i32 %tmp169, %tmp143 - %tmp171 = getelementptr inbounds i16, i16* %tmp44, i64 %tmp76 - %tmp172 = bitcast i16* %tmp171 to i32* - store i32 %tmp170, i32* %tmp172, align 4 + %tmp171 = getelementptr inbounds i16, ptr %tmp44, i64 %tmp76 + store i32 %tmp170, ptr %tmp171, align 4 br label %bb176 bb173: ; preds = %bb124 %tmp174 = trunc i32 %tmp143 to i16 - %tmp175 = getelementptr inbounds i16, i16* %tmp44, i64 %tmp76 - store i16 %tmp174, i16* %tmp175, align 2 + %tmp175 = getelementptr inbounds i16, ptr %tmp44, i64 %tmp76 + store i16 %tmp174, ptr %tmp175, align 2 br label %bb176 bb176: ; preds = %bb173, %bb145 %tmp177 = add i64 %tmp76, 2 - %tmp178 = load i64, i64* %tmp35, align 8 - %tmp179 = load i64, i64* %tmp11, align 8 + %tmp178 = load i64, ptr %tmp35, align 8 + %tmp179 = load i64, ptr %tmp11, align 8 %tmp180 = add i64 %tmp178, 1 %tmp181 = sub i64 %tmp180, %tmp179 %tmp182 = icmp ult i64 %tmp177, %tmp181 diff --git a/polly/test/ScopInfo/run-time-check-many-parameters.ll b/polly/test/ScopInfo/run-time-check-many-parameters.ll index 55f5ea549995..30f8d5fff34c 100644 --- a/polly/test/ScopInfo/run-time-check-many-parameters.ll +++ b/polly/test/ScopInfo/run-time-check-many-parameters.ll @@ -62,7 +62,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @foo(float* %A, float* %B, i64 %p1, i64 %p2, i64 %p3, i64 %p4, i64 %p5, i64 %p6, i64 %p7, i64 %p8, i64 %p9, i64 %p10, i64 %p11, i64 %p12) #0 { +define void @foo(ptr %A, ptr %B, i64 %p1, i64 %p2, i64 %p3, i64 %p4, i64 %p5, i64 %p6, i64 %p7, i64 %p8, i64 %p9, i64 %p10, i64 %p11, i64 %p12) #0 { entry: br label %entry.split @@ -72,54 +72,54 @@ entry.split: ; preds = %entry for.body: ; preds = %entry.split, %for.body %i.01 = phi i64 [ 0, %entry.split ], [ %tmp25, %for.body ] %tmp = add i64 %p1, %i.01 - %arrayidx = getelementptr float, float* %B, i64 %tmp + %arrayidx = getelementptr float, ptr %B, i64 %tmp %tmp2 = add i64 %p2, %i.01 - %arrayidx2 = getelementptr float, float* %B, i64 %tmp2 + %arrayidx2 = getelementptr float, ptr %B, i64 %tmp2 %tmp3 = add i64 %p3, %i.01 - %arrayidx5 = getelementptr float, float* %B, i64 %tmp3 + %arrayidx5 = getelementptr float, ptr %B, i64 %tmp3 %tmp4 = add i64 %p4, %i.01 - %arrayidx8 = getelementptr float, float* %B, i64 %tmp4 + %arrayidx8 = getelementptr float, ptr %B, i64 %tmp4 %tmp5 = add i64 %p5, %i.01 - %arrayidx11 = getelementptr float, float* %B, i64 %tmp5 + %arrayidx11 = getelementptr float, ptr %B, i64 %tmp5 %tmp6 = add i64 %p6, %i.01 - %arrayidx14 = getelementptr float, float* %B, i64 %tmp6 + %arrayidx14 = getelementptr float, ptr %B, i64 %tmp6 %tmp7 = add i64 %p7, %i.01 - %arrayidx17 = getelementptr float, float* %B, i64 %tmp7 + %arrayidx17 = getelementptr float, ptr %B, i64 %tmp7 %tmp8 = add i64 %p8, %i.01 - %arrayidx20 = getelementptr float, float* %B, i64 %tmp8 + %arrayidx20 = getelementptr float, ptr %B, i64 %tmp8 %tmp9 = add i64 %p9, %i.01 - %arrayidx23 = getelementptr float, float* %B, i64 %tmp9 + %arrayidx23 = getelementptr float, ptr %B, i64 %tmp9 %tmp10 = add i64 %p10, %i.01 - %arrayidx26 = getelementptr float, float* %B, i64 %tmp10 + %arrayidx26 = getelementptr float, ptr %B, i64 %tmp10 %tmp11 = add i64 %p11, %i.01 - %arrayidx29 = getelementptr float, float* %B, i64 %tmp11 + %arrayidx29 = getelementptr float, ptr %B, i64 %tmp11 %tmp12 = add i64 %p12, %i.01 - %arrayidx32 = getelementptr float, float* %B, i64 %tmp12 - %arrayidx34 = getelementptr float, float* %A, i64 %i.01 - %tmp13 = load float, float* %arrayidx, align 4 - %tmp14 = load float, float* %arrayidx2, align 4 + %arrayidx32 = getelementptr float, ptr %B, i64 %tmp12 + %arrayidx34 = getelementptr float, ptr %A, i64 %i.01 + %tmp13 = load float, ptr %arrayidx, align 4 + %tmp14 = load float, ptr %arrayidx2, align 4 %add3 = fadd float %tmp13, %tmp14 - %tmp15 = load float, float* %arrayidx5, align 4 + %tmp15 = load float, ptr %arrayidx5, align 4 %add6 = fadd float %add3, %tmp15 - %tmp16 = load float, float* %arrayidx8, align 4 + %tmp16 = load float, ptr %arrayidx8, align 4 %add9 = fadd float %add6, %tmp16 - %tmp17 = load float, float* %arrayidx11, align 4 + %tmp17 = load float, ptr %arrayidx11, align 4 %add12 = fadd float %add9, %tmp17 - %tmp18 = load float, float* %arrayidx14, align 4 + %tmp18 = load float, ptr %arrayidx14, align 4 %add15 = fadd float %add12, %tmp18 - %tmp19 = load float, float* %arrayidx17, align 4 + %tmp19 = load float, ptr %arrayidx17, align 4 %add18 = fadd float %add15, %tmp19 - %tmp20 = load float, float* %arrayidx20, align 4 + %tmp20 = load float, ptr %arrayidx20, align 4 %add21 = fadd float %add18, %tmp20 - %tmp21 = load float, float* %arrayidx23, align 4 + %tmp21 = load float, ptr %arrayidx23, align 4 %add24 = fadd float %add21, %tmp21 - %tmp22 = load float, float* %arrayidx26, align 4 + %tmp22 = load float, ptr %arrayidx26, align 4 %add27 = fadd float %add24, %tmp22 - %tmp23 = load float, float* %arrayidx29, align 4 + %tmp23 = load float, ptr %arrayidx29, align 4 %add30 = fadd float %add27, %tmp23 - %tmp24 = load float, float* %arrayidx32, align 4 + %tmp24 = load float, ptr %arrayidx32, align 4 %add33 = fadd float %add30, %tmp24 - store float %add33, float* %arrayidx34, align 4 + store float %add33, ptr %arrayidx34, align 4 %tmp25 = add nsw i64 %i.01, 1 %exitcond = icmp ne i64 %tmp25, 100 br i1 %exitcond, label %for.body, label %for.end diff --git a/polly/test/ScopInfo/run-time-check-many-piecewise-aliasing.ll b/polly/test/ScopInfo/run-time-check-many-piecewise-aliasing.ll index 81c196e3917e..487c803bba98 100644 --- a/polly/test/ScopInfo/run-time-check-many-piecewise-aliasing.ll +++ b/polly/test/ScopInfo/run-time-check-many-piecewise-aliasing.ll @@ -10,7 +10,7 @@ ; CHECK: Function: func ; CHECK-NEXT: Region: %for---%return -define void @func(i64 %n, double* nonnull %A, double * nonnull %B, i64 %d) { +define void @func(i64 %n, ptr nonnull %A, ptr nonnull %B, i64 %d) { entry: br label %for for: @@ -91,10 +91,10 @@ body: %add5.i32.i = add nsw i64 %mul.i23.i, %mul4.i31.i %idxprom = add nsw i64 %add7.i, %add5.i32.i - %A_idx = getelementptr inbounds double, double* %A, i64 %idxprom - %val = load double, double* %A_idx - %B_idx = getelementptr inbounds double, double* %B, i64 %j - store double %val, double* %B_idx + %A_idx = getelementptr inbounds double, ptr %A, i64 %idxprom + %val = load double, ptr %A_idx + %B_idx = getelementptr inbounds double, ptr %B, i64 %j + store double %val, ptr %B_idx br label %inc inc: diff --git a/polly/test/ScopInfo/run-time-check-read-only-arrays.ll b/polly/test/ScopInfo/run-time-check-read-only-arrays.ll index d2a2c6312da7..d590aaf00ddb 100644 --- a/polly/test/ScopInfo/run-time-check-read-only-arrays.ll +++ b/polly/test/ScopInfo/run-time-check-read-only-arrays.ll @@ -11,19 +11,19 @@ ; read-only arrays. target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo(float* %A, float* %B, float* %C, i64 %N) { +define void @foo(ptr %A, ptr %B, ptr %C, i64 %N) { entry: br label %for.body for.body: %indvar = phi i64 [ 0, %entry ], [ %indvar.next, %for.body ] - %arrayidx.A = getelementptr float, float* %A, i64 %indvar - %arrayidx.B = getelementptr float, float* %B, i64 %indvar - %arrayidx.C = getelementptr float, float* %C, i64 %indvar - %val.A = load float, float* %arrayidx.A - %val.B = load float, float* %arrayidx.B + %arrayidx.A = getelementptr float, ptr %A, i64 %indvar + %arrayidx.B = getelementptr float, ptr %B, i64 %indvar + %arrayidx.C = getelementptr float, ptr %C, i64 %indvar + %val.A = load float, ptr %arrayidx.A + %val.B = load float, ptr %arrayidx.B %add = fadd float %val.A, %val.B - store float %add, float* %arrayidx.C + store float %add, ptr %arrayidx.C %indvar.next = add nsw i64 %indvar, 1 %exitcond = icmp ne i64 %indvar.next, %N br i1 %exitcond, label %for.body, label %for.end diff --git a/polly/test/ScopInfo/same-base-address-scalar-and-array.ll b/polly/test/ScopInfo/same-base-address-scalar-and-array.ll index 7902133c3448..a5f353e7ad2a 100644 --- a/polly/test/ScopInfo/same-base-address-scalar-and-array.ll +++ b/polly/test/ScopInfo/same-base-address-scalar-and-array.ll @@ -4,14 +4,14 @@ ; as it is used as a memory base pointer (%0) but also as a scalar (%out.addr.0.lcssa). ; ; CHECK: Arrays { -; CHECK-NEXT: float* MemRef_out_addr_0_lcssa; // Element size 8 +; CHECK-NEXT: ptr MemRef_out_addr_0_lcssa; // Element size 8 ; CHECK-NEXT: float MemRef_out[*]; // Element size 4 ; CHECK-NEXT: } ; target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind ssp uwtable -define void @ff_celp_lp_synthesis_filterf(float* %out) #0 { +define void @ff_celp_lp_synthesis_filterf(ptr %out) #0 { entry: br label %entry.split @@ -19,11 +19,11 @@ entry.split: ; preds = %entry br i1 false, label %for.end.97, label %for.body.lr.ph for.body.lr.ph: ; preds = %entry.split - %arrayidx13 = getelementptr inbounds float, float* %out, i64 -3 - %0 = load float, float* %arrayidx13, align 4 + %arrayidx13 = getelementptr inbounds float, ptr %out, i64 -3 + %0 = load float, ptr %arrayidx13, align 4 br label %for.end.97 for.end.97: ; preds = %for.cond.for.end.97_crit_edge, %entry.split - %out.addr.0.lcssa = phi float* [ undef, %for.body.lr.ph ], [ %out, %entry.split ] + %out.addr.0.lcssa = phi ptr [ undef, %for.body.lr.ph ], [ %out, %entry.split ] ret void } diff --git a/polly/test/ScopInfo/scalar.ll b/polly/test/ScopInfo/scalar.ll index 2b2c227b6584..c38eaa853b9b 100644 --- a/polly/test/ScopInfo/scalar.ll +++ b/polly/test/ScopInfo/scalar.ll @@ -2,7 +2,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* %a, i64 %N) { +define void @f(ptr %a, i64 %N) { entry: br label %for @@ -11,13 +11,13 @@ for: br label %S1 S1: - %scevgep1 = getelementptr i64, i64* %a, i64 %indvar - %val = load i64, i64* %scevgep1, align 8 + %scevgep1 = getelementptr i64, ptr %a, i64 %indvar + %val = load i64, ptr %scevgep1, align 8 br label %S2 S2: - %scevgep2 = getelementptr i64, i64* %a, i64 %indvar - store i64 %val, i64* %scevgep2, align 8 + %scevgep2 = getelementptr i64, ptr %a, i64 %indvar + store i64 %val, ptr %scevgep2, align 8 br label %for.backedge for.backedge: diff --git a/polly/test/ScopInfo/scalar_dependence_cond_br.ll b/polly/test/ScopInfo/scalar_dependence_cond_br.ll index 913174425185..3303bfb7c6c5 100644 --- a/polly/test/ScopInfo/scalar_dependence_cond_br.ll +++ b/polly/test/ScopInfo/scalar_dependence_cond_br.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i64 %c) { +define void @f(ptr %A, i64 %c) { entry: br label %for.cond @@ -29,10 +29,10 @@ for.body: ; preds = %for.cond br i1 %cmp1, label %if.then, label %if.end if.then: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %if.then, %for.body diff --git a/polly/test/ScopInfo/scalar_to_array.ll b/polly/test/ScopInfo/scalar_to_array.ll index cb2b7e9f38c3..5c275108602a 100644 --- a/polly/test/ScopInfo/scalar_to_array.ll +++ b/polly/test/ScopInfo/scalar_to_array.ll @@ -45,9 +45,9 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %return for.body: ; preds = %for.cond - %arrayidx = getelementptr [1024 x float], [1024 x float]* @A, i64 0, i64 %indvar + %arrayidx = getelementptr [1024 x float], ptr @A, i64 0, i64 %indvar %float = uitofp i64 %indvar to float - store float %float, float* %arrayidx + store float %float, ptr %arrayidx br label %for.inc ; CHECK: Stmt_for_body ; CHECK-NOT: ReadAccess @@ -76,8 +76,8 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body.a, label %return for.body.a: ; preds = %for.cond - %arrayidx = getelementptr [1024 x float], [1024 x float]* @A, i64 0, i64 %indvar - %scalar = load float, float* %arrayidx + %arrayidx = getelementptr [1024 x float], ptr @A, i64 0, i64 %indvar + %scalar = load float, ptr %arrayidx br label %for.body.b ; CHECK: Stmt_for_body_a ; CHECK: ReadAccess := [Reduction Type: NONE] [Scalar: 0] @@ -86,10 +86,10 @@ for.body.a: ; preds = %for.cond ; CHECK-NEXT: { Stmt_for_body_a[i0] -> MemRef_scalar[] }; for.body.b: ; preds = %for.body.a - %arrayidx2 = getelementptr [1024 x float], [1024 x float]* @A, i64 0, i64 %indvar + %arrayidx2 = getelementptr [1024 x float], ptr @A, i64 0, i64 %indvar %float = uitofp i64 %indvar to float %sum = fadd float %scalar, %float - store float %sum, float* %arrayidx2 + store float %sum, ptr %arrayidx2 br label %for.inc ; CHECK: Stmt_for_body_b ; CHECK: ReadAccess := [Reduction Type: NONE] [Scalar: 1] @@ -125,9 +125,9 @@ for.head: ; preds = %for.inc, %entry br label %for.body for.body: ; preds = %for.head - %arrayidx = getelementptr [1024 x float], [1024 x float]* @A, i64 0, i64 %indvar - %scalar = load float, float* %arrayidx - store float %scalar, float* %scalar.s2a + %arrayidx = getelementptr [1024 x float], ptr @A, i64 0, i64 %indvar + %scalar = load float, ptr %arrayidx + store float %scalar, ptr %scalar.s2a ; Escaped uses are still required to be rewritten to stack variable. ; CHECK: Stmt_for_body ; CHECK: ReadAccess := [Reduction Type: NONE] [Scalar: 0] @@ -142,7 +142,7 @@ for.inc: ; preds = %for.body br i1 %exitcond, label %for.head, label %for.after for.after: ; preds = %for.inc - %scalar.loadoutside = load float, float* %scalar.s2a + %scalar.loadoutside = load float, ptr %scalar.s2a fence seq_cst %return_value = fptosi float %scalar.loadoutside to i32 br label %return @@ -176,8 +176,8 @@ for.cond: ; preds = %for.inc, %preheader br i1 %exitcond, label %for.body, label %return for.body: ; preds = %for.cond - %arrayidx = getelementptr [1024 x float], [1024 x float]* @A, i64 0, i64 %indvar - store float %scalar, float* %arrayidx + %arrayidx = getelementptr [1024 x float], ptr @A, i64 0, i64 %indvar + store float %scalar, ptr %arrayidx br label %for.inc ; CHECK: Stmt_for_body ; CHECK: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] diff --git a/polly/test/ScopInfo/scev-div-with-evaluatable-divisor.ll b/polly/test/ScopInfo/scev-div-with-evaluatable-divisor.ll index f17c40ee0415..fc7a1bfc3d5e 100644 --- a/polly/test/ScopInfo/scev-div-with-evaluatable-divisor.ll +++ b/polly/test/ScopInfo/scev-div-with-evaluatable-divisor.ll @@ -9,7 +9,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" ; Function Attrs: nounwind uwtable -define void @cfft2(i32 %n, double* %A) local_unnamed_addr #0 { +define void @cfft2(i32 %n, ptr %A) local_unnamed_addr #0 { entry: br i1 true, label %for.body.lr.ph, label %for.end @@ -38,7 +38,7 @@ for.body.i58.us: ; preds = %for.body.i58.us, %f br i1 false, label %for.inc, label %for.body.i58.us for.body.i58: ; preds = %for.body.i58, %for.body.i58.preheader - store double 0.0, double* %A + store double 0.0, ptr %A %exitcond42 = icmp eq i32 0, %div.i45 br i1 %exitcond42, label %for.inc, label %for.body.i58 diff --git a/polly/test/ScopInfo/scev-invalidated.ll b/polly/test/ScopInfo/scev-invalidated.ll index f6b5b41f01d0..97fc5ec3d4ca 100644 --- a/polly/test/ScopInfo/scev-invalidated.ll +++ b/polly/test/ScopInfo/scev-invalidated.ll @@ -16,7 +16,7 @@ if.then6: if.else: %add16 = add nsw i64 %rem7, 1474560 %rem7.add16 = select i1 undef, i64 %rem7, i64 %add16 - store i64 %rem7.add16, i64* %ang2.2.reg2mem + store i64 %rem7.add16, ptr %ang2.2.reg2mem br label %return return: diff --git a/polly/test/ScopInfo/schedule-const-post-dominator-walk-2.ll b/polly/test/ScopInfo/schedule-const-post-dominator-walk-2.ll index 0ad28af80c43..2fdf7d66c3ad 100644 --- a/polly/test/ScopInfo/schedule-const-post-dominator-walk-2.ll +++ b/polly/test/ScopInfo/schedule-const-post-dominator-walk-2.ll @@ -14,33 +14,33 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @hoge(i64 %p0, i64 %p1, i64 %p2, i64 %p3, float* %A) { +define void @hoge(i64 %p0, i64 %p1, i64 %p2, i64 %p3, ptr %A) { entry: br label %loopA loopA: %tmp4 = phi i64 [ 0, %entry ], [ 0, %loopB] - store float 42.0, float* %A + store float 42.0, ptr %A %cmp0 = icmp sle i64 %p0, 100 br i1 %cmp0, label %loopB, label %bbB loopB: - store float 42.0, float* %A + store float 42.0, ptr %A %cmp1 = icmp sle i64 %p1, 100 br i1 %cmp1, label %loopA, label %bbA bbA: - store float 42.0, float* %A + store float 42.0, ptr %A %cmpbbA = icmp sle i64 %p2, 50 br i1 %cmpbbA, label %bbMerge, label %exit bbB: - store float 42.0, float* %A + store float 42.0, ptr %A %cmpbbB= icmp sle i64 %p3, 200 br i1 %cmpbbB, label %exit, label %bbMerge bbMerge: - store float 42.0, float* %A + store float 42.0, ptr %A br label %exit exit: diff --git a/polly/test/ScopInfo/schedule-constuction-endless-loop1.ll b/polly/test/ScopInfo/schedule-constuction-endless-loop1.ll index ad66c77cd604..413d1d8ec556 100644 --- a/polly/test/ScopInfo/schedule-constuction-endless-loop1.ll +++ b/polly/test/ScopInfo/schedule-constuction-endless-loop1.ll @@ -7,9 +7,9 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @int_upsample(i32* %A) { +define void @int_upsample(ptr %A) { entry: - %0 = load i8, i8* undef, align 1 + %0 = load i8, ptr undef, align 1 %conv7 = zext i8 %0 to i32 br label %while.body.preheader @@ -24,7 +24,7 @@ while.body16: ; preds = %while.body16, %whil br label %while.body16 if.end: ; preds = %while.body - store i32 0, i32* %A + store i32 0, ptr %A %add23 = add nuw nsw i32 %outrow.036, 1 %cmp = icmp slt i32 %add23, 0 br i1 %cmp, label %while.body, label %while.end24 diff --git a/polly/test/ScopInfo/schedule-constuction-endless-loop2.ll b/polly/test/ScopInfo/schedule-constuction-endless-loop2.ll index 43a108d0d44f..be254477286f 100644 --- a/polly/test/ScopInfo/schedule-constuction-endless-loop2.ll +++ b/polly/test/ScopInfo/schedule-constuction-endless-loop2.ll @@ -7,9 +7,9 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @int_upsample(i32* %A) { +define void @int_upsample(ptr %A) { entry: - %0 = load i8, i8* undef, align 1 + %0 = load i8, ptr undef, align 1 %conv7 = zext i8 %0 to i32 br label %while.body.preheader @@ -27,7 +27,7 @@ while.body16.split: br label %while.body16 if.end: ; preds = %while.body - store i32 0, i32* %A + store i32 0, ptr %A %add23 = add nuw nsw i32 %outrow.036, 1 %cmp = icmp slt i32 %add23, 0 br i1 %cmp, label %while.body, label %while.end24 diff --git a/polly/test/ScopInfo/schedule-incorrectly-contructed-in-case-of-infinite-loop.ll b/polly/test/ScopInfo/schedule-incorrectly-contructed-in-case-of-infinite-loop.ll index f86f3e455cd7..ff339e03fb5a 100644 --- a/polly/test/ScopInfo/schedule-incorrectly-contructed-in-case-of-infinite-loop.ll +++ b/polly/test/ScopInfo/schedule-incorrectly-contructed-in-case-of-infinite-loop.ll @@ -17,25 +17,24 @@ bb7: ; preds = %bb23 unreachable bb8: ; preds = %bb23, %bb6 - %tmp9 = getelementptr inbounds [11 x [101 x i32]], [11 x [101 x i32]]* %tmp5, i64 0, i64 0, i64 0 br label %bb10 bb10: ; preds = %bb8 - %tmp = load i32, i32* %tmp9, align 4 + %tmp = load i32, ptr %tmp5, align 4 br i1 false, label %bb23, label %bb11 bb11: ; preds = %bb10 - %tmp12 = load i32, i32* %tmp9, align 4 + %tmp12 = load i32, ptr %tmp5, align 4 br label %bb13 bb13: ; preds = %bb13, %bb11 %tmp14 = phi i32 [ %tmp12, %bb11 ], [ %tmp19, %bb13 ] %tmp15 = add nsw i32 %tmp14, 1 %tmp16 = sext i32 %tmp15 to i64 - %tmp17 = getelementptr inbounds [11 x [101 x i32]], [11 x [101 x i32]]* %tmp5, i64 0, i64 0, i64 %tmp16 - %tmp18 = load i32, i32* %tmp17, align 4 + %tmp17 = getelementptr inbounds [11 x [101 x i32]], ptr %tmp5, i64 0, i64 0, i64 %tmp16 + %tmp18 = load i32, ptr %tmp17, align 4 %tmp19 = add nsw i32 %tmp14, -1 - %tmp20 = load i32, i32* %tmp9, align 4 + %tmp20 = load i32, ptr %tmp5, align 4 %tmp21 = sext i32 %tmp20 to i64 %tmp22 = icmp slt i64 0, %tmp21 br label %bb13 @@ -59,28 +58,27 @@ bb7: ; preds = %bb23 unreachable bb8: ; preds = %bb23, %bb6 - %tmp9 = getelementptr inbounds [11 x [101 x i32]], [11 x [101 x i32]]* %tmp5, i64 0, i64 0, i64 0 br label %bb10 bb10: ; preds = %bb8 - %tmp = load i32, i32* %tmp9, align 4 + %tmp = load i32, ptr %tmp5, align 4 br i1 false, label %bb23, label %bb11 bb11: ; preds = %bb10 - %tmp12 = load i32, i32* %tmp9, align 4 + %tmp12 = load i32, ptr %tmp5, align 4 br label %bb13 bb13: ; preds = %bb13, %bb11 %tmp14 = phi i32 [ %tmp12, %bb11 ], [ %tmp19, %bb13.split ] %tmp15 = add nsw i32 %tmp14, 1 %tmp16 = sext i32 %tmp15 to i64 - %tmp17 = getelementptr inbounds [11 x [101 x i32]], [11 x [101 x i32]]* %tmp5, i64 0, i64 0, i64 %tmp16 - %tmp18 = load i32, i32* %tmp17, align 4 + %tmp17 = getelementptr inbounds [11 x [101 x i32]], ptr %tmp5, i64 0, i64 0, i64 %tmp16 + %tmp18 = load i32, ptr %tmp17, align 4 br label %bb13.split bb13.split: %tmp19 = add nsw i32 %tmp14, -1 - %tmp20 = load i32, i32* %tmp9, align 4 + %tmp20 = load i32, ptr %tmp5, align 4 %tmp21 = sext i32 %tmp20 to i64 %tmp22 = icmp slt i64 0, %tmp21 br label %bb13 diff --git a/polly/test/ScopInfo/scop-affine-parameter-ordering.ll b/polly/test/ScopInfo/scop-affine-parameter-ordering.ll index 2f5360de5903..24c028a6764a 100644 --- a/polly/test/ScopInfo/scop-affine-parameter-ordering.ll +++ b/polly/test/ScopInfo/scop-affine-parameter-ordering.ll @@ -14,10 +14,10 @@ target triple = "aarch64--linux-android" define void @test1() unnamed_addr align 2 { entry: - %xFactor.0.reload = load i32, i32* undef - %0 = load i8*, i8** undef, align 8 + %xFactor.0.reload = load i32, ptr undef + %0 = load ptr, ptr undef, align 8 %div = udiv i32 0, %xFactor.0.reload - %1 = load i32, i32* undef, align 4 + %1 = load i32, ptr undef, align 4 %mul = mul i32 %1, %xFactor.0.reload %col.023.us.us85.i = add i32 %div, -1 %mul11.us.us93.i = mul i32 %col.023.us.us85.i, %mul @@ -27,8 +27,8 @@ for.body8.us.us95.i: %niter.i = phi i32 [ %niter.i.next, %for.body8.us.us95.i ], [ 0, %entry ] %add12.us.us100.1.i = add i32 1, %mul11.us.us93.i %idxprom13.us.us101.1.i = zext i32 %add12.us.us100.1.i to i64 - %arrayidx14.us.us102.1.i = getelementptr inbounds i8, i8* %0, i64 %idxprom13.us.us101.1.i - store i8 0, i8* %arrayidx14.us.us102.1.i, align 1 + %arrayidx14.us.us102.1.i = getelementptr inbounds i8, ptr %0, i64 %idxprom13.us.us101.1.i + store i8 0, ptr %arrayidx14.us.us102.1.i, align 1 %niter.ncmp.3.i = icmp eq i32 %niter.i, 4 %niter.i.next = add i32 %niter.i, 1 br i1 %niter.ncmp.3.i, label %for.body8.us.us95.epil.i.preheader, label %for.body8.us.us95.i diff --git a/polly/test/ScopInfo/sign_wrapped_set.ll b/polly/test/ScopInfo/sign_wrapped_set.ll index 3556ebcdc559..23c9c8a3b84d 100644 --- a/polly/test/ScopInfo/sign_wrapped_set.ll +++ b/polly/test/ScopInfo/sign_wrapped_set.ll @@ -11,20 +11,20 @@ target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" -define void @test_case(i8* noalias nocapture readonly %src, i32 %srcHeight, i32 %srcStride) local_unnamed_addr { +define void @test_case(ptr noalias nocapture readonly %src, i32 %srcHeight, i32 %srcStride) local_unnamed_addr { entry: %extended = zext i32 %srcStride to i64 %sub = add i32 %srcHeight, -1 br label %for.cond6.preheader.us for.cond6.preheader.us: ; preds = %for.cond6.preheader.us, %entry - %srcPtr.075.us.pn = phi i8* [ %srcPtr.075.us, %for.cond6.preheader.us ], [ %src, %entry ] + %srcPtr.075.us.pn = phi ptr [ %srcPtr.075.us, %for.cond6.preheader.us ], [ %src, %entry ] %y.072.us = phi i32 [ %inc37.us, %for.cond6.preheader.us ], [ 1, %entry ] - %srcPtr.075.us = getelementptr inbounds i8, i8* %srcPtr.075.us.pn, i64 %extended + %srcPtr.075.us = getelementptr inbounds i8, ptr %srcPtr.075.us.pn, i64 %extended - %0 = load i8, i8* %srcPtr.075.us, align 1, !tbaa !0 + %0 = load i8, ptr %srcPtr.075.us, align 1, !tbaa !0 %1 = add i8 %0, 1 - store i8 %1, i8* %srcPtr.075.us, align 1, !tbaa !0 + store i8 %1, ptr %srcPtr.075.us, align 1, !tbaa !0 %inc37.us = add nuw i32 %y.072.us, 1 %exitcond78 = icmp eq i32 %inc37.us, %sub diff --git a/polly/test/ScopInfo/simple_loop_1.ll b/polly/test/ScopInfo/simple_loop_1.ll index 9b5d0f59871f..2c3481facc02 100644 --- a/polly/test/ScopInfo/simple_loop_1.ll +++ b/polly/test/ScopInfo/simple_loop_1.ll @@ -8,14 +8,14 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* nocapture %a, i64 %N) nounwind { +define void @f(ptr nocapture %a, i64 %N) nounwind { entry: br label %bb bb: ; preds = %bb, %entry %i = phi i64 [ 0, %entry ], [ %i.inc, %bb ] - %scevgep = getelementptr inbounds i64, i64* %a, i64 %i - store i64 %i, i64* %scevgep + %scevgep = getelementptr inbounds i64, ptr %a, i64 %i + store i64 %i, ptr %scevgep %i.inc = add nsw i64 %i, 1 %exitcond = icmp eq i64 %i.inc, %N br i1 %exitcond, label %return, label %bb diff --git a/polly/test/ScopInfo/simple_loop_2.ll b/polly/test/ScopInfo/simple_loop_2.ll index d2d35aa9d0e6..2f580094a147 100644 --- a/polly/test/ScopInfo/simple_loop_2.ll +++ b/polly/test/ScopInfo/simple_loop_2.ll @@ -25,14 +25,14 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i32* nocapture %a, i64 %N) nounwind { +define void @f(ptr nocapture %a, i64 %N) nounwind { entry: br label %bb bb: ; preds = %bb, %entry %i = phi i32 [ 0, %entry ], [ %i.inc, %bb ] - %scevgep = getelementptr inbounds i32, i32* %a, i32 %i - store i32 %i, i32* %scevgep + %scevgep = getelementptr inbounds i32, ptr %a, i32 %i + store i32 %i, ptr %scevgep %i.inc = add nsw i32 %i, 1 %i.ext = zext i32 %i.inc to i64 %exitcond = icmp eq i64 %i.ext, %N diff --git a/polly/test/ScopInfo/simple_loop_unsigned.ll b/polly/test/ScopInfo/simple_loop_unsigned.ll index 245c9f1e2c78..12903d9c1580 100644 --- a/polly/test/ScopInfo/simple_loop_unsigned.ll +++ b/polly/test/ScopInfo/simple_loop_unsigned.ll @@ -17,14 +17,14 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* nocapture %a, i64 %N) nounwind { +define void @f(ptr nocapture %a, i64 %N) nounwind { entry: br label %bb bb: ; preds = %bb, %entry %i = phi i64 [ 0, %entry ], [ %i.inc, %bb ] - %scevgep = getelementptr inbounds i64, i64* %a, i64 %i - store i64 %i, i64* %scevgep + %scevgep = getelementptr inbounds i64, ptr %a, i64 %i + store i64 %i, ptr %scevgep %i.inc = add nsw i64 %i, 1 %exitcond = icmp uge i64 %i.inc, %N br i1 %exitcond, label %return, label %bb diff --git a/polly/test/ScopInfo/simple_loop_unsigned_2.ll b/polly/test/ScopInfo/simple_loop_unsigned_2.ll index 9cd43ad97299..1379180a6dd9 100644 --- a/polly/test/ScopInfo/simple_loop_unsigned_2.ll +++ b/polly/test/ScopInfo/simple_loop_unsigned_2.ll @@ -10,14 +10,14 @@ ; target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* nocapture %a, i64 %N) nounwind { +define void @f(ptr nocapture %a, i64 %N) nounwind { entry: br label %bb bb: ; preds = %bb, %entry %i = phi i64 [ %N, %entry ], [ %i.dec, %bb ] - %scevgep = getelementptr inbounds i64, i64* %a, i64 %i - store i64 %i, i64* %scevgep + %scevgep = getelementptr inbounds i64, ptr %a, i64 %i + store i64 %i, ptr %scevgep %i.dec = add nsw i64 %i, -1 %exitcond = icmp ugt i64 %i.dec, 0 br i1 %exitcond, label %bb, label %return diff --git a/polly/test/ScopInfo/simple_loop_unsigned_3.ll b/polly/test/ScopInfo/simple_loop_unsigned_3.ll index c4df5668dab9..7783c4681e1f 100644 --- a/polly/test/ScopInfo/simple_loop_unsigned_3.ll +++ b/polly/test/ScopInfo/simple_loop_unsigned_3.ll @@ -8,14 +8,14 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* nocapture %a, i64 %N) nounwind { +define void @f(ptr nocapture %a, i64 %N) nounwind { entry: br label %bb bb: ; preds = %bb, %entry %i = phi i64 [ 1000, %entry ], [ %i.dec, %bb ] - %scevgep = getelementptr inbounds i64, i64* %a, i64 %i - store i64 %i, i64* %scevgep + %scevgep = getelementptr inbounds i64, ptr %a, i64 %i + store i64 %i, ptr %scevgep %i.dec = add nsw i64 %i, -1 %sub = sub nsw i64 %N, %i %exitcond = icmp ult i64 %sub, 0 diff --git a/polly/test/ScopInfo/simple_nonaffine_loop_not.ll b/polly/test/ScopInfo/simple_nonaffine_loop_not.ll index a4de84d414e7..42eff85d8c9b 100644 --- a/polly/test/ScopInfo/simple_nonaffine_loop_not.ll +++ b/polly/test/ScopInfo/simple_nonaffine_loop_not.ll @@ -16,8 +16,8 @@ for.body: ; preds = %entry.split, %for.b %mul = mul i32 %0, 2 %mul1 = mul nsw i32 %0, %0 %idxprom1 = zext i32 %mul1 to i64 - %arrayidx = getelementptr inbounds [1048576 x i32], [1048576 x i32]* %A, i64 0, i64 %idxprom1 - store i32 %mul, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds [1048576 x i32], ptr %A, i64 0, i64 %idxprom1 + store i32 %mul, ptr %arrayidx, align 4 %1 = add nsw i32 %0, 1 %exitcond = icmp ne i32 %1, 1024 br i1 %exitcond, label %for.body, label %for.end @@ -27,13 +27,13 @@ for.end: ; preds = %for.body %rem = srem i32 %call, 1024 %mul2 = shl nsw i32 %rem, 10 %idxprom3 = sext i32 %mul2 to i64 - %arrayidx4 = getelementptr inbounds [1048576 x i32], [1048576 x i32]* %A, i64 0, i64 %idxprom3 - %2 = load i32, i32* %arrayidx4, align 16 - %call5 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str, i64 0, i64 0), i32 %2) nounwind + %arrayidx4 = getelementptr inbounds [1048576 x i32], ptr %A, i64 0, i64 %idxprom3 + %2 = load i32, ptr %arrayidx4, align 16 + %call5 = call i32 (ptr, ...) @printf(ptr @.str, i32 %2) nounwind ret i32 0 } -declare i32 @printf(i8*, ...) +declare i32 @printf(ptr, ...) declare i32 @rand() ; CHECK: { Stmt_for_body[i0] -> MemRef_A[o0] }; diff --git a/polly/test/ScopInfo/smax.ll b/polly/test/ScopInfo/smax.ll index 230a054cc0e4..b938e4e412da 100644 --- a/polly/test/ScopInfo/smax.ll +++ b/polly/test/ScopInfo/smax.ll @@ -1,7 +1,7 @@ ; RUN: opt %loadPolly -polly-print-scops -disable-output < %s | FileCheck %s target datalayout = "e-p:32:32:32-i1:8:32-i8:8:32-i16:16:32-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:64:128-a0:0:32-n32-S64" -define void @foo(i32 * noalias %data, i32 * noalias %ptr, i32 %x_pos, i32 %w) { +define void @foo(ptr noalias %data, ptr noalias %ptr, i32 %x_pos, i32 %w) { entry: br label %for.body @@ -10,8 +10,8 @@ for.body: %add = add nsw i32 %x, %x_pos %cmp1 = icmp sgt i32 %add, %w %cond = select i1 %cmp1, i32 %w, i32 %add - %arrayidx = getelementptr inbounds i32, i32* %ptr, i32 %cond - store i32 1, i32* %arrayidx + %arrayidx = getelementptr inbounds i32, ptr %ptr, i32 %cond + store i32 1, ptr %arrayidx %x.inc = add nsw i32 %x, 1 %cmp = icmp slt i32 %x.inc, 2 br i1 %cmp, label %for.body, label %for.end diff --git a/polly/test/ScopInfo/statistics.ll b/polly/test/ScopInfo/statistics.ll index 4c621932a7c7..3797b7d71df9 100644 --- a/polly/test/ScopInfo/statistics.ll +++ b/polly/test/ScopInfo/statistics.ll @@ -38,7 +38,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @foo_1d(float* %A) { +define void @foo_1d(ptr %A) { bb: br label %bb1 @@ -49,10 +49,10 @@ bb1: ; preds = %bb6, %bb bb2: ; preds = %bb1 %tmp = sitofp i64 %i.0 to float - %tmp3 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, %tmp - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 br label %bb6 bb6: ; preds = %bb2 @@ -63,7 +63,7 @@ bb8: ; preds = %bb1 ret void } -define void @foo_2d(float* %A) { +define void @foo_2d(ptr %A) { bb: br label %bb2 @@ -84,10 +84,10 @@ bb5: ; preds = %bb4 %tmp = add nuw nsw i64 %i.0, %j.0 %tmp6 = sitofp i64 %tmp to float %tmp7 = add nuw nsw i64 %i.0, %j.0 - %tmp8 = getelementptr inbounds float, float* %A, i64 %tmp7 - %tmp9 = load float, float* %tmp8, align 4 + %tmp8 = getelementptr inbounds float, ptr %A, i64 %tmp7 + %tmp9 = load float, ptr %tmp8, align 4 %tmp10 = fadd float %tmp9, %tmp6 - store float %tmp10, float* %tmp8, align 4 + store float %tmp10, ptr %tmp8, align 4 br label %bb11 bb11: ; preds = %bb5 @@ -105,7 +105,7 @@ bb16: ; preds = %bb2 ret void } -define void @foo_3d(float* %A) { +define void @foo_3d(ptr %A) { bb: br label %bb3 @@ -136,10 +136,10 @@ bb8: ; preds = %bb7 %tmp10 = sitofp i64 %tmp9 to float %tmp11 = add nuw nsw i64 %i.0, %j.0 %tmp12 = add nuw nsw i64 %tmp11, %k.0 - %tmp13 = getelementptr inbounds float, float* %A, i64 %tmp12 - %tmp14 = load float, float* %tmp13, align 4 + %tmp13 = getelementptr inbounds float, ptr %A, i64 %tmp12 + %tmp14 = load float, ptr %tmp13, align 4 %tmp15 = fadd float %tmp14, %tmp10 - store float %tmp15, float* %tmp13, align 4 + store float %tmp15, ptr %tmp13, align 4 br label %bb16 bb16: ; preds = %bb8 @@ -164,7 +164,7 @@ bb24: ; preds = %bb3 ret void } -define void @foo_4d(float* %A) { +define void @foo_4d(ptr %A) { bb: br label %bb4 @@ -205,10 +205,10 @@ bb11: ; preds = %bb10 %tmp15 = add nuw nsw i64 %i.0, %j.0 %tmp16 = add nuw nsw i64 %tmp15, %k.0 %tmp17 = add nuw nsw i64 %tmp16, %l.0 - %tmp18 = getelementptr inbounds float, float* %A, i64 %tmp17 - %tmp19 = load float, float* %tmp18, align 4 + %tmp18 = getelementptr inbounds float, ptr %A, i64 %tmp17 + %tmp19 = load float, ptr %tmp18, align 4 %tmp20 = fadd float %tmp19, %tmp14 - store float %tmp20, float* %tmp18, align 4 + store float %tmp20, ptr %tmp18, align 4 br label %bb21 bb21: ; preds = %bb11 diff --git a/polly/test/ScopInfo/stmt_split_exit_of_region_stmt.ll b/polly/test/ScopInfo/stmt_split_exit_of_region_stmt.ll index 29ea7a757d70..d86d2418cf9b 100644 --- a/polly/test/ScopInfo/stmt_split_exit_of_region_stmt.ll +++ b/polly/test/ScopInfo/stmt_split_exit_of_region_stmt.ll @@ -19,7 +19,7 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx, align 4, !polly_split_after !0 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx, align 4, !polly_split_after !0 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_Stmt_b ; CHECK-NEXT: Domain := @@ -29,12 +29,12 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt_b[i0] -> MemRef_B[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx2, align 4 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx2, align 4 ; CHECK-NEXT: } ; CHECK-NEXT: } ; ; Function Attrs: noinline nounwind uwtable -define void @func(i32* %A, i32* %B, double* %C) { +define void @func(ptr %A, ptr %B, ptr %C) { entry: br label %for.cond @@ -51,16 +51,16 @@ Region: ; preds = %for.body br i1 %cond, label %Region_true, label %Stmt Region_true: ; preds = %Region - store double 0.000000e+00, double* %C + store double 0.000000e+00, ptr %C br label %Stmt Stmt: ; preds = %Region_true, %Region %idxprom = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - store i32 %i.0, i32* %arrayidx, align 4, !polly_split_after !0 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + store i32 %i.0, ptr %arrayidx, align 4, !polly_split_after !0 %idxprom1 = sext i32 %i.0 to i64 - %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %idxprom1 - store i32 %i.0, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %B, i64 %idxprom1 + store i32 %i.0, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %Stmt diff --git a/polly/test/ScopInfo/stmt_split_no_after_split.ll b/polly/test/ScopInfo/stmt_split_no_after_split.ll index c286ef2d25b7..f8339bd8ae94 100644 --- a/polly/test/ScopInfo/stmt_split_no_after_split.ll +++ b/polly/test/ScopInfo/stmt_split_no_after_split.ll @@ -9,12 +9,12 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx, align 4, !polly_split_after !0 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx, align 4, !polly_split_after !0 ; CHECK-NEXT: } ; CHECK-NEXT: } ; ; Function Attrs: noinline nounwind uwtable -define void @func(i32* %A) #0 { +define void @func(ptr %A) #0 { entry: br label %for.cond @@ -28,8 +28,8 @@ for.body: ; preds = %for.cond Stmt: %idxprom = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - store i32 %i.0, i32* %arrayidx, align 4, !polly_split_after !0 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + store i32 %i.0, ptr %arrayidx, align 4, !polly_split_after !0 br label %for.inc for.inc: ; preds = %Stmt diff --git a/polly/test/ScopInfo/stmt_split_no_dependence.ll b/polly/test/ScopInfo/stmt_split_no_dependence.ll index a2289dc4221b..7ad48f499792 100644 --- a/polly/test/ScopInfo/stmt_split_no_dependence.ll +++ b/polly/test/ScopInfo/stmt_split_no_dependence.ll @@ -17,7 +17,7 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx, align 4, !polly_split_after !0 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx, align 4, !polly_split_after !0 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_Stmt_b ; CHECK-NEXT: Domain := @@ -27,12 +27,12 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt_b[i0] -> MemRef_B[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx2, align 4 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx2, align 4 ; CHECK-NEXT: } ; CHECK-NEXT: } ; ; Function Attrs: noinline nounwind uwtable -define void @func(i32* %A, i32* %B) #0 { +define void @func(ptr %A, ptr %B) #0 { entry: br label %for.cond @@ -46,11 +46,11 @@ for.body: ; preds = %for.cond Stmt: ; preds = %for.body %idxprom = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - store i32 %i.0, i32* %arrayidx, align 4, !polly_split_after !0 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + store i32 %i.0, ptr %arrayidx, align 4, !polly_split_after !0 %idxprom1 = sext i32 %i.0 to i64 - %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %idxprom1 - store i32 %i.0, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %B, i64 %idxprom1 + store i32 %i.0, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %Stmt diff --git a/polly/test/ScopInfo/stmt_split_on_store.ll b/polly/test/ScopInfo/stmt_split_on_store.ll index 57a8bd6e730b..6af3dc8633dd 100644 --- a/polly/test/ScopInfo/stmt_split_on_store.ll +++ b/polly/test/ScopInfo/stmt_split_on_store.ll @@ -17,7 +17,7 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx, align 4 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx, align 4 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_Stmt_b ; CHECK-NEXT: Domain := @@ -27,12 +27,12 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt_b[i0] -> MemRef_B[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx2, align 4 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx2, align 4 ; CHECK-NEXT: } ; CHECK-NEXT: } ; ; Function Attrs: noinline nounwind uwtable -define void @func(i32* %A, i32* %B) #0 { +define void @func(ptr %A, ptr %B) #0 { entry: br label %for.cond @@ -46,11 +46,11 @@ for.body: ; preds = %for.cond Stmt: ; preds = %for.body %idxprom = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - store i32 %i.0, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + store i32 %i.0, ptr %arrayidx, align 4 %idxprom1 = sext i32 %i.0 to i64 - %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %idxprom1 - store i32 %i.0, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %B, i64 %idxprom1 + store i32 %i.0, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %Stmt diff --git a/polly/test/ScopInfo/stmt_split_on_synthesizable.ll b/polly/test/ScopInfo/stmt_split_on_synthesizable.ll index 46b15db59703..92855cfd0124 100644 --- a/polly/test/ScopInfo/stmt_split_on_synthesizable.ll +++ b/polly/test/ScopInfo/stmt_split_on_synthesizable.ll @@ -9,7 +9,7 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx, align 4 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx, align 4 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_Stmt_b ; CHECK-NEXT: Domain := @@ -19,12 +19,12 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt_b[i0] -> MemRef_B[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx2, align 4 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx2, align 4 ; CHECK-NEXT: } ; CHECK-NEXT: } ; ; Function Attrs: noinline nounwind uwtable -define void @func(i32* %A, i32* %B, double* %C) #0 { +define void @func(ptr %A, ptr %B, ptr %C) #0 { entry: br label %for.cond @@ -38,11 +38,11 @@ for.body: ; preds = %for.cond Stmt: %idxprom = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - store i32 %i.0, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + store i32 %i.0, ptr %arrayidx, align 4 %idxprom1 = sext i32 %i.0 to i64, !polly_split_after !0 - %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %idxprom1 - store i32 %i.0, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %B, i64 %idxprom1 + store i32 %i.0, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %Stmt diff --git a/polly/test/ScopInfo/stmt_split_phi_in_beginning_bb.ll b/polly/test/ScopInfo/stmt_split_phi_in_beginning_bb.ll index 8c62b0c8800a..ee6afa4638d2 100644 --- a/polly/test/ScopInfo/stmt_split_phi_in_beginning_bb.ll +++ b/polly/test/ScopInfo/stmt_split_phi_in_beginning_bb.ll @@ -9,7 +9,7 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %phi, i32* %arrayidx, align 4, !polly_split_after !0 +; CHECK-NEXT: store i32 %phi, ptr %arrayidx, align 4, !polly_split_after !0 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_Stmt_b ; CHECK-NEXT: Domain := @@ -19,12 +19,12 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt_b[i0] -> MemRef_B[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx2, align 4 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx2, align 4 ; CHECK-NEXT: } ; CHECK-NEXT: } ; ; Function Attrs: noinline nounwind uwtable -define void @func(i32* %A, i32* %B) #0 { +define void @func(ptr %A, ptr %B) #0 { entry: br label %for.cond @@ -39,11 +39,11 @@ for.body: ; preds = %for.cond Stmt: %phi = phi i32 [0, %for.body] %idxprom = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - store i32 %phi, i32* %arrayidx, align 4, !polly_split_after !0 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + store i32 %phi, ptr %arrayidx, align 4, !polly_split_after !0 %idxprom1 = sext i32 %i.0 to i64 - %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %idxprom1 - store i32 %i.0, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %B, i64 %idxprom1 + store i32 %i.0, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %Stmt diff --git a/polly/test/ScopInfo/stmt_split_phi_in_stmt.ll b/polly/test/ScopInfo/stmt_split_phi_in_stmt.ll index e1179eaf76d8..0a5f41d637e7 100644 --- a/polly/test/ScopInfo/stmt_split_phi_in_stmt.ll +++ b/polly/test/ScopInfo/stmt_split_phi_in_stmt.ll @@ -9,7 +9,7 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt[i0] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx, align 4, !polly_split_after !0 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx, align 4, !polly_split_after !0 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_Stmt_b ; CHECK-NEXT: Domain := @@ -22,7 +22,7 @@ ; CHECK-NEXT: { Stmt_Stmt_b[i0] -> MemRef_phi__phi[] }; ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %d = fadd double 2.100000e+01, 2.100000e+01 -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx2, align 4 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx2, align 4 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_for_inc ; CHECK-NEXT: Domain := @@ -35,12 +35,12 @@ ; CHECK-NEXT: { Stmt_for_inc[i0] -> MemRef_C[0] }; ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %phi = phi double [ %d, %Stmt ] -; CHECK-NEXT: store double %phi, double* %C +; CHECK-NEXT: store double %phi, ptr %C ; CHECK-NEXT: } ; CHECK-NEXT: } ; ; Function Attrs: noinline nounwind uwtable -define void @func(i32* %A, i32* %B, double* %C) #0 { +define void @func(ptr %A, ptr %B, ptr %C) #0 { entry: br label %for.cond @@ -54,17 +54,17 @@ for.body: ; preds = %for.cond Stmt: %idxprom = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - store i32 %i.0, i32* %arrayidx, align 4, !polly_split_after !0 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + store i32 %i.0, ptr %arrayidx, align 4, !polly_split_after !0 %idxprom1 = sext i32 %i.0 to i64 %d = fadd double 21.0, 21.0 - %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %idxprom1 - store i32 %i.0, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %B, i64 %idxprom1 + store i32 %i.0, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %Stmt %phi = phi double [%d, %Stmt] - store double %phi, double* %C + store double %phi, ptr %C %add = add nsw i32 %i.0, 1 br label %for.cond diff --git a/polly/test/ScopInfo/stmt_split_scalar_dependence.ll b/polly/test/ScopInfo/stmt_split_scalar_dependence.ll index 143c4ec1648a..5b02d1b5d08a 100644 --- a/polly/test/ScopInfo/stmt_split_scalar_dependence.ll +++ b/polly/test/ScopInfo/stmt_split_scalar_dependence.ll @@ -12,7 +12,7 @@ ; CHECK-NEXT: { Stmt_Stmt[i0] -> MemRef_a[] }; ; CHECK-NEXT: Instructions { ; CHECK-NEXT: %a = fadd double 2.100000e+01, 2.100000e+01 -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx, align 4, !polly_split_after !0 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx, align 4, !polly_split_after !0 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_Stmt_b ; CHECK-NEXT: Domain := @@ -24,12 +24,12 @@ ; CHECK-NEXT: ReadAccess := [Reduction Type: NONE] [Scalar: 1] ; CHECK-NEXT: { Stmt_Stmt_b[i0] -> MemRef_a[] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store double %a, double* %B +; CHECK-NEXT: store double %a, ptr %B ; CHECK-NEXT: } ; CHECK-NEXT: } ; ; Function Attrs: noinline nounwind uwtable -define void @func(i32* %A, double* %B) #0 { +define void @func(ptr %A, ptr %B) #0 { entry: br label %for.cond @@ -44,9 +44,9 @@ for.body: ; preds = %for.cond Stmt: %a = fadd double 21.0, 21.0 %idxprom = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - store i32 %i.0, i32* %arrayidx, align 4, !polly_split_after !0 - store double %a, double* %B + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + store i32 %i.0, ptr %arrayidx, align 4, !polly_split_after !0 + store double %a, ptr %B br label %for.inc for.inc: ; preds = %Stmt diff --git a/polly/test/ScopInfo/stmt_split_within_loop.ll b/polly/test/ScopInfo/stmt_split_within_loop.ll index 44ff3d403c16..3ed9bbbeaccb 100644 --- a/polly/test/ScopInfo/stmt_split_within_loop.ll +++ b/polly/test/ScopInfo/stmt_split_within_loop.ll @@ -9,7 +9,7 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt[i0, i1] -> MemRef_A[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx, align 4, !polly_split_after !0 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx, align 4, !polly_split_after !0 ; CHECK-NEXT: } ; CHECK-NEXT: Stmt_Stmt_b ; CHECK-NEXT: Domain := @@ -19,13 +19,13 @@ ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 0] ; CHECK-NEXT: { Stmt_Stmt_b[i0, i1] -> MemRef_B[i0] }; ; CHECK-NEXT: Instructions { -; CHECK-NEXT: store i32 %i.0, i32* %arrayidx2, align 4 +; CHECK-NEXT: store i32 %i.0, ptr %arrayidx2, align 4 ; CHECK-NEXT: %cond = icmp slt i32 %j, 512 ; CHECK-NEXT: } ; CHECK-NEXT: } ; ; Function Attrs: noinline nounwind uwtable -define void @func(i32* %A, i32* %B, double* %C) #0 { +define void @func(ptr %A, ptr %B, ptr %C) #0 { entry: br label %for.cond @@ -40,11 +40,11 @@ for.body: ; preds = %for.cond Stmt: %j = phi i32 [ 0, %for.body ], [ %inc, %Stmt ] %idxprom = sext i32 %i.0 to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - store i32 %i.0, i32* %arrayidx, align 4, !polly_split_after !0 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + store i32 %i.0, ptr %arrayidx, align 4, !polly_split_after !0 %idxprom1 = sext i32 %i.0 to i64 - %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %idxprom1 - store i32 %i.0, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %B, i64 %idxprom1 + store i32 %i.0, ptr %arrayidx2, align 4 %inc = add nsw i32 %j, 1 %cond = icmp slt i32 %j, 512 br i1 %cond, label %Stmt, label %for.inc diff --git a/polly/test/ScopInfo/stmt_with_read_but_without_sideffect.ll b/polly/test/ScopInfo/stmt_with_read_but_without_sideffect.ll index 3e3f2df3b33a..73fc543a66e8 100644 --- a/polly/test/ScopInfo/stmt_with_read_but_without_sideffect.ll +++ b/polly/test/ScopInfo/stmt_with_read_but_without_sideffect.ll @@ -31,8 +31,8 @@ for.cond33.preheader: ; preds = %for.inc.1 for.cond7.preheader: ; preds = %for.inc.1, %for.body %indvars.iv958 = phi i64 [ 0, %for.body ], [ %indvars.iv.next959, %for.inc.1 ] %tmp20 = add nuw nsw i64 %indvars.iv958, %tmp5 - %arrayidx = getelementptr inbounds [88 x float], [88 x float]* @ATH, i64 0, i64 %tmp20 - %tmp21 = load float, float* %arrayidx, align 4 + %arrayidx = getelementptr inbounds [88 x float], ptr @ATH, i64 0, i64 %tmp20 + %tmp21 = load float, ptr %arrayidx, align 4 %tmp22 = add nuw nsw i64 %tmp20, 1 %cmp12.1 = icmp ult i64 %tmp22, 88 br i1 %cmp12.1, label %if.then.1, label %if.else.1 @@ -46,21 +46,19 @@ if.else.1: ; preds = %for.cond7.preheader br label %for.inc.1 if.then.1: ; preds = %for.cond7.preheader - %arrayidx.1 = getelementptr inbounds [88 x float], [88 x float]* @ATH, i64 0, i64 %tmp22 - %tmp155 = load float, float* %arrayidx.1, align 4 + %arrayidx.1 = getelementptr inbounds [88 x float], ptr @ATH, i64 0, i64 %tmp22 + %tmp155 = load float, ptr %arrayidx.1, align 4 %cmp16.1 = fcmp ogt float %tmp21, %tmp155 br label %for.inc.1 for.inc.1: ; preds = %if.then.1, %if.else.1 %min.1.1 = phi float [ %tmp155, %if.then.1 ], [ -3.000000e+01, %if.else.1 ] - %arrayidx.2 = getelementptr inbounds [88 x float], [88 x float]* @ATH, i64 0, i64 0 - %tmp157 = load float, float* %arrayidx.2, align 4 + %tmp157 = load float, ptr @ATH, align 4 %cmp16.2 = fcmp ogt float %min.1.1, %tmp157 - %arrayidx.3 = getelementptr inbounds [88 x float], [88 x float]* @ATH, i64 0, i64 0 - %tmp159 = load float, float* %arrayidx.3, align 4 + %tmp159 = load float, ptr @ATH, align 4 %cmp16.3 = fcmp ogt float %tmp157, %tmp159 - %arrayidx29 = getelementptr inbounds [56 x float], [56 x float]* %ath, i64 0, i64 %indvars.iv958 - store float %tmp159, float* %arrayidx29, align 4 + %arrayidx29 = getelementptr inbounds [56 x float], ptr %ath, i64 0, i64 %indvars.iv958 + store float %tmp159, ptr %arrayidx29, align 4 %indvars.iv.next959 = add nuw nsw i64 %indvars.iv958, 1 %exitcond961 = icmp eq i64 %indvars.iv.next959, 56 br i1 %exitcond961, label %for.cond33.preheader, label %for.cond7.preheader diff --git a/polly/test/ScopInfo/switch-1.ll b/polly/test/ScopInfo/switch-1.ll index 6eafe6cbb370..0ea40a7ed251 100644 --- a/polly/test/ScopInfo/switch-1.ll +++ b/polly/test/ScopInfo/switch-1.ll @@ -64,7 +64,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -88,24 +88,24 @@ sw.bb: ; preds = %for.body br label %sw.epilog sw.bb.1: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp2, 1 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %sw.epilog sw.bb.2: ; preds = %for.body - %arrayidx4 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp3 = load i32, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp3 = load i32, ptr %arrayidx4, align 4 %add5 = add nsw i32 %tmp3, 2 - store i32 %add5, i32* %arrayidx4, align 4 + store i32 %add5, ptr %arrayidx4, align 4 br label %sw.epilog sw.bb.6: ; preds = %for.body - %arrayidx8 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp4 = load i32, i32* %arrayidx8, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp4 = load i32, ptr %arrayidx8, align 4 %add9 = add nsw i32 %tmp4, 3 - store i32 %add9, i32* %arrayidx8, align 4 + store i32 %add9, ptr %arrayidx8, align 4 br label %sw.epilog sw.epilog: ; preds = %sw.bb.6, %sw.bb.2, %sw.bb.1, %sw.bb, %for.body diff --git a/polly/test/ScopInfo/switch-2.ll b/polly/test/ScopInfo/switch-2.ll index 93b5f0380d02..7956058c9de6 100644 --- a/polly/test/ScopInfo/switch-2.ll +++ b/polly/test/ScopInfo/switch-2.ll @@ -51,7 +51,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -72,20 +72,20 @@ for.body: ; preds = %for.cond ] sw.bb: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp2, 1 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %sw.epilog sw.bb.1: ; preds = %for.body br label %sw.epilog sw.bb.2: ; preds = %for.body - %arrayidx4 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp3 = load i32, i32* %arrayidx4, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp3 = load i32, ptr %arrayidx4, align 4 %add5 = add nsw i32 %tmp3, 2 - store i32 %add5, i32* %arrayidx4, align 4 + store i32 %add5, ptr %arrayidx4, align 4 br label %sw.epilog sw.bb.6: ; preds = %for.body diff --git a/polly/test/ScopInfo/switch-3.ll b/polly/test/ScopInfo/switch-3.ll index a03e974abae3..aa7ada4edbb8 100644 --- a/polly/test/ScopInfo/switch-3.ll +++ b/polly/test/ScopInfo/switch-3.ll @@ -75,7 +75,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -96,31 +96,31 @@ for.body: ; preds = %for.cond ] sw.bb: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp2, 1 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %sw.bb.1 sw.bb.1: ; preds = %sw.bb, %for.body - %arrayidx3 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp3 = load i32, i32* %arrayidx3, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp3 = load i32, ptr %arrayidx3, align 4 %add4 = add nsw i32 %tmp3, 2 - store i32 %add4, i32* %arrayidx3, align 4 + store i32 %add4, ptr %arrayidx3, align 4 br label %sw.epilog sw.bb.5: ; preds = %for.body - %arrayidx7 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp4 = load i32, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp4 = load i32, ptr %arrayidx7, align 4 %add8 = add nsw i32 %tmp4, 3 - store i32 %add8, i32* %arrayidx7, align 4 + store i32 %add8, ptr %arrayidx7, align 4 br label %sw.bb.9 sw.bb.9: ; preds = %sw.bb.5, %for.body - %arrayidx11 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp5 = load i32, i32* %arrayidx11, align 4 + %arrayidx11 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp5 = load i32, ptr %arrayidx11, align 4 %add12 = add nsw i32 %tmp5, 4 - store i32 %add12, i32* %arrayidx11, align 4 + store i32 %add12, ptr %arrayidx11, align 4 br label %sw.epilog sw.epilog: ; preds = %sw.bb.9, %sw.bb.1, %for.body diff --git a/polly/test/ScopInfo/switch-4.ll b/polly/test/ScopInfo/switch-4.ll index 62157e35b67c..6aeb7197e382 100644 --- a/polly/test/ScopInfo/switch-4.ll +++ b/polly/test/ScopInfo/switch-4.ll @@ -79,7 +79,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -100,42 +100,42 @@ for.body: ; preds = %for.cond ] sw.bb: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp4 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp4 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp4, 1 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %sw.epilog sw.bb.1: ; preds = %for.body - %arrayidx3 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp5 = load i32, i32* %arrayidx3, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp5 = load i32, ptr %arrayidx3, align 4 %add4 = add nsw i32 %tmp5, 2 - store i32 %add4, i32* %arrayidx3, align 4 + store i32 %add4, ptr %arrayidx3, align 4 br label %sw.epilog sw.bb.5: ; preds = %for.body - %arrayidx7 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp6 = load i32, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp6 = load i32, ptr %arrayidx7, align 4 %add8 = add nsw i32 %tmp6, 3 - store i32 %add8, i32* %arrayidx7, align 4 + store i32 %add8, ptr %arrayidx7, align 4 br label %sw.epilog sw.bb.9: ; preds = %for.body - %arrayidx11 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp7 = load i32, i32* %arrayidx11, align 4 + %arrayidx11 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp7 = load i32, ptr %arrayidx11, align 4 %add12 = add nsw i32 %tmp7, 4 - store i32 %add12, i32* %arrayidx11, align 4 + store i32 %add12, ptr %arrayidx11, align 4 br label %sw.epilog sw.default: ; preds = %for.body %tmp8 = add nuw nsw i64 %indvars.iv, 1 - %arrayidx15 = getelementptr inbounds i32, i32* %A, i64 %tmp8 - %tmp9 = load i32, i32* %arrayidx15, align 4 + %arrayidx15 = getelementptr inbounds i32, ptr %A, i64 %tmp8 + %tmp9 = load i32, ptr %arrayidx15, align 4 %tmp10 = add nsw i64 %indvars.iv, -1 - %arrayidx17 = getelementptr inbounds i32, i32* %A, i64 %tmp10 - %tmp11 = load i32, i32* %arrayidx17, align 4 + %arrayidx17 = getelementptr inbounds i32, ptr %A, i64 %tmp10 + %tmp11 = load i32, ptr %arrayidx17, align 4 %add18 = add nsw i32 %tmp11, %tmp9 - store i32 %add18, i32* %arrayidx17, align 4 + store i32 %add18, ptr %arrayidx17, align 4 br label %sw.epilog sw.epilog: ; preds = %sw.default, %sw.bb.9, %sw.bb.5, %sw.bb.1, %sw.bb diff --git a/polly/test/ScopInfo/switch-5.ll b/polly/test/ScopInfo/switch-5.ll index 09b1829f2bb5..24cc92a0933d 100644 --- a/polly/test/ScopInfo/switch-5.ll +++ b/polly/test/ScopInfo/switch-5.ll @@ -42,7 +42,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32* %B, i32 %N) { +define void @f(ptr %A, ptr %B, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -53,19 +53,19 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp, label %for.body, label %for.end.loopexit for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp1, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 switch i32 %N, label %sw.default [ i32 0, label %sw.bb ] sw.bb: ; preds = %for.body - %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %B, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx2, align 4 %inc3 = add nsw i32 %tmp2, 1 - store i32 %inc3, i32* %arrayidx2, align 4 + store i32 %inc3, ptr %arrayidx2, align 4 br label %sw.epilog sw.default: ; preds = %for.body diff --git a/polly/test/ScopInfo/switch-6.ll b/polly/test/ScopInfo/switch-6.ll index 7b5c78296f96..efb3df504d23 100644 --- a/polly/test/ScopInfo/switch-6.ll +++ b/polly/test/ScopInfo/switch-6.ll @@ -79,7 +79,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: %tmp = sext i32 %N to i64 br label %for.cond @@ -99,31 +99,31 @@ for.body: ; preds = %for.cond ] sw.bb: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %add = add nsw i32 %tmp2, 1 - store i32 %add, i32* %arrayidx, align 4 + store i32 %add, ptr %arrayidx, align 4 br label %sw.epilog sw.bb.1: ; preds = %for.body - %arrayidx3 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp3 = load i32, i32* %arrayidx3, align 4 + %arrayidx3 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp3 = load i32, ptr %arrayidx3, align 4 %add4 = add nsw i32 %tmp3, 2 - store i32 %add4, i32* %arrayidx3, align 4 + store i32 %add4, ptr %arrayidx3, align 4 br label %sw.epilog sw.bb.5: ; preds = %for.body - %arrayidx7 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp4 = load i32, i32* %arrayidx7, align 4 + %arrayidx7 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp4 = load i32, ptr %arrayidx7, align 4 %add8 = add nsw i32 %tmp4, 3 - store i32 %add8, i32* %arrayidx7, align 4 + store i32 %add8, ptr %arrayidx7, align 4 br label %sw.epilog sw.bb.9: ; preds = %for.body - %arrayidx11 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp5 = load i32, i32* %arrayidx11, align 4 + %arrayidx11 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp5 = load i32, ptr %arrayidx11, align 4 %add12 = add nsw i32 %tmp5, 4 - store i32 %add12, i32* %arrayidx11, align 4 + store i32 %add12, ptr %arrayidx11, align 4 br label %sw.epilog sw.default: ; preds = %for.body diff --git a/polly/test/ScopInfo/switch-7.ll b/polly/test/ScopInfo/switch-7.ll index 1f102bde6efd..2f0d034e84fe 100644 --- a/polly/test/ScopInfo/switch-7.ll +++ b/polly/test/ScopInfo/switch-7.ll @@ -56,7 +56,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %c, i32 %N) { +define void @f(ptr %A, i32 %c, i32 %N) { entry: br label %entry.split @@ -79,12 +79,12 @@ for.cond: ; preds = %for.inc, %sw.bb for.body: ; preds = %for.cond %sub = add nsw i32 %j.0, -1 %idxprom = sext i32 %sub to i64 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom - %tmp6 = load i32, i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp7 = load i32, i32* %arrayidx2, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %idxprom + %tmp6 = load i32, ptr %arrayidx, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp7 = load i32, ptr %arrayidx2, align 4 %add = add nsw i32 %tmp7, %tmp6 - store i32 %add, i32* %arrayidx2, align 4 + store i32 %add, ptr %arrayidx2, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -106,12 +106,12 @@ for.cond.5: ; preds = %for.inc.14, %sw.bb. for.body.7: ; preds = %for.cond.5 %tmp9 = add nsw i64 %indvars.iv3, -1 - %arrayidx10 = getelementptr inbounds i32, i32* %A, i64 %tmp9 - %tmp10 = load i32, i32* %arrayidx10, align 4 - %arrayidx12 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv3 - %tmp11 = load i32, i32* %arrayidx12, align 4 + %arrayidx10 = getelementptr inbounds i32, ptr %A, i64 %tmp9 + %tmp10 = load i32, ptr %arrayidx10, align 4 + %arrayidx12 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv3 + %tmp11 = load i32, ptr %arrayidx12, align 4 %add13 = add nsw i32 %tmp11, %tmp10 - store i32 %add13, i32* %arrayidx12, align 4 + store i32 %add13, ptr %arrayidx12, align 4 br label %for.inc.14 for.inc.14: ; preds = %for.body.7 diff --git a/polly/test/ScopInfo/tempscop-printing.ll b/polly/test/ScopInfo/tempscop-printing.ll index ea852e50b2b9..80c675d4c3d3 100644 --- a/polly/test/ScopInfo/tempscop-printing.ll +++ b/polly/test/ScopInfo/tempscop-printing.ll @@ -42,7 +42,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* noalias %A, i64 %N, i64* noalias %init_ptr) nounwind { +define void @f(ptr noalias %A, i64 %N, ptr noalias %init_ptr) nounwind { entry: br label %for.i @@ -52,14 +52,14 @@ for.i: br label %entry.next entry.next: - %init = load i64, i64* %init_ptr + %init = load i64, ptr %init_ptr br label %for.j for.j: %indvar.j = phi i64 [ 0, %entry.next ], [ %indvar.j.next, %for.j ] %init_plus_two = add i64 %init, 2 - %scevgep = getelementptr i64, i64* %A, i64 %indvar.j - store i64 %init_plus_two, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar.j + store i64 %init_plus_two, ptr %scevgep %indvar.j.next = add nsw i64 %indvar.j, 1 %exitcond.j = icmp eq i64 %indvar.j.next, %N br i1 %exitcond.j, label %for.i.end, label %for.j @@ -72,7 +72,7 @@ return: ret void } -define void @g(i64* noalias %A, i64 %N, i64* noalias %init_ptr) nounwind { +define void @g(ptr noalias %A, i64 %N, ptr noalias %init_ptr) nounwind { entry: br label %for.i @@ -82,13 +82,13 @@ for.i: br label %entry.next entry.next: - %init = load i64, i64* %init_ptr + %init = load i64, ptr %init_ptr br label %for.j for.j: %indvar.j = phi i64 [ 0, %entry.next ], [ %indvar.j.next, %for.j ] - %scevgep = getelementptr i64, i64* %A, i64 %indvar.j - store i64 %init, i64* %scevgep + %scevgep = getelementptr i64, ptr %A, i64 %indvar.j + store i64 %init, ptr %scevgep %indvar.j.next = add nsw i64 %indvar.j, 1 %exitcond.j = icmp eq i64 %indvar.j.next, %N br i1 %exitcond.j, label %for.i.end, label %for.j diff --git a/polly/test/ScopInfo/test-wrapping-in-condition.ll b/polly/test/ScopInfo/test-wrapping-in-condition.ll index 5b4da78bb587..3ff978f7265e 100644 --- a/polly/test/ScopInfo/test-wrapping-in-condition.ll +++ b/polly/test/ScopInfo/test-wrapping-in-condition.ll @@ -12,7 +12,7 @@ ; if ((signed char)i < 100) ; A[i] += i; ; } -define void @foo(float* %A, i64 %N) { +define void @foo(ptr %A, i64 %N) { bb: br label %bb1 @@ -28,10 +28,10 @@ bb2: ; preds = %bb1 bb5: ; preds = %bb2 %tmp6 = sitofp i64 %i.0 to float - %tmp7 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp8 = load float, float* %tmp7, align 4 + %tmp7 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp8 = load float, ptr %tmp7, align 4 %tmp9 = fadd float %tmp8, %tmp6 - store float %tmp9, float* %tmp7, align 4 + store float %tmp9, ptr %tmp7, align 4 br label %bb10 bb10: ; preds = %bb5, %bb2 diff --git a/polly/test/ScopInfo/truncate-1.ll b/polly/test/ScopInfo/truncate-1.ll index de985b8dc8c4..5c5fac150b4b 100644 --- a/polly/test/ScopInfo/truncate-1.ll +++ b/polly/test/ScopInfo/truncate-1.ll @@ -16,7 +16,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i8* %A, i16 signext %N) { +define void @f(ptr %A, i16 signext %N) { entry: br label %for.cond @@ -31,10 +31,10 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %idxprom = sext i8 %i.0 to i64 - %arrayidx = getelementptr inbounds i8, i8* %A, i64 %idxprom - %tmp = load i8, i8* %arrayidx, align 1 + %arrayidx = getelementptr inbounds i8, ptr %A, i64 %idxprom + %tmp = load i8, ptr %arrayidx, align 1 %inc = add i8 %tmp, 1 - store i8 %inc, i8* %arrayidx, align 1 + store i8 %inc, ptr %arrayidx, align 1 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/truncate-2.ll b/polly/test/ScopInfo/truncate-2.ll index 675af1a79d6e..e6c5f2cb32d0 100644 --- a/polly/test/ScopInfo/truncate-2.ll +++ b/polly/test/ScopInfo/truncate-2.ll @@ -18,7 +18,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i8* %A, i16 signext %N) { +define void @f(ptr %A, i16 signext %N) { entry: br label %for.cond @@ -29,10 +29,10 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %idxprom = trunc i16 %N to i8 - %arrayidx = getelementptr inbounds i8, i8* %A, i8 %idxprom - %tmp1 = load i8, i8* %arrayidx, align 1 + %arrayidx = getelementptr inbounds i8, ptr %A, i8 %idxprom + %tmp1 = load i8, ptr %arrayidx, align 1 %inc = add i8 %tmp1, 1 - store i8 %inc, i8* %arrayidx, align 1 + store i8 %inc, ptr %arrayidx, align 1 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/truncate-3.ll b/polly/test/ScopInfo/truncate-3.ll index f6a1f3920eb1..dd0fe489e990 100644 --- a/polly/test/ScopInfo/truncate-3.ll +++ b/polly/test/ScopInfo/truncate-3.ll @@ -10,15 +10,15 @@ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" -define void @wobble(i16* %A, i32 %p) { +define void @wobble(ptr %A, i32 %p) { bb: %tmp1 = and i32 %p, 255 br label %bb4 bb4: ; preds = %bb4, %bb - %indvar = phi i16* [ %A, %bb ], [ %indvar.next, %bb4 ] - %val = load i16, i16* %indvar - %indvar.next = getelementptr inbounds i16, i16* %indvar, i32 %tmp1 + %indvar = phi ptr [ %A, %bb ], [ %indvar.next, %bb4 ] + %val = load i16, ptr %indvar + %indvar.next = getelementptr inbounds i16, ptr %indvar, i32 %tmp1 br i1 false, label %bb4, label %bb9 bb9: ; preds = %bb4 diff --git a/polly/test/ScopInfo/two-loops-one-infinite.ll b/polly/test/ScopInfo/two-loops-one-infinite.ll index ae7c71887604..71f72383b048 100644 --- a/polly/test/ScopInfo/two-loops-one-infinite.ll +++ b/polly/test/ScopInfo/two-loops-one-infinite.ll @@ -6,15 +6,15 @@ ; target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n8:16:32-S64" -define void @foo(i32* noalias nocapture readonly %xxx, i32* noalias nocapture readonly %yyy, i8*** nocapture readonly %zzz, i32 %conv6) { +define void @foo(ptr noalias nocapture readonly %xxx, ptr noalias nocapture readonly %yyy, ptr nocapture readonly %zzz, i32 %conv6) { while.body.us.preheader: - %a2 = load i8**, i8*** %zzz, align 4 + %a2 = load ptr, ptr %zzz, align 4 %sub = add nsw i32 %conv6, -1 br label %while.body.us while.body.us: ; preds = %while.body.us.preheader, %if.then.us %uuu = phi i32 [ %www, %if.then.us ], [ 0, %while.body.us.preheader ] - %a13 = load i32, i32* %yyy, align 8 + %a13 = load i32, ptr %yyy, align 8 %vvv = icmp sgt i32 %a13, 0 br i1 %vvv, label %while.body.13.us58.preheader, label %if.then.us @@ -23,9 +23,9 @@ while.body.13.us58.preheader: ; preds = %while.body.us if.then.us: ; preds = %while.body.us %add.us = add nuw nsw i32 %uuu, 1 - tail call void @goo(i8** %a2, i32 %uuu, i8** %a2, i32 %add.us, i32 %sub, i32 %a13) #3 + tail call void @goo(ptr %a2, i32 %uuu, ptr %a2, i32 %add.us, i32 %sub, i32 %a13) #3 %www = add nuw nsw i32 %uuu, %conv6 - %a14 = load i32, i32* %xxx, align 4 + %a14 = load i32, ptr %xxx, align 4 %cmp.us = icmp slt i32 %www, %a14 br i1 %cmp.us, label %while.body.us, label %while.end.21.loopexit145 @@ -36,5 +36,5 @@ while.end.21.loopexit145: ret void } -declare void @goo(i8**, i32, i8**, i32, i32, i32) #1 +declare void @goo(ptr, i32, ptr, i32, i32, i32) #1 diff --git a/polly/test/ScopInfo/two-loops-right-after-each-other.ll b/polly/test/ScopInfo/two-loops-right-after-each-other.ll index a164513f1688..dd457c31afdd 100644 --- a/polly/test/ScopInfo/two-loops-right-after-each-other.ll +++ b/polly/test/ScopInfo/two-loops-right-after-each-other.ll @@ -21,7 +21,7 @@ ; CHECK-NEXT: [N] -> { Stmt_loop_2[i0] -> MemRef_A[0] }; ; CHECK-NEXT: } -define void @foo(float* %A, i64 %N) { +define void @foo(ptr %A, i64 %N) { entry: br label %branch @@ -32,18 +32,18 @@ branch: loop.1: %indvar.1 = phi i64 [0, %branch], [%indvar.next.1, %loop.1] %indvar.next.1 = add i64 %indvar.1, 1 - %val.1 = load float, float* %A + %val.1 = load float, ptr %A %sum.1 = fadd float %val.1, 1.0 - store float %sum.1, float* %A + store float %sum.1, ptr %A %cond.1 = icmp sle i64 %indvar.1, 100 br i1 %cond.1, label %loop.1, label %loop.2 loop.2: %indvar.2 = phi i64 [0, %loop.1], [%indvar.next.2, %loop.2] %indvar.next.2 = add i64 %indvar.2, 1 - %val.2 = load float, float* %A + %val.2 = load float, ptr %A %sum.2 = fadd float %val.2, 1.0 - store float %sum.2, float* %A + store float %sum.2, ptr %A %cond.2 = icmp sle i64 %indvar.2, 300 br i1 %cond.2, label %loop.2, label %merge diff --git a/polly/test/ScopInfo/unnamed_nonaffine.ll b/polly/test/ScopInfo/unnamed_nonaffine.ll index 61516e2fbca3..bf32cc7806f4 100644 --- a/polly/test/ScopInfo/unnamed_nonaffine.ll +++ b/polly/test/ScopInfo/unnamed_nonaffine.ll @@ -94,7 +94,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %b) { +define void @f(ptr %A, i32 %b) { bb: br label %bb1 @@ -124,15 +124,15 @@ bb8: ; preds = %bb4 bb10: ; preds = %bb9, %bb3 %x.1 = phi i32 [ 0, %bb3 ], [ 3, %bb7 ], [ %b, %bb8 ] %tmp11 = sext i32 %x.1 to i64 - %tmp12 = getelementptr inbounds i32, i32* %A, i64 %tmp11 - %tmp13 = load i32, i32* %tmp12, align 4 + %tmp12 = getelementptr inbounds i32, ptr %A, i64 %tmp11 + %tmp13 = load i32, ptr %tmp12, align 4 %tmp14 = icmp eq i32 %tmp13, 0 br i1 %tmp14, label %bb18, label %bb15 bb15: ; preds = %bb10 %tmp16 = sext i32 %x.1 to i64 - %tmp17 = getelementptr inbounds i32, i32* %A, i64 %tmp16 - store i32 0, i32* %tmp17, align 4 + %tmp17 = getelementptr inbounds i32, ptr %A, i64 %tmp16 + store i32 0, ptr %tmp17, align 4 br label %bb18 bb18: ; preds = %bb10, %bb15 diff --git a/polly/test/ScopInfo/unnamed_stmts.ll b/polly/test/ScopInfo/unnamed_stmts.ll index 4cf4f5551783..686c0f87d9cf 100644 --- a/polly/test/ScopInfo/unnamed_stmts.ll +++ b/polly/test/ScopInfo/unnamed_stmts.ll @@ -48,7 +48,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @vec3(i64 %n, float*, float*) #0 { +define void @vec3(i64 %n, ptr, ptr) #0 { br label %.split .split: ; preds = %0 @@ -77,15 +77,15 @@ define void @vec3(i64 %n, float*, float*) #0 { ; <label>:4: ; preds = %.lr.ph8, %4 %j.07 = phi i64 [ 0, %.lr.ph8 ], [ %14, %4 ] %5 = mul nsw i64 %i.010, %n - %6 = getelementptr inbounds float, float* %1, i64 %5 - %7 = getelementptr inbounds float, float* %6, i64 %j.07 - %8 = load float, float* %7, align 4 + %6 = getelementptr inbounds float, ptr %1, i64 %5 + %7 = getelementptr inbounds float, ptr %6, i64 %j.07 + %8 = load float, ptr %7, align 4 %9 = mul nsw i64 %i.010, %n - %10 = getelementptr inbounds float, float* %0, i64 %9 - %11 = getelementptr inbounds float, float* %10, i64 %j.07 - %12 = load float, float* %11, align 4 + %10 = getelementptr inbounds float, ptr %0, i64 %9 + %11 = getelementptr inbounds float, ptr %10, i64 %j.07 + %12 = load float, ptr %11, align 4 %13 = fadd float %8, %12 - store float %13, float* %11, align 4 + store float %13, ptr %11, align 4 %14 = add nuw nsw i64 %j.07, 1 %exitcond13 = icmp ne i64 %14, %n br i1 %exitcond13, label %4, label %._crit_edge9 @@ -109,19 +109,19 @@ define void @vec3(i64 %n, float*, float*) #0 { ; <label>:18: ; preds = %.lr.ph, %18 %j2.03 = phi i64 [ 0, %.lr.ph ], [ %28, %"2" ] %19 = mul nsw i64 %i1.04, %n - %20 = getelementptr inbounds float, float* %0, i64 %19 - %21 = getelementptr inbounds float, float* %20, i64 %j2.03 - %22 = load float, float* %21, align 4 + %20 = getelementptr inbounds float, ptr %0, i64 %19 + %21 = getelementptr inbounds float, ptr %20, i64 %j2.03 + %22 = load float, ptr %21, align 4 %23 = mul nsw i64 %i1.04, %n - %24 = getelementptr inbounds float, float* %1, i64 %23 - %25 = getelementptr inbounds float, float* %24, i64 %j2.03 - %26 = load float, float* %25, align 4 + %24 = getelementptr inbounds float, ptr %1, i64 %23 + %25 = getelementptr inbounds float, ptr %24, i64 %j2.03 + %26 = load float, ptr %25, align 4 %27 = fadd float %22, %26 - store float %27, float* %25, align 4 + store float %27, ptr %25, align 4 br label %"2" "2": - store float 42.0, float* %25 + store float 42.0, ptr %25 %28 = add nuw nsw i64 %j2.03, 1 %exitcond = icmp ne i64 %28, %n br i1 %exitcond, label %18, label %._crit_edge diff --git a/polly/test/ScopInfo/unprofitable_scalar-accs.ll b/polly/test/ScopInfo/unprofitable_scalar-accs.ll index b4d6fc61860f..9703587091a7 100644 --- a/polly/test/ScopInfo/unprofitable_scalar-accs.ll +++ b/polly/test/ScopInfo/unprofitable_scalar-accs.ll @@ -5,7 +5,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @func(i32 %n, i32 %m, double* noalias nonnull %A) { +define void @func(i32 %n, i32 %m, ptr noalias nonnull %A) { entry: br label %outer.for @@ -21,9 +21,9 @@ outer.for: br i1 %i.cmp, label %body1, label %inner.exit body1: - %A_idx = getelementptr inbounds double, double* %A, i32 %i - %a = load double, double* %A_idx - store double %a, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %i + %a = load double, ptr %A_idx + store double %a, ptr %A_idx br label %inner.inc inner.inc: @@ -34,7 +34,7 @@ outer.for: br label %outer.inc outer.inc: - store double %b, double* %A + store double %b, ptr %A %j.inc = add nuw nsw i32 %j, 1 br label %outer.for diff --git a/polly/test/ScopInfo/unsigned-condition.ll b/polly/test/ScopInfo/unsigned-condition.ll index ecf5f55961e4..35673d1b6a36 100644 --- a/polly/test/ScopInfo/unsigned-condition.ll +++ b/polly/test/ScopInfo/unsigned-condition.ll @@ -20,7 +20,7 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* nocapture %a, i64 %N, i64 %P) nounwind { +define void @f(ptr nocapture %a, i64 %N, i64 %P) nounwind { entry: br label %bb @@ -30,8 +30,8 @@ bb: br i1 %brcond, label %store, label %bb.backedge store: - %scevgep = getelementptr inbounds i64, i64* %a, i64 %i - store i64 %i, i64* %scevgep + %scevgep = getelementptr inbounds i64, ptr %a, i64 %i + store i64 %i, ptr %scevgep br label %bb.backedge bb.backedge: diff --git a/polly/test/ScopInfo/unsigned-division-1.ll b/polly/test/ScopInfo/unsigned-division-1.ll index 6570745ee71f..8c65062bd941 100644 --- a/polly/test/ScopInfo/unsigned-division-1.ll +++ b/polly/test/ScopInfo/unsigned-division-1.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: %tmp = lshr i32 %N, 1 br label %for.cond @@ -27,10 +27,10 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp1, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/unsigned-division-2.ll b/polly/test/ScopInfo/unsigned-division-2.ll index a150b2483b2f..bf4ebce9099a 100644 --- a/polly/test/ScopInfo/unsigned-division-2.ll +++ b/polly/test/ScopInfo/unsigned-division-2.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i32 %N) { +define void @f(ptr %A, i32 %N) { entry: %tmp = lshr i32 %N, 1 %tmp1 = add i32 %tmp, 3 @@ -28,10 +28,10 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp2, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/unsigned-division-3.ll b/polly/test/ScopInfo/unsigned-division-3.ll index a4ea628ff987..47ba1f2ef09d 100644 --- a/polly/test/ScopInfo/unsigned-division-3.ll +++ b/polly/test/ScopInfo/unsigned-division-3.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i8 %N) { +define void @f(ptr %A, i8 %N) { entry: %tmp = udiv i8 %N, -128 br label %for.cond @@ -27,10 +27,10 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp2, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/unsigned-division-4.ll b/polly/test/ScopInfo/unsigned-division-4.ll index 3a68615633cf..edcd8a18a854 100644 --- a/polly/test/ScopInfo/unsigned-division-4.ll +++ b/polly/test/ScopInfo/unsigned-division-4.ll @@ -15,7 +15,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i8 %N) { +define void @f(ptr %A, i8 %N) { entry: %tmp1 = udiv i8 %N, -128 %tmp = add i8 %tmp1, 3 @@ -28,10 +28,10 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp2, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/unsigned-division-5.ll b/polly/test/ScopInfo/unsigned-division-5.ll index b3be6de1a318..f9a3d39288a9 100644 --- a/polly/test/ScopInfo/unsigned-division-5.ll +++ b/polly/test/ScopInfo/unsigned-division-5.ll @@ -21,7 +21,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A, i64 %N) { +define void @f(ptr %A, i64 %N) { entry: br label %for.cond @@ -33,11 +33,11 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %mul = mul nsw i64 %N, 5 %div2 = udiv i64 %mul, 3 - %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %div2 - %load = load i32, i32* %arrayidx2, align 4 + %arrayidx2 = getelementptr inbounds i32, ptr %A, i64 %div2 + %load = load i32, ptr %arrayidx2, align 4 %div = udiv i64 %indvars.iv, 3 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %div - store i32 %load, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %div + store i32 %load, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/unsigned_wrap_uge.ll b/polly/test/ScopInfo/unsigned_wrap_uge.ll index 8e15119da152..89c50ee3764b 100644 --- a/polly/test/ScopInfo/unsigned_wrap_uge.ll +++ b/polly/test/ScopInfo/unsigned_wrap_uge.ll @@ -7,7 +7,7 @@ ; A[i] = 42; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %for @@ -21,8 +21,8 @@ entry: br i1 %inbounds, label %ifinbounds, label %ifoutbounds ifinbounds: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double 42.0, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double 42.0, ptr %A_idx br label %inc ifoutbounds: diff --git a/polly/test/ScopInfo/unsigned_wrap_ugt.ll b/polly/test/ScopInfo/unsigned_wrap_ugt.ll index 50db5fd1fb61..3249123c9918 100644 --- a/polly/test/ScopInfo/unsigned_wrap_ugt.ll +++ b/polly/test/ScopInfo/unsigned_wrap_ugt.ll @@ -7,7 +7,7 @@ ; A[i] = 42; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %for @@ -21,8 +21,8 @@ entry: br i1 %inbounds, label %ifinbounds, label %ifoutbounds ifinbounds: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double 42.0, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double 42.0, ptr %A_idx br label %inc ifoutbounds: diff --git a/polly/test/ScopInfo/unsigned_wrap_ule.ll b/polly/test/ScopInfo/unsigned_wrap_ule.ll index 1b9c02f2bc36..3c6ea18b439c 100644 --- a/polly/test/ScopInfo/unsigned_wrap_ule.ll +++ b/polly/test/ScopInfo/unsigned_wrap_ule.ll @@ -7,7 +7,7 @@ ; A[i] = 42; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %for @@ -21,8 +21,8 @@ entry: br i1 %inbounds, label %ifinbounds, label %ifoutbounds ifinbounds: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double 42.0, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double 42.0, ptr %A_idx br label %inc ifoutbounds: diff --git a/polly/test/ScopInfo/unsigned_wrap_ult.ll b/polly/test/ScopInfo/unsigned_wrap_ult.ll index 815f67f42f1d..5d859f85d52b 100644 --- a/polly/test/ScopInfo/unsigned_wrap_ult.ll +++ b/polly/test/ScopInfo/unsigned_wrap_ult.ll @@ -7,7 +7,7 @@ ; A[i] = 42; -define void @func(double* noalias nonnull %A) { +define void @func(ptr noalias nonnull %A) { entry: br label %for @@ -21,8 +21,8 @@ entry: br i1 %inbounds, label %ifinbounds, label %ifoutbounds ifinbounds: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double 42.0, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double 42.0, ptr %A_idx br label %inc ifoutbounds: diff --git a/polly/test/ScopInfo/user_context.ll b/polly/test/ScopInfo/user_context.ll index 8b754ddbc639..46232cd59c03 100644 --- a/polly/test/ScopInfo/user_context.ll +++ b/polly/test/ScopInfo/user_context.ll @@ -17,14 +17,14 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" -define void @f(i64* nocapture %a, i64 %N) nounwind { +define void @f(ptr nocapture %a, i64 %N) nounwind { entry: br label %bb bb: ; preds = %bb, %entry %i = phi i64 [ 0, %entry ], [ %i.inc, %bb ] - %scevgep = getelementptr i64, i64* %a, i64 %i - store i64 %i, i64* %scevgep + %scevgep = getelementptr i64, ptr %a, i64 %i + store i64 %i, ptr %scevgep %i.inc = add nsw i64 %i, 1 %exitcond = icmp eq i64 %i.inc, %N br i1 %exitcond, label %return, label %bb diff --git a/polly/test/ScopInfo/user_provided_assumptions-in-bb-signed-conditional.ll b/polly/test/ScopInfo/user_provided_assumptions-in-bb-signed-conditional.ll index 0953bfb915ee..4bd02c96a3d2 100644 --- a/polly/test/ScopInfo/user_provided_assumptions-in-bb-signed-conditional.ll +++ b/polly/test/ScopInfo/user_provided_assumptions-in-bb-signed-conditional.ll @@ -23,7 +23,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @0 = private unnamed_addr constant { i16, i16, [14 x i8] } { i16 -1, i16 0, [14 x i8] c"'float [100]'\00" } @1 = private unnamed_addr constant { i16, i16, [7 x i8] } { i16 0, i16 13, [7 x i8] c"'long'\00" } -define void @foo([100 x float]* %A, i64 %b, i64 %n) { +define void @foo(ptr %A, i64 %b, i64 %n) { entry: br label %for.cond @@ -39,8 +39,8 @@ if.cond: for.body: ; preds = %for.cond %tmp = icmp slt i64 %i.0, 100 call void @llvm.assume(i1 %tmp) - %arrayidx1 = getelementptr inbounds [100 x float], [100 x float]* %A, i64 42, i64 %i.0 - store float 4.200000e+01, float* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds [100 x float], ptr %A, i64 42, i64 %i.0 + store float 4.200000e+01, ptr %arrayidx1, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/user_provided_assumptions-in-bb-signed.ll b/polly/test/ScopInfo/user_provided_assumptions-in-bb-signed.ll index f1c58d8c338e..262bd1349a69 100644 --- a/polly/test/ScopInfo/user_provided_assumptions-in-bb-signed.ll +++ b/polly/test/ScopInfo/user_provided_assumptions-in-bb-signed.ll @@ -14,7 +14,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @0 = private unnamed_addr constant { i16, i16, [14 x i8] } { i16 -1, i16 0, [14 x i8] c"'float [100]'\00" } @1 = private unnamed_addr constant { i16, i16, [7 x i8] } { i16 0, i16 13, [7 x i8] c"'long'\00" } -define void @foo([100 x float]* %A, i64 %n) { +define void @foo(ptr %A, i64 %n) { entry: br label %for.cond @@ -26,8 +26,8 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %tmp = icmp slt i64 %i.0, 100 call void @llvm.assume(i1 %tmp) - %arrayidx1 = getelementptr inbounds [100 x float], [100 x float]* %A, i64 42, i64 %i.0 - store float 4.200000e+01, float* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds [100 x float], ptr %A, i64 42, i64 %i.0 + store float 4.200000e+01, ptr %arrayidx1, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/user_provided_assumptions-in-bb-unsigned.ll b/polly/test/ScopInfo/user_provided_assumptions-in-bb-unsigned.ll index bb4e363d91f1..4a10fcff929a 100644 --- a/polly/test/ScopInfo/user_provided_assumptions-in-bb-unsigned.ll +++ b/polly/test/ScopInfo/user_provided_assumptions-in-bb-unsigned.ll @@ -20,7 +20,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @0 = private unnamed_addr constant { i16, i16, [14 x i8] } { i16 -1, i16 0, [14 x i8] c"'float [100]'\00" } @1 = private unnamed_addr constant { i16, i16, [7 x i8] } { i16 0, i16 13, [7 x i8] c"'long'\00" } -define void @foo([100 x float]* %A, i64 %n) { +define void @foo(ptr %A, i64 %n) { entry: br label %for.cond @@ -32,8 +32,8 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %tmp = icmp slt i64 %i.0, 100 call void @llvm.assume(i1 %tmp) - %arrayidx1 = getelementptr inbounds [100 x float], [100 x float]* %A, i64 42, i64 %i.0 - store float 4.200000e+01, float* %arrayidx1, align 4 + %arrayidx1 = getelementptr inbounds [100 x float], ptr %A, i64 42, i64 %i.0 + store float 4.200000e+01, ptr %arrayidx1, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/user_provided_assumptions.ll b/polly/test/ScopInfo/user_provided_assumptions.ll index aa3ab9652b53..6640e4a65e36 100644 --- a/polly/test/ScopInfo/user_provided_assumptions.ll +++ b/polly/test/ScopInfo/user_provided_assumptions.ll @@ -38,7 +38,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @.str = private unnamed_addr constant [8 x i8] c"Printf!\00", align 1 -define void @valid(i32* noalias %A, i32* noalias %B, i32 %N, i32 %M, [100 x i32]* %C, i32 %Debug) { +define void @valid(ptr noalias %A, ptr noalias %B, i32 %N, i32 %M, ptr %C, i32 %Debug) { entry: %sub = sub nsw i32 2147483647, %N %cmp = icmp sge i32 %sub, %M @@ -64,8 +64,7 @@ entry.split: br i1 %cmp14, label %if.then, label %if.end if.then: ; preds = %entry - %arrayidx16 = getelementptr inbounds [100 x i32], [100 x i32]* %C, i64 0, i64 0 - store i32 0, i32* %arrayidx16, align 4 + store i32 0, ptr %C, align 4 br label %if.end if.end: ; preds = %if.then, %entry @@ -86,16 +85,16 @@ for.cond.19: ; preds = %for.cond, %for.body for.body.22: ; preds = %for.cond.19 %tmp9 = mul nsw i64 %indvars.iv3, %M64 %tmp10 = add nsw i64 %tmp9, %indvars.iv - %arrayidx24 = getelementptr inbounds i32, i32* %A, i64 %tmp10 - %tmp11 = load i32, i32* %arrayidx24, align 4 + %arrayidx24 = getelementptr inbounds i32, ptr %A, i64 %tmp10 + %tmp11 = load i32, ptr %arrayidx24, align 4 %tmp12 = add nuw nsw i64 %indvars.iv3, %indvars.iv - %arrayidx27 = getelementptr inbounds i32, i32* %B, i64 %tmp12 - %tmp13 = load i32, i32* %arrayidx27, align 4 + %arrayidx27 = getelementptr inbounds i32, ptr %B, i64 %tmp12 + %tmp13 = load i32, ptr %arrayidx27, align 4 %add28 = add nsw i32 %tmp11, %tmp13 - %arrayidx32 = getelementptr inbounds [100 x i32], [100 x i32]* %C, i64 %indvars.iv3, i64 %indvars.iv - %tmp14 = load i32, i32* %arrayidx32, align 4 + %arrayidx32 = getelementptr inbounds [100 x i32], ptr %C, i64 %indvars.iv3, i64 %indvars.iv + %tmp14 = load i32, ptr %arrayidx32, align 4 %add33 = add nsw i32 %tmp14, %add28 - store i32 %add33, i32* %arrayidx32, align 4 + store i32 %add33, ptr %arrayidx32, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 br label %for.cond.19 @@ -104,7 +103,7 @@ for.end: ; preds = %for.cond.19 br i1 %tobool, label %for.inc.36, label %if.then.34 if.then.34: ; preds = %for.end - %call = call i32 (i8*, ...) @printf(i8* nonnull getelementptr inbounds ([8 x i8], [8 x i8]* @.str, i64 0, i64 0)) + %call = call i32 (ptr, ...) @printf(ptr nonnull @.str) br label %for.inc.36 for.inc.36: ; preds = %for.end, %if.then.34 @@ -118,6 +117,6 @@ for.end.38: ; preds = %for.cond ; Function Attrs: nounwind declare void @llvm.assume(i1) #0 -declare i32 @printf(i8*, ...) +declare i32 @printf(ptr, ...) attributes #0 = { nounwind } diff --git a/polly/test/ScopInfo/user_provided_assumptions_2.ll b/polly/test/ScopInfo/user_provided_assumptions_2.ll index 8ea726a85e99..994cd6f15103 100644 --- a/polly/test/ScopInfo/user_provided_assumptions_2.ll +++ b/polly/test/ScopInfo/user_provided_assumptions_2.ll @@ -27,7 +27,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define i32 @f(i32* %A, i32 %N, i32 %M) { +define i32 @f(ptr %A, i32 %N, i32 %M) { entry: %cmp = icmp sgt i32 %M, 0 call void @llvm.assume(i1 %cmp) @@ -40,10 +40,10 @@ for.cond: ; preds = %for.inc, %entry br i1 %cmp1, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp1, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/user_provided_assumptions_3.ll b/polly/test/ScopInfo/user_provided_assumptions_3.ll index 572ee984d319..2fcde8bd1826 100644 --- a/polly/test/ScopInfo/user_provided_assumptions_3.ll +++ b/polly/test/ScopInfo/user_provided_assumptions_3.ll @@ -21,7 +21,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define i32 @f(i32* %A, i32 %N, i32 %M) { +define i32 @f(ptr %A, i32 %N, i32 %M) { entry: %cmp = icmp sgt i32 %M, 0 %cmp1 = icmp sgt i32 %N, %M @@ -36,10 +36,10 @@ for.cond: ; preds = %for.inc, %land.end br i1 %cmp2, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp2, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/user_provided_non_dominating_assumptions.ll b/polly/test/ScopInfo/user_provided_non_dominating_assumptions.ll index 4ca96ff57422..1eb3c15810e4 100644 --- a/polly/test/ScopInfo/user_provided_non_dominating_assumptions.ll +++ b/polly/test/ScopInfo/user_provided_non_dominating_assumptions.ll @@ -53,7 +53,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* noalias %A, i32* noalias %B, i32 %i, i32 %N, i32 %M, [100 x i32]* %C) { +define void @f(ptr noalias %A, ptr noalias %B, i32 %i, i32 %N, i32 %M, ptr %C) { entry: %tmp = zext i32 %M to i64 %tmp6 = sext i32 %i to i64 @@ -79,16 +79,16 @@ for.cond.2: ; preds = %for.inc, %for.body for.body.4: ; preds = %for.cond.2 %tmp9 = mul nsw i64 %indvars.iv3, %tmp8 %tmp10 = add nsw i64 %tmp9, %indvars.iv - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %tmp10 - %tmp11 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %tmp10 + %tmp11 = load i32, ptr %arrayidx, align 4 %tmp12 = add nsw i64 %indvars.iv3, %indvars.iv - %arrayidx8 = getelementptr inbounds i32, i32* %B, i64 %tmp12 - %tmp13 = load i32, i32* %arrayidx8, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %B, i64 %tmp12 + %tmp13 = load i32, ptr %arrayidx8, align 4 %add9 = add nsw i32 %tmp11, %tmp13 - %arrayidx13 = getelementptr inbounds [100 x i32], [100 x i32]* %C, i64 %indvars.iv3, i64 %indvars.iv - %tmp14 = load i32, i32* %arrayidx13, align 4 + %arrayidx13 = getelementptr inbounds [100 x i32], ptr %C, i64 %indvars.iv3, i64 %indvars.iv + %tmp14 = load i32, ptr %arrayidx13, align 4 %add14 = add nsw i32 %tmp14, %add9 - store i32 %add14, i32* %arrayidx13, align 4 + store i32 %add14, ptr %arrayidx13, align 4 br label %for.inc for.inc: ; preds = %for.body.4 diff --git a/polly/test/ScopInfo/variant_base_pointer.ll b/polly/test/ScopInfo/variant_base_pointer.ll index 70785d221bc5..321657c87e79 100644 --- a/polly/test/ScopInfo/variant_base_pointer.ll +++ b/polly/test/ScopInfo/variant_base_pointer.ll @@ -15,11 +15,10 @@ entry: br label %if.end if.end: ; preds = %entry - %call = call i16** @__ctype_b_loc() #0 - %tmp = load i16*, i16** %call, align 8 - %arrayidx = getelementptr inbounds i16, i16* %tmp, i64 0 - %tmp1 = load i16, i16* %arrayidx, align 2 - store i16 3, i16 *%arrayidx, align 2 + %call = call ptr @__ctype_b_loc() #0 + %tmp = load ptr, ptr %call, align 8 + %tmp1 = load i16, ptr %tmp, align 2 + store i16 3, ptr %tmp, align 2 br i1 false, label %if.then.2, label %if.end.3 if.then.2: ; preds = %if.end @@ -33,6 +32,6 @@ cleanup: ; preds = %if.end.3, %if.then. } ; Function Attrs: nounwind readnone -declare i16** @__ctype_b_loc() #0 +declare ptr @__ctype_b_loc() #0 attributes #0 = { nounwind readnone } diff --git a/polly/test/ScopInfo/variant_load_empty_domain.ll b/polly/test/ScopInfo/variant_load_empty_domain.ll index be4a3a55a8a9..0e685c3c7e73 100644 --- a/polly/test/ScopInfo/variant_load_empty_domain.ll +++ b/polly/test/ScopInfo/variant_load_empty_domain.ll @@ -16,7 +16,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* %A) { +define void @f(ptr %A) { entry: br label %for.cond @@ -26,18 +26,18 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp = load i32, ptr %arrayidx, align 4 %inc = add nsw i32 %tmp, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br i1 false, label %if.then, label %if.end if.then: ; preds = %for.body - %tmp1 = load i32, i32* %A, align 4 - %arrayidx4 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx4, align 4 + %tmp1 = load i32, ptr %A, align 4 + %arrayidx4 = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx4, align 4 %add = add nsw i32 %tmp2, %tmp1 - store i32 %add, i32* %arrayidx4, align 4 + store i32 %add, ptr %arrayidx4, align 4 br label %if.end if.end: ; preds = %if.then, %for.body diff --git a/polly/test/ScopInfo/wraping_signed_expr_0.ll b/polly/test/ScopInfo/wraping_signed_expr_0.ll index 81fb48afc6a0..d40c7009c95a 100644 --- a/polly/test/ScopInfo/wraping_signed_expr_0.ll +++ b/polly/test/ScopInfo/wraping_signed_expr_0.ll @@ -24,7 +24,7 @@ ; target datalayout = "e-m:e-i8:64-f80:128-n8:16:32:64-S128" -define void @wrap(i32* %A, i8 %N, i8 %p) { +define void @wrap(ptr %A, i8 %N, i8 %p) { bb: br label %bb2 @@ -35,8 +35,8 @@ bb2: ; preds = %bb7, %bb bb4: ; preds = %bb2 %tmp5 = add i8 %indvars.iv, 3 - %tmp6 = getelementptr i32, i32* %A, i8 %tmp5 - store i32 0, i32* %tmp6, align 4 + %tmp6 = getelementptr i32, ptr %A, i8 %tmp5 + store i32 0, ptr %tmp6, align 4 br label %bb7 bb7: ; preds = %bb4 @@ -47,7 +47,7 @@ bb8: ; preds = %bb2 ret void } -define void @nowrap(i32* %A, i8 %N, i8 %p) { +define void @nowrap(ptr %A, i8 %N, i8 %p) { bb: br label %bb2 @@ -58,8 +58,8 @@ bb2: ; preds = %bb7, %bb bb4: ; preds = %bb2 %tmp5 = add nsw nuw i8 %indvars.iv, 3 - %tmp6 = getelementptr inbounds i32, i32* %A, i8 %tmp5 - store i32 0, i32* %tmp6, align 4 + %tmp6 = getelementptr inbounds i32, ptr %A, i8 %tmp5 + store i32 0, ptr %tmp6, align 4 br label %bb7 bb7: ; preds = %bb4 diff --git a/polly/test/ScopInfo/wraping_signed_expr_1.ll b/polly/test/ScopInfo/wraping_signed_expr_1.ll index 8b859c4e9d86..0a62b9cf542c 100644 --- a/polly/test/ScopInfo/wraping_signed_expr_1.ll +++ b/polly/test/ScopInfo/wraping_signed_expr_1.ll @@ -25,7 +25,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @wrap(i64* %A, i64 %N, i64 %p) { +define void @wrap(ptr %A, i64 %N, i64 %p) { bb: %tmp31 = icmp slt i64 0, %N br i1 %tmp31, label %bb4.lr.ph, label %bb8 @@ -36,8 +36,8 @@ bb4.lr.ph: ; preds = %bb bb4: ; preds = %bb4.lr.ph, %bb7 %indvars.iv2 = phi i64 [ 0, %bb4.lr.ph ], [ %indvars.iv.next, %bb7 ] %tmp5 = add nuw nsw i64 %indvars.iv2, 1 - %tmp6 = getelementptr i64, i64* %A, i64 %tmp5 - store i64 0, i64* %tmp6, align 4 + %tmp6 = getelementptr i64, ptr %A, i64 %tmp5 + store i64 0, ptr %tmp6, align 4 br label %bb7 bb7: ; preds = %bb4 @@ -52,7 +52,7 @@ bb8: ; preds = %bb2.bb8_crit_edge, ret void } -define void @nowrap(i64* %A, i64 %N, i64 %p) { +define void @nowrap(ptr %A, i64 %N, i64 %p) { bb: %tmp31 = icmp slt i64 0, %N br i1 %tmp31, label %bb4.lr.ph, label %bb8 @@ -63,8 +63,8 @@ bb4.lr.ph: ; preds = %bb bb4: ; preds = %bb4.lr.ph, %bb7 %indvars.iv2 = phi i64 [ 0, %bb4.lr.ph ], [ %indvars.iv.next, %bb7 ] %tmp5 = add nuw nsw i64 %indvars.iv2, 1 - %tmp6 = getelementptr inbounds i64, i64* %A, i64 %tmp5 - store i64 0, i64* %tmp6, align 4 + %tmp6 = getelementptr inbounds i64, ptr %A, i64 %tmp5 + store i64 0, ptr %tmp6, align 4 br label %bb7 bb7: ; preds = %bb4 diff --git a/polly/test/ScopInfo/wraping_signed_expr_2.ll b/polly/test/ScopInfo/wraping_signed_expr_2.ll index f9d63a784e58..f3b4665f7f37 100644 --- a/polly/test/ScopInfo/wraping_signed_expr_2.ll +++ b/polly/test/ScopInfo/wraping_signed_expr_2.ll @@ -20,7 +20,7 @@ target datalayout = "e-m:e-i32:64-f80:128-n8:16:32:64-S128" -define void @wrap(i32* %A, i32 %N, i32 %p) { +define void @wrap(ptr %A, i32 %N, i32 %p) { bb: br label %bb2 @@ -31,8 +31,8 @@ bb2: ; preds = %bb7, %bb bb4: ; preds = %bb2 %tmp5 = add i32 %indvars.iv, 30 - %tmp6 = getelementptr i32, i32* %A, i32 %tmp5 - store i32 0, i32* %tmp6, align 4 + %tmp6 = getelementptr i32, ptr %A, i32 %tmp5 + store i32 0, ptr %tmp6, align 4 br label %bb7 bb7: ; preds = %bb4 diff --git a/polly/test/ScopInfo/wraping_signed_expr_3.ll b/polly/test/ScopInfo/wraping_signed_expr_3.ll index aef2cc9549ad..7a5cbba9436b 100644 --- a/polly/test/ScopInfo/wraping_signed_expr_3.ll +++ b/polly/test/ScopInfo/wraping_signed_expr_3.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i32:64-f80:128-n8:16:32:64-S128" -define void @wrap(i32* %A, i32 %N, i32 %p) { +define void @wrap(ptr %A, i32 %N, i32 %p) { bb: br label %bb2 @@ -24,8 +24,8 @@ bb2: ; preds = %bb7, %bb bb4: ; preds = %bb2 %tmp5 = add i32 %indvars.iv, %p - %tmp6 = getelementptr inbounds i32, i32* %A, i32 %tmp5 - store i32 0, i32* %tmp6, align 4 + %tmp6 = getelementptr inbounds i32, ptr %A, i32 %tmp5 + store i32 0, ptr %tmp6, align 4 br label %bb7 bb7: ; preds = %bb4 diff --git a/polly/test/ScopInfo/wraping_signed_expr_4.ll b/polly/test/ScopInfo/wraping_signed_expr_4.ll index de805db18bda..b65437633fe5 100644 --- a/polly/test/ScopInfo/wraping_signed_expr_4.ll +++ b/polly/test/ScopInfo/wraping_signed_expr_4.ll @@ -15,7 +15,7 @@ target datalayout = "e-m:e-i8:64-f80:128-n8:16:32:64-S128" -define void @wrap(i8* %A, i8 %N, i8 %p) { +define void @wrap(ptr %A, i8 %N, i8 %p) { bb: br label %bb2 @@ -26,8 +26,8 @@ bb2: ; preds = %bb7, %bb bb4: ; preds = %bb2 %tmp5 = add i8 %p, -1 - %tmp6 = getelementptr i8, i8* %A, i8 %tmp5 - store i8 0, i8* %tmp6, align 4 + %tmp6 = getelementptr i8, ptr %A, i8 %tmp5 + store i8 0, ptr %tmp6, align 4 br label %bb7 bb7: ; preds = %bb4 diff --git a/polly/test/ScopInfo/wraping_signed_expr_5.ll b/polly/test/ScopInfo/wraping_signed_expr_5.ll index f7a9c9f318ba..5f3b09ba33c1 100644 --- a/polly/test/ScopInfo/wraping_signed_expr_5.ll +++ b/polly/test/ScopInfo/wraping_signed_expr_5.ll @@ -13,7 +13,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @wraps(i32* %A, i32 %p, i16 signext %q, i8 signext %r1, i8 signext %r2) { +define void @wraps(ptr %A, i32 %p, i16 signext %q, i8 signext %r1, i8 signext %r2) { entry: br label %for.cond @@ -26,13 +26,13 @@ for.body: ; preds = %for.cond %conv3 = sext i8 %r1 to i64 %conv4 = sext i8 %r2 to i64 %add = add nsw i64 %conv3, %conv4 - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %add - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %add + %tmp = load i32, ptr %arrayidx, align 4 %conv5 = sext i16 %q to i32 %add6 = add nsw i32 %conv5, %p %idxprom7 = sext i32 %add6 to i64 - %arrayidx8 = getelementptr inbounds i32, i32* %A, i64 %idxprom7 - store i32 %tmp, i32* %arrayidx8, align 4 + %arrayidx8 = getelementptr inbounds i32, ptr %A, i64 %idxprom7 + store i32 %tmp, ptr %arrayidx8, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/wraping_signed_expr_6.ll b/polly/test/ScopInfo/wraping_signed_expr_6.ll index 9eaa3d6f83f5..23258bb513bf 100644 --- a/polly/test/ScopInfo/wraping_signed_expr_6.ll +++ b/polly/test/ScopInfo/wraping_signed_expr_6.ll @@ -8,7 +8,7 @@ ; if ((signed char)i < 100) ; A[i] += i; ; } -define void @foo(float* %A, i64 %N) { +define void @foo(ptr %A, i64 %N) { bb: br label %bb1 @@ -24,10 +24,10 @@ bb2: ; preds = %bb1 bb5: ; preds = %bb2 %tmp6 = sitofp i64 %i.0 to float - %tmp7 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp8 = load float, float* %tmp7, align 4 + %tmp7 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp8 = load float, ptr %tmp7, align 4 %tmp9 = fadd float %tmp8, %tmp6 - store float %tmp9, float* %tmp7, align 4 + store float %tmp9, ptr %tmp7, align 4 br label %bb10 bb10: ; preds = %bb5, %bb2 diff --git a/polly/test/ScopInfo/wraping_signed_expr_7.ll b/polly/test/ScopInfo/wraping_signed_expr_7.ll index 96f285bff9a1..0663d4e0bc10 100644 --- a/polly/test/ScopInfo/wraping_signed_expr_7.ll +++ b/polly/test/ScopInfo/wraping_signed_expr_7.ll @@ -8,7 +8,7 @@ ; if ((signed char)i++ < 100) ; A[i] += i; ; } -define void @foo(float* %A, i64 %N) { +define void @foo(ptr %A, i64 %N) { bb: br label %bb1 @@ -25,10 +25,10 @@ bb2: ; preds = %bb1 bb5: ; preds = %bb2 %tmp6 = sitofp i64 %i.0 to float - %tmp7 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp8 = load float, float* %tmp7, align 4 + %tmp7 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp8 = load float, ptr %tmp7, align 4 %tmp9 = fadd float %tmp8, %tmp6 - store float %tmp9, float* %tmp7, align 4 + store float %tmp9, ptr %tmp7, align 4 br label %bb10 bb10: ; preds = %bb5, %bb2 diff --git a/polly/test/ScopInfo/wraping_signed_expr_slow_1.ll b/polly/test/ScopInfo/wraping_signed_expr_slow_1.ll index db2ca22ac382..ec36d2c5fcde 100644 --- a/polly/test/ScopInfo/wraping_signed_expr_slow_1.ll +++ b/polly/test/ScopInfo/wraping_signed_expr_slow_1.ll @@ -22,7 +22,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @fast(i8* %A, i8 %N, i8 %M) { +define void @fast(ptr %A, i8 %N, i8 %M) { entry: br label %for.cond @@ -37,10 +37,10 @@ for.body: ; preds = %for.cond ;%mul = mul nsw i16 %tmp3ext, 16 %Mext = sext i8 %M to i16 %add2 = add nsw i16 %tmp3ext, %Mext - %arrayidx = getelementptr inbounds i8, i8* %A, i16 %add2 - %tmp4 = load i8, i8* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i8, ptr %A, i16 %add2 + %tmp4 = load i8, ptr %arrayidx, align 4 %inc = add nsw i8 %tmp4, 1 - store i8 %inc, i8* %arrayidx, align 4 + store i8 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -51,7 +51,7 @@ for.end: ; preds = %for.cond ret void } -define void @slow(i8* %A, i8 %N, i8 %M) { +define void @slow(ptr %A, i8 %N, i8 %M) { entry: br label %for.cond @@ -66,10 +66,10 @@ for.body: ; preds = %for.cond %mul = mul nsw i16 %tmp3ext, 16 %Mext = sext i8 %M to i16 %add2 = add nsw i16 %mul, %Mext - %arrayidx = getelementptr inbounds i8, i8* %A, i16 %add2 - %tmp4 = load i8, i8* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i8, ptr %A, i16 %add2 + %tmp4 = load i8, ptr %arrayidx, align 4 %inc = add nsw i8 %tmp4, 1 - store i8 %inc, i8* %arrayidx, align 4 + store i8 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/wraping_signed_expr_slow_2.ll b/polly/test/ScopInfo/wraping_signed_expr_slow_2.ll index 950fe7638873..6db33ab166d5 100644 --- a/polly/test/ScopInfo/wraping_signed_expr_slow_2.ll +++ b/polly/test/ScopInfo/wraping_signed_expr_slow_2.ll @@ -28,7 +28,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @fast(i8* %A, i8 %N, i8 %M) { +define void @fast(ptr %A, i8 %N, i8 %M) { entry: br label %for.cond @@ -42,10 +42,10 @@ for.body: ; preds = %for.cond %mul = mul nsw i8 %tmp3, 16 %add2 = add nsw i8 %mul, %M %add2ext = sext i8 %add2 to i16 - %arrayidx = getelementptr inbounds i8, i8* %A, i16 %add2ext - %tmp4 = load i8, i8* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i8, ptr %A, i16 %add2ext + %tmp4 = load i8, ptr %arrayidx, align 4 %inc = add nsw i8 %tmp4, 1 - store i8 %inc, i8* %arrayidx, align 4 + store i8 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body @@ -56,7 +56,7 @@ for.end: ; preds = %for.cond ret void } -define void @slow(i8* %A, i8 %N, i8 %M) { +define void @slow(ptr %A, i8 %N, i8 %M) { entry: br label %for.cond @@ -71,10 +71,10 @@ for.body: ; preds = %for.cond %mulext = sext i8 %mul to i16 %Mext = sext i8 %M to i16 %add2 = add nsw i16 %mulext, %Mext - %arrayidx = getelementptr inbounds i8, i8* %A, i16 %add2 - %tmp4 = load i8, i8* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i8, ptr %A, i16 %add2 + %tmp4 = load i8, ptr %arrayidx, align 4 %inc = add nsw i8 %tmp4, 1 - store i8 %inc, i8* %arrayidx, align 4 + store i8 %inc, ptr %arrayidx, align 4 br label %for.inc for.inc: ; preds = %for.body diff --git a/polly/test/ScopInfo/zero_ext_of_truncate.ll b/polly/test/ScopInfo/zero_ext_of_truncate.ll index 27e58edafec8..fc55df5e053c 100644 --- a/polly/test/ScopInfo/zero_ext_of_truncate.ll +++ b/polly/test/ScopInfo/zero_ext_of_truncate.ll @@ -19,7 +19,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i32* noalias %I, i32* noalias %A, i32 %N, i32 %M) { +define void @f(ptr noalias %I, ptr noalias %A, i32 %N, i32 %M) { entry: br label %for.cond @@ -30,16 +30,16 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %tmp = load i32, i32* %I, align 4 + %tmp = load i32, ptr %I, align 4 %conv1 = and i32 %tmp, 255 %cmp2 = icmp ult i32 %conv1, %M br i1 %cmp2, label %if.then, label %if.end if.then: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp1 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp1 = load i32, ptr %arrayidx, align 4 %inc = add i32 %tmp1, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %if.then, %for.body diff --git a/polly/test/ScopInfo/zero_ext_of_truncate_2.ll b/polly/test/ScopInfo/zero_ext_of_truncate_2.ll index a9652ad8f7fa..13e9c03ecd2d 100644 --- a/polly/test/ScopInfo/zero_ext_of_truncate_2.ll +++ b/polly/test/ScopInfo/zero_ext_of_truncate_2.ll @@ -18,7 +18,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define void @f(i64* noalias %I, i32* noalias %A, i32 %N, i32 %M) { +define void @f(ptr noalias %I, ptr noalias %A, i32 %N, i32 %M) { entry: br label %for.cond @@ -29,17 +29,17 @@ for.cond: ; preds = %for.inc, %entry br i1 %exitcond, label %for.body, label %for.end for.body: ; preds = %for.cond - %tmp = load i64, i64* %I, align 8 + %tmp = load i64, ptr %I, align 8 %conv = trunc i64 %tmp to i32 %tmp1 = zext i32 %conv to i64 %cmp1 = icmp ult i64 %tmp1, %indvars.iv br i1 %cmp1, label %if.then, label %if.end if.then: ; preds = %for.body - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv - %tmp2 = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv + %tmp2 = load i32, ptr %arrayidx, align 4 %inc = add i32 %tmp2, 1 - store i32 %inc, i32* %arrayidx, align 4 + store i32 %inc, ptr %arrayidx, align 4 br label %if.end if.end: ; preds = %if.then, %for.body diff --git a/polly/test/ScopInfo/zero_ext_space_mismatch.ll b/polly/test/ScopInfo/zero_ext_space_mismatch.ll index db41875b6f44..835a8664b75e 100644 --- a/polly/test/ScopInfo/zero_ext_space_mismatch.ll +++ b/polly/test/ScopInfo/zero_ext_space_mismatch.ll @@ -8,21 +8,19 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Function Attrs: nounwind uwtable -define void @horner_bezier_curve(float* %cp, i32 %dim) #0 { +define void @horner_bezier_curve(ptr %cp, i32 %dim) #0 { entry: br label %for.body18.lr.ph for.body18.lr.ph: ; preds = %entry - %add.ptr = getelementptr inbounds float, float* %cp, i64 0 br label %for.body18 for.body18: ; preds = %for.body18, %for.body18.lr.ph - %cp.addr.052 = phi float* [ %add.ptr, %for.body18.lr.ph ], [ %add.ptr43, %for.body18 ] - %arrayidx31 = getelementptr inbounds float, float* %cp.addr.052, i64 0 - %0 = load float, float* %arrayidx31, align 4 - store float %0, float* %arrayidx31, align 4 + %cp.addr.052 = phi ptr [ %cp, %for.body18.lr.ph ], [ %add.ptr43, %for.body18 ] + %0 = load float, ptr %cp.addr.052, align 4 + store float %0, ptr %cp.addr.052, align 4 %idx.ext42 = zext i32 %dim to i64 - %add.ptr43 = getelementptr inbounds float, float* %cp.addr.052, i64 %idx.ext42 + %add.ptr43 = getelementptr inbounds float, ptr %cp.addr.052, i64 %idx.ext42 br i1 false, label %for.body18, label %if.end if.end: ; preds = %for.body18 diff --git a/polly/test/ScopInliner/invariant-load-func.ll b/polly/test/ScopInliner/invariant-load-func.ll index c842ebbca487..38e4a15aab94 100644 --- a/polly/test/ScopInliner/invariant-load-func.ll +++ b/polly/test/ScopInliner/invariant-load-func.ll @@ -24,13 +24,13 @@ target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-apple-macosx10.12.0" -define void @to_be_inlined(i32* %A, i32* %begin, i32* %end) { +define void @to_be_inlined(ptr %A, ptr %begin, ptr %end) { entry: br label %entry.split entry.split: ; preds = %entry - %tmp = load i32, i32* %begin, align 4 - %tmp21 = load i32, i32* %end, align 4 + %tmp = load i32, ptr %begin, align 4 + %tmp21 = load i32, ptr %end, align 4 %cmp3 = icmp slt i32 %tmp, %tmp21 br i1 %cmp3, label %for.body.lr.ph, label %for.end @@ -40,10 +40,10 @@ for.body.lr.ph: ; preds = %entry.split for.body: ; preds = %for.body.lr.ph, %for.body %indvars.iv4 = phi i64 [ %tmp1, %for.body.lr.ph ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv4 - store i32 10, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv4 + store i32 10, ptr %arrayidx, align 4 %indvars.iv.next = add i64 %indvars.iv4, 1 - %tmp2 = load i32, i32* %end, align 4 + %tmp2 = load i32, ptr %end, align 4 %tmp3 = sext i32 %tmp2 to i64 %cmp = icmp slt i64 %indvars.iv.next, %tmp3 br i1 %cmp, label %for.body, label %for.cond.for.end_crit_edge @@ -56,7 +56,7 @@ for.end: ; preds = %for.cond.for.end_cr } -define void @inline_site(i32* %A, i32* %begin, i32 *%end) { +define void @inline_site(ptr %A, ptr %begin, ptr %end) { entry: br label %entry.split @@ -65,7 +65,7 @@ entry.split: ; preds = %entry for.body: ; preds = %entry.split, %for.body %i.01 = phi i32 [ 0, %entry.split ], [ %inc, %for.body ] - tail call void @to_be_inlined(i32* %A, i32* %begin, i32* %end) + tail call void @to_be_inlined(ptr %A, ptr %begin, ptr %end) %inc = add nuw nsw i32 %i.01, 1 %exitcond = icmp eq i32 %inc, 1000 br i1 %exitcond, label %for.end, label %for.body diff --git a/polly/test/ScopInliner/simple-inline-loop.ll b/polly/test/ScopInliner/simple-inline-loop.ll index 2a6dc4af1d32..a5e3483edad0 100644 --- a/polly/test/ScopInliner/simple-inline-loop.ll +++ b/polly/test/ScopInliner/simple-inline-loop.ll @@ -21,7 +21,7 @@ target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-apple-macosx10.12.0" -define void @to_be_inlined(i32* %A) { +define void @to_be_inlined(ptr %A) { entry: br label %entry.split @@ -30,10 +30,10 @@ entry.split: ; preds = %entry for.body: ; preds = %entry.split, %for.body %indvars.iv1 = phi i64 [ 0, %entry.split ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv1 - %tmp = load i32, i32* %arrayidx, align 4 + %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv1 + %tmp = load i32, ptr %arrayidx, align 4 %mul = mul nsw i32 %tmp, 10 - store i32 %mul, i32* %arrayidx, align 4 + store i32 %mul, ptr %arrayidx, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv1, 1 %exitcond = icmp eq i64 %indvars.iv.next, 1000 br i1 %exitcond, label %for.end, label %for.body @@ -42,7 +42,7 @@ for.end: ; preds = %for.body ret void } -define void @inline_site(i32* %A) { +define void @inline_site(ptr %A) { entry: br label %entry.split @@ -51,7 +51,7 @@ entry.split: ; preds = %entry for.body: ; preds = %entry.split, %for.body %i.01 = phi i32 [ 0, %entry.split ], [ %inc, %for.body ] - tail call void @to_be_inlined(i32* %A) + tail call void @to_be_inlined(ptr %A) %inc = add nuw nsw i32 %i.01, 1 %exitcond = icmp eq i32 %inc, 1000 br i1 %exitcond, label %for.end, label %for.body diff --git a/polly/test/Simplify/coalesce_3partials.ll b/polly/test/Simplify/coalesce_3partials.ll index 8aed8feb6624..0c1556ff263a 100644 --- a/polly/test/Simplify/coalesce_3partials.ll +++ b/polly/test/Simplify/coalesce_3partials.ll @@ -8,7 +8,7 @@ ; A[0] = 42.0; ; } ; -define void @coalesce_3partials(i32 %n, double* noalias nonnull %A) { +define void @coalesce_3partials(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -18,9 +18,9 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A - store double 42.0, double* %A - store double 42.0, double* %A + store double 42.0, ptr %A + store double 42.0, ptr %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/coalesce_disjointelements.ll b/polly/test/Simplify/coalesce_disjointelements.ll index a3f4a1ebf2c2..2f4cf4e3f920 100644 --- a/polly/test/Simplify/coalesce_disjointelements.ll +++ b/polly/test/Simplify/coalesce_disjointelements.ll @@ -10,7 +10,7 @@ ; A[1] = 42.0; ; } ; -define void @coalesce_disjointelements(i32 %n, double* noalias nonnull %A) { +define void @coalesce_disjointelements(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -20,12 +20,11 @@ for: br i1 %j.cmp, label %body, label %exit body: - %A_0 = getelementptr inbounds double, double* %A, i32 0 - %A_1 = getelementptr inbounds double, double* %A, i32 1 - store double 21.0, double* %A_0 - store double 42.0, double* %A_1 - store double 21.0, double* %A_0 - store double 42.0, double* %A_1 + %A_1 = getelementptr inbounds double, ptr %A, i32 1 + store double 21.0, ptr %A + store double 42.0, ptr %A_1 + store double 21.0, ptr %A + store double 42.0, ptr %A_1 br label %inc inc: diff --git a/polly/test/Simplify/coalesce_overlapping.ll b/polly/test/Simplify/coalesce_overlapping.ll index b607dcbefc7b..78ed21e9855b 100644 --- a/polly/test/Simplify/coalesce_overlapping.ll +++ b/polly/test/Simplify/coalesce_overlapping.ll @@ -7,7 +7,7 @@ ; A[0] = 42.0; ; } ; -define void @coalesce_overlapping(i32 %n, double* noalias nonnull %A) { +define void @coalesce_overlapping(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -17,8 +17,8 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A - store double 42.0, double* %A + store double 42.0, ptr %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/coalesce_partial.ll b/polly/test/Simplify/coalesce_partial.ll index 3ae31e9842c6..c42aaa113035 100644 --- a/polly/test/Simplify/coalesce_partial.ll +++ b/polly/test/Simplify/coalesce_partial.ll @@ -7,7 +7,7 @@ ; A[0] = 42.0; ; } ; -define void @coalesce_partial(i32 %n, double* noalias nonnull %A) { +define void @coalesce_partial(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -17,8 +17,8 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A - store double 42.0, double* %A + store double 42.0, ptr %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/dead_access_load.ll b/polly/test/Simplify/dead_access_load.ll index 15f9ac158945..1804613c0a79 100644 --- a/polly/test/Simplify/dead_access_load.ll +++ b/polly/test/Simplify/dead_access_load.ll @@ -9,7 +9,7 @@ ; A[0] = 42.0; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -19,8 +19,8 @@ for: br i1 %j.cmp, label %body, label %exit body: - %val = load double, double* %A - store double 42.0, double* %A + %val = load double, ptr %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/dead_access_phi.ll b/polly/test/Simplify/dead_access_phi.ll index 168d93f03f2b..d263b89aff58 100644 --- a/polly/test/Simplify/dead_access_phi.ll +++ b/polly/test/Simplify/dead_access_phi.ll @@ -12,7 +12,7 @@ ; A[0] = 42.0; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -26,7 +26,7 @@ for: body_succ: %phi = phi double [42.0, %body] - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/dead_access_value.ll b/polly/test/Simplify/dead_access_value.ll index 2917ed9cccb8..6e3c211577f6 100644 --- a/polly/test/Simplify/dead_access_value.ll +++ b/polly/test/Simplify/dead_access_value.ll @@ -13,7 +13,7 @@ ; A[0] = 42.0; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -28,7 +28,7 @@ for: body_succ: %unused = fadd double %val, 21.0 - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/dead_instruction.ll b/polly/test/Simplify/dead_instruction.ll index 5507fb689a97..4e693b0ccb44 100644 --- a/polly/test/Simplify/dead_instruction.ll +++ b/polly/test/Simplify/dead_instruction.ll @@ -9,7 +9,7 @@ ; A[0] = 42.0; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -20,7 +20,7 @@ for: body: %val = fadd double 21.0, 21.0 - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/emptyaccessdomain.ll b/polly/test/Simplify/emptyaccessdomain.ll index 7c025c07ee45..54ac14ab398c 100644 --- a/polly/test/Simplify/emptyaccessdomain.ll +++ b/polly/test/Simplify/emptyaccessdomain.ll @@ -4,7 +4,7 @@ ; A[0] = 42.0; ; } ; -define void @emptyaccessdomain(i32 %n, double* noalias nonnull %A) { +define void @emptyaccessdomain(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -14,7 +14,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/exit_phi_accesses-2.ll b/polly/test/Simplify/exit_phi_accesses-2.ll index b9874eb13e3a..01748aa59bd3 100644 --- a/polly/test/Simplify/exit_phi_accesses-2.ll +++ b/polly/test/Simplify/exit_phi_accesses-2.ll @@ -5,7 +5,7 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define float @foo(float* %A) { +define float @foo(ptr %A) { entry: br label %header @@ -16,9 +16,9 @@ header: body: %i = phi i64 [ 0, %header ], [ %next, %body ] %sum = phi float [ 0.0, %header ], [ %sum.next, %body ] - %arrayidx = getelementptr float, float* %A, i64 %i + %arrayidx = getelementptr float, ptr %A, i64 %i %next = add nuw nsw i64 %i, 1 - %val = load float, float* %arrayidx + %val = load float, ptr %arrayidx %sum.next = fadd float %sum, %val %cond = icmp ne i64 %i, 100 br i1 %cond, label %body, label %after diff --git a/polly/test/Simplify/func-b320a7.ll b/polly/test/Simplify/func-b320a7.ll index d3e7c8173959..c8a823a468d7 100644 --- a/polly/test/Simplify/func-b320a7.ll +++ b/polly/test/Simplify/func-b320a7.ll @@ -12,7 +12,7 @@ target triple = "x86_64-pc-windows-msvc19.26.28806" @"?var_28@@3HA" = external dso_local local_unnamed_addr global i32, align 4 ; Function Attrs: nofree norecurse nounwind uwtable -define dso_local void @"?test@@YAXHEQEAY3M@1BI@BJ@H@Z"(i32 %a, i8 %b, [12 x [2 x [24 x [25 x i32]]]]* nocapture readonly %c) local_unnamed_addr { +define dso_local void @"?test@@YAXHEQEAY3M@1BI@BJ@H@Z"(i32 %a, i8 %b, ptr nocapture readonly %c) local_unnamed_addr { entry: br label %entry.split @@ -36,9 +36,9 @@ for.cond8.preheader.us: ; preds = %for.cond8.preheader for.body14.us: ; preds = %for.cond8.preheader.us, %for.body14.us %indvars.iv = phi i64 [ 0, %for.cond8.preheader.us ], [ %indvars.iv.next, %for.body14.us ] - %arrayidx19.us = getelementptr inbounds [12 x [2 x [24 x [25 x i32]]]], [12 x [2 x [24 x [25 x i32]]]]* %c, i64 6, i64 2, i64 1, i64 %idxprom.us, i64 %indvars.iv - %0 = load i32, i32* %arrayidx19.us, align 4, !tbaa !3 - store i32 0, i32* @"?var_28@@3HA", align 4, !tbaa !3 + %arrayidx19.us = getelementptr inbounds [12 x [2 x [24 x [25 x i32]]]], ptr %c, i64 6, i64 2, i64 1, i64 %idxprom.us, i64 %indvars.iv + %0 = load i32, ptr %arrayidx19.us, align 4, !tbaa !3 + store i32 0, ptr @"?var_28@@3HA", align 4, !tbaa !3 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond.not = icmp eq i64 %indvars.iv.next, %sub11 br i1 %exitcond.not, label %for.cond8.for.cond.cleanup13_crit_edge.us, label %for.body14.us @@ -50,7 +50,7 @@ for.cond8.for.cond.cleanup13_crit_edge.us: ; preds = %for.body14.us br i1 %cmp5.us, label %for.cond8.preheader.us, label %for.cond.cleanup.critedge.loopexit38 for.cond.cleanup.critedge.loopexit38: ; preds = %for.cond8.for.cond.cleanup13_crit_edge.us - store i32 %0, i32* @"?var_27@@3JA", align 4, !tbaa !7 + store i32 %0, ptr @"?var_27@@3JA", align 4, !tbaa !7 br label %for.cond.cleanup.critedge for.cond.cleanup.critedge: ; preds = %for.cond8.preheader, %for.cond.cleanup.critedge.loopexit38, %entry.split diff --git a/polly/test/Simplify/gemm.ll b/polly/test/Simplify/gemm.ll index 6440df01bbab..23f8de5573cd 100644 --- a/polly/test/Simplify/gemm.ll +++ b/polly/test/Simplify/gemm.ll @@ -27,7 +27,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-pc-linux-gnu" -define void @gemm([1024 x float]* %A, [1024 x float]* %B, [1024 x float]* %C) { +define void @gemm(ptr %A, ptr %B, ptr %C) { bb: br label %bb3 @@ -51,8 +51,8 @@ bb7: ; preds = %bb6 br label %bb25 bb8: ; preds = %bb6 - %tmp = getelementptr inbounds [1024 x float], [1024 x float]* %C, i64 %i.0, i64 %j.0 - %tmp9 = load float, float* %tmp, align 4, !tbaa !1 + %tmp = getelementptr inbounds [1024 x float], ptr %C, i64 %i.0, i64 %j.0 + %tmp9 = load float, ptr %tmp, align 4, !tbaa !1 br label %bb10 bb10: ; preds = %bb13, %bb8 @@ -69,18 +69,18 @@ bb12: ; preds = %bb10 br label %bb13 bb13: ; preds = %bb12 - %tmp14 = getelementptr inbounds [1024 x float], [1024 x float]* %A, i64 %i.0, i64 %k.0 - %tmp15 = load float, float* %tmp14, align 4, !tbaa !1 - %tmp16 = getelementptr inbounds [1024 x float], [1024 x float]* %B, i64 %k.0, i64 %j.0 - %tmp17 = load float, float* %tmp16, align 4, !tbaa !1 + %tmp14 = getelementptr inbounds [1024 x float], ptr %A, i64 %i.0, i64 %k.0 + %tmp15 = load float, ptr %tmp14, align 4, !tbaa !1 + %tmp16 = getelementptr inbounds [1024 x float], ptr %B, i64 %k.0, i64 %j.0 + %tmp17 = load float, ptr %tmp16, align 4, !tbaa !1 %tmp18 = fmul float %tmp15, %tmp17 %tmp19 = fadd float %tmp.0, %tmp18 %tmp20 = add nuw nsw i64 %k.0, 1 br label %bb10 bb21: ; preds = %bb11 - %tmp22 = getelementptr inbounds [1024 x float], [1024 x float]* %C, i64 %i.0, i64 %j.0 - store float %tmp.0.lcssa, float* %tmp22, align 4, !tbaa !1 + %tmp22 = getelementptr inbounds [1024 x float], ptr %C, i64 %i.0, i64 %j.0 + store float %tmp.0.lcssa, ptr %tmp22, align 4, !tbaa !1 br label %bb23 bb23: ; preds = %bb21 @@ -98,9 +98,9 @@ bb28: ; preds = %bb4 ret void } -declare void @llvm.lifetime.start(i64, i8* nocapture) +declare void @llvm.lifetime.start(i64, ptr nocapture) -declare void @llvm.lifetime.end(i64, i8* nocapture) +declare void @llvm.lifetime.end(i64, ptr nocapture) !llvm.ident = !{!0} diff --git a/polly/test/Simplify/nocoalesce_differentvalues.ll b/polly/test/Simplify/nocoalesce_differentvalues.ll index b8192f6f627e..68991d2eecf5 100644 --- a/polly/test/Simplify/nocoalesce_differentvalues.ll +++ b/polly/test/Simplify/nocoalesce_differentvalues.ll @@ -7,7 +7,7 @@ ; A[0] = 42.0; ; } ; -define void @nocoalesce_differentvalues(i32 %n, double* noalias nonnull %A) { +define void @nocoalesce_differentvalues(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -17,8 +17,8 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 21.0, double* %A - store double 42.0, double* %A + store double 21.0, ptr %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/nocoalesce_elementmismatch.ll b/polly/test/Simplify/nocoalesce_elementmismatch.ll index 18deef34f1e1..2bab360e6858 100644 --- a/polly/test/Simplify/nocoalesce_elementmismatch.ll +++ b/polly/test/Simplify/nocoalesce_elementmismatch.ll @@ -8,7 +8,7 @@ ; A[0] = 42.0; ; } ; -define void @nocoalesce_elementmismatch(i32 %n, double* noalias nonnull %A) { +define void @nocoalesce_elementmismatch(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -18,10 +18,9 @@ for: br i1 %j.cmp, label %body, label %exit body: - %A_0 = getelementptr inbounds double, double* %A, i32 0 - %A_1 = getelementptr inbounds double, double* %A, i32 1 - store double 42.0, double* %A_0 - store double 42.0, double* %A_1 + %A_1 = getelementptr inbounds double, ptr %A, i32 1 + store double 42.0, ptr %A + store double 42.0, ptr %A_1 br label %inc inc: diff --git a/polly/test/Simplify/nocoalesce_readbetween.ll b/polly/test/Simplify/nocoalesce_readbetween.ll index f0c4f12e724b..ada79dc18b87 100644 --- a/polly/test/Simplify/nocoalesce_readbetween.ll +++ b/polly/test/Simplify/nocoalesce_readbetween.ll @@ -10,7 +10,7 @@ ; A[0] = 42.0; ; } ; -define void @nocoalesce_readbetween(i32 %n, double* noalias nonnull %A) { +define void @nocoalesce_readbetween(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -20,9 +20,9 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A - %tmp = load double, double* %A - store double 42.0, double* %A + store double 42.0, ptr %A + %tmp = load double, ptr %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/nocoalesce_writebetween.ll b/polly/test/Simplify/nocoalesce_writebetween.ll index cd49d9d383e2..48e785ec2c26 100644 --- a/polly/test/Simplify/nocoalesce_writebetween.ll +++ b/polly/test/Simplify/nocoalesce_writebetween.ll @@ -8,7 +8,7 @@ ; A[0] = 42.0; ; } ; -define void @nocoalesce_writebetween(i32 %n, double* noalias nonnull %A) { +define void @nocoalesce_writebetween(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -18,9 +18,9 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A - store double 21.0, double* %A - store double 42.0, double* %A + store double 42.0, ptr %A + store double 21.0, ptr %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/notdead_region_exitphi.ll b/polly/test/Simplify/notdead_region_exitphi.ll index 2ab9c444b290..bd29fd578b97 100644 --- a/polly/test/Simplify/notdead_region_exitphi.ll +++ b/polly/test/Simplify/notdead_region_exitphi.ll @@ -3,7 +3,7 @@ ; ; Do not remove dependencies of a phi node in a region's exit block. ; -define void @func(i32 %n, double* noalias nonnull %A, double %alpha) { +define void @func(i32 %n, ptr noalias nonnull %A, double %alpha) { entry: br label %for @@ -26,7 +26,7 @@ for: region_exit: %phi = phi double [%val, %region_true], [0.0, %region_entry] - store double %phi, double* %A + store double %phi, ptr %A br label %inc diff --git a/polly/test/Simplify/notdead_region_innerphi.ll b/polly/test/Simplify/notdead_region_innerphi.ll index eac71ad83ef0..a176a28af233 100644 --- a/polly/test/Simplify/notdead_region_innerphi.ll +++ b/polly/test/Simplify/notdead_region_innerphi.ll @@ -3,7 +3,7 @@ ; ; Do not remove dependencies of a phi node within a region statement (%phi). ; -define void @func(i32 %n, double* noalias nonnull %A, double %alpha) { +define void @func(i32 %n, ptr noalias nonnull %A, double %alpha) { entry: br label %for @@ -29,7 +29,7 @@ for: region_mostlytrue: %phi = phi double [%val, %region_true], [0.0, %region_verytrue] - store double %phi, double* %A + store double %phi, ptr %A br label %region_exit region_exit: diff --git a/polly/test/Simplify/notredundant_region_loop.ll b/polly/test/Simplify/notredundant_region_loop.ll index 7b4f5e98e4bc..0ea9be7e9d2d 100644 --- a/polly/test/Simplify/notredundant_region_loop.ll +++ b/polly/test/Simplify/notredundant_region_loop.ll @@ -3,7 +3,7 @@ ; Do not remove the store in region_entry. It can be executed multiple times ; due to being part of a non-affine loop. ; -define void @notredundant_region_loop(i32 %n, double* noalias nonnull %A) { +define void @notredundant_region_loop(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -18,13 +18,13 @@ for: br label %region_entry region_entry: - store double %val, double* %A + store double %val, ptr %A %sqr = mul i32 %j, %j %cmp = icmp eq i32 %sqr, 42 br i1 %cmp, label %region_true, label %region_exit region_true: - store double 0.0, double* %A + store double 0.0, ptr %A br label %region_entry region_exit: diff --git a/polly/test/Simplify/notredundant_region_middle.ll b/polly/test/Simplify/notredundant_region_middle.ll index 5258cb4801a7..84598746e0bb 100644 --- a/polly/test/Simplify/notredundant_region_middle.ll +++ b/polly/test/Simplify/notredundant_region_middle.ll @@ -13,7 +13,7 @@ ; A[0] = 0.0; ; } ; -define void @notredundant_region(i32 %n, double* noalias nonnull %A) { +define void @notredundant_region(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -24,16 +24,16 @@ for: region_entry: - %val = load double, double* %A + %val = load double, ptr %A %cmp = fcmp oeq double %val, 0.0 br i1 %cmp, label %region_true, label %region_false region_true: - store double %val, double* %A + store double %val, ptr %A br label %region_exit region_false: - store double 0.0, double* %A + store double 0.0, ptr %A br label %region_exit region_exit: diff --git a/polly/test/Simplify/notredundant_synthesizable_unknownit.ll b/polly/test/Simplify/notredundant_synthesizable_unknownit.ll index ce5b306e201e..2affdbb2f1de 100644 --- a/polly/test/Simplify/notredundant_synthesizable_unknownit.ll +++ b/polly/test/Simplify/notredundant_synthesizable_unknownit.ll @@ -9,7 +9,7 @@ ; Note that -polly-simplify rightfully removes %inner.cond. It should ; not have been added to the instruction list in the first place. ; -define void @func(i32 %n, i32* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -38,7 +38,7 @@ for: br i1 %inner.cond, label %body, label %inner.for body: - store i32 %i.trunc, i32* %A + store i32 %i.trunc, ptr %A br label %inc diff --git a/polly/test/Simplify/out-of-scop-use-in-region-entry-phi-node.ll b/polly/test/Simplify/out-of-scop-use-in-region-entry-phi-node.ll index a284e750b8da..511f35a9388e 100644 --- a/polly/test/Simplify/out-of-scop-use-in-region-entry-phi-node.ll +++ b/polly/test/Simplify/out-of-scop-use-in-region-entry-phi-node.ll @@ -13,13 +13,13 @@ bb: br label %bb2 bb2: ; preds = %bb - %tmp = load i64*, i64** undef + %tmp = load ptr, ptr undef br label %bb3 bb3: ; preds = %bb9, %bb2 - %tmp4 = phi i64* [ %tmp, %bb2 ], [ %tmp5, %bb9 ] - %tmp5 = getelementptr inbounds i64, i64* %tmp4, i64 1 - %tmp6 = load i64, i64* %tmp5 + %tmp4 = phi ptr [ %tmp, %bb2 ], [ %tmp5, %bb9 ] + %tmp5 = getelementptr inbounds i64, ptr %tmp4, i64 1 + %tmp6 = load i64, ptr %tmp5 %tmp7 = and i64 %tmp6, 4160749568 br i1 false, label %bb8, label %bb9 diff --git a/polly/test/Simplify/overwritten.ll b/polly/test/Simplify/overwritten.ll index 1f288cb26508..a32d6a8daeb0 100644 --- a/polly/test/Simplify/overwritten.ll +++ b/polly/test/Simplify/overwritten.ll @@ -8,7 +8,7 @@ ; A[0] = 42.0; ; } ; -define void @overwritten(i32 %n, double* noalias nonnull %A) { +define void @overwritten(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -18,8 +18,8 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 21.0, double* %A - store double 42.0, double* %A + store double 21.0, ptr %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/overwritten_3phi.ll b/polly/test/Simplify/overwritten_3phi.ll index 305ae856af43..24758b9b7cf9 100644 --- a/polly/test/Simplify/overwritten_3phi.ll +++ b/polly/test/Simplify/overwritten_3phi.ll @@ -15,7 +15,7 @@ ; A[0] = A[1]; ; } ; -define void @overwritten_3phi(i32 %n, double* noalias nonnull %A) { +define void @overwritten_3phi(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -34,7 +34,7 @@ for: %phi3 = phi double [%val, %body] %add1 = fadd double %phi1, %phi2 %add2 = fadd double %add1, %phi3 - store double %add2, double* %A + store double %add2, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/overwritten_3store.ll b/polly/test/Simplify/overwritten_3store.ll index 76c54c3f6a54..63eb5b54f931 100644 --- a/polly/test/Simplify/overwritten_3store.ll +++ b/polly/test/Simplify/overwritten_3store.ll @@ -10,7 +10,7 @@ ; A[0] = 42.0; ; } ; -define void @overwritten_3store(i32 %n, double* noalias nonnull %A) { +define void @overwritten_3store(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -20,9 +20,9 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 10.5, double* %A - store double 21.0, double* %A - store double 42.0, double* %A + store double 10.5, ptr %A + store double 21.0, ptr %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/overwritten_implicit_and_explicit.ll b/polly/test/Simplify/overwritten_implicit_and_explicit.ll index d6e768cf76de..56c63b48f761 100644 --- a/polly/test/Simplify/overwritten_implicit_and_explicit.ll +++ b/polly/test/Simplify/overwritten_implicit_and_explicit.ll @@ -12,7 +12,7 @@ ; A[0] = val; ; } ; -define void @overwritten_implicit_and_explicit(i32 %n, double* noalias nonnull %A, double* noalias nonnull %C) { +define void @overwritten_implicit_and_explicit(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %C) { entry: br label %for @@ -23,11 +23,11 @@ for: body: %val = fadd double 21.0, 21.0 - store double %val, double* %A + store double %val, ptr %A br label %user user: - store double %val, double* %C + store double %val, ptr %C br label %inc inc: diff --git a/polly/test/Simplify/overwritten_loadbetween.ll b/polly/test/Simplify/overwritten_loadbetween.ll index 914e2a64a1d0..b31f45d5db62 100644 --- a/polly/test/Simplify/overwritten_loadbetween.ll +++ b/polly/test/Simplify/overwritten_loadbetween.ll @@ -13,7 +13,7 @@ ; B[0] = val; ; } ; -define void @overwritten(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @overwritten(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -23,13 +23,13 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 21.0, double* %A - %val = load double, double* %A - store double 42.0, double* %A + store double 21.0, ptr %A + %val = load double, ptr %A + store double 42.0, ptr %A br label %user user: - store double %val, double* %B + store double %val, ptr %B br label %inc inc: diff --git a/polly/test/Simplify/overwritten_scalar.ll b/polly/test/Simplify/overwritten_scalar.ll index 1d86eb785d03..d55ea7712c36 100644 --- a/polly/test/Simplify/overwritten_scalar.ll +++ b/polly/test/Simplify/overwritten_scalar.ll @@ -14,7 +14,7 @@ ; A[0] = A[1]; ; } ; -define void @overwritten_scalar(i32 %n, double* noalias nonnull %A) { +define void @overwritten_scalar(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -30,7 +30,7 @@ for: user: %phi = phi double [%val, %body] %add = fadd double %val, %phi - store double %add, double* %A + store double %add, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/pass_existence.ll b/polly/test/Simplify/pass_existence.ll index 97033ebd380e..fc5287ed2ee2 100644 --- a/polly/test/Simplify/pass_existence.ll +++ b/polly/test/Simplify/pass_existence.ll @@ -6,7 +6,7 @@ ; for (int j = 0; j < n; j += 1) ; A[0] = 0.0; ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -16,7 +16,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 0.0, double* %A + store double 0.0, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/phi_in_regionstmt.ll b/polly/test/Simplify/phi_in_regionstmt.ll index c193cc40e473..32bb75427589 100644 --- a/polly/test/Simplify/phi_in_regionstmt.ll +++ b/polly/test/Simplify/phi_in_regionstmt.ll @@ -8,25 +8,25 @@ ; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -%struct.pic_parameter_set_rbsp_t.3.45.87.129.192.255.465.927.969.990.1029 = type { i32, i32, i32, i32, i32, i32, [8 x i32], [6 x [16 x i32]], [2 x [64 x i32]], [6 x i32], [2 x i32], i32, i32, i32, [8 x i32], [8 x i32], [8 x i32], i32, i32, i32, i32*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 } +%struct.pic_parameter_set_rbsp_t.3.45.87.129.192.255.465.927.969.990.1029 = type { i32, i32, i32, i32, i32, i32, [8 x i32], [6 x [16 x i32]], [2 x [64 x i32]], [6 x i32], [2 x i32], i32, i32, i32, [8 x i32], [8 x i32], [8 x i32], i32, i32, i32, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 } @quant8_intra_default = external global [64 x i32], align 16 @quant_org = external global [16 x i32], align 16 -@qmatrix = external local_unnamed_addr global [8 x i32*], align 16 +@qmatrix = external local_unnamed_addr global [8 x ptr], align 16 ; Function Attrs: nounwind uwtable -define void @AssignQuantParam(%struct.pic_parameter_set_rbsp_t.3.45.87.129.192.255.465.927.969.990.1029* %pps) local_unnamed_addr #0 { +define void @AssignQuantParam(ptr %pps) local_unnamed_addr #0 { entry: br label %entry.split entry.split: ; preds = %entry - %pic_scaling_matrix_present_flag = getelementptr inbounds %struct.pic_parameter_set_rbsp_t.3.45.87.129.192.255.465.927.969.990.1029, %struct.pic_parameter_set_rbsp_t.3.45.87.129.192.255.465.927.969.990.1029* %pps, i64 0, i32 5 - %0 = load i32, i32* %pic_scaling_matrix_present_flag, align 4, !tbaa !1 + %pic_scaling_matrix_present_flag = getelementptr inbounds %struct.pic_parameter_set_rbsp_t.3.45.87.129.192.255.465.927.969.990.1029, ptr %pps, i64 0, i32 5 + %0 = load i32, ptr %pic_scaling_matrix_present_flag, align 4, !tbaa !1 %tobool = icmp eq i32 %0, 0 br i1 %tobool, label %land.lhs.true, label %if.else land.lhs.true: ; preds = %entry.split - store i32* getelementptr inbounds ([16 x i32], [16 x i32]* @quant_org, i64 0, i64 0), i32** getelementptr inbounds ([8 x i32*], [8 x i32*]* @qmatrix, i64 0, i64 4), align 16, !tbaa !7 + store ptr @quant_org, ptr getelementptr inbounds ([8 x ptr], ptr @qmatrix, i64 0, i64 4), align 16, !tbaa !7 br label %if.end161 if.else: ; preds = %entry.split @@ -36,14 +36,14 @@ if.end161: ; preds = %if.else121.us.7, %l ret void if.else121.us.6: ; preds = %if.else - %arrayidx80.us.6 = getelementptr inbounds %struct.pic_parameter_set_rbsp_t.3.45.87.129.192.255.465.927.969.990.1029, %struct.pic_parameter_set_rbsp_t.3.45.87.129.192.255.465.927.969.990.1029* %pps, i64 0, i32 6, i64 6 + %arrayidx80.us.6 = getelementptr inbounds %struct.pic_parameter_set_rbsp_t.3.45.87.129.192.255.465.927.969.990.1029, ptr %pps, i64 0, i32 6, i64 6 br i1 false, label %if.else121.us.7, label %if.else135.us.6 if.else135.us.6: ; preds = %if.else121.us.6 br label %if.else121.us.7 if.else121.us.7: ; preds = %if.else135.us.6, %if.else121.us.6 - %cond91.sink.sink.us.sink.6 = phi i32* [ undef, %if.else135.us.6 ], [ getelementptr inbounds ([64 x i32], [64 x i32]* @quant8_intra_default, i64 0, i64 0), %if.else121.us.6 ] + %cond91.sink.sink.us.sink.6 = phi ptr [ undef, %if.else135.us.6 ], [ @quant8_intra_default, %if.else121.us.6 ] br label %if.end161 } diff --git a/polly/test/Simplify/pr33323.ll b/polly/test/Simplify/pr33323.ll index eb965c95bc2f..751f0bff5961 100644 --- a/polly/test/Simplify/pr33323.ll +++ b/polly/test/Simplify/pr33323.ll @@ -7,7 +7,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -define fastcc void @pr33323([1000 x double]* nocapture %data, [1000 x double]* nocapture %symmat) { +define fastcc void @pr33323(ptr nocapture %data, ptr nocapture %symmat) { entry: br label %for.body98 @@ -20,15 +20,15 @@ for.body98: for.body105: %indvars.iv = phi i64 [ 0, %for.body98 ], [ %indvars.iv.next, %for.body105 ] - %arrayidx109 = getelementptr inbounds [1000 x double], [1000 x double]* %data, i64 %indvars.iv, i64 0 + %arrayidx109 = getelementptr inbounds [1000 x double], ptr %data, i64 %indvars.iv, i64 0 %add119 = fadd double undef, undef %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 1000 br i1 %exitcond, label %for.end122, label %for.body105 for.end122: - %arrayidx130 = getelementptr inbounds [1000 x double], [1000 x double]* %symmat, i64 %indvars.iv13, i64 0 - store double %add119, double* %arrayidx130 + %arrayidx130 = getelementptr inbounds [1000 x double], ptr %symmat, i64 %indvars.iv13, i64 0 + store double %add119, ptr %arrayidx130 %indvars.iv.next14 = add nuw nsw i64 %indvars.iv13, 1 %exitcond15 = icmp eq i64 %indvars.iv.next14, 1000 br i1 %exitcond15, label %for.cond87.loopexit, label %for.body98 diff --git a/polly/test/Simplify/redundant.ll b/polly/test/Simplify/redundant.ll index a79a1e7b29b7..e85352bc889f 100644 --- a/polly/test/Simplify/redundant.ll +++ b/polly/test/Simplify/redundant.ll @@ -7,7 +7,7 @@ ; for (int j = 0; j < n; j += 1) ; A[0] = A[0]; ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -17,8 +17,8 @@ for: br i1 %j.cmp, label %body, label %exit body: - %val = load double, double* %A - store double %val, double* %A + %val = load double, ptr %A + store double %val, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/redundant_differentindex.ll b/polly/test/Simplify/redundant_differentindex.ll index c63d1fde7ffb..23531c24344f 100644 --- a/polly/test/Simplify/redundant_differentindex.ll +++ b/polly/test/Simplify/redundant_differentindex.ll @@ -7,7 +7,7 @@ ; for (int j = 0; j < n; j += 1) ; A[0] = A[0]; ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -17,9 +17,9 @@ for: br i1 %j.cmp, label %body, label %exit body: - %val = load double, double* %A - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %val = load double, ptr %A + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %inc inc: diff --git a/polly/test/Simplify/redundant_partialwrite.ll b/polly/test/Simplify/redundant_partialwrite.ll index 7ead246a0afb..ac5ca907fff6 100644 --- a/polly/test/Simplify/redundant_partialwrite.ll +++ b/polly/test/Simplify/redundant_partialwrite.ll @@ -3,7 +3,7 @@ ; Remove a redundant store, if its partial domain is a subset of the ; read's domain. ; -define void @redundant_partialwrite(i32 %n, double* noalias nonnull %A) { +define void @redundant_partialwrite(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -13,8 +13,8 @@ for: br i1 %j.cmp, label %body, label %exit body: - %val = load double, double* %A - store double %val, double* %A + %val = load double, ptr %A + store double %val, ptr %A br label %inc inc: diff --git a/polly/test/Simplify/redundant_region.ll b/polly/test/Simplify/redundant_region.ll index 8c4234b40e29..dbcb420ac2f3 100644 --- a/polly/test/Simplify/redundant_region.ll +++ b/polly/test/Simplify/redundant_region.ll @@ -3,7 +3,7 @@ ; Remove redundant store (a store that writes the same value already ; at the destination) in a region. ; -define void @redundant_region(i32 %n, double* noalias nonnull %A) { +define void @redundant_region(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -14,7 +14,7 @@ for: region_entry: - %val = load double, double* %A + %val = load double, ptr %A %cmp = fcmp oeq double %val, 0.0 br i1 %cmp, label %region_true, label %region_exit @@ -25,7 +25,7 @@ for: br label %body body: - store double %val, double* %A + store double %val, ptr %A br label %inc diff --git a/polly/test/Simplify/redundant_region_scalar.ll b/polly/test/Simplify/redundant_region_scalar.ll index d1b4528015fc..95a581ad6f57 100644 --- a/polly/test/Simplify/redundant_region_scalar.ll +++ b/polly/test/Simplify/redundant_region_scalar.ll @@ -3,7 +3,7 @@ ; Remove redundant store (a store that writes the same value already ; at the destination) in a region. ; -define void @redundant_region_scalar(i32 %n, double* noalias nonnull %A) { +define void @redundant_region_scalar(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -14,11 +14,11 @@ for: bodyA: - %val1 = load double, double* %A + %val1 = load double, ptr %A br label %region_entry region_entry: - %val2 = load double, double* %A + %val2 = load double, ptr %A %cmp = fcmp oeq double %val1, 0.0 br i1 %cmp, label %region_true, label %region_exit @@ -29,7 +29,7 @@ for: br label %bodyB bodyB: - store double %val2, double* %A + store double %val2, ptr %A br label %inc diff --git a/polly/test/Simplify/redundant_scalarwrite.ll b/polly/test/Simplify/redundant_scalarwrite.ll index a2082833fd80..e2f7bbedc023 100644 --- a/polly/test/Simplify/redundant_scalarwrite.ll +++ b/polly/test/Simplify/redundant_scalarwrite.ll @@ -10,7 +10,7 @@ ; A[0] = val; ; } ; -define void @redundant_scalarwrite(i32 %n, double* noalias nonnull %A) { +define void @redundant_scalarwrite(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -21,11 +21,11 @@ for: bodyA: - %val = load double, double* %A + %val = load double, ptr %A br label %bodyB bodyB: - store double %val, double* %A + store double %val, ptr %A br label %inc diff --git a/polly/test/Simplify/redundant_storebetween.ll b/polly/test/Simplify/redundant_storebetween.ll index 881a1896c5a0..f624b6e5b995 100644 --- a/polly/test/Simplify/redundant_storebetween.ll +++ b/polly/test/Simplify/redundant_storebetween.ll @@ -7,7 +7,7 @@ ; for (int j = 0; j < n; j += 1) ; A[0] = A[0]; ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -17,10 +17,10 @@ for: br i1 %j.cmp, label %body, label %exit body: - %A_idx = getelementptr inbounds double, double* %A, i32 %j - %val = load double, double* %A_idx - store double 0.0, double* %A - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + %val = load double, ptr %A_idx + store double 0.0, ptr %A + store double %val, ptr %A_idx br label %inc inc: diff --git a/polly/test/Simplify/scalability1.ll b/polly/test/Simplify/scalability1.ll index 136c9c352a4e..0ef99ce1ad8e 100644 --- a/polly/test/Simplify/scalability1.ll +++ b/polly/test/Simplify/scalability1.ll @@ -2,7 +2,7 @@ ; ; Test scalability. ; -define void @func(i32 %n, double* noalias nonnull %A, +define void @func(i32 %n, ptr noalias nonnull %A, i32 %p0, i32 %p1, i32 %p2, i32 %p3, i32 %p4, i32 %p5, i32 %p6, i32 %p7, i32 %p8, i32 %p9, i32 %p10, i32 %p11, i32 %p12, i32 %p13, i32 %p14, i32 %p15, i32 %p16, i32 %p17, i32 %p18, i32 %p19, i32 %p20, i32 %p21, i32 %p22, i32 %p23, i32 %p24, i32 %p25, i32 %p26, i32 %p27, i32 %p28, i32 %p29, @@ -17,74 +17,74 @@ for: body: - %A0 = getelementptr inbounds double, double* %A, i32 %p0 - %A1 = getelementptr inbounds double, double* %A, i32 %p1 - %A2 = getelementptr inbounds double, double* %A, i32 %p2 - %A3 = getelementptr inbounds double, double* %A, i32 %p3 - %A4 = getelementptr inbounds double, double* %A, i32 %p4 - %A5 = getelementptr inbounds double, double* %A, i32 %p5 - %A6 = getelementptr inbounds double, double* %A, i32 %p6 - %A7 = getelementptr inbounds double, double* %A, i32 %p7 - %A8 = getelementptr inbounds double, double* %A, i32 %p8 - %A9 = getelementptr inbounds double, double* %A, i32 %p9 - %A10 = getelementptr inbounds double, double* %A, i32 %p10 - %A11 = getelementptr inbounds double, double* %A, i32 %p11 - %A12 = getelementptr inbounds double, double* %A, i32 %p12 - %A13 = getelementptr inbounds double, double* %A, i32 %p13 - %A14 = getelementptr inbounds double, double* %A, i32 %p14 - %A15 = getelementptr inbounds double, double* %A, i32 %p15 - %A16 = getelementptr inbounds double, double* %A, i32 %p16 - %A17 = getelementptr inbounds double, double* %A, i32 %p17 - %A18 = getelementptr inbounds double, double* %A, i32 %p18 - %A19 = getelementptr inbounds double, double* %A, i32 %p19 - %A20 = getelementptr inbounds double, double* %A, i32 %p20 - %A21 = getelementptr inbounds double, double* %A, i32 %p21 - %A22 = getelementptr inbounds double, double* %A, i32 %p22 - %A23 = getelementptr inbounds double, double* %A, i32 %p23 - %A24 = getelementptr inbounds double, double* %A, i32 %p24 - %A25 = getelementptr inbounds double, double* %A, i32 %p25 - %A26 = getelementptr inbounds double, double* %A, i32 %p26 - %A27 = getelementptr inbounds double, double* %A, i32 %p27 - %A28 = getelementptr inbounds double, double* %A, i32 %p28 - %A29 = getelementptr inbounds double, double* %A, i32 %p29 - %A30 = getelementptr inbounds double, double* %A, i32 %p30 - %A31 = getelementptr inbounds double, double* %A, i32 %p31 - %A32 = getelementptr inbounds double, double* %A, i32 %p32 + %A0 = getelementptr inbounds double, ptr %A, i32 %p0 + %A1 = getelementptr inbounds double, ptr %A, i32 %p1 + %A2 = getelementptr inbounds double, ptr %A, i32 %p2 + %A3 = getelementptr inbounds double, ptr %A, i32 %p3 + %A4 = getelementptr inbounds double, ptr %A, i32 %p4 + %A5 = getelementptr inbounds double, ptr %A, i32 %p5 + %A6 = getelementptr inbounds double, ptr %A, i32 %p6 + %A7 = getelementptr inbounds double, ptr %A, i32 %p7 + %A8 = getelementptr inbounds double, ptr %A, i32 %p8 + %A9 = getelementptr inbounds double, ptr %A, i32 %p9 + %A10 = getelementptr inbounds double, ptr %A, i32 %p10 + %A11 = getelementptr inbounds double, ptr %A, i32 %p11 + %A12 = getelementptr inbounds double, ptr %A, i32 %p12 + %A13 = getelementptr inbounds double, ptr %A, i32 %p13 + %A14 = getelementptr inbounds double, ptr %A, i32 %p14 + %A15 = getelementptr inbounds double, ptr %A, i32 %p15 + %A16 = getelementptr inbounds double, ptr %A, i32 %p16 + %A17 = getelementptr inbounds double, ptr %A, i32 %p17 + %A18 = getelementptr inbounds double, ptr %A, i32 %p18 + %A19 = getelementptr inbounds double, ptr %A, i32 %p19 + %A20 = getelementptr inbounds double, ptr %A, i32 %p20 + %A21 = getelementptr inbounds double, ptr %A, i32 %p21 + %A22 = getelementptr inbounds double, ptr %A, i32 %p22 + %A23 = getelementptr inbounds double, ptr %A, i32 %p23 + %A24 = getelementptr inbounds double, ptr %A, i32 %p24 + %A25 = getelementptr inbounds double, ptr %A, i32 %p25 + %A26 = getelementptr inbounds double, ptr %A, i32 %p26 + %A27 = getelementptr inbounds double, ptr %A, i32 %p27 + %A28 = getelementptr inbounds double, ptr %A, i32 %p28 + %A29 = getelementptr inbounds double, ptr %A, i32 %p29 + %A30 = getelementptr inbounds double, ptr %A, i32 %p30 + %A31 = getelementptr inbounds double, ptr %A, i32 %p31 + %A32 = getelementptr inbounds double, ptr %A, i32 %p32 - %val = load double, double* %A0 + %val = load double, ptr %A0 - store double %val, double* %A1 - store double %val, double* %A2 - store double %val, double* %A3 - store double %val, double* %A4 - store double %val, double* %A5 - store double %val, double* %A6 - store double %val, double* %A7 - store double %val, double* %A8 - store double %val, double* %A9 - store double %val, double* %A10 - store double %val, double* %A11 - store double %val, double* %A12 - store double %val, double* %A13 - store double %val, double* %A14 - store double %val, double* %A15 - store double %val, double* %A16 - store double %val, double* %A17 - store double %val, double* %A18 - store double %val, double* %A19 - store double %val, double* %A20 - store double %val, double* %A21 - store double %val, double* %A22 - store double %val, double* %A23 - store double %val, double* %A24 - store double %val, double* %A25 - store double %val, double* %A26 - store double %val, double* %A27 - store double %val, double* %A28 - store double %val, double* %A29 - store double %val, double* %A30 - store double %val, double* %A31 - store double %val, double* %A32 + store double %val, ptr %A1 + store double %val, ptr %A2 + store double %val, ptr %A3 + store double %val, ptr %A4 + store double %val, ptr %A5 + store double %val, ptr %A6 + store double %val, ptr %A7 + store double %val, ptr %A8 + store double %val, ptr %A9 + store double %val, ptr %A10 + store double %val, ptr %A11 + store double %val, ptr %A12 + store double %val, ptr %A13 + store double %val, ptr %A14 + store double %val, ptr %A15 + store double %val, ptr %A16 + store double %val, ptr %A17 + store double %val, ptr %A18 + store double %val, ptr %A19 + store double %val, ptr %A20 + store double %val, ptr %A21 + store double %val, ptr %A22 + store double %val, ptr %A23 + store double %val, ptr %A24 + store double %val, ptr %A25 + store double %val, ptr %A26 + store double %val, ptr %A27 + store double %val, ptr %A28 + store double %val, ptr %A29 + store double %val, ptr %A30 + store double %val, ptr %A31 + store double %val, ptr %A32 br label %inc diff --git a/polly/test/Simplify/scalability2.ll b/polly/test/Simplify/scalability2.ll index c3a502d4662b..bac0810b0afa 100644 --- a/polly/test/Simplify/scalability2.ll +++ b/polly/test/Simplify/scalability2.ll @@ -2,7 +2,7 @@ ; ; Test scalability. ; -define void @func(i32 %n, double* noalias nonnull %A, +define void @func(i32 %n, ptr noalias nonnull %A, i32 %p0, i32 %p1, i32 %p2, i32 %p3, i32 %p4, i32 %p5, i32 %p6, i32 %p7, i32 %p8, i32 %p9, i32 %p10, i32 %p11, i32 %p12, i32 %p13, i32 %p14, i32 %p15, i32 %p16, i32 %p17, i32 %p18, i32 %p19, i32 %p20, i32 %p21, i32 %p22, i32 %p23, i32 %p24, i32 %p25, i32 %p26, i32 %p27, i32 %p28, i32 %p29, @@ -19,156 +19,156 @@ for: body: - %A0 = getelementptr inbounds double, double* %A, i32 %p0 - %A1 = getelementptr inbounds double, double* %A, i32 %p1 - %A2 = getelementptr inbounds double, double* %A, i32 %p2 - %A3 = getelementptr inbounds double, double* %A, i32 %p3 - %A4 = getelementptr inbounds double, double* %A, i32 %p4 - %A5 = getelementptr inbounds double, double* %A, i32 %p5 - %A6 = getelementptr inbounds double, double* %A, i32 %p6 - %A7 = getelementptr inbounds double, double* %A, i32 %p7 - %A8 = getelementptr inbounds double, double* %A, i32 %p8 - %A9 = getelementptr inbounds double, double* %A, i32 %p9 - %A10 = getelementptr inbounds double, double* %A, i32 %p10 - %A11 = getelementptr inbounds double, double* %A, i32 %p11 - %A12 = getelementptr inbounds double, double* %A, i32 %p12 - %A13 = getelementptr inbounds double, double* %A, i32 %p13 - %A14 = getelementptr inbounds double, double* %A, i32 %p14 - %A15 = getelementptr inbounds double, double* %A, i32 %p15 - %A16 = getelementptr inbounds double, double* %A, i32 %p16 - %A17 = getelementptr inbounds double, double* %A, i32 %p17 - %A18 = getelementptr inbounds double, double* %A, i32 %p18 - %A19 = getelementptr inbounds double, double* %A, i32 %p19 - %A20 = getelementptr inbounds double, double* %A, i32 %p20 - %A21 = getelementptr inbounds double, double* %A, i32 %p21 - %A22 = getelementptr inbounds double, double* %A, i32 %p22 - %A23 = getelementptr inbounds double, double* %A, i32 %p23 - %A24 = getelementptr inbounds double, double* %A, i32 %p24 - %A25 = getelementptr inbounds double, double* %A, i32 %p25 - %A26 = getelementptr inbounds double, double* %A, i32 %p26 - %A27 = getelementptr inbounds double, double* %A, i32 %p27 - %A28 = getelementptr inbounds double, double* %A, i32 %p28 - %A29 = getelementptr inbounds double, double* %A, i32 %p29 - %A30 = getelementptr inbounds double, double* %A, i32 %p30 - %A31 = getelementptr inbounds double, double* %A, i32 %p31 - %A32 = getelementptr inbounds double, double* %A, i32 %p32 - %A33 = getelementptr inbounds double, double* %A, i32 %p33 - %A34 = getelementptr inbounds double, double* %A, i32 %p34 - %A35 = getelementptr inbounds double, double* %A, i32 %p35 - %A36 = getelementptr inbounds double, double* %A, i32 %p36 - %A37 = getelementptr inbounds double, double* %A, i32 %p37 - %A38 = getelementptr inbounds double, double* %A, i32 %p38 - %A39 = getelementptr inbounds double, double* %A, i32 %p39 - %A40 = getelementptr inbounds double, double* %A, i32 %p40 - %A41 = getelementptr inbounds double, double* %A, i32 %p41 - %A42 = getelementptr inbounds double, double* %A, i32 %p42 - %A43 = getelementptr inbounds double, double* %A, i32 %p43 - %A44 = getelementptr inbounds double, double* %A, i32 %p44 - %A45 = getelementptr inbounds double, double* %A, i32 %p45 - %A46 = getelementptr inbounds double, double* %A, i32 %p46 - %A47 = getelementptr inbounds double, double* %A, i32 %p47 - %A48 = getelementptr inbounds double, double* %A, i32 %p48 - %A49 = getelementptr inbounds double, double* %A, i32 %p49 - %A50 = getelementptr inbounds double, double* %A, i32 %p50 - %A51 = getelementptr inbounds double, double* %A, i32 %p51 - %A52 = getelementptr inbounds double, double* %A, i32 %p52 - %A53 = getelementptr inbounds double, double* %A, i32 %p53 - %A54 = getelementptr inbounds double, double* %A, i32 %p54 - %A55 = getelementptr inbounds double, double* %A, i32 %p55 - %A56 = getelementptr inbounds double, double* %A, i32 %p56 - %A57 = getelementptr inbounds double, double* %A, i32 %p57 - %A58 = getelementptr inbounds double, double* %A, i32 %p58 - %A59 = getelementptr inbounds double, double* %A, i32 %p59 - - %val0 = load double, double* %A0 - store double %val0, double* %A1 - - %val2 = load double, double* %A2 - store double %val2, double* %A3 - - %val4 = load double, double* %A4 - store double %val4, double* %A5 - - %val6 = load double, double* %A6 - store double %val6, double* %A7 - - %val8 = load double, double* %A8 - store double %val8, double* %A9 - - %val10 = load double, double* %A10 - store double %val10, double* %A11 - - %val12 = load double, double* %A12 - store double %val12, double* %A13 - - %val13 = load double, double* %A13 - store double %val13, double* %A15 - - %val16 = load double, double* %A16 - store double %val16, double* %A17 - - %val18 = load double, double* %A18 - store double %val18, double* %A19 - - %val20 = load double, double* %A20 - store double %val20, double* %A21 - - %val22 = load double, double* %A22 - store double %val22, double* %A23 - - %val24 = load double, double* %A24 - store double %val24, double* %A25 - - %val26 = load double, double* %A26 - store double %val26, double* %A27 - - %val28 = load double, double* %A28 - store double %val28, double* %A29 - - %val30 = load double, double* %A30 - store double %val30, double* %A31 - - %val32 = load double, double* %A32 - store double %val32, double* %A33 - - %val34 = load double, double* %A34 - store double %val34, double* %A35 - - %val36 = load double, double* %A36 - store double %val36, double* %A37 - - %val38 = load double, double* %A38 - store double %val38, double* %A39 - - %val40 = load double, double* %A40 - store double %val40, double* %A41 - - %val42 = load double, double* %A42 - store double %val42, double* %A43 - - %val44 = load double, double* %A44 - store double %val44, double* %A45 + %A0 = getelementptr inbounds double, ptr %A, i32 %p0 + %A1 = getelementptr inbounds double, ptr %A, i32 %p1 + %A2 = getelementptr inbounds double, ptr %A, i32 %p2 + %A3 = getelementptr inbounds double, ptr %A, i32 %p3 + %A4 = getelementptr inbounds double, ptr %A, i32 %p4 + %A5 = getelementptr inbounds double, ptr %A, i32 %p5 + %A6 = getelementptr inbounds double, ptr %A, i32 %p6 + %A7 = getelementptr inbounds double, ptr %A, i32 %p7 + %A8 = getelementptr inbounds double, ptr %A, i32 %p8 + %A9 = getelementptr inbounds double, ptr %A, i32 %p9 + %A10 = getelementptr inbounds double, ptr %A, i32 %p10 + %A11 = getelementptr inbounds double, ptr %A, i32 %p11 + %A12 = getelementptr inbounds double, ptr %A, i32 %p12 + %A13 = getelementptr inbounds double, ptr %A, i32 %p13 + %A14 = getelementptr inbounds double, ptr %A, i32 %p14 + %A15 = getelementptr inbounds double, ptr %A, i32 %p15 + %A16 = getelementptr inbounds double, ptr %A, i32 %p16 + %A17 = getelementptr inbounds double, ptr %A, i32 %p17 + %A18 = getelementptr inbounds double, ptr %A, i32 %p18 + %A19 = getelementptr inbounds double, ptr %A, i32 %p19 + %A20 = getelementptr inbounds double, ptr %A, i32 %p20 + %A21 = getelementptr inbounds double, ptr %A, i32 %p21 + %A22 = getelementptr inbounds double, ptr %A, i32 %p22 + %A23 = getelementptr inbounds double, ptr %A, i32 %p23 + %A24 = getelementptr inbounds double, ptr %A, i32 %p24 + %A25 = getelementptr inbounds double, ptr %A, i32 %p25 + %A26 = getelementptr inbounds double, ptr %A, i32 %p26 + %A27 = getelementptr inbounds double, ptr %A, i32 %p27 + %A28 = getelementptr inbounds double, ptr %A, i32 %p28 + %A29 = getelementptr inbounds double, ptr %A, i32 %p29 + %A30 = getelementptr inbounds double, ptr %A, i32 %p30 + %A31 = getelementptr inbounds double, ptr %A, i32 %p31 + %A32 = getelementptr inbounds double, ptr %A, i32 %p32 + %A33 = getelementptr inbounds double, ptr %A, i32 %p33 + %A34 = getelementptr inbounds double, ptr %A, i32 %p34 + %A35 = getelementptr inbounds double, ptr %A, i32 %p35 + %A36 = getelementptr inbounds double, ptr %A, i32 %p36 + %A37 = getelementptr inbounds double, ptr %A, i32 %p37 + %A38 = getelementptr inbounds double, ptr %A, i32 %p38 + %A39 = getelementptr inbounds double, ptr %A, i32 %p39 + %A40 = getelementptr inbounds double, ptr %A, i32 %p40 + %A41 = getelementptr inbounds double, ptr %A, i32 %p41 + %A42 = getelementptr inbounds double, ptr %A, i32 %p42 + %A43 = getelementptr inbounds double, ptr %A, i32 %p43 + %A44 = getelementptr inbounds double, ptr %A, i32 %p44 + %A45 = getelementptr inbounds double, ptr %A, i32 %p45 + %A46 = getelementptr inbounds double, ptr %A, i32 %p46 + %A47 = getelementptr inbounds double, ptr %A, i32 %p47 + %A48 = getelementptr inbounds double, ptr %A, i32 %p48 + %A49 = getelementptr inbounds double, ptr %A, i32 %p49 + %A50 = getelementptr inbounds double, ptr %A, i32 %p50 + %A51 = getelementptr inbounds double, ptr %A, i32 %p51 + %A52 = getelementptr inbounds double, ptr %A, i32 %p52 + %A53 = getelementptr inbounds double, ptr %A, i32 %p53 + %A54 = getelementptr inbounds double, ptr %A, i32 %p54 + %A55 = getelementptr inbounds double, ptr %A, i32 %p55 + %A56 = getelementptr inbounds double, ptr %A, i32 %p56 + %A57 = getelementptr inbounds double, ptr %A, i32 %p57 + %A58 = getelementptr inbounds double, ptr %A, i32 %p58 + %A59 = getelementptr inbounds double, ptr %A, i32 %p59 + + %val0 = load double, ptr %A0 + store double %val0, ptr %A1 + + %val2 = load double, ptr %A2 + store double %val2, ptr %A3 + + %val4 = load double, ptr %A4 + store double %val4, ptr %A5 + + %val6 = load double, ptr %A6 + store double %val6, ptr %A7 + + %val8 = load double, ptr %A8 + store double %val8, ptr %A9 + + %val10 = load double, ptr %A10 + store double %val10, ptr %A11 + + %val12 = load double, ptr %A12 + store double %val12, ptr %A13 + + %val13 = load double, ptr %A13 + store double %val13, ptr %A15 + + %val16 = load double, ptr %A16 + store double %val16, ptr %A17 + + %val18 = load double, ptr %A18 + store double %val18, ptr %A19 + + %val20 = load double, ptr %A20 + store double %val20, ptr %A21 + + %val22 = load double, ptr %A22 + store double %val22, ptr %A23 + + %val24 = load double, ptr %A24 + store double %val24, ptr %A25 + + %val26 = load double, ptr %A26 + store double %val26, ptr %A27 + + %val28 = load double, ptr %A28 + store double %val28, ptr %A29 + + %val30 = load double, ptr %A30 + store double %val30, ptr %A31 + + %val32 = load double, ptr %A32 + store double %val32, ptr %A33 + + %val34 = load double, ptr %A34 + store double %val34, ptr %A35 + + %val36 = load double, ptr %A36 + store double %val36, ptr %A37 + + %val38 = load double, ptr %A38 + store double %val38, ptr %A39 + + %val40 = load double, ptr %A40 + store double %val40, ptr %A41 + + %val42 = load double, ptr %A42 + store double %val42, ptr %A43 + + %val44 = load double, ptr %A44 + store double %val44, ptr %A45 - %val46 = load double, double* %A46 - store double %val46, double* %A47 + %val46 = load double, ptr %A46 + store double %val46, ptr %A47 - %val48 = load double, double* %A48 - store double %val48, double* %A49 + %val48 = load double, ptr %A48 + store double %val48, ptr %A49 - %val50 = load double, double* %A50 - store double %val50, double* %A51 + %val50 = load double, ptr %A50 + store double %val50, ptr %A51 - %val52 = load double, double* %A52 - store double %val52, double* %A53 + %val52 = load double, ptr %A52 + store double %val52, ptr %A53 - %val54 = load double, double* %A54 - store double %val54, double* %A55 + %val54 = load double, ptr %A54 + store double %val54, ptr %A55 - %val56 = load double, double* %A56 - store double %val56, double* %A57 + %val56 = load double, ptr %A56 + store double %val56, ptr %A57 - %val58 = load double, double* %A58 - store double %val58, double* %A59 + %val58 = load double, ptr %A58 + store double %val58, ptr %A59 br label %inc diff --git a/polly/test/Simplify/sweep_mapped_phi.ll b/polly/test/Simplify/sweep_mapped_phi.ll index cb54bba54b96..add1681cdf36 100644 --- a/polly/test/Simplify/sweep_mapped_phi.ll +++ b/polly/test/Simplify/sweep_mapped_phi.ll @@ -12,7 +12,7 @@ ; } ; -define void @sweep_mapped_phi(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @sweep_mapped_phi(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -23,14 +23,14 @@ for: bodyA: %val = fadd double 21.0, 21.0 - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %bodyB bodyB: %phi = phi double [%val, %bodyA] - %B_idx = getelementptr inbounds double, double* %B, i32 %j - store double %phi, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + store double %phi, ptr %B_idx br label %inc inc: diff --git a/polly/test/Simplify/sweep_mapped_value.ll b/polly/test/Simplify/sweep_mapped_value.ll index 5964832fdbd5..2e2f9c37febe 100644 --- a/polly/test/Simplify/sweep_mapped_value.ll +++ b/polly/test/Simplify/sweep_mapped_value.ll @@ -12,7 +12,7 @@ ; } ; -define void @sweep_mapped_value(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @sweep_mapped_value(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -23,13 +23,13 @@ for: bodyA: %val = fadd double 21.0, 21.0 - %A_idx = getelementptr inbounds double, double* %A, i32 %j - store double %val, double* %A_idx + %A_idx = getelementptr inbounds double, ptr %A, i32 %j + store double %val, ptr %A_idx br label %bodyB bodyB: - %B_idx = getelementptr inbounds double, double* %B, i32 %j - store double %val, double* %B_idx + %B_idx = getelementptr inbounds double, ptr %B, i32 %j + store double %val, ptr %B_idx br label %inc inc: diff --git a/polly/test/Simplify/ununsed_read_in_region_entry.ll b/polly/test/Simplify/ununsed_read_in_region_entry.ll index 66d67f43e0e6..9b2d4521e2d6 100644 --- a/polly/test/Simplify/ununsed_read_in_region_entry.ll +++ b/polly/test/Simplify/ununsed_read_in_region_entry.ll @@ -7,7 +7,7 @@ ; B[0] = 42.0; ; } ; -define void @func(i32 %n, double* noalias nonnull %A, double* noalias nonnull %B) { +define void @func(i32 %n, ptr noalias nonnull %A, ptr noalias nonnull %B) { entry: br label %for @@ -18,12 +18,12 @@ for: region_entry: - %val = load double, double* %A + %val = load double, ptr %A %cmp = fcmp oeq double 21.0, 0.0 br i1 %cmp, label %region_true, label %region_exit region_true: - store double 42.0, double* %B + store double 42.0, ptr %B br label %region_exit region_exit: diff --git a/polly/test/Support/defaultpipelines.ll b/polly/test/Support/defaultpipelines.ll index d4a4b0a93075..ab0329a70327 100644 --- a/polly/test/Support/defaultpipelines.ll +++ b/polly/test/Support/defaultpipelines.ll @@ -15,7 +15,7 @@ ; A[0] = 42.0; ; } ; -define void @func(i32 %n, double* noalias nonnull %A) { +define void @func(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -25,7 +25,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: @@ -42,5 +42,5 @@ return: ; CHECK-LABEL: define void @func( ; ON: polly.stmt.body.lr.ph: -; ON-NEXT: store double 4.200000e+01, double* %A, align 8 +; ON-NEXT: store double 4.200000e+01, ptr %A, align 8 ; OFF-NOT: polly diff --git a/polly/test/Support/dumpfunction.ll b/polly/test/Support/dumpfunction.ll index 2de71d86bb02..8d578029593d 100644 --- a/polly/test/Support/dumpfunction.ll +++ b/polly/test/Support/dumpfunction.ll @@ -20,9 +20,9 @@ %unrelated_type = type { i32 } -@callee_alias = dso_local unnamed_addr alias void(i32, double*, i32), void(i32, double*, i32 )* @callee +@callee_alias = dso_local unnamed_addr alias void(i32, ptr, i32), ptr @callee -define internal void @callee(i32 %n, double* noalias nonnull %A, i32 %i) #0 { +define internal void @callee(i32 %n, ptr noalias nonnull %A, i32 %i) #0 { entry: br label %for @@ -33,8 +33,8 @@ for: body: %idx = add i32 %i, %j - %arrayidx = getelementptr inbounds double, double* %A, i32 %idx - store double 42.0, double* %arrayidx + %arrayidx = getelementptr inbounds double, ptr %A, i32 %idx + store double 42.0, ptr %arrayidx br label %inc inc: @@ -49,7 +49,7 @@ return: } -define void @caller(i32 %n, double* noalias nonnull %A) #0 { +define void @caller(i32 %n, ptr noalias nonnull %A) #0 { entry: br label %for @@ -59,7 +59,7 @@ for: br i1 %i.cmp, label %body, label %exit body: - call void @callee(i32 %n, double* %A, i32 %i) + call void @callee(i32 %n, ptr %A, i32 %i) br label %inc inc: diff --git a/polly/test/Support/dumpmodule.ll b/polly/test/Support/dumpmodule.ll index 025422742878..693fe4bc6cde 100644 --- a/polly/test/Support/dumpmodule.ll +++ b/polly/test/Support/dumpmodule.ll @@ -15,7 +15,7 @@ ; } -define internal void @callee(i32 %n, double* noalias nonnull %A, i32 %i) { +define internal void @callee(i32 %n, ptr noalias nonnull %A, i32 %i) { entry: br label %for @@ -26,8 +26,8 @@ for: body: %idx = add i32 %i, %j - %arrayidx = getelementptr inbounds double, double* %A, i32 %idx - store double 42.0, double* %arrayidx + %arrayidx = getelementptr inbounds double, ptr %A, i32 %idx + store double 42.0, ptr %arrayidx br label %inc inc: @@ -42,7 +42,7 @@ return: } -define void @caller(i32 %n, double* noalias nonnull %A) { +define void @caller(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -52,7 +52,7 @@ for: br i1 %i.cmp, label %body, label %exit body: - call void @callee(i32 %n, double* %A, i32 %i) + call void @callee(i32 %n, ptr %A, i32 %i) br label %inc inc: @@ -69,10 +69,10 @@ return: ; EARLY-LABEL: @callee( ; AFTEREARLY: polly.split_new_and_old: -; EARLY: store double 4.200000e+01, double* %arrayidx +; EARLY: store double 4.200000e+01, ptr %arrayidx ; EARLY-LABEL: @caller( ; EARLY: call void @callee( ; LATE-LABEL: @caller( ; AFTERLATE: polly.split_new_and_old: -; LATE: store double 4.200000e+01, double* %arrayidx +; LATE: store double 4.200000e+01, ptr %arrayidx diff --git a/polly/test/Support/exportjson.ll b/polly/test/Support/exportjson.ll index dc20999573c5..9974f676a531 100644 --- a/polly/test/Support/exportjson.ll +++ b/polly/test/Support/exportjson.ll @@ -7,7 +7,7 @@ ; A[0] = 42.0; ; } ; -define void @exportjson(i32 %n, double* noalias nonnull %A) { +define void @exportjson(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -17,7 +17,7 @@ for: br i1 %j.cmp, label %body, label %exit body: - store double 42.0, double* %A + store double 42.0, ptr %A br label %inc inc: diff --git a/polly/test/Support/isl-args.ll b/polly/test/Support/isl-args.ll index 84207983f3a0..efa94194bc3f 100644 --- a/polly/test/Support/isl-args.ll +++ b/polly/test/Support/isl-args.ll @@ -10,7 +10,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ; Any valid SCoP causing the creation of a ScopInfo object. -define void @foo_1d(float* %A) { +define void @foo_1d(ptr %A) { bb: br label %bb1 @@ -21,10 +21,10 @@ bb1: ; preds = %bb6, %bb bb2: ; preds = %bb1 %tmp = sitofp i64 %i.0 to float - %tmp3 = getelementptr inbounds float, float* %A, i64 %i.0 - %tmp4 = load float, float* %tmp3, align 4 + %tmp3 = getelementptr inbounds float, ptr %A, i64 %i.0 + %tmp4 = load float, ptr %tmp3, align 4 %tmp5 = fadd float %tmp4, %tmp - store float %tmp5, float* %tmp3, align 4 + store float %tmp5, ptr %tmp3, align 4 br label %bb6 bb6: ; preds = %bb2 diff --git a/polly/test/Support/pipelineposition.ll b/polly/test/Support/pipelineposition.ll index 9e220e3a2a1e..a4506ba1d64e 100644 --- a/polly/test/Support/pipelineposition.ll +++ b/polly/test/Support/pipelineposition.ll @@ -15,7 +15,7 @@ ; } -define internal void @callee(i32 %n, double* noalias nonnull %A, i32 %i) { +define internal void @callee(i32 %n, ptr noalias nonnull %A, i32 %i) { entry: br label %for @@ -26,8 +26,8 @@ for: body: %idx = add i32 %i, %j - %arrayidx = getelementptr inbounds double, double* %A, i32 %idx - store double 42.0, double* %arrayidx + %arrayidx = getelementptr inbounds double, ptr %A, i32 %idx + store double 42.0, ptr %arrayidx br label %inc inc: @@ -42,7 +42,7 @@ return: } -define void @caller(i32 %n, double* noalias nonnull %A) { +define void @caller(i32 %n, ptr noalias nonnull %A) { entry: br label %for @@ -52,7 +52,7 @@ for: br i1 %i.cmp, label %body, label %exit body: - call void @callee(i32 %n, double* %A, i32 %i) + call void @callee(i32 %n, ptr %A, i32 %i) br label %inc inc: |