PowerPC malloc alignment
Jakub Jelinek
jakub@redhat.com
Wed Oct 31 21:18:00 GMT 2007
On Wed, Oct 31, 2007 at 04:52:40PM -0400, Daniel Jacobowitz wrote:
> The malloc alignment on PowerPC (32-bit) was bumped up to 16 bytes
> just before glibc 2.4 and then immediately reverted. I eventually
> found the discussion of the reversion here:
>
> https://bugzilla.redhat.com/show_bug.cgi?id=183895
>
> Jakub, were there more lurking problems than just the one you fixed in
> the patch attached to that bug?
>
> The current status breaks, among other things, GDB when built with
> "-maltivec -mabi=altivec -mlong-double-128". A 16-byte union
> including a long double is allocated in the heap and copied using
> lvx / stvx, which require a 16-byte aligned address.
The main problem is emacs (aka the only user of
malloc_set_state/malloc_get_state). Changing the alignment is really an ABI
change for these interfaces, unless it does some very ugly hacks in it.
Jakub
More information about the Libc-alpha
mailing list