fallback: select: G_INTRINSIC s32,<vscale x 1 x s32>
| Run: | explore-04ca53e65f-20261014-114124 |
| Kind: | fallback |
| Category: | select: G_INTRINSIC s32,<vscale x 1 x s32> |
| Occurrences: | 3 in 3 configs, 1 test files |
| Snippet from: | sextw-removal.ll @test20 via llvm-extract |
| Config: | -mtriple=riscv64 -mattr=+m,+f,+zknh,+v -target-abi=lp64f |
| Local check: | reproduces at 04ca53e65f |
| Compiler Explorer: | not uploaded (over --godbolt-limit or disabled) |
Snippet:
declare signext i32 @bar(i32 signext)
; Function Attrs: nounwind
define void @test20(<vscale x 1 x i32> %arg, i32 signext %arg1) #0 {
bb:
%i = call i32 @llvm.riscv.vmv.x.s.nxv1i32(<vscale x 1 x i32> %arg)
br label %bb2
bb2: ; preds = %bb2, %bb
%i3 = phi i32 [ %i, %bb ], [ %i5, %bb2 ]
%i4 = tail call signext i32 @bar(i32 signext %i3)
%i5 = shl i32 %i3, %arg1
%i6 = icmp eq i32 %i4, 0
br i1 %i6, label %bb7, label %bb2
bb7: ; preds = %bb2
ret void
}
; Function Attrs: nocallback nofree nosync nounwind willreturn memory(none)
declare i32 @llvm.riscv.vmv.x.s.nxv1i32(<vscale x 1 x i32>) #1
attributes #0 = { nounwind }
attributes #1 = { nocallback nofree nosync nounwind willreturn memory(none) }
Reproduce:
llc -mtriple=riscv64 -mattr=+m,+f,+zknh,+v -target-abi=lp64f -global-isel -global-isel-abort=2 -pass-remarks-missed=gisel.* snippet.ll -o -
llc -mtriple=riscv64 -mattr=+m,+f,+zknh,+v -target-abi=lp64f -global-isel=0 snippet.ll -o -
Local llc output:
remark: <unknown>:0:0: cannot select: %4:gprb(s32) = G_INTRINSIC intrinsic(@llvm.riscv.vmv.x.s), %0:vrb(<vscale x 1 x s32>) (in function: test20)
warning: Instruction selection used fallback path for test20
Occurrences (3):
| Input | Function | Config |
|---|
| sextw-removal.ll | test20 | -mtriple=riscv64 -mattr=+m,+f,+zknh,+v -target-abi=lp64f |
| sextw-removal.ll | test20 | -mtriple=riscv64 -mattr=+m,+zba,+zbb,+zbkb,+f,+zknh,+v -target-abi=lp64f |
| sextw-removal.ll | test20 | -mtriple=riscv64 -mattr=+m,+zba,+zbb,+zbkb,+f,+zknh,+v -target-abi=lp64f -riscv-sextw-removal=0 |
Generated 2026-10-15 08:05 UTC.