[llvm] [HEXAGON] fp_to_uint conversion for v32f32 to v32i1 (PR #183248)

Brian Cain via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 4 19:46:22 PST 2026


================
@@ -0,0 +1,31 @@
+; RUN: llc --mtriple=hexagon -O2 -mattr=+hvxv79,+hvx-length128b %s -o - | FileCheck %s
+
+define <16 x i1> @autogen_SD24352(<16 x float> %I8) {
+BB:
+  %FC10 = fptosi <16 x float> %I8 to <16 x i1>
+  ret <16 x i1> %FC10
+}
+
+; CHECK:     r3:2 = combine(#1,##16843009)
+; CHECK:     r1 = #124
+; CHECK:     v1 = vxor(v1,v1)
+; CHECK:     q0 = vcmp.eq(v0.sf,v1.sf)
+; CHECK:     v0 = v1
+; CHECK:     loop0([[LOOP:.LBB0_[0-9]+]],#32)
----------------
androm3da wrote:

Do we need a loop?  Could `V6_veqsf` +`V6_pred_not` as-is give us the correct v32i1 predicate?

https://github.com/llvm/llvm-project/pull/183248


More information about the llvm-commits mailing list