Commit graph

21 commits

Author SHA1 Message Date
Leonardo de Moura
dfd1f23030 fix: avoid unnecessary page allocation
When import objects deleted by other threads, we may add elements to
`p` free list.
2020-11-29 13:33:59 -08:00
Leonardo de Moura
6dd3616298 fix: import pending objects *before* moving segments
@Kha I stopped getting the assertion violation after this fix.
There is another unrelated issue that I will fix in a separate commit.
2020-11-29 13:26:10 -08:00
Sebastian Ullrich
3b8d473188 fix: alloc: do not forget about orphaned pages 2020-09-29 08:01:10 -07:00
Leonardo de Moura
2f1ec93289 chore: move runtime implementation to src/runtime 2020-05-22 14:35:16 -07:00
Leonardo de Moura
1a77ee4f89 chore: delete old runtime directory 2020-05-18 11:33:18 -07:00
Leonardo de Moura
8bdca35282 chore: use #include <lean/runtime/...> for runtime .h files 2020-05-18 11:30:07 -07:00
Leonardo de Moura
dcd15f3424 refactor(runtime): C backend 2019-08-24 07:40:38 -07:00
Leonardo de Moura
94c69fff2b feat(runtime/alloc): auxiliary functions for new runtime 2019-08-21 10:44:40 -07:00
Leonardo de Moura
45ed2995d4 chore(runtime): remove alloc_small 2019-08-15 09:09:44 -07:00
Leonardo de Moura
44bf885829 chore(runtime/alloc): simplify header file 2019-08-15 09:09:44 -07:00
Sebastian Ullrich
8fb004f917 fix(runtime/alloc): fix out-of-bounds pointer reported by ubsan 2019-07-26 12:39:35 -07:00
Leonardo de Moura
6bed0ca5b5 chore(library/compiler): style 2019-05-22 18:46:37 -07:00
Leonardo de Moura
48ed3c5307 feat(runtime): inline hot path small object allocation 2019-05-17 10:12:43 -07:00
Leonardo de Moura
5c7849a869 feat(runtime): eager heap initialization 2019-04-25 18:10:36 -07:00
Leonardo de Moura
eb2633a5f2 fix(runtime/alloc): segment recycling 2019-03-09 13:42:55 -08:00
Leonardo de Moura
8f6998acac fix(runtime/alloc): we may deallocate in a new thread before we allocated anything 2019-03-09 13:20:06 -08:00
Sebastian Ullrich
1e248013f7 chore(runtime/alloc): don't init heap if LEAN_SMALL_ALLOCATOR is off
makes tracking down leaks a bit nicer
2019-03-07 15:52:06 +01:00
Leonardo de Moura
333ba43266 feat(runtime): statistics
We can enabled runtime statistics by using cmake option `-D RUNTIME_STATS`.

cc @kha
2019-03-05 16:01:06 -08:00
Leonardo de Moura
f2ef0eb597 fix(runtime/alloc): bug at import_objs 2019-02-26 07:34:26 -08:00
Leonardo de Moura
a9458fdcb3 chore(runtime/alloc): remove incorrect assertion 2019-02-26 07:33:53 -08:00
Leonardo de Moura
4b44c5ce36 feat(runtime/object): small object allocator 2019-02-23 17:17:56 -08:00