On March 7, 2015 5:20:08 PM CET, Jeff Law <l...@redhat.com> wrote:
>On 03/07/15 01:34, Richard Biener wrote:
>> On March 6, 2015 9:22:05 PM CET, Martin Sebor <mse...@redhat.com>
>wrote:
>>> On 03/06/2015 10:28 AM, Jeff Law wrote:
>>>> On 03/02/15 09:28, Martin Sebor wrote:
>>>>> On 03/02/2015 06:58 AM, Richard Biener wrote:
>>>>>> On Fri, 27 Feb 2015, Martin Sebor wrote:
>>>>>>
>>>>>>>>> Given that Martin's fix to the testcase allowed it to succeed
>>> without
>>>>>>>>> Richi's fix for the underlying problem, is there a
>modification
>>> to
>>>>>>>>> the
>>>>>>>>> testcase or a new testcase that would really test the
>>> optimization?
>>>>>>>>
>>>>>>>> Let me work on it.
>>>>>>>
>>>>>>> Below is a patch with a couple of minor tweaks to the existing
>>>>>>> test first to update the search string and second to better
>>>>>>> exercise the vectorization not only when the source address
>>>>>>> isn't aligned on the expected boundary but also when the
>>>>>>> destination address isn't.  This enhancement revealed
>>>>>>> an outstanding aspect of the regression (not fixed by Richard's
>>>>>>> already committed patch).
>>>>>>>
>>>>>>> Besides this change, the patch also adds a number of other
>>>>>>> tests to better exercise the vectorization by verifying it
>>>>>>> takes place for arrays of elements of other sizes besides
>>>>>>> word: byte, half word, and double word.  Those tests reveal
>>>>>>> both another regression WRT 4.8 and further vectorization
>>>>>>> opportunities not exploited even in 4.8.  I marked the latter
>>>>>>> XFAIL in the tests so that when the regression is fully
>>>>>>> resolved, the tests should pass with no unexpected failures.
>>>>>>
>>>>>> I have a hard time applying the patch because of line-wrapping
>>> issues
>>>>>> or my patch tool not groking the git diffs.
>>>>>>
>>>>>> Can you please either commit the patch or extract the testcase
>>>>>> that still regresses and paste it into PR63175?
>>>>>
>>>>> I pasted a couple of such test cases to the bug. The full patch
>>>>> is also attached to this email in case there was a problem with
>>>>> line wrapping.
>>>> So for the unaligned case, is that really a regression when
>compared
>>> to
>>>> earlier compilers?   If not, then it seems that we ought to at
>least
>>> be
>>>> at a point where the regression marker for that BZ can be removed,
>>>> right?  ie, Richi's patch fixed the actual code quality regression
>>> and
>>>> your patch fixes the testsuite aspects, right?
>>>
>>> My interpretation of the bug report is that it points out
>>> two problems:
>>>
>>> 1) a failure in the costmodel-bb-slp-9a.c test
>>> 2) a quality regression observed by inspecting the assembly
>>>     emitted for the test
>>>
>>> The two are unrelated in that (2) didn't cause (1).
>>>
>>> Since Richi's patch fixed (2) and my latest patch fixes (1)
>>> I would be inclined to consider the bug resolved.
>>>
>>> While GCC 5 doesn't vectorize some code that 4.8 does with
>>> the same options, it's apparently by accident (or due to
>>> a bug in 4.8).  Since 5.0 does vectorize the same code when
>>> the right set of options is specified, I agree with others
>>> that none of my additional tests has exposed any other
>>> regressions than the one that's already been addressed.
>>
>> Yes. Once the test cases have been fixed we should close the bug as
>fixed.
>Trunk regression marker removed.  Not sure if it is worth backporting
>to 
>4.9, but I left the 4.9 regression marker and the BZ open just in case.

I backported the fix to the 4.9 branch already, so it would be nice to get the 
test cases fixes there as well.

Richard.

>jeff


Reply via email to