[M3devel] m3_load/store using bitfields for everything

Jay jay.krell at cornell.edu
Wed May 20 01:14:36 CEST 2009


m3_load/store using bitfields for everything caused module-global references to disappear on MIPS64_OPENBSD (all MIPS?). I worked around that by declaring that the module-globals are at least of size 2 * biggest_alignment.
 
It caused module-global references to disappear on ARM_DARWIN as well.
I hardcoded RTLinker.traceInit to true, and Flush's len := 0 didn't occur and PutChar eventually failed an array bounds check.
 
Is this just too fragile and the failsafe form should always be used?
 
Or, it fails spectacularly consistently enough that it must also be working consistently enough and leave it?
 
Would "component ref" (ie: struct) and declaring more type information about module segments be a good compromise maybe? Probably.
 
 - Jay


More information about the M3devel mailing list