summaryrefslogtreecommitdiff
path: root/system/gcc/336-gccgo-mmap64.patch
diff options
context:
space:
mode:
Diffstat (limited to 'system/gcc/336-gccgo-mmap64.patch')
-rw-r--r--system/gcc/336-gccgo-mmap64.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/system/gcc/336-gccgo-mmap64.patch b/system/gcc/336-gccgo-mmap64.patch
new file mode 100644
index 000000000..23b4cebc8
--- /dev/null
+++ b/system/gcc/336-gccgo-mmap64.patch
@@ -0,0 +1,29 @@
+--- 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
+
+ //extern 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 @@
+ }
+ }
+
+-func mmap(addr unsafe.Pointer, n uintptr, prot, flags, fd int32, off uintptr) (unsafe.Pointer, int) {
++func mmap(addr unsafe.Pointer, n uintptr, prot, flags, fd int32, off int64) (unsafe.Pointer, int) {
+ 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.