regression on Adobe-C++/loop_unroll

Chandler Carruth chandlerc at gmail.com
Mon Feb 10 14:48:11 PST 2014


To close the loop here for those not CC-ed in the PR, I fixed this
in r201104. It was "just" a missing preservation of AA in LCSSA that caused
globalmodref-aa to be invalidated in the LTO pipeline. =[[[ 4 days to
debug, but wow the fix was easy.

-Chandler


On Sun, Feb 9, 2014 at 10:28 AM, Chandler Carruth <chandlerc at gmail.com>wrote:

> Evan, see the PR. Essentially, making LICM *better* causes a very strange
> degradation in DSE. The thing that is found to be loop invariant *is* loop
> invariant, and ostensibly should be moved into the exit block. I have not
> yet uncovered the root cause of why this change would cause us to fail to
> delete dead stores in some other function...
>
>
> On Sun, Feb 9, 2014 at 10:19 AM, Evan Cheng <evan.cheng at apple.com> wrote:
>
>> Do you have more detailed information on how this change is causing
>> performance regression?
>>
>> Evan
>>
>> On Feb 6, 2014, at 11:19 AM, Gerolf Hoflehner <ghoflehner at apple.com>
>> wrote:
>>
>> Hi Chandler
>>
>> your commit seems to cause a major regression (>20%)  on loop_unroll and
>> other benchmarks as well. This is ( at least)  on x86 under -O3 -flto and
>> seems to be due to the loss of LICM. Please take a look.
>>
>> Cheers
>> Gerolf
>>
>> ------------------------------------------------------------------------
>> r200067 | chandlerc | 2014-01-24 20:07:24 -0800 (Fri, 24 Jan 2014) | 44
>> lines
>>
>> [LPM] Make LCSSA a utility with a FunctionPass that applies it to all
>> the loops in a function, and teach LICM to work in the presance of
>> LCSSA.
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140210/0336d9bb/attachment.html>


More information about the llvm-commits mailing list