> My impression was that for any object ({u}char, {u}int, pointer, double) X > in the current stack frame (while we're not in the runtime), then > (&X - stackTop) mod (sizeof X) == 0. The real problem is that > (&X - stackBottom) mod (sizeof X) == 0 is not always true. Right. And we can get the latter by for ints forcing frames to be of size = 0 mod 4.