Commit a5c984 Build flags: Require SSE2 on i686 (#1592212)

3 files Authored and Committed by fweimer 5 months ago
Build flags: Require SSE2 on i686 (#1592212)

    
 1 @@ -276,10 +276,16 @@
 2       with other ARMv7-A implementations).  `-mabi=aapcs-linux` switches to
 3       the AAPCS ABI for GNU/Linux.
 4   *   **i686**: `-march=i686` is used to select a minmum support CPU level
 5 -     of i686 (corresponding to the Pentium Pro).  `-mtune=generic` activates
 6 -     tuning for a current blend of CPUs (under the assumption that most
 7 -     users of i686 packages obtain them through an x86_64 installation
 8 -     on current hardware).
 9 +     of i686 (corresponding to the Pentium Pro).  SSE2 support is
10 +     enabled with `-msse2` (so only CPUs with SSE2 support can run the
11 +     compiled code; SSE2 was introduced first with the Pentium 4).
12 +     `-mtune=generic` activates tuning for a current blend of CPUs
13 +     (under the assumption that most users of i686 packages obtain them
14 +     through an x86_64 installation on current hardware).
15 +     `-mfpmath=sse` instructs GCC to use the SSE2 unit for floating
16 +     point math to avoid excess precision issues.  `-mstackrealign`
17 +     avoids relying on the stack alignment guaranteed by the current
18 +     version of the i386 ABI.
19   *   **ppc64le**: `-mcpu=power8 -mtune=power8` selects a minimum supported
20       CPU level of POWER8 (the first CPU with ppc64le support) and tunes
21       for POWER8.
 1 @@ -6,7 +6,7 @@
 2   
 3   Summary: Red Hat specific rpm configuration files
 4   Name: redhat-rpm-config
 5 - Version: 112
 6 + Version: 113
 7   Release: 1%{?dist}
 8   # No version specified.
 9   License: GPL+
10 @@ -184,6 +184,9 @@
11   %{_rpmconfigdir}/macros.d/macros.kmp
12   
13   %changelog
14 + * Mon Jun 18 2018 Florian Weimer <fweimer@redhat.com> - 113-1
15 + - Build flags: Require SSE2 on i686 (#1592212)
16 + 
17   * Mon May 28 2018 Miro HronĨok <mhroncok@redhat.com> - 112-1
18   - Add a possibility to opt-out form automagic Python bytecompilation
19     https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation
rpmrc +1 -1
1 @@ -3,7 +3,7 @@
2   optflags: i386 %{__global_compiler_flags} -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection
3   optflags: i486 %{__global_compiler_flags} -m32 -march=i486 -fasynchronous-unwind-tables -fstack-clash-protection
4   optflags: i586 %{__global_compiler_flags} -m32 -march=i586 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection
5 - optflags: i686 %{__global_compiler_flags} -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection
6 + optflags: i686 %{__global_compiler_flags} -m32 -march=i686 -mtune=generic -msse2 -mfpmath=sse -mstackrealign -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection
7   optflags: athlon %{__global_compiler_flags} -m32 -march=athlon -fasynchronous-unwind-tables -fstack-clash-protection
8   optflags: ia64 %{__global_compiler_flags}
9   optflags: x86_64 %{__global_compiler_flags} -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection