rts/BlockAlloc: Allow aligned allocation requests
authorÖmer Sinan Ağacan <omer@well-typed.com>
Mon, 5 Mar 2018 12:57:47 +0000 (15:57 +0300)
committerBen Gamari <ben@smart-cactus.org>
Fri, 22 Feb 2019 00:55:43 +0000 (19:55 -0500)
commitb5fb4210828d4677048724f16bd8b2baa4ef5ff9
treefac04b803a5764cc9c779a691bc7cde5abb7dcd9
parenta5373c1fe172dee31e07bcb7c7f6caff1035e6ba
rts/BlockAlloc: Allow aligned allocation requests

This implements support for block group allocations which are aligned to
an integral number of blocks.

This will be used by the nonmoving garbage collector, which uses the
block allocator to allocate the segments which back its heap. These
segments are a fixed number of blocks in size, with each segment being
aligned to the segment size boundary. This allows us to easily find the
segment metadata stored at the beginning of the segment.
includes/rts/storage/Block.h
rts/sm/BlockAlloc.c