Function: comp--add-cstrs
comp--add-cstrs is a byte-compiled function defined in comp.el.gz.
Signature
(comp--add-cstrs _)
Documentation
Rewrite conditional branches adding appropriate assume insns.
This is introducing and placing assume insns in use by fwprop
to propagate conditional branch test information on target basic
blocks.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/comp.el.gz
(defun comp--add-cstrs (_)
"Rewrite conditional branches adding appropriate `assume' insns.
This is introducing and placing `assume' insns in use by fwprop
to propagate conditional branch test information on target basic
blocks."
(maphash (lambda (_ f)
(when (and (>= (comp-func-speed f) 1)
;; No point to run this on dynamic scope as
;; this pass is effective only on local
;; variables.
(comp-func-l-p f)
(not (comp-func-has-non-local f)))
(let ((comp-func f)
(comp-pass (make-hash-table :test #'eq)))
(comp--collect-rhs)
(comp--add-cond-cstrs-simple)
(comp--add-cond-cstrs)
(comp--add-call-cstr)
(comp--log-func comp-func 3))))
(comp-ctxt-funcs-h comp-ctxt)))