diff options
author | Yuta Saito <kateinoigakukun@gmail.com> | 2023-11-12 07:18:01 +0900 |
---|---|---|
committer | Yuta Saito <kateinoigakukun@gmail.com> | 2023-11-13 19:17:16 +0900 |
commit | 50a5b76decf21f833da6c838e7acc7f991e47e00 (patch) | |
tree | a3c6aa29871902e44238ea244c7648a88f2ae2cb /lib/bundler | |
parent | f1b95095d6635567cc5820b3eb40d9618faa73ed (diff) | |
download | ruby-50a5b76decf21f833da6c838e7acc7f991e47e00.tar.gz |
[wasm] allocate Asyncify setjmp buffer in heap
`rb_jmpbuf_t` type is considerably large due to inline-allocated
Asyncify buffer, and it leads to stack overflow even with small number
of C-method call frames. This commit allocates the Asyncify buffer used
by `rb_wasm_setjmp` in heap to mitigate the issue.
This patch introduces a new type `rb_vm_tag_jmpbuf_t` to abstract the
representation of a jump buffer, and init/deinit hook points to manage
lifetime of the buffer. These changes are effectively NFC for non-wasm
platforms.
Diffstat (limited to 'lib/bundler')
0 files changed, 0 insertions, 0 deletions