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) > { >

[PING^3][PATCH][Aarch64] Relational compare zero not merged into subtract

2017-07-07 Thread Michael Collison
Ping^3. Original patch posted here: https://gcc.gnu.org/ml/gcc-patches/2017-06/msg00091.html

[PING^2][PATCH][Aarch64] Relational compare zero not merged into subtract

2017-06-29 Thread Michael Collison
Ping^2. Original patch posted here: https://gcc.gnu.org/ml/gcc-patches/2017-06/msg00091.html

[PING}[PATCH][Aarch64] Relational compare zero not merged into subtract

2017-06-12 Thread Michael Collison
Ping. Original patch posted here: https://gcc.gnu.org/ml/gcc-patches/2017-06/msg00091.html

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

2017-06-01 Thread Michael Collison
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) return 10; return 0; } Trunk generates: lt: s