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

Run:explore-bc8218b282-20261015-075519
Kind:fallback
Category:legalize: G_INSERT_VECTOR_ELT <4 x s32>,s32,s64 NEW
Occurrences:3 in 3 configs, 1 test files
Snippet from:fpenv-xlen.2dacc3b78e.ll (mutant of fpenv-xlen.ll) @func_set_fpenv via llvm-extract
Config:-mtriple=riscv64 -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(i64 %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.i64(i64 %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.i64(i64) #0

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

Reproduce:

llc -mtriple=riscv64 -mattr=+f -verify-machineinstrs -global-isel -global-isel-abort=2 -pass-remarks-missed=gisel.* snippet.ll -o -
llc -mtriple=riscv64 -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:_(s64) (in function: func_set_fpenv)
warning: Instruction selection used fallback path for func_set_fpenv

Occurrences (3):

InputFunctionConfig
fpenv-xlen.2dacc3b78e.ll (mutant of fpenv-xlen.ll)func_set_fpenv-mtriple=riscv64 -mattr=+f -verify-machineinstrs
fpenv-xlen.84b0f62817.ll (mutant of fpenv-xlen.ll)func_set_fpenv-mtriple=riscv64 -mattr=+f -verify-machineinstrs -O0
fpenv-xlen.e58a9e04ff.ll (mutant of fpenv-xlen.ll)func_set_fpenv-mtriple=riscv64 -mattr=+zfinx -verify-machineinstrs

Generated 2026-10-15 08:05 UTC.