summaryrefslogtreecommitdiff
path: root/system/gcc/007_all_alpha-mieee-default.patch
diff options
context:
space:
mode:
authorA. Wilcox <AWilcox@Wilcox-Tech.com>2024-05-23 23:40:10 -0500
committerA. Wilcox <AWilcox@Wilcox-Tech.com>2024-08-07 09:57:51 -0500
commit93cf7fc8b05fe3003b6f16b766622544cdf3830b (patch)
tree594b1c2e06144b9e0b0dae1310399b5935ddc5ff /system/gcc/007_all_alpha-mieee-default.patch
parentd15fa95546e4f4200700750986fb5e249d9bfbe1 (diff)
downloadpackages-93cf7fc8b05fe3003b6f16b766622544cdf3830b.tar.gz
packages-93cf7fc8b05fe3003b6f16b766622544cdf3830b.tar.bz2
packages-93cf7fc8b05fe3003b6f16b766622544cdf3830b.tar.xz
packages-93cf7fc8b05fe3003b6f16b766622544cdf3830b.zip
system/gcc: Update to 13.3.0
0012-static-pie and 201-ada were forward-ported by my own paws. Three digit 0xx underscore patches are from Gentoo. This is also the source of the insn-split and match-split patches, which significantly increase performance on build. They are also the source of the new configure option --with-matchpd-partitions. On systems with very many cores/threads, a number higher than 32 would probably perform even better, but 32 should give decent perf on 8+ threads, and runs quite nicely on the 64-thread Talos II I ran the testbuild on. 202 is from Void. The 300s are originally written by me. The Ada patch now includes an improvement to use posix_openpt instead of getpt, which fixes link errors later on. We also now use STAGE1_CFLAGS and BOOT_CFLAGS to improve build times. Improvement was clocked from 40m to 32m (-8m, or 20%) on gwyn. The patch for Go name mangling is needed to build packages that use reflect2, which includes user/gitlab-runner.
Diffstat (limited to 'system/gcc/007_all_alpha-mieee-default.patch')
-rw-r--r--system/gcc/007_all_alpha-mieee-default.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/system/gcc/007_all_alpha-mieee-default.patch b/system/gcc/007_all_alpha-mieee-default.patch
new file mode 100644
index 000000000..560c2cc45
--- /dev/null
+++ b/system/gcc/007_all_alpha-mieee-default.patch
@@ -0,0 +1,48 @@
+Since we have interest in an eventual Alpha port, it seems good to add this
+patch to our patchset now. The original patch comes from Gentoo, and like
+them, we would like to see packages behave consistently across our various
+architectures.
+
+Original Gentoo patch content follows.
+
+--
+
+Set the default behavior on alpha to use -mieee since the large majority of
+time we want this (bad/weird things can happen with packages built without
+it).
+
+To satisfy those people who may not want -mieee forced on them all the time,
+we also provide -mno-ieee.
+
+Patch by Mike Frysinger <vapier@gentoo.org>
+
+Note: upstream doesn't want to take this due to long standing behavior, and
+because it'd make behavior across OS's inconsistent:
+ https://gcc.gnu.org/ml/gcc-patches/2003-07/msg02144.html
+
+This makes sense for upstream, but Gentoo is more concerned about packages
+behaving the same across arches under Linux.
+
+--- a/gcc/config/alpha/alpha.h
++++ b/gcc/config/alpha/alpha.h
+@@ -94,6 +94,8 @@ along with GCC; see the file COPYING3. If not see
+ while (0)
+ #endif
+
++#define CPP_SPEC "%{!no-ieee:-mieee}"
++
+ /* Run-time compilation parameters selecting different hardware subsets. */
+
+ /* Which processor to schedule for. The cpu attribute defines a list that
+--- a/gcc/config/alpha/alpha.opt
++++ b/gcc/config/alpha/alpha.opt
+@@ -35,7 +35,7 @@
+ Request IEEE-conformant math library routines (OSF/1).
+
+ mieee
+-Target RejectNegative Mask(IEEE)
++Target Mask(IEEE)
+ Emit IEEE-conformant code, without inexact exceptions.
+
+ mieee-with-inexact
+