libcall changes for the scheduler

Franz Sirl Franz.Sirl-kernel@lauterbach.com
Thu Jun 6 13:47:00 GMT 2002


On Tuesday 04 June 2002 19:40, law@redhat.com wrote:
> Here's the final patch to deal with keeping libcalls as a block during
> scheduling and to not count USE/CLOBBERs against the issue rate.
>
> It's been regression tested on a ppc platform (David Edelsohn) and
> bootstrap tested on ppc-unknown-linux-gnu (myself).
>
> 	* sched-int.h (struct deps): New field libcall_block_tail_insn.
> 	* sched_deps.c (init_deps): Initialize libcall_block_tail_insn.
> 	* sched_deps.c (sched_analyze_insn): If libcall_block_tail_insn
> 	is set, then mark the current insn as being part of a libcall
> 	scheduling group.
> 	(sched_analyze): Set and clear libcall_block_tail_insn appropriately.
>
> 	* haifa-sched.c (schedule_block): Do not count USE or CLOBBER
> 	insns against the issue rate.

This patch (and the few bug fixes it depends on) is qualified for the branch 
cause it was reported to me as an regression since gcc-2.95.2. The affected 
application is the linux kernel which potentially consumes large portions of 
the kernel stack leading to kernel oopses without this patch.

Franz.



More information about the Gcc-patches mailing list