summaryrefslogtreecommitdiff
path: root/open_issues/gcc.mdwn
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@codesourcery.com>2018-06-18 17:11:08 +0200
committerThomas Schwinge <thomas@codesourcery.com>2018-06-18 17:11:08 +0200
commit76b8a6a7017f4b3ab7fa8f47bededd99af805969 (patch)
tree43c7555f42fbe3ca27323b8a23a0e53d70b14770 /open_issues/gcc.mdwn
parentfe60fbc108513ffd609688a2fa814874d2abb09e (diff)
open_issues/gcc: Cilk Plus, and Intel MPX support have been removed in GCC trunk
Diffstat (limited to 'open_issues/gcc.mdwn')
-rw-r--r--open_issues/gcc.mdwn141
1 files changed, 5 insertions, 136 deletions
diff --git a/open_issues/gcc.mdwn b/open_issues/gcc.mdwn
index 194a401a..44dc3a9e 100644
--- a/open_issues/gcc.mdwn
+++ b/open_issues/gcc.mdwn
@@ -1,5 +1,5 @@
[[!meta copyright="Copyright © 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014,
-2015, 2016 Free Software Foundation, Inc."]]
+2015, 2016, 2018 Free Software Foundation, Inc."]]
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
@@ -750,139 +750,6 @@ Last reviewed up to the Git mirror's commit
* `libvtv/vtv_rts.cc`: `/proc/self/exe` usage, `PATH_MAX`.
- * `libcilkrts`
-
- Disabled for Hurd.
-
- libcilkrts/Makefile.am:
-
- +# If we're building on Linux, use the Linux version script
- +if LINUX_LINKER_SCRIPT
- + libcilkrts_la_LDFLAGS += -Wl,--version-script,$(srcdir)/runtime/linux-symbols.ver
- +endif
-
- libcilkrts/configure.ac:
-
- +# We have linker scripts for appropriate operating systems
- +linux_linker_script=no
- +case "${host}" in
- + *-*-linux*)
- + linux_linker_script=yes
- + ;;
- +esac
- +AM_CONDITIONAL(LINUX_LINKER_SCRIPT, test "$linux_linker_script" = "yes")
-
- libcilkrts/runtime/cilk_malloc.c:
-
- +#if defined _WIN32 || defined _WIN64 || defined __linux__
- +#include <malloc.h>
- +#define HAS_MEMALIGN 1
- +#endif
-
- libcilkrts/runtime/config/x86/cilk-abi-vla.c:
-
- +#if defined(__x86_64)
- + // For Intel64 linux & MACH ABI, all the parameters were passed in
- + // register, so top of the stack frame above the return address
- + // is just the size of the return address plus
- + // distance_from_sp_to_alloca_area on the chance that the alloca
- + // area isn't at the very bottom of the calling functions stack.
- +#elif defined(__MACH__)
- + // For ia32 MACH, parameter size is always a mutliple of 16
- + // bytes to keep the stack 16 byte aligned. So we need to round
- + // number of parameters up to multiple of 4.
- + param_size = 8 * sizeof(char *);
- +#else
- + // For both windows Intel64 ABI, and the IA32 windows and
- + // linux ABIs, space is reserved on the stack for all these
- + // parameters. param_size is 5 * size of a stack slot.
- + param_size = 5 * sizeof(char *);
- +#endif
-
- +#if defined(__x86_64)
- + // For Intel64 linux & MACH ABI, all the parameters were passed in
- + // register, so top of the stack frame above the return address
- + // is just the size of the return address plus
- + // distance_from_sp_to_alloca_area on the chance that the alloca
- + // area isn't at the very bottom of the calling functions stack.
- +#elif defined(__MACH__)
- + // For ia32 MACH, parameter size is always a mutliple of 16
- + // bytes to keep the stack 16 byte aligned. So we need to round
- + // number of parameters up to multiple of 4.
- + param_size = 8 * sizeof(char *);
- +#else
- + // For both windows Intel64 ABI, and the IA32 windows and
- + // linux ABIs, space is reserved on the stack for all these
- + // parameters. param_size is 5 * size of a stack slot.
- + param_size = 6 * sizeof(char *);
- +#endif
-
- libcilkrts/runtime/os-unix.c:
-
- +#ifdef __linux__
- + // define _GNU_SOURCE before *any* #include.
- + // Even <stdint.h> will break later #includes if this macro is not
- + // already defined when it is #included.
- +# define _GNU_SOURCE
- +#endif
-
- +#if defined __linux__
- +# include <sys/sysinfo.h>
- +# include <sys/syscall.h>
-
- Syscall usage outside __linux__?
-
- Will run into:
-
- +#else
- +#error "Unknown architecture"
-
- libcilkrts/runtime/sysdep-unix.c:
-
- +#ifdef __linux__
- + // define _GNU_SOURCE before *any* #include.
- + // Even <stdint.h> will break later #includes if this macro is not
- + // already defined when it is #included.
- +# define _GNU_SOURCE
- +#endif
-
- +#ifdef __linux__
- +# include <sys/resource.h>
- +# include <sys/sysinfo.h>
- +#endif
-
- +#if defined( __linux__) || defined(__VXWORKS__)
- + pthread_t tid = *(pthread_t *)thread_id;
- + if (i < 0 || i > g->total_workers)
- + return 0;
- + return g->sysdep->threads[i] == tid;
- +#else
- + // Needs to be implemented
- + return 0;
- +#endif
-
- IRC, freenode, #hurd, 2014-01-10:
-
- <youpi> bwaarf, libcilkrts in gcc-4.9
- <p2-mate> libcilkrts?
- <youpi> the runtime for the cilk language I guess
- <tschwinge> Yes. That most likely needs disabling for us.
- <tschwinge> I'll hve a look eventually.
- <tschwinge> As soon as I get
- <http://news.gmane.org/find-root.php?message_id=%3C87wqjjo5kx.fsf%40kepler.schwinge.homeip.net%3E>
- resolved, actually.
-
- [[!debbug 734973]]. gcc-4.9/debian/patches/libcilkrts-targets.diff
-
- r235870 "Merge libcilkrts from upstream" is supposed to contain the Hurd
- port (not yet reviewed/tested).
-
- * [low] `libmpx`
-
- Only enabled for GNU/Linux, but actually seems to be portable.
-
- gcc/config/i386/linux-common.h:MPX_SPEC
-
* `PIE_SPEC`
diff --git ./gcc/config/gnu-user.h ./gcc/config/gnu-user.h
@@ -1007,8 +874,10 @@ and laplace.SCHWINGE.
Different hosts may default to different shells and compiler versions; thus
harmonized.
-`--disable-libcilkrts`,
-`--disable-libmpx`,
+`--disable-libcilkrts` (obsolete, Cilk Plus support removed in trunk r255195,
+2017-11-28),
+`--disable-libmpx` (obsolete, Intel MPX support removed in trunk r261304,
+2018-06-08),
`--disable-libsanitizer`,
`--disable-libvtv`,
until these is auto-detected/fixed/ported for GNU Hurd.