summaryrefslogtreecommitdiff
path: root/system/gcc/342-gccgo-more-unwinding.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/342-gccgo-more-unwinding.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/342-gccgo-more-unwinding.patch')
-rw-r--r--system/gcc/342-gccgo-more-unwinding.patch37
1 files changed, 0 insertions, 37 deletions
diff --git a/system/gcc/342-gccgo-more-unwinding.patch b/system/gcc/342-gccgo-more-unwinding.patch
deleted file mode 100644
index 7f059b4dc..000000000
--- a/system/gcc/342-gccgo-more-unwinding.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-The fix for #832 was incomplete. Since we strip libgo.so, filename is
-always NULL. This caused the unwinder to continue through
-runtime_mstart which caused the same issue.
---- gcc-8.5.0/libgo/runtime/go-callers.c.old 2023-01-01 17:56:27.302982459 -0600
-+++ gcc-8.5.0/libgo/runtime/go-callers.c 2023-01-01 17:58:00.612903483 -0600
-@@ -118,27 +118,11 @@
- if (function != NULL)
- {
- if (__builtin_strcmp (function, "makecontext") == 0
-- || __builtin_strcmp (function, "libucontext_makecontext") == 0)
-+ || __builtin_strcmp (function, "libucontext_makecontext") == 0
-+ || __builtin_strcmp (function, "runtime_mstart") == 0
-+ || __builtin_strcmp (function, "runtime.kickoff") == 0
-+ || __builtin_strcmp (function, "runtime.main") == 0)
- return 1;
-- if (filename != NULL)
-- {
-- const char *p;
--
-- p = strrchr (filename, '/');
-- if (p == NULL)
-- p = filename;
-- if (__builtin_strcmp (p, "/proc.c") == 0)
-- {
-- if (__builtin_strcmp (function, "runtime_mstart") == 0)
-- return 1;
-- }
-- else if (__builtin_strcmp (p, "/proc.go") == 0)
-- {
-- if (__builtin_strcmp (function, "runtime.kickoff") == 0
-- || __builtin_strcmp (function, "runtime.main") == 0)
-- return 1;
-- }
-- }
- }
-
- return arg->index >= arg->max;