[llvm] [SimplifyCFG] Simplify identical predessors (PR #173022)

via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 19 08:10:34 PST 2025


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

* 134083 tests passed
* 2468 tests skipped
* 8 tests failed

## Failed Tests
(click on a test name to see its output)

### LLVM
<details>
<summary>LLVM.CodeGen/AMDGPU/multi-divergent-exit-region.ll</summary>

```
Exit Code: 2

Command Output (stdout):
--
# RUN: at line 1
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -mtriple=amdgcn-- -mcpu=gfx600 -S -lowerswitch -amdgpu-unify-divergent-exit-nodes -verify -structurizecfg -verify -si-annotate-control-flow -simplifycfg-require-and-preserve-domtree=1 /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/multi-divergent-exit-region.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=IR /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/multi-divergent-exit-region.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -mtriple=amdgcn-- -mcpu=gfx600 -S -lowerswitch -amdgpu-unify-divergent-exit-nodes -verify -structurizecfg -verify -si-annotate-control-flow -simplifycfg-require-and-preserve-domtree=1 /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/multi-divergent-exit-region.ll
# .---command stderr------------
# | PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug.
# | Stack dump:
# | 0.	Program arguments: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -mtriple=amdgcn-- -mcpu=gfx600 -S -lowerswitch -amdgpu-unify-divergent-exit-nodes -verify -structurizecfg -verify -si-annotate-control-flow -simplifycfg-require-and-preserve-domtree=1 /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/multi-divergent-exit-region.ll
# | 1.	Running pass 'Function Pass Manager' on module '/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/multi-divergent-exit-region.ll'.
# | 2.	Running pass 'Dominance Frontier Construction' on function '@multi_divergent_unreachable_exit'
# |  #0 0x0000000004fb53c8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/Unix/Signals.inc:842:13
# |  #1 0x0000000004fb2981 llvm::sys::RunSignalHandlers() /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/Signals.cpp:109:18
# |  #2 0x0000000004fb6481 SignalHandler(int, siginfo_t*, void*) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/Unix/Signals.inc:429:38
# |  #3 0x00007c46518bd330 (/lib/x86_64-linux-gnu/libc.so.6+0x45330)
# |  #4 0x0000000005afbc26 llvm::ForwardDominanceFrontierBase<llvm::BasicBlock>::calculate(llvm::DominatorTreeBase<llvm::BasicBlock, false> const&, llvm::DomTreeNodeBase<llvm::BasicBlock> const*) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include/llvm/Analysis/DominanceFrontierImpl.h:104:33
# |  #5 0x0000000005afb93c llvm::ForwardDominanceFrontierBase<llvm::BasicBlock>::analyze(llvm::DominatorTreeBase<llvm::BasicBlock, false>&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include/llvm/Analysis/DominanceFrontier.h:117:3
# |  #6 0x0000000005afc4b6 llvm::DominanceFrontierWrapperPass::runOnFunction(llvm::Function&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Analysis/DominanceFrontier.cpp:48:3
# |  #7 0x00000000051fb125 llvm::FPPassManager::runOnFunction(llvm::Function&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1398:27
# |  #8 0x00000000052030d2 llvm::FPPassManager::runOnModule(llvm::Module&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1444:13
# |  #9 0x00000000051fbbcc runOnModule /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1513:27
# | #10 0x00000000051fbbcc llvm::legacy::PassManagerImpl::run(llvm::Module&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:531:44
# | #11 0x0000000004f57be3 optMain /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/tools/opt/optdriver.cpp:934:20
# | #12 0x00007c46518a21ca (/lib/x86_64-linux-gnu/libc.so.6+0x2a1ca)
# | #13 0x00007c46518a228b __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2a28b)
# | #14 0x0000000004f50325 _start (/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt+0x4f50325)
# `-----------------------------
# error: command failed with exit status: -11
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=IR /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/multi-divergent-exit-region.ll
# .---command stderr------------
# | FileCheck error: '<stdin>' is empty.
# | FileCheck command line:  /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=IR /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/multi-divergent-exit-region.ll
# `-----------------------------
# error: command failed with exit status: 2

--

```
</details>
<details>
<summary>LLVM.CodeGen/Thumb2/thumb2-tbh.ll</summary>

```
Exit Code: 2

Command Output (stdout):
--
# RUN: at line 1
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/Thumb2/thumb2-tbh.ll -mtriple=thumbv7-apple-darwin -relocation-model=pic | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/Thumb2/thumb2-tbh.ll --check-prefix=CHECK --check-prefix=T2
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -mtriple=thumbv7-apple-darwin -relocation-model=pic
# .---command stderr------------
# | llc: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp:247: bool iterativelySimplifyCFG(Function &, const TargetTransformInfo &, DomTreeUpdater *, const SimplifyCFGOptions &): Assertion `IterCnt++ < 1000 && "Iterative simplification didn't converge!"' failed.
# | PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug.
# | Stack dump:
# | 0.	Program arguments: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -mtriple=thumbv7-apple-darwin -relocation-model=pic
# | 1.	Running pass 'Function Pass Manager' on module '<stdin>'.
# | 2.	Running pass 'Simplify the CFG' on function '@main'
# |  #0 0x0000000007f428e8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/Unix/Signals.inc:842:13
# |  #1 0x0000000007f3ffb1 llvm::sys::RunSignalHandlers() /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/Signals.cpp:109:18
# |  #2 0x0000000007f436b1 SignalHandler(int, siginfo_t*, void*) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/Unix/Signals.inc:429:38
# |  #3 0x00007d8d632d9330 (/lib/x86_64-linux-gnu/libc.so.6+0x45330)
# |  #4 0x00007d8d63332b2c pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x9eb2c)
# |  #5 0x00007d8d632d927e raise (/lib/x86_64-linux-gnu/libc.so.6+0x4527e)
# |  #6 0x00007d8d632bc8ff abort (/lib/x86_64-linux-gnu/libc.so.6+0x288ff)
# |  #7 0x00007d8d632bc81b (/lib/x86_64-linux-gnu/libc.so.6+0x2881b)
# |  #8 0x00007d8d632cf517 (/lib/x86_64-linux-gnu/libc.so.6+0x3b517)
# |  #9 0x0000000007ae3f6a (/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc+0x7ae3f6a)
# | #10 0x0000000007ae371b simplifyFunctionCFGImpl(llvm::Function&, llvm::TargetTransformInfo const&, llvm::DominatorTree*, llvm::SimplifyCFGOptions const&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp:280:18
# | #11 0x0000000007ae4a46 simplifyFunctionCFG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp:308:18
# | #12 0x0000000007ae4a46 (anonymous namespace)::CFGSimplifyPass::runOnFunction(llvm::Function&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp:415:12
# | #13 0x00000000074bfec5 llvm::FPPassManager::runOnFunction(llvm::Function&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1398:27
# | #14 0x00000000074c7e72 llvm::FPPassManager::runOnModule(llvm::Module&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1444:13
# | #15 0x00000000074c096c runOnModule /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1513:27
# | #16 0x00000000074c096c llvm::legacy::PassManagerImpl::run(llvm::Module&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:531:44
# | #17 0x0000000004e275ac compileModule(char**, llvm::SmallVectorImpl<llvm::PassPlugin>&, llvm::LLVMContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/tools/llc/llc.cpp:874:17
# | #18 0x0000000004e24b23 main /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/tools/llc/llc.cpp:462:13
# | #19 0x00007d8d632be1ca (/lib/x86_64-linux-gnu/libc.so.6+0x2a1ca)
# | #20 0x00007d8d632be28b __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2a28b)
# | #21 0x0000000004e20325 _start (/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc+0x4e20325)
# `-----------------------------
# error: command failed with exit status: -6
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/Thumb2/thumb2-tbh.ll --check-prefix=CHECK --check-prefix=T2
# .---command stderr------------
# | FileCheck error: '<stdin>' is empty.
# | FileCheck command line:  /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/Thumb2/thumb2-tbh.ll --check-prefix=CHECK --check-prefix=T2
# `-----------------------------
# error: command failed with exit status: 2

--

```
</details>
<details>
<summary>LLVM.Transforms/LoopDeletion/simplify-then-delete.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopDeletion/simplify-then-delete.ll -S -passes='loop(indvars,loop-deletion),simplifycfg' -simplifycfg-require-and-preserve-domtree=1 | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopDeletion/simplify-then-delete.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -S '-passes=loop(indvars,loop-deletion),simplifycfg' -simplifycfg-require-and-preserve-domtree=1
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopDeletion/simplify-then-delete.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopDeletion/simplify-then-delete.ll:14:15: error: CHECK-NEXT: is not on the line after the previous match
# | ; CHECK-NEXT: ret i32 0
# |               ^
# | <stdin>:16:2: note: 'next' match was here
# |  ret i32 0
# |  ^
# | <stdin>:8:28: note: previous match ended here
# |  %cmp4 = icmp sgt i32 %m, 0
# |                            ^
# | <stdin>:9:1: note: non-matching line after previous match is here
# |  br i1 %cmp4, label %bb.n10, label %w.e12
# | ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopDeletion/simplify-then-delete.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |          .
# |          .
# |          .
# |         11: bb.n10: ; preds = %entry 
# |         12:  %cmp51 = icmp sgt i32 %n, 0 
# |         13:  br label %w.e12 
# |         14:  
# |         15: w.e12: ; preds = %bb.n10, %entry 
# |         16:  ret i32 0 
# | next:14      !~~~~~~~~  error: match on wrong line
# |         17: } 
# |         18:  
# |         19: attributes #0 = { nounwind } 
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Transforms/SimplifyCFG/X86/switch-to-lookup-globals.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -S -passes="simplifycfg<switch-to-lookup>" < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/X86/switch-to-lookup-globals.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/X86/switch-to-lookup-globals.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -S '-passes=simplifycfg<switch-to-lookup>'
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/X86/switch-to-lookup-globals.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/X86/switch-to-lookup-globals.ll:13:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: %0 = icmp ult i32 %arg, 3
# |               ^
# | <stdin>:9:4: note: scanning from here
# | bb:
# |    ^
# | <stdin>:10:5: note: possible intended match here
# |  %cond = icmp eq i32 %arg, 1
# |     ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/X86/switch-to-lookup-globals.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            1: ; ModuleID = '<stdin>' 
# |            2: source_filename = "<stdin>" 
# |            3: target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" 
# |            4: target triple = "x86_64-unknown-linux-gnu" 
# |            5:  
# |            6: @global = external constant [75 x { i32, i32, i32, i8, i8 }] 
# |            7:  
# |            8: define i1 @zot(i32 %arg) { 
# |            9: bb: 
# | next:13'0        X error: no match found
# |           10:  %cond = icmp eq i32 %arg, 1 
# | next:13'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:13'1         ?                         possible intended match
# |           11:  %spec.select = select i1 %cond, ptr getelementptr inbounds ([75 x { i32, i32, i32, i8, i8 }], ptr @global, i64 0, i64 6, i32 0), ptr null 
# | next:13'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           12:  %tmp8 = icmp eq ptr %spec.select, getelementptr inbounds ([75 x { i32, i32, i32, i8, i8 }], ptr @global, i64 1, i64 0, i32 0) 
# | next:13'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           13:  ret i1 %tmp8 
# | next:13'0     ~~~~~~~~~~~~~~
# |           14: } 
# | next:13'0     ~~
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Transforms/SimplifyCFG/X86/switch_to_lookup_table.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/X86/switch_to_lookup_table.ll -passes=simplifycfg -switch-to-lookup=true -keep-loops=false -S -mtriple=x86_64-unknown-linux-gnu | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/X86/switch_to_lookup_table.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=simplifycfg -switch-to-lookup=true -keep-loops=false -S -mtriple=x86_64-unknown-linux-gnu
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/X86/switch_to_lookup_table.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/X86/switch_to_lookup_table.ll:1612:10: error: CHECK: expected string not found in input
# | ; CHECK: cleanup4:
# |          ^
# | <stdin>:546:22: note: scanning from here
# |  br label %while.body
# |                      ^
# | <stdin>:548:3: note: possible intended match here
# | while.body: ; preds = %while.body, %entry
# |   ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/X86/switch_to_lookup_table.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |               .
# |               .
# |               .
# |             541:  ret i32 %r 
# |             542: } 
# |             543:  
# |             544: define i32 @PR26308(i1 %B, i64 %load) { 
# |             545: entry: 
# |             546:  br label %while.body 
# | check:1612'0                          X error: no match found
# |             547:  
# | check:1612'0     ~
# |             548: while.body: ; preds = %while.body, %entry 
# | check:1612'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:1612'1       ?                                        possible intended match
# |             549:  br label %while.body 
# | check:1612'0     ~~~~~~~~~~~~~~~~~~~~~~
# |             550: } 
# | check:1612'0     ~~
# |             551:  
# | check:1612'0     ~
# |             552: declare void @throw(i1) 
# | check:1612'0     ~~~~~~~~~~~~~~~~~~~~~~~~
# |             553:  
# | check:1612'0     ~
# |               .
# |               .
# |               .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Transforms/SimplifyCFG/dup-preds.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/dup-preds.ll -passes=simplifycfg -simplifycfg-require-and-preserve-domtree=1 -S | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/dup-preds.ll -check-prefix=SIMPLIFY-CFG
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=simplifycfg -simplifycfg-require-and-preserve-domtree=1 -S
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/dup-preds.ll -check-prefix=SIMPLIFY-CFG
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/dup-preds.ll:23:22: error: SIMPLIFY-CFG-NEXT: expected string not found in input
# | ; SIMPLIFY-CFG-NEXT: [[RET:%.*]] = phi i8 [ 0, %[[ELSE]] ], [ 1, %[[SWITCH_CASE_1]] ], [ 2, %[[THEN]] ], [ 3, %[[ENTRY]] ]
# |                      ^
# | <stdin>:24:6: note: scanning from here
# | exit: ; preds = %else, %switch.case.1, %then, %entry
# |      ^
# | <stdin>:24:6: note: with "ELSE" equal to "else"
# | exit: ; preds = %else, %switch.case.1, %then, %entry
# |      ^
# | <stdin>:24:6: note: with "SWITCH_CASE_1" equal to "switch.case.1"
# | exit: ; preds = %else, %switch.case.1, %then, %entry
# |      ^
# | <stdin>:24:6: note: with "THEN" equal to "then"
# | exit: ; preds = %else, %switch.case.1, %then, %entry
# |      ^
# | <stdin>:24:6: note: with "ENTRY" equal to "entry"
# | exit: ; preds = %else, %switch.case.1, %then, %entry
# |      ^
# | <stdin>:25:2: note: possible intended match here
# |  %ret = phi i8 [ 0, %else ], [ 2, %then ], [ 1, %switch.case.1 ], [ 3, %entry ]
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/dup-preds.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            .
# |            .
# |            .
# |           19:  br label %exit 
# |           20:  
# |           21: else: ; preds = %then, %entry 
# |           22:  br label %exit 
# |           23:  
# |           24: exit: ; preds = %else, %switch.case.1, %then, %entry 
# | next:23'0          X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# | next:23'1                                                           with "ELSE" equal to "else"
# | next:23'2                                                           with "SWITCH_CASE_1" equal to "switch.case.1"
# | next:23'3                                                           with "THEN" equal to "then"
# | next:23'4                                                           with "ENTRY" equal to "entry"
# |           25:  %ret = phi i8 [ 0, %else ], [ 2, %then ], [ 1, %switch.case.1 ], [ 3, %entry ] 
# | next:23'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:23'5      ?                                                                               possible intended match
# |           26:  ret i8 %ret 
# | next:23'0     ~~~~~~~~~~~~~
# |           27: } 
# | next:23'0     ~~
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Transforms/SimplifyCFG/switch-dup-bbs.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/switch-dup-bbs.ll -passes=simplifycfg -simplifycfg-require-and-preserve-domtree=1 -S    | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/switch-dup-bbs.ll -check-prefix=SIMPLIFY-CFG
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=simplifycfg -simplifycfg-require-and-preserve-domtree=1 -S
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/switch-dup-bbs.ll -check-prefix=SIMPLIFY-CFG
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/switch-dup-bbs.ll:81:17: error: SIMPLIFY-CFG: expected string not found in input
# | ; SIMPLIFY-CFG: [[BB8]]:
# |                 ^
# | <stdin>:46:13: note: scanning from here
# |  br label %8
# |             ^
# | <stdin>:46:13: note: with "BB8" equal to "7"
# |  br label %8
# |             ^
# | <stdin>:48:2: note: possible intended match here
# | 8: ; preds = %7, %6
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/SimplifyCFG/switch-dup-bbs.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            41:  i32 0, label %7 
# |            42:  i32 1, label %7 
# |            43:  ] 
# |            44:  
# |            45: 7: ; preds = %5, %6, %6 
# |            46:  br label %8 
# | check:81'0                 X error: no match found
# | check:81'1                   with "BB8" equal to "7"
# |            47:  
# | check:81'0     ~
# |            48: 8: ; preds = %7, %6 
# | check:81'0     ~~~~~~~~~~~~~~~~~~~~
# | check:81'2      ?                   possible intended match
# |            49:  %9 = phi i32 [ %4, %6 ], [ %3, %7 ] 
# | check:81'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            50:  ret i32 %9 
# | check:81'0     ~~~~~~~~~~~~
# |            51: } 
# | check:81'0     ~~
# |            52:  
# | check:81'0     ~
# |            53: define i32 @switch_dup_default(i32 %0, i32 %1, i32 %2, i32 %3) { 
# | check:81'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.tools/llvm-reduce/remove-bbs-sequence.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
llvm-reduce -abort-on-invalid-reduction --delta-passes=basic-blocks,simplify-cfg --test "/usr/bin/python3" --test-arg /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/tools/llvm-reduce/remove-bbs-sequence.py /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/tools/llvm-reduce/remove-bbs-sequence.ll -o /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/tools/llvm-reduce/Output/remove-bbs-sequence.ll.tmp
# executed command: llvm-reduce -abort-on-invalid-reduction --delta-passes=basic-blocks,simplify-cfg --test /usr/bin/python3 --test-arg /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/tools/llvm-reduce/remove-bbs-sequence.py /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/tools/llvm-reduce/remove-bbs-sequence.ll -o /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/tools/llvm-reduce/Output/remove-bbs-sequence.ll.tmp
# .---command stdout------------
# | This is interesting!
# | This is interesting!
# | This is NOT interesting!
# | This is NOT interesting!
# | This is NOT interesting!
# | This is NOT interesting!
# | This is NOT interesting!
# | This is NOT interesting!
# | This is NOT interesting!
# | This is interesting!
# | This is interesting!
# | This is interesting!
# | This is NOT interesting!
# | This is interesting!
# | This is interesting!
# `-----------------------------
# .---command stderr------------
# | *** Reducing Basic Blocks (basic-blocks)...
# | --------------------------------------------------------------------------------
# | *** Reducing using SimplifyCFG (simplify-cfg)...
# |  **** SUCCESS | Saved new best reduction to /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/tools/llvm-reduce/Output/remove-bbs-sequence.ll.tmp
# | --------------------------------------------------------------------------------
# | *** Reducing Basic Blocks (basic-blocks)...
# | --------------------------------------------------------------------------------
# | *** Reducing using SimplifyCFG (simplify-cfg)...
# |  **** SUCCESS | Saved new best reduction to /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/tools/llvm-reduce/Output/remove-bbs-sequence.ll.tmp
# | --------------------------------------------------------------------------------
# | Done reducing! Reduced testcase: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/tools/llvm-reduce/Output/remove-bbs-sequence.ll.tmp
# `-----------------------------
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/tools/llvm-reduce/remove-bbs-sequence.ll < /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/tools/llvm-reduce/Output/remove-bbs-sequence.ll.tmp
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/tools/llvm-reduce/remove-bbs-sequence.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/tools/llvm-reduce/remove-bbs-sequence.ll:23:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: br label %bb4
# |               ^
# | <stdin>:5:5: note: scanning from here
# | bb0:
# |     ^
# | <stdin>:6:2: note: possible intended match here
# |  br label %bb1
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/tools/llvm-reduce/remove-bbs-sequence.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            1: ; ModuleID = '/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/tools/llvm-reduce/remove-bbs-sequence.ll' 
# |            2: source_filename = "/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/tools/llvm-reduce/remove-bbs-sequence.ll" 
# |            3:  
# |            4: define void @main() { 
# |            5: bb0: 
# | next:23'0         X error: no match found
# |            6:  br label %bb1 
# | next:23'0     ~~~~~~~~~~~~~~~
# | next:23'1      ?              possible intended match
# |            7:  
# | next:23'0     ~
# |            8: bb1: ; preds = %bb1, %bb0 
# | next:23'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            9:  br label %bb1 
# | next:23'0     ~~~~~~~~~~~~~~~
# |           10: } 
# | next:23'0     ~~
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/173022


More information about the llvm-commits mailing list