summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIonen Wolkens <ionen@gentoo.org>2024-05-21 22:24:44 -0400
committerIonen Wolkens <ionen@gentoo.org>2024-05-21 23:30:59 -0400
commit48bc1099f5d9fe2b07e6fb16ff63a83f35498f2f (patch)
tree2fe62516164702c14c9f7bf71744ab386c4667db /dev-util
parentRevert "app-emulation/wine-vanilla: add workaround for gcc14 ICE w/ mingw" (diff)
downloadgentoo-48bc1099f5d9fe2b07e6fb16ff63a83f35498f2f.tar.gz
gentoo-48bc1099f5d9fe2b07e6fb16ff63a83f35498f2f.tar.bz2
gentoo-48bc1099f5d9fe2b07e6fb16ff63a83f35498f2f.zip
dev-util/mingw64-toolchain: fix ICE with -fno-omit-frame-pointer
If there's a known fix, better to do it here than have every revdeps do workarounds. Closes: https://bugs.gentoo.org/932319 Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/mingw64-toolchain/files/gcc-14.1.0-no-omit-fp-ice.patch17
-rw-r--r--dev-util/mingw64-toolchain/mingw64-toolchain-11.0.1-r1.ebuild (renamed from dev-util/mingw64-toolchain/mingw64-toolchain-11.0.1.ebuild)1
2 files changed, 18 insertions, 0 deletions
diff --git a/dev-util/mingw64-toolchain/files/gcc-14.1.0-no-omit-fp-ice.patch b/dev-util/mingw64-toolchain/files/gcc-14.1.0-no-omit-fp-ice.patch
new file mode 100644
index 000000000000..a8e4c798ef17
--- /dev/null
+++ b/dev-util/mingw64-toolchain/files/gcc-14.1.0-no-omit-fp-ice.patch
@@ -0,0 +1,17 @@
+Fix ICE w/ mingw[1][2][3] when using -fno-omit-frame-pointer.
+
+Patch is from the proposed fix in [4].
+
+[1] https://bugs.gentoo.org/932319
+[2] https://github.com/msys2/MINGW-packages/issues/20861
+[3] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115038
+[4] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115038#c4
+--- a/gcc/gcc/fold-mem-offsets.cc
++++ b/gcc/gcc/fold-mem-offsets.cc
+@@ -492,5 +492,5 @@
+ rtx_insn *def = get_single_def_in_bb (insn, reg);
+
+- if (!def || GET_CODE (PATTERN (def)) != SET)
++ if (!def || RTX_FRAME_RELATED_P (def) || GET_CODE (PATTERN (def)) != SET)
+ return 0;
+
diff --git a/dev-util/mingw64-toolchain/mingw64-toolchain-11.0.1.ebuild b/dev-util/mingw64-toolchain/mingw64-toolchain-11.0.1-r1.ebuild
index 8f3671e17f67..547dc68de3e9 100644
--- a/dev-util/mingw64-toolchain/mingw64-toolchain-11.0.1.ebuild
+++ b/dev-util/mingw64-toolchain/mingw64-toolchain-11.0.1-r1.ebuild
@@ -68,6 +68,7 @@ QA_CONFIG_IMPL_DECL_SKIP=(
PATCHES=(
"${FILESDIR}"/gcc-12.2.0-drop-cflags-sed.patch
+ "${FILESDIR}"/gcc-14.1.0-no-omit-fp-ice.patch
)
pkg_pretend() {