Commit 58f206d6 by DJ Delorie Committed by DJ Delorie

re PR rtl-optimization/14282 (ICE in sh-elf-gcc with -m4-single-only and -O2)

PR optimization/14282
* sched-deps.c (sched_analyze_insn): Allow a stack adjustment
between a call and the assignment of its return value.

From-SVN: r78925
parent e9eba255
2004-03-04 DJ Delorie <dj@redhat.com>
PR optimization/14282
* sched-deps.c (sched_analyze_insn): Allow a stack adjustment
between a call and the assignment of its return value.
2004-03-04 Kazu Hirata <kazu@cs.umass.edu> 2004-03-04 Kazu Hirata <kazu@cs.umass.edu>
* config/h8300/h8300.c: Put a comment for every function. * config/h8300/h8300.c: Put a comment for every function.
......
...@@ -1127,7 +1127,13 @@ sched_analyze_insn (struct deps *deps, rtx x, rtx insn, rtx loop_notes) ...@@ -1127,7 +1127,13 @@ sched_analyze_insn (struct deps *deps, rtx x, rtx insn, rtx loop_notes)
tmp = SET_SRC (set); tmp = SET_SRC (set);
if (GET_CODE (tmp) == SUBREG) if (GET_CODE (tmp) == SUBREG)
tmp = SUBREG_REG (tmp); tmp = SUBREG_REG (tmp);
if (GET_CODE (tmp) == REG) if ((GET_CODE (tmp) == PLUS
|| GET_CODE (tmp) == MINUS)
&& GET_CODE (XEXP (tmp, 0)) == REG
&& REGNO (XEXP (tmp, 0)) == STACK_POINTER_REGNUM
&& dest_regno == STACK_POINTER_REGNUM)
src_regno = STACK_POINTER_REGNUM;
else if (GET_CODE (tmp) == REG)
src_regno = REGNO (tmp); src_regno = REGNO (tmp);
else else
goto end_call_group; goto end_call_group;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment