recognize +! and set-vector (#706)

"
This commit is contained in:
water111
2021-07-17 15:00:10 -04:00
committed by GitHub
parent 1e90da8e7c
commit 4989470828
48 changed files with 557 additions and 1038 deletions
@@ -898,7 +898,7 @@
)
(else
(set! (-> obj tag (-> obj length)) s4-1)
(set! (-> obj length) (+ (-> obj length) 1))
(+! (-> obj length) 1)
(sort! obj)
)
)
@@ -1040,19 +1040,10 @@
)
(set! (-> block length) (max (-> block length) (+ mem-use-id 1)))
(set! (-> block data mem-use-id name) mem-use-name)
(set!
(-> block data mem-use-id count)
(+ (-> block data mem-use-id count) 1)
)
(+! (-> block data mem-use-id count) 1)
(let ((obj-size (asize-of obj)))
(set!
(-> block data mem-use-id used)
(+ (-> block data mem-use-id used) obj-size)
)
(set!
(-> block data mem-use-id total)
(+ (-> block data mem-use-id total) (logand -16 (+ obj-size 15)))
)
(+! (-> block data mem-use-id used) obj-size)
(+! (-> block data mem-use-id total) (logand -16 (+ obj-size 15)))
)
(dotimes (tag-idx (-> obj length))
(when (zero? (-> obj tag tag-idx inlined?))
@@ -1077,19 +1068,10 @@
((string)
(set! (-> block length) (max (-> block length) (+ mem-use-id 1)))
(set! (-> block data mem-use-id name) mem-use-name)
(set!
(-> block data mem-use-id count)
(+ (-> block data mem-use-id count) 1)
)
(+! (-> block data mem-use-id count) 1)
(let ((v1-47 (asize-of tag-data)))
(set!
(-> block data mem-use-id used)
(+ (-> block data mem-use-id used) v1-47)
)
(set!
(-> block data mem-use-id total)
(+ (-> block data mem-use-id total) (logand -16 (+ v1-47 15)))
)
(+! (-> block data mem-use-id used) v1-47)
(+! (-> block data mem-use-id total) (logand -16 (+ v1-47 15)))
)
)
((nav-mesh collide-mesh)
@@ -1098,19 +1080,10 @@
((array)
(set! (-> block length) (max (-> block length) (+ mem-use-id 1)))
(set! (-> block data mem-use-id name) mem-use-name)
(set!
(-> block data mem-use-id count)
(+ (-> block data mem-use-id count) 1)
)
(+! (-> block data mem-use-id count) 1)
(let ((v1-63 (asize-of (the-as (array object) tag-data))))
(set!
(-> block data mem-use-id used)
(+ (-> block data mem-use-id used) v1-63)
)
(set!
(-> block data mem-use-id total)
(+ (-> block data mem-use-id total) (logand -16 (+ v1-63 15)))
)
(+! (-> block data mem-use-id used) v1-63)
(+! (-> block data mem-use-id total) (logand -16 (+ v1-63 15)))
)
(set! sv-16 0)
(while (< sv-16 (-> (the-as array tag-data) length))
@@ -1123,19 +1096,10 @@
(else
(set! (-> block length) (max (-> block length) (+ mem-use-id 1)))
(set! (-> block data mem-use-id name) mem-use-name)
(set!
(-> block data mem-use-id count)
(+ (-> block data mem-use-id count) 1)
)
(+! (-> block data mem-use-id count) 1)
(let ((v1-88 (asize-of tag-data)))
(set!
(-> block data mem-use-id used)
(+ (-> block data mem-use-id used) v1-88)
)
(set!
(-> block data mem-use-id total)
(+ (-> block data mem-use-id total) (logand -16 (+ v1-88 15)))
)
(+! (-> block data mem-use-id used) v1-88)
(+! (-> block data mem-use-id total) (logand -16 (+ v1-88 15)))
)
)
)