Commit Graph

799 Commits (6a434915d019f2121e80cd47c9e00258b4a8bf28)

Author SHA1 Message Date
Björn Lindqvist 8ea234e4de cpu.architecture.tests: fix tests for win 64 2014-11-24 04:20:07 +01:00
John Benediktsson 44f31ee13e use swapd instead of [ swap ] dip. 2014-11-21 11:56:17 -08:00
Björn Lindqvist 7ebd63a217 cpu.architecture: docs and some tests 2014-11-16 06:25:54 -08:00
Björn Lindqvist f06f59b956 Docs: smallish improvements to compiler vocabs 2014-11-16 06:25:54 -08:00
Doug Coleman 9ff6d2d49c cpu.x86.64: 64-bit register is RDX not EDX. Fixes #1191. 2014-11-07 22:03:12 -08:00
Benjamin Pollack 2c3dd8c3c8 Remove executable bit from tons of files that aren't 2014-11-05 20:40:42 -08:00
John Benediktsson 465aa8786f cpu.x86.assembler.operands: fix help-lint. 2014-10-20 09:24:20 -07:00
Björn Lindqvist a617855aef Docs: fixing smaller help-lint nitpicks 2014-10-19 14:05:06 +02:00
Björn Lindqvist 5152c49eb3 cpu.*: docs and tests for words in the assembler 2014-10-19 13:40:41 +02:00
Björn Lindqvist 83cf4b9d57 compiler,cpu: more docs 2014-10-17 23:18:57 +02:00
Björn Lindqvist 40df5df231 cpu.architecture: %save-context example 2014-10-17 23:17:49 +02:00
Björn Lindqvist 1225abeeaf Docs: more compiler-related documentation 2014-08-13 11:01:10 -07:00
John Benediktsson b915520311 cpu.architecture: fix using from bad conflict merge. 2014-06-08 11:48:31 -07:00
Björn Lindqvist 280620c55f Docs: docs for compiler-related words 2014-06-08 11:48:31 -07:00
Björn Lindqvist 93a609db38 Docs: for cpu.architecture words 2014-06-08 11:48:30 -07:00
Björn Lindqvist cf8de7cc1a Docs: for cpu.x86 2014-06-08 11:48:30 -07:00
Björn Lindqvist fa097c7a56 Docs: for compiler.cfg and cpu.architecture words
Conflicts:
	basis/cpu/architecture/architecture-docs.factor
2014-06-08 11:48:30 -07:00
John Benediktsson 57f9d78892 improve help by linking to types directly. 2014-05-23 20:20:15 -07:00
Björn Lindqvist e2eebdec4d Docs: mostly fixes for doc errors found by help lint 2014-05-10 17:13:49 -07:00
Björn Lindqvist 5bccede3b6 Docs: docs for compiler.* and cpu.* words 2014-05-10 17:13:49 -07:00
Björn Lindqvist 4f9f2b862f Docs: docs for compiler-related vocabs 2014-05-10 17:13:49 -07:00
Björn Lindqvist 6626cd24a1 Docs: docs for cpu.* vocabs 2014-05-10 17:13:48 -07:00
Björn Lindqvist d074f1a9c9 Docs: for cpu.x86.* words 2014-05-10 17:13:48 -07:00
Björn Lindqvist e2fe5ccfe8 Docs: stub docs for cpu.architecture 2014-05-10 17:13:48 -07:00
Doug Coleman 262eb73ea6 basis: Re-enable some things I commented out. Fixes #22. Thanks @ajvondrak! 2012-12-31 11:48:30 -08:00
Doug Coleman a0dd953e33 starting point - Fix bootstrap; I broke it in merging. Disable environment variables because the compiler isn't loaded yet and can't call C ffi functions, and tools.test loads this vocab.
Disable intrinsics in cpu.x86.64 for now, since they invoke the compiler
Fix ##branch renaming to ##branch,
To work on this branch:
./factor -include=math -i=boot.image
./factor -run=listener
USE: compiler USE: tools.test save
enable-optimizer

Error message is now:
T{ vregs-shouldn't-interfere f 409 424 }
2012-12-31 11:03:45 -08:00
Doug Coleman 3582a6c624 kernel: Add 4dup, 4drop, and 4cleave. 2012-10-22 09:47:34 -07:00
John Benediktsson 3f947055b4 Revert "cpu.x86.bootstrap: Rice the jit compiler -- SHR SHL -> AND."
This reverts commit f43e2b1ba7.
2012-09-21 10:43:48 -07:00
Doug Coleman 4ee63bea7e cpu.x86.bootstrap: Rice the jit compiler -- SHR SHL -> AND. 2012-09-21 10:18:14 -07:00
Doug Coleman ba307bb38d cpu.x86.features: Rename rdrnd to rdrand! 2012-09-20 12:03:10 -07:00
Doug Coleman ed83c87554 cpu.x86: Add ghetto RDRAND support. Proper support wouldn't use alien-assembly and would take a count parameter. 2012-09-20 11:54:44 -07:00
Doug Coleman d196f8f141 cpu.x86: Use bit-range, don't call cpuid so many times 2012-09-19 15:44:20 -07:00
Doug Coleman e97c8971a5 cpu.x86: Some calls to CPUID take a parameter in ECX. Add cpuid-extended to allow these. 2012-09-19 11:30:54 -07:00
John Benediktsson e45f0ec9e2 cpu.x86.features: temporary fix for bootstrap issue. 2012-09-19 10:41:54 -07:00
Doug Coleman de52d96d93 cpu.x86.features: Add some words to check cpu features. Replace alien-assembly popcnt? instruction with general cpuid one. 2012-09-19 10:12:25 -07:00
Doug Coleman 1897f5fb4a cpu.x86.assember: Add RDMSR for completeness, but it can't be called from user code. Factor kernel modules? 2012-09-19 10:11:36 -07:00
Doug Coleman d52c0b1987 cpu.x86.features: Unbiased CPUID test. 2012-09-19 08:48:14 -07:00
Doug Coleman 9c0a8b3250 cpu.x86: Fix load order. 2012-09-19 08:40:18 -07:00
Doug Coleman 9827e29e95 cpu.x86.features: Fix cpuid for win64. 2012-09-18 20:09:39 -07:00
Doug Coleman 0d337e04ea cpu.x86.features: Implement cpuid with help from joe. Add unit test. 2012-09-18 18:51:32 -07:00
Doug Coleman 9ebd6c11ad cpu.x86: Fix the popcnt? word alien-assembly. XOR the return-reg RAX before calling BT/BSET because XOR clears the CF and the whole thing becomes a no-op. Change popcnt instruction to opt-out rather than opt-in. Fixes #663. 2012-09-18 17:15:03 -07:00
John Benediktsson 2f325e4fee using if-zero in even more places. 2012-07-16 19:38:49 -07:00
John Benediktsson d1f3b326e5 math: using if-zero in more places. 2012-06-18 14:32:39 -07:00
Joe Groff 9b56fbb1c1 cpu.x86.32.bootstrap: oops, meant bootstrap-cell 2011-12-19 20:55:07 -08:00
Joe Groff bc3f34cbd7 cpu.x86.32.bootstrap: update unwind-native-frames
The arguments passed from C are in a different position now.
2011-12-19 18:42:14 -08:00
Joe Groff b321c5656e cpu.x86.64: define jit-load-vm as a no-op
This was the signal handler prolog code can be shared completely between x86.32 and x86.64.
2011-12-14 11:33:05 -08:00
Joe Groff d62a0b28e6 oops, handler still need to jit-load-vm on x86-32 2011-12-14 09:56:50 -08:00
Joe Groff 7c9332e966 cpu.x86.*: clean up signal handler prolog code
Also bump the signal handler frame sizes up again since it looks like we shrank them too much.
2011-12-14 09:56:50 -08:00
Joe Groff 2eba1b5449 cpu.x86: reduce compiled frames by 2 cells too 2011-12-14 09:56:49 -08:00
Joe Groff 079025559d simplify function prologs 2011-12-14 09:56:49 -08:00