Justin Ethier
fa26b18b01
Fixed compile error
2015-12-07 23:04:04 -05:00
Justin Ethier
5818ffc0eb
Temporarily reverting gc_stack change
2015-12-07 22:54:54 -05:00
Justin Ethier
3adf4d8d32
Refactoring
2015-12-07 22:54:47 -05:00
Justin Ethier
372a0a3fed
Fixed compilation errors
2015-12-07 22:11:58 -05:00
Justin Ethier
e994d4aa76
Do thread locking outside of gc_mark_gray
...
Changed the locking to attempt to avoid race conditions where not all of the heap objects have been moved prior to the collector staring to process them.
2015-12-07 22:02:38 -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
0946d56aaa
More notes
2015-12-04 23:38:09 -05:00
Justin Ethier
11864e558f
Added more notes
2015-12-04 23:23:15 -05:00
Justin Ethier
17fbd853c7
Added note
2015-12-04 22:31:31 -05:00
Justin Ethier
09f4a638cf
Added notes
2015-12-05 02:55:28 -05:00
Justin Ethier
22275832b5
Redirect GC to stderr
2015-12-03 23:20:16 -05:00
Justin Ethier
4f0ff11f33
Attempting to create standalone test case
2015-12-03 23:14:42 -05:00
Justin Ethier
ef0571b45e
Move verbose output to stderr to make runtime logging easier
2015-12-03 23:14:18 -05:00
Justin Ethier
51b84301a6
Trying to isolate memory corruption issue. May also have an issue with long lists
2015-12-02 23:02:27 -05:00
Justin Ethier
d0a5451cf9
more notes
2015-12-03 02:57:15 -05:00
Justin Ethier
f4a1995957
Added TODO's
2015-12-03 02:56:20 -05:00
Justin Ethier
ea6167b90b
Fixed debug statements
2015-12-03 02:51:58 -05:00
Justin Ethier
f6e14ef3a8
Added debugging
2015-12-01 22:34:39 -05:00
Justin Ethier
ab5d12b896
Link with pthread libs
2015-12-02 01:01:26 -05:00
Justin Ethier
c70a69c202
WIP
2015-12-01 22:41:11 -05:00
Justin Ethier
524e922ee0
Added temporary SIGINT
2015-11-30 22:22:13 -05:00
Justin Ethier
8452c35fae
Use #if instead of #ifdef
2015-11-30 21:41:48 -05:00
Justin Ethier
52f0868d24
Selectively compile debug traces
2015-11-30 21:40:16 -05:00
Justin Ethier
e29633f2b2
Fixed off-by-one error WRT last read/write
2015-12-01 03:07:34 -05:00
Justin Ethier
ae46e39c45
Added TODO
2015-12-01 00:22:54 -05:00
Justin Ethier
7276eea773
Added debugging
2015-11-30 23:00:30 -05:00
Justin Ethier
b5849e10ed
Added debug traces
2015-11-26 22:45:22 -05:00
Justin Ethier
604eb682c5
Trace object graph used to mark
2015-11-26 01:52:42 -05:00
Justin Ethier
c8d82f899f
Debug alloc info
2015-11-26 00:15:43 -05:00
Justin Ethier
a257423999
More debugging
2015-11-25 23:54:16 -05:00
Justin Ethier
e95eeb8732
Record marking
2015-11-25 23:51:13 -05:00
Justin Ethier
ff1fc10a90
Added debug statements
2015-11-25 23:46:50 -05:00
Justin Ethier
6ad6f6e254
Added debug traces
2015-11-25 02:58:05 -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
469cfa4c08
Debugging - how could gc_sweep/p be a value type?
2015-11-21 02:57:32 -05:00
Justin Ethier
d13327cfd4
Debugging
2015-11-21 02:14:57 -05:00
Justin Ethier
f5c60589b0
Debugging
2015-11-21 01:45:23 -05:00
Justin Ethier
b4659a563a
WIP
2015-11-19 23:00:41 -05:00
Justin Ethier
2215807a7c
WIP, need to get sweep (trace?) working
2015-11-19 21:18:52 -05:00
Justin Ethier
91e018c78b
Testing in isolation without gc_sweep enabled
2015-11-20 02:56:59 -05:00
Justin Ethier
ec6140b3a4
Ensure stack objects are properly marked
2015-11-20 02:50:46 -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
8945773e1c
Added notes
2015-11-19 23:09:27 -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
173e1ca407
At least for now, exit on error so we can try to track them down
2015-11-19 02:57:32 -05:00