diff --git a/libgo/go/bytes/indexbyte.c b/libgo/go/bytes/indexbyte.c index 1e0fef91f309..a0a963e93f66 100644 --- a/libgo/go/bytes/indexbyte.c +++ b/libgo/go/bytes/indexbyte.c @@ -8,11 +8,13 @@ #include "array.h" -/* This is in C so that the compiler can optimize it - appropriately. */ +/* This is in C so that the compiler can optimize it appropriately. + We deliberately don't split the stack in case it does call the + library function, which shouldn't need much stack space. */ int IndexByte (struct __go_open_array, char) - asm ("libgo_bytes.bytes.IndexByte"); + asm ("libgo_bytes.bytes.IndexByte") + __attribute__ ((no_split_stack)); int IndexByte (struct __go_open_array s, char b)