diff options
author | James E. Wilson <wilson@cygnus.com> | 2000-06-29 18:42:35 +0000 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 2000-06-29 11:42:35 -0700 |
commit | ad06f2e34174c136c072b60ef13ae3da06c7cd3d (patch) | |
tree | 7dba8f518c0e4cc0ea403b826c1a16792730a791 | |
parent | ab30ba5c2396eb7cc4857e40eb10a72c2f9e2e42 (diff) | |
download | gcc-ad06f2e34174c136c072b60ef13ae3da06c7cd3d.zip gcc-ad06f2e34174c136c072b60ef13ae3da06c7cd3d.tar.gz gcc-ad06f2e34174c136c072b60ef13ae3da06c7cd3d.tar.bz2 |
Fix java build failure.
* config/ia64/ia64.h (MODES_TIEABLE_P): Only tie if mode class is the
same. Only tie XFmode with XFmode.
From-SVN: r34787
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/ia64/ia64.h | 9 |
2 files changed, 12 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8be2212..540f474 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-06-29 James E. Wilson <wilson@cygnus.com> + + * config/ia64/ia64.h (MODES_TIEABLE_P): Only tie if mode class is the + same. Only tie XFmode with XFmode. + 2000-06-29 Zack Weinberg <zack@wolery.cumb.org> * c-decl.c, timevar.c, tlink.c: Include intl.h. diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h index 32a6f38..88257b7 100644 --- a/gcc/config/ia64/ia64.h +++ b/gcc/config/ia64/ia64.h @@ -810,7 +810,7 @@ while (0) /* A C expression that is nonzero if it is permissible to store a value of mode MODE in hard register number REGNO (or in several registers starting with 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) @@ -824,7 +824,12 @@ while (0) /* ??? If the comments are true, then this must be zero if one mode is CCmode, INTEGRAL_MODE_P or FLOAT_MODE_P and the other is not. Otherwise, it is true. */ -#define MODES_TIEABLE_P(MODE1, MODE2) 1 +/* Don't tie integer and FP modes, as that causes us to get integer registers + allocated for FP instructions. XFmode only supported in FP registers at + the moment, so we can't tie it with any other modes. */ +#define MODES_TIEABLE_P(MODE1, MODE2) \ + ((GET_MODE_CLASS (MODE1) == GET_MODE_CLASS (MODE2)) \ + && (((MODE1) == XFmode) == ((MODE2) == XFmode))) /* Define this macro if the compiler should avoid copies to/from CCmode registers. You should only define this macro if support fo copying to/from |