• Archive Alignment

    gold normally simply mmaps input files and reads the data directly from the mapped memory. In general this requires that all the data structures be properly aligned in the file, which is guaranteed by the ELF standard. The x86, of course, does not require proper alignment for memory loads and stores, so this was never…

  • Banks

    I’m happy to see that there is a nice new edition of one of my favorite books, The Player of Games by Iain M. Banks. For some reason the book drags me in every time I read it. Much of it amounts to a critique of an exaggerated version of our own society, but the…

  • Apocalypse Now

    We’re a bit busy with a slow motion move, so my postings may be less frequent than usual. It’s fairly common for people to say that the future world will be a terrible place for one reason or another. I wonder to what extent that has already happened. The world today is radically and completely…

  • Future Transportation

    Barring some remarkable change in the world, we are going run out of oil in my lifetime. I don’t mean that we will literally run out of oil; I mean that it will become too expensive to use for ordinary tasks such as selling it in the form of gasoline for cars. There seem to…

  • GCC Exception Frames

    When an exception is thrown in C++ and caught by one of the calling functions, the supporting libraries need to unwind the stack. With gcc this is done using a variant of DWARF debugging information. The unwind information is loaded at runtime, but is not read unless an exception is thrown. That means that the…