re PR rtl-optimization/22472 (testsuite failure gcc.c-torture/compile/930621-1.c...
authorSteve Ellcey <sje@cup.hp.com>
Tue, 26 Jul 2005 23:59:13 +0000 (23:59 +0000)
committerSteve Ellcey <sje@gcc.gnu.org>
Tue, 26 Jul 2005 23:59:13 +0000 (23:59 +0000)
PR rtl-optimization/22472
* config/pa/pa.h (HARD_REGNO_RENAME_OK): Define.

From-SVN: r102405

gcc/ChangeLog
gcc/config/pa/pa.h

index ac09120..06b638d 100644 (file)
@@ -1,3 +1,8 @@
+2005-07-26  Steve Ellcey  <sje@cup.hp.com>
+
+       PR rtl-optimization/22472
+       * config/pa/pa.h (HARD_REGNO_RENAME_OK): Define.
+
 2005-07-26  Steven Bosscher  <stevenb@suse.de>
 
        PR tree-optimization/22504
index b9a5394..76a64fe 100644 (file)
@@ -358,6 +358,12 @@ typedef struct machine_function GTY(())
 #define FRAME_POINTER_REQUIRED \
   (current_function_calls_alloca)
 
+/* Don't allow hard registers to be renamed into r2 unless r2
+   is already live or already being saved (due to eh).  */
+
+#define HARD_REGNO_RENAME_OK(OLD_REG, NEW_REG) \
+  ((NEW_REG) != 2 || regs_ever_live[2] || current_function_calls_eh_return)
+
 /* C statement to store the difference between the frame pointer
    and the stack pointer values immediately after the function prologue.