diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2019-06-25 06:16:21 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2019-06-25 06:16:21 +0000 |
commit | 81fadf1c8d33ce8fb38e18f00b96fc2434ab7f98 (patch) | |
tree | 2b287bd7f5b7a8ca356ffe23340b44a49f7bbbec | |
parent | 33437116edd7d0c59dee80e0ab7f241f851fa5d6 (diff) | |
download | gcc-81fadf1c8d33ce8fb38e18f00b96fc2434ab7f98.zip gcc-81fadf1c8d33ce8fb38e18f00b96fc2434ab7f98.tar.gz gcc-81fadf1c8d33ce8fb38e18f00b96fc2434ab7f98.tar.bz2 |
runtime: mark memequal and memclrNoHeapPointers nosplit
They are wrappers of libc functions that use no stack. Mark them
nosplit so the linker won't patch it to call __morestack_non_split.
Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/183629
From-SVN: r272633
-rw-r--r-- | gcc/go/gofrontend/MERGE | 2 | ||||
-rw-r--r-- | libgo/runtime/go-memclr.c | 3 | ||||
-rw-r--r-- | libgo/runtime/go-memequal.c | 3 |
3 files changed, 5 insertions, 3 deletions
diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index ca68507..ca0578a 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -89b442a0100286ee569b8d2562ce1b2ea602f7e7 +a857aad2f3994e6fa42a6fc65330e65d209597a0 The first line of this file holds the git revision number of the last merge done from the gofrontend repository. diff --git a/libgo/runtime/go-memclr.c b/libgo/runtime/go-memclr.c index e478b65..b5d4975 100644 --- a/libgo/runtime/go-memclr.c +++ b/libgo/runtime/go-memclr.c @@ -7,7 +7,8 @@ #include "runtime.h" void memclrNoHeapPointers(void *, uintptr) - __asm__ (GOSYM_PREFIX "runtime.memclrNoHeapPointers"); + __asm__ (GOSYM_PREFIX "runtime.memclrNoHeapPointers") + __attribute__ ((no_split_stack)); void memclrNoHeapPointers (void *p1, uintptr len) diff --git a/libgo/runtime/go-memequal.c b/libgo/runtime/go-memequal.c index 5f514aa..9648cba 100644 --- a/libgo/runtime/go-memequal.c +++ b/libgo/runtime/go-memequal.c @@ -7,7 +7,8 @@ #include "runtime.h" _Bool memequal (void *, void *, uintptr) - __asm__ (GOSYM_PREFIX "runtime.memequal"); + __asm__ (GOSYM_PREFIX "runtime.memequal") + __attribute__ ((no_split_stack)); _Bool memequal (void *p1, void *p2, uintptr len) |