Yuichi Nishiwaki
|
5e616e7774
|
store irep objects inside parent irep object
|
2014-01-18 21:48:50 +09:00 |
Yuichi Nishiwaki
|
0db09b146c
|
ireps generated by top codegen are not registered to pic->irep. get them
marked manually.
|
2014-01-18 16:56:20 +09:00 |
Yuichi Nishiwaki
|
42c097a91f
|
pic->irep is a root marker
|
2014-01-18 16:55:11 +09:00 |
Yuichi Nishiwaki
|
11e4f1644b
|
irep object is now controlled under GC
|
2014-01-18 16:53:39 +09:00 |
Yuichi Nishiwaki
|
586b228156
|
add PIC_TT_IREP
|
2014-01-18 16:51:54 +09:00 |
Yuichi Nishiwaki
|
3ff7d5b208
|
grammatical fix
|
2014-01-18 16:06:59 +09:00 |
Yuichi Nishiwaki
|
ca068f560b
|
clarify license information
|
2014-01-17 20:58:31 +09:00 |
Yuichi Nishiwaki
|
db75df2624
|
add heap finializer
|
2014-01-16 22:02:30 +09:00 |
Yuichi Nishiwaki
|
a9f4eff13e
|
add parameter primitives: (picrin parameter) library
|
2014-01-09 00:39:13 +09:00 |
OGINO Masanori
|
ceffd8a3bd
|
Cast to `void *` for '%p' format specifiers.
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
|
2014-01-05 18:10:33 +09:00 |
Yuichi Nishiwaki
|
7cdcbd4604
|
set name to each library
|
2013-12-07 18:59:13 -08:00 |
Yuichi Nishiwaki
|
381ed58bff
|
add global library table
|
2013-12-07 05:36:14 -08:00 |
Yuichi Nishiwaki
|
931565d4ce
|
add pic_lib
|
2013-12-07 03:58:18 -08:00 |
Yuichi Nishiwaki
|
b3a2da1079
|
Merge remote-tracking branch 'origin/master'
|
2013-12-06 04:48:10 -08:00 |
Yuichi Nishiwaki
|
ef04e3f02c
|
add pic_core_syntactic_env
|
2013-12-06 18:04:36 +09:00 |
Yuichi Nishiwaki
|
4d8ffa43c8
|
delete auto resource releasing facility
|
2013-12-03 08:16:53 -08:00 |
Yuichi Nishiwaki
|
4e98d37ab1
|
remove old debug prints
|
2013-12-03 13:08:23 +09:00 |
Yuichi Nishiwaki
|
b5b30de05a
|
remove a field for debug of union header
|
2013-12-03 11:49:32 +09:00 |
Yuichi Nishiwaki
|
7685afdb79
|
fix logic flaw in GC
|
2013-12-03 11:45:38 +09:00 |
Yuichi Nishiwaki
|
a43e3248e8
|
calloc should take size_t
|
2013-12-01 12:44:43 +09:00 |
Yuichi Nishiwaki
|
04434f44fd
|
cosmetic changes
|
2013-11-30 00:07:49 +09:00 |
Yuichi Nishiwaki
|
21f2c58a53
|
[gc][bugfix] sweeping failed when the heap gets completely
exhausted (i.e. all blocks' size are zero)
|
2013-11-29 12:10:10 +09:00 |
Yuichi Nishiwaki
|
f03a153774
|
add freed object counter
|
2013-11-29 12:10:10 +09:00 |
Yuichi Nishiwaki
|
4c5d3b4257
|
Revert "[bugfix] do not fuse end-of-page block into other blocks"
This reverts commit 5656590fa0 .
|
2013-11-29 12:10:10 +09:00 |
Yuichi Nishiwaki
|
5656590fa0
|
[bugfix] do not fuse end-of-page block into other blocks
|
2013-11-28 21:58:25 +09:00 |
Yuichi Nishiwaki
|
3266ae7d3c
|
[bugfix] missed to mark stx->senv
|
2013-11-28 13:15:27 +09:00 |
Yuichi Nishiwaki
|
1ab588d21f
|
added hygienic macro facility! Fooo!
|
2013-11-27 15:58:28 +09:00 |
Yuichi Nishiwaki
|
ab74920a6f
|
add pic_sc (syntactic closure) structure
|
2013-11-27 15:04:02 +09:00 |
Yuichi Nishiwaki
|
c1788d31b0
|
Merge branch 'master' into syntactic-closure
|
2013-11-27 13:06:37 +09:00 |
Yuichi Nishiwaki
|
bbe3e990e4
|
Revert "pluggable heap pages"
This reverts commit e6523730a4 .
|
2013-11-27 13:04:12 +09:00 |
Yuichi Nishiwaki
|
5e3f2dacf4
|
Revert "add_heap_page should not be invoked in gc_alloc, but should be in obj_alloc"
This reverts commit f11623f075 .
|
2013-11-27 13:04:03 +09:00 |
Yuichi Nishiwaki
|
cbd636e0a7
|
[bugfix] do not release pic->var_tbl when a senv holding it is dead
|
2013-11-26 09:00:16 -08:00 |
Yuichi Nishiwaki
|
be311cb96f
|
replace old macroexpand facility with new renamer implementation
|
2013-11-26 08:43:58 -08:00 |
Yuichi Nishiwaki
|
1f3f7c99a2
|
save macro procesures in each syntax object
|
2013-11-26 08:42:13 -08:00 |
Yuichi Nishiwaki
|
f6bc51d16d
|
add xlen/xcapa member to pic_senv
|
2013-11-26 08:36:58 -08:00 |
Yuichi Nishiwaki
|
a2e1f21b29
|
add global identifier table
|
2013-11-26 08:30:30 -08:00 |
Yuichi Nishiwaki
|
c59d8f601b
|
add PIC_TT_SENV and PIC_TT_SYNTAX
|
2013-11-26 04:05:02 -08:00 |
Yuichi Nishiwaki
|
52f1776b22
|
cleanup
|
2013-11-25 11:10:57 +09:00 |
Yuichi Nishiwaki
|
f11623f075
|
add_heap_page should not be invoked in gc_alloc, but should be in obj_alloc
|
2013-11-25 00:24:03 +09:00 |
Yuichi Nishiwaki
|
df20de5285
|
push back dead objects to free list
|
2013-11-25 00:22:32 +09:00 |
Yuichi Nishiwaki
|
40bfe13895
|
add a comment to sweep algorithm
|
2013-11-22 07:30:29 -08:00 |
Yuichi Nishiwaki
|
579735d16e
|
s/heap_page/pic_heap/g
|
2013-11-22 07:19:31 -08:00 |
Yuichi Nishiwaki
|
e6523730a4
|
pluggable heap pages
|
2013-11-22 07:12:03 -08:00 |
Yuichi Nishiwaki
|
1be72f1e18
|
rewrite gc!
|
2013-11-22 06:38:29 -08:00 |
Yuichi Nishiwaki
|
4b326e4f6e
|
add new compilation flag GC_DEBUG_DETAIL
|
2013-11-22 03:29:05 -08:00 |
Yuichi Nishiwaki
|
fdc9bfea4e
|
initial exception handling support
|
2013-11-17 17:25:26 +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
|
690f66dd76
|
s/is_marked/gc_is_marked/g
|
2013-11-15 19:32:01 +09:00 |
Yuichi Nishiwaki
|
f506eac3dd
|
add pic_obj_alloc_unsafe; preparation for yy_arena
|
2013-11-15 19:31:17 +09:00 |
Yuichi Nishiwaki
|
93e5758e4c
|
[bugfix] gc may enter an infinite loop
|
2013-11-15 16:11:54 +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
|
8b484b69d7
|
rename fields in struct pic_cont
|
2013-11-11 10:14:42 +09:00 |
Yuichi Nishiwaki
|
64ae8bd7b0
|
initial call/cc support
|
2013-11-09 14:14:25 +09:00 |
Yuichi Nishiwaki
|
5850699d75
|
force indirect reference to pic_value vtype
|
2013-11-04 23:37:08 -05:00 |
Yuichi Nishiwaki
|
aebf7f00f7
|
initial bytevector support
|
2013-11-04 22:38:23 -05:00 |
Yuichi Nishiwaki
|
1675ad9f52
|
initial char support
|
2013-11-04 21:37:18 -05:00 |
Yuichi Nishiwaki
|
d0602303e3
|
s/num_val/valuec/g
|
2013-11-04 16:07:36 -05:00 |
Yuichi Nishiwaki
|
77b6b94e74
|
gc must mark macros as well
|
2013-11-01 18:55:44 +09:00 |
Yuichi Nishiwaki
|
6fcce1cd23
|
cleanup
|
2013-10-30 16:43:15 +09:00 |
Yuichi Nishiwaki
|
a0a8a94abc
|
add gc stress test
|
2013-10-29 16:40:25 +09:00 |
Yuichi Nishiwaki
|
35bbd66812
|
fix gc bug: ci->env and env-up are nullable
|
2013-10-29 16:39:57 +09:00 |
Yuichi Nishiwaki
|
edcd060a8a
|
initial vector support
|
2013-10-29 15:51:37 +09:00 |
Yuichi Nishiwaki
|
49072bf5e4
|
[bugfix] fix closure issue
|
2013-10-29 10:16:56 +09:00 |
Yuichi Nishiwaki
|
1d9410638d
|
remove unused auxuality data field proc->aux
|
2013-10-29 02:23:14 +09:00 |
Yuichi Nishiwaki
|
63b52991da
|
introduce immediate symbol value
|
2013-10-29 02:11:31 +09:00 |
Yuichi Nishiwaki
|
d3df6dcbf2
|
support exact integer
|
2013-10-28 00:21:24 +09:00 |
Yuichi Nishiwaki
|
9cb28f3156
|
add OP_EQ/OP_LT/OP_LE
|
2013-10-24 21:10:13 +09:00 |
Yuichi Nishiwaki
|
411395995c
|
s/env.numcv/env.num_val/g
|
2013-10-24 03:41:48 +09:00 |
Yuichi Nishiwaki
|
d75b624b4a
|
add OP_LSET and OP_CSET
|
2013-10-24 03:14:32 +09:00 |
Yuichi Nishiwaki
|
bd851318d1
|
add pic_env struct
|
2013-10-24 02:02:07 +09:00 |
Yuichi Nishiwaki
|
ec0f0d3572
|
add pic_calloc
|
2013-10-24 00:32:03 +09:00 |
Yuichi Nishiwaki
|
dd7958c3d6
|
reader supports quasiquote abbrev
|
2013-10-23 12:39:48 +09:00 |
Yuichi Nishiwaki
|
dd3adf30e6
|
use xhash to manage scopes during codegin
|
2013-10-22 22:22:35 +09:00 |
Yuichi Nishiwaki
|
b45d7d9592
|
add eof-object type
|
2013-10-22 16:02:20 +09:00 |
Yuichi Nishiwaki
|
176d167de8
|
add some file open functions
|
2013-10-22 15:44:03 +09:00 |
Yuichi Nishiwaki
|
6245ec7e05
|
finalize port objects when collected
|
2013-10-22 15:40:36 +09:00 |
Yuichi Nishiwaki
|
114d6b708b
|
since pic_string is a first-class value, move it to value.h
|
2013-10-21 17:38:05 +09:00 |
Yuichi Nishiwaki
|
f5154625ba
|
add aux object field to proc object
|
2013-10-21 17:35:14 +09:00 |
Yuichi Nishiwaki
|
a49675c322
|
add OP_PUSHCONST
|
2013-10-21 09:29:56 +09:00 |
Yuichi Nishiwaki
|
5e43fe58fe
|
add string type
|
2013-10-21 08:48:55 +09:00 |
Yuichi Nishiwaki
|
4f8aa03b24
|
clarify the meanings of error functions
|
2013-10-20 17:41:48 +09:00 |
Yuichi Nishiwaki
|
a0e2089e56
|
mark global variables
|
2013-10-18 00:17:55 +09:00 |
Yuichi Nishiwaki
|
e7a5784fd7
|
allocate global variable entry area by malloc and save it into pic_state
|
2013-10-18 00:15:15 +09:00 |
Yuichi Nishiwaki
|
c92a672e01
|
change the stack layout: to hold proc object on the stack when procedure
call is invoked
|
2013-10-17 23:29:18 +09:00 |
Yuichi Nishiwaki
|
e87f632327
|
writer writes lists in short form
|
2013-10-17 22:42:20 +09:00 |
Yuichi Nishiwaki
|
986afa2fc9
|
add missing preprocessor if statement
|
2013-10-17 20:55:33 +09:00 |
Yuichi Nishiwaki
|
840593f5f3
|
remove noisy debug print
|
2013-10-16 17:49:16 +09:00 |
Yuichi Nishiwaki
|
c593a46a62
|
add OP_LAMBDA (lambda object creation)
|
2013-10-16 11:32:30 +09:00 |
Yuichi Nishiwaki
|
b60e4df3d9
|
add pic_realloc
|
2013-10-16 11:21:41 +09:00 |
Yuichi Nishiwaki
|
728a4cb9d5
|
[gc] mark ci
|
2013-10-16 09:29:47 +09:00 |
Yuichi Nishiwaki
|
62303ed91e
|
[gc] mark predefined symbols
|
2013-10-16 09:29:39 +09:00 |
Yuichi Nishiwaki
|
04896bcd93
|
[gc] bugfix: do not mark a value out of the stack range
|
2013-10-16 09:28:13 +09:00 |
Yuichi Nishiwaki
|
136977f357
|
[gc] show freed object counts
|
2013-10-16 09:22:15 +09:00 |
Yuichi Nishiwaki
|
c41c5533fe
|
[gc] more debug prints
|
2013-10-16 09:21:57 +09:00 |
Yuichi Nishiwaki
|
1fc4ef18d1
|
fix gc bug
|
2013-10-16 09:21:13 +09:00 |
Yuichi Nishiwaki
|
910f370482
|
[gc] base header size is 1, not 0
|
2013-10-16 09:17:44 +09:00 |
Yuichi Nishiwaki
|
6a10162c2c
|
add picrin/proc.h
|
2013-10-15 13:21:40 +09:00 |
Yuichi Nishiwaki
|
78303a72e5
|
include necessary headers when GC_DEBUG
|
2013-10-15 09:07:55 +09:00 |