All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] gcc: Upgrade GCC to 16.2 release
@ 2026-08-13 13:35 Hemanth.KumarMD
  0 siblings, 0 replies; only message in thread
From: Hemanth.KumarMD @ 2026-08-13 13:35 UTC (permalink / raw)
  To: openembedded-core; +Cc: Sundeep.Kokkonda, Hemanth.KumarMD

From: Hemanth Kumar M D <Hemanth.KumarMD@windriver.com>

This is a point release in the GCC-16 release series with more than
102 bugs fixed since GCC 16.1, containing important fixes for
regressions and serious bugs.

Drop backported patch 0026-gcc-i386-fix-ICE-with-ffloat-store-PR125308.patch
as the fix is now available upstream in this release.

Bug fixes: https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&list_id=485623&resolution=FIXED&target_milestone=16.2
Docs: https://gcc.gnu.org/onlinedocs/16.2

Signed-off-by: Hemanth Kumar M D <Hemanth.KumarMD@windriver.com>
---
 meta/conf/distro/include/maintainers.inc      |  2 +-
 .../gcc/{gcc-16.1.inc => gcc-16.2.inc}        |  7 +-
 ...ian_16.1.bb => gcc-cross-canadian_16.2.bb} |  0
 .../{gcc-cross_16.1.bb => gcc-cross_16.2.bb}  |  0
 ...-crosssdk_16.1.bb => gcc-crosssdk_16.2.bb} |  0
 ...cc-runtime_16.1.bb => gcc-runtime_16.2.bb} |  0
 ...itizers_16.1.bb => gcc-sanitizers_16.2.bb} |  0
 ...{gcc-source_16.1.bb => gcc-source_16.2.bb} |  0
 ...6-fix-ICE-with-ffloat-store-PR125308.patch | 89 -------------------
 .../gcc/{gcc_16.1.bb => gcc_16.2.bb}          |  0
 ...initial_16.1.bb => libgcc-initial_16.2.bb} |  0
 .../gcc/{libgcc_16.1.bb => libgcc_16.2.bb}    |  0
 ...ibgfortran_16.1.bb => libgfortran_16.2.bb} |  0
 13 files changed, 4 insertions(+), 94 deletions(-)
 rename meta/recipes-devtools/gcc/{gcc-16.1.inc => gcc-16.2.inc} (95%)
 rename meta/recipes-devtools/gcc/{gcc-cross-canadian_16.1.bb => gcc-cross-canadian_16.2.bb} (100%)
 rename meta/recipes-devtools/gcc/{gcc-cross_16.1.bb => gcc-cross_16.2.bb} (100%)
 rename meta/recipes-devtools/gcc/{gcc-crosssdk_16.1.bb => gcc-crosssdk_16.2.bb} (100%)
 rename meta/recipes-devtools/gcc/{gcc-runtime_16.1.bb => gcc-runtime_16.2.bb} (100%)
 rename meta/recipes-devtools/gcc/{gcc-sanitizers_16.1.bb => gcc-sanitizers_16.2.bb} (100%)
 rename meta/recipes-devtools/gcc/{gcc-source_16.1.bb => gcc-source_16.2.bb} (100%)
 delete mode 100644 meta/recipes-devtools/gcc/gcc/0026-gcc-i386-fix-ICE-with-ffloat-store-PR125308.patch
 rename meta/recipes-devtools/gcc/{gcc_16.1.bb => gcc_16.2.bb} (100%)
 rename meta/recipes-devtools/gcc/{libgcc-initial_16.1.bb => libgcc-initial_16.2.bb} (100%)
 rename meta/recipes-devtools/gcc/{libgcc_16.1.bb => libgcc_16.2.bb} (100%)
 rename meta/recipes-devtools/gcc/{libgfortran_16.1.bb => libgfortran_16.2.bb} (100%)

diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
index c5b701c244..fa23373249 100644
--- a/meta/conf/distro/include/maintainers.inc
+++ b/meta/conf/distro/include/maintainers.inc
@@ -201,7 +201,7 @@ RECIPE_MAINTAINER:pn-gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <r
 RECIPE_MAINTAINER:pn-gcc-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
 RECIPE_MAINTAINER:pn-gcc-runtime = "Khem Raj <raj.khem@gmail.com>"
 RECIPE_MAINTAINER:pn-gcc-sanitizers = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER:pn-gcc-source-16.1.0 = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gcc-source-16.2.0 = "Khem Raj <raj.khem@gmail.com>"
 RECIPE_MAINTAINER:pn-gcompat = "Khem Raj <raj.khem@gmail.com>"
 RECIPE_MAINTAINER:pn-gconf = "Ross Burton <ross.burton@arm.com>"
 RECIPE_MAINTAINER:pn-gcr = "Unassigned <unassigned@yoctoproject.org>"
diff --git a/meta/recipes-devtools/gcc/gcc-16.1.inc b/meta/recipes-devtools/gcc/gcc-16.2.inc
similarity index 95%
rename from meta/recipes-devtools/gcc/gcc-16.1.inc
rename to meta/recipes-devtools/gcc/gcc-16.2.inc
index e2be559f19..790bf7b651 100644
--- a/meta/recipes-devtools/gcc/gcc-16.1.inc
+++ b/meta/recipes-devtools/gcc/gcc-16.2.inc
@@ -2,11 +2,11 @@ require gcc-common.inc
 
 # Third digit in PV should be incremented after a minor release
 
-PV = "16.1.0"
+PV = "16.2.0"
 
 # BINV should be incremented to a revision after a minor gcc release
 
-BINV = "16.1.0"
+BINV = "16.2.0"
 
 FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc:${FILE_DIRNAME}/gcc/backport:"
 
@@ -44,7 +44,7 @@ LIC_FILES_CHKSUM = "\
 RELEASE ?= "${PV}"
 BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.xz"
 SOURCEDIR ?= "gcc-${PV}"
-SRC_URI[sha256sum] = "50efb4d94c3397aff3b0d61a5abd748b4dd31d9d3f2ab7be05b171d36a510f79"
+SRC_URI[sha256sum] = "e6738e29597f733270731aa90600f37ffdc045079dfc27ec7e8192cc81085c3e"
 
 SRC_URI = "${BASEURI} \
            file://0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch \
@@ -73,7 +73,6 @@ SRC_URI = "${BASEURI} \
            file://0024-Avoid-hardcoded-build-paths-into-ppc-libgcc.patch \
            file://0025-gcc-testsuite-tweaks-for-mips-OE.patch \
            file://0001-mapper-localhost-might-not-be-known.patch \
-           file://0026-gcc-i386-fix-ICE-with-ffloat-store-PR125308.patch \
 "
 
 UNPACKDIR = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/sources"
diff --git a/meta/recipes-devtools/gcc/gcc-cross-canadian_16.1.bb b/meta/recipes-devtools/gcc/gcc-cross-canadian_16.2.bb
similarity index 100%
rename from meta/recipes-devtools/gcc/gcc-cross-canadian_16.1.bb
rename to meta/recipes-devtools/gcc/gcc-cross-canadian_16.2.bb
diff --git a/meta/recipes-devtools/gcc/gcc-cross_16.1.bb b/meta/recipes-devtools/gcc/gcc-cross_16.2.bb
similarity index 100%
rename from meta/recipes-devtools/gcc/gcc-cross_16.1.bb
rename to meta/recipes-devtools/gcc/gcc-cross_16.2.bb
diff --git a/meta/recipes-devtools/gcc/gcc-crosssdk_16.1.bb b/meta/recipes-devtools/gcc/gcc-crosssdk_16.2.bb
similarity index 100%
rename from meta/recipes-devtools/gcc/gcc-crosssdk_16.1.bb
rename to meta/recipes-devtools/gcc/gcc-crosssdk_16.2.bb
diff --git a/meta/recipes-devtools/gcc/gcc-runtime_16.1.bb b/meta/recipes-devtools/gcc/gcc-runtime_16.2.bb
similarity index 100%
rename from meta/recipes-devtools/gcc/gcc-runtime_16.1.bb
rename to meta/recipes-devtools/gcc/gcc-runtime_16.2.bb
diff --git a/meta/recipes-devtools/gcc/gcc-sanitizers_16.1.bb b/meta/recipes-devtools/gcc/gcc-sanitizers_16.2.bb
similarity index 100%
rename from meta/recipes-devtools/gcc/gcc-sanitizers_16.1.bb
rename to meta/recipes-devtools/gcc/gcc-sanitizers_16.2.bb
diff --git a/meta/recipes-devtools/gcc/gcc-source_16.1.bb b/meta/recipes-devtools/gcc/gcc-source_16.2.bb
similarity index 100%
rename from meta/recipes-devtools/gcc/gcc-source_16.1.bb
rename to meta/recipes-devtools/gcc/gcc-source_16.2.bb
diff --git a/meta/recipes-devtools/gcc/gcc/0026-gcc-i386-fix-ICE-with-ffloat-store-PR125308.patch b/meta/recipes-devtools/gcc/gcc/0026-gcc-i386-fix-ICE-with-ffloat-store-PR125308.patch
deleted file mode 100644
index 0ec8a91ffd..0000000000
--- a/meta/recipes-devtools/gcc/gcc/0026-gcc-i386-fix-ICE-with-ffloat-store-PR125308.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-From c96589414eeb0e46d9fe9cc1d562e048230b5f67 Mon Sep 17 00:00:00 2001
-From: Jakub Jelinek <jakub@redhat.com>
-Date: Fri, 15 May 2026 09:55:40 +0200
-Subject: [PATCH] i386: Fix up *minmax<mode>3_4 [PR125308]
-
-IEEE min/max are not commutative and in the pattern
-(define_insn "ieee_<ieee_maxmin><mode>3<mask_name><round_saeonly_name>"
-  [(set (match_operand:VFH 0 "register_operand" "=x,v")
-        (unspec:VFH
-          [(match_operand:VFH 1 "register_operand" "0,v")
-           (match_operand:VFH 2 "<round_saeonly_nimm_predicate>" "xBm,<round_saeonly_constraint>")]
-          IEEE_MAXMIN))]
-the first operand is a register and only the second one is register/memory.
-Now, the *minmax<mode>3_3 define_insn_and_split does
-   rtx tmp = force_reg (<MODE>mode, operands[3]);
-   rtvec v = gen_rtvec (2, tmp, operands[2]);
-   operands[5] = gen_rtx_UNSPEC (<MODE>mode, v, u);
-where operands[3] is the const0_operand, so operands[2] can there be
-a memory, but in the *minmax<mode>3_4 case
-   rtx tmp = force_reg (<MODE>mode, operands[3]);
-   rtvec v = gen_rtvec (2, operands[2], tmp);
-   operands[5] = gen_rtx_UNSPEC (<MODE>mode, v, u);
-operands[2] goes into the operand which must be a REG, so it
-is incorrect to split it into something that won't work.
-Now, I've tried both disabling the define_insn_and_split and
-the following patch, the former to the latter results in
-        movaps  a, %xmm0
-        pxor    %xmm1, %xmm1
--       cmpltps %xmm0, %xmm1
--       andps   %xmm1, %xmm0
-+       maxps   %xmm1, %xmm0
-        movaps  %xmm0, a
-        ret
-on the testcase, so I think it is better to match it and force_reg
-(it is a pre-reload splitter) than change "nonimmediate_operand"
-to "register_operand" because it won't match in that case.
-
-2026-05-15  Jakub Jelinek  <jakub@redhat.com>
-
-	PR target/125308
-	* config/i386/sse.md (*minmax<mode>3_4): Force also
-	operands[2] into a REG.
-
-	* gcc.target/i386/pr125308.c: New test.
-
-Upstream-Status: Backport [https://gcc.gnu.org/cgit/gcc/commit/?id=c96589414eeb0e46d9fe9cc1d562e048230b5f67]
-
-Signed-off-by: Hemanth Kumar M D <Hemanth.KumarMD@windriver.com>
-
----
- gcc/config/i386/sse.md                   |  2 +-
- gcc/testsuite/gcc.target/i386/pr125308.c | 12 ++++++++++++
- 2 files changed, 13 insertions(+), 1 deletion(-)
- create mode 100644 gcc/testsuite/gcc.target/i386/pr125308.c
-
-diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
-index 51d1e9b455a0..de092f4b9ae1 100644
---- a/gcc/config/i386/sse.md
-+++ b/gcc/config/i386/sse.md
-@@ -3468,7 +3468,7 @@
-      u = UNSPEC_IEEE_MAX;
- 
-    rtx tmp = force_reg (<MODE>mode, operands[3]);
--   rtvec v = gen_rtvec (2, operands[2], tmp);
-+   rtvec v = gen_rtvec (2, force_reg (<MODE>mode, operands[2]), tmp);
-    operands[5] = gen_rtx_UNSPEC (<MODE>mode, v, u);
-  })
- 
-diff --git a/gcc/testsuite/gcc.target/i386/pr125308.c b/gcc/testsuite/gcc.target/i386/pr125308.c
-new file mode 100644
-index 000000000000..0a4dd7c8ea6f
---- /dev/null
-+++ b/gcc/testsuite/gcc.target/i386/pr125308.c
-@@ -0,0 +1,12 @@
-+/* PR target/125308 */
-+/* { dg-do compile } */
-+/* { dg-options "-msse2 -O2 -ffloat-store" } */
-+
-+float a[4];
-+
-+void
-+foo ()
-+{
-+  for (int i = 0; i < 4; i++)
-+    a[i] = a[i] > 0 ? a[i] : 0;
-+}
--- 
-2.43.7
-
diff --git a/meta/recipes-devtools/gcc/gcc_16.1.bb b/meta/recipes-devtools/gcc/gcc_16.2.bb
similarity index 100%
rename from meta/recipes-devtools/gcc/gcc_16.1.bb
rename to meta/recipes-devtools/gcc/gcc_16.2.bb
diff --git a/meta/recipes-devtools/gcc/libgcc-initial_16.1.bb b/meta/recipes-devtools/gcc/libgcc-initial_16.2.bb
similarity index 100%
rename from meta/recipes-devtools/gcc/libgcc-initial_16.1.bb
rename to meta/recipes-devtools/gcc/libgcc-initial_16.2.bb
diff --git a/meta/recipes-devtools/gcc/libgcc_16.1.bb b/meta/recipes-devtools/gcc/libgcc_16.2.bb
similarity index 100%
rename from meta/recipes-devtools/gcc/libgcc_16.1.bb
rename to meta/recipes-devtools/gcc/libgcc_16.2.bb
diff --git a/meta/recipes-devtools/gcc/libgfortran_16.1.bb b/meta/recipes-devtools/gcc/libgfortran_16.2.bb
similarity index 100%
rename from meta/recipes-devtools/gcc/libgfortran_16.1.bb
rename to meta/recipes-devtools/gcc/libgfortran_16.2.bb
-- 
2.49.0



^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-08-13 13:35 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-13 13:35 [PATCH] gcc: Upgrade GCC to 16.2 release Hemanth.KumarMD

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.