Feed on
Posts
Comments

GCC4 + Elsa, Together at Last?

David Mandelin has been going through Pork fixing bugs and now it is almost working with GCC4. Prior to Dave’s involvement people would run into Elsa’s scary template bugs and switch back to GCC3.4 while trembling with fear. I asked Dave to fix a few easily work-aroundable (in Moz, not in Elsa) crashes in Elsa caused by Mozilla source and he did. Recently, I accidentally ran Elsa on a Mozilla .ii file produced by GCC4 and magically it processed! Turns out that the 3-4 bugs that Dave fixed also fixed 90% of the failures caused by GCC4 headers. The good news is that soon people won’t have to worry about that pesky GCC3.4 dependancy and run rewriting tools easier.

GCC Dehydra

I feel like I’m nearing the feature-complete milestone. I plan to have Dehydra generate conversion code from GCC tree structures to JavaScript objects so we’ll be able to easily hook into any GCC middle-end pass in pure JS.  Dynamic, GCed, introspective nature of JavaScript should allow for very rapid development of code police/extraction/grep tools. This should result in a consistent codebase for Mozilla 2.

3 Responses to “GCC4 + Elsa, Together at Last?”

  1. on 07 Feb 2008 at 7:56 am Tom Tromey

    The plugin paper at the last Summit mentioned that they had done this kind of binding with Python. I didn’t see this code on the branch, but if you don’t mind Python you might ask them for it.

    BTW, I hope your summit paper is accepted.

  2. on 27 Feb 2008 at 11:20 pm samuel

    Is there any chance of you hooking the pre-processor and position info back in?
    It would be great to allow the gcc plugin version to be equivalent to the Pork and MCPP solution…

  3. on 27 Feb 2008 at 11:23 pm Taras

    samuel,
    I don’t plan to work on it, but it should be fairly easy and I’d love to see people contribute this to gcc’s libcpp