fallback: legalize: G_INSERT_VECTOR_ELT <4 x s32>,s32

Run:explore-bc8218b282-20261015-075519
Kind:fallback
Category:legalize: G_INSERT_VECTOR_ELT <4 x s32>,s32 NEW
Occurrences:7 in 7 configs, 4 test files
Snippet from:fpenv-xlen.544e288230.ll (mutant of fpenv-xlen.ll) @func_set_fpenv via llvm-extract
Config:-mtriple=riscv32 -mattr=+f -verify-machineinstrs
Local check:reproduces at bc8218b282
Compiler Explorer:not uploaded (over --godbolt-limit or disabled)

Snippet:

@G.2 = external global <4 x float>
@G.3 = external global i128

define void @func_set_fpenv(i32 %fpenv) {
entry:
  %A = alloca <4 x float>, align 16
  store <4 x float> poison, ptr %A, align 16
  %LGV1 = load i128, ptr @G.3, align 4
  %LGV = load <4 x float>, ptr @G.2, align 16
  call void @llvm.set.fpenv.i32(i32 %fpenv)
  %I = insertelement <4 x float> %LGV, float +inf, i128 %LGV1
  store <4 x float> %I, ptr %A, align 16
  ret void
}

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: readwrite)
declare void @llvm.set.fpenv.i32(i32) #0

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: readwrite) }

Reproduce:

llc -mtriple=riscv32 -mattr=+f -verify-machineinstrs -global-isel -global-isel-abort=2 -pass-remarks-missed=gisel.* snippet.ll -o -
llc -mtriple=riscv32 -mattr=+f -verify-machineinstrs -global-isel=0 snippet.ll -o -

Local llc output:

remark: <unknown>:0:0: unable to legalize instruction: %7:_(<4 x s32>) = G_INSERT_VECTOR_ELT %5:_, %8:_(s32), %9:_(s32) (in function: func_set_fpenv)
warning: Instruction selection used fallback path for func_set_fpenv

Occurrences (7):

InputFunctionConfig
double-previous-failure.3e72e75c35.ll (mutant of double-previous-failure.ll)main-mtriple=riscv32 -mattr=+d -target-abi=ilp32 -verify-machineinstrs
double-previous-failure.ade17893e4.ll (mutant of double-previous-failure.ll)main-mtriple=riscv32 -mattr=+zdinx -target-abi=ilp32 -verify-machineinstrs
fpenv-xlen.544e288230.ll (mutant of fpenv-xlen.ll)func_set_fpenv-mtriple=riscv32 -mattr=+f -verify-machineinstrs
fpenv-xlen.62acf4dc83.ll (mutant of fpenv-xlen.ll)func_set_fpenv-mtriple=riscv32 -mattr=+zfinx -verify-machineinstrs
fpenv-xlen.e075f4cc2b.ll (mutant of fpenv-xlen.ll)func_set_fpenv-mtriple=riscv32 -mattr=+f -verify-machineinstrs -O0
xcvbitmanip.c257710e0c.ll (mutant of xcvbitmanip.ll)ctpop_i32_ne_one-O0 -mtriple=riscv32 -mattr=+xcvbitmanip -verify-machineinstrs
zext-with-load-is-free.b5b3581821.ll (mutant of zext-with-load-is-free.ll)test_zext_i16-mtriple=riscv32 -verify-machineinstrs

Generated 2026-10-15 08:05 UTC.