#263 183 - Update i686 architectural baseline to include SSE2
Merged 5 years ago by pbokoc. Opened 5 years ago by pbokoc.
fedora-docs/ pbokoc/release-notes f29  into  f29

@@ -35,6 +35,31 @@ 

  This change comes after big-endian ppc64 systems have been supported in a "maintenance only" mode for several years, and is largely caused by upstream focus on little endian `ppc64le`.

  For more detailed justification behind this change, see the link:++https://lists.fedoraproject.org/archives/list/ppc@lists.fedoraproject.org/message/D6G5RQUTRYGZ5Y4XIPMADMUSH2PTZDO4/++[mailing list announcement].

  

+ == Update i686 architectural baseline to include SSE2

+ 

+ In previous releases, `i686` RPM packages were built in a way that was compatible with certain very old processors such as Intel Pentium III.

+ The only addition over the i686/Pentium Pro baseline is a requirement to support long NOPs, for Intel CET.

+ However, the majority of `i686` package installations is actually on `x86_64` systems as multi-lib RPMs.

+ Furthermore, there are link:++https://lists.fedoraproject.org/archives/list/x86@lists.fedoraproject.org/thread/ZHV6I4IEO7GRYAZ4TUMO5VH2ZHLCNJZQ/++[reports that the i686 kernel does not run stable on old hardware which is not `x86_64` capable].

+ 

+ Fedora 29 changes build requirements for `i686` packages in such a way that they require the instruction set architecture (ISA) of early `x86_64` CPUs.

+ Specifically, the following changes are made to 32-bit packages to optimize them for use on current `x86_64` systems:

+ 

+ * The default compiler flags are changed to `-march=i686 -msse2 -mtune=generic -mfpmath=sse -mstackrealign`.

+ This enables SSE2 support with optimal backwards compatibility due to automatic stack realignment. (16-byte stack alignment was introduced with SSE2 support in the i386 ABI, but old binaries only provide 4-byte stack alignment.)

+ 

+ * `x86` packages can use SSE2 optimizations unconditionally.

+ 

+ * This increases compatibility with some upstreams which have mostly given up on support for non-SSE2 x86 systems.

+ 

+ * link:++https://gcc.gnu.org/PR323++[Excess precision problems inherent to the legacy i387 FPU] disappear, and math results become more predictable.

+ 

+ The latter two items are primarily a benefit to those developers who work on Fedora itself.

+ 

+ One notable impact of this change is that **32-bit x86 systems which lack SSE2 support will not be able to install or upgrade to Fedora 29**.

+ This only applies to 32-bit x86 systems. For 64-bit x86 systems, SSE2 support is a required support of the baseline ABI and already extensively used by Fedora. 

+ 

+ 

  == Rename Atomic Workstation to Silverblue

  

  Fedora Atomic Workstation has been renamed to Fedora Silverblue and has been released alongside Fedora 29. See the xref:fedora-silverblue::f29-release-notes.adoc[Silverblue section] for release notes.

Pull-Request has been merged by pbokoc

5 years ago
Metadata