[m-dev.] 4 tag bits

Paul Bone paul at bone.id.au
Thu Jul 7 11:26:36 AEST 2016


Also on this topic is the possibility of using high tag bits.  I raised this
as a possibility several years ago but there were doubts about the
guarentees that the OS could provide.

If I remember correctly most x86_64 platforms, those based on the SysV ABI,
use something like a 48bit address space for user programs, leaving the top
16 bits clear and therefore available for tag bits.  16 tag bits is a huge
amount and "enough for almost anyone".  We would have to find out if this is
definitly true, and on what platforms.

The drawback here is that this would make it _much_ more difficult for the
collector to decern a pointer from other data.  This is probably easy enough
to add to the collector but may result in the retention of more memory since
many more values could be mistaken for pointers.

I don't propose to add this (yet) but wanted to add it to this thread of
discussion.


-- 
Paul Bone


More information about the developers mailing list