aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>1999-08-09 07:37:06 +0000
committerJeff Law <law@gcc.gnu.org>1999-08-09 01:37:06 -0600
commit9275b45e547a3de863eca08e32f3031e6f22b128 (patch)
treeebe7fb17917d875e8c858b342258de89fe8d9530 /gcc
parent8f851c1ff272cb667e4d55a0dbb419192d06a9b2 (diff)
downloadgcc-9275b45e547a3de863eca08e32f3031e6f22b128.zip
gcc-9275b45e547a3de863eca08e32f3031e6f22b128.tar.gz
gcc-9275b45e547a3de863eca08e32f3031e6f22b128.tar.bz2
pa.h (HARD_REGNO_MODE_OK): Correctly handle FPregs, even when for 64bit PA targets.
* pa.h (HARD_REGNO_MODE_OK): Correctly handle FPregs, even when for 64bit PA targets. From-SVN: r28618
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog3
-rw-r--r--gcc/config/pa/pa.h2
2 files changed, 5 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2b89696..1eccc50 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,8 @@
Mon Aug 9 01:15:24 1999 Jeffrey A Law (law@cygnus.com)
+ * pa.h (HARD_REGNO_MODE_OK): Correctly handle FPregs, even when
+ for 64bit PA targets.
+
* pa.h (SELECT_SECTION): Define.
* som.h (SELECT_SECTION): Delete.
diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h
index d0bc5b2..31d04ea 100644
--- a/gcc/config/pa/pa.h
+++ b/gcc/config/pa/pa.h
@@ -575,6 +575,8 @@ int lhs_lshift_cint_operand ();
/* On 1.0 machines, don't allow wide non-fp modes in fp regs. */ \
: !TARGET_PA_11 && FP_REGNO_P (REGNO) \
? GET_MODE_SIZE (MODE) <= 4 || GET_MODE_CLASS (MODE) == MODE_FLOAT \
+ : FP_REGNO_P (REGNO) \
+ ? GET_MODE_SIZE (MODE) <= 4 || ((REGNO) & 1) == 0 \
/* Make wide modes be in aligned registers. */ \
: GET_MODE_SIZE (MODE) <= UNITS_PER_WORD || ((REGNO) & 1) == 0)