projects
/
rrq
/
rrqforth.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
5b7f593
)
fixing STRNCMP
author
Ralph Ronnquist
<ralph.ronnquist@gmail.com>
Thu, 20 May 2021 19:25:25 +0000
(
05:25
+1000)
committer
Ralph Ronnquist
<ralph.ronnquist@gmail.com>
Thu, 20 May 2021 19:25:25 +0000
(
05:25
+1000)
wordlists.asm
patch
|
blob
|
history
diff --git
a/wordlists.asm
b/wordlists.asm
index b2e8260e479d275c24a3162776cb5ab28fc82757..5f4f281c6be3ea3f2bcb1047b7379bedcd9c40ec 100644
(file)
--- a/
wordlists.asm
+++ b/
wordlists.asm
@@
-64,7
+64,7
@@
p_words_END:
inc rdx
p_strncmp_loop:
dec rdx
inc rdx
p_strncmp_loop:
dec rdx
- je p_strncmp_end
+ j
l
e p_strncmp_end
mov cl,[rax]
inc rax
sub cl,[rbx]
mov cl,[rax]
inc rax
sub cl,[rbx]
@@
-85,16
+85,16
@@
p_strncmp_end:
p_find_loop:
cmp rcx,0
je p_find_notfound ; jump at end of word list
p_find_loop:
cmp rcx,0
je p_find_notfound ; jump at end of word list
- cmp rbx,qword [rcx+
16
] ; compare lengths
+ cmp rbx,qword [rcx+
24
] ; compare lengths
jne p_find_nextword ; jump on length mismatch
push rcx ; save tfa for later
;; check word
push rsi ; input chars
tfa2pname rcx
jne p_find_nextword ; jump on length mismatch
push rcx ; save tfa for later
;; check word
push rsi ; input chars
tfa2pname rcx
- push rcx ; word
chars
+ push rcx ; word
pname
push rbx ; length
push rbx ; length
- DOFORTH p_strncmp
- pop rax ; return value
+ DOFORTH p_strncmp
; ( s1* s2 n -- v )
+ pop rax ; return value
v
pop rcx ; restore tfa
cmp rax,0
je p_find_found
pop rcx ; restore tfa
cmp rax,0
je p_find_found