• Top
    • Documentation
    • Books
    • Recursion-and-induction
    • Boolean-reasoning
    • Debugging
    • Projects
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
      • Gl
      • Esim
        • Symbolic-test-vectors
          • Defstv
          • Stv-compile
          • Symbolic-test-vector-format
          • Stv-implementation-details
          • Compiled-stv-p
            • Compiled-stv
            • Make-compiled-stv
            • Change-compiled-stv
              • Honsed-compiled-stv
              • Make-honsed-compiled-stv
              • Compiled-stv->restrict-alist
              • Compiled-stv->override-paths
              • Compiled-stv->override-bits
              • Compiled-stv->out-usersyms
              • Compiled-stv->out-extract-alists
              • Compiled-stv->nst-extract-alists
              • Compiled-stv->nphases
              • Compiled-stv->int-extract-alists
              • Compiled-stv->in-usersyms
              • Compiled-stv->expanded-ins
            • Stv-run-for-all-dontcares
            • Stv-run
            • Stv-process
            • Stv-run-check-dontcares
            • Symbolic-test-vector-composition
            • Stv-expand
            • Stv-easy-bindings
            • Stv-debug
            • Stv-run-squash-dontcares
            • Stvdata-p
            • Stv-doc
            • Stv2c
            • Stv-widen
            • Stv-out->width
            • Stv-in->width
            • Stv->outs
            • Stv-number-of-phases
            • Stv->ins
            • Stv-suffix-signals
            • Stv->vars
          • Esim-primitives
          • E-conversion
          • Esim-steps
          • Patterns
          • Mod-internal-paths
          • Defmodules
          • Esim-simplify-update-fns
          • Esim-tutorial
          • Esim-vl
        • Vl2014
        • Sv
        • Fgl
        • Vl
        • X86isa
        • Svl
        • Rtl
      • Software-verification
      • Testing-utilities
      • Math
    • Compiled-stv-p

    Change-compiled-stv

    A copying macro that lets you create new compiled-stv-p structures, based on existing structures.

    Syntax:

    (change-compiled-stv x 
                         [:nphases <nphases>] 
                         [:nst-extract-alists <nst-extract-alists>] 
                         [:out-extract-alists <out-extract-alists>] 
                         [:int-extract-alists <int-extract-alists>] 
                         [:override-bits <override-bits>] 
                         [:restrict-alist <restrict-alist>] 
                         [:in-usersyms <in-usersyms>] 
                         [:out-usersyms <out-usersyms>] 
                         [:expanded-ins <expanded-ins>] 
                         [:override-paths <override-paths>]) 
    

    This is a sometimes useful alternative to make-compiled-stv. It constructs a new compiled-stv-p structure that is a copy of x, except that you can explicitly change some particular fields. Any fields you don't mention just keep their values from x.

    Definition

    This is an ordinary change- macro introduced by std::defaggregate.

    Macro: change-compiled-stv

    (defmacro
         change-compiled-stv (x &rest args)
         (std::change-aggregate
              'compiled-stv
              x args
              '((:nphases . compiled-stv->nphases)
                (:nst-extract-alists . compiled-stv->nst-extract-alists)
                (:out-extract-alists . compiled-stv->out-extract-alists)
                (:int-extract-alists . compiled-stv->int-extract-alists)
                (:override-bits . compiled-stv->override-bits)
                (:restrict-alist . compiled-stv->restrict-alist)
                (:in-usersyms . compiled-stv->in-usersyms)
                (:out-usersyms . compiled-stv->out-usersyms)
                (:expanded-ins . compiled-stv->expanded-ins)
                (:override-paths . compiled-stv->override-paths))
              'change-compiled-stv
              'nil))