[llvm] [AArch64] Extend intra-block optimizer to handle TBZ/TBNZ (PR #217808)

via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 20 22:11:46 PDT 2026


github-actions[bot] wrote:

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

* 181014 tests passed
* 3704 tests skipped
* 1 test failed

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

### LLVM
<details>
<summary>LLVM.CodeGen/AArch64/aarch64-condopt-unsigned.mir</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -mtriple=aarch64 -o - /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AArch64/aarch64-condopt-unsigned.mir -run-pass=aarch64-condopt | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AArch64/aarch64-condopt-unsigned.mir
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -mtriple=aarch64 -o - /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AArch64/aarch64-condopt-unsigned.mir -run-pass=aarch64-condopt
# 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/CodeGen/AArch64/aarch64-condopt-unsigned.mir
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AArch64/aarch64-condopt-unsigned.mir:388:16: error: CHECK-NEXT: expected string not found in input
# |  ; CHECK-NEXT: [[SUBSWri:%[0-9]+]]:gpr32 = SUBSWri [[COPY]], 0, 0, implicit-def $nzcv
# |                ^
# | <stdin>:758:2: note: scanning from here
# |  
# |  ^
# | <stdin>:758:2: note: with "COPY" equal to "%0"
# |  
# |  ^
# | <stdin>:758:2: note: pattern attempts to capture variables: "SUBSWri"
# |  
# |  ^
# | <stdin>:765:2: note: possible intended match here
# |  %3:gpr32 = MOVi32imm 1
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AArch64/aarch64-condopt-unsigned.mir
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |           753:  B %bb.2 
# |           754:   
# |           755:  bb.1: 
# |           756:  successors: %bb.2(0x80000000) 
# |           757:  liveins: $w0 
# |           758:   
# | next:388'0     {   search range start (exclusive)
# | next:388'1         error: no match found in search range
# | next:388'2         with "COPY" equal to "%0"
# | next:388'3         pattern attempts to capture variables: "SUBSWri"
# |           759:  TBZW %0, 31, %bb.2 
# |           760:  B %bb.2 
# |           761:   
# |           762:  bb.2: 
# |           763:  liveins: $w0 
# |           764:   
# |           765:  %3:gpr32 = MOVi32imm 1 
# | next:388'4      ?                        possible intended match
# |           766:  $w0 = COPY %3 
# |           767:  RET undef $lr, implicit $w0 
# |           768: ... 
# |           769: --- 
# |           770: name: cmp_cmp_gt_hi_no_opt 
# | next:388'5                               }  search range end (exclusive)
# |           771: alignment: 1 
# |           772: exposesReturnsTwice: false 
# |           773: legalized: false 
# |           774: regBankSelected: false 
# |           775: selected: false 
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# 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/217808


More information about the llvm-commits mailing list