From 1a99ed6d4711d8a3c61afaea51fb816b63324df2 Mon Sep 17 00:00:00 2001 From: Jan Palus Date: Mon, 24 Jul 2023 15:58:02 +0200 Subject: [PATCH] disable auto vectorization on %arm32_with_neon and gcc >= 12 gcc 12 enables by default auto vectorization with -O2 however on neon capable arm 32-bit archs this produces segfaulting binary (seems to be fine on x86/aarch64 though) --- openjdk9.spec | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/openjdk9.spec b/openjdk9.spec index 53aac2f..a12add6 100644 --- a/openjdk9.spec +++ b/openjdk9.spec @@ -76,7 +76,7 @@ BuildRequires: lsb-release BuildRequires: pcsc-lite-devel BuildRequires: pkgconfig BuildRequires: rpm-build >= 4.6 -BuildRequires: rpmbuild(macros) >= 1.557 +BuildRequires: rpmbuild(macros) >= 2.007 BuildRequires: unzip BuildRequires: util-linux BuildRequires: xorg-lib-libX11-devel @@ -127,6 +127,12 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) # openjdk build system handles _FORTIFY_SOURCE internally %undefine _fortify_cflags +%if %{_ver_ge %(rpm -q --qf='%%{VERSION}' gcc) 12} +%ifarch %arm32_with_neon +%define specflags_arm -fno-tree-vectorize +%endif +%endif + %description Open-source implementation of the Java Platform, Standard Edition. -- 2.44.0