Chip Salzenberg wrote:
On Mon, Jun 13, 2005 at 07:12:48PM +0200, Leopold Toetsch wrote:
Andy Dougherty (via RT) wrote:
... On SPARC, doubles should be aligned on 8-bit boundaries.
The speculation is that the _num_val part of the UnionVal in the PMC
ends up unaligned. However, I couldn't follow where that happened, so I
can't suggest a patch.
It happends directly in the PMC memory arena. Whenever the PMC size % 8
isn't zero.
That's gotta be a compiler bug. When a structure contains a member
that needs N-byte alignment, and sizeof(structure) % N is not zero,
the compiler is busted. (Have they never heard of _arrays_?)
The PMC allocation area is a big bunch of memory, where PMC-sized pieces
are carved out by the memory allocation system. There is no union or
compiler bug involved. It's caused by the memory allocator and the GC
system.
leo