cakeml icon indicating copy to clipboard operation
cakeml copied to clipboard

Make the heap base pointer optional

Open sorear opened this issue 5 years ago • 0 comments

The x64 generated code adds %r14 to every pointer prior to dereferencing it. This seems like a useful feature to have, since it allows a heap anywhere in the address space for large values of tagbits and lenbits and plausibly helps with a future compressed-oops/32-on-64 type feature, but for general 64-bit code you may be able to assume that the address of the heap is close to 0 and not do the add. There are potential future compatibility issues here, e.g. with ASLR and 5-level paging, so it may not make sense to do this for the shipped release artifacts.

sorear avatar Sep 17 '20 03:09 sorear