… | |
… | |
389 | * not usually need a lot of stackspace. |
389 | * not usually need a lot of stackspace. |
390 | */ |
390 | */ |
391 | static void |
391 | static void |
392 | coro_init_stacks () |
392 | coro_init_stacks () |
393 | { |
393 | { |
394 | PL_curstackinfo = new_stackinfo(96, 1024/sizeof(PERL_CONTEXT) - 1); |
394 | PL_curstackinfo = new_stackinfo(128, 1024/sizeof(PERL_CONTEXT)); |
395 | PL_curstackinfo->si_type = PERLSI_MAIN; |
395 | PL_curstackinfo->si_type = PERLSI_MAIN; |
396 | PL_curstack = PL_curstackinfo->si_stack; |
396 | PL_curstack = PL_curstackinfo->si_stack; |
397 | PL_mainstack = PL_curstack; /* remember in case we switch stacks */ |
397 | PL_mainstack = PL_curstack; /* remember in case we switch stacks */ |
398 | |
398 | |
399 | PL_stack_base = AvARRAY(PL_curstack); |
399 | PL_stack_base = AvARRAY(PL_curstack); |
400 | PL_stack_sp = PL_stack_base; |
400 | PL_stack_sp = PL_stack_base; |
401 | PL_stack_max = PL_stack_base + AvMAX(PL_curstack); |
401 | PL_stack_max = PL_stack_base + AvMAX(PL_curstack); |
402 | |
402 | |
403 | New(50,PL_tmps_stack,96,SV*); |
403 | New(50,PL_tmps_stack,128,SV*); |
404 | PL_tmps_floor = -1; |
404 | PL_tmps_floor = -1; |
405 | PL_tmps_ix = -1; |
405 | PL_tmps_ix = -1; |
406 | PL_tmps_max = 96; |
406 | PL_tmps_max = 128; |
407 | |
407 | |
408 | New(54,PL_markstack,16,I32); |
408 | New(54,PL_markstack,32,I32); |
409 | PL_markstack_ptr = PL_markstack; |
409 | PL_markstack_ptr = PL_markstack; |
410 | PL_markstack_max = PL_markstack + 16; |
410 | PL_markstack_max = PL_markstack + 32; |
411 | |
411 | |
412 | #ifdef SET_MARK_OFFSET |
412 | #ifdef SET_MARK_OFFSET |
413 | SET_MARK_OFFSET; |
413 | SET_MARK_OFFSET; |
414 | #endif |
414 | #endif |
415 | |
415 | |
416 | New(54,PL_scopestack,16,I32); |
416 | New(54,PL_scopestack,32,I32); |
417 | PL_scopestack_ix = 0; |
417 | PL_scopestack_ix = 0; |
418 | PL_scopestack_max = 16; |
418 | PL_scopestack_max = 32; |
419 | |
419 | |
420 | New(54,PL_savestack,96,ANY); |
420 | New(54,PL_savestack,64,ANY); |
421 | PL_savestack_ix = 0; |
421 | PL_savestack_ix = 0; |
422 | PL_savestack_max = 96; |
422 | PL_savestack_max = 64; |
423 | |
423 | |
424 | #if !PERL_VERSION_ATLEAST (5,9,0) |
424 | #if !PERL_VERSION_ATLEAST (5,9,0) |
425 | New(54,PL_retstack,8,OP*); |
425 | New(54,PL_retstack,16,OP*); |
426 | PL_retstack_ix = 0; |
426 | PL_retstack_ix = 0; |
427 | PL_retstack_max = 8; |
427 | PL_retstack_max = 16; |
428 | #endif |
428 | #endif |
429 | } |
429 | } |
430 | |
430 | |
431 | /* |
431 | /* |
432 | * destroy the stacks, the callchain etc... |
432 | * destroy the stacks, the callchain etc... |