Re: [PATCH][ARM] Add logical DImode expanders

2019-09-19 Thread Wilco Dijkstra
Hi Richard, > Please reformat this as one mapping per line.  Over time I expect this > is only going to grow. Sure, I've committed it reformatted as r275970. Wilco

Re: [PATCH][ARM] Add logical DImode expanders

2019-09-19 Thread Richard Earnshaw (lists)
On 19/09/2019 15:26, Wilco Dijkstra wrote: Hi Richard, except we can do better than this... (see below).  With that change, this just becomes di3 +(define_code_attr logical_op [(ior "ior") (xor "xor") (and "and")]) These should just be added to the existing 'optab' attribute, there's no

Re: [PATCH][ARM] Add logical DImode expanders

2019-09-19 Thread Wilco Dijkstra
Hi Richard, > except we can do better than this... > (see below).  With that change, this just becomes di3 >> +(define_code_attr logical_op [(ior "ior") (xor "xor") (and "and")]) > > These should just be added to the existing 'optab' attribute, there's no > need for an additional attribute. >>

Re: [PATCH][ARM] Add logical DImode expanders

2019-09-19 Thread Richard Earnshaw (lists)
On 18/09/2019 20:55, Wilco Dijkstra wrote: Hi Kyrill, We should be able to "compress" the above 3 patterns into one using code iterators. Good point, that makes sense. I've committed this: ChangeLog: 2019-09-18 Wilco Dijkstra PR target/91738 * config/arm/arm.md (di3):

Re: [PATCH][ARM] Add logical DImode expanders

2019-09-18 Thread Wilco Dijkstra
Hi Kyrill, > We should be able to "compress" the above 3 patterns into one using code > iterators. Good point, that makes sense. I've committed this: ChangeLog: 2019-09-18 Wilco Dijkstra PR target/91738 * config/arm/arm.md (di3): Expand explicitly. (one_cmpldi2):

Re: [PATCH][ARM] Add logical DImode expanders

2019-09-18 Thread Kyrill Tkachov
Hi Wilco, On 9/9/19 6:06 PM, Wilco Dijkstra wrote: ping We currently use default mid-end expanders for logical DImode operations.  These split operations without first splitting off complex immediates or  memory operands.  The resulting expansions are non-optimal and allow for  fewer

Re: [PATCH][ARM] Add logical DImode expanders

2019-09-09 Thread Wilco Dijkstra
ping   We currently use default mid-end expanders for logical DImode operations. These split operations without first splitting off complex immediates or memory operands.  The resulting expansions are non-optimal and allow for fewer LDRD/STRD opportunities.  So add back explicit expanders