factor/vm
Slava Pestov cf35ffb126 vm: fix problem in card marking if first block is free 2009-11-16 00:52:32 -06:00
..
Config.arm
Config.freebsd
Config.freebsd.x86.32
Config.freebsd.x86.64
Config.linux
Config.linux.arm
Config.linux.ppc
Config.linux.x86.32
Config.linux.x86.64
Config.macosx
Config.macosx.ppc
Config.macosx.x86.32
Config.macosx.x86.64
Config.netbsd
Config.netbsd.x86.32
Config.netbsd.x86.64
Config.openbsd
Config.openbsd.x86.32
Config.openbsd.x86.64
Config.ppc
Config.solaris
Config.solaris.x86.32
Config.solaris.x86.64
Config.unix
Config.windows
Config.windows.ce
Config.windows.ce.arm
Config.windows.nt
Config.windows.nt.x86.32
Config.windows.nt.x86.64
Config.x86.32
Config.x86.64
aging_collector.cpp vm: promote objects referenced from compiled code blocks directly to tenured in an aging collection 2009-11-01 23:14:34 -06:00
aging_collector.hpp vm: make some more ctors explicit just for kicks 2009-10-24 23:02:58 -05:00
aging_space.hpp vm: rewrite 'become' primitive so that it uses a slot visitor instead of GC 2009-11-05 19:03:51 -06:00
alien.cpp vm: rename gc_root to data_root, add code_root to fix a problem where code blocks would move underneath the PIC compiler if PIC compiler allocated enough 2009-11-02 18:10:34 -06:00
alien.hpp Moved PRIMITIVE and PRIMITIVE_FORWARDs to primitives.[ch]pp 2009-09-27 19:42:18 +01:00
allot.hpp New identity-hashcode primitive 2009-11-10 21:18:54 -06:00
arrays.cpp vm: fix GC safety issue in callers of unbox_array_size(), and change how disable-gc-events works so that it doesn't make a byte array that's too large 2009-11-11 05:21:03 -06:00
arrays.hpp vm: rename gc_root to data_root, add code_root to fix a problem where code blocks would move underneath the PIC compiler if PIC compiler allocated enough 2009-11-02 18:10:34 -06:00
asm.h
bignum.cpp Change data heap alignment to 16 bytes 2009-10-20 12:45:00 -05:00
bignum.hpp Big VM cleanup 2009-10-03 08:47:05 -05:00
bignumint.hpp removed a bunch of superflous blank lines 2009-09-24 08:02:14 +01:00
bitwise_hacks.hpp vm: minor cleanup 2009-11-08 06:08:17 -06:00
booleans.cpp vm: rename myvm and parent_vm instance variables to parent, clean up casts in primitive definitions 2009-10-18 20:31:59 -05:00
booleans.hpp vm: rename F to false_object, and rename T to true_object 2009-10-18 20:26:21 -05:00
bump_allocator.hpp vm: rewrite 'become' primitive so that it uses a slot visitor instead of GC 2009-11-05 19:03:51 -06:00
byte_arrays.cpp vm: fix GC safety issue in callers of unbox_array_size(), and change how disable-gc-events works so that it doesn't make a byte array that's too large 2009-11-11 05:21:03 -06:00
byte_arrays.hpp vm: fix GC safety issue in callers of unbox_array_size(), and change how disable-gc-events works so that it doesn't make a byte array that's too large 2009-11-11 05:21:03 -06:00
callbacks.cpp vm: rename userenv to special_objects 2009-10-23 00:33:53 -05:00
callbacks.hpp vm: rename myvm and parent_vm instance variables to parent, clean up casts in primitive definitions 2009-10-18 20:31:59 -05:00
callstack.cpp vm: rename gc_root to data_root, add code_root to fix a problem where code blocks would move underneath the PIC compiler if PIC compiler allocated enough 2009-11-02 18:10:34 -06:00
callstack.hpp vm: rename gc_root to data_root, add code_root to fix a problem where code blocks would move underneath the PIC compiler if PIC compiler allocated enough 2009-11-02 18:10:34 -06:00
code_block.cpp tools.time: overhaul 2009-11-05 01:07:59 -06:00
code_block.hpp vm: code heap compaction at runtime using compact-gc primitive 2009-10-16 11:39:35 -05:00
code_block_visitor.hpp New identity-hashcode primitive 2009-11-10 21:18:54 -06:00
code_heap.cpp Instead of bumping the definition counter every time in the VM, bump it only if stack effects changed or macros were redefined 2009-11-13 03:52:14 -06:00
code_heap.hpp vm: add primitives for getting at GC events, data-room and code-room primitives now return structs instead of arrays 2009-10-27 03:32:28 -05:00
code_roots.hpp vm: add two missing files 2009-11-02 18:11:12 -06:00
collector.hpp New identity-hashcode primitive 2009-11-10 21:18:54 -06:00
compaction.cpp New identity-hashcode primitive 2009-11-10 21:18:54 -06:00
compaction.hpp vm: data heap compaction work in progress 2009-10-24 04:18:33 -05:00
contexts.cpp vm/contexts: cleanup 2009-11-08 19:44:18 -06:00
contexts.hpp vm/contexts: cleanup 2009-11-08 19:44:18 -06:00
copying_collector.hpp vm: 4 bit tags, new representation of alien objects makes unbox-any-c-ptr more efficient (work in progress) 2009-11-02 04:25:54 -06:00
cpu-arm.S
cpu-arm.hpp Big VM cleanup 2009-10-03 08:47:05 -05:00
cpu-ppc.S vm: fix fixnum* overflow case for 4-bit tags 2009-11-03 21:40:47 -06:00
cpu-ppc.hpp removed VM_ASM_API_OVERFLOW (VM_ASM_API now regparm(3)) 2009-09-25 20:33:38 +01:00
cpu-x86.32.S Align stack pointer on non-Mac OS X x86-32 platforms, and use aligned loads/stores for SIMD values 2009-11-03 23:51:44 -06:00
cpu-x86.32.hpp removed VM_ASM_API_OVERFLOW (VM_ASM_API now regparm(3)) 2009-09-25 20:33:38 +01:00
cpu-x86.64.S Align stack pointer on non-Mac OS X x86-32 platforms, and use aligned loads/stores for SIMD values 2009-11-03 23:51:44 -06:00
cpu-x86.64.hpp removed VM_ASM_API_OVERFLOW (VM_ASM_API now regparm(3)) 2009-09-25 20:33:38 +01:00
cpu-x86.S Align stack pointer on non-Mac OS X x86-32 platforms, and use aligned loads/stores for SIMD values 2009-11-03 23:51:44 -06:00
cpu-x86.hpp Big VM cleanup 2009-10-03 08:47:05 -05:00
data_heap.cpp vm: fix problem in card marking if first block is free 2009-11-16 00:52:32 -06:00
data_heap.hpp vm: rewrite 'become' primitive so that it uses a slot visitor instead of GC 2009-11-05 19:03:51 -06:00
data_heap_checker.cpp vm: fix fencepost error in write barrier on large object allocation; fixes benchmark.sort crash 2009-11-11 19:31:18 -06:00
data_roots.hpp vm: faster data_root and <array> primitive 2009-11-06 05:30:37 -06:00
debug.cpp vm: fix fencepost error in write barrier on large object allocation; fixes benchmark.sort crash 2009-11-11 19:31:18 -06:00
debug.hpp Moved PRIMITIVE and PRIMITIVE_FORWARDs to primitives.[ch]pp 2009-09-27 19:42:18 +01:00
dispatch.cpp tools.time: overhaul 2009-11-05 01:07:59 -06:00
dispatch.hpp tools.time: overhaul 2009-11-05 01:07:59 -06:00
errors.cpp vm: minor fixes after code review 2009-11-03 04:56:58 -06:00
errors.hpp Remove unused error from VM 2009-11-05 21:52:31 -06:00
factor.cpp update vm for startup branch 2009-11-15 02:53:02 -06:00
factor.hpp thread_id is a pthread_t on unix 2009-09-16 08:20:51 +01:00
factor.rs
ffi_test.c
ffi_test.h
float_bits.hpp
free_list.cpp Revert "Revert "vm: faster allocation in tenured space and code heap. If small free list exhausted, allocate a 1kb block and split it up instead of searching larger free lists"" 2009-11-11 19:33:50 -06:00
free_list.hpp Revert "Revert "vm: faster allocation in tenured space and code heap. If small free list exhausted, allocate a 1kb block and split it up instead of searching larger free lists"" 2009-11-11 19:33:50 -06:00
free_list_allocator.hpp vm: remove some dead code 2009-11-05 19:32:26 -06:00
full_collector.cpp vm: record compaction events correctly 2009-11-13 09:29:21 -06:00
full_collector.hpp vm: make some more ctors explicit just for kicks 2009-10-24 23:02:58 -05:00
gc.cpp vm: fix GC safety issue in callers of unbox_array_size(), and change how disable-gc-events works so that it doesn't make a byte array that's too large 2009-11-11 05:21:03 -06:00
gc.hpp Revert "Revert "vm: faster allocation in tenured space and code heap. If small free list exhausted, allocate a 1kb block and split it up instead of searching larger free lists"" 2009-11-11 19:33:50 -06:00
generic_arrays.hpp vm: rename gc_root to data_root, add code_root to fix a problem where code blocks would move underneath the PIC compiler if PIC compiler allocated enough 2009-11-02 18:10:34 -06:00
image.cpp vm: fix fencepost error in write barrier on large object allocation; fixes benchmark.sort crash 2009-11-11 19:31:18 -06:00
image.hpp vm: remove promotion strategy, clean up compaction code 2009-11-01 03:47:09 -06:00
inline_cache.cpp tools.time: overhaul 2009-11-05 01:07:59 -06:00
inline_cache.hpp Moved PRIMITIVE and PRIMITIVE_FORWARDs to primitives.[ch]pp 2009-09-27 19:42:18 +01:00
io.cpp vm: rename gc_root to data_root, add code_root to fix a problem where code blocks would move underneath the PIC compiler if PIC compiler allocated enough 2009-11-02 18:10:34 -06:00
io.hpp Moved PRIMITIVE and PRIMITIVE_FORWARDs to primitives.[ch]pp 2009-09-27 19:42:18 +01:00
jit.cpp vm: rename gc_root to data_root, add code_root to fix a problem where code blocks would move underneath the PIC compiler if PIC compiler allocated enough 2009-11-02 18:10:34 -06:00
jit.hpp vm: rename gc_root to data_root, add code_root to fix a problem where code blocks would move underneath the PIC compiler if PIC compiler allocated enough 2009-11-02 18:10:34 -06:00
layouts.hpp vm: fix fencepost error in write barrier on large object allocation; fixes benchmark.sort crash 2009-11-11 19:31:18 -06:00
mach_signal.cpp Merge branch 'master' into new_gc 2009-10-22 05:40:57 -05:00
mach_signal.hpp removed a bunch of superflous blank lines 2009-09-24 08:02:14 +01:00
main-unix.cpp thread_id is a pthread_t on unix 2009-09-16 08:20:51 +01:00
main-windows-ce.cpp
main-windows-nt.cpp thread_id is a pthread_t on unix 2009-09-16 08:20:51 +01:00
mark_bits.hpp vm: speed up some bit twiddling on 32-bit 2009-11-05 19:29:27 -06:00
master.hpp vm: rewrite 'become' primitive so that it uses a slot visitor instead of GC 2009-11-05 19:03:51 -06:00
math.cpp vm: minor fixes after code review 2009-11-03 04:56:58 -06:00
math.hpp vm: various minor optimizations speeding up gc0 and dispatch1 benchmarks, as well as bootstrap 2009-10-31 02:30:48 -05:00
nursery_collector.cpp vm: fix 'become' when aging space is empty 2009-11-05 23:53:53 -06:00
nursery_collector.hpp vm: make some more ctors explicit just for kicks 2009-10-24 23:02:58 -05:00
nursery_space.hpp vm: make some more ctors explicit just for kicks 2009-10-24 23:02:58 -05:00
object_start_map.cpp vm: speed up some bit twiddling on 32-bit 2009-11-05 19:29:27 -06:00
object_start_map.hpp vm: faster sweep algorithm 2009-11-01 20:24:25 -06:00
objects.cpp Faster identity-hashcode primitive; fast path now opencoded by the compiler 2009-11-11 02:27:19 -06:00
objects.hpp update vm for startup branch 2009-11-15 02:53:02 -06:00
os-freebsd-x86.32.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-freebsd-x86.64.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-freebsd.cpp removed vm ptr from mach_signal and some other places 2009-09-16 08:20:51 +01:00
os-freebsd.hpp
os-genunix.cpp Remove two small memory leaks on Linux 2009-10-03 18:18:07 +02:00
os-genunix.hpp vm: fix compilation 2009-10-22 06:38:02 -04:00
os-linux-arm.cpp Removed VM_PTR macros. All builds reentrant by default 2009-10-14 19:14:57 +01:00
os-linux-arm.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-linux-ppc.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-linux-x86.32.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-linux-x86.64.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-linux.cpp vm: rename myvm and parent_vm instance variables to parent, clean up casts in primitive definitions 2009-10-18 20:31:59 -05:00
os-linux.hpp
os-macosx-ppc.hpp vm: fix compilation 2009-10-22 06:38:02 -04:00
os-macosx-x86.32.hpp vm: fix compilation 2009-10-22 06:38:02 -04:00
os-macosx-x86.64.hpp vm: fix compilation 2009-10-22 06:38:02 -04:00
os-macosx.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-macosx.mm vm: rename userenv to special_objects 2009-10-23 00:33:53 -05:00
os-netbsd-x86.32.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-netbsd-x86.64.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-netbsd.cpp vm/os-netbsd.cpp: fix double-free error 2009-10-07 21:49:04 -05:00
os-netbsd.hpp
os-openbsd-x86.32.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-openbsd-x86.64.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-openbsd.cpp
os-solaris-x86.32.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-solaris-x86.64.hpp vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer 2009-10-22 05:22:59 -05:00
os-solaris.cpp
os-unix.cpp vm: fix compilation 2009-10-22 06:38:02 -04:00
os-unix.hpp Merge branch 'master' of git://factorcode.org/git/factor 2009-10-03 18:27:38 -05:00
os-windows-ce.cpp Moved PRIMITIVE and PRIMITIVE_FORWARDs to primitives.[ch]pp 2009-09-27 19:42:18 +01:00
os-windows-ce.hpp
os-windows-nt.32.hpp
os-windows-nt.64.hpp
os-windows-nt.cpp Removed VM_PTR macros. All builds reentrant by default 2009-10-14 19:14:57 +01:00
os-windows-nt.hpp Big VM cleanup 2009-10-03 08:47:05 -05:00
os-windows.cpp vm: allocate stacks and data heap segments without execute permissions 2009-10-16 05:16:12 -05:00
os-windows.hpp vm: use iostreams instead of printf for debug messages, clean up a few things 2009-10-21 20:12:57 -05:00
platform.hpp
primitives.cpp Faster identity-hashcode primitive; fast path now opencoded by the compiler 2009-11-11 02:27:19 -06:00
primitives.hpp vm: rename myvm and parent_vm instance variables to parent, clean up casts in primitive definitions 2009-10-18 20:31:59 -05:00
profiler.cpp vm: fix crash in profiler 2009-11-06 01:22:53 -06:00
profiler.hpp Moved PRIMITIVE and PRIMITIVE_FORWARDs to primitives.[ch]pp 2009-09-27 19:42:18 +01:00
quotations.cpp vm: rewrite 'become' primitive so that it uses a slot visitor instead of GC 2009-11-05 19:03:51 -06:00
quotations.hpp vm: rename gc_root to data_root, add code_root to fix a problem where code blocks would move underneath the PIC compiler if PIC compiler allocated enough 2009-11-02 18:10:34 -06:00
run.cpp vm: rewrite 'become' primitive so that it uses a slot visitor instead of GC 2009-11-05 19:03:51 -06:00
run.hpp vm: rewrite 'become' primitive so that it uses a slot visitor instead of GC 2009-11-05 19:03:51 -06:00
segments.hpp vm: allocate stacks and data heap segments without execute permissions 2009-10-16 05:16:12 -05:00
slot_visitor.hpp vm: faster data_root and <array> primitive 2009-11-06 05:30:37 -06:00
stacks.hpp
strings.cpp vm: fix GC safety issue in callers of unbox_array_size(), and change how disable-gc-events works so that it doesn't make a byte array that's too large 2009-11-11 05:21:03 -06:00
strings.hpp vm: use iostreams instead of printf for debug messages, clean up a few things 2009-10-21 20:12:57 -05:00
tagged.hpp New identity-hashcode primitive 2009-11-10 21:18:54 -06:00
tenured_space.hpp vm: faster sweep algorithm 2009-11-01 20:24:25 -06:00
to_tenured_collector.cpp vm: 4 bit tags, new representation of alien objects makes unbox-any-c-ptr more efficient (work in progress) 2009-11-02 04:25:54 -06:00
to_tenured_collector.hpp vm: make some more ctors explicit just for kicks 2009-10-24 23:02:58 -05:00
tuples.cpp vm: rename gc_root to data_root, add code_root to fix a problem where code blocks would move underneath the PIC compiler if PIC compiler allocated enough 2009-11-02 18:10:34 -06:00
tuples.hpp vm: move binary_payload_start() method from factor_vm to object class 2009-10-24 04:27:45 -05:00
utilities.cpp vm: use iostreams instead of printf for debug messages, clean up a few things 2009-10-21 20:12:57 -05:00
utilities.hpp Merge optimizations from master branch 2009-10-31 03:02:19 -05:00
vm.cpp tools.time: overhaul 2009-11-05 01:07:59 -06:00
vm.hpp Merge branch 'master' into startup 2009-11-15 02:52:50 -06:00
words.cpp vm: minor fixes after code review 2009-11-03 04:56:58 -06:00
words.hpp vm: change code heap layout somewhat, remove unused allocation bitmap from mark_bits 2009-10-20 09:37:24 -05:00
write_barrier.hpp vm: new card marking implementation supports marking partial objects 2009-10-13 21:16:04 -05:00