diff options
Diffstat (limited to 'llvm/test/Transforms/LoopVectorize')
124 files changed, 716 insertions, 716 deletions
diff --git a/llvm/test/Transforms/LoopVectorize/12-12-11-if-conv.ll b/llvm/test/Transforms/LoopVectorize/12-12-11-if-conv.ll index a292afbd588..aa2e6183781 100644 --- a/llvm/test/Transforms/LoopVectorize/12-12-11-if-conv.ll +++ b/llvm/test/Transforms/LoopVectorize/12-12-11-if-conv.ll @@ -14,7 +14,7 @@ entry: for.body: ; preds = %entry, %if.end %indvars.iv = phi i64 [ %indvars.iv.next, %if.end ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %tobool = icmp eq i32 %0, 0 br i1 %tobool, label %if.end, label %if.then diff --git a/llvm/test/Transforms/LoopVectorize/2012-10-22-isconsec.ll b/llvm/test/Transforms/LoopVectorize/2012-10-22-isconsec.ll index 16d64eab25c..6a0dd8f5397 100644 --- a/llvm/test/Transforms/LoopVectorize/2012-10-22-isconsec.ll +++ b/llvm/test/Transforms/LoopVectorize/2012-10-22-isconsec.ll @@ -22,7 +22,7 @@ entry: "3": ; preds = %"3.lr.ph", %"3" %indvars.iv = phi i64 [ 0, %"3.lr.ph" ], [ %indvars.iv.next, %"3" ] %3 = shl nsw i64 %indvars.iv, 2 - %4 = getelementptr inbounds i8* %1, i64 %3 + %4 = getelementptr inbounds i8, i8* %1, i64 %3 %5 = bitcast i8* %4 to float* store float %value, float* %5, align 4 %indvars.iv.next = add i64 %indvars.iv, %2 @@ -41,7 +41,7 @@ entry: "3": ; preds = %"3", %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %"3" ] %0 = shl nsw i64 %indvars.iv, 2 - %1 = getelementptr inbounds i8* bitcast (float* getelementptr inbounds ([32000 x float]* @b, i64 0, i64 16000) to i8*), i64 %0 + %1 = getelementptr inbounds i8, i8* bitcast (float* getelementptr inbounds ([32000 x float]* @b, i64 0, i64 16000) to i8*), i64 %0 %2 = bitcast i8* %1 to float* store float -1.000000e+00, float* %2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/AArch64/aarch64-unroll.ll b/llvm/test/Transforms/LoopVectorize/AArch64/aarch64-unroll.ll index 9962c3d76a6..83e39a1fb7b 100644 --- a/llvm/test/Transforms/LoopVectorize/AArch64/aarch64-unroll.ll +++ b/llvm/test/Transforms/LoopVectorize/AArch64/aarch64-unroll.ll @@ -22,12 +22,12 @@ 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 i32* %a, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %a, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32* %b, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %b, i64 %indvars.iv %1 = load i32* %arrayidx2, align 4 %add = add nsw i32 %1, %0 - %arrayidx4 = getelementptr inbounds i32* %c, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds i32, i32* %c, i64 %indvars.iv store i32 %add, i32* %arrayidx4, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/AArch64/arbitrary-induction-step.ll b/llvm/test/Transforms/LoopVectorize/AArch64/arbitrary-induction-step.ll index 95734bf1c1a..a7a78c75a99 100644 --- a/llvm/test/Transforms/LoopVectorize/AArch64/arbitrary-induction-step.ll +++ b/llvm/test/Transforms/LoopVectorize/AArch64/arbitrary-induction-step.ll @@ -34,7 +34,7 @@ for.body: ; preds = %entry, %for.body %A.addr = phi i32* [ %A, %entry ], [ %inc.ptr, %for.body ] %i = phi i32 [ 0, %entry ], [ %add1, %for.body ] %sum = phi i32 [ 0, %entry ], [ %add, %for.body ] - %inc.ptr = getelementptr inbounds i32* %A.addr, i64 1 + %inc.ptr = getelementptr inbounds i32, i32* %A.addr, i64 1 %0 = load i32* %A.addr, align 4 %mul = mul nsw i32 %0, %i %add = add nsw i32 %mul, %sum @@ -78,7 +78,7 @@ for.body: ; preds = %entry, %for.body %A.addr = phi i32* [ %A, %entry ], [ %inc.ptr, %for.body ] %i = phi i32 [ 1024, %entry ], [ %sub, %for.body ] %sum = phi i32 [ 0, %entry ], [ %add, %for.body ] - %inc.ptr = getelementptr inbounds i32* %A.addr, i64 1 + %inc.ptr = getelementptr inbounds i32, i32* %A.addr, i64 1 %0 = load i32* %A.addr, align 4 %mul = mul nsw i32 %0, %i %add = add nsw i32 %mul, %sum @@ -134,9 +134,9 @@ for.body: ; preds = %for.body, %entry %A.addr = phi i32* [ %A, %entry ], [ %inc.ptr1, %for.body ] %sum = phi i32 [ 0, %entry ], [ %add, %for.body ] %i = phi i32 [ 0, %entry ], [ %inc, %for.body ] - %inc.ptr = getelementptr inbounds i32* %A.addr, i64 1 + %inc.ptr = getelementptr inbounds i32, i32* %A.addr, i64 1 %0 = load i32* %A.addr, align 4 - %inc.ptr1 = getelementptr inbounds i32* %A.addr, i64 2 + %inc.ptr1 = getelementptr inbounds i32, i32* %A.addr, i64 2 %1 = load i32* %inc.ptr, align 4 %mul = mul nsw i32 %1, %0 %add = add nsw i32 %mul, %sum diff --git a/llvm/test/Transforms/LoopVectorize/AArch64/arm64-unroll.ll b/llvm/test/Transforms/LoopVectorize/AArch64/arm64-unroll.ll index f8eb3ed1f35..159aaf488da 100644 --- a/llvm/test/Transforms/LoopVectorize/AArch64/arm64-unroll.ll +++ b/llvm/test/Transforms/LoopVectorize/AArch64/arm64-unroll.ll @@ -22,12 +22,12 @@ 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 i32* %a, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %a, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32* %b, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %b, i64 %indvars.iv %1 = load i32* %arrayidx2, align 4 %add = add nsw i32 %1, %0 - %arrayidx4 = getelementptr inbounds i32* %c, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds i32, i32* %c, i64 %indvars.iv store i32 %add, i32* %arrayidx4, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/AArch64/gather-cost.ll b/llvm/test/Transforms/LoopVectorize/AArch64/gather-cost.ll index bb285382e53..302ec796734 100644 --- a/llvm/test/Transforms/LoopVectorize/AArch64/gather-cost.ll +++ b/llvm/test/Transforms/LoopVectorize/AArch64/gather-cost.ll @@ -30,23 +30,23 @@ for.body: %b.054 = phi float [ 0.000000e+00, %for.body.lr.ph ], [ %add30, %for.body ] %add = add i64 %v.055, %offset %mul = mul i64 %add, 3 - %arrayidx = getelementptr inbounds [1536 x float]* @src_data, i64 0, i64 %mul + %arrayidx = getelementptr inbounds [1536 x float], [1536 x float]* @src_data, i64 0, i64 %mul %0 = load float* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds [512 x float]* @kernel, i64 0, i64 %v.055 + %arrayidx2 = getelementptr inbounds [512 x float], [512 x float]* @kernel, i64 0, i64 %v.055 %1 = load float* %arrayidx2, align 4 %mul3 = fmul fast float %0, %1 - %arrayidx4 = getelementptr inbounds [512 x float]* @kernel2, i64 0, i64 %v.055 + %arrayidx4 = getelementptr inbounds [512 x float], [512 x float]* @kernel2, i64 0, i64 %v.055 %2 = load float* %arrayidx4, align 4 %mul5 = fmul fast float %mul3, %2 - %arrayidx6 = getelementptr inbounds [512 x float]* @kernel3, i64 0, i64 %v.055 + %arrayidx6 = getelementptr inbounds [512 x float], [512 x float]* @kernel3, i64 0, i64 %v.055 %3 = load float* %arrayidx6, align 4 %mul7 = fmul fast float %mul5, %3 - %arrayidx8 = getelementptr inbounds [512 x float]* @kernel4, i64 0, i64 %v.055 + %arrayidx8 = getelementptr inbounds [512 x float], [512 x float]* @kernel4, i64 0, i64 %v.055 %4 = load float* %arrayidx8, align 4 %mul9 = fmul fast float %mul7, %4 %add10 = fadd fast float %r.057, %mul9 %arrayidx.sum = add i64 %mul, 1 - %arrayidx11 = getelementptr inbounds [1536 x float]* @src_data, i64 0, i64 %arrayidx.sum + %arrayidx11 = getelementptr inbounds [1536 x float], [1536 x float]* @src_data, i64 0, i64 %arrayidx.sum %5 = load float* %arrayidx11, align 4 %mul13 = fmul fast float %1, %5 %mul15 = fmul fast float %2, %mul13 @@ -54,7 +54,7 @@ for.body: %mul19 = fmul fast float %4, %mul17 %add20 = fadd fast float %g.056, %mul19 %arrayidx.sum52 = add i64 %mul, 2 - %arrayidx21 = getelementptr inbounds [1536 x float]* @src_data, i64 0, i64 %arrayidx.sum52 + %arrayidx21 = getelementptr inbounds [1536 x float], [1536 x float]* @src_data, i64 0, i64 %arrayidx.sum52 %6 = load float* %arrayidx21, align 4 %mul23 = fmul fast float %1, %6 %mul25 = fmul fast float %2, %mul23 diff --git a/llvm/test/Transforms/LoopVectorize/AArch64/sdiv-pow2.ll b/llvm/test/Transforms/LoopVectorize/AArch64/sdiv-pow2.ll index a01d54312a6..d1ca199b82c 100644 --- a/llvm/test/Transforms/LoopVectorize/AArch64/sdiv-pow2.ll +++ b/llvm/test/Transforms/LoopVectorize/AArch64/sdiv-pow2.ll @@ -17,10 +17,10 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds %struct.anon* @Foo, i64 0, i32 2, i64 %indvars.iv + %arrayidx = getelementptr inbounds %struct.anon, %struct.anon* @Foo, i64 0, i32 2, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %div = sdiv i32 %0, 2 - %arrayidx2 = getelementptr inbounds %struct.anon* @Foo, i64 0, i32 0, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds %struct.anon, %struct.anon* @Foo, i64 0, i32 0, i64 %indvars.iv store i32 %div, i32* %arrayidx2, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 100 diff --git a/llvm/test/Transforms/LoopVectorize/ARM/arm-unroll.ll b/llvm/test/Transforms/LoopVectorize/ARM/arm-unroll.ll index 8843fc2d2b1..96e13842106 100644 --- a/llvm/test/Transforms/LoopVectorize/ARM/arm-unroll.ll +++ b/llvm/test/Transforms/LoopVectorize/ARM/arm-unroll.ll @@ -20,7 +20,7 @@ define i32 @foo(i32* nocapture %A, i32 %n) nounwind readonly ssp { .lr.ph: ; preds = %0, %.lr.ph %i.02 = phi i32 [ %5, %.lr.ph ], [ 0, %0 ] %sum.01 = phi i32 [ %4, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds i32* %A, i32 %i.02 + %2 = getelementptr inbounds i32, i32* %A, i32 %i.02 %3 = load i32* %2, align 4 %4 = add nsw i32 %3, %sum.01 %5 = add nsw i32 %i.02, 1 @@ -48,7 +48,7 @@ define i32 @register_limit(i32* nocapture %A, i32 %n) { %sum.04 = phi i32 [ %8, %.lr.ph ], [ 0, %0 ] %sum.05 = phi i32 [ %9, %.lr.ph ], [ 0, %0 ] %sum.06 = phi i32 [ %10, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds i32* %A, i32 %i.02 + %2 = getelementptr inbounds i32, i32* %A, i32 %i.02 %3 = load i32* %2, align 4 %4 = add nsw i32 %3, %sum.01 %5 = add nsw i32 %i.02, 1 diff --git a/llvm/test/Transforms/LoopVectorize/ARM/gather-cost.ll b/llvm/test/Transforms/LoopVectorize/ARM/gather-cost.ll index 239a28fa6c7..1b5e45e089f 100644 --- a/llvm/test/Transforms/LoopVectorize/ARM/gather-cost.ll +++ b/llvm/test/Transforms/LoopVectorize/ARM/gather-cost.ll @@ -33,23 +33,23 @@ for.body: %b.054 = phi float [ 0.000000e+00, %for.body.lr.ph ], [ %add30, %for.body ] %add = add i32 %v.055, %offset %mul = mul i32 %add, 3 - %arrayidx = getelementptr inbounds [1536 x float]* @src_data, i32 0, i32 %mul + %arrayidx = getelementptr inbounds [1536 x float], [1536 x float]* @src_data, i32 0, i32 %mul %0 = load float* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds [512 x float]* @kernel, i32 0, i32 %v.055 + %arrayidx2 = getelementptr inbounds [512 x float], [512 x float]* @kernel, i32 0, i32 %v.055 %1 = load float* %arrayidx2, align 4 %mul3 = fmul fast float %0, %1 - %arrayidx4 = getelementptr inbounds [512 x float]* @kernel2, i32 0, i32 %v.055 + %arrayidx4 = getelementptr inbounds [512 x float], [512 x float]* @kernel2, i32 0, i32 %v.055 %2 = load float* %arrayidx4, align 4 %mul5 = fmul fast float %mul3, %2 - %arrayidx6 = getelementptr inbounds [512 x float]* @kernel3, i32 0, i32 %v.055 + %arrayidx6 = getelementptr inbounds [512 x float], [512 x float]* @kernel3, i32 0, i32 %v.055 %3 = load float* %arrayidx6, align 4 %mul7 = fmul fast float %mul5, %3 - %arrayidx8 = getelementptr inbounds [512 x float]* @kernel4, i32 0, i32 %v.055 + %arrayidx8 = getelementptr inbounds [512 x float], [512 x float]* @kernel4, i32 0, i32 %v.055 %4 = load float* %arrayidx8, align 4 %mul9 = fmul fast float %mul7, %4 %add10 = fadd fast float %r.057, %mul9 %arrayidx.sum = add i32 %mul, 1 - %arrayidx11 = getelementptr inbounds [1536 x float]* @src_data, i32 0, i32 %arrayidx.sum + %arrayidx11 = getelementptr inbounds [1536 x float], [1536 x float]* @src_data, i32 0, i32 %arrayidx.sum %5 = load float* %arrayidx11, align 4 %mul13 = fmul fast float %1, %5 %mul15 = fmul fast float %2, %mul13 @@ -57,7 +57,7 @@ for.body: %mul19 = fmul fast float %4, %mul17 %add20 = fadd fast float %g.056, %mul19 %arrayidx.sum52 = add i32 %mul, 2 - %arrayidx21 = getelementptr inbounds [1536 x float]* @src_data, i32 0, i32 %arrayidx.sum52 + %arrayidx21 = getelementptr inbounds [1536 x float], [1536 x float]* @src_data, i32 0, i32 %arrayidx.sum52 %6 = load float* %arrayidx21, align 4 %mul23 = fmul fast float %1, %6 %mul25 = fmul fast float %2, %mul23 diff --git a/llvm/test/Transforms/LoopVectorize/ARM/gcc-examples.ll b/llvm/test/Transforms/LoopVectorize/ARM/gcc-examples.ll index f2bd0ac200d..ae61da02220 100644 --- a/llvm/test/Transforms/LoopVectorize/ARM/gcc-examples.ll +++ b/llvm/test/Transforms/LoopVectorize/ARM/gcc-examples.ll @@ -18,12 +18,12 @@ define void @example1() nounwind uwtable ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %indvars.iv + %4 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = add nsw i32 %5, %3 - %7 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %7 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv store i32 %6, i32* %7, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -44,10 +44,10 @@ define void @example10b(i16* noalias nocapture %sa, i16* noalias nocapture %sb, ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds i16* %sb, i64 %indvars.iv + %2 = getelementptr inbounds i16, i16* %sb, i64 %indvars.iv %3 = load i16* %2, align 2 %4 = sext i16 %3 to i32 - %5 = getelementptr inbounds i32* %ia, i64 %indvars.iv + %5 = getelementptr inbounds i32, i32* %ia, i64 %indvars.iv store i32 %4, i32* %5, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/ARM/width-detect.ll b/llvm/test/Transforms/LoopVectorize/ARM/width-detect.ll index 99d7fa75ee3..f970e922810 100644 --- a/llvm/test/Transforms/LoopVectorize/ARM/width-detect.ll +++ b/llvm/test/Transforms/LoopVectorize/ARM/width-detect.ll @@ -13,7 +13,7 @@ define float @foo_F32(float* nocapture %A, i32 %n) nounwind uwtable readonly ssp .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] %prod.01 = phi float [ %4, %.lr.ph ], [ 0.000000e+00, %0 ] - %2 = getelementptr inbounds float* %A, i64 %indvars.iv + %2 = getelementptr inbounds float, float* %A, i64 %indvars.iv %3 = load float* %2, align 8 %4 = fmul fast float %prod.01, %3 %indvars.iv.next = add i64 %indvars.iv, 1 @@ -36,7 +36,7 @@ define signext i8 @foo_I8(i8* nocapture %A, i32 %n) nounwind uwtable readonly ss .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] %red.01 = phi i8 [ %4, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds i8* %A, i64 %indvars.iv + %2 = getelementptr inbounds i8, i8* %A, i64 %indvars.iv %3 = load i8* %2, align 1 %4 = xor i8 %3, %red.01 %indvars.iv.next = add i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/PowerPC/small-loop-rdx.ll b/llvm/test/Transforms/LoopVectorize/PowerPC/small-loop-rdx.ll index 25e7d2463bf..bc043475a64 100644 --- a/llvm/test/Transforms/LoopVectorize/PowerPC/small-loop-rdx.ll +++ b/llvm/test/Transforms/LoopVectorize/PowerPC/small-loop-rdx.ll @@ -29,7 +29,7 @@ for.body.lr.ph: ; preds = %entry for.body: ; preds = %for.body, %for.body.lr.ph %indvars.iv = phi i64 [ 0, %for.body.lr.ph ], [ %indvars.iv.next, %for.body ] %redx.05 = phi double [ 0.000000e+00, %for.body.lr.ph ], [ %add, %for.body ] - %arrayidx = getelementptr inbounds double* %arr, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %arr, i64 %indvars.iv %1 = load double* %arrayidx, align 8 %add = fadd fast double %1, %redx.05 %indvars.iv.next = add i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/PowerPC/vsx-tsvc-s173.ll b/llvm/test/Transforms/LoopVectorize/PowerPC/vsx-tsvc-s173.ll index 6cd9c4d610b..27a11028b5b 100644 --- a/llvm/test/Transforms/LoopVectorize/PowerPC/vsx-tsvc-s173.ll +++ b/llvm/test/Transforms/LoopVectorize/PowerPC/vsx-tsvc-s173.ll @@ -19,13 +19,13 @@ for.cond1.preheader: ; preds = %for.end, %entry for.body3: ; preds = %for.body3, %for.cond1.preheader %indvars.iv = phi i64 [ 0, %for.cond1.preheader ], [ %indvars.iv.next, %for.body3 ] - %arrayidx = getelementptr inbounds %struct.GlobalData* @global_data, i64 0, i32 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds %struct.GlobalData, %struct.GlobalData* @global_data, i64 0, i32 0, i64 %indvars.iv %1 = load float* %arrayidx, align 4 - %arrayidx5 = getelementptr inbounds %struct.GlobalData* @global_data, i64 0, i32 3, i64 %indvars.iv + %arrayidx5 = getelementptr inbounds %struct.GlobalData, %struct.GlobalData* @global_data, i64 0, i32 3, i64 %indvars.iv %2 = load float* %arrayidx5, align 4 %add = fadd float %1, %2 %3 = add nsw i64 %indvars.iv, 16000 - %arrayidx8 = getelementptr inbounds %struct.GlobalData* @global_data, i64 0, i32 0, i64 %3 + %arrayidx8 = getelementptr inbounds %struct.GlobalData, %struct.GlobalData* @global_data, i64 0, i32 0, i64 %3 store float %add, float* %arrayidx8, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 16000 diff --git a/llvm/test/Transforms/LoopVectorize/X86/already-vectorized.ll b/llvm/test/Transforms/LoopVectorize/X86/already-vectorized.ll index 29d74a0645e..dcf2c6e70c4 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/already-vectorized.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/already-vectorized.ll @@ -21,7 +21,7 @@ for.body: ; preds = %for.body, %entry ; CHECK: LV: We can vectorize this loop! %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %red.05 = phi i32 [ 0, %entry ], [ %add, %for.body ] - %arrayidx = getelementptr inbounds [255 x i32]* @a, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [255 x i32], [255 x i32]* @a, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %add = add nsw i32 %0, %red.05 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/X86/assume.ll b/llvm/test/Transforms/LoopVectorize/X86/assume.ll index a94e24dd7e9..c036bba07ce 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/assume.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/assume.ll @@ -22,12 +22,12 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds float* %b, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %b, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp1 = fcmp ogt float %0, 1.000000e+02 tail call void @llvm.assume(i1 %cmp1) %add = fadd float %0, 1.000000e+00 - %arrayidx5 = getelementptr inbounds float* %a, i64 %indvars.iv + %arrayidx5 = getelementptr inbounds float, float* %a, i64 %indvars.iv store float %add, float* %arrayidx5, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv, 1599 @@ -48,12 +48,12 @@ attributes #1 = { nounwind } ; Function Attrs: nounwind uwtable define void @test2(%struct.data* nocapture readonly %d) #0 { entry: - %b = getelementptr inbounds %struct.data* %d, i64 0, i32 1 + %b = getelementptr inbounds %struct.data, %struct.data* %d, i64 0, i32 1 %0 = load float** %b, align 8 %ptrint = ptrtoint float* %0 to i64 %maskedptr = and i64 %ptrint, 31 %maskcond = icmp eq i64 %maskedptr, 0 - %a = getelementptr inbounds %struct.data* %d, i64 0, i32 0 + %a = getelementptr inbounds %struct.data, %struct.data* %d, i64 0, i32 0 %1 = load float** %a, align 8 %ptrint2 = ptrtoint float* %1 to i64 %maskedptr3 = and i64 %ptrint2, 31 @@ -84,11 +84,11 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] tail call void @llvm.assume(i1 %maskcond) - %arrayidx = getelementptr inbounds float* %0, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %0, i64 %indvars.iv %2 = load float* %arrayidx, align 4 %add = fadd float %2, 1.000000e+00 tail call void @llvm.assume(i1 %maskcond4) - %arrayidx5 = getelementptr inbounds float* %1, i64 %indvars.iv + %arrayidx5 = getelementptr inbounds float, float* %1, i64 %indvars.iv store float %add, float* %arrayidx5, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv, 1599 diff --git a/llvm/test/Transforms/LoopVectorize/X86/avx1.ll b/llvm/test/Transforms/LoopVectorize/X86/avx1.ll index 01c912567b6..95088df5c3f 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/avx1.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/avx1.ll @@ -12,7 +12,7 @@ define i32 @read_mod_write_single_ptr(float* nocapture %a, i32 %n) nounwind uwta .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds float* %a, i64 %indvars.iv + %2 = getelementptr inbounds float, float* %a, i64 %indvars.iv %3 = load float* %2, align 4 %4 = fmul float %3, 3.000000e+00 store float %4, float* %2, align 4 @@ -35,7 +35,7 @@ define i32 @read_mod_i64(i64* nocapture %a, i32 %n) nounwind uwtable ssp { .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds i64* %a, i64 %indvars.iv + %2 = getelementptr inbounds i64, i64* %a, i64 %indvars.iv %3 = load i64* %2, align 4 %4 = add i64 %3, 3 store i64 %4, i64* %2, align 4 diff --git a/llvm/test/Transforms/LoopVectorize/X86/avx512.ll b/llvm/test/Transforms/LoopVectorize/X86/avx512.ll index a2208668177..754e859cd8f 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/avx512.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/avx512.ll @@ -20,7 +20,7 @@ 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 i32* %a, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %a, i64 %indvars.iv store i32 %n, i32* %arrayidx, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/X86/constant-vector-operand.ll b/llvm/test/Transforms/LoopVectorize/X86/constant-vector-operand.ll index f4c07b4b24d..106bd84fc7c 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/constant-vector-operand.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/constant-vector-operand.ll @@ -15,10 +15,10 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @B, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @B, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %shl = ashr i32 %0, 3 - %arrayidx2 = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv store i32 %shl, i32* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/X86/conversion-cost.ll b/llvm/test/Transforms/LoopVectorize/X86/conversion-cost.ll index 0af562db847..eb2a2a56fae 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/conversion-cost.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/conversion-cost.ll @@ -13,7 +13,7 @@ define i32 @conversion_cost1(i32 %n, i8* nocapture %A, float* nocapture %B) noun .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 3, %0 ] %2 = trunc i64 %indvars.iv to i8 - %3 = getelementptr inbounds i8* %A, i64 %indvars.iv + %3 = getelementptr inbounds i8, i8* %A, i64 %indvars.iv store i8 %2, i8* %3, align 1 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -35,7 +35,7 @@ define i32 @conversion_cost2(i32 %n, i8* nocapture %A, float* nocapture %B) noun %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 9, %0 ] %add = add nsw i64 %indvars.iv, 3 %tofp = sitofp i64 %add to float - %gep = getelementptr inbounds float* %B, i64 %indvars.iv + %gep = getelementptr inbounds float, float* %B, i64 %indvars.iv store float %tofp, float* %gep, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/X86/cost-model.ll b/llvm/test/Transforms/LoopVectorize/X86/cost-model.ll index 98718e1e970..190e130b609 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/cost-model.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/cost-model.ll @@ -21,15 +21,15 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %0 = shl nsw i64 %indvars.iv, 1 - %arrayidx = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %0 + %arrayidx = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %0 %1 = load i32* %arrayidx, align 8 %idxprom1 = sext i32 %1 to i64 - %arrayidx2 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %idxprom1 + %arrayidx2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %idxprom1 %2 = load i32* %arrayidx2, align 4 - %arrayidx4 = getelementptr inbounds [2048 x i32]* @d, i64 0, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds [2048 x i32], [2048 x i32]* @d, i64 0, i64 %indvars.iv %3 = load i32* %arrayidx4, align 4 %idxprom5 = sext i32 %3 to i64 - %arrayidx6 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %idxprom5 + %arrayidx6 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %idxprom5 store i32 %2, i32* %arrayidx6, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/X86/fp32_to_uint32-cost-model.ll b/llvm/test/Transforms/LoopVectorize/X86/fp32_to_uint32-cost-model.ll index 529ed883c3b..627ae0076b0 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/fp32_to_uint32-cost-model.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/fp32_to_uint32-cost-model.ll @@ -20,10 +20,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 [10000 x float]* @float_array, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [10000 x float], [10000 x float]* @float_array, i64 0, i64 %indvars.iv %1 = load float* %arrayidx, align 4 %conv = fptoui float %1 to i32 - %arrayidx2 = getelementptr inbounds [10000 x i32]* @unsigned_array, i64 0, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds [10000 x i32], [10000 x i32]* @unsigned_array, i64 0, i64 %indvars.iv store i32 %conv, i32* %arrayidx2, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/X86/fp64_to_uint32-cost-model.ll b/llvm/test/Transforms/LoopVectorize/X86/fp64_to_uint32-cost-model.ll index ef3e3bec793..7c1dfe39236 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/fp64_to_uint32-cost-model.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/fp64_to_uint32-cost-model.ll @@ -22,10 +22,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 [10000 x double]* @double_array, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [10000 x double], [10000 x double]* @double_array, i64 0, i64 %indvars.iv %1 = load double* %arrayidx, align 8 %conv = fptoui double %1 to i32 - %arrayidx2 = getelementptr inbounds [10000 x i32]* @unsigned_array, i64 0, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds [10000 x i32], [10000 x i32]* @unsigned_array, i64 0, i64 %indvars.iv store i32 %conv, i32* %arrayidx2, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %2 = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/X86/fp_to_sint8-cost-model.ll b/llvm/test/Transforms/LoopVectorize/X86/fp_to_sint8-cost-model.ll index 23e62275ce0..106c9d66623 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/fp_to_sint8-cost-model.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/fp_to_sint8-cost-model.ll @@ -11,10 +11,10 @@ entry: br label %for.body for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds float* %b, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %b, i64 %indvars.iv %tmp = load float* %arrayidx, align 4 %conv = fptosi float %tmp to i8 - %arrayidx2 = getelementptr inbounds i8* %a, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i8, i8* %a, i64 %indvars.iv store i8 %conv, i8* %arrayidx2, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 256 diff --git a/llvm/test/Transforms/LoopVectorize/X86/gather-cost.ll b/llvm/test/Transforms/LoopVectorize/X86/gather-cost.ll index 09363d65eef..8c9cb653da0 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/gather-cost.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/gather-cost.ll @@ -31,23 +31,23 @@ for.body: %b.054 = phi float [ 0.000000e+00, %for.body.lr.ph ], [ %add30, %for.body ] %add = add i64 %v.055, %offset %mul = mul i64 %add, 3 - %arrayidx = getelementptr inbounds [1536 x float]* @src_data, i64 0, i64 %mul + %arrayidx = getelementptr inbounds [1536 x float], [1536 x float]* @src_data, i64 0, i64 %mul %0 = load float* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds [512 x float]* @kernel, i64 0, i64 %v.055 + %arrayidx2 = getelementptr inbounds [512 x float], [512 x float]* @kernel, i64 0, i64 %v.055 %1 = load float* %arrayidx2, align 4 %mul3 = fmul fast float %0, %1 - %arrayidx4 = getelementptr inbounds [512 x float]* @kernel2, i64 0, i64 %v.055 + %arrayidx4 = getelementptr inbounds [512 x float], [512 x float]* @kernel2, i64 0, i64 %v.055 %2 = load float* %arrayidx4, align 4 %mul5 = fmul fast float %mul3, %2 - %arrayidx6 = getelementptr inbounds [512 x float]* @kernel3, i64 0, i64 %v.055 + %arrayidx6 = getelementptr inbounds [512 x float], [512 x float]* @kernel3, i64 0, i64 %v.055 %3 = load float* %arrayidx6, align 4 %mul7 = fmul fast float %mul5, %3 - %arrayidx8 = getelementptr inbounds [512 x float]* @kernel4, i64 0, i64 %v.055 + %arrayidx8 = getelementptr inbounds [512 x float], [512 x float]* @kernel4, i64 0, i64 %v.055 %4 = load float* %arrayidx8, align 4 %mul9 = fmul fast float %mul7, %4 %add10 = fadd fast float %r.057, %mul9 %arrayidx.sum = add i64 %mul, 1 - %arrayidx11 = getelementptr inbounds [1536 x float]* @src_data, i64 0, i64 %arrayidx.sum + %arrayidx11 = getelementptr inbounds [1536 x float], [1536 x float]* @src_data, i64 0, i64 %arrayidx.sum %5 = load float* %arrayidx11, align 4 %mul13 = fmul fast float %1, %5 %mul15 = fmul fast float %2, %mul13 @@ -55,7 +55,7 @@ for.body: %mul19 = fmul fast float %4, %mul17 %add20 = fadd fast float %g.056, %mul19 %arrayidx.sum52 = add i64 %mul, 2 - %arrayidx21 = getelementptr inbounds [1536 x float]* @src_data, i64 0, i64 %arrayidx.sum52 + %arrayidx21 = getelementptr inbounds [1536 x float], [1536 x float]* @src_data, i64 0, i64 %arrayidx.sum52 %6 = load float* %arrayidx21, align 4 %mul23 = fmul fast float %1, %6 %mul25 = fmul fast float %2, %mul23 diff --git a/llvm/test/Transforms/LoopVectorize/X86/gcc-examples.ll b/llvm/test/Transforms/LoopVectorize/X86/gcc-examples.ll index 05403cd5b61..eb846622262 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/gcc-examples.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/gcc-examples.ll @@ -28,12 +28,12 @@ define void @example1() nounwind uwtable ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %indvars.iv + %4 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = add nsw i32 %5, %3 - %7 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %7 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv store i32 %6, i32* %7, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -61,10 +61,10 @@ define void @example10b(i16* noalias nocapture %sa, i16* noalias nocapture %sb, ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds i16* %sb, i64 %indvars.iv + %2 = getelementptr inbounds i16, i16* %sb, i64 %indvars.iv %3 = load i16* %2, align 2 %4 = sext i16 %3 to i32 - %5 = getelementptr inbounds i32* %ia, i64 %indvars.iv + %5 = getelementptr inbounds i32, i32* %ia, i64 %indvars.iv store i32 %4, i32* %5, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll b/llvm/test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll index 46efaf0e853..f2163b0bf81 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll @@ -14,7 +14,7 @@ entry: br i1 %cmp27, label %for.body3.lr.ph.us, label %for.end15 for.end.us: ; preds = %for.body3.us - %arrayidx9.us = getelementptr inbounds i32* %b, i64 %indvars.iv33 + %arrayidx9.us = getelementptr inbounds i32, i32* %b, i64 %indvars.iv33 %0 = load i32* %arrayidx9.us, align 4, !llvm.mem.parallel_loop_access !3 %add10.us = add nsw i32 %0, 3 store i32 %add10.us, i32* %arrayidx9.us, align 4, !llvm.mem.parallel_loop_access !3 @@ -28,7 +28,7 @@ for.body3.us: ; preds = %for.body3.us, %for. %1 = trunc i64 %indvars.iv29 to i32 %add4.us = add i32 %add.us, %1 %idxprom.us = sext i32 %add4.us to i64 - %arrayidx.us = getelementptr inbounds i32* %a, i64 %idxprom.us + %arrayidx.us = getelementptr inbounds i32, i32* %a, i64 %idxprom.us %2 = load i32* %arrayidx.us, align 4, !llvm.mem.parallel_loop_access !3 %add5.us = add nsw i32 %2, 1 store i32 %add5.us, i32* %arrayidx7.us, align 4, !llvm.mem.parallel_loop_access !3 @@ -41,7 +41,7 @@ for.body3.lr.ph.us: ; preds = %for.end.us, %entry %indvars.iv33 = phi i64 [ %indvars.iv.next34, %for.end.us ], [ 0, %entry ] %3 = trunc i64 %indvars.iv33 to i32 %add.us = add i32 %3, %k - %arrayidx7.us = getelementptr inbounds i32* %a, i64 %indvars.iv33 + %arrayidx7.us = getelementptr inbounds i32, i32* %a, i64 %indvars.iv33 br label %for.body3.us for.end15: ; preds = %for.end.us, %entry diff --git a/llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll b/llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll index 9e2de800058..c3ee6f81a79 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll @@ -54,7 +54,7 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %idxprom = sext i32 %1 to i64 %2 = load i32** %trigger.addr, align 8 - %arrayidx = getelementptr inbounds i32* %2, i64 %idxprom + %arrayidx = getelementptr inbounds i32, i32* %2, i64 %idxprom %3 = load i32* %arrayidx, align 4 %cmp1 = icmp slt i32 %3, 100 br i1 %cmp1, label %if.then, label %if.end @@ -63,18 +63,18 @@ if.then: ; preds = %for.body %4 = load i32* %i, align 4 %idxprom2 = sext i32 %4 to i64 %5 = load i32** %B.addr, align 8 - %arrayidx3 = getelementptr inbounds i32* %5, i64 %idxprom2 + %arrayidx3 = getelementptr inbounds i32, i32* %5, i64 %idxprom2 %6 = load i32* %arrayidx3, align 4 %7 = load i32* %i, align 4 %idxprom4 = sext i32 %7 to i64 %8 = load i32** %trigger.addr, align 8 - %arrayidx5 = getelementptr inbounds i32* %8, i64 %idxprom4 + %arrayidx5 = getelementptr inbounds i32, i32* %8, i64 %idxprom4 %9 = load i32* %arrayidx5, align 4 %add = add nsw i32 %6, %9 %10 = load i32* %i, align 4 %idxprom6 = sext i32 %10 to i64 %11 = load i32** %A.addr, align 8 - %arrayidx7 = getelementptr inbounds i32* %11, i64 %idxprom6 + %arrayidx7 = getelementptr inbounds i32, i32* %11, i64 %idxprom6 store i32 %add, i32* %arrayidx7, align 4 br label %if.end @@ -138,7 +138,7 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %idxprom = sext i32 %1 to i64 %2 = load i32** %trigger.addr, align 8 - %arrayidx = getelementptr inbounds i32* %2, i64 %idxprom + %arrayidx = getelementptr inbounds i32, i32* %2, i64 %idxprom %3 = load i32* %arrayidx, align 4 %cmp1 = icmp slt i32 %3, 100 br i1 %cmp1, label %if.then, label %if.end @@ -147,19 +147,19 @@ if.then: ; preds = %for.body %4 = load i32* %i, align 4 %idxprom2 = sext i32 %4 to i64 %5 = load float** %B.addr, align 8 - %arrayidx3 = getelementptr inbounds float* %5, i64 %idxprom2 + %arrayidx3 = getelementptr inbounds float, float* %5, i64 %idxprom2 %6 = load float* %arrayidx3, align 4 %7 = load i32* %i, align 4 %idxprom4 = sext i32 %7 to i64 %8 = load i32** %trigger.addr, align 8 - %arrayidx5 = getelementptr inbounds i32* %8, i64 %idxprom4 + %arrayidx5 = getelementptr inbounds i32, i32* %8, i64 %idxprom4 %9 = load i32* %arrayidx5, align 4 %conv = sitofp i32 %9 to float %add = fadd float %6, %conv %10 = load i32* %i, align 4 %idxprom6 = sext i32 %10 to i64 %11 = load float** %A.addr, align 8 - %arrayidx7 = getelementptr inbounds float* %11, i64 %idxprom6 + %arrayidx7 = getelementptr inbounds float, float* %11, i64 %idxprom6 store float %add, float* %arrayidx7, align 4 br label %if.end @@ -226,7 +226,7 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %idxprom = sext i32 %1 to i64 %2 = load i32** %trigger.addr, align 8 - %arrayidx = getelementptr inbounds i32* %2, i64 %idxprom + %arrayidx = getelementptr inbounds i32, i32* %2, i64 %idxprom %3 = load i32* %arrayidx, align 4 %cmp1 = icmp slt i32 %3, 100 br i1 %cmp1, label %if.then, label %if.end @@ -235,19 +235,19 @@ if.then: ; preds = %for.body %4 = load i32* %i, align 4 %idxprom2 = sext i32 %4 to i64 %5 = load double** %B.addr, align 8 - %arrayidx3 = getelementptr inbounds double* %5, i64 %idxprom2 + %arrayidx3 = getelementptr inbounds double, double* %5, i64 %idxprom2 %6 = load double* %arrayidx3, align 8 %7 = load i32* %i, align 4 %idxprom4 = sext i32 %7 to i64 %8 = load i32** %trigger.addr, align 8 - %arrayidx5 = getelementptr inbounds i32* %8, i64 %idxprom4 + %arrayidx5 = getelementptr inbounds i32, i32* %8, i64 %idxprom4 %9 = load i32* %arrayidx5, align 4 %conv = sitofp i32 %9 to double %add = fadd double %6, %conv %10 = load i32* %i, align 4 %idxprom6 = sext i32 %10 to i64 %11 = load double** %A.addr, align 8 - %arrayidx7 = getelementptr inbounds double* %11, i64 %idxprom6 + %arrayidx7 = getelementptr inbounds double, double* %11, i64 %idxprom6 store double %add, double* %arrayidx7, align 8 br label %if.end @@ -305,7 +305,7 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %idxprom = sext i32 %1 to i64 %2 = load i32** %trigger.addr, align 8 - %arrayidx = getelementptr inbounds i32* %2, i64 %idxprom + %arrayidx = getelementptr inbounds i32, i32* %2, i64 %idxprom %3 = load i32* %arrayidx, align 4 %cmp1 = icmp slt i32 %3, 100 br i1 %cmp1, label %if.then, label %if.end @@ -315,19 +315,19 @@ if.then: ; preds = %for.body %mul = mul nsw i32 %4, 2 %idxprom2 = sext i32 %mul to i64 %5 = load double** %B.addr, align 8 - %arrayidx3 = getelementptr inbounds double* %5, i64 %idxprom2 + %arrayidx3 = getelementptr inbounds double, double* %5, i64 %idxprom2 %6 = load double* %arrayidx3, align 8 %7 = load i32* %i, align 4 %idxprom4 = sext i32 %7 to i64 %8 = load i32** %trigger.addr, align 8 - %arrayidx5 = getelementptr inbounds i32* %8, i64 %idxprom4 + %arrayidx5 = getelementptr inbounds i32, i32* %8, i64 %idxprom4 %9 = load i32* %arrayidx5, align 4 %conv = sitofp i32 %9 to double %add = fadd double %6, %conv %10 = load i32* %i, align 4 %idxprom6 = sext i32 %10 to i64 %11 = load double** %A.addr, align 8 - %arrayidx7 = getelementptr inbounds double* %11, i64 %idxprom6 + %arrayidx7 = getelementptr inbounds double, double* %11, i64 %idxprom6 store double %add, double* %arrayidx7, align 8 br label %if.end @@ -381,7 +381,7 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %idxprom = sext i32 %1 to i64 %2 = load i32** %trigger.addr, align 8 - %arrayidx = getelementptr inbounds i32* %2, i64 %idxprom + %arrayidx = getelementptr inbounds i32, i32* %2, i64 %idxprom %3 = load i32* %arrayidx, align 4 %cmp1 = icmp slt i32 %3, 100 br i1 %cmp1, label %if.then, label %if.end @@ -390,18 +390,18 @@ if.then: ; preds = %for.body %4 = load i32* %i, align 4 %idxprom2 = sext i32 %4 to i64 %5 = load i32** %B.addr, align 8 - %arrayidx3 = getelementptr inbounds i32* %5, i64 %idxprom2 + %arrayidx3 = getelementptr inbounds i32, i32* %5, i64 %idxprom2 %6 = load i32* %arrayidx3, align 4 %7 = load i32* %i, align 4 %idxprom4 = sext i32 %7 to i64 %8 = load i32** %trigger.addr, align 8 - %arrayidx5 = getelementptr inbounds i32* %8, i64 %idxprom4 + %arrayidx5 = getelementptr inbounds i32, i32* %8, i64 %idxprom4 %9 = load i32* %arrayidx5, align 4 %add = add nsw i32 %6, %9 %10 = load i32* %i, align 4 %idxprom6 = sext i32 %10 to i64 %11 = load i32** %A.addr, align 8 - %arrayidx7 = getelementptr inbounds i32* %11, i64 %idxprom6 + %arrayidx7 = getelementptr inbounds i32, i32* %11, i64 %idxprom6 store i32 sdiv (i32 1, i32 zext (i1 icmp eq (i32** getelementptr inbounds ([1 x i32*]* @a, i64 0, i64 1), i32** @c) to i32)), i32* %arrayidx7, align 4 br label %if.end @@ -467,7 +467,7 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %idxprom = sext i32 %1 to i64 %2 = load i32** %trigger.addr, align 8 - %arrayidx = getelementptr inbounds i32* %2, i64 %idxprom + %arrayidx = getelementptr inbounds i32, i32* %2, i64 %idxprom %3 = load i32* %arrayidx, align 4 %cmp1 = icmp sgt i32 %3, 0 br i1 %cmp1, label %if.then, label %if.end @@ -476,13 +476,13 @@ if.then: ; preds = %for.body %4 = load i32* %i, align 4 %idxprom2 = sext i32 %4 to i64 %5 = load double** %in.addr, align 8 - %arrayidx3 = getelementptr inbounds double* %5, i64 %idxprom2 + %arrayidx3 = getelementptr inbounds double, double* %5, i64 %idxprom2 %6 = load double* %arrayidx3, align 8 %add = fadd double %6, 5.000000e-01 %7 = load i32* %i, align 4 %idxprom4 = sext i32 %7 to i64 %8 = load double** %out.addr, align 8 - %arrayidx5 = getelementptr inbounds double* %8, i64 %idxprom4 + %arrayidx5 = getelementptr inbounds double, double* %8, i64 %idxprom4 store double %add, double* %arrayidx5, align 8 br label %if.end diff --git a/llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll b/llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll index 7feb66ce6a9..bdce3ad3d04 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll @@ -54,10 +54,10 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32* %b, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %b, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %add = add nsw i32 %0, %N - %arrayidx2 = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %indvars.iv store i32 %add, i32* %arrayidx2, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 32 @@ -105,10 +105,10 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32* %b, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %b, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %add = add nsw i32 %0, %N - %arrayidx2 = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %indvars.iv store i32 %add, i32* %arrayidx2, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 32 @@ -156,10 +156,10 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32* %b, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %b, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %add = add nsw i32 %0, %N - %arrayidx2 = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %indvars.iv store i32 %add, i32* %arrayidx2, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 32 diff --git a/llvm/test/Transforms/LoopVectorize/X86/min-trip-count-switch.ll b/llvm/test/Transforms/LoopVectorize/X86/min-trip-count-switch.ll index fd69dc46070..3207025f167 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/min-trip-count-switch.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/min-trip-count-switch.ll @@ -10,7 +10,7 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds float* %a, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %a, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %add = fadd float %0, 1.000000e+00 store float %add, float* %arrayidx, align 4 diff --git a/llvm/test/Transforms/LoopVectorize/X86/no-vector.ll b/llvm/test/Transforms/LoopVectorize/X86/no-vector.ll index 692eec98959..1ac18f27f83 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/no-vector.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/no-vector.ll @@ -8,7 +8,7 @@ entry: for.body: ; preds = %entry, %for.body %i.06 = phi i32 [ %inc, %for.body ], [ 0, %entry ] %r.05 = phi i32 [ %xor, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i8* %s, i32 %i.06 + %arrayidx = getelementptr inbounds i8, i8* %s, i32 %i.06 %0 = load i8* %arrayidx, align 1 %conv = sext i8 %0 to i32 %xor = xor i32 %conv, %r.05 diff --git a/llvm/test/Transforms/LoopVectorize/X86/parallel-loops-after-reg2mem.ll b/llvm/test/Transforms/LoopVectorize/X86/parallel-loops-after-reg2mem.ll index ad010443a5e..a7f636290ba 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/parallel-loops-after-reg2mem.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/parallel-loops-after-reg2mem.ll @@ -18,18 +18,18 @@ entry: for.body: ; preds = %for.body.for.body_crit_edge, %entry %indvars.iv.reload = load i64* %indvars.iv.reg2mem - %arrayidx = getelementptr inbounds i32* %b, i64 %indvars.iv.reload + %arrayidx = getelementptr inbounds i32, i32* %b, i64 %indvars.iv.reload %0 = load i32* %arrayidx, align 4, !llvm.mem.parallel_loop_access !3 - %arrayidx2 = getelementptr inbounds i32* %a, i64 %indvars.iv.reload + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %indvars.iv.reload %1 = load i32* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !3 %idxprom3 = sext i32 %1 to i64 - %arrayidx4 = getelementptr inbounds i32* %a, i64 %idxprom3 + %arrayidx4 = getelementptr inbounds i32, i32* %a, i64 %idxprom3 store i32 %0, i32* %arrayidx4, align 4, !llvm.mem.parallel_loop_access !3 %indvars.iv.next = add i64 %indvars.iv.reload, 1 ; A new store without the parallel metadata here: store i64 %indvars.iv.next, i64* %indvars.iv.next.reg2mem %indvars.iv.next.reload1 = load i64* %indvars.iv.next.reg2mem - %arrayidx6 = getelementptr inbounds i32* %b, i64 %indvars.iv.next.reload1 + %arrayidx6 = getelementptr inbounds i32, i32* %b, i64 %indvars.iv.next.reload1 %2 = load i32* %arrayidx6, align 4, !llvm.mem.parallel_loop_access !3 store i32 %2, i32* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !3 %indvars.iv.next.reload = load i64* %indvars.iv.next.reg2mem diff --git a/llvm/test/Transforms/LoopVectorize/X86/parallel-loops.ll b/llvm/test/Transforms/LoopVectorize/X86/parallel-loops.ll index 22ab5215749..83bed435de4 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/parallel-loops.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/parallel-loops.ll @@ -20,15 +20,15 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32* %b, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %b, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %indvars.iv %1 = load i32* %arrayidx2, align 4 %idxprom3 = sext i32 %1 to i64 - %arrayidx4 = getelementptr inbounds i32* %a, i64 %idxprom3 + %arrayidx4 = getelementptr inbounds i32, i32* %a, i64 %idxprom3 store i32 %0, i32* %arrayidx4, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 - %arrayidx6 = getelementptr inbounds i32* %b, i64 %indvars.iv.next + %arrayidx6 = getelementptr inbounds i32, i32* %b, i64 %indvars.iv.next %2 = load i32* %arrayidx6, align 4 store i32 %2, i32* %arrayidx2, align 4 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -50,17 +50,17 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32* %b, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %b, i64 %indvars.iv %0 = load i32* %arrayidx, align 4, !llvm.mem.parallel_loop_access !3 - %arrayidx2 = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %indvars.iv %1 = load i32* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !3 %idxprom3 = sext i32 %1 to i64 - %arrayidx4 = getelementptr inbounds i32* %a, i64 %idxprom3 + %arrayidx4 = getelementptr inbounds i32, i32* %a, i64 %idxprom3 ; This store might have originated from inlining a function with a parallel ; loop. Refers to a list with the "original loop reference" (!4) also included. store i32 %0, i32* %arrayidx4, align 4, !llvm.mem.parallel_loop_access !5 %indvars.iv.next = add i64 %indvars.iv, 1 - %arrayidx6 = getelementptr inbounds i32* %b, i64 %indvars.iv.next + %arrayidx6 = getelementptr inbounds i32, i32* %b, i64 %indvars.iv.next %2 = load i32* %arrayidx6, align 4, !llvm.mem.parallel_loop_access !3 store i32 %2, i32* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !3 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -83,17 +83,17 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32* %b, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %b, i64 %indvars.iv %0 = load i32* %arrayidx, align 4, !llvm.mem.parallel_loop_access !6 - %arrayidx2 = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %indvars.iv %1 = load i32* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !6 %idxprom3 = sext i32 %1 to i64 - %arrayidx4 = getelementptr inbounds i32* %a, i64 %idxprom3 + %arrayidx4 = getelementptr inbounds i32, i32* %a, i64 %idxprom3 ; This refers to the loop marked with !7 which we are not in at the moment. ; It should prevent detecting as a parallel loop. store i32 %0, i32* %arrayidx4, align 4, !llvm.mem.parallel_loop_access !7 %indvars.iv.next = add i64 %indvars.iv, 1 - %arrayidx6 = getelementptr inbounds i32* %b, i64 %indvars.iv.next + %arrayidx6 = getelementptr inbounds i32, i32* %b, i64 %indvars.iv.next %2 = load i32* %arrayidx6, align 4, !llvm.mem.parallel_loop_access !6 store i32 %2, i32* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !6 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/X86/powof2div.ll b/llvm/test/Transforms/LoopVectorize/X86/powof2div.ll index 054da8ed20a..af3cfe06ef9 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/powof2div.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/powof2div.ll @@ -17,10 +17,10 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds %struct.anon* @Foo, i64 0, i32 2, i64 %indvars.iv + %arrayidx = getelementptr inbounds %struct.anon, %struct.anon* @Foo, i64 0, i32 2, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %div = sdiv i32 %0, 2 - %arrayidx2 = getelementptr inbounds %struct.anon* @Foo, i64 0, i32 0, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds %struct.anon, %struct.anon* @Foo, i64 0, i32 0, i64 %indvars.iv store i32 %div, i32* %arrayidx2, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 100 diff --git a/llvm/test/Transforms/LoopVectorize/X86/reduction-crash.ll b/llvm/test/Transforms/LoopVectorize/X86/reduction-crash.ll index 3957a554142..ce2aa8963e2 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/reduction-crash.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/reduction-crash.ll @@ -20,11 +20,11 @@ bb2: ; preds = %bb bb3: ; preds = %bb3, %bb2 %tmp4 = phi double [ %tmp9, %bb3 ], [ %tmp, %bb2 ] %tmp5 = phi i32 [ %tmp8, %bb3 ], [ 0, %bb2 ] - %tmp6 = getelementptr inbounds [16 x double]* undef, i32 0, i32 %tmp5 + %tmp6 = getelementptr inbounds [16 x double], [16 x double]* undef, i32 0, i32 %tmp5 %tmp7 = load double* %tmp6, align 4 %tmp8 = add nsw i32 %tmp5, 1 %tmp9 = fadd fast double %tmp4, undef - %tmp10 = getelementptr inbounds float* %arg, i32 %tmp5 + %tmp10 = getelementptr inbounds float, float* %arg, i32 %tmp5 store float undef, float* %tmp10, align 4 %tmp11 = icmp eq i32 %tmp8, %arg1 br i1 %tmp11, label %bb12, label %bb3 diff --git a/llvm/test/Transforms/LoopVectorize/X86/small-size.ll b/llvm/test/Transforms/LoopVectorize/X86/small-size.ll index 8c7a881be46..38e3c086347 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/small-size.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/small-size.ll @@ -30,12 +30,12 @@ define void @example1() optsize { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %indvars.iv + %4 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = add nsw i32 %5, %3 - %7 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %7 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv store i32 %6, i32* %7, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -65,7 +65,7 @@ define void @example2(i32 %n, i32 %x) optsize { .lr.ph5: ; preds = %0, %.lr.ph5 %indvars.iv6 = phi i64 [ %indvars.iv.next7, %.lr.ph5 ], [ 0, %0 ] - %3 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv6 + %3 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv6 store i32 %x, i32* %3, align 4 %indvars.iv.next7 = add i64 %indvars.iv6, 1 %lftr.wideiv = trunc i64 %indvars.iv.next7 to i32 @@ -76,12 +76,12 @@ define void @example2(i32 %n, i32 %x) optsize { %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ %i.0.lcssa, %.preheader ] %.02 = phi i32 [ %4, %.lr.ph ], [ %n, %.preheader ] %4 = add nsw i32 %.02, -1 - %5 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv + %5 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv %6 = load i32* %5, align 4 - %7 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %indvars.iv + %7 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %indvars.iv %8 = load i32* %7, align 4 %9 = and i32 %8, %6 - %10 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %10 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv store i32 %9, i32* %10, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %11 = icmp eq i32 %4, 0 @@ -104,9 +104,9 @@ define void @example3(i32 %n, i32* noalias nocapture %p, i32* noalias nocapture %.014 = phi i32* [ %5, %.lr.ph ], [ %p, %0 ] %.023 = phi i32* [ %3, %.lr.ph ], [ %q, %0 ] %2 = add nsw i32 %.05, -1 - %3 = getelementptr inbounds i32* %.023, i64 1 + %3 = getelementptr inbounds i32, i32* %.023, i64 1 %4 = load i32* %.023, align 16 - %5 = getelementptr inbounds i32* %.014, i64 1 + %5 = getelementptr inbounds i32, i32* %.014, i64 1 store i32 %4, i32* %.014, align 16 %6 = icmp eq i32 %2, 0 br i1 %6, label %._crit_edge, label %.lr.ph @@ -128,9 +128,9 @@ define void @example4(i32 %n, i32* noalias nocapture %p, i32* noalias nocapture %.014 = phi i32* [ %5, %.lr.ph ], [ %p, %0 ] %.023 = phi i32* [ %3, %.lr.ph ], [ %q, %0 ] %2 = add nsw i32 %.05, -1 - %3 = getelementptr inbounds i32* %.023, i64 1 + %3 = getelementptr inbounds i32, i32* %.023, i64 1 %4 = load i32* %.023, align 16 - %5 = getelementptr inbounds i32* %.014, i64 1 + %5 = getelementptr inbounds i32, i32* %.014, i64 1 store i32 %4, i32* %.014, align 16 %6 = icmp eq i32 %2, 0 br i1 %6, label %._crit_edge, label %.lr.ph @@ -152,11 +152,11 @@ define void @example23(i16* nocapture %src, i32* nocapture %dst) optsize { %.04 = phi i16* [ %src, %0 ], [ %2, %1 ] %.013 = phi i32* [ %dst, %0 ], [ %6, %1 ] %i.02 = phi i32 [ 0, %0 ], [ %7, %1 ] - %2 = getelementptr inbounds i16* %.04, i64 1 + %2 = getelementptr inbounds i16, i16* %.04, i64 1 %3 = load i16* %.04, align 2 %4 = zext i16 %3 to i32 %5 = shl nuw nsw i32 %4, 7 - %6 = getelementptr inbounds i32* %.013, i64 1 + %6 = getelementptr inbounds i32, i32* %.013, i64 1 store i32 %5, i32* %.013, align 4 %7 = add nsw i32 %i.02, 1 %exitcond = icmp eq i32 %7, 256 @@ -178,11 +178,11 @@ define void @example23b(i16* noalias nocapture %src, i32* noalias nocapture %dst %.04 = phi i16* [ %src, %0 ], [ %2, %1 ] %.013 = phi i32* [ %dst, %0 ], [ %6, %1 ] %i.02 = phi i32 [ 0, %0 ], [ %7, %1 ] - %2 = getelementptr inbounds i16* %.04, i64 1 + %2 = getelementptr inbounds i16, i16* %.04, i64 1 %3 = load i16* %.04, align 2 %4 = zext i16 %3 to i32 %5 = shl nuw nsw i32 %4, 7 - %6 = getelementptr inbounds i32* %.013, i64 1 + %6 = getelementptr inbounds i32, i32* %.013, i64 1 store i32 %5, i32* %.013, align 4 %7 = add nsw i32 %i.02, 1 %exitcond = icmp eq i32 %7, 256 diff --git a/llvm/test/Transforms/LoopVectorize/X86/struct-store.ll b/llvm/test/Transforms/LoopVectorize/X86/struct-store.ll index a995e43a5ab..4ff3b0e4c05 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/struct-store.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/struct-store.ll @@ -15,7 +15,7 @@ entry: loop: %indvars.iv = phi i64 [ %indvars.iv.next, %loop ], [ 0, %entry ] - %tmp = getelementptr inbounds [16 x { i64, i64 }]* @glbl, i64 0, i64 %indvars.iv + %tmp = getelementptr inbounds [16 x { i64, i64 }], [16 x { i64, i64 }]* @glbl, i64 0, i64 %indvars.iv store { i64, i64 } { i64 ptrtoint (void ()* @fn to i64), i64 0 }, { i64, i64 }* %tmp, align 16 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/X86/tripcount.ll b/llvm/test/Transforms/LoopVectorize/X86/tripcount.ll index a4ec6948a2f..9984e2d04e8 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/tripcount.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/tripcount.ll @@ -22,7 +22,7 @@ for.body.preheader: for.body: %i.07 = phi i32 [ %inc, %for.body ], [ 0, %for.body.preheader ] - %arrayidx = getelementptr inbounds [0 x i32]* @big, i32 0, i32 %i.07 + %arrayidx = getelementptr inbounds [0 x i32], [0 x i32]* @big, i32 0, i32 %i.07 %0 = load i32* %arrayidx, align 4 %neg = xor i32 %0, -1 store i32 %neg, i32* %arrayidx, align 4 diff --git a/llvm/test/Transforms/LoopVectorize/X86/uint64_to_fp64-cost-model.ll b/llvm/test/Transforms/LoopVectorize/X86/uint64_to_fp64-cost-model.ll index 86c32b2d2ee..40421d4cff0 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/uint64_to_fp64-cost-model.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/uint64_to_fp64-cost-model.ll @@ -12,10 +12,10 @@ entry: br label %for.body for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i64* %a, i64 %indvars.iv + %arrayidx = getelementptr inbounds i64, i64* %a, i64 %indvars.iv %tmp = load i64* %arrayidx, align 4 %conv = uitofp i64 %tmp to double - %arrayidx2 = getelementptr inbounds double* %b, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %b, i64 %indvars.iv store double %conv, double* %arrayidx2, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 256 diff --git a/llvm/test/Transforms/LoopVectorize/X86/unroll-pm.ll b/llvm/test/Transforms/LoopVectorize/X86/unroll-pm.ll index 5064fec286c..50fdf187499 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/unroll-pm.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/unroll-pm.ll @@ -17,7 +17,7 @@ define i32 @bar(i32* nocapture %A, i32 %n) nounwind uwtable ssp { .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds i32* %A, i64 %indvars.iv + %2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %3 = load i32* %2, align 4 %4 = add nsw i32 %3, 6 store i32 %4, i32* %2, align 4 diff --git a/llvm/test/Transforms/LoopVectorize/X86/unroll-small-loops.ll b/llvm/test/Transforms/LoopVectorize/X86/unroll-small-loops.ll index 716dc08a55a..eff6ca49edc 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/unroll-small-loops.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/unroll-small-loops.ll @@ -26,7 +26,7 @@ define i32 @foo(i32* nocapture %A) nounwind uwtable ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds i32* %A, i64 %indvars.iv + %2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %3 = load i32* %2, align 4 %4 = add nsw i32 %3, 6 store i32 %4, i32* %2, align 4 @@ -57,7 +57,7 @@ define i32 @bar(i32* nocapture %A, i32 %n) nounwind uwtable ssp { .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds i32* %A, i64 %indvars.iv + %2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %3 = load i32* %2, align 4 %4 = add nsw i32 %3, 6 store i32 %4, i32* %2, align 4 @@ -86,10 +86,10 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds float* %B, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %B, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %mul = fmul float %0, %N - %arrayidx2 = getelementptr inbounds float* %A, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %A, i64 %indvars.iv store float %mul, float* %arrayidx2, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 256 diff --git a/llvm/test/Transforms/LoopVectorize/X86/unroll_selection.ll b/llvm/test/Transforms/LoopVectorize/X86/unroll_selection.ll index c684b4e79b1..360d66d3571 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/unroll_selection.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/unroll_selection.ll @@ -16,7 +16,7 @@ define void @reg_pressure(double* nocapture %A, i32 %n) nounwind uwtable ssp { ; <label>:2 ; preds = %2, %0 %indvars.iv = phi i64 [ %indvars.iv.next, %2 ], [ %1, %0 ] - %3 = getelementptr inbounds double* %A, i64 %indvars.iv + %3 = getelementptr inbounds double, double* %A, i64 %indvars.iv %4 = load double* %3, align 8 %5 = fadd double %4, 3.000000e+00 %6 = fmul double %4, 2.000000e+00 @@ -58,7 +58,7 @@ define void @small_loop(i16* nocapture %A, i64 %n) nounwind uwtable ssp { .lr.ph: ; preds = %0, %.lr.ph %i.01 = phi i64 [ %5, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds i16* %A, i64 %i.01 + %2 = getelementptr inbounds i16, i16* %A, i64 %i.01 %3 = load i16* %2, align 2 %4 = xor i16 %3, 3 store i16 %4, i16* %2, align 2 diff --git a/llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.ll b/llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.ll index a781fbedb40..e6a0d475161 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.ll @@ -35,10 +35,10 @@ for.body.preheader: for.body: %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %for.body.preheader ] - %arrayidx = getelementptr inbounds float* %B, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %B, i64 %indvars.iv %0 = load float* %arrayidx, align 4, !llvm.mem.parallel_loop_access !1 %call = tail call float @llvm.sin.f32(float %0) - %arrayidx2 = getelementptr inbounds float* %A, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %A, i64 %indvars.iv store float %call, float* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !1 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -69,10 +69,10 @@ for.body.preheader: for.body: %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %for.body.preheader ] - %arrayidx = getelementptr inbounds float* %B, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %B, i64 %indvars.iv %0 = load float* %arrayidx, align 4, !llvm.mem.parallel_loop_access !3 %call = tail call float @llvm.sin.f32(float %0) - %arrayidx2 = getelementptr inbounds float* %A, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %A, i64 %indvars.iv store float %call, float* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !3 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll b/llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll index e39e6b57dd9..f4bc1600c3c 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll @@ -29,9 +29,9 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds float* %B, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %B, i64 %indvars.iv %0 = load float* %arrayidx, align 4, !llvm.mem.parallel_loop_access !1 - %arrayidx2 = getelementptr inbounds float* %A, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %A, i64 %indvars.iv %1 = load float* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !1 %add = fadd fast float %0, %1 store float %add, float* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !1 @@ -55,9 +55,9 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds float* %B, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %B, i64 %indvars.iv %0 = load float* %arrayidx, align 4, !llvm.mem.parallel_loop_access !3 - %arrayidx2 = getelementptr inbounds float* %A, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %A, i64 %indvars.iv %1 = load float* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !3 %add = fadd fast float %0, %1 store float %add, float* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !3 diff --git a/llvm/test/Transforms/LoopVectorize/X86/vector-scalar-select-cost.ll b/llvm/test/Transforms/LoopVectorize/X86/vector-scalar-select-cost.ll index ece9895a0b4..86cebf342a6 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/vector-scalar-select-cost.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/vector-scalar-select-cost.ll @@ -15,12 +15,12 @@ define void @scalarselect(i1 %cond) { ; <label>:1 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %indvars.iv + %4 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = add nsw i32 %5, %3 - %7 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %7 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv ; A scalar select has a cost of 1 on core2 ; CHECK: cost of 1 for VF 2 {{.*}} select i1 %cond, i32 %6, i32 0 @@ -42,12 +42,12 @@ define void @vectorselect(i1 %cond) { ; <label>:1 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %indvars.iv + %4 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = add nsw i32 %5, %3 - %7 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %7 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv %8 = icmp ult i64 %indvars.iv, 8 ; A vector select has a cost of 1 on core2 diff --git a/llvm/test/Transforms/LoopVectorize/X86/vector_ptr_load_store.ll b/llvm/test/Transforms/LoopVectorize/X86/vector_ptr_load_store.ll index e57cfefec07..048c2603bbd 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/vector_ptr_load_store.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/vector_ptr_load_store.ll @@ -29,7 +29,7 @@ define void @test_consecutive_store(%0**, %0**, %0** nocapture) nounwind ssp uwt ; <label>:7 ; preds = %7, %6 %8 = phi %0** [ %0, %6 ], [ %9, %7 ] store %0* %4, %0** %8, align 8 - %9 = getelementptr inbounds %0** %8, i64 1 + %9 = getelementptr inbounds %0*, %0** %8, i64 1 %10 = icmp eq %0** %9, %1 br i1 %10, label %11, label %7 @@ -61,12 +61,12 @@ define void @test_nonconsecutive_store() nounwind ssp uwtable { ; <label>:3 ; preds = %3, %1 %4 = phi i64 [ 0, %1 ], [ %11, %3 ] - %5 = getelementptr inbounds [2048 x i16]* @q, i64 0, i64 %4 + %5 = getelementptr inbounds [2048 x i16], [2048 x i16]* @q, i64 0, i64 %4 %6 = load i16* %5, align 2 %7 = sext i16 %6 to i64 %8 = add i64 %7, 1 %9 = inttoptr i64 %8 to i32* - %10 = getelementptr inbounds [2048 x [8 x i32*]]* @p, i64 0, i64 %4, i64 %2 + %10 = getelementptr inbounds [2048 x [8 x i32*]], [2048 x [8 x i32*]]* @p, i64 0, i64 %4, i64 %2 store i32* %9, i32** %10, align 8 %11 = add i64 %4, 1 %12 = trunc i64 %11 to i32 @@ -100,7 +100,7 @@ define i8 @test_consecutive_ptr_load() nounwind readonly ssp uwtable { ; <label>:1 ; preds = %1, %0 %2 = phi i64 [ 0, %0 ], [ %10, %1 ] %3 = phi i8 [ 0, %0 ], [ %9, %1 ] - %4 = getelementptr inbounds [1024 x i32*]* @ia, i32 0, i64 %2 + %4 = getelementptr inbounds [1024 x i32*], [1024 x i32*]* @ia, i32 0, i64 %2 %5 = load i32** %4, align 4 %6 = ptrtoint i32* %5 to i64 %7 = trunc i64 %6 to i8 @@ -127,8 +127,8 @@ define void @test_nonconsecutive_ptr_load() nounwind ssp uwtable { ; <label>:3 ; preds = %3, %1 %4 = phi i64 [ 0, %1 ], [ %10, %3 ] - %5 = getelementptr inbounds [2048 x [8 x i32*]]* @p2, i64 0, i64 %4, i64 %2 - %6 = getelementptr inbounds [2048 x i16]* @q2, i64 0, i64 %4 + %5 = getelementptr inbounds [2048 x [8 x i32*]], [2048 x [8 x i32*]]* @p2, i64 0, i64 %4, i64 %2 + %6 = getelementptr inbounds [2048 x i16], [2048 x i16]* @q2, i64 0, i64 %4 %7 = load i32** %5, align 2 %8 = ptrtoint i32* %7 to i64 %9 = trunc i64 %8 to i16 diff --git a/llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll b/llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll index 011ce8eac55..92eba528c0d 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll @@ -52,7 +52,7 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv, !dbg !16 + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv, !dbg !16 %0 = trunc i64 %indvars.iv to i32, !dbg !16 store i32 %0, i32* %arrayidx, align 4, !dbg !16, !tbaa !18 %cmp3 = icmp sle i32 %0, %Length, !dbg !22 @@ -74,7 +74,7 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv, !dbg !30 + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv, !dbg !30 %0 = trunc i64 %indvars.iv to i32, !dbg !30 store i32 %0, i32* %arrayidx, align 4, !dbg !30, !tbaa !18 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1, !dbg !25 @@ -97,12 +97,12 @@ 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 i32* %B, i64 %indvars.iv, !dbg !35 + %arrayidx = getelementptr inbounds i32, i32* %B, i64 %indvars.iv, !dbg !35 %0 = load i32* %arrayidx, align 4, !dbg !35, !tbaa !18 %idxprom1 = sext i32 %0 to i64, !dbg !35 - %arrayidx2 = getelementptr inbounds i32* %A, i64 %idxprom1, !dbg !35 + %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %idxprom1, !dbg !35 %1 = load i32* %arrayidx2, align 4, !dbg !35, !tbaa !18 - %arrayidx4 = getelementptr inbounds i32* %A, i64 %indvars.iv, !dbg !35 + %arrayidx4 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv, !dbg !35 store i32 %1, i32* %arrayidx4, align 4, !dbg !35, !tbaa !18 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1, !dbg !32 %lftr.wideiv = trunc i64 %indvars.iv.next to i32, !dbg !32 diff --git a/llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks.ll b/llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks.ll index 16fe370464b..cf64283b248 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks.ll @@ -26,10 +26,10 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %add8 = phi i32 [ 0, %entry ], [ %add, %for.body ], !dbg !19 - %arrayidx = getelementptr inbounds [16 x i8]* %cb, i64 0, i64 %indvars.iv, !dbg !19 + %arrayidx = getelementptr inbounds [16 x i8], [16 x i8]* %cb, i64 0, i64 %indvars.iv, !dbg !19 %0 = load i8* %arrayidx, align 1, !dbg !19, !tbaa !21 %conv = sext i8 %0 to i32, !dbg !19 - %arrayidx2 = getelementptr inbounds [16 x i8]* %cc, i64 0, i64 %indvars.iv, !dbg !19 + %arrayidx2 = getelementptr inbounds [16 x i8], [16 x i8]* %cc, i64 0, i64 %indvars.iv, !dbg !19 %1 = load i8* %arrayidx2, align 1, !dbg !19, !tbaa !21 %conv3 = sext i8 %1 to i32, !dbg !19 %sub = sub i32 %conv, %conv3, !dbg !19 diff --git a/llvm/test/Transforms/LoopVectorize/X86/x86_fp80-vector-store.ll b/llvm/test/Transforms/LoopVectorize/X86/x86_fp80-vector-store.ll index d8e5403d2d4..0debb338486 100644 --- a/llvm/test/Transforms/LoopVectorize/X86/x86_fp80-vector-store.ll +++ b/llvm/test/Transforms/LoopVectorize/X86/x86_fp80-vector-store.ll @@ -17,7 +17,7 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %conv = sitofp i32 1 to x86_fp80 - %arrayidx = getelementptr inbounds [1024 x x86_fp80]* @x, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x x86_fp80], [1024 x x86_fp80]* @x, i64 0, i64 %indvars.iv store x86_fp80 %conv, x86_fp80* %arrayidx, align 16 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/XCore/no-vector-registers.ll b/llvm/test/Transforms/LoopVectorize/XCore/no-vector-registers.ll index cab333d0640..afb3322dd67 100644 --- a/llvm/test/Transforms/LoopVectorize/XCore/no-vector-registers.ll +++ b/llvm/test/Transforms/LoopVectorize/XCore/no-vector-registers.ll @@ -13,7 +13,7 @@ entry: do.body: %ptr.addr.0 = phi i8* [ %ptr, %entry ], [ %incdec.ptr, %do.body ] %len.addr.0 = phi i32 [ %len, %entry ], [ %dec, %do.body ] - %incdec.ptr = getelementptr inbounds i8* %ptr.addr.0, i32 1 + %incdec.ptr = getelementptr inbounds i8, i8* %ptr.addr.0, i32 1 store i8 0, i8* %ptr.addr.0, align 1 %dec = add nsw i32 %len.addr.0, -1 %tobool = icmp eq i32 %len.addr.0, 0 diff --git a/llvm/test/Transforms/LoopVectorize/align.ll b/llvm/test/Transforms/LoopVectorize/align.ll index f2fb8b91b46..f12dbde416d 100644 --- a/llvm/test/Transforms/LoopVectorize/align.ll +++ b/llvm/test/Transforms/LoopVectorize/align.ll @@ -15,12 +15,12 @@ define void @align(i32* %a, i32* %b, i32* %c) nounwind uwtable ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds i32* %b, i64 %indvars.iv + %2 = getelementptr inbounds i32, i32* %b, i64 %indvars.iv %3 = load i32* %2 - %4 = getelementptr inbounds i32* %c, i64 %indvars.iv + %4 = getelementptr inbounds i32, i32* %c, i64 %indvars.iv %5 = load i32* %4 %6 = add nsw i32 %5, %3 - %7 = getelementptr inbounds i32* %a, i64 %indvars.iv + %7 = getelementptr inbounds i32, i32* %a, i64 %indvars.iv store i32 %6, i32* %7 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/bsd_regex.ll b/llvm/test/Transforms/LoopVectorize/bsd_regex.ll index 7a3e79893da..ddb00ba31e1 100644 --- a/llvm/test/Transforms/LoopVectorize/bsd_regex.ll +++ b/llvm/test/Transforms/LoopVectorize/bsd_regex.ll @@ -24,7 +24,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %0 = shl nsw i64 %indvars.iv, 2 - %arrayidx = getelementptr inbounds i32* %A, i64 %0 + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %0 store i32 4, i32* %arrayidx, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/bzip_reverse_loops.ll b/llvm/test/Transforms/LoopVectorize/bzip_reverse_loops.ll index d7cbad06ddf..707b5b9fd32 100644 --- a/llvm/test/Transforms/LoopVectorize/bzip_reverse_loops.ll +++ b/llvm/test/Transforms/LoopVectorize/bzip_reverse_loops.ll @@ -16,7 +16,7 @@ entry: do.body: ; preds = %cond.end, %entry %n.addr.0 = phi i32 [ %n, %entry ], [ %dec, %cond.end ] %p.addr.0 = phi i16* [ %p, %entry ], [ %incdec.ptr, %cond.end ] - %incdec.ptr = getelementptr inbounds i16* %p.addr.0, i64 -1 + %incdec.ptr = getelementptr inbounds i16, i16* %p.addr.0, i64 -1 %0 = load i16* %incdec.ptr, align 2 %conv = zext i16 %0 to i32 %cmp = icmp ult i32 %conv, %size @@ -51,7 +51,7 @@ entry: do.body: ; preds = %do.body, %entry %n.addr.0 = phi i32 [ %n, %entry ], [ %dec, %do.body ] %p.0 = phi i32* [ %a, %entry ], [ %incdec.ptr, %do.body ] - %incdec.ptr = getelementptr inbounds i32* %p.0, i64 -1 + %incdec.ptr = getelementptr inbounds i32, i32* %p.0, i64 -1 %0 = load i32* %incdec.ptr, align 4 %cmp = icmp slt i32 %0, %wsize %sub = sub nsw i32 %0, %wsize diff --git a/llvm/test/Transforms/LoopVectorize/calloc.ll b/llvm/test/Transforms/LoopVectorize/calloc.ll index 5f441f3e238..3ac3b7b6106 100644 --- a/llvm/test/Transforms/LoopVectorize/calloc.ll +++ b/llvm/test/Transforms/LoopVectorize/calloc.ll @@ -22,7 +22,7 @@ for.body.lr.ph: ; preds = %entry for.body: ; preds = %for.body, %for.body.lr.ph %i.030 = phi i64 [ 0, %for.body.lr.ph ], [ %inc, %for.body ] %shr = lshr i64 %i.030, 1 - %arrayidx = getelementptr inbounds i8* %bytes, i64 %shr + %arrayidx = getelementptr inbounds i8, i8* %bytes, i64 %shr %1 = load i8* %arrayidx, align 1 %conv = zext i8 %1 to i32 %and = shl i64 %i.030, 2 @@ -37,7 +37,7 @@ for.body: ; preds = %for.body, %for.body %cond = select i1 %cmp15, i32 87, i32 48 %add17 = add nsw i32 %cond, %shr11 %conv18 = trunc i32 %add17 to i8 - %arrayidx19 = getelementptr inbounds i8* %call, i64 %i.030 + %arrayidx19 = getelementptr inbounds i8, i8* %call, i64 %i.030 store i8 %conv18, i8* %arrayidx19, align 1 %inc = add i64 %i.030, 1 %exitcond = icmp eq i64 %inc, %0 diff --git a/llvm/test/Transforms/LoopVectorize/cast-induction.ll b/llvm/test/Transforms/LoopVectorize/cast-induction.ll index 4f92d33ff52..fae89976a7b 100644 --- a/llvm/test/Transforms/LoopVectorize/cast-induction.ll +++ b/llvm/test/Transforms/LoopVectorize/cast-induction.ll @@ -16,7 +16,7 @@ define void @example12() nounwind uwtable ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv %3 = trunc i64 %indvars.iv to i32 store i32 %3, i32* %2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/conditional-assignment.ll b/llvm/test/Transforms/LoopVectorize/conditional-assignment.ll index 38e9c4f9a61..7c523201b61 100644 --- a/llvm/test/Transforms/LoopVectorize/conditional-assignment.ll +++ b/llvm/test/Transforms/LoopVectorize/conditional-assignment.ll @@ -12,7 +12,7 @@ entry: for.body: ; preds = %for.inc, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.inc ] - %arrayidx = getelementptr inbounds i32* %indices, i64 %indvars.iv, !dbg !12 + %arrayidx = getelementptr inbounds i32, i32* %indices, i64 %indvars.iv, !dbg !12 %0 = load i32* %arrayidx, align 4, !dbg !12, !tbaa !14 %cmp1 = icmp eq i32 %0, 1024, !dbg !12 br i1 %cmp1, label %if.then, label %for.inc, !dbg !12 diff --git a/llvm/test/Transforms/LoopVectorize/control-flow.ll b/llvm/test/Transforms/LoopVectorize/control-flow.ll index 1882c3ff9a8..ee73110cf6d 100644 --- a/llvm/test/Transforms/LoopVectorize/control-flow.ll +++ b/llvm/test/Transforms/LoopVectorize/control-flow.ll @@ -30,7 +30,7 @@ for.body.preheader: ; preds = %entry for.body: ; preds = %for.body.preheader, %if.else %indvars.iv = phi i64 [ %indvars.iv.next, %if.else ], [ 0, %for.body.preheader ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv, !dbg !12 + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv, !dbg !12 %0 = load i32* %arrayidx, align 4, !dbg !12, !tbaa !15 %cmp1 = icmp sgt i32 %0, 10, !dbg !12 br i1 %cmp1, label %end.loopexit, label %if.else, !dbg !12 diff --git a/llvm/test/Transforms/LoopVectorize/cpp-new-array.ll b/llvm/test/Transforms/LoopVectorize/cpp-new-array.ll index f32f610b1cd..cc41e5c47d8 100644 --- a/llvm/test/Transforms/LoopVectorize/cpp-new-array.ll +++ b/llvm/test/Transforms/LoopVectorize/cpp-new-array.ll @@ -24,14 +24,14 @@ entry: for.body: ; preds = %entry, %for.body %i.01 = phi i32 [ 0, %entry ], [ %inc, %for.body ] %idxprom = sext i32 %i.01 to i64 - %arrayidx = getelementptr inbounds float* %0, i64 %idxprom + %arrayidx = getelementptr inbounds float, float* %0, i64 %idxprom %3 = load float* %arrayidx, align 4 %idxprom5 = sext i32 %i.01 to i64 - %arrayidx6 = getelementptr inbounds float* %1, i64 %idxprom5 + %arrayidx6 = getelementptr inbounds float, float* %1, i64 %idxprom5 %4 = load float* %arrayidx6, align 4 %add = fadd float %3, %4 %idxprom7 = sext i32 %i.01 to i64 - %arrayidx8 = getelementptr inbounds float* %2, i64 %idxprom7 + %arrayidx8 = getelementptr inbounds float, float* %2, i64 %idxprom7 store float %add, float* %arrayidx8, align 4 %inc = add nsw i32 %i.01, 1 %cmp = icmp slt i32 %inc, 1000 diff --git a/llvm/test/Transforms/LoopVectorize/dbg.value.ll b/llvm/test/Transforms/LoopVectorize/dbg.value.ll index 92d31548126..f3e75d84393 100644 --- a/llvm/test/Transforms/LoopVectorize/dbg.value.ll +++ b/llvm/test/Transforms/LoopVectorize/dbg.value.ll @@ -17,12 +17,12 @@ entry: for.body: ;CHECK: load <4 x i32> %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @B, i64 0, i64 %indvars.iv, !dbg !19 + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @B, i64 0, i64 %indvars.iv, !dbg !19 %0 = load i32* %arrayidx, align 4, !dbg !19 - %arrayidx2 = getelementptr inbounds [1024 x i32]* @C, i64 0, i64 %indvars.iv, !dbg !19 + %arrayidx2 = getelementptr inbounds [1024 x i32], [1024 x i32]* @C, i64 0, i64 %indvars.iv, !dbg !19 %1 = load i32* %arrayidx2, align 4, !dbg !19 %add = add nsw i32 %1, %0, !dbg !19 - %arrayidx4 = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv, !dbg !19 + %arrayidx4 = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv, !dbg !19 store i32 %add, i32* %arrayidx4, align 4, !dbg !19 %indvars.iv.next = add i64 %indvars.iv, 1, !dbg !18 tail call void @llvm.dbg.value(metadata !{null}, i64 0, metadata !9, metadata !{}), !dbg !18 diff --git a/llvm/test/Transforms/LoopVectorize/debugloc.ll b/llvm/test/Transforms/LoopVectorize/debugloc.ll index 634bf79ddf0..a30ca62752b 100644 --- a/llvm/test/Transforms/LoopVectorize/debugloc.ll +++ b/llvm/test/Transforms/LoopVectorize/debugloc.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-f3 ; CHECK: cmp.zero = icmp eq i64 {{.*}}, 0, !dbg ![[LOC:[0-9]+]] ; CHECK: vector.body ; CHECK: index {{.*}}, !dbg ![[LOC]] -; CHECK: getelementptr inbounds i32* %a, {{.*}}, !dbg ![[LOC2:[0-9]+]] +; CHECK: getelementptr inbounds i32, i32* %a, {{.*}}, !dbg ![[LOC2:[0-9]+]] ; CHECK: load <2 x i32>* {{.*}}, !dbg ![[LOC2]] ; CHECK: add <2 x i32> {{.*}}, !dbg ![[LOC2]] ; CHECK: add i64 %index, 2, !dbg ![[LOC]] @@ -32,7 +32,7 @@ for.body.lr.ph: ; preds = %entry for.body: ; preds = %for.body.lr.ph, %for.body %indvars.iv = phi i64 [ 0, %for.body.lr.ph ], [ %indvars.iv.next, %for.body ] %sum.05 = phi i32 [ 0, %for.body.lr.ph ], [ %add, %for.body ] - %arrayidx = getelementptr inbounds i32* %a, i64 %indvars.iv, !dbg !22 + %arrayidx = getelementptr inbounds i32, i32* %a, i64 %indvars.iv, !dbg !22 %0 = load i32* %arrayidx, align 4, !dbg !22 %add = add i32 %0, %sum.05, !dbg !22 tail call void @llvm.dbg.value(metadata i32 %add.lcssa, i64 0, metadata !15, metadata !{}), !dbg !22 diff --git a/llvm/test/Transforms/LoopVectorize/duplicated-metadata.ll b/llvm/test/Transforms/LoopVectorize/duplicated-metadata.ll index bf2f899dff0..e82d2804207 100644 --- a/llvm/test/Transforms/LoopVectorize/duplicated-metadata.ll +++ b/llvm/test/Transforms/LoopVectorize/duplicated-metadata.ll @@ -12,7 +12,7 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds float* %a, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %a, i64 %indvars.iv %p = load float* %arrayidx, align 4 %mul = fmul float %p, 2.000000e+00 store float %mul, float* %arrayidx, align 4 diff --git a/llvm/test/Transforms/LoopVectorize/ee-crash.ll b/llvm/test/Transforms/LoopVectorize/ee-crash.ll index a3c0bb89b12..7ed1c669b74 100644 --- a/llvm/test/Transforms/LoopVectorize/ee-crash.ll +++ b/llvm/test/Transforms/LoopVectorize/ee-crash.ll @@ -11,7 +11,7 @@ target triple = "x86_64-apple-macosx10.8.0" define i32 @_Z4foo1Pii(i32* %A, i32 %n, <2 x i32> %q) #0 { entry: %idx.ext = sext i32 %n to i64 - %add.ptr = getelementptr inbounds i32* %A, i64 %idx.ext + %add.ptr = getelementptr inbounds i32, i32* %A, i64 %idx.ext %cmp3.i = icmp eq i32 %n, 0 br i1 %cmp3.i, label %_ZSt10accumulateIPiiET0_T_S2_S1_.exit, label %for.body.i @@ -22,7 +22,7 @@ for.body.i: ; preds = %entry, %for.body.i %q1 = extractelement <2 x i32> %q, i32 %n %q2 = add nsw i32 %0, %q1 %add.i = add nsw i32 %q2, %__init.addr.05.i - %incdec.ptr.i = getelementptr inbounds i32* %__first.addr.04.i, i64 1 + %incdec.ptr.i = getelementptr inbounds i32, i32* %__first.addr.04.i, i64 1 %cmp.i = icmp eq i32* %incdec.ptr.i, %add.ptr br i1 %cmp.i, label %_ZSt10accumulateIPiiET0_T_S2_S1_.exit, label %for.body.i diff --git a/llvm/test/Transforms/LoopVectorize/exact.ll b/llvm/test/Transforms/LoopVectorize/exact.ll index 0a8fbf33734..90bad3a99c2 100644 --- a/llvm/test/Transforms/LoopVectorize/exact.ll +++ b/llvm/test/Transforms/LoopVectorize/exact.ll @@ -11,7 +11,7 @@ entry: for.body: %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32* %x, i64 %iv + %arrayidx = getelementptr inbounds i32, i32* %x, i64 %iv %0 = load i32* %arrayidx, align 4 %conv1 = lshr exact i32 %0, 1 store i32 %conv1, i32* %arrayidx, align 4 diff --git a/llvm/test/Transforms/LoopVectorize/flags.ll b/llvm/test/Transforms/LoopVectorize/flags.ll index 0fc55c89731..a4e392f01a4 100644 --- a/llvm/test/Transforms/LoopVectorize/flags.ll +++ b/llvm/test/Transforms/LoopVectorize/flags.ll @@ -14,7 +14,7 @@ define i32 @flags1(i32 %n, i32* nocapture %A) nounwind uwtable ssp { .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 9, %0 ] - %2 = getelementptr inbounds i32* %A, i64 %indvars.iv + %2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %3 = load i32* %2, align 4 %4 = mul nsw i32 %3, 3 store i32 %4, i32* %2, align 4 @@ -39,7 +39,7 @@ define i32 @flags2(i32 %n, i32* nocapture %A) nounwind uwtable ssp { .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 9, %0 ] - %2 = getelementptr inbounds i32* %A, i64 %indvars.iv + %2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %3 = load i32* %2, align 4 %4 = mul i32 %3, 3 store i32 %4, i32* %2, align 4 @@ -66,7 +66,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %q.04 = phi float [ 0.000000e+00, %entry ], [ %add, %for.body ] - %arrayidx = getelementptr inbounds float* %s, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %s, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %add = fadd fast float %q.04, %0 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/float-reduction.ll b/llvm/test/Transforms/LoopVectorize/float-reduction.ll index 0f064ee2dc8..1401bd9d7c7 100644 --- a/llvm/test/Transforms/LoopVectorize/float-reduction.ll +++ b/llvm/test/Transforms/LoopVectorize/float-reduction.ll @@ -12,7 +12,7 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %sum.04 = phi float [ 0.000000e+00, %entry ], [ %add, %for.body ] - %arrayidx = getelementptr inbounds float* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %A, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %add = fadd fast float %sum.04, %0 %indvars.iv.next = add i64 %indvars.iv, 1 @@ -34,7 +34,7 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %sum.04 = phi float [ 0.000000e+00, %entry ], [ %sub, %for.body ] - %arrayidx = getelementptr inbounds float* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %A, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %sub = fsub fast float %sum.04, %0 %indvars.iv.next = add i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/funcall.ll b/llvm/test/Transforms/LoopVectorize/funcall.ll index e03534fbac3..81158eeb483 100644 --- a/llvm/test/Transforms/LoopVectorize/funcall.ll +++ b/llvm/test/Transforms/LoopVectorize/funcall.ll @@ -16,7 +16,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds double* %d, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %d, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %1 = tail call double @llvm.pow.f64(double %0, double %t) store double %1, double* %arrayidx, align 8 diff --git a/llvm/test/Transforms/LoopVectorize/gcc-examples.ll b/llvm/test/Transforms/LoopVectorize/gcc-examples.ll index 6a2c2c6dd63..9bc5cb78e03 100644 --- a/llvm/test/Transforms/LoopVectorize/gcc-examples.ll +++ b/llvm/test/Transforms/LoopVectorize/gcc-examples.ll @@ -44,12 +44,12 @@ define void @example1() nounwind uwtable ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %indvars.iv + %4 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = add nsw i32 %5, %3 - %7 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %7 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv store i32 %6, i32* %7, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -84,7 +84,7 @@ define void @example2(i32 %n, i32 %x) nounwind uwtable ssp { .lr.ph5: ; preds = %0, %.lr.ph5 %indvars.iv6 = phi i64 [ %indvars.iv.next7, %.lr.ph5 ], [ 0, %0 ] - %3 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv6 + %3 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv6 store i32 %x, i32* %3, align 4 %indvars.iv.next7 = add i64 %indvars.iv6, 1 %lftr.wideiv = trunc i64 %indvars.iv.next7 to i32 @@ -95,12 +95,12 @@ define void @example2(i32 %n, i32 %x) nounwind uwtable ssp { %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ %i.0.lcssa, %.preheader ] %.02 = phi i32 [ %4, %.lr.ph ], [ %n, %.preheader ] %4 = add nsw i32 %.02, -1 - %5 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv + %5 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv %6 = load i32* %5, align 4 - %7 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %indvars.iv + %7 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %indvars.iv %8 = load i32* %7, align 4 %9 = and i32 %8, %6 - %10 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %10 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv store i32 %9, i32* %10, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %11 = icmp eq i32 %4, 0 @@ -128,9 +128,9 @@ define void @example3(i32 %n, i32* noalias nocapture %p, i32* noalias nocapture %.014 = phi i32* [ %5, %.lr.ph ], [ %p, %0 ] %.023 = phi i32* [ %3, %.lr.ph ], [ %q, %0 ] %2 = add nsw i32 %.05, -1 - %3 = getelementptr inbounds i32* %.023, i64 1 + %3 = getelementptr inbounds i32, i32* %.023, i64 1 %4 = load i32* %.023, align 16 - %5 = getelementptr inbounds i32* %.014, i64 1 + %5 = getelementptr inbounds i32, i32* %.014, i64 1 store i32 %4, i32* %.014, align 16 %6 = icmp eq i32 %2, 0 br i1 %6, label %._crit_edge, label %.lr.ph @@ -161,10 +161,10 @@ define void @example4(i32 %n, i32* noalias nocapture %p, i32* noalias nocapture %4 = phi i32 [ %9, %.lr.ph10 ], [ %1, %0 ] %.018 = phi i32* [ %8, %.lr.ph10 ], [ %p, %0 ] %.027 = phi i32* [ %5, %.lr.ph10 ], [ %q, %0 ] - %5 = getelementptr inbounds i32* %.027, i64 1 + %5 = getelementptr inbounds i32, i32* %.027, i64 1 %6 = load i32* %.027, align 16 %7 = add nsw i32 %6, 5 - %8 = getelementptr inbounds i32* %.018, i64 1 + %8 = getelementptr inbounds i32, i32* %.018, i64 1 store i32 %7, i32* %.018, align 16 %9 = add nsw i32 %4, -1 %10 = icmp eq i32 %4, 0 @@ -176,13 +176,13 @@ define void @example4(i32 %n, i32* noalias nocapture %p, i32* noalias nocapture .lr.ph6: ; preds = %.preheader4, %.lr.ph6 %indvars.iv11 = phi i64 [ %indvars.iv.next12, %.lr.ph6 ], [ 0, %.preheader4 ] %indvars.iv.next12 = add i64 %indvars.iv11, 1 - %11 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv.next12 + %11 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv.next12 %12 = load i32* %11, align 4 %13 = add nsw i64 %indvars.iv11, 3 - %14 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %13 + %14 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %13 %15 = load i32* %14, align 4 %16 = add nsw i32 %15, %12 - %17 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv11 + %17 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv11 store i32 %16, i32* %17, align 4 %lftr.wideiv13 = trunc i64 %indvars.iv.next12 to i32 %exitcond14 = icmp eq i32 %lftr.wideiv13, %1 @@ -190,11 +190,11 @@ define void @example4(i32 %n, i32* noalias nocapture %p, i32* noalias nocapture .lr.ph: ; preds = %.preheader, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %.preheader ] - %18 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %18 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv %19 = load i32* %18, align 4 %20 = icmp sgt i32 %19, 4 %21 = select i1 %20, i32 4, i32 0 - %22 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv + %22 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv store i32 %21, i32* %22, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -223,7 +223,7 @@ define void @example8(i32 %x) nounwind uwtable ssp { ; <label>:1 ; preds = %1, %.preheader %indvars.iv = phi i64 [ 0, %.preheader ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [32 x [1024 x i32]]* @G, i64 0, i64 %indvars.iv3, i64 %indvars.iv + %2 = getelementptr inbounds [32 x [1024 x i32]], [32 x [1024 x i32]]* @G, i64 0, i64 %indvars.iv3, i64 %indvars.iv store i32 %x, i32* %2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -249,9 +249,9 @@ define i32 @example9() nounwind uwtable readonly ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] %diff.01 = phi i32 [ 0, %0 ], [ %7, %1 ] - %2 = getelementptr inbounds [1024 x i32]* @ub, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [1024 x i32], [1024 x i32]* @ub, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds [1024 x i32]* @uc, i64 0, i64 %indvars.iv + %4 = getelementptr inbounds [1024 x i32], [1024 x i32]* @uc, i64 0, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = add i32 %3, %diff.01 %7 = sub i32 %6, %5 @@ -276,19 +276,19 @@ define void @example10a(i16* noalias nocapture %sa, i16* noalias nocapture %sb, ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds i32* %ib, i64 %indvars.iv + %2 = getelementptr inbounds i32, i32* %ib, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds i32* %ic, i64 %indvars.iv + %4 = getelementptr inbounds i32, i32* %ic, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = add nsw i32 %5, %3 - %7 = getelementptr inbounds i32* %ia, i64 %indvars.iv + %7 = getelementptr inbounds i32, i32* %ia, i64 %indvars.iv store i32 %6, i32* %7, align 4 - %8 = getelementptr inbounds i16* %sb, i64 %indvars.iv + %8 = getelementptr inbounds i16, i16* %sb, i64 %indvars.iv %9 = load i16* %8, align 2 - %10 = getelementptr inbounds i16* %sc, i64 %indvars.iv + %10 = getelementptr inbounds i16, i16* %sc, i64 %indvars.iv %11 = load i16* %10, align 2 %12 = add i16 %11, %9 - %13 = getelementptr inbounds i16* %sa, i64 %indvars.iv + %13 = getelementptr inbounds i16, i16* %sa, i64 %indvars.iv store i16 %12, i16* %13, align 2 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -309,10 +309,10 @@ define void @example10b(i16* noalias nocapture %sa, i16* noalias nocapture %sb, ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds i16* %sb, i64 %indvars.iv + %2 = getelementptr inbounds i16, i16* %sb, i64 %indvars.iv %3 = load i16* %2, align 2 %4 = sext i16 %3 to i32 - %5 = getelementptr inbounds i32* %ia, i64 %indvars.iv + %5 = getelementptr inbounds i32, i32* %ia, i64 %indvars.iv store i32 %4, i32* %5, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -340,23 +340,23 @@ define void @example11() nounwind uwtable ssp { %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] %2 = shl nsw i64 %indvars.iv, 1 %3 = or i64 %2, 1 - %4 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %3 + %4 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %3 %5 = load i32* %4, align 4 - %6 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %3 + %6 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %3 %7 = load i32* %6, align 4 %8 = mul nsw i32 %7, %5 - %9 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %2 + %9 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %2 %10 = load i32* %9, align 8 - %11 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %2 + %11 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %2 %12 = load i32* %11, align 8 %13 = mul nsw i32 %12, %10 %14 = sub nsw i32 %8, %13 - %15 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %15 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv store i32 %14, i32* %15, align 4 %16 = mul nsw i32 %7, %10 %17 = mul nsw i32 %12, %5 %18 = add nsw i32 %17, %16 - %19 = getelementptr inbounds [2048 x i32]* @d, i64 0, i64 %indvars.iv + %19 = getelementptr inbounds [2048 x i32], [2048 x i32]* @d, i64 0, i64 %indvars.iv store i32 %18, i32* %19, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -376,7 +376,7 @@ define void @example12() nounwind uwtable ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv %3 = trunc i64 %indvars.iv to i32 store i32 %3, i32* %2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 @@ -396,18 +396,18 @@ define void @example13(i32** nocapture %A, i32** nocapture %B, i32* nocapture %o .preheader: ; preds = %14, %0 %indvars.iv4 = phi i64 [ 0, %0 ], [ %indvars.iv.next5, %14 ] - %1 = getelementptr inbounds i32** %A, i64 %indvars.iv4 + %1 = getelementptr inbounds i32*, i32** %A, i64 %indvars.iv4 %2 = load i32** %1, align 8 - %3 = getelementptr inbounds i32** %B, i64 %indvars.iv4 + %3 = getelementptr inbounds i32*, i32** %B, i64 %indvars.iv4 %4 = load i32** %3, align 8 br label %5 ; <label>:5 ; preds = %.preheader, %5 %indvars.iv = phi i64 [ 0, %.preheader ], [ %indvars.iv.next, %5 ] %diff.02 = phi i32 [ 0, %.preheader ], [ %11, %5 ] - %6 = getelementptr inbounds i32* %2, i64 %indvars.iv + %6 = getelementptr inbounds i32, i32* %2, i64 %indvars.iv %7 = load i32* %6, align 4 - %8 = getelementptr inbounds i32* %4, i64 %indvars.iv + %8 = getelementptr inbounds i32, i32* %4, i64 %indvars.iv %9 = load i32* %8, align 4 %10 = add i32 %7, %diff.02 %11 = sub i32 %10, %9 @@ -417,7 +417,7 @@ define void @example13(i32** nocapture %A, i32** nocapture %B, i32* nocapture %o br i1 %13, label %5, label %14 ; <label>:14 ; preds = %5 - %15 = getelementptr inbounds i32* %out, i64 %indvars.iv4 + %15 = getelementptr inbounds i32, i32* %out, i64 %indvars.iv4 store i32 %11, i32* %15, align 4 %indvars.iv.next5 = add i64 %indvars.iv4, 1 %lftr.wideiv = trunc i64 %indvars.iv.next5 to i32 @@ -444,13 +444,13 @@ define void @example14(i32** nocapture %in, i32** nocapture %coeff, i32* nocaptu ; <label>:0 ; preds = %0, %.preheader %indvars.iv = phi i64 [ 0, %.preheader ], [ %indvars.iv.next, %0 ] %sum.12 = phi i32 [ %sum.05, %.preheader ], [ %10, %0 ] - %1 = getelementptr inbounds i32** %in, i64 %indvars.iv + %1 = getelementptr inbounds i32*, i32** %in, i64 %indvars.iv %2 = load i32** %1, align 8 - %3 = getelementptr inbounds i32* %2, i64 %indvars.iv7 + %3 = getelementptr inbounds i32, i32* %2, i64 %indvars.iv7 %4 = load i32* %3, align 4 - %5 = getelementptr inbounds i32** %coeff, i64 %indvars.iv + %5 = getelementptr inbounds i32*, i32** %coeff, i64 %indvars.iv %6 = load i32** %5, align 8 - %7 = getelementptr inbounds i32* %6, i64 %indvars.iv7 + %7 = getelementptr inbounds i32, i32* %6, i64 %indvars.iv7 %8 = load i32* %7, align 4 %9 = mul nsw i32 %8, %4 %10 = add nsw i32 %9, %sum.12 @@ -478,13 +478,13 @@ define void @example14(i32** nocapture %in, i32** nocapture %coeff, i32* nocaptu %indvars.iv.1 = phi i64 [ 0, %.preheader.1 ], [ %13, %12 ] %sum.12.1 = phi i32 [ %sum.05.1, %.preheader.1 ], [ %23, %12 ] %13 = add nsw i64 %indvars.iv.1, 1 - %14 = getelementptr inbounds i32** %in, i64 %13 + %14 = getelementptr inbounds i32*, i32** %in, i64 %13 %15 = load i32** %14, align 8 - %16 = getelementptr inbounds i32* %15, i64 %indvars.iv7.1 + %16 = getelementptr inbounds i32, i32* %15, i64 %indvars.iv7.1 %17 = load i32* %16, align 4 - %18 = getelementptr inbounds i32** %coeff, i64 %indvars.iv.1 + %18 = getelementptr inbounds i32*, i32** %coeff, i64 %indvars.iv.1 %19 = load i32** %18, align 8 - %20 = getelementptr inbounds i32* %19, i64 %indvars.iv7.1 + %20 = getelementptr inbounds i32, i32* %19, i64 %indvars.iv7.1 %21 = load i32* %20, align 4 %22 = mul nsw i32 %21, %17 %23 = add nsw i32 %22, %sum.12.1 @@ -499,7 +499,7 @@ define void @example14(i32** nocapture %in, i32** nocapture %coeff, i32* nocaptu br i1 %exitcond10.1, label %.preheader3.2, label %.preheader.1 .preheader3.2: ; preds = %24 - %25 = getelementptr inbounds i32* %out, i64 1 + %25 = getelementptr inbounds i32, i32* %out, i64 1 store i32 %23, i32* %25, align 4 br label %.preheader.2 @@ -512,13 +512,13 @@ define void @example14(i32** nocapture %in, i32** nocapture %coeff, i32* nocaptu %indvars.iv.2 = phi i64 [ 0, %.preheader.2 ], [ %indvars.iv.next.2, %26 ] %sum.12.2 = phi i32 [ %sum.05.2, %.preheader.2 ], [ %37, %26 ] %27 = add nsw i64 %indvars.iv.2, 2 - %28 = getelementptr inbounds i32** %in, i64 %27 + %28 = getelementptr inbounds i32*, i32** %in, i64 %27 %29 = load i32** %28, align 8 - %30 = getelementptr inbounds i32* %29, i64 %indvars.iv7.2 + %30 = getelementptr inbounds i32, i32* %29, i64 %indvars.iv7.2 %31 = load i32* %30, align 4 - %32 = getelementptr inbounds i32** %coeff, i64 %indvars.iv.2 + %32 = getelementptr inbounds i32*, i32** %coeff, i64 %indvars.iv.2 %33 = load i32** %32, align 8 - %34 = getelementptr inbounds i32* %33, i64 %indvars.iv7.2 + %34 = getelementptr inbounds i32, i32* %33, i64 %indvars.iv7.2 %35 = load i32* %34, align 4 %36 = mul nsw i32 %35, %31 %37 = add nsw i32 %36, %sum.12.2 @@ -534,7 +534,7 @@ define void @example14(i32** nocapture %in, i32** nocapture %coeff, i32* nocaptu br i1 %exitcond10.2, label %.preheader3.3, label %.preheader.2 .preheader3.3: ; preds = %38 - %39 = getelementptr inbounds i32* %out, i64 2 + %39 = getelementptr inbounds i32, i32* %out, i64 2 store i32 %37, i32* %39, align 4 br label %.preheader.3 @@ -547,13 +547,13 @@ define void @example14(i32** nocapture %in, i32** nocapture %coeff, i32* nocaptu %indvars.iv.3 = phi i64 [ 0, %.preheader.3 ], [ %indvars.iv.next.3, %40 ] %sum.12.3 = phi i32 [ %sum.05.3, %.preheader.3 ], [ %51, %40 ] %41 = add nsw i64 %indvars.iv.3, 3 - %42 = getelementptr inbounds i32** %in, i64 %41 + %42 = getelementptr inbounds i32*, i32** %in, i64 %41 %43 = load i32** %42, align 8 - %44 = getelementptr inbounds i32* %43, i64 %indvars.iv7.3 + %44 = getelementptr inbounds i32, i32* %43, i64 %indvars.iv7.3 %45 = load i32* %44, align 4 - %46 = getelementptr inbounds i32** %coeff, i64 %indvars.iv.3 + %46 = getelementptr inbounds i32*, i32** %coeff, i64 %indvars.iv.3 %47 = load i32** %46, align 8 - %48 = getelementptr inbounds i32* %47, i64 %indvars.iv7.3 + %48 = getelementptr inbounds i32, i32* %47, i64 %indvars.iv7.3 %49 = load i32* %48, align 4 %50 = mul nsw i32 %49, %45 %51 = add nsw i32 %50, %sum.12.3 @@ -569,7 +569,7 @@ define void @example14(i32** nocapture %in, i32** nocapture %coeff, i32* nocaptu br i1 %exitcond10.3, label %53, label %.preheader.3 ; <label>:53 ; preds = %52 - %54 = getelementptr inbounds i32* %out, i64 3 + %54 = getelementptr inbounds i32, i32* %out, i64 3 store i32 %51, i32* %54, align 4 ret void } @@ -590,7 +590,7 @@ define i32 @example21(i32* nocapture %b, i32 %n) nounwind uwtable readonly ssp { %indvars.iv = phi i64 [ %2, %.lr.ph ], [ %indvars.iv.next, %3 ] %a.02 = phi i32 [ 0, %.lr.ph ], [ %6, %3 ] %indvars.iv.next = add i64 %indvars.iv, -1 - %4 = getelementptr inbounds i32* %b, i64 %indvars.iv.next + %4 = getelementptr inbounds i32, i32* %b, i64 %indvars.iv.next %5 = load i32* %4, align 4 %6 = add nsw i32 %5, %a.02 %7 = trunc i64 %indvars.iv.next to i32 @@ -612,11 +612,11 @@ define void @example23(i16* nocapture %src, i32* nocapture %dst) nounwind uwtabl %.04 = phi i16* [ %src, %0 ], [ %2, %1 ] %.013 = phi i32* [ %dst, %0 ], [ %6, %1 ] %i.02 = phi i32 [ 0, %0 ], [ %7, %1 ] - %2 = getelementptr inbounds i16* %.04, i64 1 + %2 = getelementptr inbounds i16, i16* %.04, i64 1 %3 = load i16* %.04, align 2 %4 = zext i16 %3 to i32 %5 = shl nuw nsw i32 %4, 7 - %6 = getelementptr inbounds i32* %.013, i64 1 + %6 = getelementptr inbounds i32, i32* %.013, i64 1 store i32 %5, i32* %.013, align 4 %7 = add nsw i32 %i.02, 1 %exitcond = icmp eq i32 %7, 256 @@ -634,14 +634,14 @@ define void @example24(i16 signext %x, i16 signext %y) nounwind uwtable ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [1024 x float]* @fa, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [1024 x float], [1024 x float]* @fa, i64 0, i64 %indvars.iv %3 = load float* %2, align 4 - %4 = getelementptr inbounds [1024 x float]* @fb, i64 0, i64 %indvars.iv + %4 = getelementptr inbounds [1024 x float], [1024 x float]* @fb, i64 0, i64 %indvars.iv %5 = load float* %4, align 4 %6 = fcmp olt float %3, %5 %x.y = select i1 %6, i16 %x, i16 %y %7 = sext i16 %x.y to i32 - %8 = getelementptr inbounds [1024 x i32]* @ic, i64 0, i64 %indvars.iv + %8 = getelementptr inbounds [1024 x i32], [1024 x i32]* @ic, i64 0, i64 %indvars.iv store i32 %7, i32* %8, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -661,19 +661,19 @@ define void @example25() nounwind uwtable ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [1024 x float]* @da, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [1024 x float], [1024 x float]* @da, i64 0, i64 %indvars.iv %3 = load float* %2, align 4 - %4 = getelementptr inbounds [1024 x float]* @db, i64 0, i64 %indvars.iv + %4 = getelementptr inbounds [1024 x float], [1024 x float]* @db, i64 0, i64 %indvars.iv %5 = load float* %4, align 4 %6 = fcmp olt float %3, %5 - %7 = getelementptr inbounds [1024 x float]* @dc, i64 0, i64 %indvars.iv + %7 = getelementptr inbounds [1024 x float], [1024 x float]* @dc, i64 0, i64 %indvars.iv %8 = load float* %7, align 4 - %9 = getelementptr inbounds [1024 x float]* @dd, i64 0, i64 %indvars.iv + %9 = getelementptr inbounds [1024 x float], [1024 x float]* @dd, i64 0, i64 %indvars.iv %10 = load float* %9, align 4 %11 = fcmp olt float %8, %10 %12 = and i1 %6, %11 %13 = zext i1 %12 to i32 - %14 = getelementptr inbounds [1024 x i32]* @dj, i64 0, i64 %indvars.iv + %14 = getelementptr inbounds [1024 x i32], [1024 x i32]* @dj, i64 0, i64 %indvars.iv store i32 %13, i32* %14, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/global_alias.ll b/llvm/test/Transforms/LoopVectorize/global_alias.ll index 3f11ce8bf21..ef232669f8f 100644 --- a/llvm/test/Transforms/LoopVectorize/global_alias.ll +++ b/llvm/test/Transforms/LoopVectorize/global_alias.ll @@ -41,12 +41,12 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %1 = load i32* %i, align 4 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %1 + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %1 %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add = add nsw i32 %2, %3 %4 = load i32* %i, align 4 - %arrayidx1 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %4 + %arrayidx1 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %4 store i32 %add, i32* %arrayidx1, align 4 br label %for.inc @@ -58,7 +58,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx2 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx2 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx2, align 4 ret i32 %7 } @@ -90,12 +90,12 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %add = add nsw i32 %1, 10 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %add + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %add %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add1 = add nsw i32 %2, %3 %4 = load i32* %i, align 4 - %arrayidx2 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %4 + %arrayidx2 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %4 store i32 %add1, i32* %arrayidx2, align 4 br label %for.inc @@ -107,7 +107,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx3 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx3 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx3, align 4 ret i32 %7 } @@ -138,13 +138,13 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %1 = load i32* %i, align 4 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %1 + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %1 %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add = add nsw i32 %2, %3 %4 = load i32* %i, align 4 %add1 = add nsw i32 %4, 10 - %arrayidx2 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %add1 + %arrayidx2 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %add1 store i32 %add, i32* %arrayidx2, align 4 br label %for.inc @@ -156,7 +156,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx3 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx3 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx3, align 4 ret i32 %7 } @@ -191,13 +191,13 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %1 = load i32** @PB, align 4 %2 = load i32* %i, align 4 - %add.ptr = getelementptr inbounds i32* %1, i32 %2 + %add.ptr = getelementptr inbounds i32, i32* %1, i32 %2 %3 = load i32* %add.ptr, align 4 %4 = load i32* %a.addr, align 4 %add = add nsw i32 %3, %4 %5 = load i32** @PA, align 4 %6 = load i32* %i, align 4 - %add.ptr1 = getelementptr inbounds i32* %5, i32 %6 + %add.ptr1 = getelementptr inbounds i32, i32* %5, i32 %6 store i32 %add, i32* %add.ptr1, align 4 br label %for.inc @@ -210,7 +210,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %8 = load i32** @PA, align 4 %9 = load i32* %a.addr, align 4 - %add.ptr2 = getelementptr inbounds i32* %8, i32 %9 + %add.ptr2 = getelementptr inbounds i32, i32* %8, i32 %9 %10 = load i32* %add.ptr2, align 4 ret i32 %10 } @@ -244,15 +244,15 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %2 = load i32* %N, align 4 - %arrayidx = getelementptr inbounds [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 2), i32 0, i32 %2 - %arrayidx1 = getelementptr inbounds [100 x i32]* %arrayidx, i32 0, i32 %1 + %arrayidx = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 2), i32 0, i32 %2 + %arrayidx1 = getelementptr inbounds [100 x i32], [100 x i32]* %arrayidx, i32 0, i32 %1 %3 = load i32* %arrayidx1, align 4 %4 = load i32* %a.addr, align 4 %add = add nsw i32 %3, %4 %5 = load i32* %i, align 4 %6 = load i32* %N, align 4 - %arrayidx2 = getelementptr inbounds [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %6 - %arrayidx3 = getelementptr inbounds [100 x i32]* %arrayidx2, i32 0, i32 %5 + %arrayidx2 = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %6 + %arrayidx3 = getelementptr inbounds [100 x i32], [100 x i32]* %arrayidx2, i32 0, i32 %5 store i32 %add, i32* %arrayidx3, align 4 br label %for.inc @@ -265,8 +265,8 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %8 = load i32* %a.addr, align 4 %9 = load i32* %N, align 4 - %arrayidx4 = getelementptr inbounds [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %9 - %arrayidx5 = getelementptr inbounds [100 x i32]* %arrayidx4, i32 0, i32 %8 + %arrayidx4 = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %9 + %arrayidx5 = getelementptr inbounds [100 x i32], [100 x i32]* %arrayidx4, i32 0, i32 %8 %10 = load i32* %arrayidx5, align 4 ret i32 %10 } @@ -301,15 +301,15 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %2 = load i32* %N, align 4 %add = add nsw i32 %2, 1 - %arrayidx = getelementptr inbounds [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %add - %arrayidx1 = getelementptr inbounds [100 x i32]* %arrayidx, i32 0, i32 %1 + %arrayidx = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %add + %arrayidx1 = getelementptr inbounds [100 x i32], [100 x i32]* %arrayidx, i32 0, i32 %1 %3 = load i32* %arrayidx1, align 4 %4 = load i32* %a.addr, align 4 %add2 = add nsw i32 %3, %4 %5 = load i32* %i, align 4 %6 = load i32* %N, align 4 - %arrayidx3 = getelementptr inbounds [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %6 - %arrayidx4 = getelementptr inbounds [100 x i32]* %arrayidx3, i32 0, i32 %5 + %arrayidx3 = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %6 + %arrayidx4 = getelementptr inbounds [100 x i32], [100 x i32]* %arrayidx3, i32 0, i32 %5 store i32 %add2, i32* %arrayidx4, align 4 br label %for.inc @@ -322,8 +322,8 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %8 = load i32* %a.addr, align 4 %9 = load i32* %N, align 4 - %arrayidx5 = getelementptr inbounds [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %9 - %arrayidx6 = getelementptr inbounds [100 x i32]* %arrayidx5, i32 0, i32 %8 + %arrayidx5 = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %9 + %arrayidx6 = getelementptr inbounds [100 x i32], [100 x i32]* %arrayidx5, i32 0, i32 %8 %10 = load i32* %arrayidx6, align 4 ret i32 %10 } @@ -355,14 +355,14 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %sub = sub nsw i32 100, %1 %sub1 = sub nsw i32 %sub, 1 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add = add nsw i32 %2, %3 %4 = load i32* %i, align 4 %sub2 = sub nsw i32 100, %4 %sub3 = sub nsw i32 %sub2, 1 - %arrayidx4 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %sub3 + %arrayidx4 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %sub3 store i32 %add, i32* %arrayidx4, align 4 br label %for.inc @@ -374,7 +374,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx5 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx5 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx5, align 4 ret i32 %7 } @@ -407,14 +407,14 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %sub = sub nsw i32 100, %1 %sub1 = sub nsw i32 %sub, 10 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add = add nsw i32 %2, %3 %4 = load i32* %i, align 4 %sub2 = sub nsw i32 100, %4 %sub3 = sub nsw i32 %sub2, 1 - %arrayidx4 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %sub3 + %arrayidx4 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %sub3 store i32 %add, i32* %arrayidx4, align 4 br label %for.inc @@ -426,7 +426,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx5 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx5 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx5, align 4 ret i32 %7 } @@ -459,14 +459,14 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %sub = sub nsw i32 100, %1 %sub1 = sub nsw i32 %sub, 1 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add = add nsw i32 %2, %3 %4 = load i32* %i, align 4 %sub2 = sub nsw i32 100, %4 %sub3 = sub nsw i32 %sub2, 10 - %arrayidx4 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %sub3 + %arrayidx4 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %sub3 store i32 %add, i32* %arrayidx4, align 4 br label %for.inc @@ -478,7 +478,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx5 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx5 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx5, align 4 ret i32 %7 } @@ -512,20 +512,20 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %1 = load i32** @PB, align 4 - %add.ptr = getelementptr inbounds i32* %1, i32 100 + %add.ptr = getelementptr inbounds i32, i32* %1, i32 100 %2 = load i32* %i, align 4 %idx.neg = sub i32 0, %2 - %add.ptr1 = getelementptr inbounds i32* %add.ptr, i32 %idx.neg - %add.ptr2 = getelementptr inbounds i32* %add.ptr1, i32 -1 + %add.ptr1 = getelementptr inbounds i32, i32* %add.ptr, i32 %idx.neg + %add.ptr2 = getelementptr inbounds i32, i32* %add.ptr1, i32 -1 %3 = load i32* %add.ptr2, align 4 %4 = load i32* %a.addr, align 4 %add = add nsw i32 %3, %4 %5 = load i32** @PA, align 4 - %add.ptr3 = getelementptr inbounds i32* %5, i32 100 + %add.ptr3 = getelementptr inbounds i32, i32* %5, i32 100 %6 = load i32* %i, align 4 %idx.neg4 = sub i32 0, %6 - %add.ptr5 = getelementptr inbounds i32* %add.ptr3, i32 %idx.neg4 - %add.ptr6 = getelementptr inbounds i32* %add.ptr5, i32 -1 + %add.ptr5 = getelementptr inbounds i32, i32* %add.ptr3, i32 %idx.neg4 + %add.ptr6 = getelementptr inbounds i32, i32* %add.ptr5, i32 -1 store i32 %add, i32* %add.ptr6, align 4 br label %for.inc @@ -538,7 +538,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %8 = load i32** @PA, align 4 %9 = load i32* %a.addr, align 4 - %add.ptr7 = getelementptr inbounds i32* %8, i32 %9 + %add.ptr7 = getelementptr inbounds i32, i32* %8, i32 %9 %10 = load i32* %add.ptr7, align 4 ret i32 %10 } @@ -574,8 +574,8 @@ for.body: ; preds = %for.cond %sub = sub nsw i32 100, %1 %sub1 = sub nsw i32 %sub, 1 %2 = load i32* %N, align 4 - %arrayidx = getelementptr inbounds [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 2), i32 0, i32 %2 - %arrayidx2 = getelementptr inbounds [100 x i32]* %arrayidx, i32 0, i32 %sub1 + %arrayidx = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 2), i32 0, i32 %2 + %arrayidx2 = getelementptr inbounds [100 x i32], [100 x i32]* %arrayidx, i32 0, i32 %sub1 %3 = load i32* %arrayidx2, align 4 %4 = load i32* %a.addr, align 4 %add = add nsw i32 %3, %4 @@ -583,8 +583,8 @@ for.body: ; preds = %for.cond %sub3 = sub nsw i32 100, %5 %sub4 = sub nsw i32 %sub3, 1 %6 = load i32* %N, align 4 - %arrayidx5 = getelementptr inbounds [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %6 - %arrayidx6 = getelementptr inbounds [100 x i32]* %arrayidx5, i32 0, i32 %sub4 + %arrayidx5 = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %6 + %arrayidx6 = getelementptr inbounds [100 x i32], [100 x i32]* %arrayidx5, i32 0, i32 %sub4 store i32 %add, i32* %arrayidx6, align 4 br label %for.inc @@ -597,8 +597,8 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %8 = load i32* %a.addr, align 4 %9 = load i32* %N, align 4 - %arrayidx7 = getelementptr inbounds [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %9 - %arrayidx8 = getelementptr inbounds [100 x i32]* %arrayidx7, i32 0, i32 %8 + %arrayidx7 = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %9 + %arrayidx8 = getelementptr inbounds [100 x i32], [100 x i32]* %arrayidx7, i32 0, i32 %8 %10 = load i32* %arrayidx8, align 4 ret i32 %10 } @@ -635,8 +635,8 @@ for.body: ; preds = %for.cond %sub1 = sub nsw i32 %sub, 1 %2 = load i32* %N, align 4 %add = add nsw i32 %2, 1 - %arrayidx = getelementptr inbounds [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %add - %arrayidx2 = getelementptr inbounds [100 x i32]* %arrayidx, i32 0, i32 %sub1 + %arrayidx = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %add + %arrayidx2 = getelementptr inbounds [100 x i32], [100 x i32]* %arrayidx, i32 0, i32 %sub1 %3 = load i32* %arrayidx2, align 4 %4 = load i32* %a.addr, align 4 %add3 = add nsw i32 %3, %4 @@ -644,8 +644,8 @@ for.body: ; preds = %for.cond %sub4 = sub nsw i32 100, %5 %sub5 = sub nsw i32 %sub4, 1 %6 = load i32* %N, align 4 - %arrayidx6 = getelementptr inbounds [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %6 - %arrayidx7 = getelementptr inbounds [100 x i32]* %arrayidx6, i32 0, i32 %sub5 + %arrayidx6 = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %6 + %arrayidx7 = getelementptr inbounds [100 x i32], [100 x i32]* %arrayidx6, i32 0, i32 %sub5 store i32 %add3, i32* %arrayidx7, align 4 br label %for.inc @@ -658,8 +658,8 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %8 = load i32* %a.addr, align 4 %9 = load i32* %N, align 4 - %arrayidx8 = getelementptr inbounds [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %9 - %arrayidx9 = getelementptr inbounds [100 x i32]* %arrayidx8, i32 0, i32 %8 + %arrayidx8 = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* getelementptr inbounds (%struct.anon.0* @Bar, i32 0, i32 0), i32 0, i32 %9 + %arrayidx9 = getelementptr inbounds [100 x i32], [100 x i32]* %arrayidx8, i32 0, i32 %8 %10 = load i32* %arrayidx9, align 4 ret i32 %10 } @@ -691,12 +691,12 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %add = add nsw i32 %1, 4 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %add + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %add %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add1 = add nsw i32 %2, %3 %4 = load i32* %i, align 4 - %arrayidx2 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %4 + %arrayidx2 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %4 store i32 %add1, i32* %arrayidx2, align 4 br label %for.inc @@ -708,7 +708,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx3 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx3 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx3, align 4 ret i32 %7 } @@ -741,14 +741,14 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %sub = sub nsw i32 100, %1 %sub1 = sub nsw i32 %sub, 5 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %sub1 + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %sub1 %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add = add nsw i32 %2, %3 %4 = load i32* %i, align 4 %sub2 = sub nsw i32 100, %4 %sub3 = sub nsw i32 %sub2, 1 - %arrayidx4 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %sub3 + %arrayidx4 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %sub3 store i32 %add, i32* %arrayidx4, align 4 br label %for.inc @@ -760,7 +760,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx5 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx5 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx5, align 4 ret i32 %7 } @@ -797,12 +797,12 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %sub = sub nsw i32 100, %1 %sub1 = sub nsw i32 %sub, 1 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add = add nsw i32 %2, %3 %4 = load i32* %i, align 4 - %arrayidx2 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %4 + %arrayidx2 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %4 store i32 %add, i32* %arrayidx2, align 4 br label %for.inc @@ -814,7 +814,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx3 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx3 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx3, align 4 ret i32 %7 } @@ -845,14 +845,14 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %1 = load i32* %i, align 4 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %1 + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %1 %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add = add nsw i32 %2, %3 %4 = load i32* %i, align 4 %sub = sub nsw i32 100, %4 %sub1 = sub nsw i32 %sub, 1 - %arrayidx2 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %sub1 + %arrayidx2 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %sub1 store i32 %add, i32* %arrayidx2, align 4 br label %for.inc @@ -864,7 +864,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx3 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx3 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx3, align 4 ret i32 %7 } @@ -895,17 +895,17 @@ for.cond: ; preds = %for.inc, %entry for.body: ; preds = %for.cond %1 = load i32** @PB, align 4 - %add.ptr = getelementptr inbounds i32* %1, i32 100 + %add.ptr = getelementptr inbounds i32, i32* %1, i32 100 %2 = load i32* %i, align 4 %idx.neg = sub i32 0, %2 - %add.ptr1 = getelementptr inbounds i32* %add.ptr, i32 %idx.neg - %add.ptr2 = getelementptr inbounds i32* %add.ptr1, i32 -1 + %add.ptr1 = getelementptr inbounds i32, i32* %add.ptr, i32 %idx.neg + %add.ptr2 = getelementptr inbounds i32, i32* %add.ptr1, i32 -1 %3 = load i32* %add.ptr2, align 4 %4 = load i32* %a.addr, align 4 %add = add nsw i32 %3, %4 %5 = load i32** @PA, align 4 %6 = load i32* %i, align 4 - %add.ptr3 = getelementptr inbounds i32* %5, i32 %6 + %add.ptr3 = getelementptr inbounds i32, i32* %5, i32 %6 store i32 %add, i32* %add.ptr3, align 4 br label %for.inc @@ -918,7 +918,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %8 = load i32** @PA, align 4 %9 = load i32* %a.addr, align 4 - %add.ptr4 = getelementptr inbounds i32* %8, i32 %9 + %add.ptr4 = getelementptr inbounds i32, i32* %8, i32 %9 %10 = load i32* %add.ptr4, align 4 ret i32 %10 } @@ -954,13 +954,13 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %sub = sub nsw i32 100, %1 %sub1 = sub nsw i32 %sub, 1 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add = add nsw i32 %2, %3 %4 = load i32* %i, align 4 %add2 = add nsw i32 %4, 10 - %arrayidx3 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %add2 + %arrayidx3 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %add2 store i32 %add, i32* %arrayidx3, align 4 br label %for.inc @@ -972,7 +972,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx4 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx4 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx4, align 4 ret i32 %7 } @@ -1004,12 +1004,12 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %sub = sub nsw i32 100, %1 %sub1 = sub nsw i32 %sub, 10 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add = add nsw i32 %2, %3 %4 = load i32* %i, align 4 - %arrayidx2 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %4 + %arrayidx2 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %4 store i32 %add, i32* %arrayidx2, align 4 br label %for.inc @@ -1021,7 +1021,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx3 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx3 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx3, align 4 ret i32 %7 } @@ -1053,13 +1053,13 @@ for.body: ; preds = %for.cond %1 = load i32* %i, align 4 %sub = sub nsw i32 100, %1 %sub1 = sub nsw i32 %sub, 10 - %arrayidx = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 2), i32 0, i32 %sub1 %2 = load i32* %arrayidx, align 4 %3 = load i32* %a.addr, align 4 %add = add nsw i32 %2, %3 %4 = load i32* %i, align 4 %add2 = add nsw i32 %4, 10 - %arrayidx3 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %add2 + %arrayidx3 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %add2 store i32 %add, i32* %arrayidx3, align 4 br label %for.inc @@ -1071,7 +1071,7 @@ for.inc: ; preds = %for.body for.end: ; preds = %for.cond %6 = load i32* %a.addr, align 4 - %arrayidx4 = getelementptr inbounds [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 + %arrayidx4 = getelementptr inbounds [100 x i32], [100 x i32]* getelementptr inbounds (%struct.anon* @Foo, i32 0, i32 0), i32 0, i32 %6 %7 = load i32* %arrayidx4, align 4 ret i32 %7 } diff --git a/llvm/test/Transforms/LoopVectorize/hoist-loads.ll b/llvm/test/Transforms/LoopVectorize/hoist-loads.ll index d0b27f1eae7..ae7f5dc3b79 100644 --- a/llvm/test/Transforms/LoopVectorize/hoist-loads.ll +++ b/llvm/test/Transforms/LoopVectorize/hoist-loads.ll @@ -14,8 +14,8 @@ entry: br label %for.body for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %if.end9 ] - %arrayidx = getelementptr inbounds [1024 x float]* @A, i64 0, i64 %indvars.iv - %arrayidx2 = getelementptr inbounds [1024 x float]* @B, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @A, i64 0, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds [1024 x float], [1024 x float]* @B, i64 0, i64 %indvars.iv %0 = load float* %arrayidx2, align 4 %cmp3 = fcmp oeq float %0, 0.000000e+00 br i1 %cmp3, label %if.end9, label %if.else @@ -46,8 +46,8 @@ entry: br label %for.body for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %if.end9 ] - %arrayidx = getelementptr inbounds [1024 x float]* @A, i64 0, i64 %indvars.iv - %arrayidx2 = getelementptr inbounds [1024 x float]* @B, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @A, i64 0, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds [1024 x float], [1024 x float]* @B, i64 0, i64 %indvars.iv %0 = load float* %arrayidx2, align 4 %cmp3 = fcmp oeq float %0, 0.000000e+00 br i1 %cmp3, label %if.end9, label %if.else diff --git a/llvm/test/Transforms/LoopVectorize/if-conversion-edgemasks.ll b/llvm/test/Transforms/LoopVectorize/if-conversion-edgemasks.ll index 8b8408bb371..f2d1f2596c2 100644 --- a/llvm/test/Transforms/LoopVectorize/if-conversion-edgemasks.ll +++ b/llvm/test/Transforms/LoopVectorize/if-conversion-edgemasks.ll @@ -27,7 +27,7 @@ for.body.lr.ph: for.body: %indvars.iv = phi i64 [ 0, %for.body.lr.ph ], [ %indvars.iv.next, %_ZL3fn3ii.exit58 ] - %arrayidx = getelementptr inbounds i32* %0, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %0, i64 %indvars.iv %3 = load i32* %arrayidx, align 4 %4 = trunc i64 %indvars.iv to i32 %and.i = and i32 %4, 1 %tobool.i.i = icmp eq i32 %and.i, 0 @@ -134,8 +134,8 @@ if.then.i15.i: _ZL3fn3ii.exit: %p1.addr.0.i16.i = phi i32 [ %or.i14.i, %if.then.i15.i ], [ %p1.addr.3.i.i, %_Z3fn2iii.exit.i ] - %arrayidx2 = getelementptr inbounds i32* %1, i64 %indvars.iv - store i32 %p1.addr.0.i16.i, i32* %arrayidx2, align 4 %arrayidx4 = getelementptr inbounds i32* %0, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %1, i64 %indvars.iv + store i32 %p1.addr.0.i16.i, i32* %arrayidx2, align 4 %arrayidx4 = getelementptr inbounds i32, i32* %0, i64 %indvars.iv %10 = load i32* %arrayidx4, align 4 br i1 %tobool.i.i, label %_Z3fn1ii.exit.i26, label %if.then.i.i21 if.then.i.i21: @@ -232,7 +232,7 @@ if.then.i15.i56: _ZL3fn3ii.exit58: %p1.addr.0.i16.i57 = phi i32 [ %or.i14.i55, %if.then.i15.i56 ], [ %p1.addr.3.i.i50, %_Z3fn2iii.exit.i52 ] - %arrayidx7 = getelementptr inbounds i32* %2, i64 %indvars.iv + %arrayidx7 = getelementptr inbounds i32, i32* %2, i64 %indvars.iv store i32 %p1.addr.0.i16.i57, i32* %arrayidx7, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 %exitcond = icmp ne i32 %lftr.wideiv, %p1 diff --git a/llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll b/llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll index b5ac8fca23b..4a327e8fe4f 100644 --- a/llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll +++ b/llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll @@ -19,9 +19,9 @@ entry: for.body: %indvars.iv = phi i64 [ %indvars.iv.next, %if.end14 ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32* %B, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv %1 = load i32* %arrayidx2, align 4 %cmp3 = icmp sgt i32 %0, %1 br i1 %cmp3, label %if.then, label %if.end14 diff --git a/llvm/test/Transforms/LoopVectorize/if-conversion-reduction.ll b/llvm/test/Transforms/LoopVectorize/if-conversion-reduction.ll index 455699c7803..711ca7633a5 100644 --- a/llvm/test/Transforms/LoopVectorize/if-conversion-reduction.ll +++ b/llvm/test/Transforms/LoopVectorize/if-conversion-reduction.ll @@ -14,7 +14,7 @@ entry: for.body: ; preds = %entry, %for.inc %indvars.iv = phi i64 [ %indvars.iv.next, %for.inc ], [ 0, %entry ] %sum.011 = phi i32 [ %sum.1, %for.inc ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp1 = icmp sgt i32 %0, 30 br i1 %cmp1, label %if.then, label %for.inc diff --git a/llvm/test/Transforms/LoopVectorize/if-conversion.ll b/llvm/test/Transforms/LoopVectorize/if-conversion.ll index a220203819c..7a3d825353e 100644 --- a/llvm/test/Transforms/LoopVectorize/if-conversion.ll +++ b/llvm/test/Transforms/LoopVectorize/if-conversion.ll @@ -35,9 +35,9 @@ for.body.lr.ph: for.body: %indvars.iv = phi i64 [ %0, %for.body.lr.ph ], [ %indvars.iv.next, %if.end ] - %arrayidx = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %a, i64 %indvars.iv %1 = load i32* %arrayidx, align 4 - %arrayidx4 = getelementptr inbounds i32* %b, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds i32, i32* %b, i64 %indvars.iv %2 = load i32* %arrayidx4, align 4 %cmp5 = icmp sgt i32 %1, %2 br i1 %cmp5, label %if.then, label %if.end @@ -84,7 +84,7 @@ entry: for.body: ; preds = %entry, %for.inc %indvars.iv = phi i64 [ %indvars.iv.next, %for.inc ], [ 0, %entry ] %sum.011 = phi i32 [ %sum.1, %for.inc ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp1 = icmp sgt i32 %0, 30 br i1 %cmp1, label %if.then, label %for.inc diff --git a/llvm/test/Transforms/LoopVectorize/if-pred-stores.ll b/llvm/test/Transforms/LoopVectorize/if-pred-stores.ll index c6067e01ee2..ee5f8bcce88 100644 --- a/llvm/test/Transforms/LoopVectorize/if-pred-stores.ll +++ b/llvm/test/Transforms/LoopVectorize/if-pred-stores.ll @@ -39,8 +39,8 @@ entry: ; UNROLL: vector.body: ; UNROLL: %[[IND:[a-zA-Z0-9]+]] = add i64 %{{.*}}, 0 ; UNROLL: %[[IND1:[a-zA-Z0-9]+]] = add i64 %{{.*}}, 1 -; UNROLL: %[[v0:[a-zA-Z0-9]+]] = getelementptr inbounds i32* %f, i64 %[[IND]] -; UNROLL: %[[v1:[a-zA-Z0-9]+]] = getelementptr inbounds i32* %f, i64 %[[IND1]] +; UNROLL: %[[v0:[a-zA-Z0-9]+]] = getelementptr inbounds i32, i32* %f, i64 %[[IND]] +; UNROLL: %[[v1:[a-zA-Z0-9]+]] = getelementptr inbounds i32, i32* %f, i64 %[[IND1]] ; UNROLL: %[[v2:[a-zA-Z0-9]+]] = load i32* %[[v0]], align 4 ; UNROLL: %[[v3:[a-zA-Z0-9]+]] = load i32* %[[v1]], align 4 ; UNROLL: %[[v4:[a-zA-Z0-9]+]] = icmp sgt i32 %[[v2]], 100 @@ -66,7 +66,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.inc ] - %arrayidx = getelementptr inbounds i32* %f, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %f, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp1 = icmp sgt i32 %0, 100 br i1 %cmp1, label %if.then, label %for.inc @@ -104,7 +104,7 @@ for.body9: for.body14: %indvars.iv3 = phi i64 [ %indvars.iv.next4, %for.inc23 ], [ undef, %for.body9 ] %iNewChunks.120 = phi i32 [ %iNewChunks.2, %for.inc23 ], [ undef, %for.body9 ] - %arrayidx16 = getelementptr inbounds [768 x i32]* undef, i64 0, i64 %indvars.iv3 + %arrayidx16 = getelementptr inbounds [768 x i32], [768 x i32]* undef, i64 0, i64 %indvars.iv3 %tmp = load i32* %arrayidx16, align 4 br i1 undef, label %if.then18, label %for.inc23 diff --git a/llvm/test/Transforms/LoopVectorize/incorrect-dom-info.ll b/llvm/test/Transforms/LoopVectorize/incorrect-dom-info.ll index b8624fd0077..12fc13a5265 100644 --- a/llvm/test/Transforms/LoopVectorize/incorrect-dom-info.ll +++ b/llvm/test/Transforms/LoopVectorize/incorrect-dom-info.ll @@ -45,7 +45,7 @@ thread-pre-split.preheader: ; preds = %9 .thread-pre-split.loopexit_crit_edge: ; preds = %19 %scevgep.sum = xor i64 %umax, -1 - %scevgep45 = getelementptr i8* %d.020, i64 %scevgep.sum + %scevgep45 = getelementptr i8, i8* %d.020, i64 %scevgep.sum br label %thread-pre-split.loopexit thread-pre-split.loopexit: ; preds = %11, %.thread-pre-split.loopexit_crit_edge @@ -58,7 +58,7 @@ thread-pre-split.loopexit: ; preds = %11, %.thread-pre-sp br i1 undef, label %11, label %22 ; <label>:11 ; preds = %.lr.ph21 - %12 = getelementptr inbounds [0 x i8]* @PL_utf8skip, i64 0, i64 undef + %12 = getelementptr inbounds [0 x i8], [0 x i8]* @PL_utf8skip, i64 0, i64 undef %13 = load i8* %12, align 1 %14 = zext i8 %13 to i64 %15 = icmp ugt i64 %14, %10 diff --git a/llvm/test/Transforms/LoopVectorize/increment.ll b/llvm/test/Transforms/LoopVectorize/increment.ll index 067a76b51ad..369bd38c78f 100644 --- a/llvm/test/Transforms/LoopVectorize/increment.ll +++ b/llvm/test/Transforms/LoopVectorize/increment.ll @@ -20,7 +20,7 @@ define void @inc(i32 %n) nounwind uwtable noinline ssp { .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 %4 = trunc i64 %indvars.iv to i32 %5 = add nsw i32 %3, %4 @@ -49,10 +49,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i32* %B, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %B, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %idxprom1 = sext i32 %0 to i64 - %arrayidx2 = getelementptr inbounds i32* %A, i64 %idxprom1 + %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %idxprom1 %1 = load i32* %arrayidx2, align 4 %inc = add nsw i32 %1, 1 store i32 %inc, i32* %arrayidx2, align 4 diff --git a/llvm/test/Transforms/LoopVectorize/induction.ll b/llvm/test/Transforms/LoopVectorize/induction.ll index 3f3491835b5..811c4927245 100644 --- a/llvm/test/Transforms/LoopVectorize/induction.ll +++ b/llvm/test/Transforms/LoopVectorize/induction.ll @@ -16,7 +16,7 @@ for.body.lr.ph: for.body: %indvars.iv = phi i64 [ 0, %for.body.lr.ph ], [ %indvars.iv.next, %for.body ] %count.09 = phi i32 [ 190, %for.body.lr.ph ], [ %inc, %for.body ] - %arrayidx2 = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv store i32 %count.09, i32* %arrayidx2, align 4 %inc = add nsw i32 %count.09, 1 %indvars.iv.next = add i64 %indvars.iv, 1 @@ -51,10 +51,10 @@ entry: for.body: %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] %ind.sum = add i64 %iv, %offset - %arr.idx = getelementptr inbounds float* %a, i64 %ind.sum + %arr.idx = getelementptr inbounds float, float* %a, i64 %ind.sum %l1 = load float* %arr.idx, align 4 %ind.sum2 = add i64 %iv, %offset2 - %arr.idx2 = getelementptr inbounds float* %a, i64 %ind.sum2 + %arr.idx2 = getelementptr inbounds float, float* %a, i64 %ind.sum2 %l2 = load float* %arr.idx2, align 4 %m = fmul fast float %b, %l2 %ad = fadd fast float %l1, %m diff --git a/llvm/test/Transforms/LoopVectorize/induction_plus.ll b/llvm/test/Transforms/LoopVectorize/induction_plus.ll index ce64c5b620d..7c4c8f2edcb 100644 --- a/llvm/test/Transforms/LoopVectorize/induction_plus.ll +++ b/llvm/test/Transforms/LoopVectorize/induction_plus.ll @@ -16,7 +16,7 @@ define i32 @array_at_plus_one(i32 %n) nounwind uwtable ssp { .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] %2 = add nsw i64 %indvars.iv, 12 - %3 = getelementptr inbounds [1024 x i32]* @array, i64 0, i64 %2 + %3 = getelementptr inbounds [1024 x i32], [1024 x i32]* @array, i64 0, i64 %2 %4 = trunc i64 %indvars.iv to i32 store i32 %4, i32* %3, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/intrinsic.ll b/llvm/test/Transforms/LoopVectorize/intrinsic.ll index d48731a0743..029d8b61a4a 100644 --- a/llvm/test/Transforms/LoopVectorize/intrinsic.ll +++ b/llvm/test/Transforms/LoopVectorize/intrinsic.ll @@ -13,10 +13,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.sqrt.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -39,10 +39,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.sqrt.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -65,10 +65,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.sin.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -91,10 +91,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.sin.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -117,10 +117,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.cos.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -143,10 +143,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.cos.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -169,10 +169,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.exp.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -195,10 +195,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.exp.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -221,10 +221,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.exp2.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -247,10 +247,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.exp2.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -273,10 +273,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.log.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -299,10 +299,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.log.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -325,10 +325,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.log10.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -351,10 +351,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.log10.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -377,10 +377,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.log2.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -403,10 +403,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.log2.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -429,10 +429,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.fabs.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -452,10 +452,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.fabs(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -478,12 +478,12 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds float* %z, i64 %indvars.iv + %arrayidx1 = getelementptr inbounds float, float* %z, i64 %indvars.iv %1 = load float* %arrayidx1, align 4 %call = tail call float @llvm.copysign.f32(float %0, float %1) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -503,12 +503,12 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 - %arrayidx1 = getelementptr inbounds double* %z, i64 %indvars.iv + %arrayidx1 = getelementptr inbounds double, double* %z, i64 %indvars.iv %1 = load double* %arrayidx, align 8 %call = tail call double @llvm.copysign(double %0, double %1) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -531,10 +531,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.floor.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -557,10 +557,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.floor.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -583,10 +583,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.ceil.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -609,10 +609,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.ceil.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -635,10 +635,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.trunc.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -661,10 +661,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.trunc.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -687,10 +687,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.rint.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -713,10 +713,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.rint.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -739,10 +739,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.nearbyint.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -765,10 +765,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.nearbyint.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -791,10 +791,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @llvm.round.f32(float %0) nounwind readnone - %arrayidx2 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -817,10 +817,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.round.f64(double %0) nounwind readnone - %arrayidx2 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx2, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -843,14 +843,14 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds float* %w, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %w, i64 %indvars.iv %1 = load float* %arrayidx2, align 4 - %arrayidx4 = getelementptr inbounds float* %z, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds float, float* %z, i64 %indvars.iv %2 = load float* %arrayidx4, align 4 %3 = tail call float @llvm.fma.f32(float %0, float %2, float %1) - %arrayidx6 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx6 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %3, float* %arrayidx6, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -873,14 +873,14 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 - %arrayidx2 = getelementptr inbounds double* %w, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %w, i64 %indvars.iv %1 = load double* %arrayidx2, align 8 - %arrayidx4 = getelementptr inbounds double* %z, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds double, double* %z, i64 %indvars.iv %2 = load double* %arrayidx4, align 8 %3 = tail call double @llvm.fma.f64(double %0, double %2, double %1) - %arrayidx6 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx6 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %3, double* %arrayidx6, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -903,14 +903,14 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds float* %w, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %w, i64 %indvars.iv %1 = load float* %arrayidx2, align 4 - %arrayidx4 = getelementptr inbounds float* %z, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds float, float* %z, i64 %indvars.iv %2 = load float* %arrayidx4, align 4 %3 = tail call float @llvm.fmuladd.f32(float %0, float %2, float %1) - %arrayidx6 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx6 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %3, float* %arrayidx6, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -933,14 +933,14 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 - %arrayidx2 = getelementptr inbounds double* %w, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %w, i64 %indvars.iv %1 = load double* %arrayidx2, align 8 - %arrayidx4 = getelementptr inbounds double* %z, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds double, double* %z, i64 %indvars.iv %2 = load double* %arrayidx4, align 8 %3 = tail call double @llvm.fmuladd.f64(double %0, double %2, double %1) - %arrayidx6 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx6 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %3, double* %arrayidx6, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -963,12 +963,12 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds float* %z, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %z, i64 %indvars.iv %1 = load float* %arrayidx2, align 4 %call = tail call float @llvm.pow.f32(float %0, float %1) nounwind readnone - %arrayidx4 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx4, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -991,12 +991,12 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 - %arrayidx2 = getelementptr inbounds double* %z, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds double, double* %z, i64 %indvars.iv %1 = load double* %arrayidx2, align 8 %call = tail call double @llvm.pow.f64(double %0, double %1) nounwind readnone - %arrayidx4 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx4, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -1016,7 +1016,7 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %x, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @fabsf(float %0) nounwind readnone store float %call, float* %arrayidx, align 4 @@ -1050,7 +1050,7 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %x, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %call = tail call float @roundf(float %0) nounwind readnone store float %call, float* %arrayidx, align 4 @@ -1077,7 +1077,7 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %x, i64 %indvars.iv %0 = load double* %arrayidx, align 4 store double %0, double* %arrayidx, align 4 tail call void @round(double %0) nounwind readnone @@ -1102,10 +1102,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %call = tail call double @llvm.powi.f64(double %0, i32 %P) nounwind readnone - %arrayidx4 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx4, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -1126,11 +1126,11 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds double* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds double, double* %y, i64 %indvars.iv %0 = load double* %arrayidx, align 8 %1 = trunc i64 %indvars.iv to i32 %call = tail call double @llvm.powi.f64(double %0, i32 %1) nounwind readnone - %arrayidx4 = getelementptr inbounds double* %x, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds double, double* %x, i64 %indvars.iv store double %call, double* %arrayidx4, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -1153,10 +1153,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i64* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds i64, i64* %y, i64 %indvars.iv %0 = load i64* %arrayidx, align 8 %call = tail call i64 @llvm.cttz.i64(i64 %0, i1 true) nounwind readnone - %arrayidx4 = getelementptr inbounds i64* %x, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds i64, i64* %x, i64 %indvars.iv store i64 %call, i64* %arrayidx4, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -1179,10 +1179,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i64* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds i64, i64* %y, i64 %indvars.iv %0 = load i64* %arrayidx, align 8 %call = tail call i64 @llvm.ctlz.i64(i64 %0, i1 true) nounwind readnone - %arrayidx4 = getelementptr inbounds i64* %x, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds i64, i64* %x, i64 %indvars.iv store i64 %call, i64* %arrayidx4, align 8 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -1205,12 +1205,12 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds float* %z, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %z, i64 %indvars.iv %1 = load float* %arrayidx2, align 4 %call = tail call float @llvm.minnum.f32(float %0, float %1) nounwind readnone - %arrayidx4 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx4, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -1233,12 +1233,12 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %y, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %y, i64 %indvars.iv %0 = load float* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds float* %z, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %z, i64 %indvars.iv %1 = load float* %arrayidx2, align 4 %call = tail call float @llvm.maxnum.f32(float %0, float %1) nounwind readnone - %arrayidx4 = getelementptr inbounds float* %x, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds float, float* %x, i64 %indvars.iv store float %call, float* %arrayidx4, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/lifetime.ll b/llvm/test/Transforms/LoopVectorize/lifetime.ll index ba36cc4f7aa..63bde5a4570 100644 --- a/llvm/test/Transforms/LoopVectorize/lifetime.ll +++ b/llvm/test/Transforms/LoopVectorize/lifetime.ll @@ -19,7 +19,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] call void @llvm.lifetime.end(i64 4096, i8* %0) #1 - %arrayidx = getelementptr inbounds i32* %d, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %d, i64 %indvars.iv %1 = load i32* %arrayidx, align 8 store i32 100, i32* %arrayidx, align 8 call void @llvm.lifetime.start(i64 4096, i8* %0) #1 @@ -49,7 +49,7 @@ for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %1 = bitcast [1024 x i32]* %arr to i8* call void @llvm.lifetime.end(i64 4096, i8* %1) #1 - %arrayidx = getelementptr inbounds i32* %d, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %d, i64 %indvars.iv %2 = load i32* %arrayidx, align 8 store i32 100, i32* %arrayidx, align 8 call void @llvm.lifetime.start(i64 4096, i8* %1) #1 @@ -75,10 +75,10 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %0 = getelementptr [1024 x i32]* %arr, i32 0, i64 %indvars.iv + %0 = getelementptr [1024 x i32], [1024 x i32]* %arr, i32 0, i64 %indvars.iv %1 = bitcast [1024 x i32]* %arr to i8* call void @llvm.lifetime.end(i64 4096, i8* %1) #1 - %arrayidx = getelementptr inbounds i32* %d, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %d, i64 %indvars.iv %2 = load i32* %arrayidx, align 8 store i32 100, i32* %arrayidx, align 8 call void @llvm.lifetime.start(i64 4096, i8* %1) #1 diff --git a/llvm/test/Transforms/LoopVectorize/loop-form.ll b/llvm/test/Transforms/LoopVectorize/loop-form.ll index 138df1d9613..3bbe8100e34 100644 --- a/llvm/test/Transforms/LoopVectorize/loop-form.ll +++ b/llvm/test/Transforms/LoopVectorize/loop-form.ll @@ -21,7 +21,7 @@ for.cond: for.body: %iprom = sext i32 %i to i64 - %b = getelementptr inbounds %struct.X* undef, i64 %iprom, i32 1 + %b = getelementptr inbounds %struct.X, %struct.X* undef, i64 %iprom, i32 1 store i16 0, i16* %b, align 4 %inc = add nsw i32 %i, 1 br label %for.cond diff --git a/llvm/test/Transforms/LoopVectorize/loop-vect-memdep.ll b/llvm/test/Transforms/LoopVectorize/loop-vect-memdep.ll index e2c7524238d..326c4d42f75 100644 --- a/llvm/test/Transforms/LoopVectorize/loop-vect-memdep.ll +++ b/llvm/test/Transforms/LoopVectorize/loop-vect-memdep.ll @@ -11,9 +11,9 @@ for.body.lr.ph: for.body: ; preds = %for.body, %for.body.lr.ph %i = phi i64 [ 0, %for.body.lr.ph ], [ %i.next, %for.body ] - %a = getelementptr inbounds double* %t, i64 %i + %a = getelementptr inbounds double, double* %t, i64 %i %i.next = add nuw nsw i64 %i, 1 - %a.next = getelementptr inbounds double* %t, i64 %i.next + %a.next = getelementptr inbounds double, double* %t, i64 %i.next %t1 = load double* %a, align 8 %t2 = load double* %a.next, align 8 store double %t1, double* %a.next, align 8 diff --git a/llvm/test/Transforms/LoopVectorize/memdep.ll b/llvm/test/Transforms/LoopVectorize/memdep.ll index f857e800bea..43fccb730dd 100644 --- a/llvm/test/Transforms/LoopVectorize/memdep.ll +++ b/llvm/test/Transforms/LoopVectorize/memdep.ll @@ -19,10 +19,10 @@ entry: for.body: %indvars.iv = phi i32 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %indvars.iv.next = add i32 %indvars.iv, 1 - %arrayidx = getelementptr inbounds i32* %A, i32 %indvars.iv.next + %arrayidx = getelementptr inbounds i32, i32* %A, i32 %indvars.iv.next %0 = load i32* %arrayidx, align 4 %add1 = add nsw i32 %0, 1 - %arrayidx3 = getelementptr inbounds i32* %A, i32 %indvars.iv + %arrayidx3 = getelementptr inbounds i32, i32* %A, i32 %indvars.iv store i32 %add1, i32* %arrayidx3, align 4 %exitcond = icmp ne i32 %indvars.iv.next, 1024 br i1 %exitcond, label %for.body, label %for.end @@ -44,11 +44,11 @@ entry: for.body: %indvars.iv = phi i32 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32* %A, i32 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %A, i32 %indvars.iv %0 = load i32* %arrayidx, align 4 %add = add nsw i32 %0, 1 %indvars.iv.next = add i32 %indvars.iv, 1 - %arrayidx3 = getelementptr inbounds i32* %A, i32 %indvars.iv.next + %arrayidx3 = getelementptr inbounds i32, i32* %A, i32 %indvars.iv.next store i32 %add, i32* %arrayidx3, align 4 %exitcond = icmp ne i32 %indvars.iv.next, 1024 br i1 %exitcond, label %for.body, label %for.end @@ -74,12 +74,12 @@ entry: for.body: %i.01 = phi i32 [ 0, %entry ], [ %inc, %for.body ] %idxprom = sext i32 %i.01 to i64 - %arrayidx = getelementptr inbounds i32* %A, i64 %idxprom + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %idxprom %0 = load i32* %arrayidx, align 4 %add = add nsw i32 %0, 1 %add1 = add nsw i32 %i.01, 2 %idxprom2 = sext i32 %add1 to i64 - %arrayidx3 = getelementptr inbounds i32* %A, i64 %idxprom2 + %arrayidx3 = getelementptr inbounds i32, i32* %A, i64 %idxprom2 store i32 %add, i32* %arrayidx3, align 4 %inc = add nsw i32 %i.01, 1 %cmp = icmp slt i32 %inc, 1024 @@ -105,12 +105,12 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32* %B, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv store i32 %0, i32* %arrayidx2, align 4 %indvars.iv.next = add nsw i64 %indvars.iv, 1 - %arrayidx4 = getelementptr inbounds i32* %B, i64 %indvars.iv.next + %arrayidx4 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv.next %1 = load i32* %arrayidx4, align 4 store i32 %1, i32* %arrayidx, align 4 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -138,9 +138,9 @@ for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %tmp.addr.08 = phi i32 [ %tmp, %entry ], [ %0, %for.body ] %indvars.iv.next = add nsw i64 %indvars.iv, 1 - %arrayidx = getelementptr inbounds i32* %a, i64 %indvars.iv.next + %arrayidx = getelementptr inbounds i32, i32* %a, i64 %indvars.iv.next store i32 %tmp.addr.08, i32* %arrayidx, align 4 - %arrayidx3 = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx3 = getelementptr inbounds i32, i32* %a, i64 %indvars.iv %0 = load i32* %arrayidx3, align 4 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 %exitcond = icmp ne i32 %lftr.wideiv, 1024 @@ -169,13 +169,13 @@ entry: for.body: %indvars.iv = phi i64 [ 16, %entry ], [ %indvars.iv.next, %for.body ] %0 = add nsw i64 %indvars.iv, -3 - %arrayidx = getelementptr inbounds i32* %A, i64 %0 + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %0 %1 = load i32* %arrayidx, align 4 %2 = add nsw i64 %indvars.iv, 4 - %arrayidx2 = getelementptr inbounds i32* %A, i64 %2 + %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %2 %3 = load i32* %arrayidx2, align 4 %add3 = add nsw i32 %3, %1 - %arrayidx5 = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx5 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv store i32 %add3, i32* %arrayidx5, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -203,14 +203,14 @@ entry: for.body: %indvars.iv = phi i64 [ 16, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32* %B, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %B, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv store i32 %0, i32* %arrayidx2, align 4 %1 = add nsw i64 %indvars.iv, -3 - %arrayidx4 = getelementptr inbounds i32* %A, i64 %1 + %arrayidx4 = getelementptr inbounds i32, i32* %A, i64 %1 %2 = load i32* %arrayidx4, align 4 - %arrayidx6 = getelementptr inbounds i32* %C, i64 %indvars.iv + %arrayidx6 = getelementptr inbounds i32, i32* %C, i64 %indvars.iv store i32 %2, i32* %arrayidx6, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/metadata-unroll.ll b/llvm/test/Transforms/LoopVectorize/metadata-unroll.ll index 36a231454f0..38df838de2a 100644 --- a/llvm/test/Transforms/LoopVectorize/metadata-unroll.ll +++ b/llvm/test/Transforms/LoopVectorize/metadata-unroll.ll @@ -23,7 +23,7 @@ define void @inc(i32 %n) nounwind uwtable noinline ssp { .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 %4 = trunc i64 %indvars.iv to i32 %5 = add nsw i32 %3, %4 diff --git a/llvm/test/Transforms/LoopVectorize/metadata-width.ll b/llvm/test/Transforms/LoopVectorize/metadata-width.ll index dee4feedd6b..69d902fad64 100644 --- a/llvm/test/Transforms/LoopVectorize/metadata-width.ll +++ b/llvm/test/Transforms/LoopVectorize/metadata-width.ll @@ -13,7 +13,7 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %a, i64 %indvars.iv %0 = trunc i64 %indvars.iv to i32 store i32 %0, i32* %arrayidx, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/metadata.ll b/llvm/test/Transforms/LoopVectorize/metadata.ll index a258f7c06c0..009463cdc11 100644 --- a/llvm/test/Transforms/LoopVectorize/metadata.ll +++ b/llvm/test/Transforms/LoopVectorize/metadata.ll @@ -9,10 +9,10 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds float* %b, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %b, i64 %indvars.iv %0 = load float* %arrayidx, align 4, !tbaa !0 %conv = fptosi float %0 to i32 - %arrayidx2 = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %indvars.iv store i32 %conv, i32* %arrayidx2, align 4, !tbaa !4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 1600 diff --git a/llvm/test/Transforms/LoopVectorize/minmax_reduction.ll b/llvm/test/Transforms/LoopVectorize/minmax_reduction.ll index 1984cdd892d..858536fbed9 100644 --- a/llvm/test/Transforms/LoopVectorize/minmax_reduction.ll +++ b/llvm/test/Transforms/LoopVectorize/minmax_reduction.ll @@ -26,7 +26,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp3 = icmp sgt i32 %0, %max.red.08 %max.red.0 = select i1 %cmp3, i32 %0, i32 %max.red.08 @@ -55,7 +55,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp3 = icmp slt i32 %max.red.08, %0 %max.red.0 = select i1 %cmp3, i32 %0, i32 %max.red.08 @@ -83,7 +83,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp3 = icmp slt i32 %0, %max.red.08 %max.red.0 = select i1 %cmp3, i32 %0, i32 %max.red.08 @@ -112,7 +112,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp3 = icmp sgt i32 %max.red.08, %0 %max.red.0 = select i1 %cmp3, i32 %0, i32 %max.red.08 @@ -142,7 +142,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp3 = icmp ugt i32 %0, %max.red.08 %max.red.0 = select i1 %cmp3, i32 %0, i32 %max.red.08 @@ -171,7 +171,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp3 = icmp ult i32 %max.red.08, %0 %max.red.0 = select i1 %cmp3, i32 %0, i32 %max.red.08 @@ -199,7 +199,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp3 = icmp ult i32 %0, %max.red.08 %max.red.0 = select i1 %cmp3, i32 %0, i32 %max.red.08 @@ -228,7 +228,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp3 = icmp ugt i32 %max.red.08, %0 %max.red.0 = select i1 %cmp3, i32 %0, i32 %max.red.08 @@ -257,7 +257,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp3 = icmp sge i32 %0, %max.red.08 %max.red.0 = select i1 %cmp3, i32 %max.red.08, i32 %0 @@ -286,7 +286,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp3 = icmp sle i32 %0, %max.red.08 %max.red.0 = select i1 %cmp3, i32 %max.red.08, i32 %0 @@ -315,7 +315,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp3 = icmp uge i32 %0, %max.red.08 %max.red.0 = select i1 %cmp3, i32 %max.red.08, i32 %0 @@ -344,7 +344,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %cmp3 = icmp ule i32 %0, %max.red.08 %max.red.0 = select i1 %cmp3, i32 %max.red.08, i32 %0 @@ -367,8 +367,8 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv - %arrayidx1 = getelementptr inbounds [1024 x i32]* @A, i64 1, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx1 = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 1, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %1 = load i32* %arrayidx1, align 4 %cmp3 = icmp sgt i32 %0, %1 @@ -391,8 +391,8 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi i32 [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x i32]* @A, i64 0, i64 %indvars.iv - %arrayidx1 = getelementptr inbounds [1024 x i32]* @A, i64 1, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 0, i64 %indvars.iv + %arrayidx1 = getelementptr inbounds [1024 x i32], [1024 x i32]* @A, i64 1, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %1 = load i32* %arrayidx1, align 4 %cmp3 = icmp sgt i32 %0, %max.red.08 @@ -425,7 +425,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi float [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp ogt float %0, %max.red.08 %max.red.0 = select i1 %cmp3, float %0, float %max.red.08 @@ -451,7 +451,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi float [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp oge float %0, %max.red.08 %max.red.0 = select i1 %cmp3, float %0, float %max.red.08 @@ -477,7 +477,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi float [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp olt float %0, %max.red.08 %max.red.0 = select i1 %cmp3, float %max.red.08, float %0 @@ -503,7 +503,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi float [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp ole float %0, %max.red.08 %max.red.0 = select i1 %cmp3, float %max.red.08, float %0 @@ -529,7 +529,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi float [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp ugt float %0, %max.red.08 %max.red.0 = select i1 %cmp3, float %0, float %max.red.08 @@ -555,7 +555,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi float [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp uge float %0, %max.red.08 %max.red.0 = select i1 %cmp3, float %0, float %max.red.08 @@ -581,7 +581,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi float [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp ult float %0, %max.red.08 %max.red.0 = select i1 %cmp3, float %max.red.08, float %0 @@ -607,7 +607,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi float [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp ule float %0, %max.red.08 %max.red.0 = select i1 %cmp3, float %max.red.08, float %0 @@ -636,7 +636,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %min.red.08 = phi float [ %min, %entry ], [ %min.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp olt float %0, %min.red.08 %min.red.0 = select i1 %cmp3, float %0, float %min.red.08 @@ -662,7 +662,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %min.red.08 = phi float [ %min, %entry ], [ %min.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp ole float %0, %min.red.08 %min.red.0 = select i1 %cmp3, float %0, float %min.red.08 @@ -688,7 +688,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %min.red.08 = phi float [ %min, %entry ], [ %min.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp ogt float %0, %min.red.08 %min.red.0 = select i1 %cmp3, float %min.red.08, float %0 @@ -714,7 +714,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %min.red.08 = phi float [ %min, %entry ], [ %min.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp oge float %0, %min.red.08 %min.red.0 = select i1 %cmp3, float %min.red.08, float %0 @@ -740,7 +740,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %min.red.08 = phi float [ %min, %entry ], [ %min.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp ult float %0, %min.red.08 %min.red.0 = select i1 %cmp3, float %0, float %min.red.08 @@ -766,7 +766,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %min.red.08 = phi float [ %min, %entry ], [ %min.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp ule float %0, %min.red.08 %min.red.0 = select i1 %cmp3, float %0, float %min.red.08 @@ -792,7 +792,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %min.red.08 = phi float [ %min, %entry ], [ %min.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp ugt float %0, %min.red.08 %min.red.0 = select i1 %cmp3, float %min.red.08, float %0 @@ -818,7 +818,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %min.red.08 = phi float [ %min, %entry ], [ %min.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp uge float %0, %min.red.08 %min.red.0 = select i1 %cmp3, float %min.red.08, float %0 @@ -845,7 +845,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %min.red.08 = phi double [ %min, %entry ], [ %min.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x double]* @dA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x double], [1024 x double]* @dA, i64 0, i64 %indvars.iv %0 = load double* %arrayidx, align 4 %cmp3 = fcmp olt double %0, %min.red.08 %min.red.0 = select i1 %cmp3, double %0, double %min.red.08 @@ -869,7 +869,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %max.red.08 = phi float [ %max, %entry ], [ %max.red.0, %for.body ] - %arrayidx = getelementptr inbounds [1024 x float]* @fA, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x float], [1024 x float]* @fA, i64 0, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %cmp3 = fcmp ogt float %0, %max.red.08 %max.red.0 = select i1 %cmp3, float %0, float %max.red.08 diff --git a/llvm/test/Transforms/LoopVectorize/multiple-address-spaces.ll b/llvm/test/Transforms/LoopVectorize/multiple-address-spaces.ll index bb2af1e57cc..1659af684e9 100644 --- a/llvm/test/Transforms/LoopVectorize/multiple-address-spaces.ll +++ b/llvm/test/Transforms/LoopVectorize/multiple-address-spaces.ll @@ -27,10 +27,10 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds [40000 x i8] addrspace(1)* @Y, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [40000 x i8], [40000 x i8] addrspace(1)* @Y, i64 0, i64 %indvars.iv %0 = load i8 addrspace(1)* %arrayidx, align 1 %add = add i8 %0, 1 - %arrayidx3 = getelementptr inbounds [40000 x i8]* @X, i64 0, i64 %indvars.iv + %arrayidx3 = getelementptr inbounds [40000 x i8], [40000 x i8]* @X, i64 0, i64 %indvars.iv store i8 %add, i8* %arrayidx3, align 1 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/no_array_bounds.ll b/llvm/test/Transforms/LoopVectorize/no_array_bounds.ll index d3bd755e6cf..2835c6604ec 100644 --- a/llvm/test/Transforms/LoopVectorize/no_array_bounds.ll +++ b/llvm/test/Transforms/LoopVectorize/no_array_bounds.ll @@ -33,10 +33,10 @@ for.body7.preheader: ; preds = %for.cond5.preheader for.body: ; preds = %for.body.preheader, %for.body %indvars.iv27 = phi i64 [ %indvars.iv.next28, %for.body ], [ 0, %for.body.preheader ] - %arrayidx = getelementptr inbounds i32* %B, i64 %indvars.iv27, !dbg !14 + %arrayidx = getelementptr inbounds i32, i32* %B, i64 %indvars.iv27, !dbg !14 %0 = load i32* %arrayidx, align 4, !dbg !14, !tbaa !22 %idxprom1 = sext i32 %0 to i64, !dbg !14 - %arrayidx2 = getelementptr inbounds i32* %A, i64 %idxprom1, !dbg !14 + %arrayidx2 = getelementptr inbounds i32, i32* %A, i64 %idxprom1, !dbg !14 %1 = load i32* %arrayidx2, align 4, !dbg !14, !tbaa !22 %inc = add nsw i32 %1, 1, !dbg !14 store i32 %inc, i32* %arrayidx2, align 4, !dbg !14, !tbaa !22 @@ -47,10 +47,10 @@ for.body: ; preds = %for.body.preheader, for.body7: ; preds = %for.body7.preheader, %for.body7 %indvars.iv = phi i64 [ %indvars.iv.next, %for.body7 ], [ 0, %for.body7.preheader ] - %arrayidx9 = getelementptr inbounds i32* %A, i64 %indvars.iv, !dbg !20 + %arrayidx9 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv, !dbg !20 %2 = load i32* %arrayidx9, align 4, !dbg !20, !tbaa !22 %idxprom10 = sext i32 %2 to i64, !dbg !20 - %arrayidx11 = getelementptr inbounds i32* %B, i64 %idxprom10, !dbg !20 + %arrayidx11 = getelementptr inbounds i32, i32* %B, i64 %idxprom10, !dbg !20 %3 = load i32* %arrayidx11, align 4, !dbg !20, !tbaa !22 %inc12 = add nsw i32 %3, 1, !dbg !20 store i32 %inc12, i32* %arrayidx11, align 4, !dbg !20, !tbaa !22 diff --git a/llvm/test/Transforms/LoopVectorize/no_idiv_reduction.ll b/llvm/test/Transforms/LoopVectorize/no_idiv_reduction.ll index 5c721a6806d..326ffc8828d 100644 --- a/llvm/test/Transforms/LoopVectorize/no_idiv_reduction.ll +++ b/llvm/test/Transforms/LoopVectorize/no_idiv_reduction.ll @@ -11,7 +11,7 @@ for.body: ; CHECK-NOT: sdiv <2 x i32> %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %r.05 = phi i32 [ 80, %entry ], [ %div, %for.body ] - %arrayidx = getelementptr inbounds [128 x i32]* @a, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [128 x i32], [128 x i32]* @a, i64 0, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %div = sdiv i32 %r.05, %0 %indvars.iv.next = add i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/no_int_induction.ll b/llvm/test/Transforms/LoopVectorize/no_int_induction.ll index 1275915f5e3..02848a067a2 100644 --- a/llvm/test/Transforms/LoopVectorize/no_int_induction.ll +++ b/llvm/test/Transforms/LoopVectorize/no_int_induction.ll @@ -14,7 +14,7 @@ target datalayout = "e-p:64:64:64-p1:16:16:16-i1:8:8-i8:8:8-i16:16:16-i32:32:32- ;CHECK: ret i32 define i32 @sum_array(i32* %A, i32 %n) nounwind uwtable readonly noinline ssp { %1 = sext i32 %n to i64 - %2 = getelementptr inbounds i32* %A, i64 %1 + %2 = getelementptr inbounds i32, i32* %A, i64 %1 %3 = icmp eq i32 %n, 0 br i1 %3, label %_ZSt10accumulateIPiiET0_T_S2_S1_.exit, label %.lr.ph.i @@ -23,7 +23,7 @@ define i32 @sum_array(i32* %A, i32 %n) nounwind uwtable readonly noinline ssp { %.012.i = phi i32 [ %5, %.lr.ph.i ], [ 0, %0 ] %4 = load i32* %.03.i, align 4 %5 = add nsw i32 %4, %.012.i - %6 = getelementptr inbounds i32* %.03.i, i64 1 + %6 = getelementptr inbounds i32, i32* %.03.i, i64 1 %7 = icmp eq i32* %6, %2 br i1 %7, label %_ZSt10accumulateIPiiET0_T_S2_S1_.exit, label %.lr.ph.i @@ -41,7 +41,7 @@ _ZSt10accumulateIPiiET0_T_S2_S1_.exit: ; preds = %.lr.ph.i, %0 ;CHECK: ret i32 define i32 @sum_array_as1(i32 addrspace(1)* %A, i32 %n) nounwind uwtable readonly noinline ssp { %1 = sext i32 %n to i64 - %2 = getelementptr inbounds i32 addrspace(1)* %A, i64 %1 + %2 = getelementptr inbounds i32, i32 addrspace(1)* %A, i64 %1 %3 = icmp eq i32 %n, 0 br i1 %3, label %_ZSt10accumulateIPiiET0_T_S2_S1_.exit, label %.lr.ph.i @@ -50,7 +50,7 @@ define i32 @sum_array_as1(i32 addrspace(1)* %A, i32 %n) nounwind uwtable readonl %.012.i = phi i32 [ %5, %.lr.ph.i ], [ 0, %0 ] %4 = load i32 addrspace(1)* %.03.i, align 4 %5 = add nsw i32 %4, %.012.i - %6 = getelementptr inbounds i32 addrspace(1)* %.03.i, i64 1 + %6 = getelementptr inbounds i32, i32 addrspace(1)* %.03.i, i64 1 %7 = icmp eq i32 addrspace(1)* %6, %2 br i1 %7, label %_ZSt10accumulateIPiiET0_T_S2_S1_.exit, label %.lr.ph.i diff --git a/llvm/test/Transforms/LoopVectorize/no_switch.ll b/llvm/test/Transforms/LoopVectorize/no_switch.ll index 64aab37592f..e24e91f4ec1 100644 --- a/llvm/test/Transforms/LoopVectorize/no_switch.ll +++ b/llvm/test/Transforms/LoopVectorize/no_switch.ll @@ -21,7 +21,7 @@ for.body.preheader: ; preds = %entry for.body: ; preds = %for.body.preheader, %for.inc %indvars.iv = phi i64 [ %indvars.iv.next, %for.inc ], [ 0, %for.body.preheader ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv, !dbg !14 + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv, !dbg !14 %0 = load i32* %arrayidx, align 4, !dbg !14, !tbaa !16 switch i32 %0, label %for.inc [ i32 0, label %sw.bb diff --git a/llvm/test/Transforms/LoopVectorize/nofloat.ll b/llvm/test/Transforms/LoopVectorize/nofloat.ll index e9f4c5f23e0..6956bd9c0b4 100644 --- a/llvm/test/Transforms/LoopVectorize/nofloat.ll +++ b/llvm/test/Transforms/LoopVectorize/nofloat.ll @@ -15,7 +15,7 @@ define void @example12() noimplicitfloat { ; <--------- "noimplicitflo ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv %3 = trunc i64 %indvars.iv to i32 store i32 %3, i32* %2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/non-const-n.ll b/llvm/test/Transforms/LoopVectorize/non-const-n.ll index b03d4f05e16..4b957758d2f 100644 --- a/llvm/test/Transforms/LoopVectorize/non-const-n.ll +++ b/llvm/test/Transforms/LoopVectorize/non-const-n.ll @@ -20,12 +20,12 @@ define void @example1(i32 %n) nounwind uwtable ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %indvars.iv + %4 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = add nsw i32 %5, %3 - %7 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %7 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv store i32 %6, i32* %7, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/nsw-crash.ll b/llvm/test/Transforms/LoopVectorize/nsw-crash.ll index 68d993340bd..3631f0be690 100644 --- a/llvm/test/Transforms/LoopVectorize/nsw-crash.ll +++ b/llvm/test/Transforms/LoopVectorize/nsw-crash.ll @@ -13,7 +13,7 @@ while.body.lr.ph: while.body: %it.sroa.0.091 = phi i32* [ undef, %while.body.lr.ph ], [ %incdec.ptr.i, %while.body ] - %incdec.ptr.i = getelementptr inbounds i32* %it.sroa.0.091, i64 1 + %incdec.ptr.i = getelementptr inbounds i32, i32* %it.sroa.0.091, i64 1 %inc32 = add i32 undef, 1 ; <------------- Make sure we don't set NSW flags to the undef. %cmp.i11 = icmp eq i32* %incdec.ptr.i, undef br i1 %cmp.i11, label %while.end, label %while.body diff --git a/llvm/test/Transforms/LoopVectorize/opt.ll b/llvm/test/Transforms/LoopVectorize/opt.ll index a9be80fbfee..90d8b098caf 100644 --- a/llvm/test/Transforms/LoopVectorize/opt.ll +++ b/llvm/test/Transforms/LoopVectorize/opt.ll @@ -16,7 +16,7 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %red.05 = phi i32 [ 0, %entry ], [ %add, %for.body ] - %arrayidx = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %a, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %add = add nsw i32 %0, %red.05 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/ptr_loops.ll b/llvm/test/Transforms/LoopVectorize/ptr_loops.ll index 3fb38fe1ef1..4d7e315e2f0 100644 --- a/llvm/test/Transforms/LoopVectorize/ptr_loops.ll +++ b/llvm/test/Transforms/LoopVectorize/ptr_loops.ll @@ -20,8 +20,8 @@ define i32 @_Z5test1v() nounwind uwtable ssp { %2 = load i32* %b.01, align 4 %3 = shl nsw i32 %2, 1 store i32 %3, i32* %p.02, align 4 - %4 = getelementptr inbounds i32* %p.02, i64 -1 - %5 = getelementptr inbounds i32* %b.01, i64 1 + %4 = getelementptr inbounds i32, i32* %p.02, i64 -1 + %5 = getelementptr inbounds i32, i32* %b.01, i64 1 %6 = icmp eq i32* %4, getelementptr ([36 x i32]* @A, i64 128102389400760775, i64 3) br i1 %6, label %7, label %1 @@ -42,8 +42,8 @@ define i32 @_Z5test2v() nounwind uwtable ssp { %b.01 = phi i32* [ getelementptr inbounds ([36 x i32]* @B, i64 0, i64 2), %0 ], [ %4, %1 ] %2 = load i32* %b.01, align 4 store i32 %2, i32* %p.02, align 4 - %3 = getelementptr inbounds i32* %p.02, i64 -1 - %4 = getelementptr inbounds i32* %b.01, i64 1 + %3 = getelementptr inbounds i32, i32* %p.02, i64 -1 + %4 = getelementptr inbounds i32, i32* %b.01, i64 1 %5 = icmp eq i32* %4, getelementptr inbounds ([36 x i32]* @A, i64 0, i64 18) br i1 %5, label %6, label %1 @@ -64,8 +64,8 @@ define i32 @_Z5test3v() nounwind uwtable ssp { %b.01 = phi i32* [ getelementptr inbounds ([36 x i32]* @B, i64 0, i64 5), %0 ], [ %4, %1 ] %2 = load i32* %b.01, align 4 store i32 %2, i32* %p.02, align 4 - %3 = getelementptr inbounds i32* %p.02, i64 -1 - %4 = getelementptr inbounds i32* %b.01, i64 1 + %3 = getelementptr inbounds i32, i32* %p.02, i64 -1 + %4 = getelementptr inbounds i32, i32* %b.01, i64 1 %5 = icmp eq i32* %3, getelementptr ([36 x i32]* @A, i64 128102389400760775, i64 3) br i1 %5, label %6, label %1 diff --git a/llvm/test/Transforms/LoopVectorize/read-only.ll b/llvm/test/Transforms/LoopVectorize/read-only.ll index 2f7a96a09d2..ef12edb059a 100644 --- a/llvm/test/Transforms/LoopVectorize/read-only.ll +++ b/llvm/test/Transforms/LoopVectorize/read-only.ll @@ -13,10 +13,10 @@ define i32 @read_only_func(i32* nocapture %A, i32* nocapture %B, i32 %n) nounwin .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] %sum.02 = phi i32 [ %9, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds i32* %A, i64 %indvars.iv + %2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %3 = load i32* %2, align 4 %4 = add nsw i64 %indvars.iv, 13 - %5 = getelementptr inbounds i32* %B, i64 %4 + %5 = getelementptr inbounds i32, i32* %B, i64 %4 %6 = load i32* %5, align 4 %7 = shl i32 %6, 1 %8 = add i32 %3, %sum.02 diff --git a/llvm/test/Transforms/LoopVectorize/reduction.ll b/llvm/test/Transforms/LoopVectorize/reduction.ll index 5e6b7fa332b..70c63feea40 100644 --- a/llvm/test/Transforms/LoopVectorize/reduction.ll +++ b/llvm/test/Transforms/LoopVectorize/reduction.ll @@ -20,9 +20,9 @@ define i32 @reduction_sum(i32 %n, i32* noalias nocapture %A, i32* noalias nocapt .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] %sum.02 = phi i32 [ %9, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds i32* %A, i64 %indvars.iv + %2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds i32* %B, i64 %indvars.iv + %4 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = trunc i64 %indvars.iv to i32 %7 = add i32 %sum.02, %6 @@ -55,9 +55,9 @@ define i32 @reduction_prod(i32 %n, i32* noalias nocapture %A, i32* noalias nocap .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] %prod.02 = phi i32 [ %9, %.lr.ph ], [ 1, %0 ] - %2 = getelementptr inbounds i32* %A, i64 %indvars.iv + %2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds i32* %B, i64 %indvars.iv + %4 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = trunc i64 %indvars.iv to i32 %7 = mul i32 %prod.02, %6 @@ -90,9 +90,9 @@ define i32 @reduction_mix(i32 %n, i32* noalias nocapture %A, i32* noalias nocapt .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] %sum.02 = phi i32 [ %9, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds i32* %A, i64 %indvars.iv + %2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds i32* %B, i64 %indvars.iv + %4 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = mul nsw i32 %5, %3 %7 = trunc i64 %indvars.iv to i32 @@ -123,9 +123,9 @@ define i32 @reduction_mul(i32 %n, i32* noalias nocapture %A, i32* noalias nocapt .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] %sum.02 = phi i32 [ %9, %.lr.ph ], [ 19, %0 ] - %2 = getelementptr inbounds i32* %A, i64 %indvars.iv + %2 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds i32* %B, i64 %indvars.iv + %4 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = trunc i64 %indvars.iv to i32 %7 = add i32 %3, %6 @@ -158,9 +158,9 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] %sum.09 = phi i32 [ %add, %for.body ], [ 120, %entry ] - %arrayidx = getelementptr inbounds i32* %in, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %in, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32* %coeff, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %coeff, i64 %indvars.iv %1 = load i32* %arrayidx2, align 4 %mul = mul nsw i32 %1, %0 %add = add nsw i32 %mul, %sum.09 @@ -191,9 +191,9 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] %result.08 = phi i32 [ %and, %for.body ], [ -1, %entry ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32* %B, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv %1 = load i32* %arrayidx2, align 4 %add = add nsw i32 %1, %0 %and = and i32 %add, %result.08 @@ -223,9 +223,9 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] %result.08 = phi i32 [ %or, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32* %B, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv %1 = load i32* %arrayidx2, align 4 %add = add nsw i32 %1, %0 %or = or i32 %add, %result.08 @@ -255,9 +255,9 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] %result.08 = phi i32 [ %xor, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32* %B, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %B, i64 %indvars.iv %1 = load i32* %arrayidx2, align 4 %add = add nsw i32 %1, %0 %xor = xor i32 %add, %result.08 @@ -284,7 +284,7 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] %x.05 = phi i32 [ %sub, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %sub = sub nsw i32 %0, %x.05 %indvars.iv.next = add i64 %indvars.iv, 1 @@ -311,7 +311,7 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] %x.05 = phi i32 [ %sub, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 %sub = sub nsw i32 %x.05, %0 %indvars.iv.next = add i64 %indvars.iv, 1 @@ -335,9 +335,9 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.inc ] %sum.033 = phi float [ %S, %entry ], [ %sum.1, %for.inc ] - %arrayidx = getelementptr inbounds float* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %A, i64 %indvars.iv %0 = load float* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds float* %B, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %B, i64 %indvars.iv %1 = load float* %arrayidx2, align 4 %cmp3 = fcmp ogt float %0, %1 br i1 %cmp3, label %if.then, label %for.inc @@ -380,9 +380,9 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.inc ] %sum.033 = phi float [ %S, %entry ], [ %sum.1, %for.inc ] - %arrayidx = getelementptr inbounds float* %A, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %A, i64 %indvars.iv %0 = load float* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds float* %B, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %B, i64 %indvars.iv %1 = load float* %arrayidx2, align 4 %cmp3 = fcmp ogt float %0, %1 br i1 %cmp3, label %if.then, label %for.inc @@ -427,7 +427,7 @@ for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] %sum2.09 = phi float [ 0.000000e+00, %entry ], [ %add1, %for.body ] %sum.08 = phi float [ %S, %entry ], [ %add, %for.body ] - %arrayidx = getelementptr inbounds float* %B, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %B, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %add = fadd fast float %sum.08, %0 %add1 = fadd fast float %sum2.09, %add diff --git a/llvm/test/Transforms/LoopVectorize/reverse_induction.ll b/llvm/test/Transforms/LoopVectorize/reverse_induction.ll index d379606219a..943fb9e59a3 100644 --- a/llvm/test/Transforms/LoopVectorize/reverse_induction.ll +++ b/llvm/test/Transforms/LoopVectorize/reverse_induction.ll @@ -18,7 +18,7 @@ for.body: %i.06 = phi i32 [ 0, %entry ], [ %inc4, %for.body ] %redux5 = phi i32 [ 0, %entry ], [ %inc.redux, %for.body ] %add.i = add i64 %add.i7, -1 - %kind_.i = getelementptr inbounds i32* %ptr, i64 %add.i + %kind_.i = getelementptr inbounds i32, i32* %ptr, i64 %add.i %tmp.i1 = load i32* %kind_.i, align 4 %inc.redux = add i32 %tmp.i1, %redux5 %inc4 = add i32 %i.06, 1 @@ -41,7 +41,7 @@ for.body: %i.06 = phi i32 [ 0, %entry ], [ %inc4, %for.body ] %redux5 = phi i32 [ 0, %entry ], [ %inc.redux, %for.body ] %add.i = add i128 %add.i7, -1 - %kind_.i = getelementptr inbounds i32* %ptr, i128 %add.i + %kind_.i = getelementptr inbounds i32, i32* %ptr, i128 %add.i %tmp.i1 = load i32* %kind_.i, align 4 %inc.redux = add i32 %tmp.i1, %redux5 %inc4 = add i32 %i.06, 1 @@ -65,7 +65,7 @@ for.body: %i.06 = phi i32 [ 0, %entry ], [ %inc4, %for.body ] %redux5 = phi i32 [ 0, %entry ], [ %inc.redux, %for.body ] %add.i = add i16 %add.i7, -1 - %kind_.i = getelementptr inbounds i32* %ptr, i16 %add.i + %kind_.i = getelementptr inbounds i32, i32* %ptr, i16 %add.i %tmp.i1 = load i32* %kind_.i, align 4 %inc.redux = add i32 %tmp.i1, %redux5 %inc4 = add i32 %i.06, 1 @@ -109,7 +109,7 @@ while.body: %forward_induction.05 = phi i8 [ 0, %entry ], [ %inc, %while.body ] %inc = add i8 %forward_induction.05, 1 %conv = zext i8 %inc to i32 - %arrayidx = getelementptr inbounds [1024 x i32]* @a, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @a, i64 0, i64 %indvars.iv store i32 %conv, i32* %arrayidx, align 4 %indvars.iv.next = add i64 %indvars.iv, -1 %0 = trunc i64 %indvars.iv to i32 @@ -136,7 +136,7 @@ while.body: %forward_induction.05 = phi i8 [ -127, %entry ], [ %inc, %while.body ] %inc = add i8 %forward_induction.05, 1 %conv = sext i8 %inc to i32 - %arrayidx = getelementptr inbounds [1024 x i32]* @a, i64 0, i64 %indvars.iv + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32]* @a, i64 0, i64 %indvars.iv store i32 %conv, i32* %arrayidx, align 4 %indvars.iv.next = add i64 %indvars.iv, -1 %0 = trunc i64 %indvars.iv to i32 diff --git a/llvm/test/Transforms/LoopVectorize/reverse_iter.ll b/llvm/test/Transforms/LoopVectorize/reverse_iter.ll index 13172bb17ae..b0ecb2e0716 100644 --- a/llvm/test/Transforms/LoopVectorize/reverse_iter.ll +++ b/llvm/test/Transforms/LoopVectorize/reverse_iter.ll @@ -30,7 +30,7 @@ define i32 @foo(i32 %n, i32* nocapture %A) { %4 = trunc i64 %indvars.iv to i32 %5 = shl nsw i32 %4, 1 %6 = sext i32 %5 to i64 - %7 = getelementptr inbounds i32* %A, i64 %6 + %7 = getelementptr inbounds i32, i32* %A, i64 %6 %8 = load i32* %7, align 4 %9 = add nsw i32 %8, %sum.01 %indvars.iv.next = add i64 %indvars.iv, -1 diff --git a/llvm/test/Transforms/LoopVectorize/runtime-check-address-space.ll b/llvm/test/Transforms/LoopVectorize/runtime-check-address-space.ll index ec56f80144c..1d336477172 100644 --- a/llvm/test/Transforms/LoopVectorize/runtime-check-address-space.ll +++ b/llvm/test/Transforms/LoopVectorize/runtime-check-address-space.ll @@ -37,11 +37,11 @@ entry: for.body: ; preds = %entry, %for.body %i.02 = phi i32 [ %inc, %for.body ], [ 0, %entry ] %idxprom = sext i32 %i.02 to i64 - %arrayidx = getelementptr inbounds i32 addrspace(1)* %b, i64 %idxprom + %arrayidx = getelementptr inbounds i32, i32 addrspace(1)* %b, i64 %idxprom %0 = load i32 addrspace(1)* %arrayidx, align 4 %mul = mul nsw i32 %0, 3 %idxprom1 = sext i32 %i.02 to i64 - %arrayidx2 = getelementptr inbounds i32 addrspace(1)* %a, i64 %idxprom1 + %arrayidx2 = getelementptr inbounds i32, i32 addrspace(1)* %a, i64 %idxprom1 store i32 %mul, i32 addrspace(1)* %arrayidx2, align 4 %inc = add nsw i32 %i.02, 1 %cmp = icmp slt i32 %inc, %n @@ -64,11 +64,11 @@ entry: for.body: ; preds = %entry, %for.body %i.02 = phi i32 [ %inc, %for.body ], [ 0, %entry ] %idxprom = sext i32 %i.02 to i64 - %arrayidx = getelementptr inbounds i32 addrspace(1)* %b, i64 %idxprom + %arrayidx = getelementptr inbounds i32, i32 addrspace(1)* %b, i64 %idxprom %0 = load i32 addrspace(1)* %arrayidx, align 4 %mul = mul nsw i32 %0, 3 %idxprom1 = sext i32 %i.02 to i64 - %arrayidx2 = getelementptr inbounds i32* %a, i64 %idxprom1 + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %idxprom1 store i32 %mul, i32* %arrayidx2, align 4 %inc = add nsw i32 %i.02, 1 %cmp = icmp slt i32 %inc, %n @@ -91,11 +91,11 @@ entry: for.body: ; preds = %entry, %for.body %i.02 = phi i32 [ %inc, %for.body ], [ 0, %entry ] %idxprom = sext i32 %i.02 to i64 - %arrayidx = getelementptr inbounds i32* %b, i64 %idxprom + %arrayidx = getelementptr inbounds i32, i32* %b, i64 %idxprom %0 = load i32* %arrayidx, align 4 %mul = mul nsw i32 %0, 3 %idxprom1 = sext i32 %i.02 to i64 - %arrayidx2 = getelementptr inbounds i32 addrspace(1)* %a, i64 %idxprom1 + %arrayidx2 = getelementptr inbounds i32, i32 addrspace(1)* %a, i64 %idxprom1 store i32 %mul, i32 addrspace(1)* %arrayidx2, align 4 %inc = add nsw i32 %i.02, 1 %cmp = icmp slt i32 %inc, %n @@ -119,11 +119,11 @@ entry: for.body: ; preds = %entry, %for.body %i.02 = phi i32 [ %inc, %for.body ], [ 0, %entry ] %idxprom = sext i32 %i.02 to i64 - %arrayidx = getelementptr inbounds i32 addrspace(1)* %b, i64 %idxprom + %arrayidx = getelementptr inbounds i32, i32 addrspace(1)* %b, i64 %idxprom %0 = load i32 addrspace(1)* %arrayidx, align 4 %mul = mul nsw i32 %0, 3 %idxprom1 = sext i32 %i.02 to i64 - %arrayidx2 = getelementptr inbounds i32* %a, i64 %idxprom1 + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %idxprom1 store i32 %mul, i32* %arrayidx2, align 4 %inc = add nsw i32 %i.02, 1 %cmp = icmp slt i32 %inc, %n @@ -147,11 +147,11 @@ entry: for.body: ; preds = %entry, %for.body %i.02 = phi i32 [ %inc, %for.body ], [ 0, %entry ] %idxprom = sext i32 %i.02 to i64 - %arrayidx = getelementptr inbounds i32* %b, i64 %idxprom + %arrayidx = getelementptr inbounds i32, i32* %b, i64 %idxprom %0 = load i32* %arrayidx, align 4 %mul = mul nsw i32 %0, 3 %idxprom1 = sext i32 %i.02 to i64 - %arrayidx2 = getelementptr inbounds [1024 x i32] addrspace(1)* @g_as1, i64 0, i64 %idxprom1 + %arrayidx2 = getelementptr inbounds [1024 x i32], [1024 x i32] addrspace(1)* @g_as1, i64 0, i64 %idxprom1 store i32 %mul, i32 addrspace(1)* %arrayidx2, align 4 %inc = add nsw i32 %i.02, 1 %cmp = icmp slt i32 %inc, %n @@ -176,11 +176,11 @@ entry: for.body: ; preds = %entry, %for.body %i.02 = phi i32 [ %inc, %for.body ], [ 0, %entry ] %idxprom = sext i32 %i.02 to i64 - %arrayidx = getelementptr inbounds [1024 x i32] addrspace(1)* @g_as1, i64 0, i64 %idxprom + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32] addrspace(1)* @g_as1, i64 0, i64 %idxprom %0 = load i32 addrspace(1)* %arrayidx, align 4 %mul = mul nsw i32 %0, 3 %idxprom1 = sext i32 %i.02 to i64 - %arrayidx2 = getelementptr inbounds i32* %b, i64 %idxprom1 + %arrayidx2 = getelementptr inbounds i32, i32* %b, i64 %idxprom1 store i32 %mul, i32* %arrayidx2, align 4 %inc = add nsw i32 %i.02, 1 %cmp = icmp slt i32 %inc, %n @@ -204,11 +204,11 @@ entry: for.body: ; preds = %entry, %for.body %i.02 = phi i32 [ %inc, %for.body ], [ 0, %entry ] %idxprom = sext i32 %i.02 to i64 - %arrayidx = getelementptr inbounds [1024 x i32] addrspace(2)* @q_as2, i64 0, i64 %idxprom + %arrayidx = getelementptr inbounds [1024 x i32], [1024 x i32] addrspace(2)* @q_as2, i64 0, i64 %idxprom %0 = load i32 addrspace(2)* %arrayidx, align 4 %mul = mul nsw i32 %0, 3 %idxprom1 = sext i32 %i.02 to i64 - %arrayidx2 = getelementptr inbounds [1024 x i32] addrspace(1)* @g_as1, i64 0, i64 %idxprom1 + %arrayidx2 = getelementptr inbounds [1024 x i32], [1024 x i32] addrspace(1)* @g_as1, i64 0, i64 %idxprom1 store i32 %mul, i32 addrspace(1)* %arrayidx2, align 4 %inc = add nsw i32 %i.02, 1 %cmp = icmp slt i32 %inc, %n diff --git a/llvm/test/Transforms/LoopVectorize/runtime-check-readonly-address-space.ll b/llvm/test/Transforms/LoopVectorize/runtime-check-readonly-address-space.ll index 12ba3ce6c66..bc3345bf145 100644 --- a/llvm/test/Transforms/LoopVectorize/runtime-check-readonly-address-space.ll +++ b/llvm/test/Transforms/LoopVectorize/runtime-check-readonly-address-space.ll @@ -14,12 +14,12 @@ entry: for.body: ; preds = %entry, %for.body %i.01 = phi i64 [ 0, %entry ], [ %inc, %for.body ] - %arrayidx = getelementptr inbounds i32 addrspace(1)* %b, i64 %i.01 + %arrayidx = getelementptr inbounds i32, i32 addrspace(1)* %b, i64 %i.01 %0 = load i32 addrspace(1)* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds i32 addrspace(1)* %c, i64 %i.01 + %arrayidx1 = getelementptr inbounds i32, i32 addrspace(1)* %c, i64 %i.01 %1 = load i32 addrspace(1)* %arrayidx1, align 4 %add = add nsw i32 %0, %1 - %arrayidx2 = getelementptr inbounds i32 addrspace(1)* %a, i64 %i.01 + %arrayidx2 = getelementptr inbounds i32, i32 addrspace(1)* %a, i64 %i.01 store i32 %add, i32 addrspace(1)* %arrayidx2, align 4 %inc = add i64 %i.01, 1 %cmp = icmp ult i64 %inc, 200 @@ -39,12 +39,12 @@ entry: for.body: ; preds = %entry, %for.body %i.01 = phi i64 [ 0, %entry ], [ %inc, %for.body ] - %arrayidx = getelementptr inbounds i32* %b, i64 %i.01 + %arrayidx = getelementptr inbounds i32, i32* %b, i64 %i.01 %0 = load i32* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds i32* %c, i64 %i.01 + %arrayidx1 = getelementptr inbounds i32, i32* %c, i64 %i.01 %1 = load i32* %arrayidx1, align 4 %add = add nsw i32 %0, %1 - %arrayidx2 = getelementptr inbounds i32 addrspace(1)* %a, i64 %i.01 + %arrayidx2 = getelementptr inbounds i32, i32 addrspace(1)* %a, i64 %i.01 store i32 %add, i32 addrspace(1)* %arrayidx2, align 4 %inc = add i64 %i.01, 1 %cmp = icmp ult i64 %inc, 200 @@ -64,12 +64,12 @@ entry: for.body: ; preds = %entry, %for.body %i.01 = phi i64 [ 0, %entry ], [ %inc, %for.body ] - %arrayidx = getelementptr inbounds i32 addrspace(1)* %b, i64 %i.01 + %arrayidx = getelementptr inbounds i32, i32 addrspace(1)* %b, i64 %i.01 %0 = load i32 addrspace(1)* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds i32* %c, i64 %i.01 + %arrayidx1 = getelementptr inbounds i32, i32* %c, i64 %i.01 %1 = load i32* %arrayidx1, align 4 %add = add nsw i32 %0, %1 - %arrayidx2 = getelementptr inbounds i32* %a, i64 %i.01 + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %i.01 store i32 %add, i32* %arrayidx2, align 4 %inc = add i64 %i.01, 1 %cmp = icmp ult i64 %inc, 200 @@ -89,12 +89,12 @@ entry: for.body: ; preds = %entry, %for.body %i.01 = phi i64 [ 0, %entry ], [ %inc, %for.body ] - %arrayidx = getelementptr inbounds i32 addrspace(1)* %b, i64 %i.01 + %arrayidx = getelementptr inbounds i32, i32 addrspace(1)* %b, i64 %i.01 %0 = load i32 addrspace(1)* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds i32 addrspace(1)* %c, i64 %i.01 + %arrayidx1 = getelementptr inbounds i32, i32 addrspace(1)* %c, i64 %i.01 %1 = load i32 addrspace(1)* %arrayidx1, align 4 %add = add nsw i32 %0, %1 - %arrayidx2 = getelementptr inbounds i32* %a, i64 %i.01 + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %i.01 store i32 %add, i32* %arrayidx2, align 4 %inc = add i64 %i.01, 1 %cmp = icmp ult i64 %inc, 200 @@ -114,12 +114,12 @@ entry: for.body: ; preds = %entry, %for.body %i.01 = phi i64 [ 0, %entry ], [ %inc, %for.body ] - %arrayidx = getelementptr inbounds i32 addrspace(1)* %b, i64 %i.01 + %arrayidx = getelementptr inbounds i32, i32 addrspace(1)* %b, i64 %i.01 %0 = load i32 addrspace(1)* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds i32 addrspace(2)* %c, i64 %i.01 + %arrayidx1 = getelementptr inbounds i32, i32 addrspace(2)* %c, i64 %i.01 %1 = load i32 addrspace(2)* %arrayidx1, align 4 %add = add nsw i32 %0, %1 - %arrayidx2 = getelementptr inbounds i32* %a, i64 %i.01 + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %i.01 store i32 %add, i32* %arrayidx2, align 4 %inc = add i64 %i.01, 1 %cmp = icmp ult i64 %inc, 200 diff --git a/llvm/test/Transforms/LoopVectorize/runtime-check-readonly.ll b/llvm/test/Transforms/LoopVectorize/runtime-check-readonly.ll index 9d02a6accd6..75a0d56dc6f 100644 --- a/llvm/test/Transforms/LoopVectorize/runtime-check-readonly.ll +++ b/llvm/test/Transforms/LoopVectorize/runtime-check-readonly.ll @@ -22,12 +22,12 @@ entry: for.body: %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds i32* %B, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %B, i64 %indvars.iv %0 = load i32* %arrayidx, align 4 - %arrayidx2 = getelementptr inbounds i32* %C, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %C, i64 %indvars.iv %1 = load i32* %arrayidx2, align 4 %add = add nsw i32 %1, %0 - %arrayidx4 = getelementptr inbounds i32* %A, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds i32, i32* %A, i64 %indvars.iv store i32 %add, i32* %arrayidx4, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/runtime-check.ll b/llvm/test/Transforms/LoopVectorize/runtime-check.ll index 1edafb4ed7a..483d35a31dc 100644 --- a/llvm/test/Transforms/LoopVectorize/runtime-check.ll +++ b/llvm/test/Transforms/LoopVectorize/runtime-check.ll @@ -21,10 +21,10 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %b, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %b, i64 %indvars.iv %0 = load float* %arrayidx, align 4 %mul = fmul float %0, 3.000000e+00 - %arrayidx2 = getelementptr inbounds float* %a, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds float, float* %a, i64 %indvars.iv store float %mul, float* %arrayidx2, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -47,10 +47,10 @@ entry: for.body: %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] %ind.sum = add i64 %iv, %offset - %arr.idx = getelementptr inbounds float* %a, i64 %ind.sum + %arr.idx = getelementptr inbounds float, float* %a, i64 %ind.sum %l1 = load float* %arr.idx, align 4 %ind.sum2 = add i64 %iv, %offset2 - %arr.idx2 = getelementptr inbounds float* %a, i64 %ind.sum2 + %arr.idx2 = getelementptr inbounds float, float* %a, i64 %ind.sum2 %l2 = load float* %arr.idx2, align 4 %m = fmul fast float %b, %l2 %ad = fadd fast float %l1, %m diff --git a/llvm/test/Transforms/LoopVectorize/runtime-limit.ll b/llvm/test/Transforms/LoopVectorize/runtime-limit.ll index 324949dafd0..04b44cd9f86 100644 --- a/llvm/test/Transforms/LoopVectorize/runtime-limit.ll +++ b/llvm/test/Transforms/LoopVectorize/runtime-limit.ll @@ -13,21 +13,21 @@ entry: for.body: ; preds = %for.body, %entry %i.016 = phi i64 [ 0, %entry ], [ %inc, %for.body ] - %arrayidx = getelementptr inbounds i32* %A, i64 %i.016 + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %i.016 %0 = load i32* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds i32* %B, i64 %i.016 + %arrayidx1 = getelementptr inbounds i32, i32* %B, i64 %i.016 %1 = load i32* %arrayidx1, align 4 %add = add nsw i32 %1, %0 - %arrayidx2 = getelementptr inbounds i32* %C, i64 %i.016 + %arrayidx2 = getelementptr inbounds i32, i32* %C, i64 %i.016 %2 = load i32* %arrayidx2, align 4 %add3 = add nsw i32 %add, %2 - %arrayidx4 = getelementptr inbounds i32* %E, i64 %i.016 + %arrayidx4 = getelementptr inbounds i32, i32* %E, i64 %i.016 %3 = load i32* %arrayidx4, align 4 %add5 = add nsw i32 %add3, %3 - %arrayidx6 = getelementptr inbounds i32* %F, i64 %i.016 + %arrayidx6 = getelementptr inbounds i32, i32* %F, i64 %i.016 %4 = load i32* %arrayidx6, align 4 %add7 = add nsw i32 %add5, %4 - %arrayidx8 = getelementptr inbounds i32* %out, i64 %i.016 + %arrayidx8 = getelementptr inbounds i32, i32* %out, i64 %i.016 store i32 %add7, i32* %arrayidx8, align 4 %inc = add i64 %i.016, 1 %exitcond = icmp eq i64 %inc, 256 @@ -47,21 +47,21 @@ entry: for.body: ; preds = %for.body, %entry %i.037 = phi i64 [ 0, %entry ], [ %inc, %for.body ] - %arrayidx = getelementptr inbounds i32* %A, i64 %i.037 + %arrayidx = getelementptr inbounds i32, i32* %A, i64 %i.037 %0 = load i32* %arrayidx, align 4 - %arrayidx1 = getelementptr inbounds i32* %B, i64 %i.037 + %arrayidx1 = getelementptr inbounds i32, i32* %B, i64 %i.037 %1 = load i32* %arrayidx1, align 4 %add = add nsw i32 %1, %0 - %arrayidx2 = getelementptr inbounds i32* %C, i64 %i.037 + %arrayidx2 = getelementptr inbounds i32, i32* %C, i64 %i.037 %2 = load i32* %arrayidx2, align 4 %add3 = add nsw i32 %add, %2 - %arrayidx4 = getelementptr inbounds i32* %E, i64 %i.037 + %arrayidx4 = getelementptr inbounds i32, i32* %E, i64 %i.037 %3 = load i32* %arrayidx4, align 4 %add5 = add nsw i32 %add3, %3 - %arrayidx6 = getelementptr inbounds i32* %F, i64 %i.037 + %arrayidx6 = getelementptr inbounds i32, i32* %F, i64 %i.037 %4 = load i32* %arrayidx6, align 4 %add7 = add nsw i32 %add5, %4 - %arrayidx8 = getelementptr inbounds i32* %out, i64 %i.037 + %arrayidx8 = getelementptr inbounds i32, i32* %out, i64 %i.037 store i32 %add7, i32* %arrayidx8, align 4 %5 = load i32* %arrayidx, align 4 %6 = load i32* %arrayidx1, align 4 @@ -72,7 +72,7 @@ for.body: ; preds = %for.body, %entry %add15 = add nsw i32 %add13, %8 %9 = load i32* %arrayidx6, align 4 %add17 = add nsw i32 %add15, %9 - %arrayidx18 = getelementptr inbounds i32* %out2, i64 %i.037 + %arrayidx18 = getelementptr inbounds i32, i32* %out2, i64 %i.037 store i32 %add17, i32* %arrayidx18, align 4 %inc = add i64 %i.037, 1 %exitcond = icmp eq i64 %inc, 256 diff --git a/llvm/test/Transforms/LoopVectorize/safegep.ll b/llvm/test/Transforms/LoopVectorize/safegep.ll index f853afd2bba..1003759541e 100644 --- a/llvm/test/Transforms/LoopVectorize/safegep.ll +++ b/llvm/test/Transforms/LoopVectorize/safegep.ll @@ -17,9 +17,9 @@ entry: "<bb 3>": %i_15 = phi i32 [ 0, %entry ], [ %i_19, %"<bb 3>" ] - %pp3 = getelementptr float* %A, i32 %i_15 + %pp3 = getelementptr float, float* %A, i32 %i_15 %D.1396_10 = load float* %pp3, align 4 - %pp24 = getelementptr float* %B, i32 %i_15 + %pp24 = getelementptr float, float* %B, i32 %i_15 %D.1398_15 = load float* %pp24, align 4 %D.1399_17 = fadd float %D.1398_15, %K %D.1400_18 = fmul float %D.1396_10, %D.1399_17 @@ -43,9 +43,9 @@ entry: "<bb 3>": %i_15 = phi i32 [ 0, %entry ], [ %i_19, %"<bb 3>" ] - %pp3 = getelementptr float addrspace(5) * %A, i32 %i_15 + %pp3 = getelementptr float, float addrspace(5) * %A, i32 %i_15 %D.1396_10 = load float addrspace(5) * %pp3, align 4 - %pp24 = getelementptr float* %B, i32 %i_15 + %pp24 = getelementptr float, float* %B, i32 %i_15 %D.1398_15 = load float* %pp24, align 4 %D.1399_17 = fadd float %D.1398_15, %K %D.1400_18 = fmul float %D.1396_10, %D.1399_17 diff --git a/llvm/test/Transforms/LoopVectorize/same-base-access.ll b/llvm/test/Transforms/LoopVectorize/same-base-access.ll index d19458f4aa9..fe94dd14b68 100644 --- a/llvm/test/Transforms/LoopVectorize/same-base-access.ll +++ b/llvm/test/Transforms/LoopVectorize/same-base-access.ll @@ -36,18 +36,18 @@ define i32 @kernel11(double* %x, double* %y, i32 %n) nounwind uwtable ssp { %10 = sub nsw i32 %9, 1 %11 = sext i32 %10 to i64 %12 = load double** %1, align 8 - %13 = getelementptr inbounds double* %12, i64 %11 + %13 = getelementptr inbounds double, double* %12, i64 %11 %14 = load double* %13, align 8 %15 = load i32* %k, align 4 %16 = sext i32 %15 to i64 %17 = load double** %2, align 8 - %18 = getelementptr inbounds double* %17, i64 %16 + %18 = getelementptr inbounds double, double* %17, i64 %16 %19 = load double* %18, align 8 %20 = fadd double %14, %19 %21 = load i32* %k, align 4 %22 = sext i32 %21 to i64 %23 = load double** %1, align 8 - %24 = getelementptr inbounds double* %23, i64 %22 + %24 = getelementptr inbounds double, double* %23, i64 %22 store double %20, double* %24, align 8 br label %25 @@ -86,7 +86,7 @@ define i32 @func2(i32* nocapture %a) nounwind uwtable ssp { ; <label>:1 ; preds = %7, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %7 ] %2 = mul nsw i64 %indvars.iv, 7 - %3 = getelementptr inbounds i32* %a, i64 %2 + %3 = getelementptr inbounds i32, i32* %a, i64 %2 %4 = load i32* %3, align 4 %5 = icmp sgt i32 %4, 3 br i1 %5, label %6, label %7 diff --git a/llvm/test/Transforms/LoopVectorize/scalar-select.ll b/llvm/test/Transforms/LoopVectorize/scalar-select.ll index 6b37cc23ae3..b10e80e21ce 100644 --- a/llvm/test/Transforms/LoopVectorize/scalar-select.ll +++ b/llvm/test/Transforms/LoopVectorize/scalar-select.ll @@ -18,12 +18,12 @@ define void @example1(i1 %cond) nounwind uwtable ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %indvars.iv + %4 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = add nsw i32 %5, %3 - %7 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %7 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv %sel = select i1 %cond, i32 %6, i32 zeroinitializer store i32 %sel, i32* %7, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/scev-exitlim-crash.ll b/llvm/test/Transforms/LoopVectorize/scev-exitlim-crash.ll index 51547718077..58abcb0d350 100644 --- a/llvm/test/Transforms/LoopVectorize/scev-exitlim-crash.ll +++ b/llvm/test/Transforms/LoopVectorize/scev-exitlim-crash.ll @@ -51,7 +51,7 @@ for.body8: ; preds = %for.body8.lr.ph, %f %add10 = add i32 %add9, %2 store i32 %add10, i32* @f, align 4, !tbaa !5 %idx.ext = sext i32 %add10 to i64 - %add.ptr = getelementptr inbounds i32* @a, i64 %idx.ext + %add.ptr = getelementptr inbounds i32, i32* @a, i64 %idx.ext %tobool129 = icmp eq i32 %i.213, 0 br i1 %tobool129, label %for.inc19, label %for.body13.lr.ph @@ -62,9 +62,9 @@ for.body13.lr.ph: ; preds = %for.body8 for.body13: ; preds = %for.body13.lr.ph, %for.body13 %indvars.iv = phi i64 [ %3, %for.body13.lr.ph ], [ %indvars.iv.next, %for.body13 ] %add.ptr.sum = add i64 %idx.ext, %indvars.iv - %arrayidx = getelementptr inbounds i32* @a, i64 %add.ptr.sum + %arrayidx = getelementptr inbounds i32, i32* @a, i64 %add.ptr.sum %4 = load i32* %arrayidx, align 4, !tbaa !5 - %arrayidx15 = getelementptr inbounds i32* %0, i64 %indvars.iv + %arrayidx15 = getelementptr inbounds i32, i32* %0, i64 %indvars.iv store i32 %4, i32* %arrayidx15, align 4, !tbaa !5 %indvars.iv.next = add i64 %indvars.iv, 1 %5 = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/simple-unroll.ll b/llvm/test/Transforms/LoopVectorize/simple-unroll.ll index 8bf680ac7c5..c925a053c13 100644 --- a/llvm/test/Transforms/LoopVectorize/simple-unroll.ll +++ b/llvm/test/Transforms/LoopVectorize/simple-unroll.ll @@ -23,7 +23,7 @@ define void @inc(i32 %n) nounwind uwtable noinline ssp { .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 %4 = trunc i64 %indvars.iv to i32 %5 = add nsw i32 %3, %4 diff --git a/llvm/test/Transforms/LoopVectorize/small-loop.ll b/llvm/test/Transforms/LoopVectorize/small-loop.ll index 1d30102c3f9..bc6e21f8118 100644 --- a/llvm/test/Transforms/LoopVectorize/small-loop.ll +++ b/llvm/test/Transforms/LoopVectorize/small-loop.ll @@ -15,12 +15,12 @@ define void @example1() nounwind uwtable ssp { ; <label>:1 ; preds = %1, %0 %indvars.iv = phi i64 [ 0, %0 ], [ %indvars.iv.next, %1 ] - %2 = getelementptr inbounds [2048 x i32]* @b, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @b, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 - %4 = getelementptr inbounds [2048 x i32]* @c, i64 0, i64 %indvars.iv + %4 = getelementptr inbounds [2048 x i32], [2048 x i32]* @c, i64 0, i64 %indvars.iv %5 = load i32* %4, align 4 %6 = add nsw i32 %5, %3 - %7 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %7 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv store i32 %6, i32* %7, align 4 %indvars.iv.next = add i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/start-non-zero.ll b/llvm/test/Transforms/LoopVectorize/start-non-zero.ll index cc474945a9d..12c15a9b3d8 100644 --- a/llvm/test/Transforms/LoopVectorize/start-non-zero.ll +++ b/llvm/test/Transforms/LoopVectorize/start-non-zero.ll @@ -17,7 +17,7 @@ for.body.lr.ph: ; preds = %entry 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* %a, i64 %indvars.iv + %arrayidx = getelementptr inbounds i32, i32* %a, i64 %indvars.iv %1 = load i32* %arrayidx, align 4 %mul = mul nuw i32 %1, 333 store i32 %mul, i32* %arrayidx, align 4 diff --git a/llvm/test/Transforms/LoopVectorize/store-shuffle-bug.ll b/llvm/test/Transforms/LoopVectorize/store-shuffle-bug.ll index 6d3d11349b1..2512d4f2f41 100644 --- a/llvm/test/Transforms/LoopVectorize/store-shuffle-bug.ll +++ b/llvm/test/Transforms/LoopVectorize/store-shuffle-bug.ll @@ -30,13 +30,13 @@ entry: for.body: %indvars.iv = phi i64 [ 93, %entry ], [ %indvars.iv.next, %for.body ] %0 = add i64 %indvars.iv, 1 - %arrayidx = getelementptr inbounds [100 x i32]* @uf, i64 0, i64 %0 - %arrayidx3 = getelementptr inbounds [100 x i32]* @xi, i64 0, i64 %0 + %arrayidx = getelementptr inbounds [100 x i32], [100 x i32]* @uf, i64 0, i64 %0 + %arrayidx3 = getelementptr inbounds [100 x i32], [100 x i32]* @xi, i64 0, i64 %0 %1 = load i32* %arrayidx3, align 4 %2 = load i32* %arrayidx, align 4 %add4 = add nsw i32 %2, %1 store i32 %add4, i32* %arrayidx, align 4 - %arrayidx7 = getelementptr inbounds [100 x i32]* @q, i64 0, i64 %0 + %arrayidx7 = getelementptr inbounds [100 x i32], [100 x i32]* @q, i64 0, i64 %0 %3 = load i32* %arrayidx7, align 4 %add8 = add nsw i32 %add4, %3 store i32 %add8, i32* %arrayidx, align 4 diff --git a/llvm/test/Transforms/LoopVectorize/struct_access.ll b/llvm/test/Transforms/LoopVectorize/struct_access.ll index cf6f325ae30..0d68e2d59a1 100644 --- a/llvm/test/Transforms/LoopVectorize/struct_access.ll +++ b/llvm/test/Transforms/LoopVectorize/struct_access.ll @@ -32,7 +32,7 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] %sum.05 = phi i32 [ %add, %for.body ], [ 0, %entry ] - %x = getelementptr inbounds %struct.coordinate* %A, i64 %indvars.iv, i32 0 + %x = getelementptr inbounds %struct.coordinate, %struct.coordinate* %A, i64 %indvars.iv, i32 0 %0 = load i32* %x, align 4 %add = add nsw i32 %0, %sum.05 %indvars.iv.next = add i64 %indvars.iv, 1 @@ -74,7 +74,7 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] %sum.05 = phi i32 [ %add, %for.body ], [ 0, %entry ] - %x = getelementptr inbounds %struct.lit* %A, i64 %indvars.iv, i32 0 + %x = getelementptr inbounds %struct.lit, %struct.lit* %A, i64 %indvars.iv, i32 0 %0 = load i32* %x, align 4 %add = add nsw i32 %0, %sum.05 %indvars.iv.next = add i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/tbaa-nodep.ll b/llvm/test/Transforms/LoopVectorize/tbaa-nodep.ll index be3e74f5d68..8469a9d95c6 100644 --- a/llvm/test/Transforms/LoopVectorize/tbaa-nodep.ll +++ b/llvm/test/Transforms/LoopVectorize/tbaa-nodep.ll @@ -10,10 +10,10 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds float* %b, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %b, i64 %indvars.iv %0 = load float* %arrayidx, align 4, !tbaa !0 %conv = fptosi float %0 to i32 - %arrayidx2 = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %indvars.iv store i32 %conv, i32* %arrayidx2, align 4, !tbaa !4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 1600 @@ -51,13 +51,13 @@ entry: for.body: ; preds = %for.body, %entry %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] - %arrayidx = getelementptr inbounds float* %b, i64 %indvars.iv + %arrayidx = getelementptr inbounds float, float* %b, i64 %indvars.iv %0 = load float* %arrayidx, align 4, !tbaa !0 - %arrayidx2 = getelementptr inbounds i32* %a, i64 %indvars.iv + %arrayidx2 = getelementptr inbounds i32, i32* %a, i64 %indvars.iv %1 = load i32* %arrayidx2, align 4, !tbaa !4 %conv = sitofp i32 %1 to float %mul = fmul float %0, %conv - %arrayidx4 = getelementptr inbounds float* %c, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds float, float* %c, i64 %indvars.iv store float %mul, float* %arrayidx4, align 4, !tbaa !0 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, 1600 diff --git a/llvm/test/Transforms/LoopVectorize/undef-inst-bug.ll b/llvm/test/Transforms/LoopVectorize/undef-inst-bug.ll index 0444fe894ed..e9d053cf0be 100644 --- a/llvm/test/Transforms/LoopVectorize/undef-inst-bug.ll +++ b/llvm/test/Transforms/LoopVectorize/undef-inst-bug.ll @@ -24,7 +24,7 @@ for.body: ; Loop invariant anchored in loop. %idxprom21 = zext i32 undef to i64 - %arrayidx23 = getelementptr inbounds [100 x [100 x i32]]* undef, i64 0, i64 %idxprom21, i64 %indvars.iv17 + %arrayidx23 = getelementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* undef, i64 0, i64 %idxprom21, i64 %indvars.iv17 store i32 undef, i32* %arrayidx23, align 4 %indvars.next= add i64 %indvars.iv17, -1 %0 = trunc i64 %indvars.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/unroll_novec.ll b/llvm/test/Transforms/LoopVectorize/unroll_novec.ll index 257b4e63a91..fc23d3d98ef 100644 --- a/llvm/test/Transforms/LoopVectorize/unroll_novec.ll +++ b/llvm/test/Transforms/LoopVectorize/unroll_novec.ll @@ -33,7 +33,7 @@ define void @inc(i32 %n) nounwind uwtable noinline ssp { .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds [2048 x i32]* @a, i64 0, i64 %indvars.iv + %2 = getelementptr inbounds [2048 x i32], [2048 x i32]* @a, i64 0, i64 %indvars.iv %3 = load i32* %2, align 4 %4 = trunc i64 %indvars.iv to i32 %5 = add nsw i32 %3, %4 diff --git a/llvm/test/Transforms/LoopVectorize/unsized-pointee-crash.ll b/llvm/test/Transforms/LoopVectorize/unsized-pointee-crash.ll index 5cc98378b95..7763c9c6842 100644 --- a/llvm/test/Transforms/LoopVectorize/unsized-pointee-crash.ll +++ b/llvm/test/Transforms/LoopVectorize/unsized-pointee-crash.ll @@ -11,10 +11,10 @@ for.body: %b.05 = phi i32 (...)* [ undef, %entry ], [ %1, %for.body ] %a.04 = phi i32 [ 0, %entry ], [ %inc, %for.body ] %0 = bitcast i32 (...)* %b.05 to i8* - %add.ptr = getelementptr i8* %0, i64 1 + %add.ptr = getelementptr i8, i8* %0, i64 1 %1 = bitcast i8* %add.ptr to i32 (...)* ; CHECK: %[[cst:.*]] = bitcast i32 (...)* {{.*}} to i8* -; CHECK-NEXT: %[[gep:.*]] = getelementptr i8* %[[cst]], i64 1 +; CHECK-NEXT: %[[gep:.*]] = getelementptr i8, i8* %[[cst]], i64 1 %inc = add nsw i32 %a.04, 1 %exitcond = icmp eq i32 %a.04, 63 br i1 %exitcond, label %for.end, label %for.body diff --git a/llvm/test/Transforms/LoopVectorize/value-ptr-bug.ll b/llvm/test/Transforms/LoopVectorize/value-ptr-bug.ll index 7fb9095b7c1..4fb0318b3d5 100644 --- a/llvm/test/Transforms/LoopVectorize/value-ptr-bug.ll +++ b/llvm/test/Transforms/LoopVectorize/value-ptr-bug.ll @@ -19,8 +19,8 @@ entry: loop: %inc = phi i32 [ %sub267, %entry ], [ %add, %loop] %ext.inc = sext i32 %inc to i64 - %add.ptr265 = getelementptr inbounds i32* %ptr265, i64 %ext.inc - %add.ptr266 = getelementptr inbounds i32* %ptr266, i64 %ext.inc + %add.ptr265 = getelementptr inbounds i32, i32* %ptr265, i64 %ext.inc + %add.ptr266 = getelementptr inbounds i32, i32* %ptr266, i64 %ext.inc %add = add i32 %inc, 9 %cmp = icmp slt i32 %add, 140 br i1 %cmp, label %block1, label %loop @@ -37,9 +37,9 @@ do.body272: %row_width.5 = phi i32 [ %sub267.lcssa, %block1 ], [ %dec, %do.body272 ] %sp.4 = phi i8* [ %tmp30, %block1 ], [ %incdec.ptr273, %do.body272 ] %dp.addr.4 = phi i8* [ %tmp29, %block1 ], [ %incdec.ptr274, %do.body272 ] - %incdec.ptr273 = getelementptr inbounds i8* %sp.4, i64 1 + %incdec.ptr273 = getelementptr inbounds i8, i8* %sp.4, i64 1 %tmp31 = load i8* %sp.4, align 1 - %incdec.ptr274 = getelementptr inbounds i8* %dp.addr.4, i64 1 + %incdec.ptr274 = getelementptr inbounds i8, i8* %dp.addr.4, i64 1 store i8 %tmp31, i8* %dp.addr.4, align 1 %dec = add i32 %row_width.5, -1 %cmp276 = icmp eq i32 %dec, 0 diff --git a/llvm/test/Transforms/LoopVectorize/vect.omp.persistence.ll b/llvm/test/Transforms/LoopVectorize/vect.omp.persistence.ll index ea7be9c106b..4ad34ada207 100644 --- a/llvm/test/Transforms/LoopVectorize/vect.omp.persistence.ll +++ b/llvm/test/Transforms/LoopVectorize/vect.omp.persistence.ll @@ -45,13 +45,13 @@ for.header: for.body: %0 = add nsw i64 %indvars.iv, -5 - %arrayidx = getelementptr inbounds float* %a, i64 %0 + %arrayidx = getelementptr inbounds float, float* %a, i64 %0 %1 = load float* %arrayidx, align 4, !llvm.mem.parallel_loop_access !1 %2 = add nsw i64 %indvars.iv, 2 - %arrayidx2 = getelementptr inbounds float* %a, i64 %2 + %arrayidx2 = getelementptr inbounds float, float* %a, i64 %2 %3 = load float* %arrayidx2, align 4, !llvm.mem.parallel_loop_access !1 %mul = fmul float %1, %3 - %arrayidx4 = getelementptr inbounds float* %a, i64 %indvars.iv + %arrayidx4 = getelementptr inbounds float, float* %a, i64 %indvars.iv store float %mul, float* %arrayidx4, align 4, !llvm.mem.parallel_loop_access !1 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 diff --git a/llvm/test/Transforms/LoopVectorize/vect.stats.ll b/llvm/test/Transforms/LoopVectorize/vect.stats.ll index c5b6e64bc9f..4a748f28b7a 100644 --- a/llvm/test/Transforms/LoopVectorize/vect.stats.ll +++ b/llvm/test/Transforms/LoopVectorize/vect.stats.ll @@ -20,7 +20,7 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv2 = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] - %arrayidx = getelementptr inbounds float* %a, i64 %indvars.iv2 + %arrayidx = getelementptr inbounds float, float* %a, i64 %indvars.iv2 %0 = load float* %arrayidx, align 4 %mul = fmul float %0, %0 store float %mul, float* %arrayidx, align 4 @@ -42,13 +42,13 @@ entry: for.body: ; preds = %entry, %for.body %indvars.iv2 = phi i64 [ %indvars.iv.next, %for.body ], [ 0, %entry ] %0 = add nsw i64 %indvars.iv2, -5 - %arrayidx = getelementptr inbounds float* %a, i64 %0 + %arrayidx = getelementptr inbounds float, float* %a, i64 %0 %1 = load float* %arrayidx, align 4 %2 = add nsw i64 %indvars.iv2, 2 - %arrayidx2 = getelementptr inbounds float* %a, i64 %2 + %arrayidx2 = getelementptr inbounds float, float* %a, i64 %2 %3 = load float* %arrayidx2, align 4 %mul = fmul float %1, %3 - %arrayidx4 = getelementptr inbounds float* %a, i64 %indvars.iv2 + %arrayidx4 = getelementptr inbounds float, float* %a, i64 %indvars.iv2 store float %mul, float* %arrayidx4, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv2, 1 %cmp2 = icmp sgt i64 %indvars.iv.next, %size diff --git a/llvm/test/Transforms/LoopVectorize/vectorize-once.ll b/llvm/test/Transforms/LoopVectorize/vectorize-once.ll index a9b2a53f74b..f5f39cc1f5b 100644 --- a/llvm/test/Transforms/LoopVectorize/vectorize-once.ll +++ b/llvm/test/Transforms/LoopVectorize/vectorize-once.ll @@ -22,7 +22,7 @@ target triple = "x86_64-apple-macosx10.8.0" define i32 @_Z4foo1Pii(i32* %A, i32 %n) #0 { entry: %idx.ext = sext i32 %n to i64 - %add.ptr = getelementptr inbounds i32* %A, i64 %idx.ext + %add.ptr = getelementptr inbounds i32, i32* %A, i64 %idx.ext %cmp3.i = icmp eq i32 %n, 0 br i1 %cmp3.i, label %_ZSt10accumulateIPiiET0_T_S2_S1_.exit, label %for.body.i @@ -31,7 +31,7 @@ for.body.i: ; preds = %entry, %for.body.i %__first.addr.04.i = phi i32* [ %incdec.ptr.i, %for.body.i ], [ %A, %entry ] %0 = load i32* %__first.addr.04.i, align 4 %add.i = add nsw i32 %0, %__init.addr.05.i - %incdec.ptr.i = getelementptr inbounds i32* %__first.addr.04.i, i64 1 + %incdec.ptr.i = getelementptr inbounds i32, i32* %__first.addr.04.i, i64 1 %cmp.i = icmp eq i32* %incdec.ptr.i, %add.ptr br i1 %cmp.i, label %_ZSt10accumulateIPiiET0_T_S2_S1_.exit, label %for.body.i @@ -48,7 +48,7 @@ _ZSt10accumulateIPiiET0_T_S2_S1_.exit: ; preds = %for.body.i, %entry define i32 @_Z4foo2Pii(i32* %A, i32 %n) #0 { entry: %idx.ext = sext i32 %n to i64 - %add.ptr = getelementptr inbounds i32* %A, i64 %idx.ext + %add.ptr = getelementptr inbounds i32, i32* %A, i64 %idx.ext %cmp3.i = icmp eq i32 %n, 0 br i1 %cmp3.i, label %_ZSt10accumulateIPiiET0_T_S2_S1_.exit, label %for.body.i @@ -57,7 +57,7 @@ for.body.i: ; preds = %entry, %for.body.i %__first.addr.04.i = phi i32* [ %incdec.ptr.i, %for.body.i ], [ %A, %entry ] %0 = load i32* %__first.addr.04.i, align 4 %add.i = add nsw i32 %0, %__init.addr.05.i - %incdec.ptr.i = getelementptr inbounds i32* %__first.addr.04.i, i64 1 + %incdec.ptr.i = getelementptr inbounds i32, i32* %__first.addr.04.i, i64 1 %cmp.i = icmp eq i32* %incdec.ptr.i, %add.ptr br i1 %cmp.i, label %_ZSt10accumulateIPiiET0_T_S2_S1_.exit, label %for.body.i, !llvm.loop !0 diff --git a/llvm/test/Transforms/LoopVectorize/version-mem-access.ll b/llvm/test/Transforms/LoopVectorize/version-mem-access.ll index 37145aaa092..1a0b81ce9ea 100644 --- a/llvm/test/Transforms/LoopVectorize/version-mem-access.ll +++ b/llvm/test/Transforms/LoopVectorize/version-mem-access.ll @@ -34,14 +34,14 @@ for.body: %iv.trunc = trunc i64 %indvars.iv to i32 %mul = mul i32 %iv.trunc, %BStride %mul64 = zext i32 %mul to i64 - %arrayidx = getelementptr inbounds i32* %B, i64 %mul64 + %arrayidx = getelementptr inbounds i32, i32* %B, i64 %mul64 %0 = load i32* %arrayidx, align 4 %mul2 = mul nsw i64 %indvars.iv, %CStride - %arrayidx3 = getelementptr inbounds i32* %C, i64 %mul2 + %arrayidx3 = getelementptr inbounds i32, i32* %C, i64 %mul2 %1 = load i32* %arrayidx3, align 4 %mul4 = mul nsw i32 %1, %0 %mul3 = mul nsw i64 %indvars.iv, %AStride - %arrayidx7 = getelementptr inbounds i32* %A, i64 %mul3 + %arrayidx7 = getelementptr inbounds i32, i32* %A, i64 %mul3 store i32 %mul4, i32* %arrayidx7, align 4 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 @@ -76,9 +76,9 @@ for.body: %0 = trunc i64 %indvars.iv to i32 %mul = mul nsw i32 %0, %conv %idxprom = sext i32 %mul to i64 - %arrayidx = getelementptr inbounds double* %x, i64 %idxprom + %arrayidx = getelementptr inbounds double, double* %x, i64 %idxprom %1 = load double* %arrayidx, align 8 - %arrayidx3 = getelementptr inbounds double* %c, i64 %indvars.iv + %arrayidx3 = getelementptr inbounds double, double* %c, i64 %indvars.iv store double %1, double* %arrayidx3, align 8 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 diff --git a/llvm/test/Transforms/LoopVectorize/write-only.ll b/llvm/test/Transforms/LoopVectorize/write-only.ll index 2f100de8237..cd1b33017af 100644 --- a/llvm/test/Transforms/LoopVectorize/write-only.ll +++ b/llvm/test/Transforms/LoopVectorize/write-only.ll @@ -12,7 +12,7 @@ define i32 @read_mod_write_single_ptr(float* nocapture %a, i32 %n) nounwind uwta .lr.ph: ; preds = %0, %.lr.ph %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %0 ] - %2 = getelementptr inbounds float* %a, i64 %indvars.iv + %2 = getelementptr inbounds float, float* %a, i64 %indvars.iv %3 = load float* %2, align 4 %4 = fmul float %3, 3.000000e+00 store float %4, float* %2, align 4 |