[SVE] PR91532

Prathamesh Kulkarni prathamesh.kulkarni@linaro.org
Tue Oct 1 00:05:00 GMT 2019


On Wed, 25 Sep 2019 at 23:44, Richard Biener <rguenther@suse.de> wrote:
>
> On Wed, 25 Sep 2019, Prathamesh Kulkarni wrote:
>
> > On Fri, 20 Sep 2019 at 15:20, Jeff Law <law@redhat.com> wrote:
> > >
> > > On 9/19/19 10:19 AM, Prathamesh Kulkarni wrote:
> > > > Hi,
> > > > For PR91532, the dead store is trivially deleted if we place dse pass
> > > > between ifcvt and vect. Would it be OK to add another instance of dse there ?
> > > > Or should we add an ad-hoc "basic-block dse" sub-pass to ifcvt that
> > > > will clean up the dead store ?
> > > I'd hesitate to add another DSE pass.  If there's one nearby could we
> > > move the existing pass?
> > Well I think the nearest one is just after pass_warn_restrict. Not
> > sure if it's a good
> > idea to move it up from there ?
>
> You'll need it inbetween ifcvt and vect so it would be disabled
> w/o vectorization, so no, that doesn't work.
>
> ifcvt already invokes SEME region value-numbering so if we had
> MESE region DSE it could use that.  Not sure if you feel like
> refactoring DSE to work on regions - it currently uses a DOM
> walk which isn't suited for that.
>
> if-conversion has a little "local" dead predicate compute removal
> thingy (not that I like that), eventually it can be enhanced to
> do the DSE you want?  Eventually it should be moved after the local
> CSE invocation though.
Hi,
Thanks for the suggestions.
For now, would it be OK to do "dse" on loop header in
tree_if_conversion, as in the attached patch ?
The patch does local dse in a new function ifcvt_local_dse instead of
ifcvt_local_dce, because it needed to be done after RPO VN which
eliminates:
Removing dead stmt _ifc__62 = *_55;
and makes the following store dead:
*_55 = _ifc__61;

Thanks,
Prathamesh
>
> Richard.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pr91532-1.diff
Type: application/x-patch
Size: 3393 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20191001/af0291fa/attachment.bin>


More information about the Gcc-patches mailing list