Commit Graph

272 Commits (4d66cd26dcc056cbc503320f82ed894944ee4098)

Author SHA1 Message Date
Doug Coleman 94db86a6db Make "foo.private" require load foo instead.
Move require from vocabs.loader to vocabs. Update everything.
Fixes #201.
2011-11-02 11:50:03 -07:00
Doug Coleman 0d059e0f19 Found a few more places to use lookup-c-type 2011-10-24 15:58:40 -07:00
Slava Pestov 69419dba26 cpu.ppc: add 'not loaded' tags so that load-all doesn't break an x86 image 2011-08-24 23:52:02 -07:00
Erik Charlebois 64252dbdbc 32 and 64 bit Linux PPC support 2011-05-23 23:36:14 -04:00
Slava Pestov d2dd184d58 Officially drop PowerPC port 2010-08-15 20:10:11 -07:00
Slava Pestov e27adb2830 compiler: re-architect low-level optimizer to allow more than one output value per instruction 2010-07-13 07:40:14 -04:00
Slava Pestov 6eaf2d7534 cpu.x86: add x87 codegen for Model T enthusiasts 2010-05-17 11:35:47 -04:00
Slava Pestov 3f8e13bf66 compiler.cfg: refactor stack frame code and fix frame pointer usage in callbacks 2010-05-16 21:04:40 -04:00
Slava Pestov 5b48cd2a63 FFI rewrite part 5: return value boxing and callback parameter boxing now uses vregs; simplify return value unboxing 2010-05-16 03:43:23 -04:00
Slava Pestov eb802208d1 FFI rewrite part 4: parameter and return value unboxing redesign 2010-05-11 19:11:44 -04:00
Slava Pestov 423f9c607a cpu.ppc: fixes 2010-05-10 17:50:10 -05:00
Slava Pestov 9321f9378a cpu.ppc: update for recent changes -- untested 2010-05-10 02:21:23 -04:00
Slava Pestov c211c3e84e FFI rewrite part 1: split up ##alien-invoke and friends into smaller instructions 2010-05-09 21:36:52 -04:00
Slava Pestov 627295f094 Language change: tuple slot setter words with stack effect ( value object -- ) are now named FOO<< instead of (>>FOO) 2010-05-06 17:21:02 -04:00
Slava Pestov 020c011d00 cpu.ppc: add missing cases to ##load/store-memory instructions 2010-05-05 13:37:25 -04:00
Slava Pestov f3ea9288df cpu.ppc: updating optimizing compiler backend for recent changes 2010-05-04 05:51:54 -05:00
Slava Pestov 92a4b5ec7b cpu.ppc.assembler: new opcodes: LFDUX LFDX LFSUX LFSX STFDUX STFDX STFSUX STFSX 2010-05-04 05:47:21 -05:00
Slava Pestov 86d89f3ff7 cpu.ppc: fixing typos in non-optimizing backend 2010-05-03 22:43:51 -04:00
Slava Pestov bb3cea31ea cpu.ppc: updates for recent compiler changes, untested 2010-05-03 18:28:31 -04:00
Slava Pestov a9ccfa8f05 strings: move string-nth primitive out of the VM and into the library 2010-05-03 17:34:12 -04:00
Slava Pestov 279eb461b1 compiler.cfg: remove ##set-string-nth-fast instruction since it can be expressed just as efficiently using other instructions 2010-05-03 17:34:04 -04:00
Slava Pestov 503c0fcfde compiler: Start using tagged-rep for stuff, and split up compiler.cfg.representations into several sub-vocabularies 2010-05-03 17:34:01 -04:00
Slava Pestov d88aeb80d9 cpu.ppc: fix breakage caused by ##compare-imm change 2010-04-19 01:40:16 -05:00
Slava Pestov 2517b2fc2b compiler: combine ##load-constant followed by ##alien-double into a ##load-double on x86-32, saving an integer register 2010-04-18 21:42:45 -05:00
Slava Pestov da6bcbedfc Replace 'untested' tag with 'not loaded' and 'not tested' tags 2010-04-13 18:43:01 -07:00
Slava Pestov 1434a305c8 vm: add a new rc-absolute-1 relocation class to allow storing values in 8-bit operands, and optimized code sequences for inline caches using this 2010-04-12 14:22:41 -07:00
Joe Groff 3e0d86f355 Merge branch 'master' of git://factorcode.org/git/factor into abi-symbols
Conflicts:
	basis/compiler/tests/alien.factor
2010-04-06 12:30:15 -07:00
Joe Groff 88fbcba067 flatten non-integral types to (stack-value) on x86.32 2010-04-01 20:56:43 -07:00
Slava Pestov 044171e6b9 cpu.ppc: fix optimizing compiler backend 2010-04-01 21:41:13 -05:00
Slava Pestov 2cab0bb86c cpu.ppc: stick old stack pointer in a register for use by callbacks 2010-04-01 22:39:46 -04:00
Slava Pestov eceabbc57e compiler: new set-special-object intrinsic; more efficient special-object intrinsic 2010-04-01 20:09:14 -04:00
Joe Groff ef884ef7f2 Merge branch 'master' into abi-symbols 2010-04-01 15:28:36 -07:00
Joe Groff 4fd61f0b5c cpu.architecture: alter param-regs to take abi as an (ignored for now) argument 2010-04-01 02:53:40 -07:00
Slava Pestov 1f9fbd22eb cpu.ppc: updating optimizing compiler backend for recent changes (untested) 2010-04-01 00:22:10 -04:00
Slava Pestov 1e1425a6e1 cpu.ppc: non-optimizing compiler backend fixes 2010-04-01 00:21:41 -04:00
Slava Pestov 4b1361833e cpu.ppc: updating non-optimizing compiler backend for green threads (untested) 2010-03-31 15:19:14 -04:00
Slava Pestov 560c119cd2 vm: actually use context callstacks when running code 2010-03-26 22:44:43 -04:00
Slava Pestov f9d6191c4b cpu.ppc: fix string c-type usage 2010-02-22 13:18:45 +13:00
Slava Pestov 95bfc8a240 vocabs.metadata: replace unportable tag with a platforms.txt file for more fine-grained control. Rename unportable tag to untested for remaining cases 2010-02-20 13:30:49 +13:00
Slava Pestov daefa86b6d cpu.ppc: needs same fix for jit-profiling as on x86-64 2010-02-06 18:45:26 +13:00
Slava Pestov 034cf391b1 cpu.ppc: final fix 2010-02-03 13:37:12 -06:00
Slava Pestov 5fbb8c8bc7 cpu.ppc: another fix 2010-02-04 08:19:59 +13:00
Slava Pestov 50c2a5ae84 cpu.ppc: load fixes 2010-02-04 08:08:31 +13:00
Slava Pestov 22fbe01c17 Compiled code size optimizations for x86-64 resulting in development image size reduction of about 350kb
- RIP-relative LEA is now used to load program counter in prolog and tail calls; saves 3 bytes of code and 4 bytes of relocation information over an immediate MOV
- VM field accesses no longer involve a redundant addition
2010-02-03 23:11:35 +13:00
Slava Pestov 5606825e8b vm: remove primitive table, non-optimizing compiler now looks up primitives with dlsym() 2010-01-19 20:00:33 +13:00
Slava Pestov 637a77c018 Stop wearing monocle and use the term "entry point" instead of "XT" throughout VM and compiler; also remove two unused relocation types 2010-01-18 20:54:00 +13:00
Slava Pestov 7bf76b9f13 PowerPC optimizing compiler backend fixes 2010-01-12 08:02:10 -06:00
Slava Pestov 988c8d0601 More PowerPC non-optimizing compiler backend fixes 2010-01-13 03:09:43 +13:00
Slava Pestov 85a45d63d9 unwind-stack-frames didn't load VM pointer into the VM register on PowerPC and x86-64, and so if C code had clobbered this register it would crash 2010-01-12 16:31:10 +13:00
Slava Pestov 87f6efc8ec cpu.ppc: fix some typos in non-optimizing backend 2010-01-11 14:15:41 +13:00