From b85f21c09b2fe45d9aa742a14b6e1e43ed3a042b Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Wed, 23 Oct 1996 22:02:32 +0000 Subject: [PATCH] Accept a unary operator in constrain_operands From-SVN: r13017 --- gcc/recog.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gcc/recog.c b/gcc/recog.c index 1322f4154bb..3c7d14c8cea 100644 --- a/gcc/recog.c +++ b/gcc/recog.c @@ -1,5 +1,5 @@ /* Subroutines used by or related to instruction recognition. - Copyright (C) 1987, 88, 91, 92, 93, 1994 Free Software Foundation, Inc. + Copyright (C) 1987, 88, 91-5, 1996 Free Software Foundation, Inc. This file is part of GNU CC. @@ -1652,6 +1652,11 @@ constrain_operands (insn_code_num, strict) earlyclobber[opno] = 0; + /* A unary operator may be accepted by the predicate, but it + is irrelevant for matching contraints. */ + if (GET_RTX_CLASS (GET_CODE (op)) == '1') + op = XEXP (op, 0); + if (GET_CODE (op) == SUBREG) { if (GET_CODE (SUBREG_REG (op)) == REG -- 2.30.2