HanKuanChen added a comment. HI, the following code get infinite loop after this commit.
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py ; RUN: opt -passes="simplifycfg<bonus-inst-threshold=1;forward-switch-cond;switch-range-to-icmp;switch-to-lookup;no-keep-loops;hoist-common-insts;sink-common-insts>" -S < %s | FileCheck %s define void @_Z10alignedboxl(i1 %cmp.a, i1 %cmp.b, i1 %cmp.c) { ; CHECK-LABEL: @_Z10alignedboxl( ; CHECK-NEXT: entry: ; CHECK-NEXT: br label [[WHILE_COND:%.*]] ; CHECK: while.cond: ; CHECK-NEXT: br i1 [[CMP_A:%.*]], label [[FOR:%.*]], label [[WHILE_BODY_THREAD:%.*]] ; CHECK: for.body: ; CHECK-NEXT: br i1 [[CMP_B:%.*]], label [[WHILE_BODY:%.*]], label [[FOR_BODY:%.*]] ; CHECK: for: ; CHECK-NEXT: tail call void @XXX() ; CHECK-NEXT: br label [[FOR_BODY]] ; CHECK: while.body: ; CHECK-NEXT: br i1 [[CMP_C:%.*]], label [[C_EXIT:%.*]], label [[LAND:%.*]] ; CHECK: while.body.thread: ; CHECK-NEXT: br i1 [[CMP_C]], label [[WHILE_COND]], label [[LAND]] ; CHECK: land: ; CHECK-NEXT: tail call void @XXX() ; CHECK-NEXT: br label [[WHILE_COND]] ; CHECK: c.exit: ; CHECK-NEXT: br i1 [[CMP_A]], label [[FOR_D:%.*]], label [[WHILE_BODY_THREAD]] ; CHECK: for.d: ; CHECK-NEXT: ret void ; entry: br label %while.cond while.cond: ; preds = %land, %while.body.thread, %entry br i1 %cmp.a, label %for, label %while.body.thread for.body: ; preds = %for, %for.body br i1 %cmp.b, label %while.body, label %for.body for: ; preds = %while.cond tail call void @XXX() br label %for.body while.body: ; preds = %for.body br i1 %cmp.c, label %c.exit, label %land while.body.thread: ; preds = %c.exit, %while.cond br i1 %cmp.c, label %while.cond, label %land land: ; preds = %while.body.thread, %while.body tail call void @XXX() br label %while.cond c.exit: ; preds = %while.body br i1 %cmp.a, label %for.d, label %while.cond for.d: ; preds = %c.exit ret void } declare void @XXX() Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D124159/new/ https://reviews.llvm.org/D124159 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits