Date: Sun, 31 Jan 2016 05:55:20 -0800 From: Mark Millard <markmi@dsl-only.net> To: Nathan Whitehorn <nwhitehorn@freebsd.org>, Justin Hibbits <chmeeedalf@gmail.com> Cc: FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>, FreeBSD Toolchain <freebsd-toolchain@freebsd.org> Subject: 3 quick questions about stack alignment for powerpc (32-bit) signal handlers Message-ID: <517B7923-5166-42D0-8FA8-52C05F956F06@dsl-only.net>
next in thread | raw e-mail | index | archive | help
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? =3D=3D=3D Mark Millard markmi at dsl-only.net
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?517B7923-5166-42D0-8FA8-52C05F956F06>