Commit graph

139 commits

Author SHA1 Message Date
Justin Ethier
eaa0481f40 Added Cyc-minor-gc 2015-12-27 23:16:58 -05:00
Justin Ethier
2e9c5addd5 WIP 2015-12-24 00:50:37 -05:00
Justin Ethier
cc36d6459d Added collector_cooperated flag 2015-12-22 22:49:55 -05:00
Justin Ethier
6a2ed8ff23 Updated header file 2015-12-22 22:41:25 -05:00
Justin Ethier
247b09fc88 Store cont before mutator is blocked 2015-12-22 22:19:04 -05:00
Justin Ethier
309e35c69b Added cont argument to blocking I/O functions 2015-12-22 21:57:00 -05:00
Justin Ethier
f0b992335e Separate cooperation/longjmp from core minor GC 2015-12-23 03:02:52 -05:00
Justin Ethier
66ef2e2646 Added thread state helpers, avoid races during coop 2015-12-22 03:09:11 -05:00
Justin Ethier
a5fefda485 WIP - thread cleanup 2015-12-20 22:48:22 -05:00
Justin Ethier
6463b2bf06 Trigger GC prior to thread exit 2015-12-20 21:59:40 -05:00
Justin Ethier
d9656fc793 Use the name thread-sleep! 2015-12-19 00:22:49 -05:00
Justin Ethier
38c1ca7b31 Added thread_sleep 2015-12-18 23:53:24 -05:00
Justin Ethier
4110c6a4e1 New container for mutator threads 2015-12-18 22:05:37 -05:00
Justin Ethier
4e9bd1ea02 Added GC thread state, and notes 2015-12-18 23:49:32 -05:00
Justin Ethier
a539027b0f Added thread primitives 2015-12-17 23:50:11 -05:00
Justin Ethier
62e4e5afe9 Added thread primitives 2015-12-17 23:19:41 -05:00
Justin Ethier
e57688a774 Added thread start/end functions to runtime 2015-12-17 22:45:45 -05:00
Justin Ethier
dfed77639a Adding thread application stubs 2015-12-15 22:58:15 -05:00
Justin Ethier
ff18c50aac Cleanup all thread data members 2015-12-14 21:30:51 -05:00
Justin Ethier
c61fcd69d7 Removing obsolete function 2015-12-14 23:17:14 -05:00
Justin Ethier
ddf54ec5c7 Phasing-out Cyc_st_add2 2015-12-14 23:16:28 -05:00
Justin Ethier
ead5bcb100 Keep track of call history using thread data 2015-12-14 22:55:57 -05:00
Justin Ethier
c5f46e66f4 Removed unneeded export 2015-12-11 21:39:24 -05:00
Justin Ethier
dbab8ba26b Initial file 2015-12-11 21:38:17 -05:00
Justin Ethier
ded3f76cc8 Scheduling of GC 2015-12-10 23:11:22 -05:00
Justin Ethier
de0c19e1cd Keep track of the amount of free space in the heap 2015-12-09 22:46:00 -05:00
Justin Ethier
e7d0dbc87f Turning off debug traces 2015-12-10 01:42:29 -05:00
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