Björn Lindqvist
12d91ef72a
cpu.*: more docs
2016-05-25 19:21:55 +02:00
Björn Lindqvist
97c10cc0f1
cpu.x86.*: faster versions of the X-bit-version-of words
...
It should make the %load-immediate word a bit faster.
2016-05-25 19:21:55 +02:00
Björn Lindqvist
9fac53989a
cpu.x86.assembler: zero-extension can work on the TEST instruction too
2016-05-24 14:37:20 +02:00
Björn Lindqvist
076a978be0
cpu.x86.assembler: fix help-lint problem
2016-05-23 02:26:28 +02:00
Björn Lindqvist
973606b5e2
cpu.x86.assembler: enable zero extension for AND with small immediates
2016-05-20 12:42:27 +02:00
Björn Lindqvist
4230d2502a
cpu.x86.assembler: MOV zero extension for small immediates ( #1593 )
...
Instructions eg: mov rax, 123 can be equivalent mov eax, 123 which are
shorter.
2016-05-19 23:02:48 +02:00
Björn Lindqvist
5a2e1c953e
cpu.x86.assember: add INC and DEC instructions to the assembler
2016-05-08 18:43:51 +02:00
Björn Lindqvist
a6f159eb17
cpu.x86.assembler: fix small help-lint problem
2016-04-22 18:10:59 +02:00
Björn Lindqvist
3177e7851c
cpu.*: more docs
2016-04-22 13:00:46 +02:00
John Benediktsson
e477f6996f
Fix comments to be ! not #!.
2015-09-08 16:15:10 -07:00
John Benediktsson
ceb75057da
change ERROR: words from throw-foo back to foo.
2015-08-13 16:13:05 -07:00
Doug Coleman
b6be8685c3
basis: ERROR: changes.
2015-08-13 03:20:39 -07:00
Doug Coleman
4ec2311406
factor: Trim whitespace after ! comments and a few USING: lines that got skipped before.
2015-07-18 20:14:22 -07:00
Doug Coleman
892c62e1dc
factor: second stab at [ ] [ ] unit-test -> { } [ ] unit-test
2015-07-03 09:39:59 -07:00
Doug Coleman
59f3b1ea57
Revert "factor: rename [ ] [ ] unit-test -> { } [ ] unit-test using a refactoring tool!"
...
Needs a bit more work.
This reverts commit 7e54cc2824
.
2015-07-02 13:47:06 -07:00
Doug Coleman
7e54cc2824
factor: rename [ ] [ ] unit-test -> { } [ ] unit-test using a refactoring tool!
2015-07-02 11:36:08 -07:00
Doug Coleman
6e60c811ac
core: Rename create to create-word, create-in to create-word-in.
2015-06-08 12:47:35 -07: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
5152c49eb3
cpu.*: docs and tests for words in the assembler
2014-10-19 13:40:41 +02:00
Björn Lindqvist
280620c55f
Docs: docs for compiler-related words
2014-06-08 11:48:31 -07:00
Björn Lindqvist
5bccede3b6
Docs: docs for compiler.* and cpu.* words
2014-05-10 17:13:49 -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
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
John Benediktsson
d1f3b326e5
math: using if-zero in more places.
2012-06-18 14:32:39 -07:00
Joe Groff
943596575a
use radix literals
2011-11-23 19:03:40 -08:00
Joe Groff
4ef2a9b4f0
cpu.x86.assembler: PUSHF, POPF instructions
2011-11-04 11:23:11 -07:00
Joe Groff
1386212d23
vm: dispatch signal handlers through subprimitive
...
We also need to save C ABI volatile registers before calling the signal handler in order to be able to reliably resume. Add signal-handler and leaf-signal-handler subprimitives to preserve volatile registers before invoking the signal handler C function.
2011-10-27 21:18:18 -07:00
Joe Groff
ae1a903c4e
cpu.x86.assembler: add MOVABS instruction
...
MOVABS generates the one-byte opcode version of MOV eAX, [absolute] or MOV [absolute], eAX, which saves a byte per safepoint on x86-32.
2011-10-27 21:14:45 -07:00
Doug Coleman
671f19d70f
Remove all non-core uses of (scan-token)
...
Add scan-datum
Add scan-number
Document more words
Fixes #225 .
2011-10-02 12:00:08 -07:00
Joe Groff
732befe272
cpu.x86.assembler: add MOVQ xmm, xmm/m64 and MOVQ xmm/m64, xmm instructions
2010-07-08 10:19:11 -07:00
Slava Pestov
b67080b69d
cpu.x86.assembler: drop useless ST0 operand from some x87 instructions
2010-05-18 19:37:59 -04:00
Slava Pestov
2dde83767c
cpu.x86.assembler: fix typo
2010-05-18 17:59:34 -04:00
Slava Pestov
f5a951801e
cpu.x86.assembler: AH CH DH BH register operands now work properly
2010-05-18 17:10:32 -04:00
Slava Pestov
6eaf2d7534
cpu.x86: add x87 codegen for Model T enthusiasts
2010-05-17 11:35:47 -04:00
Joe Groff
93abc7d169
cpu.x86.assembler: a choice selection of x87 instructions
2010-05-17 02:02:40 -07:00
Joe Groff
d5b7ec3348
cpu.x86.assembler: SETcc instructions
2010-05-15 13:14:27 -07:00
Joe Groff
986ed057d8
cpu.x86.assembler: BT family instructions
2010-05-15 13:08:22 -07:00
Slava Pestov
652c4c28c6
cpu.x86.assembler: fix test on 64-bit
2010-05-03 20:16:13 -04:00
Slava Pestov
95ff5ffe51
New GC checks work in progress
2010-05-03 17:34:16 -04:00
Slava Pestov
655497b7b4
cpu.x86.assembler: small cleanups
2010-05-03 17:34:15 -04:00
Slava Pestov
6d41d2277f
cpu.x86.assembler: support all addressing modes
2010-05-03 17:34:06 -04:00
Slava Pestov
c0af678c5b
cpu.x86.assembler: add support for absolute addressing on x86-64; [RIP+] now behaves like [] did, and [] now does absolute addressing just like in 32-bit mode
2010-04-04 19:42:57 -04:00
Slava Pestov
7d24459bb8
cpu.x86.assembler: add segment override prefixes
2010-03-31 20:47:13 -04: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
235f3238f5
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
36d2ac8921
vm: move c_to_factor, lazy_jit_compile_impl, throw_impl, set_callstack assembly routines into non-optimizing compiler for x86-64
2010-01-06 15:47:36 +13:00
Doug Coleman
bd13e018dd
memq? -> member-eq?, sorted-memq? -> sorted-member-eq?
2009-10-28 15:02:00 -05:00
Slava Pestov
4202211293
cpu.x86: cleanups
2009-09-28 16:38:35 -05:00
Joe Groff
2e8bb98781
cpu.x86.assembler: make SSE shuffle instructions accept an array of indexes so they're easier to use
2009-09-28 11:45:45 -05:00