RFC: lra-constraints.c and TARGET_HARD_REGNO_CALL_PART_CLOBBERED question/patch

2018-07-11 Thread Steve Ellcey
I have a reload/register allocation question and possible patch.  While working on the Aarch64 SIMD ABI[1] I ran into a problem where GCC was saving and restoring registers that it did not need to.  I tracked it down to lra-constraints.c and its use of targetm.hard_regno_call_part_clobbered on inst

Re: RFC: lra-constraints.c and TARGET_HARD_REGNO_CALL_PART_CLOBBERED question/patch

2018-07-11 Thread Jeff Law
On 07/11/2018 02:07 PM, Steve Ellcey wrote: > I have a reload/register allocation question and possible patch.  While > working on the Aarch64 SIMD ABI[1] I ran into a problem where GCC was > saving and restoring registers that it did not need to.  I tracked it > down to lra-constraints.c and its u

Re: RFC: lra-constraints.c and TARGET_HARD_REGNO_CALL_PART_CLOBBERED question/patch

2018-07-11 Thread Richard Sandiford
Jeff Law writes: > On 07/11/2018 02:07 PM, Steve Ellcey wrote: >> I have a reload/register allocation question and possible patch.  While >> working on the Aarch64 SIMD ABI[1] I ran into a problem where GCC was >> saving and restoring registers that it did not need to.  I tracked it >> down to lra

Re: RFC: lra-constraints.c and TARGET_HARD_REGNO_CALL_PART_CLOBBERED question/patch

2018-07-12 Thread Steve Ellcey
On Thu, 2018-07-12 at 07:17 +0100, Richard Sandiford wrote: >  > So it only calls targetm.hard_regno_call_part_clobbered if such a > call is known to exist somewhere between the two references to > regno (although we don't have the calls themselves to hand). > > Thanks, > Richard Having the speci