m68k.c (output_function_prologue, [...]): Use current_function_uses_pic_offset_table...
authorAndreas Schwab <schwab@suse.de>
Mon, 27 Sep 1999 08:43:01 +0000 (08:43 +0000)
committerAndreas Schwab <schwab@gcc.gnu.org>
Mon, 27 Sep 1999 08:43:01 +0000 (08:43 +0000)
* 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

gcc/ChangeLog
gcc/config/m68k/m68k.c

index 32331252b6873d1fd1496113a3251910d7318ffd..61efaa5c5f9f6fc98424da88e8da9e82e7d27d58 100644 (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
index 2db8626b01e327f1e2a1d1b0a06deb2740e2ee61..c2cc4ee47df46a22a792664893c0721e2e963df0 100644 (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;