title: Why is the default alignment for `int64_t` 8 byte on 32 bit x86 architecture?
body: <p>Why is the default alignment 8 byte for <code>int64_t</code> (e.g. <code>long long</code>) in 32 bit x86 ABIs?  4 byte alignment would appear to be fine, because it can only be accessed as two 4B halves.</p>