[PATCH] Add straight-line strength reduction to LLVM
atrick at apple.com
Mon Feb 2 14:56:48 PST 2015
Mainly, I would like to reiterate both of Hal's very good points above.
Out of curiosity, can you explain what sort of real-world source code results in this IR pattern?
You should keep in mind, that this level of optimization is currently the job of LSR. If you're doing this within a loop the IVChain part of LSR will try to do something similar.
I only reviewed it quickly, but your implementation looks good. Thank you for putting a bound on the number of candidate checks. I hate finding those quadratic behaviors later when compile time blows up.
LGTM given that it's not enabled in the standard pipeline yet.
More information about the llvm-commits