It must be the season for this sort of thing :-) I have been contemplating building a GCC register allocator from scratch for some time. To that end, I have put together a bit of a document given a high level overview of the various components I think would benefit GCC, and a rough description of how they would work together.
It is my intention over the next few months to do some of the initial underlying infrastructure bits upon which the entire document is based. Presuming that proceeds OK and I can build up the data structures I am looking for, I'll move on from there. If anyone wants to help, I'm sure there will be some juicy things to do. Anyone who wishes to provide constructive comments about what is in the write up, feel free to send them to me. I also know there are other projects ongoing which could be related to this work in some fashion. Anyone reading this document who is involved with those projects and sees something useful here or in those projects that could be combined in some way is encouraged to let me know their thoughts and ideas as well. The document is intended as a starting point and consists mostly of my thoughts at the moment. By the time the underlying RTL bits are done, I would like it to have evolved to include input from others. The more useful comments there are, the better the chance of us getting a decent allocator. The .pdf file is currently available at: http://people.redhat.com/dnovillo/rable.pdf (Thanks dnovillo :-) Andrew
