[M3devel] "C-generating backend progress report, that nobody asked for" :)

Hendrik Boom hendrik at topoi.pooq.com
Mon Sep 10 03:23:57 CEST 2012


On Sun, Sep 09, 2012 at 01:05:05PM -0700, Jay wrote:
> 
> As well, can't we have the frontend be very conservative? Align each 
> basic int & float type to its size, even if not required? Didn't I 
> already do that? E.g. 64 bit ints don't generally need 64bit alignment 
> on 32 bit targets, but I'm ok giving it. Front end can insert padding 
? explicitly. (this area bit me, you may recall, gcc/cygwin was aligning 
> 64bit double float to 64bits, adding in padding where frontend 
> didn't..I had to peel the onion quite a bit to debug that...)

The worst case of alignment weirdness I've encountered was on an IBM 
workstation sometime in the late 80's/early nineties.  A structure was 
aligned on a double-boundary iff its first fiels of its first fiels of 
its first field (go doewn the first-fields until you've broken up all 
those nested structures) ... was a double.  Doubles anywhere else in 
the structure didn't count and only demanded a float boundaty.

Or it was somethign like that.

I've always wondered why.

-- hendrik



More information about the M3devel mailing list