Commit graph

473 commits

Author SHA1 Message Date
Justin Ethier
e034459e81 Added GC thresholds 2016-03-03 23:11:35 -05:00
Justin Ethier
758bb25ba9 Tweaking GC parameters, but not done yet 2016-03-02 23:02:17 -05:00
Justin Ethier
be0384cd98 Add padding to integer_type
This will prevent assigning to forward() from possibly corrupting memory on 64-bit systems, because the 4-byte int type there does not have enough space to hold an 8-byte pointer.
2016-02-24 21:47:32 -05:00
Justin Ethier
76c84ad29e Added optional arg to string->number 2016-02-23 00:06:45 -05:00
Justin Ethier
46e15ceffc Added bin/oct/hex string->integer conversions 2016-02-19 21:59:10 -05:00
Justin Ethier
168e7d123d Compiles on x86_64 2016-02-17 22:35:28 -05:00
Justin Ethier
5e087971e7 Fix compiler error on 64-bit 2016-02-16 22:52:25 -05:00
Justin Ethier
c98e186172 Relocated mutex primitives to srfi 18 lib 2016-02-16 23:51:28 -05:00
Justin Ethier
1df46b2d9f Fixes to cond_var 2016-02-16 02:46:30 -05:00
Justin Ethier
8fdd2c46ba Added condition variable type 2016-02-16 01:09:02 -05:00
Justin Ethier
88f5d29930 Experimental changes 2016-02-04 23:40:59 -05:00
Justin Ethier
1a2994d27b Added square and expt as well as a macro to unbox numbers. 2016-01-28 22:54:33 -05:00
Justin Ethier
48e88d41a7 Added round, ceil, floor, truncate 2016-01-24 22:24:12 -05:00
Justin Ethier
a1ae377352 Added inexact module 2016-01-22 21:34:19 -05:00
Justin Ethier
7ce9b1e389 WIP 2016-01-21 21:57:42 -05:00
Justin Ethier
dcf4bfafcf Cleanup of blocked/runnable api 2016-01-21 21:36:55 -05:00
Justin Ethier
4b4c7db062 Make API consistent 2016-01-22 03:21:27 -05:00
Justin Ethier
4ed90f58f8 Added blocked/runnable macros 2016-01-20 23:48:10 -05:00
Justin Ethier
76bbca68e5 Cyc-minor-gc is now part of (srfi 18)
It makes more sense here than as a primitive, since threading is the only place you would need to trigger this from application code.
2016-01-18 22:40:59 -05:00
Justin Ethier
1e71ff3fd3 Move thread-sleep! to 18.sld 2016-01-18 22:18:39 -05:00
Justin Ethier
ea45546c62 Experimenting with explicit heap copying 2016-01-15 22:43:21 -05:00
Justin Ethier
2019b84149 Removed dead code 2016-01-11 22:39:37 -05:00
Justin Ethier
a9d575d3a9 Removed Cyc_current_exception_handler2 2016-01-12 03:29:10 -05:00
Justin Ethier
02317f940d Transitioning away from Cyc_current_exception_handler2 2016-01-12 03:26:55 -05:00
Justin Ethier
87c266a44a Adding exception stack to thread data 2016-01-12 03:21:36 -05:00
Justin Ethier
ef7adf298c Cleanup 2016-01-11 20:27:41 -05:00
Justin Ethier
2f72b30f23 Build-out of time library 2016-01-10 21:29:45 -05:00
Justin Ethier
e28951a8d5 Move the mutation table into thread data. 2016-01-04 22:54:23 -05:00
Justin Ethier
a889d6fb6f Refactoring
Renamed cyc_start_thread to cyc_start_trampoline to be more clear about what the function actually does.
2016-01-03 22:56:34 -05:00
Justin Ethier
ef61c578c5 Build-out of mutex lock/unlock 2016-01-03 00:02:19 -05:00
Justin Ethier
9402805af3 Mutex stubs 2016-01-02 22:13:45 -05:00
Justin Ethier
36752be311 Stubs for mutex functions 2016-01-02 21:56:36 -05:00
Justin Ethier
c0ac60ba87 Beginnings of a mutex type 2015-12-30 21:59:37 -05:00
Justin Ethier
71af17d7e7 Use atomic operations from libck 2015-12-29 22:05:07 -05:00
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