]> granicus.if.org Git - llvm/commit
[DAGCombiner] Avoid creating large tokenfactors in visitTokenFactor
authorFlorian Hahn <flo@fhahn.com>
Tue, 7 May 2019 16:47:27 +0000 (16:47 +0000)
committerFlorian Hahn <flo@fhahn.com>
Tue, 7 May 2019 16:47:27 +0000 (16:47 +0000)
commit2b1b32aebd1afb086a9a3a840392f8a1f941a5ca
tree9b85306e2719c130fea880390eb9601a091393b8
parent39a16055ce0204a8ba3528864ef4c561c6d54095
[DAGCombiner] Avoid creating large tokenfactors in visitTokenFactor

When simplifying TokenFactors, we potentially iterate over all
operands of a large number of TokenFactors. This causes quadratic
compile times in some cases and the large token factors cause additional
scalability problems elsewhere.

This patch adds some limits to the number of nodes explored for the
cases mentioned above.

Reviewers: niravd, spatel, craig.topper

Reviewed By: niravd

Differential Revision: https://reviews.llvm.org/D61397

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@360171 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/SelectionDAG/DAGCombiner.cpp