[Gc] Re: Determining alignment constraints
ludovic.courtes at laas.fr
Tue May 9 04:30:36 PDT 2006
"Boehm, Hans" <hans.boehm at hp.com> writes:
> The problem is that in 6.X much of the information I think you want is
> dependent on GC_all_interior_pointers, which can be changed at
> startup. Thus I'm not sure what a macro could tell you. And I'm
> trying to avoid doing much more work on 6.X anyway.
> In 7.0, everything is 2*sizeof(void *) aligned anyway. And objects
> between 9 and 15 bytes in size will be 16 byte aligned, everywhere.
> (The latter is somewhat of an accident, but sufficiently inherent to
> the allocation strategy that I wouldn't be afraid of documenting it.)
I guess I'm going to have a look at 7.0 then.
> Are there other properties that it would be useful to export as a macro?
Yes: the version number. Ideally, both via macro(s) and C symbol(s) so
that one can check that the headers that were used correspond to the
shared library at hand (zlib uses this technique).
> I guess my view is that you shouldn't install a nongeneric build
> someplace where autoconf can find it. On the other hand, the
> build-time options do seem to be useful for some applications that
> include the library, and do not install it separately (of which we
> currently probably have too many).
For 7.x, are there plans to limit compile-time switches in order to
reduce the need to bundle the library within application packages?
More information about the Gc