RE: [PATCH][Aarch64] Relational compare zero not merged into subtract

2017-07-11 Thread Wilco Dijkstra
Michael Collison wrote: > > The subtract instruction only reliably sets the N and Z flags. We convey this > information in > aarch64_seelct_cc_mode. The SUBS and CMP set the N and Z flags identically - although they also set C and V, they are different if there is overflow. CC_NZmode is used af

Re: [PATCH][Aarch64] Relational compare zero not merged into subtract

2017-07-11 Thread Richard Earnshaw (lists)
On 02/06/17 00:54, Michael Collison wrote: > This patch improves code generation for relational compares against zero that > are not merged into a subtract instruction. This patch improves the >= and < > cases. > > An example of the '<' case: > > int lt (int x, int y) > { > if ((x - y) < 0) >

RE: [PATCH][Aarch64] Relational compare zero not merged into subtract

2017-07-11 Thread Michael Collison
Cc: gcc-patches@gcc.gnu.org; nd Subject: Re: [PATCH][Aarch64] Relational compare zero not merged into subtract On Thu, Jun 01, 2017 at 11:54:33PM +, Michael Collison wrote: > This patch improves code generation for relational compares against > zero that are not merged into a su

Re: [PATCH][Aarch64] Relational compare zero not merged into subtract

2017-07-10 Thread James Greenhalgh
On Thu, Jun 01, 2017 at 11:54:33PM +, Michael Collison wrote: > This patch improves code generation for relational compares against zero that > are not merged into a subtract instruction. This patch improves the >= and < > cases. > > An example of the '<' case: > > int lt (int x, int y) > { >