summaryrefslogtreecommitdiff
path: root/system/gcc/336-gccgo-mmap64.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-06-11 14:03:55 -0500
commitfea61b9e1973a6ca7efe6cdf91e87c7604d54dd6 (patch)
treedfbe2ea0114eaf6c9fa04043def5f921a29efaec /system/gcc/336-gccgo-mmap64.patch
parentaec78470ff4b2c671c4a522920681947c0209e11 (diff)
downloadpackages-fea61b9e1973a6ca7efe6cdf91e87c7604d54dd6.tar.gz
packages-fea61b9e1973a6ca7efe6cdf91e87c7604d54dd6.tar.bz2
packages-fea61b9e1973a6ca7efe6cdf91e87c7604d54dd6.tar.xz
packages-fea61b9e1973a6ca7efe6cdf91e87c7604d54dd6.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/336-gccgo-mmap64.patch')
-rw-r--r--system/gcc/336-gccgo-mmap64.patch17
1 files changed, 4 insertions, 13 deletions
diff --git a/system/gcc/336-gccgo-mmap64.patch b/system/gcc/336-gccgo-mmap64.patch
index 23b4cebc8..0d4ab19b8 100644
--- a/system/gcc/336-gccgo-mmap64.patch
+++ b/system/gcc/336-gccgo-mmap64.patch
@@ -1,15 +1,15 @@
--- gcc-8.3.0/libgo/go/runtime/mem_gccgo.go.old 2018-01-09 01:23:08.000000000 +0000
+++ gcc-8.3.0/libgo/go/runtime/mem_gccgo.go 2019-03-03 05:15:33.010000000 +0000
-@@ -16,7 +16,7 @@
- //go:linkname sysFree runtime.sysFree
+@@ -15,7 +15,7 @@
+ //go:linkname sysFree
- //extern mmap
+ //extern __go_mmap
-func sysMmap(addr unsafe.Pointer, n uintptr, prot, flags, fd int32, off uintptr) unsafe.Pointer
+func sysMmap(addr unsafe.Pointer, n uintptr, prot, flags, fd int32, off int64) unsafe.Pointer
//extern munmap
func munmap(addr unsafe.Pointer, length uintptr) int32
-@@ -41,7 +41,7 @@
+@@ -37,7 +37,7 @@
}
}
@@ -18,12 +18,3 @@
p := sysMmap(addr, n, prot, flags, fd, off)
if uintptr(p) == _MAP_FAILED {
return nil, errno()
-@@ -84,7 +84,7 @@
- return true
- }
-
--func mmap_fixed(v unsafe.Pointer, n uintptr, prot, flags, fd int32, offset uintptr) (unsafe.Pointer, int) {
-+func mmap_fixed(v unsafe.Pointer, n uintptr, prot, flags, fd int32, offset int64) (unsafe.Pointer, int) {
- p, err := mmap(v, n, prot, flags, fd, offset)
- // On some systems, mmap ignores v without
- // MAP_FIXED, so retry if the address space is free.