(vl-pp-gateinst x &key (ps 'ps)) → ps
Function:
(defun vl-pp-gateinst-fn (x ps) (declare (xargs :stobjs (ps))) (declare (xargs :guard (vl-gateinst-p x))) (let ((__function__ 'vl-pp-gateinst)) (declare (ignorable __function__)) (b* (((vl-gateinst x) x)) (vl-ps-seq (if x.atts (vl-pp-gateinst-atts-begin x.atts) ps) (vl-progindent) (vl-ps-span "vl_key" (vl-print-str (vl-gatetype-string x.type))) (if (not x.strength) ps (vl-ps-seq (vl-print " ") (vl-pp-gatestrength x.strength))) (if (not x.delay) ps (vl-ps-seq (vl-print " ") (vl-pp-gatedelay x.delay))) (if (not x.name) ps (vl-ps-seq (vl-print " ") (vl-print-wirename x.name) (vl-println? ""))) (if (not x.range) ps (vl-pp-range x.range)) (vl-print " (") (vl-pp-plainarglist x.args nil) (vl-println ") ;")))))
Theorem:
(defthm vl-pp-gateinst-fn-of-vl-gateinst-fix-x (equal (vl-pp-gateinst-fn (vl-gateinst-fix x) ps) (vl-pp-gateinst-fn x ps)))
Theorem:
(defthm vl-pp-gateinst-fn-vl-gateinst-equiv-congruence-on-x (implies (vl-gateinst-equiv x x-equiv) (equal (vl-pp-gateinst-fn x ps) (vl-pp-gateinst-fn x-equiv ps))) :rule-classes :congruence)