[llvm] [NVPTX][SelectionDAG] Add IMAD combine rules + infra to disable default SelectionDAG rules for testing (PR #121724)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Sun Jan 5 19:49:40 PST 2025


https://github.com/arsenm commented:

> Another option might be to remove NVPTXISD::IMAD and only combine to mad during selection. This would allow the default DAGCombiner patterns to simplify the graph without any NVPTX-specific intervention. 

This would be better without a stronger justification for why an intermediate node is useful

> However, it also risks DAGCombiner breaking up the mul-add patterns, which is why I haven't done it that way.

Should have a more concrete justification. Generally combines that would break the pattern are new instances of the pattern to handle (e.g. multiply-to-shift + add)

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


More information about the llvm-commits mailing list