diff options
author | Richard Henderson <rth@cygnus.com> | 1999-10-10 02:43:26 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 1999-10-10 02:43:26 -0700 |
commit | ec1c89e60a0e1a3e793f694484fad42a2a7014a3 (patch) | |
tree | ecc36f88e3b35874748fedad2e98caa3f5d849dc | |
parent | 8015b78d4166d99163d6ae09d950e743005e77de (diff) | |
download | gcc-ec1c89e60a0e1a3e793f694484fad42a2a7014a3.zip gcc-ec1c89e60a0e1a3e793f694484fad42a2a7014a3.tar.gz gcc-ec1c89e60a0e1a3e793f694484fad42a2a7014a3.tar.bz2 |
genrecog.c (add_to_sequence): Move allow_const_int test outside known predicate block...
* genrecog.c (add_to_sequence): Move allow_const_int test outside
known predicate block; default allow_const_int true.
From-SVN: r29885
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/genrecog.c | 26 |
2 files changed, 21 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index adf51df..bdb5aea 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Sun Oct 10 02:41:41 1999 Richard Henderson <rth@cygnus.com> + + * genrecog.c (add_to_sequence): Move allow_const_int test outside + known predicate block; default allow_const_int true. + Sun Oct 10 00:43:08 1999 Richard Henderson <rth@cygnus.com> * i386.h (CC1_SPEC): Typo -- use cc1_cpu. diff --git a/gcc/genrecog.c b/gcc/genrecog.c index 45cb3a3..371e5b2 100644 --- a/gcc/genrecog.c +++ b/gcc/genrecog.c @@ -402,6 +402,7 @@ add_to_sequence (pattern, last, position, insn_type, top) { const char *pred_name; RTX_CODE was_code = code; + int allows_const_int = 1; if (code == MATCH_SCRATCH) { @@ -462,10 +463,6 @@ add_to_sequence (pattern, last, position, insn_type, top) allows_const_int = 1; break; } - - /* Can't enforce a mode if we allow const_int. */ - if (allows_const_int) - mode = VOIDmode; } else { @@ -478,12 +475,10 @@ add_to_sequence (pattern, last, position, insn_type, top) #endif } } - else - { - /* Wildcard match. Can't enforce a mode because we allow - anything -- const_int included. */ - mode = VOIDmode; - } + + /* Can't enforce a mode if we allow const_int. */ + if (allows_const_int) + mode = VOIDmode; /* Accept the operand, ie. record it in `operands'. */ test = new_decision_test (DT_accept_op, &place); @@ -2417,3 +2412,14 @@ debug_decision (d) { debug_decision_0 (d, 0, 1000000); } + +void +debug_decision_list (d) + struct decision *d; +{ + while (d) + { + debug_decision_0 (d, 0, 0); + d = d->next; + } +} |