This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: SMS improvements branch
- From: Dorit Naishlos <DORIT at il dot ibm dot com>
- To: Mostafa Hagog <MUSTAFA at il dot ibm dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Sun, 12 Dec 2004 13:35:48 +0200
- Subject: Re: SMS improvements branch
> I am thinking of opening a development branch for the sake of SMS
> improvements, unless someone knows of an existing branch that
> this work could be put in.
I think the autovect-branch could be an option - it is intended to host
work on loop optimizations. Also sounds like some of the infrastructure you
need for SMS is related to infrastructure developed on autovect (inter-loop
dependences for example). Another thing in common to SMS and vectorization
is that both target single-basic-block countable loops. I don't know if SMS
would directly benefit from the tree-level loop-optimization work that
is/will be taking place in autovect-branch, but I'm sure vectorized loops
would benefit from SMS.
dorit
Mostafa
Hagog/Haifa/IBM@I To: gcc@gcc.gnu.org
BMIL cc:
Sent by: Subject: SMS improvements branch
gcc-owner@gcc.gnu
.org
09/12/2004 21:45
There are several improvements of SMS that were introduced to 4.0 but
rejected and are waiting for 4.1 to open. There is also additional
work that we are planning to do for improving SMS, here is a list
of the items and their status:
I. Infrastructure work:
1. Change SMS to work in cfglayout mode. (DONE, for 4.1)
2. Build and use loop information in SMS. (DONE, for 4.1)
3. Add loop versioning to RTL (in cfglayout mode). (DONE, for 4.1)
4. Loop peeling in SMS to make SMS applicable for more loops.
(Started, for 4.1)
5. Use doloop analysis instead of BCT to check for counted loops.
(Started, for 4.1)
6. Port tree data dependency analysis routines to the RTL level
so we can have better dependancy. (Future, Beyond 4.1)
7. Improve alias analysis in the RTL level. (Future, Beyond 4.1)
II. SMS related work :
1. Use of alias sets to remove memory dependencies. (DONE, for 4.1)
2. Remove register anti-dependencies. (DONE, for 4.1)
3. Add backtracking to the SMS. (DONE, for 4.1)
4. Consider register pressure in SMS. (Beyond 4.1)
I am thinking of opening a development branch for the sake of SMS
improvements, unless someone knows of an existing branch that
this work could be put in.
Mostafa.