summaryrefslogtreecommitdiff
path: root/system/gcc/0002-posix_memalign.patch
diff options
context:
space:
mode:
authorLaurent Bercot <ska-adelie@skarnet.org>2019-03-07 00:23:26 +0000
committerLaurent Bercot <ska-adelie@skarnet.org>2019-03-07 00:23:26 +0000
commit5dba7907e14196aa368b0d84d3a2df7a0fd55123 (patch)
tree56fdada6ebda794f877de30628ac949a0f3a46f6 /system/gcc/0002-posix_memalign.patch
parent506539dec83c52b7e24bbd3f98cb8bea68b2d886 (diff)
parent89573ea3c2e8ec27ad4433a00fa238f7be475c54 (diff)
downloadpackages-5dba7907e14196aa368b0d84d3a2df7a0fd55123.tar.gz
packages-5dba7907e14196aa368b0d84d3a2df7a0fd55123.tar.bz2
packages-5dba7907e14196aa368b0d84d3a2df7a0fd55123.tar.xz
packages-5dba7907e14196aa368b0d84d3a2df7a0fd55123.zip
Merge branch 'master' of code.foxkit.us:adelie/packages
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
+