fallback: legalize: G_MUL <2 x s64>

Run:main-04ca53e65f-20261014-105623
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):

InputFunctionConfig
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.