https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66848
--- Comment #20 from Jack Howarth <howarth.at.gcc at gmail dot com> --- Also, the one commonality in all of the boehm-gc regressions on darwin15 (against the Apple Clang 7.0 compiled libunwind.dylib) is instances of... * thread #1: tid = 0x20dbb8, 0x00007fff93f37148 libdyld.dylib`dyld_stub_binder, queue = 'com.apple.main-thread', stop reason = instruction step into frame #0: 0x00007fff93f37148 libdyld.dylib`dyld_stub_binder libdyld.dylib`dyld_stub_binder: -> 0x7fff93f37148 <+0>: pushq %rbp 0x7fff93f37149 <+1>: testq $0xf, %rsp 0x7fff93f37150 <+8>: jne 0x7fff93f372da ; stack_not_16_byte_aligned_error errors. The fact that hacking the ALIGNMENT setting in boehm-gc/include/private/gcconfig.h to use 2 eliminates the regressions would seem to make sense then as this would be forcing everything to be 16-bit aligned.