[PATCH] D36656: [SCCP] Propagate integer range information in IPSCCP (WIP).

Daniel Berlin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 14 12:37:29 PDT 2017


dberlin added a comment.

In https://reviews.llvm.org/D36656#841247, @efriedma wrote:

> Should we use range/nonnull metadata or assumptions to generate ranges?


If we have such metadata, yes

> Should IPSCCP itself try to fold operations based on ranges?

This is a definite yes for me, regardless of anything else.  Even if it only does it to cut down on metadata generated.
I don't think it should go crazy trying to do so (IE Put another way, this pass is currently linear. We should not make it N^2 by trying to fold range operations)

> Inserting a bunch of "llvm.assume" calls is probably not a good idea; it's likely to be a big performance sink, and block other optimizations.  (Not sure what the right answer looks like here, though; it's a hard problem.)

FWIW: I'm curious what performance problems you see. It would seem bad to have an intrinsic that we can't use a lot :)
I also thought Hal had taken care of most performance issues with assume?


https://reviews.llvm.org/D36656





More information about the llvm-commits mailing list