fallback: legalize: G_EXTRACT_VECTOR_ELT s8,<8 x s8>,s32

Run:explore-bc8218b282-20261015-075519
Kind:fallback
Category:legalize: G_EXTRACT_VECTOR_ELT s8,<8 x s8>,s32 NEW
Occurrences:43 in 41 configs, 8 test files
Snippet from:reserved-regs.01a065a5fc.ll (mutant of reserved-regs.ll) @foo via llvm-extract + llvm-reduce
Config:-mtriple=riscv32 -mattr=+reserve-x23 -verify-machineinstrs
Local check:reproduces at bc8218b282
Compiler Explorer:https://godbolt.org/z/b63GjYx37 (llc-assertions-trunk, checked 2026-10-15 08:05 UTC): G reproduces

Snippet:

define i8 @foo(i8 %LGV1) {
SW_D:
  %E = extractelement <8 x i8> zeroinitializer, i8 %LGV1
  ret i8 %E
}

Compiler Explorer panes:

PaneOptionsExitInstsstderr
GlobalISel-mtriple=riscv32 -mattr=+reserve-x23 -verify-machineinstrs -global-isel -global-isel-abort=2 -pass-remarks-missed=gisel.*09remark: <unknown>:0:0: unable to legalize instruction: %2:_(s8) = G_EXTRACT_VECTOR_ELT %3:_(<8 x s8>), %5:_(s32) (in function: foo)
warning: Instruction selection used fallback path for foo
SelectionDAG (control)-mtriple=riscv32 -mattr=+reserve-x23 -verify-machineinstrs -global-isel=009-

Reproduce:

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

Local llc output:

remark: <unknown>:0:0: unable to legalize instruction: %2:_(s8) = G_EXTRACT_VECTOR_ELT %3:_(<8 x s8>), %5:_(s32) (in function: foo)
warning: Instruction selection used fallback path for foo

Occurrences (43):

InputFunctionConfig
graalcc.3ce872953f.ll (mutant of graalcc.ll)keep_live-mtriple=riscv32
iabs.bed9a8cb4a.ll (mutant of iabs.ll)zext16_abs8-mtriple=riscv32 -verify-machineinstrs
iabs.fb197d0d86.ll (mutant of iabs.ll)zext16_abs8-mtriple=riscv32 -mattr=+zbb -verify-machineinstrs
init-array.14b3c63af1.ll (mutant of init-array.ll)_GLOBAL__I_a-mtriple=riscv32-unknown-linux-gnu -verify-machineinstrs
init-array.1a61a3fe7d.ll (mutant of init-array.ll)_GLOBAL__I_a-mtriple=riscv32-unknown-elf -verify-machineinstrs
init-array.389fb87815.ll (mutant of init-array.ll)_GLOBAL__I_a-mtriple=riscv32-unknown-linux-gnu -verify-machineinstrs -use-ctors
init-array.448b57260f.ll (mutant of init-array.ll)_GLOBAL__I_a-mtriple=riscv32-unknown-elf -verify-machineinstrs -use-ctors
reserved-regs.01a065a5fc.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x23 -verify-machineinstrs
reserved-regs.0f63d0178b.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x4 -verify-machineinstrs
reserved-regs.24dfea87cb.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x21 -verify-machineinstrs
reserved-regs.26a262afad.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x14 -verify-machineinstrs
reserved-regs.2a751f7697.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x30 -verify-machineinstrs
reserved-regs.30e5638737.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x17 -verify-machineinstrs
reserved-regs.39cd835ebf.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x19 -verify-machineinstrs
reserved-regs.3a11177ad7.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x10 -verify-machineinstrs
reserved-regs.41a18c2228.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x29 -verify-machineinstrs
reserved-regs.603debc2ec.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x26 -verify-machineinstrs
reserved-regs.7264848009.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x15 -verify-machineinstrs
reserved-regs.77cb62202c.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x5 -verify-machineinstrs
reserved-regs.852f440d41.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x9 -verify-machineinstrs
reserved-regs.94312b961c.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x7 -verify-machineinstrs
reserved-regs.99d1de48f3.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x18 -verify-machineinstrs
reserved-regs.a7007b1dbc.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x11 -verify-machineinstrs
reserved-regs.a9d0f5b622.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x3 -verify-machineinstrs
reserved-regs.aba3d5d1d6.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x28 -verify-machineinstrs
reserved-regs.b1e28b9b52.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x25 -verify-machineinstrs
reserved-regs.b841aa7d82.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x8 -verify-machineinstrs
reserved-regs.c195b0f56f.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x13 -verify-machineinstrs
reserved-regs.cd8580f7c5.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x12 -verify-machineinstrs
reserved-regs.d16b1de52f.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x20 -verify-machineinstrs
reserved-regs.e11ccef0ee.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x6 -verify-machineinstrs
reserved-regs.e68601cece.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x24 -verify-machineinstrs
reserved-regs.ed11b8bf89.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x22 -verify-machineinstrs
reserved-regs.ed50f9f7ba.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x16 -verify-machineinstrs
reserved-regs.ed99128772.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x27 -verify-machineinstrs
reserved-regs.fff69dbeab.ll (mutant of reserved-regs.ll)foo-mtriple=riscv32 -mattr=+reserve-x31 -verify-machineinstrs
saverestore-scs.55fc8e33bb.ll (mutant of saverestore-scs.ll)callee_scs-mtriple=riscv32 -mattr=+f,+save-restore -target-abi=ilp32f
saverestore-scs.7b7a08645a.ll (mutant of saverestore-scs.ll)callee_scs-mtriple=riscv32
saverestore-scs.ea2c45e532.ll (mutant of saverestore-scs.ll)callee_scs-mtriple=riscv32 -mattr=+save-restore
split-udiv-by-constant.663dbc75c6.ll (mutant of split-udiv-by-constant.ll)test_urem_3_shl_XLplus5-mtriple=riscv32 -mattr=+m
split-urem-by-constant.bfe4b46dcc.ll (mutant of split-urem-by-constant.ll)test_urem_3_shl_XLplus5-mtriple=riscv32 -mattr=+m
tlsdesc-clobber.ab99b4551d.ll (mutant of tlsdesc-clobber.ll)test_clobber-mtriple=riscv32 -relocation-model=pic -enable-tlsdesc
tlsdesc-clobber.e6eea8d7c2.ll (mutant of tlsdesc-clobber.ll)test_clobber-mtriple=riscv32 -mattr=+v -relocation-model=pic -enable-tlsdesc

Generated 2026-10-15 08:05 UTC.