public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Re: splitting before sched2
  1998-04-04 16:52 splitting before sched2 Richard Henderson
@ 1998-04-04 14:20 ` Jeffrey A Law
  1998-04-04 17:48   ` Richard Henderson
  0 siblings, 1 reply; 5+ messages in thread
From: Jeffrey A Law @ 1998-04-04 14:20 UTC (permalink / raw)
  To: Richard Henderson; +Cc: egcs

  In message < 19980404120552.48484@dot.cygnus.com >you write:
  > On Alpha at least there are a number of splits that are only enabled
  > after reload is complete.  I could have sworn other machines did this
  > as well.  My problem is that Haifa only tries splitting once, usually
  > before reload. 
Some machines do post reload splitting to help delay slot filling.

Recently (within the last year?) Joern added post reload splitting
to the old scheduler.  I thought I had merged up all the changes
to the old scheduler into hafia, but I must have missed that one.

          /* It is probably not worthwhile to try to split again in the
             second pass.  However, if flag_schedule_insns is not set,
             the first and only (if any) scheduling pass is after reload.  */
          if (reload_completed == 0 || ! flag_schedule_insns)           

I might argue that always splitting after reload would be a good
thing -- it would help some of the older PA7000 series machines
and there's also  a case where it would help the PA8000 series.


My vote would be to unconditionally split after reload for both
schedulers.

jeff

^ permalink raw reply	[flat|nested] 5+ messages in thread

* splitting before sched2
@ 1998-04-04 16:52 Richard Henderson
  1998-04-04 14:20 ` Jeffrey A Law
  0 siblings, 1 reply; 5+ messages in thread
From: Richard Henderson @ 1998-04-04 16:52 UTC (permalink / raw)
  To: law, egcs

On Alpha at least there are a number of splits that are only enabled
after reload is complete.  I could have sworn other machines did this
as well.  My problem is that Haifa only tries splitting once, usually
before reload. 

The question is, should we just remove/disable the test, or should we
come up with some genconfig test that determines if the second pass is
necessary.  Possibly by seeing if any predicate contains the string
"reload".


r~



Index: haifa-sched.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/haifa-sched.c,v
retrieving revision 1.34
diff -c -p -d -r1.34 haifa-sched.c
*** haifa-sched.c	1998/03/28 23:45:08	1.34
--- haifa-sched.c	1998/04/04 19:58:04
*************** split_block_insns (b)
*** 8278,8284 ****
        /* It is probably not worthwhile to try to split again in
  	 the second pass.  However, if flag_schedule_insns is not set,
  	 the first and only (if any) scheduling pass is after reload.  */
!       if (reload_completed == 0 || ! flag_schedule_insns)
  	{
  	  rtx last, first = PREV_INSN (insn);
  	  rtx notes = REG_NOTES (insn);
--- 8278,8286 ----
        /* It is probably not worthwhile to try to split again in
  	 the second pass.  However, if flag_schedule_insns is not set,
  	 the first and only (if any) scheduling pass is after reload.  */
!       /* ??? Well, no, there are on some machines certain splits that are
! 	 enabled *only* after reload is complete.  */
!       if (1 || reload_completed == 0 || ! flag_schedule_insns)
  	{
  	  rtx last, first = PREV_INSN (insn);
  	  rtx notes = REG_NOTES (insn);

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: splitting before sched2
  1998-04-04 14:20 ` Jeffrey A Law
@ 1998-04-04 17:48   ` Richard Henderson
  1998-04-05 14:00     ` Joern Rennecke
  0 siblings, 1 reply; 5+ messages in thread
From: Richard Henderson @ 1998-04-04 17:48 UTC (permalink / raw)
  To: law; +Cc: Richard Henderson, egcs

> My vote would be to unconditionally split after reload for both
> schedulers.

Ok, done.


r~

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: splitting before sched2
  1998-04-04 17:48   ` Richard Henderson
@ 1998-04-05 14:00     ` Joern Rennecke
  1998-04-05 17:27       ` Richard Henderson
  0 siblings, 1 reply; 5+ messages in thread
From: Joern Rennecke @ 1998-04-05 14:00 UTC (permalink / raw)
  To: rth; +Cc: law, rth, egcs

> > My vote would be to unconditionally split after reload for both
> > schedulers.
> 
> Ok, done.

IIRC there were some problems with the old scheduler when post-reload
splitting was first enabled.  In particular with reg notes it couldn't
find the proper home for.  It might be worth to check that the
ports with post-reload spilts still bootstrap & check OK with haifa.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: splitting before sched2
  1998-04-05 14:00     ` Joern Rennecke
@ 1998-04-05 17:27       ` Richard Henderson
  0 siblings, 0 replies; 5+ messages in thread
From: Richard Henderson @ 1998-04-05 17:27 UTC (permalink / raw)
  To: Joern Rennecke; +Cc: rth, law, egcs

On Sun, Apr 05, 1998 at 10:00:01PM +0100, Joern Rennecke wrote:
> It might be worth to check that the
> ports with post-reload spilts still bootstrap & check OK with haifa.

At least Alpha and Sparc do, though they don't have really very many
post-reload splits.  Which do you have in mind?


r~

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~1998-04-05 17:27 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1998-04-04 16:52 splitting before sched2 Richard Henderson
1998-04-04 14:20 ` Jeffrey A Law
1998-04-04 17:48   ` Richard Henderson
1998-04-05 14:00     ` Joern Rennecke
1998-04-05 17:27       ` Richard Henderson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).