[Gc] gc7 and 64-bit platforms
pcolson at connexus.net.au
Mon Nov 15 19:41:12 PST 2004
I've been looking at gc7 and am wondering if it's at least LP64
compliant (obviously it's not LLP64-compliant at this stage)?
I see instances where a word var is assigned to an int (dbg_mlc,
GC_generate_random_heap_address(), line 148). Now if sizeof(int) <
sizeof(long) and sizeof(word) == 8 this will be a problem on either
style of 64-bit platform.
Also, possibly more widespread, interchanging size_t and word usage
(allchblk, GC_allocchblk and GC_allocchblk_nth sz param, and
elsewhere). On an LP64 platform do you imagine that size_t would be
promoted to an 8-byte size as per long? On my LLP64 platform size_t
remains at 4 bytes (unsigned long) while word becomes 8-bytes (unsigned
long long)? So is this interchange of word and size_t vars valid?
More information about the Gc