[llvm] [RISCV] Check SP-relative offset in needsFrameBaseReg when FP offset overflows (PR #197368)

via llvm-commits llvm-commits at lists.llvm.org
Tue May 12 23:54:58 PDT 2026


github-actions[bot] wrote:

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

* 134662 tests passed
* 3269 tests skipped
* 1 test failed

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

### LLVM
<details>
<summary>LLVM.CodeGen/RISCV/GlobalISel/vararg.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
sed 's/iXLen/i32/g' C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll | c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv32 -global-isel  -verify-machineinstrs    | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=RV32,ILP32 C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll
# executed command: sed s/iXLen/i32/g 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv32 -global-isel -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=RV32,ILP32 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# RUN: at line 4
sed 's/iXLen/i32/g' C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll | c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv32 -global-isel  -mattr=+d -verify-machineinstrs    | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=RV32,RV32D-ILP32 C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll
# executed command: sed s/iXLen/i32/g 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv32 -global-isel -mattr=+d -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=RV32,RV32D-ILP32 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# RUN: at line 6
sed 's/iXLen/i32/g' C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll | c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv32 -global-isel  -mattr=+d -target-abi ilp32f      -verify-machineinstrs    | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=RV32,RV32D-ILP32F C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll
# executed command: sed s/iXLen/i32/g 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv32 -global-isel -mattr=+d -target-abi ilp32f -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=RV32,RV32D-ILP32F 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# RUN: at line 9
sed 's/iXLen/i32/g' C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll | c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv32 -global-isel  -mattr=+d -target-abi ilp32d      -verify-machineinstrs    | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=RV32,RV32D-ILP32D C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll
# executed command: sed s/iXLen/i32/g 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv32 -global-isel -mattr=+d -target-abi ilp32d -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=RV32,RV32D-ILP32D 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# RUN: at line 12
sed 's/iXLen/i64/g' C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll | c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv64 -global-isel  -verify-machineinstrs    | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=RV64,LP64 C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll
# executed command: sed s/iXLen/i64/g 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv64 -global-isel -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=RV64,LP64 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# RUN: at line 14
sed 's/iXLen/i64/g' C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll | c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv64 -global-isel  -mattr=+d -target-abi lp64f      -verify-machineinstrs    | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=RV64,LP64F C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll
# executed command: sed s/iXLen/i64/g 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv64 -global-isel -mattr=+d -target-abi lp64f -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=RV64,LP64F 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# RUN: at line 17
sed 's/iXLen/i64/g' C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll | c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv64 -global-isel  -mattr=+d -target-abi lp64d      -verify-machineinstrs    | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=RV64,LP64D C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll
# executed command: sed s/iXLen/i64/g 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv64 -global-isel -mattr=+d -target-abi lp64d -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=RV64,LP64D 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# RUN: at line 20
sed 's/iXLen/i32/g' C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll | c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=riscv32 -global-isel      -frame-pointer=all -target-abi ilp32 -verify-machineinstrs    | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=RV32-WITHFP C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll
# executed command: sed s/iXLen/i32/g 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=riscv32 -global-isel -frame-pointer=all -target-abi ilp32 -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=RV32-WITHFP 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll:1673:21: error: RV32-WITHFP-NEXT: expected string not found in input
# | ; RV32-WITHFP-NEXT: mv a0, sp
# |                     ^
# | <stdin>:412:16: note: scanning from here
# |  sub sp, sp, a0
# |                ^
# | <stdin>:417:4: note: possible intended match here
# |  addi a0, s0, 4
# |    ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\RISCV\GlobalISel\vararg.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              .
# |              .
# |              .
# |            407:  .cfi_offset s0, -40 
# |            408:  addi s0, sp, 2000 
# |            409:  .cfi_def_cfa s0, 32 
# |            410:  lui a0, 24414 
# |            411:  addi a0, a0, -1728 
# |            412:  sub sp, sp, a0 
# | next:1673'0                    X error: no match found
# |            413:  sw a1, 4(s0) 
# | next:1673'0     ~~~~~~~~~~~~~~
# |            414:  sw a2, 8(s0) 
# | next:1673'0     ~~~~~~~~~~~~~~
# |            415:  sw a3, 12(s0) 
# | next:1673'0     ~~~~~~~~~~~~~~~
# |            416:  sw a4, 16(s0) 
# | next:1673'0     ~~~~~~~~~~~~~~~
# |            417:  addi a0, s0, 4 
# | next:1673'0     ~~~~~~~~~~~~~~~~
# | next:1673'1        ?             possible intended match
# |            418:  sw a0, 0(sp) 
# | next:1673'0     ~~~~~~~~~~~~~~
# |            419:  lw a0, 0(sp) 
# | next:1673'0     ~~~~~~~~~~~~~~
# |            420:  sw a5, 20(s0) 
# | next:1673'0     ~~~~~~~~~~~~~~~
# |            421:  sw a6, 24(s0) 
# | next:1673'0     ~~~~~~~~~~~~~~~
# |            422:  sw a7, 28(s0) 
# | next:1673'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/197368


More information about the llvm-commits mailing list