PING 4 [PATCH] correct fix to avoid false positives for vectorized stores (PR 96963, 94655)

Martin Sebor msebor@gmail.com
Tue Feb 23 00:20:25 GMT 2021


Ping 4:
https://gcc.gnu.org/pipermail/gcc-patches/2021-January/564059.html

On 2/14/21 5:43 PM, Martin Sebor wrote:
> Ping 3:
> https://gcc.gnu.org/pipermail/gcc-patches/2021-January/564059.html
> 
> This is a fix for two P2 bugs (false positives).
> 
> On 2/6/21 10:13 AM, Martin Sebor wrote:
>> Ping 2:
>>    https://gcc.gnu.org/pipermail/gcc-patches/2021-January/564059.html
>>
>> On 1/29/21 10:20 AM, Martin Sebor wrote:
>>> Ping: https://gcc.gnu.org/pipermail/gcc-patches/2021-January/564059.html
>>>
>>> On 1/21/21 4:38 PM, Martin Sebor wrote:
>>>> The hack I put in compute_objsize() last January for pr93200 isn't
>>>> quite correct.  It happened to suppress the false positive there
>>>> but, due to what looks like a thinko on my part, not in some other
>>>> test cases involving vectorized stores.
>>>>
>>>> The attached change adjusts the hack to have compute_objsize() give
>>>> up on all MEM_REFs with a vector type.  This effectively disables
>>>> -Wstringop-{overflow,overread} for vector accesses (either written
>>>> by the user or synthesized by GCC from ordinary accesses).  It
>>>> doesn't affect -Warray-bounds because this warning doesn't use
>>>> compute_objsize() yet.  When it does (it should considerably
>>>> simplify the code) some additional changes will be needed to
>>>> preserve -Warray-bounds for out of bounds vector accesses.
>>>> The test this patch adds should serve as a reminder to make
>>>> it if we forget.
>>>>
>>>> Tested on x86_64-linux.  Since PR 94655 was reported against GCC
>>>> 10 I'd like to apply this fix to both the trunk and the 10 branch.
>>>>
>>>> Martin
>>>
>>
> 



More information about the Gcc-patches mailing list