Module Name: src Committed By: rin Date: Wed Oct 7 07:35:28 UTC 2020
Modified Files: src/doc: HACKS src/external/bsd/jemalloc/lib: Makefile.inc Log Message: PR port-alpha/54307 GCC 9.3 seems to be able to compile rtree.c with -O2: - No new regressions in ATF. - System survives over a night, at least, under heavy loads. On the other hand, unfortunately, GCC 9.3 still miscompiles tcache.c with -O2 or -O1. For example, even ``gcc -g hello.c'' fails with ICE if tcache.c is compiled with -O[12] in libc. To generate a diff of this commit: cvs rdiff -u -r1.212 -r1.213 src/doc/HACKS cvs rdiff -u -r1.11 -r1.12 src/external/bsd/jemalloc/lib/Makefile.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/doc/HACKS diff -u src/doc/HACKS:1.212 src/doc/HACKS:1.213 --- src/doc/HACKS:1.212 Mon Oct 5 13:32:31 2020 +++ src/doc/HACKS Wed Oct 7 07:35:28 2020 @@ -1,4 +1,4 @@ -# $NetBSD: HACKS,v 1.212 2020/10/05 13:32:31 rin Exp $ +# $NetBSD: HACKS,v 1.213 2020/10/07 07:35:28 rin Exp $ # # This file is intended to document workarounds for currently unsolved # (mostly) compiler bugs. @@ -951,12 +951,14 @@ descr Disable optimization for rtld.c on kcah port alpha -hack GCC 7.4/8.3: userland binaries crash randomly (port-alpha/54307) +hack GCC 7.4/8.3/9.3: userland binaries crash randomly (port-alpha/54307) cdate Fri Nov 1 20:43:35 UTC 2019 +mdate Wed Oct 7 16:00:00 JST 2020 who rin file src/external/bsd/jemalloc/lib/Makefile.inc: 1.11 -descr rtree.c and tcache.c need to be compiled with -O0, alternatively, - you can compile whole jemalloc with -DJEMALLOC_DEBUG. +descr GCC miscompiles rtree.c (for 7.4 and 8.3) and tcache.c (for 7.4, 8.3, + and 9.3) with optimization levels -O[12]. Compile these files with -O0, + alternatively, compile whole jemalloc with -DJEMALLOC_DEBUG. kcah port powerpc Index: src/external/bsd/jemalloc/lib/Makefile.inc diff -u src/external/bsd/jemalloc/lib/Makefile.inc:1.11 src/external/bsd/jemalloc/lib/Makefile.inc:1.12 --- src/external/bsd/jemalloc/lib/Makefile.inc:1.11 Fri Nov 1 20:53:10 2019 +++ src/external/bsd/jemalloc/lib/Makefile.inc Wed Oct 7 07:35:28 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.11 2019/11/01 20:53:10 rin Exp $ +# $NetBSD: Makefile.inc,v 1.12 2020/10/07 07:35:28 rin Exp $ JEMALLOC:=${.PARSEDIR}/.. @@ -51,11 +51,11 @@ COPTS.ctl.c+=-Wno-error=stack-protector COPTS.stats.c+=-Wno-error=stack-protector COPTS.tcache.c+=-Wno-error=stack-protector -.if ${MACHINE} == "alpha" +.if ${MACHINE} == "alpha" && ${ACTIVE_CC} == "gcc" # These files need to be compiled with -O0, or build everything with # -DJEMALLOC_DEBUG. Otherwise, userland binaries crash randomly, as # reported in port-alpha/54307. -COPTS.rtree.c+=-O0 +COPTS.rtree.c+= ${${HAVE_GCC:U0} < 9:? -O0 :} COPTS.tcache.c+=-O0 .endif