fallback: legalize: G_MUL <2 x s64>
| Run: | main-04ca53e65f-20261014-113325 |
| Kind: | fallback |
| Category: | legalize: G_MUL <2 x s64> NEW |
| Occurrences: | 5 in 5 configs, 2 test files |
| Snippet from: | rv64zbb-zbkb.137688f794.ll (mutant of rv64zbb-zbkb.ll) @xor_hoisted_not_i64_swapped via llvm-extract |
| Config: | -mtriple=riscv64 -mattr=+zbkb -verify-machineinstrs |
| Local check: | reproduces at 04ca53e65f |
| Compiler Explorer: | not uploaded (over --godbolt-limit or disabled) |
Snippet:
@G = external global <2 x i64>
define i64 @xor_hoisted_not_i64_swapped(i64 %x, i64 %m, i1 zeroext %cond) {
%A = alloca <2 x i64>, align 16
store <2 x i64> poison, ptr %A, align 16
%LGV = load <2 x i64>, ptr @G, align 16
%B = mul <2 x i64> splat (i64 1), %LGV
%a = xor i64 %m, -1
store <2 x i64> %B, ptr %A, align 16
br i1 %cond, label %mask, label %identity
mask: ; preds = %0
%masked = xor i64 %x, %a
ret i64 %masked
identity: ; preds = %0
ret i64 %x
}
Reproduce:
llc -mtriple=riscv64 -mattr=+zbkb -verify-machineinstrs -global-isel -global-isel-abort=2 -pass-remarks-missed=gisel.* snippet.ll -o -
llc -mtriple=riscv64 -mattr=+zbkb -verify-machineinstrs -global-isel=0 snippet.ll -o -
Local llc output:
remark: <unknown>:0:0: unable to legalize instruction: %11:_(<2 x s64>) = G_MUL %9:_, %7:_ (in function: xor_hoisted_not_i64_swapped)
warning: Instruction selection used fallback path for xor_hoisted_not_i64_swapped
Occurrences (5):
| Input | Function | Config |
|---|
| rv64zbb-zbkb.137688f794.ll (mutant of rv64zbb-zbkb.ll) | xor_hoisted_not_i64_swapped | -mtriple=riscv64 -mattr=+zbkb -verify-machineinstrs |
| rv64zbb-zbkb.46b9b80e01.ll (mutant of rv64zbb-zbkb.ll) | xor_hoisted_not_i64_swapped | -mtriple=riscv64 -mattr=+zbb -verify-machineinstrs |
| rv64zbb-zbkb.74fdc4e69b.ll (mutant of rv64zbb-zbkb.ll) | xor_hoisted_not_i64_swapped | -mtriple=riscv64 -verify-machineinstrs |
| xqcilsm-memset.3985841ac8.ll (mutant of xqcilsm-memset.ll) | test6 | -mtriple=riscv32 -verify-machineinstrs |
| xqcilsm-memset.3b869efc9f.ll (mutant of xqcilsm-memset.ll) | test6 | -mtriple=riscv32 -verify-machineinstrs -mattr=+xqcilsm |
Generated 2026-10-15 08:05 UTC.