This minor patch, very similar to one posted and approved previously at https://gcc.gnu.org/pipermail/gcc-patches/2024-July/657229.html is required to restore builds on systems using gcc 4.8 as a host compiler. Using the enumeration constants E_SFmode and E_DFmode avoids issues with SFmode and DFmode being "non-literal types in constant expressions".
This patch has been tested on x86_64-pc-linux-gnu with make bootstrap and make -k check, with no new failures. Ok for mainline? 2024-08-08 Roger Sayle <ro...@nextmovesoftware.com> gcc/ChangeLog * config/i386/i386.cc (ix86_mode_can_transfer_bits): Use E_?Fmode enumeration constants in switch statement. Thanks in advance, Roger --
diff --git a/gcc/config/i386/i386.cc b/gcc/config/i386/i386.cc index 8f289b5..02e2829 100644 --- a/gcc/config/i386/i386.cc +++ b/gcc/config/i386/i386.cc @@ -26113,8 +26113,8 @@ ix86_mode_can_transfer_bits (machine_mode mode) || GET_MODE_CLASS (mode) == MODE_COMPLEX_FLOAT) switch (GET_MODE_INNER (mode)) { - case SFmode: - case DFmode: + case E_SFmode: + case E_DFmode: /* These suffer from normalization upon load when not using SSE. */ return !(ix86_fpmath & FPMATH_387); default: