[llvm-dev] failing to optimize boolean ops on cmps
Daniel Berlin via llvm-dev
llvm-dev at lists.llvm.org
Fri Jul 14 09:54:25 PDT 2017
>
>
> I think you're done when you get everything that you have that fits into a
> model of local transformations and that should be run to a fixed point.
>
Sure, but to point out what you certainly already know, that's almost every
optimization you can think of in a compiler.
For example, I can do PRE this way with no issue (IE generate optimal
results).
Same with reassociation, most CSE, etc.
A very large set of global stuff can be done by "local transform repeated
until fixpoint is reached". It's just not optimal time-wise.
Certainly an interesting question, but I suspect that the practical answer
> is "what's in InstCombine."
>
At least to me, that's clearly the wrong answer, because instcombine
already does a lot of non-local stuff that could be done better elsewhere.
> To do more in this sense probably requires some more-general scheme (e.g.
> equality saturation).
>
> -Hal
>
> --
> Hal Finkel
> Lead, Compiler Technology and Programming Languages
> Leadership Computing Facility
> Argonne National Laboratory
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170714/ff5762e8/attachment.html>
More information about the llvm-dev
mailing list