Transform a code ensemble.
(specialize-code-ensemble code target-fn target-param const) → new-code
Function:
(defun specialize-code-ensemble (code target-fn target-param const) (declare (xargs :guard (and (code-ensemblep code) (identp target-fn) (identp target-param) (exprp const)))) (b* (((code-ensemble code) code)) (make-code-ensemble :transunits (specialize-transunit-ensemble code.transunits target-fn target-param const) :ienv code.ienv)))
Theorem:
(defthm code-ensemblep-of-specialize-code-ensemble (b* ((new-code (specialize-code-ensemble code target-fn target-param const))) (code-ensemblep new-code)) :rule-classes :rewrite)