re PR bootstrap/54688 (violation of implicit restriction "No_Elaboration_Code" on a-ioexce.ads)

PR bootstrap/54688
	* sched-deps.c (parse_add_or_inc): Remove MINUS handling.  Take
	STACK_GROWS_DOWNWARD into account.

From-SVN: r191838
This commit is contained in:
Bernd Schmidt 2012-09-28 20:32:55 +00:00 committed by Bernd Schmidt
parent 495de4f4cb
commit 0380c51fef
2 changed files with 15 additions and 5 deletions

View File

@ -1,3 +1,9 @@
2012-09-20 Bernd Schmidt <bernds@codesourcery.com>
PR bootstrap/54688
* sched-deps.c (parse_add_or_inc): Remove MINUS handling. Take
STACK_GROWS_DOWNWARD into account.
2012-09-28 Jakub Jelinek <jakub@redhat.com>
PR target/54716

View File

@ -4600,8 +4600,7 @@ parse_add_or_inc (struct mem_inc_info *mii, rtx insn, bool before_mem)
if (!REG_P (SET_DEST (pat)))
return false;
if (GET_CODE (SET_SRC (pat)) != PLUS
&& GET_CODE (SET_SRC (pat)) != MINUS)
if (GET_CODE (SET_SRC (pat)) != PLUS)
return false;
mii->inc_insn = insn;
@ -4629,9 +4628,14 @@ parse_add_or_inc (struct mem_inc_info *mii, rtx insn, bool before_mem)
}
if (regs_equal && REGNO (SET_DEST (pat)) == STACK_POINTER_REGNUM)
/* Note that the sign has already been reversed for !before_mem. */
return mii->inc_constant > 0;
{
/* Note that the sign has already been reversed for !before_mem. */
#ifdef STACK_GROWS_DOWNWARD
return mii->inc_constant > 0;
#else
return mii->inc_constant < 0;
#endif
}
return true;
}