fallback: legalize: G_SHUFFLE_VECTOR <2 x s64>
| Run: | explore-04ca53e65f-20261014-114124 |
| Kind: | fallback |
| Category: | legalize: G_SHUFFLE_VECTOR <2 x s64> NEW |
| Occurrences: | 1 in 1 configs, 1 test files |
| Snippet from: | xcvbi.79d6eea728.ll (mutant of xcvbi.ll) @select_bneimm_1 via llvm-extract |
| Config: | -O0 -mtriple=riscv32 -mattr=+xcvbi -verify-machineinstrs |
| Local check: | reproduces at 04ca53e65f |
| Compiler Explorer: | not uploaded (over --godbolt-limit or disabled) |
Snippet:
@G = external global <2 x i64>
@G.1 = external global <2 x i64>
define i32 @select_bneimm_1(i32 %a, i32 %x, i32 %y) {
entry:
%LGV1 = load <2 x i64>, ptr @G.1, align 16
%LGV = load <2 x i64>, ptr @G, align 16
%cmp.not = icmp ne i32 %a, 0
%S = shufflevector <2 x i64> %LGV, <2 x i64> %LGV1, <2 x i32> poison
%cond = select i1 %cmp.not, i32 %y, i32 %x
store <2 x i64> %S, ptr poison, align 16
ret i32 %cond
}
Reproduce:
llc -O0 -mtriple=riscv32 -mattr=+xcvbi -verify-machineinstrs -global-isel -global-isel-abort=2 -pass-remarks-missed=gisel.* snippet.ll -o -
llc -O0 -mtriple=riscv32 -mattr=+xcvbi -verify-machineinstrs -global-isel=0 snippet.ll -o -
Local llc output:
remark: <unknown>:0:0: unable to legalize instruction: %9:_(<2 x s64>) = G_SHUFFLE_VECTOR %5:_(<2 x s64>), %3:_, shufflemask(undef, undef) (in function: select_bneimm_1)
warning: Instruction selection used fallback path for select_bneimm_1
Occurrences (1):
| Input | Function | Config |
|---|
| xcvbi.79d6eea728.ll (mutant of xcvbi.ll) | select_bneimm_1 | -O0 -mtriple=riscv32 -mattr=+xcvbi -verify-machineinstrs |
Generated 2026-10-15 08:05 UTC.