(* This file is autogenerated from Freeze.v by remake_packages.py *) Require Import Crypto.Specific.Framework.CurveParametersPackage. Require Import Crypto.Specific.Framework.ArithmeticSynthesis.BasePackage. Require Export Crypto.Specific.Framework.ArithmeticSynthesis.Freeze. Require Import Crypto.Specific.Framework.Packages. Require Import Crypto.Util.TagList. Module TAG. Inductive tags := freeze_sig. End TAG. Ltac add_freeze_sig pkg := Tag.update_by_tac_if_not_exists pkg TAG.freeze_sig ltac:(fun _ => let wt := Tag.get pkg TAG.wt in let m := Tag.get pkg TAG.m in let base := Tag.get pkg TAG.base in let sz := Tag.get pkg TAG.sz in let c := Tag.get pkg TAG.c in let bitwidth := Tag.get pkg TAG.bitwidth in let m_enc := Tag.get pkg TAG.m_enc in let base_pos := Tag.get pkg TAG.base_pos in let sz_nonzero := Tag.get pkg TAG.sz_nonzero in let freeze_sig := fresh "freeze_sig" in let freeze_sig := pose_freeze_sig wt m base sz c bitwidth m_enc base_pos sz_nonzero freeze_sig in constr:(freeze_sig)). Ltac add_Freeze_package pkg := let pkg := add_freeze_sig pkg in Tag.strip_subst_local pkg. Module MakeFreezePackage (PKG : PrePackage). Module Import MakeFreezePackageInternal := MakePackageBase PKG. Ltac get_freeze_sig _ := get TAG.freeze_sig. Notation freeze_sig := (ltac:(let v := get_freeze_sig () in exact v)) (only parsing). End MakeFreezePackage.