diff options
author | bonzini <bonzini@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-23 09:09:17 +0000 |
---|---|---|
committer | bonzini <bonzini@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-23 09:09:17 +0000 |
commit | 3f980c569197e288a293a04298e7a9473188244c (patch) | |
tree | 249a35b893096b2eca9d69131904d3e421ac92a5 /gcc/genpreds.c | |
parent | 71aaaa89157081336d0ea8ea324ce79f75ba93f5 (diff) | |
download | gcc-3f980c569197e288a293a04298e7a9473188244c.tar.gz |
2005-02-23 Paolo Bonzini <bonzini@gnu.org>
* genpreds.c (mark_mode_tests): Handle non-VOIDmode match_operands.
(write_predicate_expr): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@95447 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/genpreds.c')
-rw-r--r-- | gcc/genpreds.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/genpreds.c b/gcc/genpreds.c index 874925de998..cb22908fb56 100644 --- a/gcc/genpreds.c +++ b/gcc/genpreds.c @@ -167,7 +167,7 @@ mark_mode_tests (rtx exp) struct pred_data *p = lookup_predicate (XSTR (exp, 1)); if (!p) error ("reference to undefined predicate '%s'", XSTR (exp, 1)); - else if (p->special) + else if (p->special || GET_MODE (exp) != VOIDmode) NO_MODE_TEST (exp) = 1; } break; @@ -366,7 +366,10 @@ write_predicate_expr (const char *name, rtx exp) break; case MATCH_OPERAND: - printf ("%s (op, mode)", XSTR (exp, 1)); + if (GET_MODE (exp) == VOIDmode) + printf ("%s (op, mode)", XSTR (exp, 1)); + else + printf ("%s (op, %smode)", XSTR (exp, 1), mode_name[GET_MODE (exp)]); break; case MATCH_CODE: |