diff options
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/recog.c | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 571df09262e..45b5f195b22 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2001-11-02 Graham Stott <grahams@redhat.com> + + * recog.c (decode_asm_operands): Check that the SRC is ASM_OPERANDS. + 2001-11-01 Eric Christopher <echristo@redhat.com> * config.gcc: Revert part of earlier patch. diff --git a/gcc/recog.c b/gcc/recog.c index 265ce3ffbd2..49d0cd927b1 100644 --- a/gcc/recog.c +++ b/gcc/recog.c @@ -1554,7 +1554,8 @@ decode_asm_operands (body, operands, operand_locs, constraints, modes) template = ASM_OPERANDS_TEMPLATE (asmop); } else if (GET_CODE (body) == PARALLEL - && GET_CODE (XVECEXP (body, 0, 0)) == SET) + && GET_CODE (XVECEXP (body, 0, 0)) == SET + && GET_CODE (SET_SRC (XVECEXP (body, 0, 0))) == ASM_OPERANDS) { rtx asmop = SET_SRC (XVECEXP (body, 0, 0)); int nparallel = XVECLEN (body, 0); /* Includes CLOBBERs. */ |