[PATCH] D23032: Rewrite the use optimizer to be less memory intensive and 50% faster.Fixes PR28670

Sebastian Pop via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 2 13:18:30 PDT 2016


On Tue, Aug 2, 2016 at 3:01 PM, Daniel Berlin <dberlin at dberlin.org> wrote:
>> Would it be possible to merge the UseOptimizer with the renamePass?
> No, because phi nodes are not guaranteed complete until after renaming is
> done.

I'm not seeing why having incomplete phis is a problem.

>
> (more particularly, there is no ordering in which to do renaming that can
> guarantee you don't hit incomplete phi nodes).
>
> At one point, we had use optimization be part of renaming, but walking
> incomplete phi nodes is ....
> complicated and not guaranteed to get right answers.

I haven't thought enough about merging the rename with the UseOptimizer:
it seemed to me that in renamePass you have all the data you need
to decide which is the nearest def, and decide on selecting the best
name to use.


More information about the llvm-commits mailing list