Function: make--comp--ssa-mvar
make--comp--ssa-mvar is a byte-compiled function defined in
comp.el.gz.
Signature
(make--comp--ssa-mvar &rest REST &key SLOT CONSTANT TYPE)
Documentation
Same as make--comp-mvar but set the id slot.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/comp.el.gz
;;; SSA pass specific code.
;; After limplification no edges are present between basic blocks and an
;; implicit phi is present for every slot at the beginning of every basic block.
;; This pass is responsible for building all the edges and replace all m-vars
;; plus placing the needed phis.
;; Because the number of phis placed is (supposed) to be the minimum necessary
;; this form is called 'minimal SSA form'.
;; This pass should be run every time basic blocks or m-var are shuffled.
(cl-defun make--comp--ssa-mvar (&rest rest &key _slot _constant _type)
"Same as `make--comp-mvar' but set the `id' slot."
(let ((mvar (apply #'make--comp-mvar rest)))
(setf (comp-mvar-id mvar) (sxhash-eq mvar))
mvar))