Commit Graph

34 Commits (53a88147ec5010e6383a00b5a712f61716c1aaf4)

Author SHA1 Message Date
Slava Pestov 9ffb01a9bd vm: fix fixnum* overflow case for 4-bit tags 2009-11-03 21:40:47 -06:00
Slava Pestov e4ad642134 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
Slava Pestov 805fea33cb vm: fix register clobberage in PowerPC c_to_factor (untested) 2009-10-02 09:19:31 -05:00
Phil Dawes 65bcd86c10 ppc asm to pass vm pointer: inline_cache_miss, set_callstack 2009-09-30 19:43:36 +01:00
Phil Dawes a73e6f20d4 ppc asm to pass vm pointer: overflow fns 2009-09-30 07:59:36 +01:00
Phil Dawes 6fa0a93498 ppc asm to pass vm pointer: initial bootstrap 2009-09-28 07:48:37 +01:00
Slava Pestov 448b89f585 vm: More indentation fixes 2009-09-14 03:14:48 -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
Joe Groff 53e23de104 set altivec denormal flag when with-denormal-mode is used 2009-09-12 20:39:41 -05:00
Joe Groff 93f5209213 fix ppc assembler syntax 2009-09-08 21:01:33 -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
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
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 6e08e29a3a Remove compiled slot from quotations since its not needed 2009-05-12 03:09:15 -05:00
Slava Pestov 5c4bb80bc3 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 49409b4d8c Working on PowerPC backend 2009-05-06 15:39:03 -05:00
Slava Pestov a14e5a4a3b Better local cache 2009-04-26 08:06:37 -05:00
sheeple c6837fbe3e Update cpu-ppc.S for quotation layout change 2009-03-24 01:07:38 -05:00
Slava Pestov 00212bb626 Save and restore r31 2008-12-16 02:06:53 -06:00
sheeple abc486c342 Subtraction overflow was wrong way round on PowerPC 2008-11-30 06:08:16 -06:00
sheeple 2b1a90e90a Fixing PowerPC arithmetic primitives 2008-11-28 22:22:26 -06:00
Slava Pestov 68dd6cc35a Working on PowerPC overflow checks 2008-11-28 20:02:50 -06:00
slava fbc0f33c86 The deploy tool would coalesce equal quotations into one. This created a problem
for the non-optimizing compiler because if the new 'leader' quotation was not
compiled but some of the ones that it replaces were, then calls to the quotation
from contexts where they have to be compiled (eg, compiled if and dip) would no
longer work. Add a `jit-compile' primitive to compile quotations, and call it
as appropriate in `compress-quotations`.
2008-11-24 15:59:27 -06:00
Slava Pestov 7741096bff Tweak PPC register usage; gcc doesn't like it when you mess with r31 for some reason 2008-11-06 03:36:46 -06:00
Slava Pestov 2239f4fb99 More work on PowerPC backend; change register usage, free up some more integer and float regs (untested) 2008-11-05 04:20:35 -06:00
Slava Pestov 3cea135fae Working on PowerPC port 2008-07-14 01:57:19 -05:00
Slava Pestov ac5f758bce PowerPC support work in progress 2008-01-08 17:04:45 -04:00
Slava Pestov 423c22e4ef Symbols are compound defs now; SYMBOL: foo == : foo \ foo ; 2007-12-25 22:55:17 -05:00
Slava Pestov 6fb134f1aa Update non-optimizing compiler for new PowerPC calling convention 2007-10-05 04:17:38 -04:00
Slava Pestov fab1453bfc Re-implemented single stepper for new evaluation model 2007-10-03 16:56:49 -04:00
Slava Pestov 99a42aa089 Fix crash if GC runs during lazy_jit_compile 2007-09-26 00:34:10 -04:00
Slava Pestov f400729792 The JIT now compiles quotations when first invoked, not when constructed 2007-09-26 00:26:19 -04:00
Slava Pestov 0c6865a10b Lazy JIT 2007-09-25 21:23:20 -04:00
Slava Pestov a96457cecc Initial import 2007-09-20 18:09:08 -04:00