Oust HPPA PIC_OFFSET_TABLE_REGNUM_SAVED
Jeffrey A Law
law@redhat.com
Tue, 16 Jan 2001 22:26:11 -0700
In message <Pine.LNX.4.21.0101161848180.4272-100000@front.linuxcare.com.au>yo
u write:
> On Mon, 15 Jan 2001, Richard Henderson wrote:
>
> > On Tue, Jan 16, 2001 at 12:20:19PM +1100, Alan Modra wrote:
> > > * config/pa/pa.c (pa_init_machine_status, pa_free_machine_statu
> s,
> > > pa_init_expanders): New functions.
> >
> > You need a mark_machine_status function. It is also much better
> > to set the global variables once in override_options than for
> > every function in init_expanders.
Actually, just to be clear, we don't want to do this initialization
in the override_options since we're generating a register! We need to
do that for each function!
> gcc/ChangeLog
> * config/pa/pa.h (PIC_OFFSET_TABLE_REGNUM_SAVED): Remove.
> (machine_function): Define.
> (PIC_OFFSET_TABLE_SAVE_RTX) : Define.
> * config/pa/pa.c (pa_init_machine_status, pa_mark_machine_status,
> pa_free_machine_status): New functions.
> (override_options): Set {init,mark,free}_machine_status to above.
> (hppa_expand_prologue): Use PIC_OFFSET_TABLE_SAVE_RTX instead of
> PIC_OFFSET_TABLE_REGNUM_SAVED.
> * config/pa/pa.md: Use PIC_OFFSET_TABLE_SAVE_RTX instead of
> PIC_OFFSET_TABLE_REGNUM_SAVED throughout.
> * config/pa/pa32-regs.h (CONDITIONAL_REGISTER_USAGE): Remove
> references to PIC_OFFSET_TABLE_REGNUM_SAVED.
> * config/pa/pa64-regs.h (CONDITIONAL_REGISTER_USAGE): Likewise.
I've installed this patch.
Jeff