aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJames E Wilson <wilson@tuliptree.org>2003-03-07 16:21:23 -0800
committerJim Wilson <wilson@gcc.gnu.org>2003-03-07 16:21:23 -0800
commit9bcd9715940797c7ee1d47c7314b4ab1cd205f2a (patch)
treeb6db40aa7dca6e548ccaa8f52ca24c81ffe5201c /gcc
parent149904b58f18eda6eaba9f9860b133e21ed49a40 (diff)
downloadgcc-9bcd9715940797c7ee1d47c7314b4ab1cd205f2a.zip
gcc-9bcd9715940797c7ee1d47c7314b4ab1cd205f2a.tar.gz
gcc-9bcd9715940797c7ee1d47c7314b4ab1cd205f2a.tar.bz2
Fix for proprietary testcase that fails at -m5-compact...
Fix for proprietary testcase that fails at -m5-compact ����������������* config/sh/sh.h (HARD_REGNO_NREGS): Round up the XD register count. From-SVN: r63963
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/sh/sh.h4
2 files changed, 6 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0802120..34e2ada 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2003-03-07 James E Wilson <wilson@tuliptree.org>
+
+        * config/sh/sh.h (HARD_REGNO_NREGS): Round up the XD register count.
+
2003-03-07 Geoffrey Keating <geoffk@apple.com>
* objc/lang-specs.h (objective-c-header): Use .gch not .pch;
diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h
index 49503d1..c2f3160 100644
--- a/gcc/config/sh/sh.h
+++ b/gcc/config/sh/sh.h
@@ -937,10 +937,10 @@ extern char sh_additional_register_names[ADDREGNAMES_SIZE] \
#define HARD_REGNO_NREGS(REGNO, MODE) \
(XD_REGISTER_P (REGNO) \
- ? (GET_MODE_SIZE (MODE) / (2 * UNITS_PER_WORD)) \
+ ? ((GET_MODE_SIZE (MODE) + (2*UNITS_PER_WORD - 1)) / (2*UNITS_PER_WORD)) \
: (TARGET_SHMEDIA && FP_REGISTER_P (REGNO)) \
? ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD/2 - 1) / (UNITS_PER_WORD/2)) \
- : ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD)) \
+ : ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD))
/* Value is 1 if hard register REGNO can hold a value of machine-mode MODE.
We can allow any mode in any general register. The special registers