GCC's -fsplit-stack disturbing Mach's vm_allocate
Thomas Schwinge
thomas@codesourcery.com
Wed Jun 26 21:31:00 GMT 2013
Hi!
On Sat, 22 Jun 2013 08:15:46 -0700, Ian Lance Taylor <iant@google.com> wrote:
> Go can work without split stack. In that case libgo will use much
> larger stacks for goroutines, to reduce the chance of running out of
> stack space (see StackMin in libgo/runtime/proc.c). So the number of
> simultaneous goroutines that can be run will be limited. This is
> usually OK on x86_64 but it does hamper Go programs running on 32-bit
> x86.
OK, but that's not the most pressing issue we're having right now.
Anyway, as it stands, the split-stack code doesn't work on Hurd, so I
disabled it in r200434 as follows:
gcc/
* config/i386/gnu.h [TARGET_LIBC_PROVIDES_SSP]
(TARGET_CAN_SPLIT_STACK, TARGET_THREAD_SPLIT_STACK_OFFSET):
Undefine.
diff --git gcc/config/i386/gnu.h gcc/config/i386/gnu.h
index 35063e6..4a91c84 100644
--- gcc/config/i386/gnu.h
+++ gcc/config/i386/gnu.h
@@ -36,6 +36,12 @@ along with GCC. If not, see <http://www.gnu.org/licenses/>.
#endif
#ifdef TARGET_LIBC_PROVIDES_SSP
+
+/* Not supported yet. */
+# undef TARGET_THREAD_SSP_OFFSET
+
/* Not supported yet. */
-#undef TARGET_THREAD_SSP_OFFSET
+# undef TARGET_CAN_SPLIT_STACK
+# undef TARGET_THREAD_SPLIT_STACK_OFFSET
+
#endif
Grüße,
Thomas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 489 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20130626/e4b02142/attachment.sig>
More information about the Gcc-patches
mailing list