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] PR middle-end/38857: ICE in selective scheduler


Alexander Monakov <amonakov@ispras.ru> writes:

> 2009-01-25  Andrey Belevantsev  <abel@ispras.ru>
>
> 	PR middle-end/38857
> 	* sel-sched.c (count_occurrences_1): Check that *cur_rtx is a hard
> 	register.
> 	(move_exprs_to_boundary): Change return type and pass through
> 	should_move from move_op.  Relax assert.  Update usage ...
> 	(schedule_expr_on_boundary): ... here.  Use should_move instead of
> 	cant_move.
> 	(move_op_orig_expr_found): Indicate that insn was disconnected from
> 	stream.
> 	(code_motion_process_successors): Do not call after_merge_succs
> 	callback if original expression was not found when traversing any of
> 	the branches.
> 	(code_motion_path_driver): Change return type.  Update prototype.
> 	(move_op): Update comment.  Add a new parameter (should_move).  Update
> 	prototype.  Set *should_move based on indication provided by
> 	move_op_orig_expr_found.
>
> gcc/testsute/ChangeLog:
>
> 2009-01-25  Andrey Belevantsev  <abel@ispras.ru>
> 	    Steve Ellcey  <sje@cup.hp.com>
>
> 	PR middle-end/38857
> 	* gcc.c-torture/compile/pr38857.c: New test.

> +   Write true to *SHOULD_MOVE when we have only disconnected one of 
> +   insns found.

This looks as though *SHOULD_MOVE is only set in one case.  It should
say something like "Set *SHOULD_MOVE to indicate whether we have only
disconnected one of the insns found."


This is OK with that change.

Thanks.

Ian


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