Commit graph

112 commits

Author SHA1 Message Date
Justin Ethier
e5bf6e0e4e Fixed race condition on startup 2015-12-08 23:13:22 -05:00
Justin Ethier
6ad9e6098f Removed hacky gc_stack functions 2015-12-08 21:37:01 -05:00
Justin Ethier
33447ebc57 New write barrier implementation 2015-12-07 22:34:29 -05:00
Justin Ethier
372a0a3fed Fixed compilation errors 2015-12-07 22:11:58 -05:00
Justin Ethier
c75c86f028 WIP - "grayed" flag to indicate grayed stack object 2015-12-06 22:56:19 -05:00
Justin Ethier
9ded782a06 New approach to stack graying from write barrier 2015-12-06 22:37:08 -05:00
Justin Ethier
3d0d966e6d Changed GC cooperation
Mark all objects moved to the heap, instead of just the typical roots.
2015-12-05 22:44:06 -05:00
Justin Ethier
f6e14ef3a8 Added debugging 2015-12-01 22:34:39 -05:00
Justin Ethier
c70a69c202 WIP 2015-12-01 22:41:11 -05:00
Justin Ethier
52f0868d24 Selectively compile debug traces 2015-11-30 21:40:16 -05:00
Justin Ethier
604eb682c5 Trace object graph used to mark 2015-11-26 01:52:42 -05:00
Justin Ethier
ff1fc10a90 Added debug statements 2015-11-25 23:46:50 -05:00
Justin Ethier
46dff7fc38 notes 2015-11-24 23:29:44 -05:00
Justin Ethier
b6dc8c8285 Added notes 2015-11-24 23:18:24 -05:00
Justin Ethier
3e7877b402 Working around mark-free-list problem for now, need to revisit this. 2015-11-24 23:09:49 -05:00
Justin Ethier
d1acb301c1 Initialize mark for load_varargs 2015-11-20 02:12:11 -05:00
Justin Ethier
2de1ce0d5c Added missing prototypes, init mark in make_cons 2015-11-20 02:05:10 -05:00
Justin Ethier
8bf20a05b5 Copy objects into heap while we have the heap lock
Attempting to prevent issues with unitialized memory. Unfortunately this is not the primary cause of the errors.
2015-11-19 23:00:53 -05:00
Justin Ethier
e4c4148a74 Attemping to add write barrier for set operations 2015-11-17 23:03:11 -05:00
Justin Ethier
65e2a1a18b Refactoring 2015-11-13 23:59:40 -05:00
Justin Ethier
dfc8bb76b5 Fixes 2015-11-12 21:40:26 -05:00
Justin Ethier
f4b62156ba Added gc_add_mutator 2015-11-13 02:51:19 -05:00
Justin Ethier
df53ec99a6 Fixed heap init 2015-11-13 02:39:22 -05:00
Justin Ethier
f1443979e6 Added heap write barrier 2015-11-13 02:19:23 -05:00
Justin Ethier
4bb24a4edd Added mutator cooperation function 2015-11-12 22:33:34 -05:00
Justin Ethier
c9d24c9a02 startup collector thread 2015-11-11 21:33:30 -05:00
Justin Ethier
6e6f079430 Added coarse-grained heap locking 2015-11-10 23:01:48 -05:00
Justin Ethier
41f2a9e6ca Working on gc_collector() 2015-11-10 21:16:40 -05:00
Justin Ethier
d3a6418b0b WIP 2015-11-09 23:04:56 -05:00
Justin Ethier
b24cc73982 Init globals, stubbed out wait handshake 2015-11-09 21:46:01 -05:00
Justin Ethier
af3aa141f1 WIP 2015-11-10 03:08:29 -05:00
Justin Ethier
2b2a96c84d Relocate mutator data structure to gc module 2015-11-09 22:25:17 -05:00
Justin Ethier
fdc33e88af Cleanup 2015-11-06 22:02:31 -05:00
Justin Ethier
33abfc3bfa Relocate setjmp code to runtime 2015-11-06 21:28:12 -05:00
Justin Ethier
e1063c4e19 Added TODO 2015-11-07 02:57:55 -05:00
Justin Ethier
5fd25f977f Do a separate heap init on startup 2015-11-07 02:56:38 -05:00
Justin Ethier
4f3a7f4b5b Missed these 2015-11-06 22:32:45 -05:00
Justin Ethier
32465d5da8 Renamed minor GC args vars to be consistent with GC code 2015-11-06 22:31:31 -05:00
Justin Ethier
70645643ca Added TODO 2015-11-06 20:29:50 -05:00
Justin Ethier
9219279613 Use mutator number instead of casting pointer to an int 2015-11-06 20:28:27 -05:00
Justin Ethier
23453d264b Removed unused globals 2015-11-05 22:17:26 -05:00
Justin Ethier
8da3b29e89 Integrate gc_cont globals with thread data structure 2015-11-05 21:57:22 -05:00
Justin Ethier
19a4a9599c Move jmp_buf to thread data structure 2015-11-05 21:21:48 -05:00
Justin Ethier
7adc4f4586 WIP 2015-11-06 02:52:56 -05:00
Justin Ethier
6fb8d31597 Removed stack limit globals 2015-11-05 23:00:30 -05:00
Justin Ethier
287f660851 Moving stack limits away from global vars 2015-11-05 22:17:42 -05:00
Justin Ethier
c49044fce6 Stub for migrating to gc struct 2015-11-04 23:02:28 -05:00
Justin Ethier
a84c8b9339 WIP 2015-11-03 23:04:13 -05:00
Justin Ethier
4838dfb40f Fixed compilation errors for libcyclone.a 2015-11-03 22:58:34 -05:00
Justin Ethier
e1c308d2b1 Adding data argument 2015-11-02 22:47:55 -05:00