summaryrefslogtreecommitdiff
path: root/system/gcc/0002-posix_memalign.patch
diff options
context:
space:
mode:
authorA. Wilcox <AWilcox@Wilcox-Tech.com>2019-02-28 23:20:33 +0000
committerA. Wilcox <AWilcox@Wilcox-Tech.com>2019-02-28 23:20:33 +0000
commit223093d95abfc2b2161105f2ef73a8287c687d95 (patch)
treec4e06a18734c392ef7bd33243cf7e8071f104dcb /system/gcc/0002-posix_memalign.patch
parent54003d7ae7f86ebba107ddad7ea6be0fdcaa6259 (diff)
downloadpackages-223093d95abfc2b2161105f2ef73a8287c687d95.tar.gz
packages-223093d95abfc2b2161105f2ef73a8287c687d95.tar.bz2
packages-223093d95abfc2b2161105f2ef73a8287c687d95.tar.xz
packages-223093d95abfc2b2161105f2ef73a8287c687d95.zip
system/gcc: bump to 8.3.0
These patches have been forward-ported to 8: 002_all_default-relro.patch 005_all_default-as-needed.patch 011_all_default-warn-format-security.patch 012_all_default-warn-trampolines.patch We are no longer using fortify-headers, so these patches are no longer needed: 003_all_default-fortify-source.patch 050_all_libiberty-asprintf.patch 053_all_libitm-no-fortify-source.patch These patches no longer appear necessary: 067_all_gcc-poison-system-directories.patch 090_all_pr55930-dependency-tracking.patch 201-cilkrts.patch 203-libgcc_s.patch 207-static-pie.patch These patches have already been applied upstream: 204-linux_libc_has_function.patch 332-gccgo-remove-ustat.patch ada-aarch64-multiarch.patch ada-fixes.patch boehm-gc-musl.patch fix-rs6000-pie.patch gcc-4.8-build-args.patch lra-pentium.patch These patches are no longer necessary because GCJ has been removed: 310-build-gcj-s390x.patch fix-gcj-iconv-musl.patch fix-gcj-musl.patch fix-gcj-stdgnu14-link.patch The rest of the changes are updates from nsz's patchset.
Diffstat (limited to 'system/gcc/0002-posix_memalign.patch')
-rw-r--r--system/gcc/0002-posix_memalign.patch42
1 files changed, 42 insertions, 0 deletions
diff --git a/system/gcc/0002-posix_memalign.patch b/system/gcc/0002-posix_memalign.patch
new file mode 100644
index 000000000..874f49b9b
--- /dev/null
+++ b/system/gcc/0002-posix_memalign.patch
@@ -0,0 +1,42 @@
+From 65eb86f3e110998d30489df009d44b4bc1043adc Mon Sep 17 00:00:00 2001
+From: Szabolcs Nagy <nsz@port70.net>
+Date: Fri, 26 Jan 2018 20:32:50 +0000
+Subject: [PATCH 02/12] posix_memalign
+
+---
+ gcc/config/i386/pmm_malloc.h | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/gcc/config/i386/pmm_malloc.h b/gcc/config/i386/pmm_malloc.h
+index ffbb7f82cf5..b0b890d2403 100644
+--- a/gcc/config/i386/pmm_malloc.h
++++ b/gcc/config/i386/pmm_malloc.h
+@@ -27,12 +27,13 @@
+ #include <stdlib.h>
+
+ /* We can't depend on <stdlib.h> since the prototype of posix_memalign
+- may not be visible. */
++ may not be visible and we can't pollute the namespace either. */
+ #ifndef __cplusplus
+-extern int posix_memalign (void **, size_t, size_t);
++extern int _mm_posix_memalign (void **, size_t, size_t)
+ #else
+-extern "C" int posix_memalign (void **, size_t, size_t) throw ();
++extern "C" int _mm_posix_memalign (void **, size_t, size_t) throw ()
+ #endif
++__asm__("posix_memalign");
+
+ static __inline void *
+ _mm_malloc (size_t __size, size_t __alignment)
+@@ -42,7 +43,7 @@ _mm_malloc (size_t __size, size_t __alignment)
+ return malloc (__size);
+ if (__alignment == 2 || (sizeof (void *) == 8 && __alignment == 4))
+ __alignment = sizeof (void *);
+- if (posix_memalign (&__ptr, __alignment, __size) == 0)
++ if (_mm_posix_memalign (&__ptr, __alignment, __size) == 0)
+ return __ptr;
+ else
+ return NULL;
+--
+2.17.1
+