Re: ARM peephole2 from 2003 never merged, still valid

2019-07-09 Thread Jeff Law
On 7/8/19 12:41 AM, Fredrik Hederstierna wrote: >> From: Segher Boessenkool Sent: >> Thursday, June 6, 2019 6:49 PM To: Richard Earnshaw (lists) Cc: >> Fredrik Hederstierna; Jeff Law; gcc@gcc.gnu.org Subject: Re: ARM >> peephole2 from 2003 never merged, still valid >>

Re: ARM peephole2 from 2003 never merged, still valid

2019-07-07 Thread Fredrik Hederstierna
> From: Segher Boessenkool > Sent: Thursday, June 6, 2019 6:49 PM > To: Richard Earnshaw (lists) > Cc: Fredrik Hederstierna; Jeff Law; gcc@gcc.gnu.org > Subject: Re: ARM peephole2 from 2003 never merged, still valid >   > > On Thu, Jun 06, 2019 at 05:06:35PM

Re: ARM peephole2 from 2003 never merged, still valid

2019-06-14 Thread Jeff Law
org >>> Subject: Re: ARM peephole2 from 2003 never merged, still valid >>   >>> That doesn't stop combine from considering it.  It does make that first SET >>> survive, so that you get a parallel as final insn.  It may not like that >>> one of the para

Re: ARM peephole2 from 2003 never merged, still valid

2019-06-06 Thread Segher Boessenkool
On Thu, Jun 06, 2019 at 05:06:35PM +0100, Richard Earnshaw (lists) wrote: > The reason combine doesn't catch this is because at the time it runs the > MOV is in a different basic block. Later on it is sunk into the same > basic block, but it's then too late to do the merge. Or you could say the M

Re: ARM peephole2 from 2003 never merged, still valid

2019-06-06 Thread Richard Earnshaw (lists)
On 06/06/2019 15:55, Fredrik Hederstierna wrote: >> From: Segher Boessenkool >> Sent: Thursday, June 6, 2019 4:02 PM >> To: Richard Earnshaw (lists) >> Cc: Jeff Law; Fredrik Hederstierna; gcc@gcc.gnu.org >> Subject: Re: ARM peephole2 from 2003 never merged, still v

Re: ARM peephole2 from 2003 never merged, still valid

2019-06-06 Thread Fredrik Hederstierna
> From: Segher Boessenkool > Sent: Thursday, June 6, 2019 4:02 PM > To: Richard Earnshaw (lists) > Cc: Jeff Law; Fredrik Hederstierna; gcc@gcc.gnu.org > Subject: Re: ARM peephole2 from 2003 never merged, still valid   > That doesn't stop combine from considering it.  It d

Re: ARM peephole2 from 2003 never merged, still valid

2019-06-06 Thread Segher Boessenkool
On Thu, Jun 06, 2019 at 10:12:57AM +0100, Richard Earnshaw (lists) wrote: > On 06/06/2019 00:46, Segher Boessenkool wrote: > > On Wed, Jun 05, 2019 at 05:02:53PM -0600, Jeff Law wrote: > >> On 6/2/19 6:28 AM, Segher Boessenkool wrote: > >>> Do you have a testcase for this? I wonder if it would be

Re: ARM peephole2 from 2003 never merged, still valid

2019-06-06 Thread Richard Earnshaw (lists)
On 06/06/2019 00:46, Segher Boessenkool wrote: > On Wed, Jun 05, 2019 at 05:02:53PM -0600, Jeff Law wrote: >> On 6/2/19 6:28 AM, Segher Boessenkool wrote: >>> On Sat, Jun 01, 2019 at 11:41:30PM +, Fredrik Hederstierna wrote: +(define_peephole2 + [(set (match_operand:SI 0 "arm_general

Re: ARM peephole2 from 2003 never merged, still valid

2019-06-05 Thread Segher Boessenkool
On Wed, Jun 05, 2019 at 05:02:53PM -0600, Jeff Law wrote: > On 6/2/19 6:28 AM, Segher Boessenkool wrote: > > On Sat, Jun 01, 2019 at 11:41:30PM +, Fredrik Hederstierna wrote: > >> +(define_peephole2 > >> + [(set (match_operand:SI 0 "arm_general_register_operand" "") > >> + (match_operand

Re: ARM peephole2 from 2003 never merged, still valid

2019-06-05 Thread Jeff Law
On 6/2/19 6:28 AM, Segher Boessenkool wrote: > On Sat, Jun 01, 2019 at 11:41:30PM +, Fredrik Hederstierna wrote: >> +(define_peephole2 >> + [(set (match_operand:SI 0 "arm_general_register_operand" "") >> + (match_operand:SI 1 "arm_general_register_operand" "")) >> + (set (reg:CC CC_REG

Re: ARM peephole2 from 2003 never merged, still valid

2019-06-02 Thread Segher Boessenkool
On Sat, Jun 01, 2019 at 11:41:30PM +, Fredrik Hederstierna wrote: > +(define_peephole2 > + [(set (match_operand:SI 0 "arm_general_register_operand" "") > + (match_operand:SI 1 "arm_general_register_operand" "")) > + (set (reg:CC CC_REGNUM) > + (compare:CC (match_dup 0) (const_int

Re: ARM peephole2 from 2003 never merged, still valid

2019-06-01 Thread Fredrik Hederstierna
(Sorry, my mail program crashed... trying repost, correct now...) I found this patch from 2003 by Tamas Gergely that was never merged for ARM. Though it seems to still be valid, since when applying it, the CSiBE benchmark reduce total code size -170 bytes, making 35 out of 893 files smaller (

ARM peephole2 from 2003 never merged, still valid

2019-06-01 Thread Fredrik Hederstierna
I found this patch from 2003 by Tamas Gergely that was never merged. Though it seems to still be valid, since when applying it, the CSiBE benchmark reduce total code size -170 bytes, making 35 out of 893 files smaller (from -4 to -12 bytes (1-3 instructions). Bug asd asd asd updated