Commit graph

75 commits

Author SHA1 Message Date
Richard Feldman
548c3c3f15
fix typo 2021-02-12 19:21:38 -05:00
Folkert
1f0a16ec57 call to foreign function dropped continuation 2021-02-10 22:05:33 +01:00
Folkert
936bf459eb initial version of rc optimization 2021-01-28 13:14:54 +01:00
Folkert
e87d8f6449 optimize branching in debug builds 2021-01-26 23:45:41 +01:00
Richard Feldman
54f8efaa68
Merge branch 'trunk' into list-empty-record 2021-01-25 00:50:58 -05:00
Folkert
54fb482b79 Merge remote-tracking branch 'origin/trunk' into list-empty-record 2021-01-23 15:24:05 +01:00
Folkert
513d7cd78f groundwork for RoseTree 2021-01-23 01:39:04 +01:00
Folkert
bb12b39fc7 cleanup 2021-01-22 16:18:19 +01:00
Folkert
d8fd2d670d don't use alloca in inc/dec 2021-01-22 15:30:43 +01:00
Folkert
6344771a0c optimize refcount inc/dec (tail recursion) 2021-01-22 15:24:49 +01:00
Folkert
191dee73df clippy 2021-01-22 13:54:35 +01:00
Folkert
cb8de4ac04 move check out of main loop 2021-01-22 13:52:19 +01:00
Folkert
690f3ee5c9 simplify recursive case 2021-01-22 13:18:27 +01:00
Folkert
155c9fd9b0 pass the refcount value at runtime 2021-01-22 13:13:12 +01:00
Folkert
9c90f27bfd use correct Symbol 2021-01-22 01:34:37 +01:00
Folkert
42f63ceac1 update other places 2021-01-22 01:17:57 +01:00
Folkert
7c22201344 unify inc/dec list 2021-01-22 00:51:28 +01:00
Folkert
af5c75ea39 unify inc/dec str 2021-01-22 00:45:00 +01:00
Folkert
93f0e732a4 unify inc/dec builtin 2021-01-22 00:35:59 +01:00
Folkert
2b887f64b4 unify inc/dec layout 2021-01-22 00:30:02 +01:00
Folkert
946ce9c292 implement incrementing by a variable number 2021-01-22 00:21:23 +01:00
Folkert
99058e7203 add inc field to mode 2021-01-22 00:18:35 +01:00
Folkert
ef89ff15a1 make match exhaustive 2021-01-21 20:37:05 +01:00
Folkert
2e52ed68a4 increment struct layouts ... 2021-01-21 20:21:45 +01:00
Folkert
5ec354229a refactor recursive tag refcounting 2021-01-20 22:19:12 +01:00
Folkert
cb0c5ef751 make bitcast more descriptive 2021-01-18 22:06:14 +01:00
Folkert
c1265574b3 drop the tag! 2021-01-17 02:26:04 +01:00
Folkert
2ce35cca28 fix block_of_memory creation for recursive layouts 2021-01-17 00:38:30 +01:00
Folkert
de666c575f refactor union layout 2021-01-16 16:31:43 +01:00
Folkert
ef3bda40c6 fix RC 2021-01-15 16:10:48 +01:00
Folkert
b47ccb20fd add NullableUnion layout 2021-01-15 00:25:28 +01:00
Folkert
bfe947b07e improve increment for rec tag unions 2021-01-11 17:14:30 +01:00
Folkert
5debaf7c30 comments 2021-01-11 16:56:02 +01:00
Folkert
a8b0f481af improve decrement of recursive tag unions 2021-01-11 16:53:04 +01:00
Folkert
0cee82d25b re-enable refcounting for recursive tags 2021-01-10 21:50:41 +01:00
Folkert
a7cf98df9b add == and != for lists 2021-01-03 20:09:28 +01:00
Folkert
728298d15a automatic clippy fixes 2021-01-01 00:05:45 +01:00
Richard Feldman
86c14d5c55
Merge pull request #797 from rtfeldman/better-top-level-thunks
TEA-style applications!
2020-12-13 18:39:30 -05:00
Folkert
f00bd9ba01 fix refcount bug
closures were not incremented, but were decremented. This lead to memory corruption
2020-12-13 19:57:51 +01:00
Chadtech
4dbd4fa893 More instances of Map renamed to Dict 2020-12-08 01:40:08 -05:00
Folkert
0a8415b48e fix closure not decremented 2020-12-02 22:51:16 +01:00
Folkert
8013af7e97 change representation of list/str 2020-11-21 22:50:33 +01:00
Folkert
e30893b66e round up alignment to ptr_bytes 2020-11-19 22:10:02 +01:00
Folkert
5ce8a665f0 add finalize everywhere, and fix some oversights 2020-11-18 20:08:43 +01:00
Folkert
b85f1e4128 add Safety docs to unsafe function 2020-11-17 20:01:38 +01:00
Folkert
9198638c23 allocate taking alignment into account 2020-11-17 20:01:38 +01:00
Folkert
e02cc3af2f use new decrement 2020-11-17 20:01:38 +01:00
Folkert
b2d1354373 use new increment 2020-11-17 20:01:38 +01:00
Folkert
64dd9cc1a9 improvements 2020-11-17 20:01:38 +01:00
Folkert
c007b39105 factor out refcounting operations 2020-11-17 20:01:38 +01:00