Re: [RFA/RFC] [PR tree-optimization/80635] Optimize some V_C_Es with limited ranges into NOP_EXPRs

2020-04-06 Thread Richard Biener via Gcc-patches
On Sun, Apr 5, 2020 at 5:25 PM Jeff Law via Gcc-patches wrote: > > > So here's an approach to try and address PR80635. > > In this BZ we're getting a false positive uninitialized warning using > std::optional. > > As outlined in the BZ this stems from SRA using a VIEW_CONVERT_EXPR which > isn't

Re: [RFA/RFC] [PR tree-optimization/80635] Optimize some V_C_Es with limited ranges into NOP_EXPRs

2020-04-05 Thread Eric Botcazou
> Ada no longer uses VIEW_CONVERT_EXPR between scalar types ... between integral types (it does use it if you explicit request an unchecked version between integer and floating-point types for example). -- Eric Botcazou

Re: [RFA/RFC] [PR tree-optimization/80635] Optimize some V_C_Es with limited ranges into NOP_EXPRs

2020-04-05 Thread Eric Botcazou
> ISTR Ada uses V_C_E to implement checks on value ranges to types. We need to > make sure to not interfere with this. Yes, Jeff privately asked some time ago whether this would be problematic and I answered that this wouldn't. Ada no longer uses VIEW_CONVERT_EXPR between scalar types,

Re: [RFA/RFC] [PR tree-optimization/80635] Optimize some V_C_Es with limited ranges into NOP_EXPRs

2020-04-05 Thread Jeff Law via Gcc-patches
On Sun, 2020-04-05 at 20:48 +0200, Richard Biener wrote: > On April 5, 2020 5:25:15 PM GMT+02:00, Jeff Law via Gcc-patches < > gcc-patches@gcc.gnu.org> wrote: > > So here's an approach to try and address PR80635. > > > > In this BZ we're getting a false positive uninitialized warning using > >

Re: [RFA/RFC] [PR tree-optimization/80635] Optimize some V_C_Es with limited ranges into NOP_EXPRs

2020-04-05 Thread Richard Biener via Gcc-patches
On April 5, 2020 5:25:15 PM GMT+02:00, Jeff Law via Gcc-patches wrote: > >So here's an approach to try and address PR80635. > >In this BZ we're getting a false positive uninitialized warning using >std::optional. > >As outlined in the BZ this stems from SRA using a VIEW_CONVERT_EXPR >which

[RFA/RFC] [PR tree-optimization/80635] Optimize some V_C_Es with limited ranges into NOP_EXPRs

2020-04-05 Thread Jeff Law via Gcc-patches
So here's an approach to try and address PR80635. In this BZ we're getting a false positive uninitialized warning using std::optional. As outlined in the BZ this stems from SRA using a VIEW_CONVERT_EXPR which isn't handled terribly well by the various optimizers/analysis passes. We have these