Will's blog

purpose: Will Kahn-Greene's blog of Miro, PyBlosxom, Python, GNU/Linux, random content, PyBlosxom, Miro, and other projects mixed in there ad hoc, half-baked, and with a twist of lemon

[ home | blog home | recent activity ]

Tue, 17 Apr 2007

Register allocation... DONE!

My compilers class is using the Appel book Modern Compiler Implementation in ML. Chapters 1 through 12 have a programming exercise that walks you through building a compiler in ML for a language called Tiger targetting the MIPS processor. It's pretty neat--Tiger has some funky things in it that make some of the pieces non-trivial.

After a week of programming straight (i.e. I get up in the morning, eat something, put on sweat pants, work on the compiler... go to bed) we got register allocation working using graph coloring. It does spills and coalescing but not coalescing of spills--that'd be really cool.

I'm really psyched! I think all we have left is some minor bits here and there and then it's done and we'll have a compiler for Tiger. I'm tossing around adding a random number generator to the runtime.c file so that I can implement a Dwarven name generator using Markov chains.

A friend of mine gave me his new album Digital Analog Heart and Soul a couple of weeks ago. I had it ripped on my hard drive and so that's what I listened to for the last 7 days of register allocator programming. The song The Fall is pretty cool--he's done it in concerts a lot.

Now I need to get back to my research project....

Comments:

Posted by Kyle MacLea on Tue Apr 17 08:49:41 2007
Sweet, a Drarven name generator using Markov chains.  Rock on, Grorin Oakenhammer, I mean Will-E!


Post a new comment:

Three things:

  1. New comments get placed in a "draft" status and will NOT show up on the site until I explicitly approve it. Sometimes that happens within 24 hours.
  2. I reserve the right to reject/remove inappropriate comments.
  3. Sometimes I'll reply to a comment directly in email--so make sure your email address is correct.

If you can't for some reason post a comment, send me an email: willg at bluesock dot org.

Your name:


Your e-mail address (this doesn't get displayed to anyone--sometimes I'll reply directly to you):


URL of your website (optional):


Comment:


Yes, I am a human!


pyblosxom::1.5-dev git-master

Copyright 1996 to 2012, Will Guaraldi Kahn-Greene, under the Creative Commons BY-SA 3.0 license

Creative Commons License
Will's Blog by William Kahn-Greene is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.