Phil Dawes
|
74e99cb6fb
|
moved allot_markers_offset variable into vm struct
|
2009-09-16 08:16:31 +01:00 |
Phil Dawes
|
fd72e140d2
|
nursery global variable moved into vm
|
2009-09-16 08:16:31 +01:00 |
Phil Dawes
|
f9f1031dd8
|
moved stack_chain into vm struct
|
2009-09-16 08:16:31 +01:00 |
Phil Dawes
|
2c58deb8e5
|
removed save_stacks global function
|
2009-09-16 08:16:30 +01:00 |
Phil Dawes
|
53aa98902e
|
throw_impl now forwards the vm ptr
|
2009-09-16 08:16:30 +01:00 |
Phil Dawes
|
60d0300876
|
passing vm ptr to lazy_jit_compile mostly working
|
2009-09-16 08:16:30 +01:00 |
Phil Dawes
|
1fda8af73b
|
Added %vm-invoke to pass vm ptr to vm functions (x86.32 only, otherwise uses singleton vm)
|
2009-09-16 08:16:30 +01:00 |
Phil Dawes
|
df37e010d4
|
vm ptr passed to primitives on X86.32 (other cpus still use singleton vm ptr)
|
2009-09-16 08:16:30 +01:00 |
Phil Dawes
|
b70e60eaea
|
added VM relocation type
|
2009-09-16 08:16:30 +01:00 |
Phil Dawes
|
c290eb67ab
|
moved os-windows-nt functions into the vm
|
2009-09-16 08:16:30 +01:00 |
Phil Dawes
|
9ec000c570
|
Dev checkpoint
|
2009-09-16 08:16:29 +01:00 |
Phil Dawes
|
1431ae806f
|
moved some os-windows functions into the vm
|
2009-09-16 08:16:29 +01:00 |
Phil Dawes
|
3fef06d21d
|
moved align_page into vm
|
2009-09-16 08:16:29 +01:00 |
Phil Dawes
|
fa34bc858c
|
Dev checkpoint
|
2009-09-16 08:16:29 +01:00 |
Phil Dawes
|
145c90c7f4
|
got os-macosx.mm to compile
|
2009-09-16 08:16:29 +01:00 |
Phil Dawes
|
5f7e6801b0
|
Fixed typo from upstream
|
2009-09-16 08:16:29 +01:00 |
Phil Dawes
|
11bde92057
|
removed some global functions from errors.cpp
|
2009-09-16 08:16:29 +01:00 |
Phil Dawes
|
27a50886d7
|
removed some global functions from utilities.cpp
|
2009-09-16 08:16:29 +01:00 |
Phil Dawes
|
23a5207e90
|
removed some global functions from inline_cache.cpp
|
2009-09-16 08:16:28 +01:00 |
Phil Dawes
|
6727a19ba8
|
removed some global functions from dispatch.cpp
|
2009-09-16 08:16:28 +01:00 |
Phil Dawes
|
3ea6e4c0bc
|
removed some global functions from quotations.cpp
|
2009-09-16 08:16:28 +01:00 |
Phil Dawes
|
16db3255e7
|
removed some global functions from alien.cpp
|
2009-09-16 08:16:28 +01:00 |
Phil Dawes
|
0e49c2848c
|
removed some global functions from callstack.cpp
|
2009-09-16 08:16:28 +01:00 |
Phil Dawes
|
4bdb4853ca
|
removed some global functions from image.cpp
|
2009-09-16 08:16:28 +01:00 |
Phil Dawes
|
ff3b226908
|
removed some global functions from io.cpp
|
2009-09-16 08:16:28 +01:00 |
Phil Dawes
|
c4b2468cb2
|
removed some global functions from math.cpp
|
2009-09-16 08:16:28 +01:00 |
Phil Dawes
|
7dc4bcb9b2
|
removed global functions from words.cpp
|
2009-09-16 08:16:28 +01:00 |
Phil Dawes
|
b1783f2db4
|
removed global functions from byte_arrays.cpp and tuples.cpp
|
2009-09-16 08:16:27 +01:00 |
Phil Dawes
|
af1431e364
|
removed global functions from strings.cpp
|
2009-09-16 08:16:27 +01:00 |
Phil Dawes
|
f6fcb6d1ec
|
removed global functions from arrays.cpp
|
2009-09-16 08:16:27 +01:00 |
Phil Dawes
|
f436d4ccff
|
removed global functions from debug.cpp
|
2009-09-16 08:16:27 +01:00 |
Phil Dawes
|
abee922604
|
removed global functions from code_block.cpp
|
2009-09-16 08:16:27 +01:00 |
Phil Dawes
|
caef18de95
|
removed global functions from bignum.cpp
|
2009-09-16 08:16:27 +01:00 |
Phil Dawes
|
01ae514146
|
removed global functions from profiler
|
2009-09-16 08:16:27 +01:00 |
Phil Dawes
|
4f273e2020
|
removed some global functions from code_heap
|
2009-09-16 08:16:27 +01:00 |
Phil Dawes
|
31a03eab11
|
removed global functions from code_gc
|
2009-09-16 08:16:26 +01:00 |
Phil Dawes
|
04094f3b64
|
removed global functions from data_gc
|
2009-09-16 08:16:26 +01:00 |
Phil Dawes
|
e65a574a47
|
removed non-primitive global functions from data_heap
|
2009-09-16 08:16:26 +01:00 |
Phil Dawes
|
fc9558d954
|
Dev checkpoint
|
2009-09-16 08:16:26 +01:00 |
Phil Dawes
|
537402274e
|
vm ptr passed to untag_check
|
2009-09-16 08:16:26 +01:00 |
Phil Dawes
|
967bfa63f4
|
moved tagged template code back into tagged.hpp header
|
2009-09-16 08:16:26 +01:00 |
Phil Dawes
|
9e4b483993
|
split the moved inline stuff into separate header file
|
2009-09-16 08:16:26 +01:00 |
Phil Dawes
|
5600f969b4
|
moved tagged.hpp templates to vm.hpp
|
2009-09-16 08:16:26 +01:00 |
Phil Dawes
|
1c02e9eda0
|
moved more math.hpp inline functions to vm
|
2009-09-16 08:16:25 +01:00 |
Phil Dawes
|
737e69de08
|
removed stub function from run
|
2009-09-16 08:16:25 +01:00 |
Phil Dawes
|
c045a2f9d5
|
removed some stub functions from contexts
|
2009-09-16 08:16:25 +01:00 |
Phil Dawes
|
e80c9f90d6
|
updated function ptr calls (iterators etc..) to take a vm parameter
|
2009-09-16 08:16:25 +01:00 |
Phil Dawes
|
03ecc58bbf
|
Dev checkpoint
|
2009-09-16 08:16:25 +01:00 |
Phil Dawes
|
d2fd7bd3e1
|
Dev checkpoint
|
2009-09-16 08:16:25 +01:00 |
Phil Dawes
|
23deff22fe
|
Dev checkpoint
|
2009-09-16 08:16:25 +01:00 |
Phil Dawes
|
50875c77f3
|
Dev checkpoint
|
2009-09-16 08:16:25 +01:00 |
Phil Dawes
|
6c566717ba
|
moved global state from math into vm
|
2009-09-16 08:16:24 +01:00 |
Phil Dawes
|
4188b0fde3
|
moved global state from inline_cache into vm
|
2009-09-16 08:16:24 +01:00 |
Phil Dawes
|
77db2b7821
|
moved global state from dispatch into vm
|
2009-09-16 08:16:24 +01:00 |
Phil Dawes
|
d9e354654a
|
moved global state from debug into vm
|
2009-09-16 08:16:24 +01:00 |
Phil Dawes
|
7852a5efad
|
moved global state from code_heap into vm
|
2009-09-16 08:16:24 +01:00 |
Phil Dawes
|
67a7e3ebf7
|
moved global state from data_heap into vm
|
2009-09-16 08:16:24 +01:00 |
Phil Dawes
|
e974809337
|
moved global state from data_gc into vm
|
2009-09-16 08:16:24 +01:00 |
Phil Dawes
|
4ff57d8acf
|
moved global state from contexts and run into vm
Also renamed template type from T to TYPE to prevent clash with vm::T (true)
|
2009-09-16 08:16:24 +01:00 |
Phil Dawes
|
9e8538d1ca
|
reordered master to untangle dependency chain a bit
|
2009-09-16 08:16:24 +01:00 |
Phil Dawes
|
31377b7ae4
|
moved callstack.hpp inline functions to vm.hpp
|
2009-09-16 08:16:23 +01:00 |
Phil Dawes
|
2bf80c0bf6
|
moved math.hpp inline functions to vm.hpp
|
2009-09-16 08:16:23 +01:00 |
Phil Dawes
|
f2cb6e6f6f
|
moved byte_arrays.hpp inline functions to vm.hpp
|
2009-09-16 08:16:23 +01:00 |
Phil Dawes
|
5a9ff7fba9
|
moved arrays.hpp inline functions to vm.hpp
|
2009-09-16 08:16:23 +01:00 |
Phil Dawes
|
4ba0f01c0a
|
moved generic_arrays inline functions to vm.hpp
|
2009-09-16 08:16:23 +01:00 |
Phil Dawes
|
6d1ee34188
|
moved data_gc and local_roots inline functions to vm.hpp
|
2009-09-16 08:16:23 +01:00 |
Phil Dawes
|
5c89a644c5
|
moved write_barrier inline function impls to vm.hpp
|
2009-09-16 08:16:23 +01:00 |
Phil Dawes
|
09f063d6fc
|
moved callstack.hpp functions to vm
|
2009-09-16 08:16:23 +01:00 |
Phil Dawes
|
f3e67817cc
|
moved math.hpp functions to vm
|
2009-09-16 08:16:22 +01:00 |
Phil Dawes
|
7d097b387c
|
moved arrays.hpp functions to vm
|
2009-09-16 08:16:22 +01:00 |
Phil Dawes
|
83a73b9083
|
moved generic_array.hpp functions to vm
|
2009-09-16 08:16:22 +01:00 |
Phil Dawes
|
cdc7250d90
|
moved write_barrier functions to vm
|
2009-09-16 08:16:22 +01:00 |
Phil Dawes
|
95363d7744
|
moved data_gc templates and inline functions to vm
|
2009-09-16 08:16:22 +01:00 |
Phil Dawes
|
05f4fcbf1c
|
moved reallot_array into vm
|
2009-09-16 08:16:22 +01:00 |
Phil Dawes
|
f8d56f69c1
|
added vm member to gc_bignum
|
2009-09-16 08:16:22 +01:00 |
Phil Dawes
|
ebbf2151fe
|
added vm member to gc_root and growable arrays
|
2009-09-16 08:16:22 +01:00 |
Phil Dawes
|
9282824ccb
|
added vm member to jit classes
|
2009-09-16 08:16:21 +01:00 |
Phil Dawes
|
16c3591d11
|
moved local roots state to vm, shuffled includes around
|
2009-09-16 08:16:21 +01:00 |
Phil Dawes
|
cddf989ac3
|
factorvm initialised globally
|
2009-09-16 08:16:21 +01:00 |
Phil Dawes
|
eefa976e6f
|
moved utilities.cpp functions to vm
|
2009-09-16 08:16:21 +01:00 |
Phil Dawes
|
b38191ae0e
|
moved factor.cpp functions to vm
|
2009-09-16 08:16:21 +01:00 |
Phil Dawes
|
502f97dc69
|
moved inline_cache functions to vm
|
2009-09-16 08:16:21 +01:00 |
Phil Dawes
|
35a62b0453
|
moved dispatch functions to vm
|
2009-09-16 08:16:21 +01:00 |
Phil Dawes
|
fd374222bf
|
moved quotations functions to vm
|
2009-09-16 08:16:21 +01:00 |
Phil Dawes
|
9ffb1e34a6
|
moved alien functions to vm
|
2009-09-16 08:16:21 +01:00 |
Phil Dawes
|
5c261e4590
|
moved image functions to vm
|
2009-09-16 08:16:20 +01:00 |
Phil Dawes
|
d02dcfd8f2
|
moved code_heap functions to vm
|
2009-09-16 08:16:20 +01:00 |
Phil Dawes
|
5f66fd18e9
|
moved code_block functions to vm
|
2009-09-16 08:16:20 +01:00 |
Phil Dawes
|
21b7856402
|
moved code_gc functions to vm
|
2009-09-16 08:16:20 +01:00 |
Phil Dawes
|
e8cab52116
|
moved io functions to vm
|
2009-09-16 08:16:20 +01:00 |
Phil Dawes
|
eea9b4bdb4
|
moved math functions to vm
|
2009-09-16 08:16:20 +01:00 |
Phil Dawes
|
af1aa44a1a
|
Dev checkpoint
|
2009-09-16 08:16:20 +01:00 |
Phil Dawes
|
2ffcd683e1
|
moved words functions to vm
|
2009-09-16 08:16:20 +01:00 |
Phil Dawes
|
81d2fbb906
|
added tuples fns to vm
|
2009-09-16 08:16:19 +01:00 |
Phil Dawes
|
5a26f2c095
|
added byte_arrays fns to vm
|
2009-09-16 08:16:19 +01:00 |
Phil Dawes
|
3db22680ac
|
added boolean fns to vm
|
2009-09-16 08:16:19 +01:00 |
Phil Dawes
|
536820b1a6
|
moved strings fns to vm
|
2009-09-16 08:16:19 +01:00 |
Phil Dawes
|
64474fa6f9
|
moved arrays fns into vm
|
2009-09-16 08:16:19 +01:00 |
Phil Dawes
|
4b02f39ce7
|
moved debug functions into vm struct
|
2009-09-16 08:16:19 +01:00 |
Phil Dawes
|
8671b2897a
|
moved data_gc fns over to vm struct
|
2009-09-16 08:16:19 +01:00 |
Phil Dawes
|
9e1b45f768
|
moved data_heap fns to vm struct
|
2009-09-16 08:16:19 +01:00 |
Phil Dawes
|
b73b540290
|
moved bignum functions to vm
|
2009-09-16 08:16:18 +01:00 |
Phil Dawes
|
2dd9e92778
|
Dev checkpoint
|
2009-09-16 08:16:18 +01:00 |
Phil Dawes
|
ef53b8cf6a
|
Dev checkpoint
|
2009-09-16 08:16:18 +01:00 |
Phil Dawes
|
ad7765b71a
|
Dev checkpoint
|
2009-09-16 08:16:18 +01:00 |
Phil Dawes
|
1db06cdf53
|
moved errors.cpp functions to vm
|
2009-09-16 08:16:18 +01:00 |
Phil Dawes
|
4cc2a5f844
|
moved profiling fns into vm
|
2009-09-16 08:16:18 +01:00 |
Phil Dawes
|
7e34866254
|
move functions from run.cpp into vm
|
2009-09-16 08:16:18 +01:00 |
Phil Dawes
|
7200c6a0ae
|
moved contexts functions into vm
|
2009-09-16 08:16:18 +01:00 |
Phil Dawes
|
99d01a3a88
|
added vm singleton
|
2009-09-16 08:16:18 +01:00 |
Phil Dawes
|
c627ed7a22
|
added stub PRIMITIVE_GETVM macro
|
2009-09-16 08:16:17 +01:00 |
Phil Dawes
|
c58b0ba73c
|
Empty vm struct
|
2009-09-16 08:16:17 +01:00 |
Slava Pestov
|
85077cd27b
|
vm: update Config.netbsd for NetBSD 5.0
|
2009-09-15 00:22:19 -05:00 |
Joe Groff
|
eadf1bc9d5
|
missed a few PPC status bits that needed clearing
|
2009-09-14 15:17:36 -05:00 |
Joe Groff
|
0c690a62a1
|
linux 32 typo
|
2009-09-14 13:21:46 -05:00 |
Joe Groff
|
bbea60809d
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-09-14 12:30:24 -05:00 |
Joe Groff
|
7983c0ba47
|
more secret sauce to tease mxcsr out of linux-x86.32 ucontext
|
2009-09-14 12:30:10 -05:00 |
Joe Groff
|
082783d799
|
use secret sauce to clear MXCSR in win32 context, and handle secret STATUS_FLOAT_MULTIPLE_* SEH codes raised by SSE traps
|
2009-09-14 12:02:02 -05:00 |
Joe Groff
|
ed1a67c26e
|
more freebsd compilation fixes
|
2009-09-14 09:56:38 -05:00 |
Joe Groff
|
a84086e39a
|
fix compilation on linux 32
|
2009-09-14 09:48:32 -05:00 |
Slava Pestov
|
3db631716f
|
vm: More indentation fixes
|
2009-09-14 03:14:48 -05:00 |
Slava Pestov
|
78e143b13c
|
vm: fix indentation in Joe's changes
|
2009-09-14 03:09:03 -05:00 |
Joe Groff
|
abb3c71340
|
fix compilation on freebsd
|
2009-09-14 00:00:01 -05:00 |
Joe Groff
|
0284a4b6f8
|
save the FP status out of the signal context and use it as part of the fp trap factor exception. clear the FP status before continuing after an exception
|
2009-09-13 23:39:12 -05:00 |
Joe Groff
|
7d875f493a
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-09-13 14:42:28 -05:00 |
Joe Groff
|
5fa31b5dea
|
save vector registers, save control register, and enable denormals before calling factor in powerpc c_to_factor()
|
2009-09-13 13:18:24 -05:00 |
Slava Pestov
|
b6e3336e02
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-09-13 00:09:09 -05:00 |
Slava Pestov
|
427bfb4ab8
|
math: add unordered comparison operators u< u<= u> u>= which behave exactly like < <= > >= except no floating point exceptions are set if one or both inputs are NaNs; also add efficient intrinsic for unordered? predicate, and fix propagation type functions for abs, absq, and bitnot
|
2009-09-12 22:20:13 -05:00 |
Joe Groff
|
1a19221159
|
set altivec denormal flag when with-denormal-mode is used
|
2009-09-12 20:39:41 -05:00 |
Slava Pestov
|
4c0bd2e77d
|
vm: fix fp_trap_error() so that it can work properly in signal handlers
|
2009-09-12 18:15:16 -05:00 |
Slava Pestov
|
af85e17366
|
cpu-x86: clear the x87 stack when rewinding; fixes math.floats.env failures on Linux
|
2009-09-12 16:59:30 -04:00 |
Slava Pestov
|
2e88ff775a
|
Fix debug build
|
2009-09-11 20:33:38 -05:00 |
Joe Groff
|
0a116c9198
|
handle floating-point exceptions on windows
|
2009-09-10 16:10:25 -05:00 |
Joe Groff
|
51df8d70c4
|
fix set_x87_env assembly code for x86.32
|
2009-09-08 23:15:49 -05:00 |
Joe Groff
|
131fa2405d
|
fix ppc assembler syntax
|
2009-09-08 21:01:33 -05:00 |
Joe Groff
|
e1841cc8d4
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-09-08 15:37:32 -05:00 |
Joe Groff
|
4f43af5b7d
|
factor out x86 and ppc backends for math.floats.env; update both x87 and SSE state on x86
|
2009-09-08 15:36:53 -05:00 |
Slava Pestov
|
bd447dca7b
|
VM: use an std::vector instead of a fixed-size buffer for GC roots
|
2009-09-08 14:21:09 -05:00 |
Slava Pestov
|
0002e58c58
|
vm/cpu-x86.S: don't detect SSSE3, SSE4.1 or SSE4.2 yet
|
2009-09-08 14:06:19 -05:00 |
Joe Groff
|
0b6f017840
|
Send FP trap signals to Factor as a different vm-error type
|
2009-09-06 08:44:25 -05:00 |
Joe Groff
|
327c9eb7b8
|
math.floats.env vocab with words to control the floating-point environment
add some functions to the VM to grab and set the fpu control register
|
2009-09-05 19:48:13 -05:00 |
Slava Pestov
|
f811208271
|
Detect SSE version and enable the correct set of SIMD intrinsics
|
2009-09-03 03:28:38 -05:00 |
Joe Groff
|
6d65bc593f
|
on OS X, rather than define _XOPEN_SOURCE, use the non-deprecated sys/ucontext.h header instead
|
2009-08-26 16:44:25 -05:00 |
Joe Groff
|
a1ffc727b1
|
add -D_XOPEN_SOURCE flag to suppress ucontext deprecation errors on snow leopard. add -m32 flag when compiling 32-bit because snow leopard gcc defaults to x86_64
|
2009-08-26 16:29:55 -05:00 |
Philipp Brüschweiler
|
18240b0219
|
misc small documentation fixes, some fixes for factor.vim, changed permissions of vm/* to 644
|
2009-08-10 21:33:07 +02:00 |
Slava Pestov
|
4490fc6b81
|
image.cpp: don't try to make code heap bigger than p->code_size since on PPC this will cause crashes if the image has a code heap of exactly 32Mb
|
2009-07-31 23:23:29 -05:00 |
Slava Pestov
|
0fc29887f5
|
debug.cpp: fep now prints return addresses in call stack dump
|
2009-07-29 19:28:58 -05:00 |
Slava Pestov
|
39a70db831
|
Improve code generation for shift word: add intrinsics for fixnum-shift-fast in the case where the shift count is not constant, transform 1 swap shift into a more overflow check with open-coded fast case, transform bitand into fixnum-bitand in more cases
|
2009-07-16 23:50:48 -05:00 |
Slava Pestov
|
a82ee418d2
|
alien.libraries: add remove-library word, fix dlclose and dll-valid? VM primitives
|
2009-07-09 06:51:31 -05:00 |
Slava Pestov
|
7aca076408
|
GC checks now save and restore registers
|
2009-06-02 18:23:47 -05:00 |
Slava Pestov
|
3de85158de
|
Merge branch 'master' into global_optimization
|
2009-06-01 03:12:32 -05:00 |
Slava Pestov
|
096803e58f
|
Redo compiler.codegen.fixup and get %dispatch to work
|
2009-06-01 02:32:36 -05:00 |
Slava Pestov
|
64114947d2
|
Various improvements aimed at getting local optimization regressions fixed:
- Rename _gc to ##gc
- Absolute labels are now supported
- Generate _dispatch-label
|
2009-05-31 23:28:08 -05:00 |
Slava Pestov
|
ac0bd37a6b
|
Fix rdtsc on Windows
|
2009-05-31 15:16:40 -05:00 |
Slava Pestov
|
e2b8b04d15
|
cpu.x86.features: add RDTSC support. This is a new vocabulary with words: sse2? instruction-counter count-instructions
|
2009-05-31 15:02:14 -05:00 |
Slava Pestov
|
2faaa66599
|
Fix compile error on GCC 4.x
|
2009-05-20 20:01:21 -04:00 |
Slava Pestov
|
9bea42405a
|
callstack>array primitive was not GC safe
|
2009-05-20 18:52:21 -05:00 |
Slava Pestov
|
c4162971e0
|
callstack>array was keeping an uninitialized array around across potential GCs; add more assertions
|
2009-05-17 18:18:07 -05:00 |
Slava Pestov
|
2bcff4ac5c
|
os-linux.cpp: inotify wrappers should be VM_C_API
|
2009-05-13 03:49:51 -05:00 |
Slava Pestov
|
7d02d8b9d7
|
More VM cleanups
|
2009-05-13 01:08:16 -05:00 |
Slava Pestov
|
d2c138150b
|
Fix FEP if there are too many words in the image, clean up some VM code
|
2009-05-13 00:58:54 -05:00 |
Slava Pestov
|
92966f1423
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-05-12 16:23:26 -05:00 |
Slava Pestov
|
462a9a4a19
|
Link VM with OpenSSL on NetBSD otherwise it can't find some symbols
|
2009-05-12 16:23:09 -05:00 |
Slava Pestov
|
05146c6907
|
Remove compiled slot from quotations since its not needed
|
2009-05-12 03:09:15 -05:00 |
Slava Pestov
|
0b7eee6e61
|
Slightly more space-efficient dispatch table representation
|
2009-05-09 20:24:32 -05:00 |
Slava Pestov
|
3db1814abe
|
Fix compile error in cpu-ppc.hpp
|
2009-05-08 17:41:22 -05:00 |
Slava Pestov
|
cdd470a945
|
Fix Windows compile error
|
2009-05-08 15:23:44 -05:00 |
Slava Pestov
|
b470c4f92e
|
Need to include unistd.h
|
2009-05-08 15:15:10 -05:00 |
Slava Pestov
|
92ae2f7e71
|
VM cleanup: replace some #defines with constants and inline functions
|
2009-05-08 15:05:55 -05:00 |
Slava Pestov
|
cb9d50887c
|
Update PowerPC %jump and %dispatch-label, and add PIC-related functions to cpu-ppc.hpp
|
2009-05-07 19:47:38 -05:00 |
Slava Pestov
|
9b419aa0b1
|
Count megamorphic cache hits
|
2009-05-07 14:26:08 -05:00 |
Slava Pestov
|
eb515af599
|
Code cleanups
|
2009-05-07 12:33:31 -05:00 |
Slava Pestov
|
74094142fe
|
Fix tail call PICs on x86-64
|
2009-05-06 22:44:30 -05:00 |
Slava Pestov
|
4f0a1b024e
|
Clean up bootstrap.image, and implement new calling convention for tail calls; tail call sites now have PICs
|
2009-05-06 22:04:01 -05:00 |
Slava Pestov
|
c1e25f3b43
|
JIT now supports multiple relocations per code template. This simplifies non-optimizing compiler backends
|
2009-05-06 20:04:49 -05:00 |
Slava Pestov
|
d3b85c14c9
|
Working on inline caching for tail call sites
|
2009-05-06 19:22:22 -05:00 |
Slava Pestov
|
5e90662337
|
Working on PowerPC backend
|
2009-05-06 15:39:03 -05:00 |
Slava Pestov
|
bb246d5afc
|
Remove some unused constants and update an obsolete comment
|
2009-05-06 14:57:17 -05:00 |
Slava Pestov
|
0ca1d013f8
|
Add new RC_ABSOLUTE_PPC_2 relocation type
|
2009-05-05 20:56:23 -05:00 |
Slava Pestov
|
c5d3bbd5b6
|
Fix bool type; its actually 1 byte not 4 in structs. Bug reported by jedahu
|
2009-05-05 18:37:40 -05:00 |
Slava Pestov
|
79c87e86e7
|
Fix VM compile error
|
2009-05-05 16:19:13 -05:00 |
Slava Pestov
|
33d93e48ef
|
Fix VM code to export the right symbols on Windows
|
2009-05-05 15:55:41 -05:00 |
Slava Pestov
|
3acadbd23f
|
Remove debug messages from VM
|
2009-05-05 14:27:22 -05:00 |
Slava Pestov
|
7dfa61c098
|
VM now compiles with GCC 3.4 on Windows
|
2009-05-05 14:17:02 -05:00 |
unknown
|
fce5f6eb41
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-05-05 13:03:43 -05:00 |
unknown
|
2e55b1af73
|
Fixing compile errors on Windows
|
2009-05-05 13:03:24 -05:00 |
Slava Pestov
|
ec943c2299
|
Change (void) to ()
|
2009-05-05 11:33:35 -05:00 |
Slava Pestov
|
bec40fd54b
|
Store forwarding table off to the side instead of in the code block; saves one cell per code block
|
2009-05-05 11:07:20 -05:00 |
Slava Pestov
|
4764f1c676
|
Fix botched replace all in VM source, clean up image saving code, and fix save-image-and-exit to actually call (save-image-and-exit) instead of (save-image)
|
2009-05-05 10:29:22 -05:00 |
Slava Pestov
|
1e2561f863
|
Make walker work better with call( and breakpoints which are nested inside combinators
|
2009-05-05 09:12:32 -05:00 |
Slava Pestov
|
6729e70895
|
Some VM fixes
|
2009-05-04 15:11:31 -05:00 |
sheeple
|
60e8c40fcf
|
use eg++ on openbsd
|
2009-05-04 11:48:46 -05:00 |
Slava Pestov
|
c68e05d3d8
|
Fix some test failures
|
2009-05-04 09:44:26 -05:00 |
Slava Pestov
|
2b15f7477d
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-05-04 08:31:56 -05:00 |
Slava Pestov
|
9121f713c6
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-05-04 09:08:46 -04:00 |
Slava Pestov
|
576fe95eb8
|
Fix problem caused by different behavior of GCC 4.0 -vs- 4.3
|
2009-05-04 09:08:33 -04:00 |
Samuel Tardieu
|
c830bd7ee2
|
Make the primitives array const
|
2009-05-04 14:45:15 +02:00 |
Samuel Tardieu
|
af2c433d6b
|
Do not lower primitives to "void*" to get better compiler checking
|
2009-05-04 14:32:09 +02:00 |
Slava Pestov
|
4682c0b3b1
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-05-04 07:19:40 -05:00 |
Slava Pestov
|
c22a22bae1
|
Config.freebsd fix
|
2009-05-04 07:19:32 -05:00 |
Slava Pestov
|
0d62ce7802
|
Attempt to fix gcc 4.5.0 compile error
|
2009-05-04 07:11:00 -05:00 |
Slava Pestov
|
7e75312b60
|
Fixing some build issues on Linux with GCC 4.3
|
2009-05-04 08:00:06 -04:00 |
Slava Pestov
|
609121ff18
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-05-04 06:43:36 -05:00 |
Slava Pestov
|
087483eea2
|
NetBSD build fix
|
2009-05-04 06:43:20 -05:00 |
Slava Pestov
|
72691cae07
|
Cleanups
|
2009-05-04 05:07:14 -05:00 |
Slava Pestov
|
7c0a59f7a9
|
The great type renaming
|
2009-05-04 04:50:24 -05:00 |
Slava Pestov
|
7f48eb2b2c
|
Use C++ namespaces
|
2009-05-04 01:46:13 -05:00 |
Slava Pestov
|
1857f90eb6
|
VM: use better abstractions for tagged pointers, eliminate get()/set() stuff, clean up array, string, and byte-array element access
|
2009-05-04 01:00:30 -05:00 |
Slava Pestov
|
7820d88271
|
Various VM cleanups, new approach for bignum GC root registration
|
2009-05-03 05:48:03 -05:00 |
Slava Pestov
|
dfaa338af7
|
Clean up untag_* and tag_* inline functions in favor of more idiomatic C++
|
2009-05-02 20:47:29 -05:00 |
Slava Pestov
|
938d1a4270
|
Move vmpp to vm
|
2009-05-02 20:37:18 -05:00 |
Slava Pestov
|
b2cb41f9ae
|
Fix VM compilation on Windows
|
2009-05-01 02:01:43 -05:00 |
slava
|
fd4b4a4962
|
Fix some compiler warnings
|
2009-04-30 23:50:53 -04:00 |
Slava Pestov
|
d93514d47d
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-04-30 21:13:36 -05:00 |
Slava Pestov
|
b20ed595c4
|
Remove obsolete comment
|
2009-04-30 19:47:08 -05:00 |
Slava Pestov
|
742d574162
|
Non-optimizing compiler doesn't need to optimize 'dispatch' primitive anymore since its rarely used
|
2009-04-30 19:42:08 -05:00 |
Slava Pestov
|
7be231f6f8
|
Clean up code duplication in quotations.c
|
2009-04-30 19:07:13 -05:00 |
Slava Pestov
|
f9ec0a07c5
|
Fix PICs for x86-64
|
2009-04-30 18:00:49 -05:00 |
Doug Coleman
|
674bb9a4d5
|
remove error_message from windows vm
|
2009-04-30 09:36:01 -05:00 |
Slava Pestov
|
d6444e742c
|
Fix comment
|
2009-04-30 07:06:23 -05:00 |
Slava Pestov
|
5bc63fc237
|
At the end of a compilation unit, all PICs become dead so add them to the free list immediately instead of having them waste space until the next GC.
Similarly, when a PIC transition occurs, add the old PIC to the free list immediately.
Remove an unused function update_code_heap_roots()
|
2009-04-30 05:59:44 -05:00 |
Slava Pestov
|
5fb5c19d61
|
Machine code is now stored in a byte array instead of an array for add_code_block()
|
2009-04-30 04:34:35 -05:00 |
Slava Pestov
|
515c619202
|
Non-optimizing compiler now open-codes megamorphic dispatch fast path
|
2009-04-30 03:37:07 -05:00 |
Slava Pestov
|
fc4894fbdf
|
Replace ratio and complex built-in types with tuples defined in the library. This frees up two lo-tags, so move array and quotation over to these tags and update compiler for new tags
|
2009-04-30 00:27:35 -05:00 |
Slava Pestov
|
62db617927
|
Get rid of two instructions from tag pics and one instruction from all others
|
2009-04-29 22:24:28 -05:00 |
Slava Pestov
|
bd186b6320
|
Eliminate 3 instructions from PIC fast path
|
2009-04-29 21:32:05 -05:00 |
Slava Pestov
|
ae22b345ec
|
PIC -> megamorphic transition now has correct semantics within compilation units
|
2009-04-29 19:50:50 -05:00 |
Slava Pestov
|
02bd4f3f00
|
PICs now pass the method table around instead of extracting it from the generic word body. This gels better with how compilation units are supposed to work
|
2009-04-29 19:39:43 -05:00 |
Slava Pestov
|
a26947ba2e
|
Remove obsolete -mtune=pentium4 compile flag
|
2009-04-28 23:05:42 -05:00 |
Slava Pestov
|
9243316489
|
Debugging inline caching
|
2009-04-28 23:05:18 -05:00 |
Slava Pestov
|
dfcbd206b6
|
Fix -pic command line switch, and enable PICs in user-space
|
2009-04-28 18:06:10 -05:00 |
Slava Pestov
|
c15a4c1c5a
|
Add new relocation type for call sites which may be replaced by ICs
|
2009-04-28 17:53:14 -05:00 |
Slava Pestov
|
5f6c074edd
|
Split up types.c/h into smaller files, remove optimized slot from F_WORD struct
|
2009-04-28 17:26:11 -05:00 |
Slava Pestov
|
e8008af5d0
|
inline-cache-miss primitive now jumps to the new stub
|
2009-04-28 16:58:38 -05:00 |
Slava Pestov
|
3985b18026
|
Add -pic= command line argument
|
2009-04-28 16:58:19 -05:00 |
Slava Pestov
|
e940f6fd8b
|
Add method dispatch statistics
|
2009-04-28 16:58:05 -05:00 |
Slava Pestov
|
bd1b6be732
|
Remove some unused macros
|
2009-04-28 04:03:11 -05:00 |
Slava Pestov
|
4d10105802
|
Working on inline caching
|
2009-04-28 03:48:37 -05:00 |
Slava Pestov
|
d5b51df7e7
|
Clean up profiler.c using new JIT API
|
2009-04-28 00:53:32 -05:00 |
Slava Pestov
|
e45790a802
|
Split off parts of quotations.c into jit.c, which is a general codegen facility used by the non-optimizing compiler, and soon to be the profiler and PICs
|
2009-04-28 00:48:00 -05:00 |
Slava Pestov
|
15ef4f651b
|
Sprinkle VM source with assertions, add a missing local root to quotations.c, fix GROWABLE_ARRAY macros for GC safety
|
2009-04-28 00:11:09 -05:00 |
Slava Pestov
|
bba3bdd2bd
|
Merge branch 'inline_caching' into jit_cleanup
|
2009-04-27 17:09:12 -05:00 |
Slava Pestov
|
bba30dc284
|
Fix conflict from master
|
2009-04-27 17:09:09 -05:00 |
Slava Pestov
|
bf0e8606a8
|
Merge branch 'master' into inline_caching
|
2009-04-26 21:26:39 -05:00 |
Slava Pestov
|
087c962f75
|
VM: simplify GC a bit, add GC_DEBUG compile-time flag
|
2009-04-26 16:05:09 -05:00 |
Slava Pestov
|
e0f6825757
|
Rename some fields to avoid conflicting with windows.h macros 'small' and 'large'
|
2009-04-26 10:02:52 -05:00 |
Slava Pestov
|
f94a44f3fd
|
Merge branch 'master' into inline_caching
|
2009-04-26 09:22:27 -05:00 |
Slava Pestov
|
5f756a8019
|
Code GC: segregated free list for faster allocation, combine unmark/build free list/update literals passes into one pass for faster deallocation
|
2009-04-26 09:15:58 -05:00 |
Slava Pestov
|
a14e5a4a3b
|
Better local cache
|
2009-04-26 08:06:37 -05:00 |
Slava Pestov
|
63fff0a832
|
Clean up VM's growable array implementation, and non-optimizing compiler
|
2009-04-26 07:00:48 -05:00 |