Re: make FOR_EACH_IMM_USE_STMT safe for early exits (was: Re: move sincos after pre)

2021-01-04 Thread Richard Biener via Gcc-patches
On Tue, Dec 22, 2020 at 11:03 PM Alexandre Oliva wrote: > > On Oct 28, 2020, Richard Biener wrote: > > >> BTW, any reason why we are not (yet?) using something like: > >> > >> #define FOR_EACH_IMM_USE_STMT(STMT, ITER, SSAVAR) \ > >> for (auto_end_imm_use_stmt_traverse auto_end

make FOR_EACH_IMM_USE_STMT safe for early exits (was: Re: move sincos after pre)

2020-12-22 Thread Alexandre Oliva
On Oct 28, 2020, Richard Biener wrote: >> BTW, any reason why we are not (yet?) using something like: >> >> #define FOR_EACH_IMM_USE_STMT(STMT, ITER, SSAVAR) \ >> for (auto_end_imm_use_stmt_traverse auto_end \ >> STMT) = first_imm_use_stmt (&(ITER), (SSAVAR))),

Re: move sincos after pre

2020-10-28 Thread Richard Biener via Gcc-patches
On Wed, Oct 28, 2020 at 4:18 AM Alexandre Oliva wrote: > > On Oct 27, 2020, Richard Biener wrote: > > > For trapping math SRC may be a constant? Better be safe > > and guard against TREE_CODE (src) != SSA_NAME. > > *nod* > > > You also want to guard against SSA_NAME_OCCURS_IN_ABNORMAL_PHI (src)

Re: move sincos after pre

2020-10-27 Thread Alexandre Oliva
On Oct 27, 2020, Richard Biener wrote: > For trapping math SRC may be a constant? Better be safe > and guard against TREE_CODE (src) != SSA_NAME. *nod* > You also want to guard against SSA_NAME_OCCURS_IN_ABNORMAL_PHI (src) > since you cannot generally propagate or move uses of those. What if

Re: move sincos after pre

2020-10-27 Thread Richard Biener via Gcc-patches
On Tue, Oct 27, 2020 at 6:32 AM Alexandre Oliva wrote: > > On Oct 23, 2020, Richard Biener wrote: > > > Can you move it one pass further after sink please? > > I did, but it didn't solve the recip regressions that my first attempt > brought about. > > > Also I don't > > remember exactly but does

Re: move sincos after pre

2020-10-26 Thread Alexandre Oliva
On Oct 23, 2020, Richard Biener wrote: > Can you move it one pass further after sink please? I did, but it didn't solve the recip regressions that my first attempt brought about. > Also I don't > remember exactly but does pass_sincos only handle sin/cos unifying? It rearranges some powi comp

Re: move sincos after pre (was: Re: [Ada, FYI] revamp ada.numerics.aux)

2020-10-23 Thread Richard Biener via Gcc-patches
that any time soon, so... Is this one ok to install? Can you move it one pass further after sink please? Also I don't remember exactly but does pass_sincos only handle sin/cos unifying? Thanks, Richard. > >for gcc/ChangeLog > > * passes.def: Move sin

move sincos after pre (was: Re: [Ada,FYI] revamp ada.numerics.aux)

2020-10-23 Thread Alexandre Oliva
extend sincos to take equivalent conversions as the same operand, but I doubt I'll be able to undertake that any time soon, so... Is this one ok to install? for gcc/ChangeLog * passes.def: Move sincos after pre. for gcc/testsuite/ChangeLog * gnat.dg/sin_cos.ads: New.