Yuichi Nishiwaki
93414fac52
s/env.values/env.regs/g
2014-03-23 12:45:36 +09:00
Yuichi Nishiwaki
acfa79bc62
s/NORETURN/noreturn/g
2014-03-19 17:37:06 +09:00
Yuichi Nishiwaki
d227c22379
change native_stack marker type to char *
2014-03-10 01:11:01 +09:00
Yuichi Nishiwaki
920674a6ef
typedef struct pic_block pic_block
2014-03-07 22:09:12 +09:00
Yuichi Nishiwaki
34bcabf5bc
s/pic_trampoline/pic_apply_trampoline/g
2014-03-03 22:19:27 +09:00
Yuichi Nishiwaki
c357a9302d
remove pic_list, and add pic_listn
2014-03-01 20:46:08 +09:00
Yuichi Nishiwaki
80a794310d
call/cc must save pic->ip
2014-02-20 20:59:35 +09:00
Yuichi Nishiwaki
078b72ff17
cleanup
2014-02-20 20:44:30 +09:00
Yuichi Nishiwaki
19f426a4f4
[bugfix] segv on pic_receive
2014-02-20 18:57:01 +09:00
Yuichi Nishiwaki
742be0b2c0
don't reset retc in pic_receive
2014-02-20 18:00:16 +09:00
Yuichi Nishiwaki
85a766a242
adjust stack pointer to the next to the initial position after calling function
2014-02-20 17:41:59 +09:00
Yuichi Nishiwaki
213177eb10
reset ci->retc when pic_receive is called
2014-02-20 17:19:40 +09:00
Yuichi Nishiwaki
7217baee0a
add coarity register to the VM
2014-02-20 16:33:18 +09:00
Yuichi Nishiwaki
cd12977cfe
receive values by trampoline
2014-02-07 09:59:02 +09:00
Yuichi Nishiwaki
1208fc9f0e
execute procedure by trampoline in call/cc
2014-02-07 09:56:57 +09:00
Yuichi Nishiwaki
0425dbdd1e
implement values and call-with-values with C
2014-02-02 14:26:58 +09:00
Yuichi Nishiwaki
778ee89dfe
fix pic_receive
2014-02-02 14:23:58 +09:00
Yuichi Nishiwaki
116a65cdee
add pic_receive
2014-02-02 12:38:46 +09:00
Yuichi Nishiwaki
19db4bb6b2
rest array got by pic_get_args has a dynamic extent; that is, we cannot
...
store it to a heap object when we are going to rewind that stack and
restore an old continuation.
2014-02-02 12:27:48 +09:00
Yuichi Nishiwaki
cb3128d241
refactor values functions
2014-02-02 12:27:24 +09:00
Yuichi Nishiwaki
f2507b5cbf
rename ..._from_... to ..._by_...
2014-02-02 12:26:43 +09:00
Yuichi Nishiwaki
2373e7a067
continuation now can take more than 1 arguments
2014-02-02 12:11:15 +09:00
Yuichi Nishiwaki
7547b83515
add pic_values functions
2014-02-02 12:10:31 +09:00
Yuichi Nishiwaki
7c35e50260
add NORETURN macro
2014-01-30 14:08:36 +09:00
Yuichi Nishiwaki
acb513aa16
publish pic_callcc
2014-01-18 16:08:07 +09:00
Yuichi Nishiwaki
ca068f560b
clarify license information
2014-01-17 20:58:31 +09:00
Yuichi Nishiwaki
825cde998b
s/pic_proc_cv_reserve/pic_proc_cv_init/g
2014-01-12 13:02:16 +09:00
Yuichi Nishiwaki
92ceedbd15
add accessor functions to modify closed variables
2014-01-08 22:45:28 +09:00
Yuichi Nishiwaki
e3e1ba4c11
rename procedure creation functions
2014-01-08 22:44:53 +09:00
Yuichi Nishiwaki
e7f765d218
pic_get_args supports pic_procs
2014-01-08 20:53:28 +09:00
Yuichi Nishiwaki
224b08fb92
[bugfix] after save_cont any local variable must not be modified!
...
If save_cont returns a cont object, a local variable will receive the
object and the machine stack state will have just been changed then.
To avoid that, we need set cont object to the local before the machine
stack is copied.
2013-11-17 17:20:19 +09:00
Yuichi Nishiwaki
38988b7770
add global exception handler stack
2013-11-17 16:02:58 +09:00
Yuichi Nishiwaki
c79e08632c
when restoring continuation sp and ci must be re-allocated
2013-11-17 15:58:53 +09:00
Yuichi Nishiwaki
984588b1b6
add reference count GC for pic_block objects
2013-11-15 11:51:58 +09:00
Yuichi Nishiwaki
c22f566c06
arena stash can be statically allocated
2013-11-15 10:54:56 +09:00
Yuichi Nishiwaki
d6c377a33b
native support for dynamic-wind
2013-11-11 18:04:21 +09:00
Yuichi Nishiwaki
8b484b69d7
rename fields in struct pic_cont
2013-11-11 10:14:42 +09:00
Yuichi Nishiwaki
7f3d3ac11b
copy stacks to restore a continuation
2013-11-11 07:59:52 +09:00
Yuichi Nishiwaki
0d2e49c17e
cleanup
2013-11-09 15:29:58 +09:00
Yuichi Nishiwaki
9d467e4d14
change some function names in cont.c
2013-11-09 15:25:19 +09:00
Yuichi Nishiwaki
64ae8bd7b0
initial call/cc support
2013-11-09 14:14:25 +09:00