dzaima
4b6dd1bf81
immediately mark&sweep unknown reference objects instead of storing
2023-03-05 14:05:08 +02:00
dzaima
c5aedaa414
switch to GCv2, various fixes/cleanup
...
includes:
fixing some refcounts for FOR_BUILD build •FFI
moving DEBUG_VM prints to stderr
fixing heapverify reports of loose shape objects of fillarrs
regular ol' adding-of-semicolon-after-label for old gcc
move GC enable to after all initialization, not load_init
2023-03-05 01:23:53 +02:00
dzaima
16274e5952
bucket coalescing on GC
2023-03-04 20:09:12 +02:00
dzaima
2c107025ab
add argument for non-GC_VISIT_V2
2023-02-26 18:53:06 +02:00
dzaima
78eb351e10
allow top-level GC to collect all garbage in GC_VISIT_V2
2023-02-26 18:37:07 +02:00
dzaima
a928277e8c
make heapverify run on GC_VISIT_V2
...
also make it able to track shape object leaks
2023-02-25 00:21:15 +02:00
dzaima
6e6169530d
GC v2
2023-02-24 23:28:55 +02:00
dzaima
75fe558f1c
detect writes past the end of a TALLOC allocation
2022-12-27 02:29:24 +02:00
dzaima
34e37d1b1a
increase gc root buffer size
2022-11-24 01:09:50 +02:00
dzaima
f87a1155f5
store references instead of GC root functions to handle mutable roots
...
-0.21% binary size; mm_visit & mm_visitP got inlined in the gcFn-s, even though that's very pointless
2022-11-06 02:01:14 +02:00
dzaima
43b8b5e2a0
)escaped
2022-06-19 21:05:05 +03:00
dzaima
3fb793526c
)erase; try to not oom on printing errors
2022-01-19 01:02:07 +02:00
dzaima
d68e278083
move nsTime to its own file
2021-12-29 19:49:16 +02:00
dzaima
4af5f3d4a6
store Value* as gc roots
2021-11-28 21:56:01 +02:00
dzaima
4697b91b1e
fix >2 repeated imports & error on cyclical importing
2021-11-26 00:25:11 +02:00
dzaima
ef230f8dc0
remove static from function that isn't
2021-10-15 12:08:48 +03:00
dzaima
b7f60ffb1c
move GC tag resetting from alloc to another pass
2021-10-10 23:11:49 +03:00
dzaima
c00834cf15
move mm_free call into virtual function so dec is simpler
2021-07-30 04:40:56 +03:00
dzaima
1b31c88e4c
use mm_heapUsed() instead of allocB
2021-07-11 22:45:08 +03:00
dzaima
08723a3c80
use TI macros everywhere
2021-07-06 19:22:45 +03:00
dzaima
96f3089410
proper i64 formatting, move openbsd hack up
2021-06-06 22:23:55 +03:00
dzaima
7e994dd913
modifiable defines
2021-06-06 16:50:18 +03:00
dzaima
16f379b6c7
fix gc/refc issues, set memory to invalid objects on free in debug
2021-05-30 01:55:59 +03:00
dzaima
1b89661308
inline objects
2021-05-28 01:03:29 +03:00
dzaima
b2b826be9b
incremental compilation
2021-05-23 21:55:49 +03:00