[llvm-branch-commits] [llvm] [DAGCombiner][GlobalISel] Extend allMulUsesCanBeContracted with FNEG pattern (PR #188115)
Matt Arsenault via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Wed Apr 8 04:07:03 PDT 2026
================
@@ -17695,6 +17696,16 @@ static bool allMulUsesCanBeContracted(SDValue Mul) {
if (Opcode == ISD::FADD || Opcode == ISD::FSUB)
continue;
+ // FNEG use - contractable if all users of the fneg are FSUB.
+ if (Opcode == ISD::FNEG) {
+ for (const auto *FNegUser : User->users()) {
----------------
arsenm wrote:
Can this be reduced to a 1 or 2 user scan? Unrestricted user scan can be bad for compile time in degenerate cases
https://github.com/llvm/llvm-project/pull/188115
More information about the llvm-branch-commits
mailing list