fallback: legalize: G_INSERT_SUBVECTOR <vscale x 2 x s16>,<4 x s16>
| Run: | explore-04ca53e65f-20261014-114124 |
| Kind: | fallback |
| Category: | legalize: G_INSERT_SUBVECTOR <vscale x 2 x s16>,<4 x s16> NEW |
| Occurrences: | 4 in 2 configs, 2 test files |
| Snippet from: | smulh.2aac799668.ll (mutant of smulh.ll) @smulh_v4i16 via llvm-extract + llvm-reduce |
| Config: | -mtriple=riscv32 -mattr=+m,+v |
| Local check: | reproduces at 04ca53e65f |
| Compiler Explorer: | https://godbolt.org/z/T6cP1qxc6 (llc-assertions-trunk, checked 2026-10-14 11:50 UTC): G reproduces |
Snippet:
define <4 x i16> @smulh_v4i16() {
ret <4 x i16> zeroinitializer
}
Compiler Explorer panes:
| Pane | Options | Exit | Insts | stderr |
|---|
| GlobalISel | -mtriple=riscv32 -mattr=+m,+v -global-isel -global-isel-abort=2 -pass-remarks-missed=gisel.* | 0 | 3 | remark: <unknown>:0:0: unable to legalize instruction: %3:_(<vscale x 2 x s16>) = G_INSERT_SUBVECTOR %2:_, %0:_(<4 x s16>), 0 (in function: smulh_v4i16) warning: Instruction selection used fallback path for smulh_v4i16 |
| SelectionDAG (control) | -mtriple=riscv32 -mattr=+m,+v -global-isel=0 | 0 | 3 | - |
Reproduce:
llc -mtriple=riscv32 -mattr=+m,+v -global-isel -global-isel-abort=2 -pass-remarks-missed=gisel.* snippet.ll -o -
llc -mtriple=riscv32 -mattr=+m,+v -global-isel=0 snippet.ll -o -
Local llc output:
remark: <unknown>:0:0: unable to legalize instruction: %3:_(<vscale x 2 x s16>) = G_INSERT_SUBVECTOR %2:_, %0:_(<4 x s16>), 0 (in function: smulh_v4i16)
warning: Instruction selection used fallback path for smulh_v4i16
Occurrences (4):
| Input | Function | Config |
|---|
| smulh.2aac799668.ll (mutant of smulh.ll) | smulh_v4i16 | -mtriple=riscv32 -mattr=+m,+v |
| smulh.6e808a6a84.ll (mutant of smulh.ll) | smulh_v4i16 | -mtriple=riscv64 -mattr=+m,+v |
| umulh.28d0493d16.ll (mutant of umulh.ll) | umulh_v4i16 | -mtriple=riscv32 -mattr=+m,+v |
| umulh.ea0db43fad.ll (mutant of umulh.ll) | umulh_v4i16 | -mtriple=riscv64 -mattr=+m,+v |
Generated 2026-10-15 08:05 UTC.