Function: comp--remove-unreachable-blocks
comp--remove-unreachable-blocks is a byte-compiled function defined in
comp.el.gz.
Signature
(comp--remove-unreachable-blocks)
Documentation
Remove unreachable basic blocks.
Return t when one or more block was removed, nil otherwise.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/comp.el.gz
(defun comp--remove-unreachable-blocks ()
"Remove unreachable basic blocks.
Return t when one or more block was removed, nil otherwise."
(cl-loop
with ret
for bb being each hash-value of (comp-func-blocks comp-func)
for bb-name = (comp-block-name bb)
when (and (not (eq 'entry bb-name))
(null (comp-block-idom bb)))
do
(comp-log (format "Removing block: %s" bb-name) 1)
(remhash bb-name (comp-func-blocks comp-func))
(setf (comp-func-ssa-status comp-func) t
ret t)
finally return ret))