Try to load a description from the search path.
(vl-load-description name st state) → (mv st state)
Function:
(defun vl-load-description (name st state) (declare (xargs :stobjs (state))) (declare (xargs :guard (and (stringp name) (vl-loadstate-p st)))) (let ((__function__ 'vl-load-description)) (declare (ignorable __function__)) (b* (((vl-loadstate st) st) ((vl-loadconfig config) st.config) (warnings (vl-parsestate->warnings st.pstate)) ((mv filename warnings) (time$ (vl-find-basename/extension name config.search-exts (vl-loadstate->spcache st) warnings) :msg "~s0 (search ~s1: ~st sec, ~sa bytes)~%" :args (list (vl-loadstate-pad st) name) :mintime (vl-loadconfig->mintime (vl-loadstate->config st)))) (st (vl-loadstate-set-warnings warnings)) ((unless filename) (mv st state))) (time$ (vl-load-file filename st state) :msg "~s0 (*loaded ~f1; ~st sec, ~sa bytes)~%" :args (list (vl-loadstate-pad st) filename) :mintime (vl-loadconfig->mintime (vl-loadstate->config st))))))
Theorem:
(defthm vl-loadstate-p-of-vl-load-description.st (b* (((mv ?st acl2::?state) (vl-load-description name st state))) (vl-loadstate-p st)) :rule-classes :rewrite)
Theorem:
(defthm state-p1-of-vl-load-description.state (implies (force (state-p1 state)) (b* (((mv ?st acl2::?state) (vl-load-description name st state))) (state-p1 state))) :rule-classes :rewrite)
Theorem:
(defthm unique-names-after-vl-load-description (b* (((mv new-st &) (vl-load-description name st state))) (implies (uniquep (vl-descriptionlist->names (vl-loadstate->descs st))) (no-duplicatesp (vl-descriptionlist->names (vl-loadstate->descs new-st))))))