lra.c (lra): Set lra_in_progress before check_rtl call.

* lra.c (lra): Set lra_in_progress before check_rtl call.
    	* recog.c (insn_invalid_p): Add !lra_in_progress to prevent
    	adding clobber regs when LRA is running

From-SVN: r205136
This commit is contained in:
Robert Suchanek 2013-11-20 11:17:49 -07:00 committed by Jeff Law
parent 696d76a50d
commit 0ddd0408ef
3 changed files with 13 additions and 5 deletions

View File

@ -1,3 +1,9 @@
2013-11-20 Robert Suchanek <Robert.Suchanek@imgtec.com>
* lra.c (lra): Set lra_in_progress before check_rtl call.
* recog.c (insn_invalid_p): Add !lra_in_progress to prevent
adding clobber regs when LRA is running.
2013-11-20 Maciej W. Rozycki <macro@codesourcery.com>
* config/mips/mips.h (ISA_HAS_FP4): Remove TARGET_FLOAT64

View File

@ -2238,6 +2238,10 @@ lra (FILE *f)
init_insn_recog_data ();
/* We can not set up reload_in_progress because it prevents new
pseudo creation. */
lra_in_progress = 1;
#ifdef ENABLE_CHECKING
check_rtl (false);
#endif
@ -2248,10 +2252,6 @@ lra (FILE *f)
setup_reg_spill_flag ();
/* We can not set up reload_in_progress because it prevents new
pseudo creation. */
lra_in_progress = 1;
/* Function remove_scratches can creates new pseudos for clobbers --
so set up lra_constraint_new_regno_start before its call to
permit changing reg classes for pseudos created by this

View File

@ -314,7 +314,9 @@ insn_invalid_p (rtx insn, bool in_group)
clobbers. */
int icode = recog (pat, insn,
(GET_CODE (pat) == SET
&& ! reload_completed && ! reload_in_progress)
&& ! reload_completed
&& ! reload_in_progress
&& ! lra_in_progress)
? &num_clobbers : 0);
int is_asm = icode < 0 && asm_noperands (PATTERN (insn)) >= 0;