This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Scheduling fix (fixes gcc.c-torture/execute/980506-1.c on ppc)
- To: Franz dot Sirl-kernel at lauterbach dot com
- Subject: Re: Scheduling fix (fixes gcc.c-torture/execute/980506-1.c on ppc)
- From: Geoff Keating <geoffk at ozemail dot com dot au>
- Date: Wed, 26 Aug 1998 15:21:50 +1000
- CC: egcs-patches at cygnus dot com
- References: <199808251453.AAA00805@oznet15.ozemail.com.au>
> Date: Tue, 25 Aug 1998 16:52:57 +0200
> From: Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
> is this patch needed in addition to this one:
>
> Tue Aug 18 10:32:11 1998 Jeffrey A Law (law@cygnus.com)
>
> * haifa-sched.c (sched_analyze): Put all JUMP_INSNs on the last
> pending memory flush list.
>
> This patch alone fixed 980506-1.c for me and others. Doesn't it fix all
> possible cases?
That patch is a "optimisation doesn't work, let's turn it off" class
of patch, which I hope is only for the 1.1 release. My patch fixes
the underlying problem.
Notice that since loops usually end with JUMP_INSNs, the patch
effectively disables all interblock scheduling; and I always thought
the whole point of the Haifa scheduler was that it could do
speculative loads around loops.
--
Geoffrey Keating <geoffk@ozemail.com.au>