m68k.c (output_function_prologue, [...]): Use current_function_uses_pic_offset_table instead of regs_ever_live to decide...

* config/m68k/m68k.c (output_function_prologue,
	output_function_epilogue): Use
	current_function_uses_pic_offset_table instead of regs_ever_live
	to decide whether to save/restore pic register.
	(legitimize_pic_address): Don't modify regs_ever_live any more.

From-SVN: r29676
This commit is contained in:
Andreas Schwab 1999-09-27 08:43:01 +00:00 committed by Andreas Schwab
parent cc52a736ff
commit 6e8313feb2
2 changed files with 10 additions and 4 deletions

View File

@ -1,3 +1,11 @@
Mon Sep 27 10:28:48 1999 Andreas Schwab <schwab@suse.de>
* config/m68k/m68k.c (output_function_prologue,
output_function_epilogue): Use
current_function_uses_pic_offset_table instead of regs_ever_live
to decide whether to save/restore pic register.
(legitimize_pic_address): Don't modify regs_ever_live any more.
Sun Sep 26 16:36:52 1999 Robert Lipe (robertlipe@usa.net)
* config/i386/dgux.h (SELECT_RTX_SECTION): Provide dummy argument

View File

@ -356,7 +356,7 @@ output_function_prologue (stream, size)
mask &= ~ (1 << (15 - FRAME_POINTER_REGNUM));
num_saved_regs--;
}
if (flag_pic && regs_ever_live[PIC_OFFSET_TABLE_REGNUM])
if (flag_pic && current_function_uses_pic_offset_table)
{
mask |= 1 << (15 - PIC_OFFSET_TABLE_REGNUM);
num_saved_regs++;
@ -568,7 +568,7 @@ output_function_epilogue (stream, size)
nregs++;
mask |= 1 << regno;
}
if (flag_pic && regs_ever_live[PIC_OFFSET_TABLE_REGNUM])
if (flag_pic && current_function_uses_pic_offset_table)
{
nregs++;
mask |= 1 << PIC_OFFSET_TABLE_REGNUM;
@ -1334,8 +1334,6 @@ legitimize_pic_address (orig, mode, reg)
gen_rtx_PLUS (Pmode,
pic_offset_table_rtx, orig));
current_function_uses_pic_offset_table = 1;
if (reload_in_progress)
regs_ever_live[PIC_OFFSET_TABLE_REGNUM] = 1;
RTX_UNCHANGING_P (pic_ref) = 1;
emit_move_insn (reg, pic_ref);
return reg;