Recognize return insns even if the return appears in a parallel.

From-SVN: r55885
This commit is contained in:
Bernd Schmidt 2002-07-30 21:57:56 +00:00 committed by Bernd Schmidt
parent 26e20555c3
commit 79cbc1f764
2 changed files with 5 additions and 2 deletions

View File

@ -2,6 +2,8 @@
* ifcvt.c (cond_exec_process_if_block): Fix a merging error.
Bail out early if false_expr is NULL and we'd crash due to this.
* genemit.c (gen_expand): Recognize return insns even if the return
appears in a parallel.
2002-07-30 David Edelsohn <edelsohn@gnu.org>
Zack Weinberg <zack@codesourcery.com>

View File

@ -524,8 +524,9 @@ gen_expand (expand)
rtx next = XVECEXP (expand, 1, i);
if ((GET_CODE (next) == SET && GET_CODE (SET_DEST (next)) == PC)
|| (GET_CODE (next) == PARALLEL
&& GET_CODE (XVECEXP (next, 0, 0)) == SET
&& GET_CODE (SET_DEST (XVECEXP (next, 0, 0))) == PC)
&& ((GET_CODE (XVECEXP (next, 0, 0)) == SET
&& GET_CODE (SET_DEST (XVECEXP (next, 0, 0))) == PC)
|| GET_CODE (XVECEXP (next, 0, 0)) == RETURN))
|| GET_CODE (next) == RETURN)
printf (" emit_jump_insn (");
else if ((GET_CODE (next) == SET && GET_CODE (SET_SRC (next)) == CALL)