aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorStephane Carrez <stcarrez@nerim.fr>2003-03-31 22:59:19 +0200
committerStephane Carrez <ciceron@gcc.gnu.org>2003-03-31 22:59:19 +0200
commit117895840fa86d5a3a4dcc4bc9a761aade696103 (patch)
tree8aca90d175989138d17d8817767211f2b4b03118 /gcc
parentc25292ceb30a526e89781dce985a788f920ce76f (diff)
downloadgcc-117895840fa86d5a3a4dcc4bc9a761aade696103.zip
gcc-117895840fa86d5a3a4dcc4bc9a761aade696103.tar.gz
gcc-117895840fa86d5a3a4dcc4bc9a761aade696103.tar.bz2
* config/m68hc11/m68hc11.c (hard_reg_operand): Check the mode.
From-SVN: r65109
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/m68hc11/m68hc11.c5
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7844eb8..7600263 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,9 @@
2003-03-31 Stephane Carrez <stcarrez@nerim.fr>
+ * config/m68hc11/m68hc11.c (hard_reg_operand): Check the mode.
+
+2003-03-31 Stephane Carrez <stcarrez@nerim.fr>
+
* config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Don't rely on REG_WAS_0
notes as they are boggus.
(m68hc11_gen_movqi): Likewise.
diff --git a/gcc/config/m68hc11/m68hc11.c b/gcc/config/m68hc11/m68hc11.c
index bb3327b..5c762ca 100644
--- a/gcc/config/m68hc11/m68hc11.c
+++ b/gcc/config/m68hc11/m68hc11.c
@@ -1052,8 +1052,11 @@ hard_addr_reg_operand (operand, mode)
int
hard_reg_operand (operand, mode)
rtx operand;
- enum machine_mode mode ATTRIBUTE_UNUSED;
+ enum machine_mode mode;
{
+ if (GET_MODE (operand) != mode && mode != VOIDmode)
+ return 0;
+
if (GET_CODE (operand) == SUBREG)
operand = XEXP (operand, 0);