[llvm] [LoopFusion] Remove test dependency on assert (NFC) (PR #217180)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 18 17:53:33 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-llvm-transforms
Author: Ehsan Amiri (amehsan)
<details>
<summary>Changes</summary>
In preparation for another patch, I am changing this testcase to not require assertions.
---
Full diff: https://github.com/llvm/llvm-project/pull/217180.diff
1 Files Affected:
- (modified) llvm/test/Transforms/LoopFusion/different_guards.ll (+40-3)
``````````diff
diff --git a/llvm/test/Transforms/LoopFusion/different_guards.ll b/llvm/test/Transforms/LoopFusion/different_guards.ll
index 679e39c1bbd9d..7be960e745315 100644
--- a/llvm/test/Transforms/LoopFusion/different_guards.ll
+++ b/llvm/test/Transforms/LoopFusion/different_guards.ll
@@ -1,6 +1,5 @@
-; REQUIRES: asserts
-; RUN: opt -passes=loop-fusion -loop-fusion-peel-max-count=2 -disable-output -stats < %s 2>&1 | FileCheck -check-prefix=STAT %s
-; STAT-NOT: loop-fusion - Loops fused
+; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 6
+; RUN: opt -passes=loop-fusion -loop-fusion-peel-max-count=2 -S < %s 2>&1 | FileCheck %s
; Test reduced from the file diags_on_lat_aux_grid.F90 present in pop2,
; a program from spec 2017. Two loops have different guards, but otherwise
@@ -8,6 +7,44 @@
; iteration count. They should not be fused.
define void @diags_on_lat_aux_grid(i1 %cond, i1 %cond1, i1 %0, i1 %1, ptr noalias %b1, ptr noalias %b2, i64 %N) {
+; CHECK-LABEL: define void @diags_on_lat_aux_grid(
+; CHECK-SAME: i1 [[COND:%.*]], i1 [[COND1:%.*]], i1 [[TMP0:%.*]], i1 [[TMP1:%.*]], ptr noalias [[B1:%.*]], ptr noalias [[B2:%.*]], i64 [[N:%.*]]) {
+; CHECK-NEXT: [[_CRITEDGE:.*:]]
+; CHECK-NEXT: br i1 [[COND]], label %[[COMMON_RET:.*]], label %[[THREAD_PRE_SPLIT:.*]]
+; CHECK: [[COMMON_RET]]:
+; CHECK-NEXT: ret void
+; CHECK: [[THREAD_PRE_SPLIT]]:
+; CHECK-NEXT: br i1 [[COND1]], label %[[BB2:.*]], [[DOTLOOPEXIT:label %.*]]
+; CHECK: [[BB2]]:
+; CHECK-NEXT: br i1 [[TMP0]], label %[[DOTLR_PH1333_PREHEADER:.*]], [[DOT_CRIT_EDGE1334:label %.*]]
+; CHECK: [[_LR_PH1333_PREHEADER:.*:]]
+; CHECK-NEXT: br label %[[DOTLR_PH1333:.*]]
+; CHECK: [[_LR_PH1333:.*:]]
+; CHECK-NEXT: [[INDVARS_IV1386:%.*]] = phi i64 [ [[INDVARS_IV_NEXT1387:%.*]], %[[DOTLR_PH1333]] ], [ 0, %[[DOTLR_PH1333_PREHEADER]] ]
+; CHECK-NEXT: [[TMP3:%.*]] = getelementptr [8 x i8], ptr [[B1]], i64 [[INDVARS_IV1386]]
+; CHECK-NEXT: store double 0.000000e+00, ptr [[TMP3]], align 8
+; CHECK-NEXT: [[INDVARS_IV_NEXT1387]] = add i64 [[INDVARS_IV1386]], 1
+; CHECK-NEXT: [[EXITCOND1389_NOT:%.*]] = icmp eq i64 [[INDVARS_IV1386]], [[N]]
+; CHECK-NEXT: br i1 [[EXITCOND1389_NOT]], [[DOT_CRIT_EDGE1334_LOOPEXIT:label %.*]], label %[[DOTLR_PH1333]]
+; CHECK: [[__CRIT_EDGE1334_LOOPEXIT:.*:]]
+; CHECK-NEXT: br [[DOT_CRIT_EDGE1334]]
+; CHECK: [[__CRIT_EDGE1334:.*:]]
+; CHECK-NEXT: br i1 [[TMP1]], label %[[DOTLR_PH1336_PREHEADER:.*]], [[DOTLOOPEXIT]]
+; CHECK: [[_LR_PH1336_PREHEADER:.*:]]
+; CHECK-NEXT: br label %[[DOTLR_PH1336:.*]]
+; CHECK: [[_LR_PH1336:.*:]]
+; CHECK-NEXT: [[INDVARS_IV1390:%.*]] = phi i64 [ [[INDVARS_IV_NEXT1391:%.*]], %[[DOTLR_PH1336]] ], [ 0, %[[DOTLR_PH1336_PREHEADER]] ]
+; CHECK-NEXT: [[TMP4:%.*]] = getelementptr [8 x i8], ptr [[B2]], i64 [[INDVARS_IV1390]]
+; CHECK-NEXT: store double 0.000000e+00, ptr [[TMP4]], align 8
+; CHECK-NEXT: [[INDVARS_IV_NEXT1391]] = add i64 [[INDVARS_IV1390]], 1
+; CHECK-NEXT: [[EXITCOND1393_NOT:%.*]] = icmp eq i64 [[INDVARS_IV1390]], [[N]]
+; CHECK-NEXT: br i1 [[EXITCOND1393_NOT]], [[DOTLOOPEXIT_LOOPEXIT:label %.*]], label %[[DOTLR_PH1336]]
+; CHECK: [[_LOOPEXIT_LOOPEXIT:.*:]]
+; CHECK-NEXT: br [[DOTLOOPEXIT]]
+; CHECK: [[_LOOPEXIT:.*:]]
+; CHECK-NEXT: store volatile i32 0, ptr [[B1]], align 4
+; CHECK-NEXT: br label %[[COMMON_RET]]
+;
.critedge:
br i1 %cond, label %common.ret, label %thread-pre-split
``````````
</details>
https://github.com/llvm/llvm-project/pull/217180
More information about the llvm-commits
mailing list