+2001-01-07 Richard Henderson <rth@redhat.com>
+
+ * jump.c (simplejump_p): Recognize any single_set jump
+ of the proper form.
+
2001-01-07 Richard Henderson <rth@redhat.com>
* configure.in (slibdir): Accept an --with-slibdir option.
simplejump_p (insn)
rtx insn;
{
- return (GET_CODE (insn) == JUMP_INSN
- && GET_CODE (PATTERN (insn)) == SET
- && GET_CODE (SET_DEST (PATTERN (insn))) == PC
- && GET_CODE (SET_SRC (PATTERN (insn))) == LABEL_REF);
+ rtx set;
+
+ if (GET_CODE (insn) != JUMP_INSN)
+ return 0;
+
+ set = PATTERN (insn);
+ if (GET_CODE (set) != SET)
+ {
+ set = single_set_1 (insn);
+ if (set == NULL_RTX)
+ return 0;
+ }
+
+ return (GET_CODE (SET_DEST (set)) == PC
+ && GET_CODE (SET_SRC (set)) == LABEL_REF);
}
/* Return nonzero if INSN is a (possibly) conditional jump