> On Jan 10, 2025, at 03:00, Richard Biener <richard.guent...@gmail.com> wrote:
> 
> On Thu, Jan 9, 2025 at 9:39 PM Qing Zhao <qing.z...@oracle.com> wrote:
>> 
>> 
>> 
>>> On Jan 9, 2025, at 14:10, Jeff Law <jeffreya...@gmail.com> wrote:
>>> 
>>> 
>>> 
>>> On 1/9/25 10:48 AM, Qing Zhao wrote:
>>> 
>>>>> 
>>>>> I think Jeff's patch is not reasonable since it boils down to not diagnose
>>>>> -Warray-bounds but instead remove those stmts.
>>>> If these stmts are dead-code that are generated by compiler optimization 
>>>> (NOT from source code),
>>>> removing them before diagnosis is correct. (To avoid false positive 
>>>> warnings).
>>> But I don't think we generally know if the problematic statements came from 
>>> user code or were generated by the compiler.
>> 
>> To help the compiler catches real problems in the source code and avoid 
>> false positive warnings introduced by the compiler transformation, we might 
>> need to add flags in the IR to distinguish this?
> 
> Well, the issue is the problematic statements _are_ in user code, just
> -Warray-bounds is too stupid to
> look at SCEV for indices and instead relies on weaker value-ranges.

A little confused here: are you saying that the testing case of PR92539 has 
__conditional__ UB in the source code level? 
If so, could you please clarify this a little bit more? (From my understanding 
of the source code, I didn’t see
UB in the source code, do I miss anything obvious?)

thanks.

Qing
> 
> It's a problem we're never going to fully solve.  Some of the
> testcases show missed optimizations
> which we can work on.  Some show we diagnose IL we later are able to
> optimize away, some
> simply show that users are not always happy with how we decide on
> suppressing a diagnostic.
> 
> For the case at hand we should be able to optimize it fully.
> 
> But optimizing based on UB is always going to be to interact with
> diagnosing UB, so we have
> to be careful.  Our "late" diagnostics are most problematic here and
> I'd argue moving those
> earlier is the first thing we should try.
> 
> Richard.
> 
>> 
>> Qing
>>> 
>>> Jeff


Reply via email to