This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH][SH] Fix ICE in find_dead_or_set_registers


Christian Bruel <christian.bruel@st.com> wrote:
> This is a SH regression on the 4.7 and trunk while building Webkit
> (pre-processed file size is about 2.2Mb :-)
> 
> A far branch to a return rtx produces an ICE in
> find_dead_or_set_registers at line resource.c:497:
> 
> next = JUMP_LABEL (this_jump_insn);
> if (ANY_RETURN_P (next)) <- next is null
>  next = NULL_RTX;
> 
> Turns out that JUMP_LABEL was not set after gen_return in
> sh.c:gen_far_branch.
> 
> This patch fixes this. Tested for sh4-linux
> 
> OK for 4.7 and trunk ?

> +  if (bp->far_label)
>    JUMP_LABEL (jump) = bp->far_label;

The 2nd line should be indented.  OK with that change.
Thanks for fixing this!

Regards,
	kaz


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]