aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/recog.c6
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b3f0620..80482a3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Sun Jul 30 20:51:25 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (general_operand, nonimmediate_operand): Accept
+ any mode for VOIDmode CONSTANT_P operands.
+
Sun Jul 30 20:42:21 MET DST 2000 Jan Hubicka <jh@suse.cz>
* gcse.c (try_replace_reg): Use validate_replace_rtx_subexp
diff --git a/gcc/recog.c b/gcc/recog.c
index 18875de..e079b7e 100644
--- a/gcc/recog.c
+++ b/gcc/recog.c
@@ -907,7 +907,8 @@ general_operand (op, mode)
return 0;
if (CONSTANT_P (op))
- return ((GET_MODE (op) == VOIDmode || GET_MODE (op) == mode)
+ return ((GET_MODE (op) == VOIDmode || GET_MODE (op) == mode
+ || mode == VOIDmode)
#ifdef LEGITIMATE_PIC_OPERAND_P
&& (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op))
#endif
@@ -1159,7 +1160,8 @@ nonmemory_operand (op, mode)
&& GET_MODE_CLASS (mode) != MODE_PARTIAL_INT)
return 0;
- return ((GET_MODE (op) == VOIDmode || GET_MODE (op) == mode)
+ return ((GET_MODE (op) == VOIDmode || GET_MODE (op) == mode
+ || mode == VOIDmode)
#ifdef LEGITIMATE_PIC_OPERAND_P
&& (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op))
#endif