fallback: legalize: G_SREM <4 x s32>

Run:main-bc8218b282-20261015-074651
Kind:fallback
Category:legalize: G_SREM <4 x s32> NEW
Occurrences:45 in 37 configs, 19 test files
Snippet from:patchable-function-entry.0601f89d30.ll (mutant of patchable-function-entry.ll) @f3_2 via llvm-extract + llvm-reduce
Config:-mtriple=riscv64 -mattr=+c -M no-aliases
Local check:reproduces at bc8218b282
Compiler Explorer:https://godbolt.org/z/aox3jKo8f (llc-assertions-trunk, checked 2026-10-14 11:04 UTC): G reproduces

Snippet:

define <4 x i32> @f3_2() {
  %B = srem <4 x i32> splat (i32 1), zeroinitializer
  ret <4 x i32> %B
}

Compiler Explorer panes:

PaneOptionsExitInstsstderr
GlobalISel-mtriple=riscv64 -mattr=+c -M no-aliases -global-isel -global-isel-abort=2 -pass-remarks-missed=gisel.*01remark: <unknown>:0:0: unable to legalize instruction: %5:_(<4 x s32>) = G_SREM %1:_, %3:_ (in function: f3_2)
warning: Instruction selection used fallback path for f3_2
SelectionDAG (control)-mtriple=riscv64 -mattr=+c -M no-aliases -global-isel=001-

Reproduce:

llc -mtriple=riscv64 -mattr=+c -M no-aliases -global-isel -global-isel-abort=2 -pass-remarks-missed=gisel.* snippet.ll -o -
llc -mtriple=riscv64 -mattr=+c -M no-aliases -global-isel=0 snippet.ll -o -

Local llc output:

remark: <unknown>:0:0: unable to legalize instruction: %5:_(<4 x s32>) = G_SREM %1:_, %3:_ (in function: f3_2)
warning: Instruction selection used fallback path for f3_2

Occurrences (45):

InputFunctionConfig
add-imm64-to-sub.217aa7d818.ll (mutant of add-imm64-to-sub.ll)add_multiuse-mtriple=riscv64 -mattr=+m,+zbb
add-imm64-to-sub.baff896e76.ll (mutant of add-imm64-to-sub.ll)add_multiuse-mtriple=riscv64 -mattr=+m,+zbb,+zbs
calling-conv-ilp32f-ilp32d-common.7f2ad56346.ll (mutant of calling-conv-ilp32f-ilp32d-common.ll)caller_float_in_fpr_exhausted_gprs-mtriple=riscv32 -verify-machineinstrs -mattr=+f -target-abi ilp32f
calling-conv-ilp32f-ilp32d-common.89bc1fbe3d.ll (mutant of calling-conv-ilp32f-ilp32d-common.ll)caller_float_in_fpr_exhausted_gprs-mtriple=riscv32 -verify-machineinstrs -mattr=+d -target-abi ilp32d
dso_local_equivalent.83016675db.ll (mutant of dso_local_equivalent.ll)f3-mtriple=riscv64
dso_local_equivalent.a1c31214a1.ll (mutant of dso_local_equivalent.ll)f3-mtriple=riscv32
emutls.65f9bed891.ll (mutant of emutls.ll)get_external_x-mtriple=riscv64 -emulated-tls -relocation-model=pic
emutls.8f353c72b8.ll (mutant of emutls.ll)get_external_x-mtriple=riscv32 -emulated-tls -relocation-model=pic
half-arith-strict.3415476fcd.ll (mutant of half-arith-strict.ll)fdiv_h-mtriple=riscv32 -mattr=+zfhmin -verify-machineinstrs -disable-strictnode-mutation -target-abi ilp32f
half-arith-strict.468fce1693.ll (mutant of half-arith-strict.ll)fdiv_h-mtriple=riscv64 -mattr=+zfh -verify-machineinstrs -disable-strictnode-mutation -target-abi lp64f
half-arith-strict.682f7080cd.ll (mutant of half-arith-strict.ll)fdiv_h-mtriple=riscv64 -mattr=+zhinx -verify-machineinstrs -disable-strictnode-mutation -target-abi lp64
half-arith-strict.89785ce26c.ll (mutant of half-arith-strict.ll)fdiv_h-mtriple=riscv32 -mattr=+zhinxmin -verify-machineinstrs -disable-strictnode-mutation -target-abi ilp32
half-arith-strict.8aca3d0865.ll (mutant of half-arith-strict.ll)fdiv_h-mtriple=riscv64 -mattr=+zhinxmin -verify-machineinstrs -disable-strictnode-mutation -target-abi lp64
half-arith-strict.97eebfa86c.ll (mutant of half-arith-strict.ll)fdiv_h-mtriple=riscv32 -mattr=+zhinx -verify-machineinstrs -disable-strictnode-mutation -target-abi ilp32
half-arith-strict.a7f5a7469e.ll (mutant of half-arith-strict.ll)fdiv_h-mtriple=riscv32 -mattr=+zfh -verify-machineinstrs -disable-strictnode-mutation -target-abi ilp32f
half-arith-strict.f4e313dc73.ll (mutant of half-arith-strict.ll)fdiv_h-mtriple=riscv64 -mattr=+zfhmin -verify-machineinstrs -disable-strictnode-mutation -target-abi lp64f
llvm.exp10.004726ed26.ll (mutant of llvm.exp10.ll)exp10_v4f16-mtriple=riscv64 -mattr=+d -verify-machineinstrs -target-abi=lp64d
llvm.exp10.0f6bdbd877.ll (mutant of llvm.exp10.ll)exp10_v4f16-mtriple=riscv32 -mattr=+d -verify-machineinstrs -target-abi=ilp32d
machine-sink-load-immediate.20a96cb521.ll (mutant of machine-sink-load-immediate.ll)branch_dispatch-mtriple=riscv64
patchable-function-entry.0601f89d30.ll (mutant of patchable-function-entry.ll)f3_2-mtriple=riscv64 -mattr=+c -M no-aliases
patchable-function-entry.0ca8cbe3ba.ll (mutant of patchable-function-entry.ll)f3_2-mtriple=riscv64 -M no-aliases
patchable-function-entry.8125a1fd25.ll (mutant of patchable-function-entry.ll)f3_2-mtriple=riscv32 -mattr=+c -M no-aliases
patchable-function-entry.fa582a2395.ll (mutant of patchable-function-entry.ll)f3_2-mtriple=riscv32 -M no-aliases
rvp-simd-64.7d132452ed.ll (mutant of rvp-simd-64.ll)test_pssubu_b-mtriple=riscv64 -mattr=+experimental-p,+m,+zbb -verify-machineinstrs
rvp-widening-shift.4065451125.ll (mutant of rvp-widening-shift.ll)pwsla_v2i16-mtriple=riscv64 -mattr=+experimental-p -verify-machineinstrs
shift-amount-mod.aaa3cd14d8.ll (mutant of shift-amount-mod.ll)lshr_by_complemented_64-mtriple=riscv32 -verify-machineinstrs
shift-amount-mod.bfb2e50a3e.ll (mutant of shift-amount-mod.ll)lshr_by_complemented_64-mtriple=riscv64 -verify-machineinstrs
shl-cttz.0bc9e27678.ll (mutant of shl-cttz.ll)shl_cttz_constant_i16-mtriple=riscv32 -mattr=+m,+zbb
shl-cttz.64f4a3833c.ll (mutant of shl-cttz.ll)shl_cttz_constant_i16-mtriple=riscv64 -mattr=+m,+zbb
shl-cttz.e05866a768.ll (mutant of shl-cttz.ll)shl_cttz_constant_i16-mtriple=riscv64 -mattr=+m
shl-cttz.fedb71ad0c.ll (mutant of shl-cttz.ll)shl_cttz_constant_i16-mtriple=riscv32 -mattr=+m
shl-demanded.3f2225aa30.ll (mutant of shl-demanded.ll)zext_shl_trunc_smaller-mtriple=riscv64 -verify-machineinstrs
shl-demanded.ef78e62924.ll (mutant of shl-demanded.ll)zext_shl_trunc_smaller-mtriple=riscv32 -verify-machineinstrs
simplify-condbr.48dc1a26b4.ll (mutant of simplify-condbr.ll)S_regrepeat-mtriple=riscv64 -verify-machineinstrs
stack-clash-prologue-nounwind.1c6723dbfe.ll (mutant of stack-clash-prologue-nounwind.ll)f3-mtriple=riscv64 -mattr=+m -O2 -verify-machineinstrs
stack-clash-prologue-nounwind.f04fb04895.ll (mutant of stack-clash-prologue-nounwind.ll)f3-mtriple=riscv32 -mattr=+m -O2 -verify-machineinstrs
ucmp.4c36d2a251.ll (mutant of ucmp.ll)ucmp.8.64-mtriple=riscv32
ucmp.e9cd8ddb41.ll (mutant of ucmp.ll)ucmp.8.64-mtriple=riscv64
usub_sat.186dbc5338.ll (mutant of usub_sat.ll)func8-mtriple=riscv64 -mattr=+m,+zbb,+v
usub_sat.239b1d271d.ll (mutant of usub_sat.ll)func8-mtriple=riscv32 -mattr=+m,+zbb,+v
usub_sat.b02927da95.ll (mutant of usub_sat.ll)func8-mtriple=riscv32 -mattr=+m,+v
usub_sat.e41e8cb70a.ll (mutant of usub_sat.ll)func8-mtriple=riscv64 -mattr=+m,+v
xtheadmac.4dd5e0daae.ll (mutant of xtheadmac.ll)mulaw_i64-mtriple=riscv32 -mattr=+xtheadmac -mattr=+m -verify-machineinstrs
xtheadmac.7487649ce0.ll (mutant of xtheadmac.ll)mulaw_i64-mtriple=riscv64 -mattr=+xtheadmac -mattr=+m -verify-machineinstrs
zext-with-load-is-free.06def52ae8.ll (mutant of zext-with-load-is-free.ll)test_zext_i8-mtriple=riscv32 -verify-machineinstrs

Generated 2026-10-15 08:05 UTC.