]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
alpha.c (alpha_ra_ever_killed): Inspect the topmost sequence, not whatever we're...
authorRichard Henderson <rth@cygnus.com>
Sat, 5 Sep 1998 21:32:20 +0000 (14:32 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Sat, 5 Sep 1998 21:32:20 +0000 (14:32 -0700)
        * alpha.c (alpha_ra_ever_killed): Inspect the topmost sequence,
        not whatever we're generating now.

From-SVN: r22272

gcc/ChangeLog
gcc/config/alpha/alpha.c

index 9a1891636afec51e1ba78421032e5a249db797de..43426eb05e5d7da7356dc9c5a4c33d329439921b 100644 (file)
@@ -1,3 +1,8 @@
+Sat Sep  5 21:46:47 1998  Richard Henderson  <rth@cygnus.com>
+
+       * alpha.c (alpha_ra_ever_killed): Inspect the topmost sequence,
+       not whatever we're generating now.
+
 Sat Sep  5 14:23:31 1998  Torbjorn Granlund <tege@matematik.su.se>
 
        * m68k.md (zero_extendsidi2): Fix typo.
index efbb5282ce96262b2949af343f9f9d6bf3d44648..0b72289e15aa50379cc4444d267c75f83164f0dd 100644 (file)
@@ -2468,6 +2468,8 @@ alpha_return_addr (count, frame)
 static int
 alpha_ra_ever_killed ()
 {
+  rtx top;
+
 #ifdef ASM_OUTPUT_MI_THUNK
   if (current_function_is_thunk)
     return 0;
@@ -2475,8 +2477,11 @@ alpha_ra_ever_killed ()
   if (!alpha_return_addr_rtx)
     return regs_ever_live[REG_RA];
 
-  return reg_set_between_p (gen_rtx_REG (Pmode, REG_RA),
-                           get_insns(), NULL_RTX);
+  push_topmost_sequence ();
+  top = get_insns();
+  pop_topmost_sequence ();
+  
+  return reg_set_between_p (gen_rtx_REG (Pmode, REG_RA), top, NULL_RTX);
 }
 
 \f