------- Comment #21 from vmakarov at redhat dot com 2010-01-29 21:54 ------- Thanks everyone who works on the bug.
I am sorry that the bug was really introduced by my patch more accurately by the part which should fix reload crashes when the 1st scheduling works for some targets. The patch creates huge number dependencies on stack register (r13) which could be used for reloads according to *arm_movsi_insn. But pseudos can not be assigned the stack register because the register is fixed and we have not to add dependencies for the pseudo to fix the reload craches. The following small fix will solve the PR. Index: ../../gcc/gcc/sched-deps.c =================================================================== --- ../../gcc/gcc/sched-deps.c (revision 155624) +++ ../../gcc/gcc/sched-deps.c (working copy) @@ -2623,6 +2623,7 @@ sched_analyze_insn (struct deps *deps, r extract_insn (insn); preprocess_constraints (); ira_implicitly_set_insn_hard_regs (&temp); + AND_COMPL_HARD_REG_SET (temp, ira_no_alloc_regs); IOR_HARD_REG_SET (implicit_reg_pending_clobbers, temp); } I'll submit the patch on Monday after some testing. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41399