From 996cecc144350fd0f798ba64c7a8af944c66c933 Mon Sep 17 00:00:00 2001 From: Ryotaro Kasuga Date: Mon, 7 Jul 2025 00:54:18 +0000 Subject: [PATCH] [LoopInterchange] Fix incorrect GEPs in tests (NFC) These tests were missing the leading zero(s) in the GEP. --- .../Transforms/LoopInterchange/legality-check.ll | 4 ++-- .../profitability-vectorization-heuristic.ll | 14 +++++++------- .../LoopInterchange/profitability-vectorization.ll | 12 ++++++------ 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/llvm/test/Transforms/LoopInterchange/legality-check.ll b/llvm/test/Transforms/LoopInterchange/legality-check.ll index 7330bc8bc6111..c7f63d5968e62 100644 --- a/llvm/test/Transforms/LoopInterchange/legality-check.ll +++ b/llvm/test/Transforms/LoopInterchange/legality-check.ll @@ -175,8 +175,8 @@ for.j.header: for.k: %k = phi i32 [ 0, %for.j.header ], [ %k.inc, %for.k ] %k.inc = add nuw nsw i32 %k, 1 - %idx.store = getelementptr inbounds [20 x [20 x [20 x i32]]], ptr @b, i32 %i, i32 %j, i32 %k - %idx.load = getelementptr inbounds [20 x [20 x [20 x i32]]], ptr @b, i32 %i, i32 5, i32 %k.inc + %idx.store = getelementptr inbounds [20 x [20 x [20 x i32]]], ptr @b, i32 0, i32 %i, i32 %j, i32 %k + %idx.load = getelementptr inbounds [20 x [20 x [20 x i32]]], ptr @b, i32 0, i32 %i, i32 5, i32 %k.inc %0 = load i32, ptr %idx.load, align 4 store i32 %0, ptr %idx.store, align 4 %cmp.k = icmp slt i32 %k.inc, 19 diff --git a/llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll b/llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll index 0f5aee582373d..9c113d4570e4d 100644 --- a/llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll +++ b/llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll @@ -33,14 +33,14 @@ for.i.header: for.j.body: %j = phi i64 [ 1, %for.i.header ], [ %j.next, %for.j.body ] %j.dec = add nsw i64 %j, -1 - %a.load.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @A, i64 %i, i64 %j.dec - %b.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @B, i64 %i, i64 %j - %c.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @C, i64 %i, i64 %j + %a.load.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @A, i64 0, i64 %i, i64 %j.dec + %b.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @B, i64 0, i64 %i, i64 %j + %c.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @C, i64 0, i64 %i, i64 %j %a = load float, ptr %a.load.index, align 4 %b = load float, ptr %b.index, align 4 %c = load float, ptr %c.index, align 4 %add.0 = fadd float %a, %b - %a.store.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @A, i64 %i, i64 %j + %a.store.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @A, i64 0, i64 %i, i64 %j store float %add.0, ptr %a.store.index, align 4 %add.1 = fadd float %c, 1.0 store float %add.1, ptr %c.index, align 4 @@ -84,12 +84,12 @@ for.i.header: for.j.body: %j = phi i64 [ 1, %for.i.header ], [ %j.next, %for.j.body ] %j.dec = add nsw i64 %j, -1 - %a.load.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @A, i64 %i, i64 %j - %b.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @B, i64 %i, i64 %j + %a.load.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @A, i64 0, i64 %i, i64 %j + %b.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @B, i64 0, i64 %i, i64 %j %a = load float, ptr %a.load.index, align 4 %b = load float, ptr %b.index, align 4 %add = fadd float %a, %b - %a.store.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @A, i64 %i, i64 %j.dec + %a.store.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @A, i64 0, i64 %i, i64 %j.dec store float %add, ptr %a.store.index, align 4 %j.next = add nuw nsw i64 %j, 1 %cmp.j = icmp eq i64 %j.next, 256 diff --git a/llvm/test/Transforms/LoopInterchange/profitability-vectorization.ll b/llvm/test/Transforms/LoopInterchange/profitability-vectorization.ll index 85be48cb9a710..16952a66aa78e 100644 --- a/llvm/test/Transforms/LoopInterchange/profitability-vectorization.ll +++ b/llvm/test/Transforms/LoopInterchange/profitability-vectorization.ll @@ -48,12 +48,12 @@ for.i.header: for.j.body: %j = phi i64 [ 1, %for.i.header ], [ %j.next, %for.j.body ] %j.dec = add nsw i64 %j, -1 - %a.0.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @A, i64 %j.dec, i64 %i - %b.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @B, i64 %j, i64 %i - %c.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @C, i64 %i, i64 %j - %d.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @D, i64 %i, i64 %j - %e.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @E, i64 %i, i64 %j - %f.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @F, i64 %i, i64 %j + %a.0.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @A, i64 0, i64 %j.dec, i64 %i + %b.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @B, i64 0, i64 %j, i64 %i + %c.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @C, i64 0, i64 %i, i64 %j + %d.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @D, i64 0, i64 %i, i64 %j + %e.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @E, i64 0, i64 %i, i64 %j + %f.index = getelementptr nuw inbounds [256 x [256 x float]], ptr @F, i64 0, i64 %i, i64 %j %a.0 = load float, ptr %a.0.index, align 4 %b = load float, ptr %b.index, align 4 %c = load float, ptr %c.index, align 4