[llvm-dev] A code layout related side-effect introduced by rL318299

Wei Mi via llvm-dev llvm-dev at lists.llvm.org
Mon Dec 18 16:21:13 PST 2017


On Mon, Dec 18, 2017 at 4:14 PM, Wei Mi <wmi at google.com> wrote:

> Hi,
>
> Recently 10% performance regression on an important benchmark showed up
> after we integrated https://reviews.llvm.org/rL318299. The analysis
> showed that rL318299 triggered loop rotation on an multi exits loop, and
> the loop rotation introduced code layout issue. The performance regression
> is a side-effect of rL318299. I got two testcases a.ll and b.ll attached to
> illustrate the problem. a.ll was generated by rL318298 and b.ll was
> generated by rL318299.
>

a.ll and b.ll are generated from the same function by different versions of
compiler. a.s and b.s generated from a.ll and b.ll respectively showed
where the performance difference comes from.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20171218/94f6cc0d/attachment.html>


More information about the llvm-dev mailing list