From d97adfb409290a1e4ad549e4af58cacea86d3358 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Tue, 14 May 2019 19:29:53 +0200 Subject: bpo-36618: Don't add -fmax-type-align=8 flag for clang (GH-13320) Python 3.8 now respects the x86-64 ABI: memory allocations are aligned on 16 bytes. The clang flag was only used as a temporary workaround. --- configure.ac | 20 -------------------- 1 file changed, 20 deletions(-) (limited to 'configure.ac') diff --git a/configure.ac b/configure.ac index a02597da2d..e673e136be 100644 --- a/configure.ac +++ b/configure.ac @@ -1543,26 +1543,6 @@ then esac fi -if test -n "${cc_is_clang}" -then - # bpo-36618: Add -fmax-type-align=8 to CFLAGS when clang compiler is - # detected. The pymalloc memory allocator aligns memory on 8 bytes. On - # x86-64, clang expects alignment on 16 bytes by default and so uses MOVAPS - # instruction which can lead to segmentation fault. Instruct clang that - # Python is limited to alignemnt on 8 bytes to use MOVUPS instruction - # instead: slower but don't trigger a SIGSEGV if the memory is not aligned - # on 16 bytes. - # - # Sadly, the flag must be added to CFLAGS and not just CFLAGS_NODIST, - # since third party C extensions can have the same issue. - # - # Check if -fmax-type-align flag is supported (it's not supported by old - # clang versions): - if "$CC" -v --help 2>/dev/null |grep -- -fmax-type-align > /dev/null; then - CFLAGS="$CFLAGS -fmax-type-align=8" - fi -fi - AC_SUBST(BASECFLAGS) AC_SUBST(CFLAGS_NODIST) AC_SUBST(LDFLAGS_NODIST) -- cgit v1.2.1