This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [0/4] Modulo scheduling with haifa-sched for C6X
- From: Richard Sandiford <richard dot sandiford at linaro dot org>
- To: Bernd Schmidt <bernds at codesourcery dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 14 Sep 2011 10:03:20 +0100
- Subject: Re: [0/4] Modulo scheduling with haifa-sched for C6X
- References: <4E6FCFE3.5010807@codesourcery.com>
Bernd Schmidt <bernds@codesourcery.com> writes:
> I have added support for this to haifa-sched.c. I expect the question
> "why not use SMS" to come up; there were a number of reasons why I felt
> that code is unsuitable:
Fully agree that SMS is unsuitable here FWIW, but...
> There are (or were, when I started) some glaring weaknesses in SMS, such
> as giving up when the loop contains autoincrement addresses (which is
> the case in the example above), and by the looks of it fairly poor
> memory disambiguation compared to sched-ebb with cselib.
...I didn't see from an admittedly quick read of the patch how you
handle memory disambiguation between iterations. If a loop includes:
lb $3,($4)
sb $5,1($4)
then the two instructions can be reordered by normal ebb scheduling,
but the inter-iteration conflict is important for modulo scheduling.
Richard