[llvm] [DAGCombiner] Port custom DAG combine for `rem` from NVPTX (PR #210344)

via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 17 07:46:44 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results

* 138562 tests passed
* 3556 tests skipped
* 11 tests failed

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

### LLVM
<details>
<summary>LLVM.CodeGen/ARM/divmod-eabi.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 8
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple armv7-none-eabi C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod-eabi.ll -o - | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod-eabi.ll --check-prefix=EABI
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple armv7-none-eabi 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod-eabi.ll' -o -
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod-eabi.ll' --check-prefix=EABI
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod-eabi.ll:132:14: error: EABI-NEXT: is not on the line after the previous match
# | ; EABI-NEXT: adds r0
# |              ^
# | <stdin>:112:2: note: 'next' match was here
# |  adds r0, r2, r0
# |  ^
# | <stdin>:106:20: note: previous match ended here
# |  bl __aeabi_ldivmod
# |                    ^
# | <stdin>:107:1: note: non-matching line after previous match is here
# |  umull r2, r3, r0, r5
# | ^
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod-eabi.ll:158:9: error: EABI: expected string not found in input
# | ; EABI: __aeabi_idivmod
# |         ^
# | <stdin>:123:8: note: scanning from here
# | shortf: @ @shortf
# |        ^
# | <stdin>:132:5: note: possible intended match here
# |  bl __aeabi_idiv
# |     ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod-eabi.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              .
# |              .
# |              .
# |            101:  push {r4, r5, r6, r7, r11, lr} 
# |            102:  mov r4, r3 
# |            103:  mov r5, r2 
# |            104:  mov r6, r1 
# |            105:  mov r7, r0 
# |            106:  bl __aeabi_ldivmod 
# | next:132'0                        {   search range start (exclusive)
# |            107:  umull r2, r3, r0, r5 
# |            108:  mla r3, r0, r4, r3 
# |            109:  subs r2, r7, r2 
# |            110:  mla r3, r1, r5, r3 
# |            111:  sbc r3, r6, r3 
# |            112:  adds r0, r2, r0 
# | next:132'1       !~~~~~~           error: match on wrong line
# |            113:  adc r1, r3, r1 
# |            114:  pop {r4, r5, r6, r7, r11, pc} 
# |            115: .Lfunc_end3: 
# |            116:  .size longf, .Lfunc_end3-longf 
# |            117:  .fnend 
# |            118:  @ -- End function 
# |            119:  .globl shortf @ -- Begin function shortf 
# |            120:  .p2align 2 
# |            121:  .type shortf,%function 
# |            122:  .code 32 
# |            123: shortf: @ @shortf 
# | next:132'2             }            search range end (exclusive)
# | check:158'0           {             search range start (exclusive)
# | check:158'1                         error: no match found in search range
# |            124:  .fnstart 
# |            125: @ %bb.0: @ %entry 
# |            126:  .save {r4, r5, r11, lr} 
# |            127:  push {r4, r5, r11, lr} 
# |            128:  mov r4, r1 
# |            129:  mov r5, r0 
# |            130:  sxth r0, r0 
# |            131:  sxth r1, r1 
# |            132:  bl __aeabi_idiv 
# | check:158'2         ?              possible intended match
# |            133:  mls r1, r0, r4, r5 
# |            134:  add r0, r1, r0 
# |            135:  pop {r4, r5, r11, pc} 
# |            136: .Lfunc_end4: 
# |            137:  .size shortf, .Lfunc_end4-shortf 
# |            138:  .fnend 
# |            139:  @ -- End function 
# |            140:  .globl g1 @ -- Begin function g1 
# |            141:  .p2align 2 
# |            142:  .type g1,%function 
# |            143:  .code 32 
# |            144: g1: @ @g1 
# | check:158'3        }        search range end (exclusive)
# |            145:  .fnstart 
# |            146: @ %bb.0: @ %entry 
# |            147:  .save {r11, lr} 
# |            148:  push {r11, lr} 
# |            149:  bl __aeabi_idivmod 
# |              .
# |              .
# |              .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/ARM/divmod.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\llc.exe < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod.ll -mtriple=arm-apple-ios5.0 -mcpu=cortex-a8 | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod.ll -check-prefix=A8
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=arm-apple-ios5.0 -mcpu=cortex-a8
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod.ll' -check-prefix=A8
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod.ll:10:7: error: A8: expected string not found in input
# | ; A8: bl ___divmodsi4
# |       ^
# | <stdin>:7:6: note: scanning from here
# | _foo: @ @foo
# |      ^
# | <stdin>:13:2: note: possible intended match here
# |  bl ___divsi3
# |  ^
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod.ll:28:7: error: A8: expected string not found in input
# | ; A8: bl ___udivmodsi4
# |       ^
# | <stdin>:21:6: note: scanning from here
# | _bar: @ @bar
# |      ^
# | <stdin>:27:2: note: possible intended match here
# |  bl ___udivsi3
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\ARM\divmod.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             1:  .ios_version_min 5, 0 
# |             2:  .syntax unified 
# |             3:  .section __TEXT,__text,regular,pure_instructions 
# |             4:  .globl _foo @ -- Begin function foo 
# |             5:  .p2align 2 
# |             6:  .code 32 
# |             7: _foo: @ @foo 
# | check:10'0         {          search range start (exclusive)
# | check:10'1                    error: no match found in search range
# |             8: @ %bb.0: @ %entry 
# |             9:  push {r4, r5, r6, lr} 
# |            10:  mov r4, r2 
# |            11:  mov r5, r1 
# |            12:  mov r6, r0 
# |            13:  bl ___divsi3 
# | check:10'2      ?              possible intended match
# |            14:  mls r1, r0, r5, r6 
# |            15:  strd r0, r1, [r4] 
# |            16:  pop {r4, r5, r6, pc} 
# |            17:  @ -- End function 
# |            18:  .globl _bar @ -- Begin function bar 
# |            19:  .p2align 2 
# |            20:  .code 32 
# |            21: _bar: @ @bar 
# | check:10'3          }         search range end (exclusive)
# | check:28'0         {          search range start (exclusive)
# | check:28'1                    error: no match found in search range
# |            22: @ %bb.0: @ %entry 
# |            23:  push {r4, r5, r6, lr} 
# |            24:  mov r4, r2 
# |            25:  mov r5, r1 
# |            26:  mov r6, r0 
# |            27:  bl ___udivsi3 
# | check:28'2      ?               possible intended match
# |            28:  mls r1, r0, r5, r6 
# |            29:  strd r0, r1, [r4] 
# |            30:  pop {r4, r5, r6, pc} 
# |            31:  @ -- End function 
# |            32:  .globl _do_indent @ -- Begin function do_indent 
# |            33:  .p2align 2 
# |            34:  .code 32 
# |            35: _do_indent: @ @do_indent 
# | check:28'3                }               search range end (exclusive)
# |            36: @ %bb.0: @ %entry 
# |            37:  push {r4, lr} 
# |            38:  sub sp, sp, #4 
# |            39:  movw r1, :lower16:(L_flags$non_lazy_ptr-(LPC2_0+8)) 
# |            40:  mov r4, #0 
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/Mips/divrem.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=mips   -mcpu=mips32   -verify-machineinstrs    -relocation-model=pic < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\Mips\divrem.ll | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\Mips\divrem.ll -check-prefixes=ALL,ACC32,ACC32-TRAP
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=mips -mcpu=mips32 -verify-machineinstrs -relocation-model=pic
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\Mips\divrem.ll' -check-prefixes=ALL,ACC32,ACC32-TRAP
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\Mips\divrem.ll:328:10: error: ACC32: expected string not found in input
# | ; ACC32: lw $25, %call16(__moddi3)(
# |          ^
# | <stdin>:336:10: note: scanning from here
# | sdivrem2: # @sdivrem2
# |          ^
# | <stdin>:356:2: note: possible intended match here
# |  lw $25, %call16(__divdi3)($gp)
# |  ^
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\Mips\divrem.ll:363:10: error: ACC32: expected string not found in input
# | ; ACC32: lw $25, %call16(__umoddi3)(
# |          ^
# | <stdin>:395:10: note: scanning from here
# | udivrem2: # @udivrem2
# |          ^
# | <stdin>:415:2: note: possible intended match here
# |  lw $25, %call16(__udivdi3)($gp)
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\Mips\divrem.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              .
# |              .
# |              .
# |            331:  .p2align 2 
# |            332:  .type sdivrem2, at function 
# |            333:  .set nomicromips 
# |            334:  .set nomips16 
# |            335:  .ent sdivrem2 
# |            336: sdivrem2: # @sdivrem2 
# | check:328'0             {               search range start (exclusive)
# | check:328'1                             error: no match found in search range
# |            337:  .frame $sp,40,$ra 
# |            338:  .mask 0x800f0000,-4 
# |            339:  .fmask 0x00000000,0 
# |            340:  .set noreorder 
# |            341:  .set nomacro 
# |              .
# |              .
# |              .
# |            351:  sw $16, 20($sp) # 4-byte Folded Spill 
# |            352:  addu $gp, $2, $25 
# |            353:  move $16, $7 
# |            354:  move $17, $6 
# |            355:  move $18, $5 
# |            356:  lw $25, %call16(__divdi3)($gp) 
# | check:328'2      ?                                possible intended match
# |            357:  .reloc $tmp4, R_MIPS_JALR, __divdi3 
# |            358: $tmp4: 
# |            359:  jalr $25 
# |            360:  move $19, $4 
# |            361:  multu $3, $16 
# |              .
# |              .
# |              .
# |            390:  .p2align 2 
# |            391:  .type udivrem2, at function 
# |            392:  .set nomicromips 
# |            393:  .set nomips16 
# |            394:  .ent udivrem2 
# |            395: udivrem2: # @udivrem2 
# | check:328'3              }              search range end (exclusive)
# | check:363'0             {               search range start (exclusive)
# | check:363'1                             error: no match found in search range
# |            396:  .frame $sp,40,$ra 
# |            397:  .mask 0x800f0000,-4 
# |            398:  .fmask 0x00000000,0 
# |            399:  .set noreorder 
# |            400:  .set nomacro 
# |              .
# |              .
# |              .
# |            410:  sw $16, 20($sp) # 4-byte Folded Spill 
# |            411:  addu $gp, $2, $25 
# |            412:  move $16, $7 
# |            413:  move $17, $6 
# |            414:  move $18, $5 
# |            415:  lw $25, %call16(__udivdi3)($gp) 
# | check:363'2      ?                                 possible intended match
# |            416:  .reloc $tmp5, R_MIPS_JALR, __udivdi3 
# |            417: $tmp5: 
# |            418:  jalr $25 
# |            419:  move $19, $4 
# |            420:  multu $3, $16 
# |              .
# |              .
# |              .
# |            448:  .type g0, at object # @g0 
# |            449:  .comm g0,4,4 
# |            450:  .type g1, at object # @g1 
# |            451:  .comm g1,4,4 
# |            452:  .section ".note.GNU-stack","", at progbits 
# |            453:  .text 
# | check:363'3            } search range end (exclusive)
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/PowerPC/p10-vector-modulo.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu    -mcpu=pwr10 -ppc-asm-full-reg-names -ppc-vsr-nums-as-vr < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\p10-vector-modulo.ll |    c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\p10-vector-modulo.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu -mcpu=pwr10 -ppc-asm-full-reg-names -ppc-vsr-nums-as-vr
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\p10-vector-modulo.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\p10-vector-modulo.ll:81:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: vmodud v4, v2, v3
# |               ^
# | <stdin>:103:18: note: scanning from here
# | # %bb.0: # %entry
# |                  ^
# | <stdin>:104:2: note: possible intended match here
# |  vdivud v4, v2, v3
# |  ^
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\p10-vector-modulo.ll:95:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: vmodsd v4, v2, v3
# |               ^
# | <stdin>:122:18: note: scanning from here
# | # %bb.0: # %entry
# |                  ^
# | <stdin>:123:2: note: possible intended match here
# |  vdivsd v4, v2, v3
# |  ^
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\p10-vector-modulo.ll:109:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: vmoduw v4, v2, v3
# |               ^
# | <stdin>:141:18: note: scanning from here
# | # %bb.0: # %entry
# |                  ^
# | <stdin>:142:2: note: possible intended match here
# |  vdivuw v4, v2, v3
# |  ^
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\p10-vector-modulo.ll:123:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: vmodsw v4, v2, v3
# |               ^
# | <stdin>:160:18: note: scanning from here
# | # %bb.0: # %entry
# |                  ^
# | <stdin>:161:2: note: possible intended match here
# |  vdivsw v4, v2, v3
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\p10-vector-modulo.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            98:  .prefalign 4, .Lfunc_end6, nop 
# |            99:  .type test_vmodud_with_div, at function 
# |           100: test_vmodud_with_div: # @test_vmodud_with_div 
# |           101: .Lfunc_begin6: 
# |           102:  .cfi_startproc 
# |           103: # %bb.0: # %entry 
# | next:81'0                      {   search range start (exclusive)
# | next:81'1                          error: no match found in search range
# |           104:  vdivud v4, v2, v3 
# | next:81'2       ?                   possible intended match
# |           105:  vmulld v3, v4, v3 
# |           106:  vsubudm v2, v2, v3 
# |           107:  vaddudm v2, v2, v4 
# |           108:  blr 
# |           109:  .long 0 
# |             .
# |             .
# |             .
# |           114:  # -- End function 
# |           115:  .globl test_vmodsd_with_div # -- Begin function test_vmodsd_with_div 
# |           116:  .p2align 2 
# |           117:  .prefalign 4, .Lfunc_end7, nop 
# |           118:  .type test_vmodsd_with_div, at function 
# |           119: test_vmodsd_with_div: # @test_vmodsd_with_div 
# | next:81'3                           }                          search range end (exclusive)
# |           120: .Lfunc_begin7: 
# |           121:  .cfi_startproc 
# |           122: # %bb.0: # %entry 
# | next:95'0                      {   search range start (exclusive)
# | next:95'1                          error: no match found in search range
# |           123:  vdivsd v4, v2, v3 
# | next:95'2       ?                   possible intended match
# |           124:  vmulld v3, v4, v3 
# |           125:  vsubudm v2, v2, v3 
# |           126:  vaddudm v2, v2, v4 
# |           127:  blr 
# |           128:  .long 0 
# |             .
# |             .
# |             .
# |           133:  # -- End function 
# |           134:  .globl test_vmoduw_with_div # -- Begin function test_vmoduw_with_div 
# |           135:  .p2align 2 
# |           136:  .prefalign 4, .Lfunc_end8, nop 
# |           137:  .type test_vmoduw_with_div, at function 
# |           138: test_vmoduw_with_div: # @test_vmoduw_with_div 
# | next:95'3                           }                          search range end (exclusive)
# |           139: .Lfunc_begin8: 
# |           140:  .cfi_startproc 
# |           141: # %bb.0: # %entry 
# | next:109'0                     {   search range start (exclusive)
# | next:109'1                         error: no match found in search range
# |           142:  vdivuw v4, v2, v3 
# | next:109'2      ?                   possible intended match
# |           143:  vmuluwm v3, v4, v3 
# |           144:  vsubuwm v2, v2, v3 
# |           145:  vadduwm v2, v2, v4 
# |           146:  blr 
# |           147:  .long 0 
# |             .
# |             .
# |             .
# |           152:  # -- End function 
# |           153:  .globl test_vmodsw_div # -- Begin function test_vmodsw_div 
# |           154:  .p2align 2 
# |           155:  .prefalign 4, .Lfunc_end9, nop 
# |           156:  .type test_vmodsw_div, at function 
# |           157: test_vmodsw_div: # @test_vmodsw_div 
# | next:109'3                     }                     search range end (exclusive)
# |           158: .Lfunc_begin9: 
# |           159:  .cfi_startproc 
# |           160: # %bb.0: # %entry 
# | next:123'0                     {   search range start (exclusive)
# | next:123'1                         error: no match found in search range
# |           161:  vdivsw v4, v2, v3 
# | next:123'2      ?                   possible intended match
# |           162:  vmuluwm v3, v4, v3 
# |           163:  vsubuwm v2, v2, v3 
# |           164:  vadduwm v2, v2, v4 
# |           165:  blr 
# |           166:  .long 0 
# |           167:  .quad 0 
# |           168: .Lfunc_end9: 
# |           169:  .size test_vmodsw_div, .Lfunc_end9-.Lfunc_begin9 
# |           170:  .cfi_endproc 
# |           171:  # -- End function 
# |           172:  .section ".note.GNU-stack","", at progbits 
# | next:123'3                                              } search range end (exclusive)
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/PowerPC/ppc64-P9-mod.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\llc.exe < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\ppc64-P9-mod.ll -mtriple=powerpc64le-unknown-linux-gnu -mcpu=pwr9 -verify-machineinstrs | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\ppc64-P9-mod.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=powerpc64le-unknown-linux-gnu -mcpu=pwr9 -verify-machineinstrs
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\ppc64-P9-mod.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\ppc64-P9-mod.ll:91:10: error: CHECK: expected string not found in input
# | ; CHECK: modsw {{[0-9]+}}, 3, 4
# |          ^
# | <stdin>:85:22: note: scanning from here
# |  .globl modulo_div_sw # -- Begin function modulo_div_sw
# |                      ^
# | <stdin>:98:2: note: possible intended match here
# |  divw 5, 3, 4
# |  ^
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\ppc64-P9-mod.ll:135:10: error: CHECK: expected string not found in input
# | ; CHECK: moduw {{[0-9]+}}, 3, 4
# |          ^
# | <stdin>:142:22: note: scanning from here
# |  .globl modulo_div_uw # -- Begin function modulo_div_uw
# |                      ^
# | <stdin>:155:3: note: possible intended match here
# |  divwu 5, 3, 4
# |   ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\ppc64-P9-mod.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              .
# |              .
# |              .
# |             80:  .quad 0 
# |             81: .Lfunc_end3: 
# |             82:  .size modulo_ud, .Lfunc_end3-.Lfunc_begin3 
# |             83:  .cfi_endproc 
# |             84:  # -- End function 
# |             85:  .globl modulo_div_sw # -- Begin function modulo_div_sw 
# | check:91'0                          {                                     search range start (exclusive)
# | check:91'1                                                                error: no match found in search range
# |             86:  .p2align 2 
# |             87:  .prefalign 4, .Lfunc_end4, nop 
# |             88:  .type modulo_div_sw, at function 
# |             89: modulo_div_sw: # @modulo_div_sw 
# |             90: .Lfunc_begin4: 
# |             91:  .cfi_startproc 
# |             92: .Lfunc_gep4: 
# |             93:  addis 2, 12, .TOC.-.Lfunc_gep4 at ha 
# |             94:  addi 2, 2, .TOC.-.Lfunc_gep4 at l 
# |             95: .Lfunc_lep4: 
# |             96:  .localentry modulo_div_sw, .Lfunc_lep4-.Lfunc_gep4 
# |             97: # %bb.0: # %entry 
# |             98:  divw 5, 3, 4 
# | check:91'2       ?              possible intended match
# |             99:  mullw 4, 5, 4 
# |            100:  sub 3, 3, 4 
# |            101:  addis 4, 2, .LC0 at toc@ha 
# |            102:  ld 4, .LC0 at toc@l(4) 
# |            103:  stw 3, 0(4) 
# |              .
# |              .
# |              .
# |            109:  .quad 0 
# |            110: .Lfunc_end4: 
# |            111:  .size modulo_div_sw, .Lfunc_end4-.Lfunc_begin4 
# |            112:  .cfi_endproc 
# |            113:  # -- End function 
# |            114:  .globl modulo_div_abc_sw # -- Begin function modulo_div_abc_sw 
# | check:91'3                               }                                        search range end (exclusive)
# |            115:  .p2align 2 
# |            116:  .prefalign 4, .Lfunc_end5, nop 
# |            117:  .type modulo_div_abc_sw, at function 
# |            118: modulo_div_abc_sw: # @modulo_div_abc_sw 
# |            119: .Lfunc_begin5: 
# |              .
# |              .
# |              .
# |            137:  .quad 0 
# |            138: .Lfunc_end5: 
# |            139:  .size modulo_div_abc_sw, .Lfunc_end5-.Lfunc_begin5 
# |            140:  .cfi_endproc 
# |            141:  # -- End function 
# |            142:  .globl modulo_div_uw # -- Begin function modulo_div_uw 
# | check:135'0                         {                                     search range start (exclusive)
# | check:135'1                                                               error: no match found in search range
# |            143:  .p2align 2 
# |            144:  .prefalign 4, .Lfunc_end6, nop 
# |            145:  .type modulo_div_uw, at function 
# |            146: modulo_div_uw: # @modulo_div_uw 
# |            147: .Lfunc_begin6: 
# |            148:  .cfi_startproc 
# |            149: .Lfunc_gep6: 
# |            150:  addis 2, 12, .TOC.-.Lfunc_gep6 at ha 
# |            151:  addi 2, 2, .TOC.-.Lfunc_gep6 at l 
# |            152: .Lfunc_lep6: 
# |            153:  .localentry modulo_div_uw, .Lfunc_lep6-.Lfunc_gep6 
# |            154: # %bb.0: # %entry 
# |            155:  divwu 5, 3, 4 
# | check:135'2       ?              possible intended match
# |            156:  mullw 4, 5, 4 
# |            157:  sub 3, 3, 4 
# |            158:  addis 4, 2, .LC3 at toc@ha 
# |            159:  ld 4, .LC3 at toc@l(4) 
# |            160:  stw 3, 0(4) 
# |              .
# |              .
# |              .
# |            166:  .quad 0 
# |            167: .Lfunc_end6: 
# |            168:  .size modulo_div_uw, .Lfunc_end6-.Lfunc_begin6 
# |            169:  .cfi_endproc 
# |            170:  # -- End function 
# |            171:  .globl modulo_div_swuw # -- Begin function modulo_div_swuw 
# | check:135'3                            }                                      search range end (exclusive)
# |            172:  .p2align 2 
# |            173:  .prefalign 4, .Lfunc_end7, nop 
# |            174:  .type modulo_div_swuw, at function 
# |            175: modulo_div_swuw: # @modulo_div_swuw 
# |            176: .Lfunc_begin7: 
# |              .
# |              .
# |              .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/PowerPC/srem-vector-lkk.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mcpu=pwr9 -verify-machineinstrs -ppc-vsr-nums-as-vr -ppc-asm-full-reg-names 		-mtriple=powerpc64le-unknown-linux-gnu < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\srem-vector-lkk.ll | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\srem-vector-lkk.ll --check-prefix=P9LE
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mcpu=pwr9 -verify-machineinstrs -ppc-vsr-nums-as-vr -ppc-asm-full-reg-names -mtriple=powerpc64le-unknown-linux-gnu
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\srem-vector-lkk.ll' --check-prefix=P9LE
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\srem-vector-lkk.ll:468:14: error: P9LE-NEXT: is not on the line after the previous match
# | ; P9LE-NEXT: vextuhrx r3, r3, v2
# |              ^
# | <stdin>:148:2: note: 'next' match was here
# |  vextuhrx r3, r3, v2
# |  ^
# | <stdin>:145:16: note: previous match ended here
# |  lis r4, -21386
# |                ^
# | <stdin>:146:1: note: non-matching line after previous match is here
# |  xxspltib v3, 95
# | ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\srem-vector-lkk.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |           140: combine_srem_sdiv: # @combine_srem_sdiv 
# |           141: .Lfunc_begin2: 
# |           142:  .cfi_startproc 
# |           143: # %bb.0: 
# |           144:  li r3, 0 
# |           145:  lis r4, -21386 
# | next:468'0                   {   search range start (exclusive)
# |           146:  xxspltib v3, 95 
# |           147:  ori r4, r4, 37253 
# |           148:  vextuhrx r3, r3, v2 
# | next:468'1      !~~~~~~~~~~~~~~~~~~   error: match on wrong line
# |           149:  vxor v4, v4, v4 
# |           150:  vupklsb v3, v3 
# |           151:  extsh r3, r3 
# |           152:  mulhw r5, r3, r4 
# |           153:  add r3, r5, r3 
# |             .
# |             .
# |             .
# |           197:  # -- End function 
# |           198:  .globl dont_fold_srem_power_of_two # -- Begin function dont_fold_srem_power_of_two 
# |           199:  .p2align 2 
# |           200:  .prefalign 4, .Lfunc_end3, nop 
# |           201:  .type dont_fold_srem_power_of_two, at function 
# |           202: dont_fold_srem_power_of_two: # @dont_fold_srem_power_of_two 
# | next:468'2                                 }                                 search range end (exclusive)
# |           203: .Lfunc_begin3: 
# |           204:  .cfi_startproc 
# |           205: # %bb.0: 
# |           206:  li r3, 0 
# |           207:  vextuhrx r3, r3, v2 
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/PowerPC/urem-vector-lkk.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mcpu=pwr9 -verify-machineinstrs -ppc-vsr-nums-as-vr -ppc-asm-full-reg-names 		-mtriple=powerpc64le-unknown-linux-gnu < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\urem-vector-lkk.ll | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\urem-vector-lkk.ll --check-prefixes=CHECK,P9LE
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mcpu=pwr9 -verify-machineinstrs -ppc-vsr-nums-as-vr -ppc-asm-full-reg-names -mtriple=powerpc64le-unknown-linux-gnu
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\urem-vector-lkk.ll' --check-prefixes=CHECK,P9LE
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\urem-vector-lkk.ll:348:14: error: P9LE-NEXT: is not on the line after the previous match
# | ; P9LE-NEXT: vextuhrx r3, r3, v2
# |              ^
# | <stdin>:118:2: note: 'next' match was here
# |  vextuhrx r3, r3, v2
# |  ^
# | <stdin>:115:13: note: previous match ended here
# |  lis r4, 689
# |             ^
# | <stdin>:116:1: note: non-matching line after previous match is here
# |  xxspltib v3, 95
# | ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\urem-vector-lkk.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |           110: combine_urem_udiv: # @combine_urem_udiv 
# |           111: .Lfunc_begin2: 
# |           112:  .cfi_startproc 
# |           113: # %bb.0: 
# |           114:  li r3, 0 
# |           115:  lis r4, 689 
# | next:348'0                {   search range start (exclusive)
# |           116:  xxspltib v3, 95 
# |           117:  ori r4, r4, 55879 
# |           118:  vextuhrx r3, r3, v2 
# | next:348'1      !~~~~~~~~~~~~~~~~~~   error: match on wrong line
# |           119:  vxor v4, v4, v4 
# |           120:  vupklsb v3, v3 
# |           121:  clrlwi r3, r3, 16 
# |           122:  mulhwu r3, r3, r4 
# |           123:  mtvsrd v5, r3 
# |             .
# |             .
# |             .
# |           151:  # -- End function 
# |           152:  .globl dont_fold_urem_power_of_two # -- Begin function dont_fold_urem_power_of_two 
# |           153:  .p2align 2 
# |           154:  .prefalign 4, .Lfunc_end3, nop 
# |           155:  .type dont_fold_urem_power_of_two, at function 
# |           156: dont_fold_urem_power_of_two: # @dont_fold_urem_power_of_two 
# | next:348'2                                 }                                 search range end (exclusive)
# |           157: .Lfunc_begin3: 
# |           158:  .cfi_startproc 
# |           159: # %bb.0: 
# |           160:  li r3, 0 
# |           161:  lis r4, 689 
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/RISCV/srem-lkk.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv32 -verify-machineinstrs < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\srem-lkk.ll    | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=CHECK,RV32I C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\srem-lkk.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv32 -verify-machineinstrs
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' -check-prefixes=CHECK,RV32I 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\srem-lkk.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\srem-lkk.ll:216:15: error: RV32I-NEXT: expected string not found in input
# | ; RV32I-NEXT: sw s1, 4(sp) # 4-byte Folded Spill
# |               ^
# | <stdin>:53:36: note: scanning from here
# |  sw s0, 8(sp) # 4-byte Folded Spill
# |                                    ^
# | <stdin>:64:2: note: possible intended match here
# |  lw s0, 8(sp) # 4-byte Folded Reload
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\srem-lkk.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            48:  .type combine_srem_sdiv, at function 
# |            49: combine_srem_sdiv: # @combine_srem_sdiv 
# |            50: # %bb.0: 
# |            51:  addi sp, sp, -16 
# |            52:  sw ra, 12(sp) # 4-byte Folded Spill 
# |            53:  sw s0, 8(sp) # 4-byte Folded Spill 
# | next:216'0                                       {   search range start (exclusive)
# | next:216'1                                           error: no match found in search range
# |            54:  mv s0, a0 
# |            55:  li a1, 95 
# |            56:  call __divsi3 
# |            57:  slli a1, a0, 5 
# |            58:  slli a2, a0, 7 
# |            59:  add a1, a0, a1 
# |            60:  sub s0, s0, a2 
# |            61:  add a1, s0, a1 
# |            62:  add a0, a1, a0 
# |            63:  lw ra, 12(sp) # 4-byte Folded Reload 
# |            64:  lw s0, 8(sp) # 4-byte Folded Reload 
# | next:216'2      ?                                     possible intended match
# |            65:  addi sp, sp, 16 
# |            66:  ret 
# |            67: .Lfunc_end4: 
# |            68:  .size combine_srem_sdiv, .Lfunc_end4-combine_srem_sdiv 
# |            69:  # -- End function 
# |            70:  .globl dont_fold_srem_power_of_two # -- Begin function dont_fold_srem_power_of_two 
# |            71:  .p2align 2 
# |            72:  .type dont_fold_srem_power_of_two, at function 
# |            73: dont_fold_srem_power_of_two: # @dont_fold_srem_power_of_two 
# | next:216'3                                 }                                 search range end (exclusive)
# |            74: # %bb.0: 
# |            75:  srai a1, a0, 31 
# |            76:  srli a1, a1, 26 
# |            77:  add a1, a0, a1 
# |            78:  andi a1, a1, -64 
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/RISCV/srem-vector-lkk.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv32 -verify-machineinstrs < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\srem-vector-lkk.ll    | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefix=RV32I C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\srem-vector-lkk.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv32 -verify-machineinstrs
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' -check-prefix=RV32I 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\srem-vector-lkk.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\srem-vector-lkk.ll:378:15: error: RV32I-NEXT: expected string not found in input
# | ; RV32I-NEXT: sw s8, 8(sp) # 4-byte Folded Spill
# |               ^
# | <stdin>:113:37: note: scanning from here
# |  sw s7, 12(sp) # 4-byte Folded Spill
# |                                     ^
# | <stdin>:166:2: note: possible intended match here
# |  lw s3, 28(sp) # 4-byte Folded Reload
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\srem-vector-lkk.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |           108:  sw s2, 32(sp) # 4-byte Folded Spill 
# |           109:  sw s3, 28(sp) # 4-byte Folded Spill 
# |           110:  sw s4, 24(sp) # 4-byte Folded Spill 
# |           111:  sw s5, 20(sp) # 4-byte Folded Spill 
# |           112:  sw s6, 16(sp) # 4-byte Folded Spill 
# |           113:  sw s7, 12(sp) # 4-byte Folded Spill 
# | next:378'0                                        {   search range start (exclusive)
# | next:378'1                                            error: no match found in search range
# |           114:  lh s1, 0(a1) 
# |           115:  lh s2, 4(a1) 
# |           116:  lh s3, 8(a1) 
# |           117:  lh s4, 12(a1) 
# |           118:  mv s0, a0 
# |             .
# |             .
# |             .
# |           161:  sh s5, 6(s0) 
# |           162:  lw ra, 44(sp) # 4-byte Folded Reload 
# |           163:  lw s0, 40(sp) # 4-byte Folded Reload 
# |           164:  lw s1, 36(sp) # 4-byte Folded Reload 
# |           165:  lw s2, 32(sp) # 4-byte Folded Reload 
# |           166:  lw s3, 28(sp) # 4-byte Folded Reload 
# | next:378'2      ?                                      possible intended match
# |           167:  lw s4, 24(sp) # 4-byte Folded Reload 
# |           168:  lw s5, 20(sp) # 4-byte Folded Reload 
# |           169:  lw s6, 16(sp) # 4-byte Folded Reload 
# |           170:  lw s7, 12(sp) # 4-byte Folded Reload 
# |           171:  addi sp, sp, 48 
# |           172:  ret 
# |           173: .Lfunc_end2: 
# |           174:  .size combine_srem_sdiv, .Lfunc_end2-combine_srem_sdiv 
# |           175:  # -- End function 
# |           176:  .globl dont_fold_srem_power_of_two # -- Begin function dont_fold_srem_power_of_two 
# |           177:  .p2align 2 
# |           178:  .type dont_fold_srem_power_of_two, at function 
# |           179: dont_fold_srem_power_of_two: # @dont_fold_srem_power_of_two 
# | next:378'3                                 }                                 search range end (exclusive)
# |           180: # %bb.0: 
# |           181:  addi sp, sp, -32 
# |           182:  sw ra, 28(sp) # 4-byte Folded Spill 
# |           183:  sw s0, 24(sp) # 4-byte Folded Spill 
# |           184:  sw s1, 20(sp) # 4-byte Folded Spill 
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/RISCV/urem-lkk.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv32 -verify-machineinstrs < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\urem-lkk.ll    | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=CHECK,RV32I C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\urem-lkk.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv32 -verify-machineinstrs
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' -check-prefixes=CHECK,RV32I 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\urem-lkk.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\urem-lkk.ll:112:15: error: RV32I-NEXT: expected string not found in input
# | ; RV32I-NEXT: sw s1, 4(sp) # 4-byte Folded Spill
# |               ^
# | <stdin>:32:36: note: scanning from here
# |  sw s0, 8(sp) # 4-byte Folded Spill
# |                                    ^
# | <stdin>:43:2: note: possible intended match here
# |  lw s0, 8(sp) # 4-byte Folded Reload
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\urem-lkk.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            27:  .type combine_urem_udiv, at function 
# |            28: combine_urem_udiv: # @combine_urem_udiv 
# |            29: # %bb.0: 
# |            30:  addi sp, sp, -16 
# |            31:  sw ra, 12(sp) # 4-byte Folded Spill 
# |            32:  sw s0, 8(sp) # 4-byte Folded Spill 
# | next:112'0                                       {   search range start (exclusive)
# | next:112'1                                           error: no match found in search range
# |            33:  mv s0, a0 
# |            34:  li a1, 95 
# |            35:  call __udivsi3 
# |            36:  slli a1, a0, 5 
# |            37:  slli a2, a0, 7 
# |            38:  add a1, a0, a1 
# |            39:  sub s0, s0, a2 
# |            40:  add a1, s0, a1 
# |            41:  add a0, a1, a0 
# |            42:  lw ra, 12(sp) # 4-byte Folded Reload 
# |            43:  lw s0, 8(sp) # 4-byte Folded Reload 
# | next:112'2      ?                                     possible intended match
# |            44:  addi sp, sp, 16 
# |            45:  ret 
# |            46: .Lfunc_end2: 
# |            47:  .size combine_urem_udiv, .Lfunc_end2-combine_urem_udiv 
# |            48:  # -- End function 
# |            49:  .globl dont_fold_urem_power_of_two # -- Begin function dont_fold_urem_power_of_two 
# |            50:  .p2align 2 
# |            51:  .type dont_fold_urem_power_of_two, at function 
# |            52: dont_fold_urem_power_of_two: # @dont_fold_urem_power_of_two 
# | next:112'3                                 }                                 search range end (exclusive)
# |            53: # %bb.0: 
# |            54:  andi a0, a0, 63 
# |            55:  ret 
# |            56: .Lfunc_end3: 
# |            57:  .size dont_fold_urem_power_of_two, .Lfunc_end3-dont_fold_urem_power_of_two 
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/RISCV/urem-vector-lkk.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv32 -verify-machineinstrs < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\urem-vector-lkk.ll    | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=CHECK,RV32I C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\urem-vector-lkk.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv32 -verify-machineinstrs
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' -check-prefixes=CHECK,RV32I 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\urem-vector-lkk.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\urem-vector-lkk.ll:331:15: error: RV32I-NEXT: expected string not found in input
# | ; RV32I-NEXT: sw s8, 8(sp) # 4-byte Folded Spill
# |               ^
# | <stdin>:113:37: note: scanning from here
# |  sw s7, 12(sp) # 4-byte Folded Spill
# |                                     ^
# | <stdin>:166:2: note: possible intended match here
# |  lw s3, 28(sp) # 4-byte Folded Reload
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\urem-vector-lkk.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |           108:  sw s2, 32(sp) # 4-byte Folded Spill 
# |           109:  sw s3, 28(sp) # 4-byte Folded Spill 
# |           110:  sw s4, 24(sp) # 4-byte Folded Spill 
# |           111:  sw s5, 20(sp) # 4-byte Folded Spill 
# |           112:  sw s6, 16(sp) # 4-byte Folded Spill 
# |           113:  sw s7, 12(sp) # 4-byte Folded Spill 
# | next:331'0                                        {   search range start (exclusive)
# | next:331'1                                            error: no match found in search range
# |           114:  lhu s1, 0(a1) 
# |           115:  lhu s2, 4(a1) 
# |           116:  lhu s3, 8(a1) 
# |           117:  lhu s4, 12(a1) 
# |           118:  mv s0, a0 
# |             .
# |             .
# |             .
# |           161:  sh s5, 6(s0) 
# |           162:  lw ra, 44(sp) # 4-byte Folded Reload 
# |           163:  lw s0, 40(sp) # 4-byte Folded Reload 
# |           164:  lw s1, 36(sp) # 4-byte Folded Reload 
# |           165:  lw s2, 32(sp) # 4-byte Folded Reload 
# |           166:  lw s3, 28(sp) # 4-byte Folded Reload 
# | next:331'2      ?                                      possible intended match
# |           167:  lw s4, 24(sp) # 4-byte Folded Reload 
# |           168:  lw s5, 20(sp) # 4-byte Folded Reload 
# |           169:  lw s6, 16(sp) # 4-byte Folded Reload 
# |           170:  lw s7, 12(sp) # 4-byte Folded Reload 
# |           171:  addi sp, sp, 48 
# |           172:  ret 
# |           173: .Lfunc_end2: 
# |           174:  .size combine_urem_udiv, .Lfunc_end2-combine_urem_udiv 
# |           175:  # -- End function 
# |           176:  .globl dont_fold_urem_power_of_two # -- Begin function dont_fold_urem_power_of_two 
# |           177:  .p2align 2 
# |           178:  .type dont_fold_urem_power_of_two, at function 
# |           179: dont_fold_urem_power_of_two: # @dont_fold_urem_power_of_two 
# | next:331'3                                 }                                 search range end (exclusive)
# |           180: # %bb.0: 
# |           181:  addi sp, sp, -32 
# |           182:  sw ra, 28(sp) # 4-byte Folded Spill 
# |           183:  sw s0, 24(sp) # 4-byte Folded Spill 
# |           184:  sw s1, 20(sp) # 4-byte Folded Spill 
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# 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/210344


More information about the llvm-commits mailing list