[llvm] [CodeGen] [AMDGPU] Attempt DAGCombine for fmul with select to ldexp (PR #111109)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 15 00:48:00 PDT 2024


================
@@ -14476,6 +14477,60 @@ SDValue SITargetLowering::performFDivCombine(SDNode *N,
   return SDValue();
 }
 
+SDValue SITargetLowering::performFMulCombine(SDNode *N,
+                                             DAGCombinerInfo &DCI) const {
+  SelectionDAG &DAG = DCI.DAG;
+  EVT VT = N->getValueType(0);
+  EVT i32VT = VT.changeElementType(MVT::i32);
+
----------------
arsenm wrote:

I'm wondering if we should defer this transformation. In cases where the fmul will not fuse into a user (i.e. fma) we'll still pay a materialization cost 

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


More information about the llvm-commits mailing list