Re: [PATCH][PR 81376] Remove unnecessary float casts in comparisons

2017-10-30 Thread Jeff Law
On 10/30/2017 01:28 PM, Richard Biener wrote: > On October 30, 2017 8:22:52 PM GMT+01:00, Marc Glisse > wrote: >> On Mon, 30 Oct 2017, Jeff Law wrote: >> +/* Optimize various special cases of (FTYPE) N CMP (FTYPE) M. */ +(for cmp (lt le eq ne ge gt) + (simplify + (cmp (float

Re: [PATCH][PR 81376] Remove unnecessary float casts in comparisons

2017-10-30 Thread Richard Biener
On October 30, 2017 8:22:52 PM GMT+01:00, Marc Glisse wrote: >On Mon, 30 Oct 2017, Jeff Law wrote: > >>> +/* Optimize various special cases of (FTYPE) N CMP (FTYPE) M. */ >>> +(for cmp (lt le eq ne ge gt) >>> + (simplify >>> + (cmp (float@0 @1) (float @2)) >> Since this runs on GENERIC as well

Re: [PATCH][PR 81376] Remove unnecessary float casts in comparisons

2017-10-30 Thread Marc Glisse
On Mon, 30 Oct 2017, Jeff Law wrote: +/* Optimize various special cases of (FTYPE) N CMP (FTYPE) M. */ +(for cmp (lt le eq ne ge gt) + (simplify + (cmp (float@0 @1) (float @2)) Since this runs on GENERIC as well as GIMPLE, I don't think you can rely on the types of the float expressions being

Re: [PATCH][PR 81376] Remove unnecessary float casts in comparisons

2017-10-30 Thread Jeff Law
On 10/01/2017 02:37 AM, Yuri Gribov wrote: > Hi all, > > (Previous mail was sent with spurious HTML, sorry!) > > This patch gets rid of float casts in comparisons when all values of > casted integral type are exactly representable by the float type > (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=

[PATCH][PR 81376] Remove unnecessary float casts in comparisons

2017-10-01 Thread Yuri Gribov
Hi all, (Previous mail was sent with spurious HTML, sorry!) This patch gets rid of float casts in comparisons when all values of casted integral type are exactly representable by the float type (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81376). Bootstrapped and regtested on x64_64. Ok to comm