From: Steve Ellcey Date: Tue, 26 Jul 2005 23:59:13 +0000 (+0000) Subject: re PR rtl-optimization/22472 (testsuite failure gcc.c-torture/compile/930621-1.c... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b5395c33d1665cdbd390a7c3bad066b8c42dd6e4;p=gcc.git re PR rtl-optimization/22472 (testsuite failure gcc.c-torture/compile/930621-1.c -O3 -funroll-loops) PR rtl-optimization/22472 * config/pa/pa.h (HARD_REGNO_RENAME_OK): Define. From-SVN: r102405 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ac09120ac27..06b638d6719 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-07-26 Steve Ellcey + + PR rtl-optimization/22472 + * config/pa/pa.h (HARD_REGNO_RENAME_OK): Define. + 2005-07-26 Steven Bosscher PR tree-optimization/22504 diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index b9a5394af0f..76a64feddb1 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -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.