This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: RFA: enable LRA for rs6000
- From: Michael Meissner <meissner at linux dot vnet dot ibm dot com>
- To: Vladimir Makarov <vmakarov at redhat dot com>
- Cc: Michael Meissner <meissner at linux dot vnet dot ibm dot com>, David Edelsohn <dje dot gcc at gmail dot com>, gcc-patches <gcc-patches at gcc dot gnu dot org>, "Bergner, Peter" <bergner at vnet dot ibm dot com>, aavrunin at redhat dot com
- Date: Fri, 26 Apr 2013 19:13:55 -0400
- Subject: Re: RFA: enable LRA for rs6000
- References: <5175D919 dot 1070704 at redhat dot com> <CAGWvnynixrVKFtcTz6fqW1TbU1ZJ=V5yT9m67o=mPuASodHtJg at mail dot gmail dot com> <5176A2D4 dot 7020101 at redhat dot com> <CAGWvny=dYZRwTEu2HkqgdEzE5ZDsR2opbEkT8ok-URv2B_nXYg at mail dot gmail dot com> <5176AACE dot 9000307 at redhat dot com> <20130424194212 dot GA9758 at ibm-tiger dot the-meissners dot org> <51794BC8 dot 1020606 at redhat dot com> <51798564 dot 2040300 at redhat dot com> <20130426153038 dot GA22890 at ibm-tiger dot the-meissners dot org> <517B0715 dot 2010100 at redhat dot com>
On Fri, Apr 26, 2013 at 07:00:37PM -0400, Vladimir Makarov wrote:
> 2013-04-26 Vladimir Makarov <vmakarov@redhat.com>
>
> * lra.c (setup_operand_alternative): Ignore '?'.
> * lra-constraints.c (process_alt_operands): Print cost dump for
> alternatives. Check only moves for cycling.
> (curr_insn_transform): Print insn name.
I'm not sure I'm comfortable with ignoring the '?' altogether. For example, if
you do something in the GPR unit, instructions run at one cycle, while if you
do it in the vector unit, it runs in two cycles. In the past, I've seen cases
where it wanted to spill floating point values from the floating point
registers to the CTR. And if you spill to the LR, it can interfere with the
call cache.
Admitily, when to use '!', '?', and '*' is unclear, and unfortunately it has
changed over time.
--
Michael Meissner, IBM
IBM, M/S 2506R, 550 King Street, Littleton, MA 01460, USA
email: meissner@linux.vnet.ibm.com, phone: +1 (978) 899-4797