3 quick questions about stack alignment for powerpc (32-bit) signal handlers
Mark Millard
markmi at dsl-only.net
Sun Jan 31 13:55:23 UTC 2016
3 quick FreeBSD for powerpc (32-bit) questions:
A) For PowerPC (32-bit) what is the stack alignment requirement by the ABI(s) that FreeBSD targets?
B) Are signal handlers supposed to be given that alignment?
I ask because signal handlers are at times begin given just 4-byte alignment but clang 3.8.0 powerpc's code generation can depend on the alignment being more than 4.
clang 3.8.0 can calculate addresses by, for example, masking in a 0x4 relative to what would need to be an aligned address with alignment 8 or more instead of adding 0x4 to a more arbitrary address.
So far I've only seen less than 8 byte stack alignment via signal handler activity.
C) Which should be blamed for problems here: clang's code generation, FreeBSD's stack alignment handling for signals, or both?
===
Mark Millard
markmi at dsl-only.net
More information about the freebsd-toolchain
mailing list