[llvm] r179957 - SimplifyCFG: If convert single conditional stores

Chandler Carruth chandlerc at google.com
Sat Apr 20 14:56:51 PDT 2013


On Sat, Apr 20, 2013 at 10:42 PM, Arnold Schwaighofer <
aschwaighofer at apple.com> wrote:

> SimplifyCFG: If convert single conditional stores


Last time I touched if-conversion in simplifycfg, Evan, Jakob, and Andy had
serious objections to it, and insisted that it should instead be done by
enabling a (sufficiently conservative) version of the early if conversion
in the backend.

I'm actually sympathetic to the desire to do this (i hit similar
performance problems as the one you're seeing, specifically in zlib in my
case), but I really see their point. Either way, it seems quite strange to
reverse direction without some commentary about previous attempts,
alternatives, and what the plan is for getting the x86 backend to handle
if-conversion in a sane way[1].


[1]: And unless there is any confusion, I think we all agreed that the sane
form of if-conversion on x86 is *insanely* conservative due to the relative
efficiency of predicted branches and cost of speculation. It's conversions
much like the one you're targeting where the store itself is the only
speculation and it is already in cache are the best kinds.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130420/02fc89ad/attachment.html>


More information about the llvm-commits mailing list