Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-06-22 Thread Jeff Law
On 05/17/2017 12:33 AM, Uros Bizjak wrote: > On Wed, May 17, 2017 at 4:45 AM, Hans-Peter Nilsson wrote: > >>> But yes, we definitely should document the final canonical ordering. >> >> Is that about to also happen? >> >> I foresee in another half-a-dozen years, and *this* iteration is >> forgotte

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-17 Thread Hans-Peter Nilsson
On Wed, 17 May 2017, Uros Bizjak wrote: > On Wed, May 17, 2017 at 4:45 AM, Hans-Peter Nilsson wrote: > >> But yes, we definitely should document the final canonical ordering. > > > > Is that about to also happen? > The proposed doc patch is wiating for review at [1]. > > [1] https://gcc.gnu.org/ml

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-17 Thread Eric Botcazou
> I've got the visium, rx and mn103 patches handy to ensure they don't > regress. aarch64 doesn't seem to be affected either way but I didn't > investigate why -- I expected it to improve with your change. Thanks for taking care of this, but a couple of comments in config/visium are now backward

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-16 Thread Uros Bizjak
On Wed, May 17, 2017 at 4:45 AM, Hans-Peter Nilsson wrote: >> But yes, we definitely should document the final canonical ordering. > > Is that about to also happen? > > I foresee in another half-a-dozen years, and *this* iteration is > forgotten, someone bothered enough to argue eloquently coming

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-16 Thread Hans-Peter Nilsson
On Fri, 12 May 2017, Jeff Law wrote: > On 05/11/2017 03:29 PM, Hans-Peter Nilsson wrote: > > The canonical order of insns affecting condition-codes has been > > discussed in the past too. > > > > I was then arguing that the compare should go last, i.e. > > (parallel [(set (reg) (op...)) > >

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-13 Thread Uros Bizjak
On Sat, May 13, 2017 at 2:47 PM, Markus Trippelsdorf wrote: >> 2017-05-12 Uros Bizjak >> >> * compare-elim.c (try_eliminate_compare): Canonicalize >> operation with embedded compare to >> [(set (reg:CCM) (compare:CCM (operation) (immediate))) >> (set (reg) (operation)]. >> >>

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-13 Thread Markus Trippelsdorf
On 2017.05.12 at 21:09 +0200, Uros Bizjak wrote: > On Fri, May 12, 2017 at 8:34 PM, Jeff Law wrote: > > On 05/10/2017 01:05 PM, Uros Bizjak wrote: > >> > >> On Wed, May 10, 2017 at 5:18 PM, Uros Bizjak wrote: > >>> > >>> On Wed, May 10, 2017 at 4:27 PM, Jakub Jelinek wrote: > > On Tue,

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-12 Thread Uros Bizjak
On Fri, May 12, 2017 at 9:09 PM, Uros Bizjak wrote: > On Fri, May 12, 2017 at 8:34 PM, Jeff Law wrote: >> On 05/10/2017 01:05 PM, Uros Bizjak wrote: >>> >>> On Wed, May 10, 2017 at 5:18 PM, Uros Bizjak wrote: On Wed, May 10, 2017 at 4:27 PM, Jakub Jelinek wrote: > > On Tue, Ma

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-12 Thread Uros Bizjak
On Fri, May 12, 2017 at 8:34 PM, Jeff Law wrote: > On 05/10/2017 01:05 PM, Uros Bizjak wrote: >> >> On Wed, May 10, 2017 at 5:18 PM, Uros Bizjak wrote: >>> >>> On Wed, May 10, 2017 at 4:27 PM, Jakub Jelinek wrote: On Tue, May 09, 2017 at 06:06:47PM +0200, Uros Bizjak wrote: > >

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-12 Thread Jeff Law
On 05/10/2017 01:05 PM, Uros Bizjak wrote: On Wed, May 10, 2017 at 5:18 PM, Uros Bizjak wrote: On Wed, May 10, 2017 at 4:27 PM, Jakub Jelinek wrote: On Tue, May 09, 2017 at 06:06:47PM +0200, Uros Bizjak wrote: Attached patch enables post-reload compare elimination pass by providing expected

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-12 Thread Jakub Jelinek
On Fri, May 12, 2017 at 05:42:59AM -0400, Hans-Peter Nilsson wrote: > (To-list pruned, my correction doesn't need attention.) > > On Thu, 11 May 2017, Hans-Peter Nilsson wrote: > > On Wed, 10 May 2017, Jakub Jelinek wrote: > > > > > On Wed, May 10, 2017 at 09:57:56PM +0200, Uros Bizjak wrote: > >

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-12 Thread Hans-Peter Nilsson
(To-list pruned, my correction doesn't need attention.) On Thu, 11 May 2017, Hans-Peter Nilsson wrote: > On Wed, 10 May 2017, Jakub Jelinek wrote: > > > On Wed, May 10, 2017 at 09:57:56PM +0200, Uros Bizjak wrote: > > > BTW: This patch now catches 417 cases (instead of 200+) in linux > > > build,

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-11 Thread Jeff Law
On 05/11/2017 12:46 PM, Uros Bizjak wrote: On Thu, May 11, 2017 at 8:28 PM, Jeff Law wrote: Attached patch changes compare-elim.c order to what i386.md expects. Thoughts? Haven't looked at the patch itself. But I do have the necessary bits to convert the mn103 port. It was slightly more t

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-11 Thread Jeff Law
On 05/11/2017 03:29 PM, Hans-Peter Nilsson wrote: On Wed, 10 May 2017, Jakub Jelinek wrote: On Wed, May 10, 2017 at 09:57:56PM +0200, Uros Bizjak wrote: BTW: This patch now catches 417 cases (instead of 200+) in linux build, including e.g.: (parallel [ (set (reg:CCZ 17 flags)

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-11 Thread Hans-Peter Nilsson
On Wed, 10 May 2017, Jakub Jelinek wrote: > On Wed, May 10, 2017 at 09:57:56PM +0200, Uros Bizjak wrote: > > BTW: This patch now catches 417 cases (instead of 200+) in linux > > build, including e.g.: > > > > (parallel [ > > (set (reg:CCZ 17 flags) > > (compare:CCZ (lshiftrt:SI

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-11 Thread Uros Bizjak
On Thu, May 11, 2017 at 8:28 PM, Jeff Law wrote: >> Attached patch changes compare-elim.c order to what i386.md expects. >> >> Thoughts? > > Haven't looked at the patch itself. But I do have the necessary bits to > convert the mn103 port. It was slightly more than just fixing the md file, > but

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-11 Thread Jakub Jelinek
On Thu, May 11, 2017 at 12:28:56PM -0600, Jeff Law wrote: > On 05/10/2017 01:05 PM, Uros Bizjak wrote: > > On Wed, May 10, 2017 at 5:18 PM, Uros Bizjak wrote: > > > On Wed, May 10, 2017 at 4:27 PM, Jakub Jelinek wrote: > > > > On Tue, May 09, 2017 at 06:06:47PM +0200, Uros Bizjak wrote: > > > > >

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-11 Thread Jeff Law
On 05/10/2017 01:05 PM, Uros Bizjak wrote: On Wed, May 10, 2017 at 5:18 PM, Uros Bizjak wrote: On Wed, May 10, 2017 at 4:27 PM, Jakub Jelinek wrote: On Tue, May 09, 2017 at 06:06:47PM +0200, Uros Bizjak wrote: Attached patch enables post-reload compare elimination pass by providing expected

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-11 Thread Jeff Law
On 05/10/2017 02:27 PM, Jakub Jelinek wrote: On Wed, May 10, 2017 at 09:57:56PM +0200, Uros Bizjak wrote: BTW: This patch now catches 417 cases (instead of 200+) in linux build, including e.g.: (parallel [ (set (reg:CCZ 17 flags) (compare:CCZ (lshiftrt:SI (reg:SI 4 si [ori

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-10 Thread Jakub Jelinek
On Wed, May 10, 2017 at 09:57:56PM +0200, Uros Bizjak wrote: > BTW: This patch now catches 417 cases (instead of 200+) in linux > build, including e.g.: > > (parallel [ > (set (reg:CCZ 17 flags) > (compare:CCZ (lshiftrt:SI (reg:SI 4 si [orig:93 _10 ] [93]) >

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-10 Thread Uros Bizjak
On Wed, May 10, 2017 at 9:05 PM, Uros Bizjak wrote: > On Wed, May 10, 2017 at 5:18 PM, Uros Bizjak wrote: >> On Wed, May 10, 2017 at 4:27 PM, Jakub Jelinek wrote: >>> On Tue, May 09, 2017 at 06:06:47PM +0200, Uros Bizjak wrote: Attached patch enables post-reload compare elimination pass by

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-10 Thread Uros Bizjak
On Wed, May 10, 2017 at 5:18 PM, Uros Bizjak wrote: > On Wed, May 10, 2017 at 4:27 PM, Jakub Jelinek wrote: >> On Tue, May 09, 2017 at 06:06:47PM +0200, Uros Bizjak wrote: >>> Attached patch enables post-reload compare elimination pass by >>> providing expected patterns (duplicates of existing pa

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-10 Thread Uros Bizjak
On Wed, May 10, 2017 at 4:27 PM, Jakub Jelinek wrote: > On Tue, May 09, 2017 at 06:06:47PM +0200, Uros Bizjak wrote: >> Attached patch enables post-reload compare elimination pass by >> providing expected patterns (duplicates of existing patterns with >> setters of reg and flags switched in the pa

Re: [RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-10 Thread Jakub Jelinek
On Tue, May 09, 2017 at 06:06:47PM +0200, Uros Bizjak wrote: > Attached patch enables post-reload compare elimination pass by > providing expected patterns (duplicates of existing patterns with > setters of reg and flags switched in the parallel) for flag setting > arithmetic instructions. > > The

[RFC PATCH, i386]: Enable post-reload compare elimination pass

2017-05-09 Thread Uros Bizjak
Hello! Attached patch enables post-reload compare elimination pass by providing expected patterns (duplicates of existing patterns with setters of reg and flags switched in the parallel) for flag setting arithmetic instructions. The merge triggers more than 3000 times during the gcc bootstrap, mo