aboutsummaryrefslogtreecommitdiff
path: root/fesvr
diff options
context:
space:
mode:
authorAndrew Waterman <andrew@sifive.com>2022-09-01 20:23:16 -0700
committerAndrew Waterman <andrew@sifive.com>2022-09-01 20:28:41 -0700
commit476a79fe2fc6c4c7b809d0b359ad041a1034ffce (patch)
tree312301fe193911bb82707b2059ffee4233e7a589 /fesvr
parent204f43cf8288550f1070c216e57f16bb45c5f560 (diff)
downloadriscv-isa-sim-476a79fe2fc6c4c7b809d0b359ad041a1034ffce.zip
riscv-isa-sim-476a79fe2fc6c4c7b809d0b359ad041a1034ffce.tar.gz
riscv-isa-sim-476a79fe2fc6c4c7b809d0b359ad041a1034ffce.tar.bz2
Substantially increase context_t stack size
It's nearly free to do so, because it's just virtual address space. @davidbiancolin recently fell into this pit when using context_t with VCS.
Diffstat (limited to 'fesvr')
-rw-r--r--fesvr/context.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/fesvr/context.cc b/fesvr/context.cc
index ca73813..1dceeec 100644
--- a/fesvr/context.cc
+++ b/fesvr/context.cc
@@ -49,7 +49,7 @@ void context_t::init(void (*f)(void*), void* a)
#ifdef USE_UCONTEXT
getcontext(context.get());
context->uc_link = creator->context.get();
- context->uc_stack.ss_size = 64*1024;
+ context->uc_stack.ss_size = 1024 * 1024;
context->uc_stack.ss_sp = new void*[context->uc_stack.ss_size/sizeof(void*)];
#ifndef GLIBC_64BIT_PTR_BUG
makecontext(context.get(), (void(*)(void))&context_t::wrapper, 1, this);