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)))