diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 19e47fc6aa0..036f903e1c9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2007-04-21 Kaz Kojima + + PR target/31480 + * config/sh/sh.md (length): Check if prev_nonnote_insn (insn) + is null. + 2007-04-21 Andrew Pinski * timevar.c (timevar_print): Change reference of --disable-checking to diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md index fe99638f99b..8d645052d89 100644 --- a/gcc/config/sh/sh.md +++ b/gcc/config/sh/sh.md @@ -420,10 +420,12 @@ (eq_attr "type" "jump") (cond [(eq_attr "med_branch_p" "yes") (const_int 2) - (and (eq (symbol_ref "GET_CODE (prev_nonnote_insn (insn))") - (symbol_ref "INSN")) - (eq (symbol_ref "INSN_CODE (prev_nonnote_insn (insn))") - (symbol_ref "code_for_indirect_jump_scratch"))) + (and (ne (symbol_ref "prev_nonnote_insn (insn)") + (const_int 0)) + (and (eq (symbol_ref "GET_CODE (prev_nonnote_insn (insn))") + (symbol_ref "INSN")) + (eq (symbol_ref "INSN_CODE (prev_nonnote_insn (insn))") + (symbol_ref "code_for_indirect_jump_scratch")))) (cond [(eq_attr "braf_branch_p" "yes") (const_int 6) (eq (symbol_ref "flag_pic") (const_int 0))