fallback: legalize: G_MERGE_VALUES s128,s64
| Run: | explore-bc8218b282-20261015-075519 |
| Kind: | fallback |
| Category: | legalize: G_MERGE_VALUES s128,s64 NEW |
| Occurrences: | 1 in 1 configs, 1 test files |
| Snippet from: | idiv_large.3d76e23519.ll (mutant of idiv_large.ll) @udiv_i65 via llvm-extract |
| Config: | -mtriple=riscv64 |
| Local check: | reproduces at bc8218b282 |
| Compiler Explorer: | not uploaded (over --godbolt-limit or disabled) |
Snippet:
@G.1 = external global i65
; Function Attrs: nounwind
define i65 @udiv_i65(i65 %x, i65 %y) #0 {
%A = alloca i1, align 1
store i1 false, ptr %A, align 1
%L = load i1, ptr %A, align 1
br i1 %L, label %T, label %F
BB: ; preds = %F, %T
%res = udiv i65 %x, %y
%B = and i65 %y, %res
store i65 %B, ptr @G.1, align 4
ret i65 %res
T: ; preds = %0
br label %BB
F: ; preds = %0
br label %BB
}
attributes #0 = { nounwind }
Reproduce:
llc -mtriple=riscv64 -global-isel -global-isel-abort=2 -pass-remarks-missed=gisel.* snippet.ll -o -
llc -mtriple=riscv64 -global-isel=0 snippet.ll -o -
Local llc output:
remark: <unknown>:0:0: unable to legalize instruction: %32:_(s128) = G_MERGE_VALUES %37:_(s64), %38:_(s64) (in function: udiv_i65)
warning: Instruction selection used fallback path for udiv_i65
Occurrences (1):
| Input | Function | Config |
|---|
| idiv_large.3d76e23519.ll (mutant of idiv_large.ll) | udiv_i65 | -mtriple=riscv64 |
Generated 2026-10-15 08:05 UTC.