(vl-design-to-e-main x) → new-x
Function:
(defun vl-design-to-e-main (x) (declare (xargs :guard (vl-design-p x))) (let ((__function__ 'vl-design-to-e-main)) (declare (ignorable __function__)) (b* (((vl-design x) (vl-design-fix x)) (mods x.mods) (modalist (vl-modalist mods)) ((mv mods eal) (vl-modulelist-make-esims mods mods modalist nil))) (fast-alist-free eal) (fast-alist-free modalist) (clear-memoize-table 'vl-make-n-bit-res-module) (clear-memoize-table 'vl-portdecls-to-i/o) (clear-memoize-table 'vl-portlist-msb-bit-pattern) (clear-memoize-table 'vl-module-wirealist) (change-vl-design x :mods mods))))
Theorem:
(defthm vl-design-p-of-vl-design-to-e-main (b* ((new-x (vl-design-to-e-main x))) (vl-design-p new-x)) :rule-classes :rewrite)