[llvm-commits] [patch] Use the new edge dominance functions in GVN
Rafael EspĂndola
rafael.espindola at gmail.com
Thu Aug 16 08:57:31 PDT 2012
> Performance experience.
> My recollection is it starts to fall down very quickly on code
> generated code that has a lot of switch statement
> fallthroughs/critical edges. I should hopefully still be able to find
> them (I believe the worst were from some scheme-to-c compiler)
>
> This often causes PRE that edge-splits on demand to iterate.
> Iteration in PRE, copying sets around, and recalculation of other
> stuff, always took more time than pre-splitting edges.
....
> Sure. The current implementation does a fairly local form of PRE, and
> isn't going to find that many opportunities right now anyway.
> I can come up with a real testcase where it's the most expensive, if
> you like :)
I see. So your thinking is that an algorithm that finds more PRE cases
to explore would spend more time iterating and would benefit from
upfront splitting. If you can build a testcase where that happens with
the current implementation that would be awesome!
Thanks,
Rafael
More information about the llvm-commits
mailing list