• Link Time Optimization

    Various gcc developers are working on Link Time Optimization, also known as Whole Program Optimization. When using LTO, gcc will write the intermediate representation into the object file. At link time, gcc will read it in and use it to implement cross-module optimizations. The canonical optimization which requires LTO is inlining functions across object file…

  • Tofurkey Day

    I’m back after a Thanksgiving trip. What do vegetarians like myself eat for Thanksgiving? All sorts of things, actually. That said, for a traditional Thanksgiving dinner, we need a big centerpiece food item. Ideally it will both look festive and taste good. I find this combination to be harder for vegetarians. Lasagna or macaroni and…

  • Head of a Rock

    The New York Times Sunday Magazine ran a short piece by Jim Holt on the idea of universal consciousness. The idea is that consciousness can be found everywhere in the universe, even in rocks. This is based on the premise that “physical properties alone cannot account for subjectivity. (How could the ineffable experience of tasting…

  • GCC Plugins

    There has been recent discussion on the gcc mailing list about plugins. There was a very interesting paper at the last gcc summit about a plugin architecture, with some interesting examples. I think plugins would be a useful addition to gcc. I think this mainly because many researchers and grad students want it. After many…

  • The GNU Configure and Build System

    The GNU Configure and Build System consists of autoconf, automake, and libtool. I wrote an essay about them a long time ago. Slightly more recently I was a co-author of a book about them. David MacKenzie started writing autoconf way back in 1991. I was an early beta-tester and contributed some early features. autoconf generates…