Re: [RFC] costs and it's use in assign_reg_parm

2014-10-05 Thread Richard Sandiford
Ramana Radhakrishnan ramana.radhakrish...@arm.com writes: Hi, I've been digging into why on AArch64 we generate pretty bad code for the following testcase. void g2(float, float, float, float, float, float, float, float); void f2a(void) { float x0 = 1.0, x1 = 2.0, x2 = 3.0, x3 =

Re: [RFC] costs and it's use in assign_reg_parm

2014-10-03 Thread Jeff Law
On 10/02/14 02:31, Ramana Radhakrishnan wrote: And a couple of items caught my attention. For one the backend doesn't set the costs of a reg-reg move to be the same as a reg-const move. In the AArch64 backend the approach appears to be in line with the documentation which is to set the costs

Re: [RFC] costs and it's use in assign_reg_parm

2014-10-03 Thread Segher Boessenkool
On Fri, Oct 03, 2014 at 12:36:37PM -0600, Jeff Law wrote: rtx_cost and its friends have always been a problem and it's always felt like a design problem. The true cost of something is so context dependent I'm not really sure how to build an API to do this in a sane way. In many places it

[RFC] costs and it's use in assign_reg_parm

2014-10-02 Thread Ramana Radhakrishnan
Hi, I've been digging into why on AArch64 we generate pretty bad code for the following testcase. void g2(float, float, float, float, float, float, float, float); void f2a(void) { float x0 = 1.0, x1 = 2.0, x2 = 3.0, x3 = 4.0, x4 = 5.0, x5 = 6.0, x6 = 7.0, x7 = 8.0; float x8 = 0.5,