Use CMP instead of SUBS when possible

This commit is contained in:
Stas Boukarev 2026-09-02 10:32:28 +03:00
parent 4ab4654f68
commit c8d0ca77a9

View file

@ -360,8 +360,16 @@
(assemble ()
;; ... Load it if there is a stack value available, or
;; default it if there isn't.
(inst subs nargs-tn nargs-tn decrement)
(setf decrement (fixnumize 1))
#+tls-based-mv-return
(progn
(inst cmp nargs-tn decrement)
(incf decrement (fixnumize 1)))
#-tls-based-mv-return
(progn
(if (tn-ref-across val) ;; more to come
(inst subs nargs-tn nargs-tn decrement)
(inst cmp nargs-tn decrement))
(setf decrement (fixnumize 1)))
(unless (sc-is tn control-stack)
(setf dst tn))
(when stack-targets-p