summaryrefslogtreecommitdiff
path: root/jefs.s
diff options
context:
space:
mode:
Diffstat (limited to 'jefs.s')
-rw-r--r--jefs.s12
1 files changed, 12 insertions, 0 deletions
diff --git a/jefs.s b/jefs.s
index cc75976..0a45c58 100644
--- a/jefs.s
+++ b/jefs.s
@@ -221,6 +221,18 @@ defword "cmove,", _cmove_comma, 0 ; ( c-addr u -- )
add r12, r9
mov qword [here], r12
ret
+
+defword "cmove>", cmove_to, 0 ; ( a1 a2 u -- )
+ std
+ pspop rcx
+ pspop rdi
+ add rdi, rcx
+ pspop rsi
+ add rsi, rcx
+
+ rep movsb
+ cld
+ ret
; }}}
; note: this puts the _address it itself pushes_ on the stack