[llvm] [RISCV][ISelLowering] Use Zicond for FP selects on Zfinx/Zdinx (PR #169299)

Sam Elliott via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 26 18:03:11 PST 2025


================
@@ -9584,6 +9584,51 @@ SDValue RISCVTargetLowering::lowerSELECT(SDValue Op, SelectionDAG &DAG) const {
   if (SDValue V = lowerSelectToBinOp(Op.getNode(), DAG, Subtarget))
     return V;
 
+  // When there is no cost for GPR <-> FPR, we can use zicond select for
+  // floating value when CondV is int type
+  bool FPinGPR = Subtarget.hasStdExtZfinx();
+
+  // We can handle FGPR without spliting into hi/lo parts
----------------
lenary wrote:

No, we're using FGPR to be clear that this is for the finx/dinx. Craig asked for this spelling in another code comment earlier in the PR.

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


More information about the llvm-commits mailing list