This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
A questionable predicate in sh/predicates.md
- From: Kazu Hirata <kazu at codesourcery dot com>
- To: gcc at gcc dot gnu dot org
- Cc: joern dot rennecke at st dot com, aoliva at redhat dot com, kkojima at gcc dot gnu dot org
- Date: Sun, 8 Jan 2006 04:39:18 -0800
- Subject: A questionable predicate in sh/predicates.md
Hi,
In sh/predicates.md, I see
(define_predicate "sh_rep_vec"
(match_code "const_vector")
{
int i;
rtx x, y;
if ((GET_CODE (op) != CONST_VECTOR && GET_CODE (op) != PARALLEL)
|| (GET_MODE (op) != mode && mode != VOIDmode))
return 0;
Notice that match_code at the beginning does not mention PARALLEL, but
we have GET_CODE (op) != PARALLEL later. Is this predicate intended
to accept PARALLEL as well? If so, should we change the match_code at
the beginning? When I did the conversion from PREDICATE_CODES to
predicates.md, I did so in a mechanical way, so loose things like this
might have gone unnoticed.
Kazu Hirata