Fix FIND
This commit is contained in:
20
wipforth.wat
20
wipforth.wat
@@ -1255,16 +1255,16 @@
|
||||
;; LATEST @ \ Initial entry
|
||||
;;
|
||||
;; TUCK NAME-LEN \ Get name length
|
||||
;; OVER <> 0BRANCH [52] \ Check for length mismatch
|
||||
;; OVER = 0BRANCH [52] \ Check for length mismatch
|
||||
;; OVER 5 + \ Get name address
|
||||
;; OVER SWAP WORDBUF STRING= \ Check if name matches
|
||||
;; 0BRANCH [12]
|
||||
;; DROP EXIT
|
||||
;;
|
||||
;; \ Name doesn't match
|
||||
;; OVER @ 0= 0BRANCH [12] \ Check for nil link
|
||||
;; DROP EXIT
|
||||
;; SWAP @ BRANCH [-112] \ Follow link and loop
|
||||
;; OVER @ 0<> 0BRANCH [20] \ Check for nil link
|
||||
;; SWAP @ BRANCH [-104] \ Follow link and loop
|
||||
;; 2DROP FALSE \ Return false
|
||||
;; ;
|
||||
|
||||
(data (i32.const 0x078c)
|
||||
@@ -1276,7 +1276,7 @@
|
||||
"\f0\05\00\00" ;; TUCK
|
||||
"\70\07\00\00" ;; NAME-LEN
|
||||
"\54\02\00\00" ;; OVER
|
||||
"\08\03\00\00" ;; <>
|
||||
"\fc\02\00\00" ;; =
|
||||
"\b4\04\00\00" ;; 0BRANCH
|
||||
"\30\00\00\00" ;; 52
|
||||
"\54\02\00\00" ;; OVER
|
||||
@@ -1293,15 +1293,15 @@
|
||||
"\0c\04\00\00" ;; EXIT
|
||||
"\54\02\00\00" ;; OVER
|
||||
"\cc\03\00\00" ;; @
|
||||
"\44\03\00\00" ;; 0=
|
||||
"\50\03\00\00" ;; 0<>
|
||||
"\b4\04\00\00" ;; 0BRANCH
|
||||
"\0c\00\00\00" ;; 12
|
||||
"\18\02\00\00" ;; DROP
|
||||
"\0c\04\00\00" ;; EXIT
|
||||
"\14\00\00\00" ;; 20
|
||||
"\28\02\00\00" ;; SWAP
|
||||
"\cc\03\00\00" ;; @
|
||||
"\a4\04\00\00" ;; BRANCH
|
||||
"\90\ff\ff\ff" ;; -112
|
||||
"\98\ff\ff\ff" ;; -104
|
||||
"\74\02\00\00" ;; 2DROP
|
||||
"\48\05\00\00" ;; FALSE
|
||||
"\0c\04\00\00") ;; EXIT
|
||||
|
||||
;; => 0x90 bytes
|
||||
|
||||
Reference in New Issue
Block a user