[PATCH] D34397: [SCEV] Make MulOpsInlineThreshold lower to avoid excessive compilation time

Max Kazantsev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 20 22:46:21 PDT 2017


mkazantsev added a comment.

Sanjoy, actually merging operand Muls into patent Mul is O(N^2) by itself: you need a linear time to merge each of them (and if we sort them by time, it is N log(N)). So if you have a parent Mul of max ops amount, and which op is also a Mul node with max Ops amount, then oops - we will merge them for long.

This is where we spend a lot of time in this particular test, but I don't exclude that there are other algorithms that will die on this step.


https://reviews.llvm.org/D34397





More information about the llvm-commits mailing list