[llvm-branch-commits] [libcxxabi] r344917 - Merging r342815:

Tom Stellard via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Mon Oct 22 09:29:48 PDT 2018

Author: tstellar
Date: Mon Oct 22 09:29:48 2018
New Revision: 344917

URL: http://llvm.org/viewvc/llvm-project?rev=344917&view=rev
Merging r342815:

r342815 | ericwf | 2018-09-22 12:22:36 -0700 (Sat, 22 Sep 2018) | 14 lines

Fix incorrectly aligned exceptions in 32 bit builds.

This patch fixes a bug where exceptions in 32 bit builds
would be incorrectly aligned because malloc only provides 8 byte aligned
memory where 16 byte alignment is needed.

This patch makes libc++abi correctly use posix_memalign when it's
available. This requires defining _LIBCPP_BUILDING_LIBRARY so that
libc++ only defines _LIBCPP_HAS_NO_ALIGNED_ALLOCATION when libc doesn't
support it and not when aligned new/delete are disable for other

This bug somehow made it into the 7.0 release, making it a regression.
Therefore this patch should be included in the next dot release.


Modified: libcxxabi/branches/release_70/src/fallback_malloc.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxxabi/branches/release_70/src/fallback_malloc.cpp?rev=344917&r1=344916&r2=344917&view=diff
--- libcxxabi/branches/release_70/src/fallback_malloc.cpp (original)
+++ libcxxabi/branches/release_70/src/fallback_malloc.cpp Mon Oct 22 09:29:48 2018
@@ -7,6 +7,9 @@
+// is only defined when libc aligned allocation is not available.
 #include "fallback_malloc.h"
 #include <__threading_support>

More information about the llvm-branch-commits mailing list