Skip to content
Commits on Mar 10, 2015
  1. OS X support for amd64.

    The big difference here is that OS X runs with a small-code PIC code
    model, which doesn't place code in the low 4G of RAM. So we need to
    switch everything to be PC-relative, and do some shenanigans to try to
    get a code allocation near our .text segment -- in particular, since the
    allocator just starts at the binary and works upwards, we need to make
    sure that we allocate the buffer *before* we do the 4G map for the
    image's address space.
Commits on Aug 5, 2012
  1. Correctly handle memory accesses on amd64.

    Instead of using a segment register, map an entire 4G memory image as
    PROT_NONE, and map the image into the beginning. Then do the address
    calculation explicitly. The 4G map, and the 32-bit offset, ensures
    that any illegal acceses will land into the unmapped space and fault.
Commits on Nov 29, 2010
Something went wrong with that request. Please try again.