aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2000-07-30 18:53:33 +0000
committerJan Hubicka <hubicka@gcc.gnu.org>2000-07-30 18:53:33 +0000
commit8acb2f2414c3026135f0d6f3e3ce91822c3c8459 (patch)
tree33f09ce685fe1905bb8ac24fd4801fa02a27ff73
parente251e2a27f3a38da3d71a016efffa50ec324bbbb (diff)
downloadgcc-8acb2f2414c3026135f0d6f3e3ce91822c3c8459.zip
gcc-8acb2f2414c3026135f0d6f3e3ce91822c3c8459.tar.gz
gcc-8acb2f2414c3026135f0d6f3e3ce91822c3c8459.tar.bz2
recog.c (general_operand, [...]): Accept any mode for VOIDmode CONSTANT_P operands.
* recog.c (general_operand, nonimmediate_operand): Accept any mode for VOIDmode CONSTANT_P operands. From-SVN: r35350
-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