diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/ia64/ia64.h | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7c41998..a670d87 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-07-05 Jim Wilson <wilson@cygnus.com> + + * config/ia64/ia64.h (HARD_REGNO_MODE_OK): If FR_REGNO_P, disallow + CCmode. + 2000-07-05 Rodney Brown <RodneyBrown@pmsc.com> * invoke.texi: Fix minor typos diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h index b2c80cd..9db1675 100644 --- a/gcc/config/ia64/ia64.h +++ b/gcc/config/ia64/ia64.h @@ -812,7 +812,9 @@ while (0) that one). */ /* ??? movxf_internal does not support XFmode values in integer registers. */ #define HARD_REGNO_MODE_OK(REGNO, MODE) \ - (PR_REGNO_P (REGNO) ? (MODE) == CCmode : 1) + (FR_REGNO_P (REGNO) ? (MODE) != CCmode \ + : PR_REGNO_P (REGNO) ? (MODE) == CCmode \ + : 1) /* A C expression that is nonzero if it is desirable to choose register allocation so as to avoid move instructions between a value of mode MODE1 |