genpreds.c (mark_mode_tests): Handle non-VOIDmode match_operands.

2005-02-23  Paolo Bonzini  <bonzini@gnu.org>

	* genpreds.c (mark_mode_tests): Handle non-VOIDmode match_operands.
	(write_predicate_expr): Likewise.

From-SVN: r95447
This commit is contained in:
Paolo Bonzini 2005-02-23 09:09:17 +00:00 committed by Paolo Bonzini
parent 40205a3638
commit bb56fc3933
2 changed files with 10 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2005-02-23 Paolo Bonzini <bonzini@gnu.org>
* genpreds.c (mark_mode_tests): Handle non-VOIDmode match_operands.
(write_predicate_expr): Likewise.
2005-02-22 Diego Novillo <dnovillo@redhat.com>
PR tree-optimization/20100

View File

@ -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: