diff options
author | Bruce Mitchener <bruce.mitchener@gmail.com> | 2023-03-02 15:51:14 +0700 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2023-03-02 14:41:40 +0300 |
commit | b9eb5da2469d33e5f74d71bed5c2920166bff60e (patch) | |
tree | 368a26ed27aec8958245128e931b76958e9f8dbe | |
parent | 08e4906d36f88af1073bcde7bee77c201fd20c2c (diff) | |
download | bdwgc-b9eb5da2469d33e5f74d71bed5c2920166bff60e.tar.gz |
Remove use of emscripten_scan_stack
(refactoring)
Issue #530 (bdwgc).
The code was only enabled by a define (USE_EMSCRIPTEN_SCAN_STACK) and
not needed as the alternative is to just use emscripten_stack_get_base
which is more straight forward.
* os_dep.c [EMSCRIPTEN && USE_EMSCRIPTEN_SCAN_STACK
&& EMSCRIPTEN_ASYNCIFY]: Do not include emscripten.h.
* os_dep.c [EMSCRIPTEN && USE_EMSCRIPTEN_SCAN_STACK
&& EMSCRIPTEN_ASYNCIFY] (emscripten_stack_base, scan_stack_cb): Do not
define.
* os_dep.c [EMSCRIPTEN] (GC_get_main_stack_base): Always use
emscripten_stack_get_base().
-rw-r--r-- | os_dep.c | 24 |
1 files changed, 2 insertions, 22 deletions
@@ -1199,31 +1199,11 @@ GC_INNER size_t GC_page_size = 0; } # define GET_MAIN_STACKBASE_SPECIAL #elif defined(EMSCRIPTEN) - -# if defined(USE_EMSCRIPTEN_SCAN_STACK) && defined(EMSCRIPTEN_ASYNCIFY) - /* According to the documentation, emscripten_scan_stack() is only */ - /* guaranteed to be available when building with ASYNCIFY. */ -# include <emscripten.h> - - static void *emscripten_stack_base; - - static void scan_stack_cb(void *begin, void *end) - { - (void)begin; - emscripten_stack_base = end; - } -# else -# include <emscripten/stack.h> -# endif +# include <emscripten/stack.h> ptr_t GC_get_main_stack_base(void) { -# if defined(USE_EMSCRIPTEN_SCAN_STACK) && defined(EMSCRIPTEN_ASYNCIFY) - emscripten_scan_stack(scan_stack_cb); - return (ptr_t)emscripten_stack_base; -# else - return (ptr_t)emscripten_stack_get_base(); -# endif + return (ptr_t)emscripten_stack_get_base(); } # define GET_MAIN_STACKBASE_SPECIAL #elif !defined(AMIGA) && !defined(HAIKU) && !defined(OS2) \ |