Displaying 3 results from an estimated 3 matches for "inscombine".
Did you mean:
instcombine
2018 May 09
0
more reassociation in IR
...somehow combined, not unlike the usual optimization pipelines.
The second problem is the size/complexity of the instcombine pass.
I do acknowledge that D46336 / D46595 (both in instcombine) is an
improvement, which results in more folds that didn't happen before.
But it makes the already-large inscombine even more complex,
and i'm not sure how it affects the performance.
Then there is D45842.
That code is pretty simple, and takes ~one page. It does not do
any change unless that opens the road for further simplification.
(I hope that is what the D46336 / D46595 do, but i don't know.)
As st...
2017 Jul 01
8
[IR canonicalization] 6 ways to choose {-1,0,1}
I'm looking at the output of memcmp() expansion (D34904), and I noticed
that there are many ways to produce the common positive/zero/negative
comparison result in IR.
For the following 6 functionally equivalent C source functions, we produce
6 different versions of IR which leads to 6 different asm outputs for x86.
Which of these should we choose as canonical IR form?
1. Two selects
int
2018 May 09
4
more reassociation in IR
> On May 8, 2018, at 9:50 AM, Daniel Berlin via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
> 1. The reassociate pass that exists right now was *originally* (AFAIK) written to enable CSE/GVN to do better.
Agreed. The original mindset included a (naive) belief that going with a canonical form was better than teaching redundancy elimination to handle abstractions (as a matter