Commit Graph

572 Commits (0f2a89cfbd50e6fb4c3fa8728b79d5d14209d165)

Author SHA1 Message Date
Phil Dawes 0f2a89cfbd moved strings fns to vm 2009-09-16 08:16:19 +01:00
Phil Dawes 72098c5f6a moved arrays fns into vm 2009-09-16 08:16:19 +01:00
Phil Dawes 13e0ae6d97 moved debug functions into vm struct 2009-09-16 08:16:19 +01:00
Phil Dawes 64c2d81306 moved data_gc fns over to vm struct 2009-09-16 08:16:19 +01:00
Phil Dawes 9f6f7adaba moved data_heap fns to vm struct 2009-09-16 08:16:19 +01:00
Phil Dawes 1a87f3bb5f moved bignum functions to vm 2009-09-16 08:16:18 +01:00
Phil Dawes a6fc19f4b0 Dev checkpoint 2009-09-16 08:16:18 +01:00
Phil Dawes 149af514e6 Dev checkpoint 2009-09-16 08:16:18 +01:00
Phil Dawes 8426e2f877 Dev checkpoint 2009-09-16 08:16:18 +01:00
Phil Dawes 10901e7c37 moved errors.cpp functions to vm 2009-09-16 08:16:18 +01:00
Phil Dawes aa01f6b748 moved profiling fns into vm 2009-09-16 08:16:18 +01:00
Phil Dawes 110f925245 move functions from run.cpp into vm 2009-09-16 08:16:18 +01:00
Phil Dawes 88084a66ac moved contexts functions into vm 2009-09-16 08:16:18 +01:00
Phil Dawes adf2529451 added vm singleton 2009-09-16 08:16:18 +01:00
Phil Dawes d8ea82d8e8 added stub PRIMITIVE_GETVM macro 2009-09-16 08:16:17 +01:00
Phil Dawes caefc7aff9 Empty vm struct 2009-09-16 08:16:17 +01:00
Slava Pestov 3551294fd4 vm: update Config.netbsd for NetBSD 5.0 2009-09-15 00:22:19 -05:00
Joe Groff 77f0fbf497 missed a few PPC status bits that needed clearing 2009-09-14 15:17:36 -05:00
Joe Groff 89ce13d4d4 linux 32 typo 2009-09-14 13:21:46 -05:00
Joe Groff 32be55fa68 Merge branch 'master' of git://factorcode.org/git/factor 2009-09-14 12:30:24 -05:00
Joe Groff b77d9d2960 more secret sauce to tease mxcsr out of linux-x86.32 ucontext 2009-09-14 12:30:10 -05:00
Joe Groff c1bc5f22e4 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 578c977a7e more freebsd compilation fixes 2009-09-14 09:56:38 -05:00
Joe Groff 6ae07e8a08 fix compilation on linux 32 2009-09-14 09:48:32 -05:00
Slava Pestov 448b89f585 vm: More indentation fixes 2009-09-14 03:14:48 -05:00
Slava Pestov 83c992173e vm: fix indentation in Joe's changes 2009-09-14 03:09:03 -05:00
Joe Groff 198874aea8 fix compilation on freebsd 2009-09-14 00:00:01 -05:00
Joe Groff fb43ae2daf 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 38ec77f9bd Merge branch 'master' of git://factorcode.org/git/factor 2009-09-13 14:42:28 -05:00
Joe Groff b469dc29fa 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 d14f227905 Merge branch 'master' of git://factorcode.org/git/factor 2009-09-13 00:09:09 -05:00
Slava Pestov 32b95c2cdf 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 53e23de104 set altivec denormal flag when with-denormal-mode is used 2009-09-12 20:39:41 -05:00
Slava Pestov 9ccf5811b3 vm: fix fp_trap_error() so that it can work properly in signal handlers 2009-09-12 18:15:16 -05:00
Slava Pestov a456f79f9c 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 13464d9403 Fix debug build 2009-09-11 20:33:38 -05:00
Joe Groff 6fa4a6a23b handle floating-point exceptions on windows 2009-09-10 16:10:25 -05:00
Joe Groff c2cd1714fa fix set_x87_env assembly code for x86.32 2009-09-08 23:15:49 -05:00
Joe Groff 93f5209213 fix ppc assembler syntax 2009-09-08 21:01:33 -05:00
Joe Groff 2ad9459b85 Merge branch 'master' of git://factorcode.org/git/factor 2009-09-08 15:37:32 -05:00
Joe Groff 0ec342a1c5 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 81c4670619 VM: use an std::vector instead of a fixed-size buffer for GC roots 2009-09-08 14:21:09 -05:00
Slava Pestov 109cde9bd6 vm/cpu-x86.S: don't detect SSSE3, SSE4.1 or SSE4.2 yet 2009-09-08 14:06:19 -05:00
Joe Groff 7ba71a524e Send FP trap signals to Factor as a different vm-error type 2009-09-06 08:44:25 -05:00
Joe Groff 36ec53a968 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 906a0d212a Detect SSE version and enable the correct set of SIMD intrinsics 2009-09-03 03:28:38 -05:00
Joe Groff 07ab5f006d 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 2a56ba0d2d 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 230061783a 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 46688f960d 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