Commit Graph

273 Commits (2c67a5cd78e5dcffd7146e6fd0eb95f810a497e1)

Author SHA1 Message Date
Joe Groff eee483654a use radix literals 2011-11-23 19:03:40 -08:00
Doug Coleman be12f2b27d 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 14a2511d57 Found a few more places to use lookup-c-type 2011-10-24 15:58:40 -07:00
Slava Pestov 238fea7b7e 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 1ed2bc6231 32 and 64 bit Linux PPC support 2011-05-23 23:36:14 -04:00
Slava Pestov 84698985ad Officially drop PowerPC port 2010-08-15 20:10:11 -07:00
Slava Pestov f133a5f2be 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 66e9bed2d8 cpu.x86: add x87 codegen for Model T enthusiasts 2010-05-17 11:35:47 -04:00
Slava Pestov 0f5d9d368a compiler.cfg: refactor stack frame code and fix frame pointer usage in callbacks 2010-05-16 21:04:40 -04:00
Slava Pestov 35bd2bca06 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 5054bb4b25 FFI rewrite part 4: parameter and return value unboxing redesign 2010-05-11 19:11:44 -04:00
Slava Pestov 86d2e3c990 cpu.ppc: fixes 2010-05-10 17:50:10 -05:00
Slava Pestov a1f113409a cpu.ppc: update for recent changes -- untested 2010-05-10 02:21:23 -04:00
Slava Pestov 3d66820344 FFI rewrite part 1: split up ##alien-invoke and friends into smaller instructions 2010-05-09 21:36:52 -04:00
Slava Pestov d2d466de29 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 aafdfd58b1 cpu.ppc: add missing cases to ##load/store-memory instructions 2010-05-05 13:37:25 -04:00
Slava Pestov 920d6b1829 cpu.ppc: updating optimizing compiler backend for recent changes 2010-05-04 05:51:54 -05:00
Slava Pestov 030b966adf cpu.ppc.assembler: new opcodes: LFDUX LFDX LFSUX LFSX STFDUX STFDX STFSUX STFSX 2010-05-04 05:47:21 -05:00
Slava Pestov bd4b31ffa9 cpu.ppc: fixing typos in non-optimizing backend 2010-05-03 22:43:51 -04:00
Slava Pestov acfec41df5 cpu.ppc: updates for recent compiler changes, untested 2010-05-03 18:28:31 -04:00
Slava Pestov fd84bb98bc strings: move string-nth primitive out of the VM and into the library 2010-05-03 17:34:12 -04:00
Slava Pestov 3c965afd10 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 19412e4ad1 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 1185ab0305 cpu.ppc: fix breakage caused by ##compare-imm change 2010-04-19 01:40:16 -05:00
Slava Pestov 1d7089dc04 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 3b92172115 Replace 'untested' tag with 'not loaded' and 'not tested' tags 2010-04-13 18:43:01 -07:00
Slava Pestov 3a3b50327f 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 3b4f8758b5 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 e23e035b66 flatten non-integral types to (stack-value) on x86.32 2010-04-01 20:56:43 -07:00
Slava Pestov 62eaecdac3 cpu.ppc: fix optimizing compiler backend 2010-04-01 21:41:13 -05:00
Slava Pestov e330fcb0f9 cpu.ppc: stick old stack pointer in a register for use by callbacks 2010-04-01 22:39:46 -04:00
Slava Pestov 4f585f991d compiler: new set-special-object intrinsic; more efficient special-object intrinsic 2010-04-01 20:09:14 -04:00
Joe Groff ca9614e746 Merge branch 'master' into abi-symbols 2010-04-01 15:28:36 -07:00
Joe Groff ba062c1e5f cpu.architecture: alter param-regs to take abi as an (ignored for now) argument 2010-04-01 02:53:40 -07:00
Slava Pestov cab0cadf4d cpu.ppc: updating optimizing compiler backend for recent changes (untested) 2010-04-01 00:22:10 -04:00
Slava Pestov 9acd33d547 cpu.ppc: non-optimizing compiler backend fixes 2010-04-01 00:21:41 -04:00
Slava Pestov 2aada86da7 cpu.ppc: updating non-optimizing compiler backend for green threads (untested) 2010-03-31 15:19:14 -04:00
Slava Pestov adeb6fb68f vm: actually use context callstacks when running code 2010-03-26 22:44:43 -04:00
Slava Pestov 63a18b0e6f cpu.ppc: fix string c-type usage 2010-02-22 13:18:45 +13:00
Slava Pestov 0aad3e6e12 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 ba7f1c4b2c cpu.ppc: needs same fix for jit-profiling as on x86-64 2010-02-06 18:45:26 +13:00
Slava Pestov 92a0e50885 cpu.ppc: final fix 2010-02-03 13:37:12 -06:00
Slava Pestov 6cebf9d5a0 cpu.ppc: another fix 2010-02-04 08:19:59 +13:00
Slava Pestov da35bbb537 cpu.ppc: load fixes 2010-02-04 08:08:31 +13:00
Slava Pestov af47e5e8d8 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 88004434ec vm: remove primitive table, non-optimizing compiler now looks up primitives with dlsym() 2010-01-19 20:00:33 +13:00
Slava Pestov 0165daf56c 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 cfadb5994a PowerPC optimizing compiler backend fixes 2010-01-12 08:02:10 -06:00
Slava Pestov 5ef9fb5473 More PowerPC non-optimizing compiler backend fixes 2010-01-13 03:09:43 +13:00
Slava Pestov fe11d9f60a 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