diff options
author | Richard Henderson <rth@cygnus.com> | 1999-10-14 02:58:41 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 1999-10-14 02:58:41 -0700 |
commit | 25238622ec79cceb912a1382ff9afffb680aea0a (patch) | |
tree | 14107dfc41f1980eaeb4ee41dd1754ba36b2e72f /gcc/genrecog.c | |
parent | 8fe0ca0c076f46ba45448b3254597844475eee30 (diff) | |
download | gcc-25238622ec79cceb912a1382ff9afffb680aea0a.zip gcc-25238622ec79cceb912a1382ff9afffb680aea0a.tar.gz gcc-25238622ec79cceb912a1382ff9afffb680aea0a.tar.bz2 |
genrecog.c (validate_pattern): Typo last change.
* genrecog.c (validate_pattern): Typo last change. Verify
that output operands have output reloads.
From-SVN: r29968
Diffstat (limited to 'gcc/genrecog.c')
-rw-r--r-- | gcc/genrecog.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/gcc/genrecog.c b/gcc/genrecog.c index f36e879..3636215 100644 --- a/gcc/genrecog.c +++ b/gcc/genrecog.c @@ -525,7 +525,7 @@ validate_pattern (pattern, insn, set_dest) && pred_name[0] != '\0' && allows_non_const && ! special_mode_pred - && strstr (c_test, "operands") != NULL + && strstr (c_test, "operands") == NULL && GET_CODE (insn) == DEFINE_INSN) { message_with_line (pattern_lineno, @@ -533,6 +533,19 @@ validate_pattern (pattern, insn, set_dest) XINT (pattern, 0)); } + /* A MATCH_OPERAND that is a SET should have an output reload. */ + if (set_dest + && code == MATCH_OPERAND + && XSTR (pattern, 2)[0] != '\0' + && XSTR (pattern, 2)[0] != '=' + && XSTR (pattern, 2)[0] != '+') + { + message_with_line (pattern_lineno, + "operand %d missing output reload", + XINT (pattern, 0)); + error_count++; + } + return; } |