Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-05-19 Thread Kugan
On 07/05/15 17:24, James Greenhalgh wrote: > On Wed, May 06, 2015 at 03:12:33AM +0100, Kugan wrote: gcc/ChangeLog: 2015-04-24 Kugan Vivekanandarajah Jim Wilson * config/arm/aarch-common-protos.h (struct mem_cost_table): Added new fields loadv

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-05-07 Thread James Greenhalgh
On Wed, May 06, 2015 at 03:12:33AM +0100, Kugan wrote: > >> gcc/ChangeLog: > >> > >> 2015-04-24 Kugan Vivekanandarajah > >>Jim Wilson > >> > >>* config/arm/aarch-common-protos.h (struct mem_cost_table): Added > >>new fields loadv and storev. > >>* config/aarch64/aarch64-co

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-05-05 Thread Kugan
On 05/05/15 16:17, James Greenhalgh wrote: > On Sat, Apr 25, 2015 at 12:26:16AM +0100, Kugan wrote: >> >> Thanks for the review. I have updated the patch based on the comments >> with some other minor changes. Bootstrapped and regression tested on >> aarch64-none-linux-gnu with no-new regressions

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-05-04 Thread James Greenhalgh
On Sat, Apr 25, 2015 at 12:26:16AM +0100, Kugan wrote: > > Thanks for the review. I have updated the patch based on the comments > with some other minor changes. Bootstrapped and regression tested on > aarch64-none-linux-gnu with no-new regressions. Is this OK for trunk? > > > Thanks, > Kugan >

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-24 Thread Kugan
On 21/04/15 06:22, James Greenhalgh wrote: > On Fri, Apr 17, 2015 at 12:19:14PM +0100, Kugan wrote: My point is that adding your patch while keeping the logic at the top which claims to catch ALL vector operations makes for less readable code. At the very least you'll need

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-20 Thread James Greenhalgh
On Fri, Apr 17, 2015 at 12:19:14PM +0100, Kugan wrote: > >> My point is that adding your patch while keeping the logic at the top > >> which claims to catch ALL vector operations makes for less readable > >> code. > >> > >> At the very least you'll need to update this comment: > >> > >> /* TODO:

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-17 Thread Kyrill Tkachov
On 17/04/15 12:19, Kugan wrote: Hi James, Here is an attempt along this line. Is this what you have in mind? Trying to keep functionality as before so that we can tune the parameters later. Not fully tested yet. Hi Kugan, I'm not doing a full review here, just have a comment inline. Thanks,

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-17 Thread Kugan
>> My point is that adding your patch while keeping the logic at the top >> which claims to catch ALL vector operations makes for less readable >> code. >> >> At the very least you'll need to update this comment: >> >> /* TODO: The cost infrastructure currently does not handle >> vector oper

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread Maxim Kuvyrkov
> On Apr 15, 2015, at 2:18 PM, James Greenhalgh > wrote: > > On Wed, Apr 15, 2015 at 11:45:36AM +0100, Kugan wrote: >>> There are two ways I see that we could clean things up, both of which >>> require some reworking of your patch. >>> >>> Either we remove my check above and teach the RTX costs

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread Kugan
On 15/04/15 21:18, James Greenhalgh wrote: > On Wed, Apr 15, 2015 at 11:45:36AM +0100, Kugan wrote: >>> There are two ways I see that we could clean things up, both of which >>> require some reworking of your patch. >>> >>> Either we remove my check above and teach the RTX costs how to properly >

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread James Greenhalgh
On Wed, Apr 15, 2015 at 11:45:36AM +0100, Kugan wrote: > > There are two ways I see that we could clean things up, both of which > > require some reworking of your patch. > > > > Either we remove my check above and teach the RTX costs how to properly > > cost vector operations, or we fix my check

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread Kyrill Tkachov
On 15/04/15 12:05, James Greenhalgh wrote: On Wed, Apr 15, 2015 at 11:14:11AM +0100, Kyrill Tkachov wrote: On 15/04/15 10:25, James Greenhalgh wrote: On Tue, Apr 14, 2015 at 11:08:55PM +0100, Kugan wrote: Now that Stage1 is open, is this OK for trunk. Hi Kugan, diff --git a/gcc/config/aarc

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread James Greenhalgh
On Wed, Apr 15, 2015 at 11:14:11AM +0100, Kyrill Tkachov wrote: > > On 15/04/15 10:25, James Greenhalgh wrote: > > On Tue, Apr 14, 2015 at 11:08:55PM +0100, Kugan wrote: > >> Now that Stage1 is open, is this OK for trunk. > > Hi Kugan, > > > >> diff --git a/gcc/config/aarch64/aarch64.c b/gcc/confi

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread Kugan
On 15/04/15 19:25, James Greenhalgh wrote: > On Tue, Apr 14, 2015 at 11:08:55PM +0100, Kugan wrote: >> Now that Stage1 is open, is this OK for trunk. > > Hi Kugan, > >> diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c >> index cba3c1a..d6ad0af 100644 >> --- a/gcc/config/

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread Kyrill Tkachov
On 15/04/15 10:25, James Greenhalgh wrote: On Tue, Apr 14, 2015 at 11:08:55PM +0100, Kugan wrote: Now that Stage1 is open, is this OK for trunk. Hi Kugan, diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index cba3c1a..d6ad0af 100644 --- a/gcc/config/aarch64/aarch64.c

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread James Greenhalgh
On Tue, Apr 14, 2015 at 11:08:55PM +0100, Kugan wrote: > Now that Stage1 is open, is this OK for trunk. Hi Kugan, > diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c > index cba3c1a..d6ad0af 100644 > --- a/gcc/config/aarch64/aarch64.c > +++ b/gcc/config/aarch64/aarch64.c >

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-14 Thread Kugan
Ping? Now that Stage1 is open, is this OK for trunk. Thanks, Kugan On 26/03/15 18:21, Kugan wrote: > ping? > > Thanks, > Kugan > > On 17/03/15 12:19, Kugan wrote: >> >> >> On 17/03/15 03:48, Kyrill Tkachov wrote: >>> >>> On 16/03/15 13:15, Kugan wrote: On 16/03/15 23:32, Kugan wrote:

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-03-26 Thread Kugan
ping? Thanks, Kugan On 17/03/15 12:19, Kugan wrote: > > > On 17/03/15 03:48, Kyrill Tkachov wrote: >> >> On 16/03/15 13:15, Kugan wrote: >>> On 16/03/15 23:32, Kugan wrote: >> lower-subreg.c:compute_costs() only cares about the cost of a (set >> (reg) >> (const_int )) move but I thi

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-03-16 Thread Kugan
On 17/03/15 03:48, Kyrill Tkachov wrote: > > On 16/03/15 13:15, Kugan wrote: >> On 16/03/15 23:32, Kugan wrote: > lower-subreg.c:compute_costs() only cares about the cost of a (set > (reg) > (const_int )) move but I think the intention, at least for now, is to > return extra_cost

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-03-16 Thread Kyrill Tkachov
On 16/03/15 13:15, Kugan wrote: On 16/03/15 23:32, Kugan wrote: lower-subreg.c:compute_costs() only cares about the cost of a (set (reg) (const_int )) move but I think the intention, at least for now, is to return extra_cost->vect.alu for all the vector operations. Almost, what we want at the

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-03-16 Thread Jim Wilson
Resending, now that I've figured out how to make gmail send text email instead of html. > >> Almost, what we want at the moment is COSTS_N_INSNS (1) + > >> extra_cost->vect.alu This won't work, because extra_cost->vect.alu is COSTS_N_INSNS (1), which means the total is COSTS_N_INSNS (2). The low

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-03-16 Thread Kugan
On 16/03/15 23:32, Kugan wrote: >>> lower-subreg.c:compute_costs() only cares about the cost of a (set (reg) >>> (const_int )) move but I think the intention, at least for now, is to >>> return extra_cost->vect.alu for all the vector operations. >> >> Almost, what we want at the moment is COSTS_N_I

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-03-16 Thread Kugan
>> lower-subreg.c:compute_costs() only cares about the cost of a (set (reg) >> (const_int )) move but I think the intention, at least for now, is to >> return extra_cost->vect.alu for all the vector operations. > > Almost, what we want at the moment is COSTS_N_INSNS (1) + > extra_cost->vect.alu T

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-03-16 Thread Kyrill Tkachov
On 16/03/15 05:36, Kugan wrote: Hi Kugan, AArch64 RTX cost for vector SET is causing PR65375. Lower subreg is using this rtx_cost to compute the cost of moves, and splitting anything larger than word size, 64-bits in this case. The aarch64 rtx_costs is returning 2 * COST_N_INSNS(1) for vector