CakeML/cakeml

Make the heap base pointer optional

開放

#766 建立於 2020年9月17日

 (0 則留言) (0 個反應) (0 位負責人)Standard ML (98 個分叉)auto 404
code sizeenhancementgood first issuemedium rewardperformance

倉庫指標

星標
 (1,169 顆星)
PR 合併指標
 (PR 指標待抓取)

描述

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.

貢獻者指南