[llvm] [AArch64] missed fold vector fptoui(fdiv(uitofp(x), uitofp(y))) or fptosi(fdiv(sitofp(x), sitofp(y))) into udiv(x, y) or sdiv(x, y) for sve (PR #215146)
via llvm-commits
llvm-commits at lists.llvm.org
Mon Aug 10 22:51:29 PDT 2026
================
@@ -21,14 +20,13 @@ define <vscale x 2 x i32> @fptosi_fdiv_sitofp_nxv2i32(<vscale x 2 x i32> %a, <vs
; CHECK-LABEL: fptosi_fdiv_sitofp_nxv2i32:
; CHECK: // %bb.0:
; CHECK-NEXT: ptrue p0.d
-; CHECK-NEXT: scvtf z0.d, p0/m, z0.s
-; CHECK-NEXT: scvtf z1.d, p0/m, z1.s
-; CHECK-NEXT: fdiv z0.d, p0/m, z0.d, z1.d
-; CHECK-NEXT: fcvtzs z0.d, p0/m, z0.d
+; CHECK-NEXT: sxtw z1.d, p0/m, z1.d
+; CHECK-NEXT: sxtw z0.d, p0/m, z0.d
+; CHECK-NEXT: sdiv z0.d, p0/m, z0.d, z1.d
----------------
Andarwinux wrote:
It should be a i32 sdiv.
https://github.com/llvm/llvm-project/pull/215146
More information about the llvm-commits
mailing list