]> gitweb.factorcode.org Git - factor.git/blob - vm/code_heap.hpp
Merge branch 'master' of git://factorcode.org/git/factor
[factor.git] / vm / code_heap.hpp
1 namespace factor
2 {
3
4 /* compiled code */
5 extern heap code;
6
7 void init_code_heap(cell size);
8
9 bool in_code_heap_p(cell ptr);
10
11 void jit_compile_word(cell word, cell def, bool relocate);
12
13 typedef void (*code_heap_iterator)(code_block *compiled);
14
15 void iterate_code_heap(code_heap_iterator iter);
16
17 void copy_code_heap_roots();
18
19 PRIMITIVE(modify_code_heap);
20
21 PRIMITIVE(code_room);
22
23 void compact_code_heap();
24
25 inline static void check_code_pointer(cell ptr)
26 {
27 #ifdef FACTOR_DEBUG
28         assert(in_code_heap_p(ptr));
29 #endif
30 }
31
32 }