fallback: legalize: G_UMULH s128

Run:explore-bc8218b282-20261015-075519
Kind:fallback
Category:legalize: G_UMULH s128
Occurrences:7 in 3 configs, 2 test files
Snippet from:bitint-fp-conv-200.ll @test_float_to_bitint_200 via llvm-extract
Config:-mtriple=riscv64 -verify-machineinstrs
Local check:reproduces at bc8218b282
Compiler Explorer:not uploaded (over --godbolt-limit or disabled)

Snippet:

; Function Attrs: nounwind
define void @test_float_to_bitint_200(ptr %in, ptr %out) #0 {
  %1 = load float, ptr %in, align 4
  %2 = fptosi float %1 to i200
  store i200 %2, ptr %out, align 8
  ret void
}

attributes #0 = { nounwind }

Reproduce:

llc -mtriple=riscv64 -verify-machineinstrs -global-isel -global-isel-abort=2 -pass-remarks-missed=gisel.* snippet.ll -o -
llc -mtriple=riscv64 -verify-machineinstrs -global-isel=0 snippet.ll -o -

Local llc output:

remark: <unknown>:0:0: unable to legalize instruction: %77:_(s128) = G_UMULH %72:_, %74:_ (in function: test_float_to_bitint_200)
warning: Instruction selection used fallback path for test_float_to_bitint_200

Occurrences (7):

InputFunctionConfig
bitint-fp-conv-200.lltest_float_to_bitint_200-mtriple=riscv64 -verify-machineinstrs
umulh.llumulh_i128-mtriple=riscv32
umulh.llumulh_i128-mtriple=riscv64
bitint-fp-conv-200.3e7bd3b64a.ll (mutant of bitint-fp-conv-200.ll)test_float_to_bitint_200-mtriple=riscv64 -verify-machineinstrs
bitint-fp-conv-200.8e5e1f23b6.ll (mutant of bitint-fp-conv-200.ll)test_float_to_bitint_200-mtriple=riscv64 -verify-machineinstrs
umulh.00bb356541.ll (mutant of umulh.ll)umulh_i128-mtriple=riscv32
umulh.0fc454aefe.ll (mutant of umulh.ll)umulh_i128-mtriple=riscv64

Generated 2026-10-15 08:05 UTC.