Daniel Ehrenberg
142f530f1b
Making all of basis and extra unambiguous for sets/namespaces
2010-02-26 16:28:38 -05:00
Daniel Ehrenberg
0f0571e48a
Moving new-sets to sets
2010-02-26 16:01:01 -05:00
Daniel Ehrenberg
ab81eb7054
Finishing converting compiler.cfg.ssa.construction.tdmsc to new-sets
2010-02-26 13:53:20 -05:00
Daniel Ehrenberg
fd7bcd35ea
Compiler.cfg.{dce,linearization} use new-sets
2010-02-16 15:48:07 -06:00
Daniel Ehrenberg
ef281f1921
Bit sets use new new set protocol, and compiler.cfg.ssa.construction.tdmsc is updated for it
2010-02-16 15:14:32 -06:00
Slava Pestov
8a8c47ab1d
compiler.cfg.intrinsics.simd: ignore dummy assert-positive word
2010-01-31 18:19:14 +13:00
Doug Coleman
7322c0a400
remove a stray character
2010-01-22 15:07:01 -06:00
Doug Coleman
8ae200d419
Rename accumulator to collector, pusher to selector
2010-01-22 15:00:53 -06:00
Slava Pestov
ce05955693
stack-checker: add inputs and outputs words, since 'infer (in>>|out>>) length' was coming up a lot
2010-01-15 08:04:14 +13:00
Slava Pestov
880fb747fc
Removing integers-as-sequences
2010-01-15 07:15:33 +13:00
Slava Pestov
790674cf89
Rename kernel.private:getenv/setenv to special-object/set-special-object to mirror recent renaming on the VM side
2010-01-13 18:08:18 +13:00
Slava Pestov
1e2c0327ee
Add alien-assembly form for inline assembler, works like alien-invoke except calls a user-supplied quotation instead of generating a subroutine call. Replaces FPU status control, SSE detection and read timestamp routines in vm/cpu-x86.*S
2010-01-07 17:39:22 +13:00
Slava Pestov
9399a68786
Change how non-volatile register preservation is done in alien callbacks, with the aim of fixing callbacks on PowerPC, and to eventually eliminate assembly code from VM
...
- Simplify calculation of offset in relocation table
- Open-code %alien-callback
- Remove magic_frame hack from context objects
- Move magical return instruction from optimizing compiler backend into callback entry stub
2010-01-03 01:11:51 +13:00
Slava Pestov
8f449f1a82
Get optimizing compiler working without global register variables in VM
2009-12-22 15:42:49 +13:00
Slava Pestov
31a260b74c
vm: big overhaul of non-optimizing compiler
...
- change some primitives into sub-primitives: fixnum+ fixnum- fixnum* inline-cache-miss inline-cache-miss-tail
- rename some relocation types for clarity
- some other minor re-organizations and cleanups
2009-12-15 07:20:09 -05:00
Joe Groff
1ad9dc14b4
fix simd tests
2009-12-05 17:17:16 -08:00
Joe Groff
d674ff8191
simd intrinsic implementation for v*high, v*hs+, vavg, and vsad
2009-12-05 14:52:18 -08:00
Joe Groff
778c21e94c
change compiler.cfg.intrinsics.simd tests to not use types and operations that depend on host cell size
2009-12-04 13:23:31 -08:00
Joe Groff
4116e2aa4e
don't use intrinsics for simd vector element operations when the component size doesn't fit in a fixnum
2009-12-03 12:46:56 -08:00
Joe Groff
ebcaaa0d64
Merge branch 'master' into simd-cleanup
2009-11-26 16:14:46 -08:00
Joe Groff
ea7c5b6d86
fix buggy simd intrinsics
2009-11-26 13:28:40 -08:00
Joe Groff
dcc9e6cbf3
don't try to rewrite redundant test-vector-exprs
2009-11-25 20:06:11 -08:00
Joe Groff
8095704010
change name of 'unsign-rep' to more sensible 'signed-rep'
2009-11-24 22:44:12 -08:00
Joe Groff
90cd1b47f7
make math.vectors.simd tests pass again
2009-11-24 18:30:12 -08:00
Joe Groff
5aebf7ffba
update compiler.cfg.intrinsics.simd tests
2009-11-24 12:50:27 -08:00
Joe Groff
804c8c3bcc
fix simd intrinsic compilation
2009-11-24 11:37:28 -08:00
Joe Groff
3b17573c7c
break simd intrinsics into a separate vocab so they can be intrinsified before the simd methods compile
2009-11-19 11:53:46 -08:00
Joe Groff
4700890b70
fix primitive emit fallback for simd intrinsics
2009-11-18 21:29:51 -08:00
Joe Groff
b54a925d1e
enable simd intrinsics and fix first-pass compiler errors
2009-11-18 20:32:05 -08:00
Joe Groff
e6295d5640
tests for all simd intrinsics
2009-11-18 18:20:58 -08:00
Slava Pestov
08b6ebc7fa
Factor source files should not be executable
2009-11-21 17:50:43 -06:00
Joe Groff
3698595d39
properly handle -vector-op and case words in simd.backend
2009-11-18 12:36:41 -08:00
Joe Groff
132ce61bb5
start on tests for simd intrinsics
2009-11-17 11:13:16 -08:00
Slava Pestov
43c1ae0a44
compiler.cfg: 'basic-block new hashcode' should not throw an exception; fixes tools.deploy.test.11
2009-11-16 02:01:36 -06:00
Joe Groff
00b9506439
compilation fixes
2009-11-14 23:43:22 -06:00
Joe Groff
993631e44c
Merge branch 'master' of git://factorcode.org/git/factor into simd-cleanup
...
Conflicts:
basis/math/vectors/simd/functor/functor.factor
2009-11-14 21:02:39 -06:00
Joe Groff
9efff4a322
backend fixups
2009-11-14 20:59:03 -06:00
Joe Groff
db1ae26801
sever lingering dependencies on simd from compiler
2009-11-11 16:08:40 -06:00
Slava Pestov
3b75114015
Fixing test failures
2009-11-11 02:40:24 -06:00
Slava Pestov
68f3087c1c
Faster identity-hashcode primitive; fast path now opencoded by the compiler
2009-11-11 02:27:19 -06:00
Joe Groff
d52d56f335
backend for choosing available SIMD intrinsic implementations
2009-11-10 23:35:46 -06:00
Slava Pestov
4168ffbcee
New identity-hashcode primitive
2009-11-10 21:18:54 -06:00
Slava Pestov
b4d997d17a
compiler.cfg.intrinsics.slots: new implementation of value-tag
2009-11-10 17:30:27 -06:00
Joe Groff
a279b360eb
Merge branch 'master' into simd-cleanup
...
Conflicts:
basis/math/vectors/simd/functor/functor.factor
2009-11-05 11:27:08 -06:00
Joe Groff
cf28782533
more intrinsic madness
2009-11-05 09:52:57 -06:00
Joe Groff
54e9baa7e4
change ##horizontal-add-vector insn to better match what the HADD SSE instructions do (add adjacent pairs, pack results)
2009-11-04 12:18:01 -06:00
Slava Pestov
4b31c10830
compiler.cfg.intrinsics.allot: fix inline byte array allocation on 32-bit platforms
2009-11-03 23:44:20 -06:00
Slava Pestov
d0a784d61c
compiler: update unit tests for 4-bit tag change
2009-11-03 21:40:29 -06:00
Joe Groff
e12c708797
new intrinsic generators, pt1
2009-11-03 21:38:45 -06:00
Slava Pestov
f102bd7ded
cpu.x86: update %box-displaced-alien for introduction of address field
2009-11-03 03:17:43 -06:00