• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
      • Gl
      • Esim
      • Vl2014
        • Warnings
        • Primitives
        • Use-set
        • Syntax
        • Getting-started
        • Utilities
          • Name-database
          • Vl-gc
          • Make-lookup-alist
          • Symbol-list-names
          • Html-encoding
          • Nats-from
          • Redundant-mergesort
          • Longest-common-prefix
          • Vl-edition-p
            • Vl-parse-edition
          • Nat-listp
          • Vl-plural-p
          • Vl-remove-keys
          • Sum-nats
          • Vl-maybe-nat-listp
          • Url-encoding
          • Fast-memberp
          • Vl-string-keys-p
          • Max-nats
          • Longest-common-prefix-list
          • Character-list-listp
          • Vl-string-list-values-p
          • Vl-character-list-list-values-p
          • Remove-from-alist
          • Prefix-of-eachp
          • Vl-maybe-string-listp
          • Pos-listp
          • Vl-string-values-p
          • String-list-listp
          • True-list-listp
          • Symbol-list-listp
          • Explode-list
          • All-have-len
          • Min-nats
          • Debuggable-and
          • Vl-starname
          • Remove-equal-without-guard
          • String-fix
          • Longer-than-p
          • Clean-alist
          • Anyp
          • Or*
          • Fast-alist-free-each-alist-val
          • And*
          • Not*
          • Free-list-of-fast-alists
          • *nls*
        • Loader
        • Transforms
        • Lint
        • Mlib
        • Server
        • Kit
        • Printer
        • Esim-vl
        • Well-formedness
      • Sv
      • Fgl
      • Vwsim
      • Vl
      • X86isa
      • Svl
      • Rtl
    • Software-verification
    • Math
    • Testing-utilities
  • Utilities

Vl-edition-p

Editions of the Verilog or SystemVerilog standards that VL attempts to implement.

Certain parts of VL are configurable and can try follow different versions of the standard. We currently have some support for:

  • :verilog-2005 corresponds to IEEE Std 1364-2005.
  • :system-verilog-2012 corresponds to IEEE Std 1800-2012.

This is an ordinary defenum.

Function: vl-edition-p

(defun vl-edition-p (x)
  (declare (xargs :guard t))
  (or (eq x ':verilog-2005)
      (eq x ':system-verilog-2012)))

Theorem: type-when-vl-edition-p

(defthm type-when-vl-edition-p
  (implies (vl-edition-p x)
           (if (symbolp x)
               (if (not (equal x 't))
                   (not (equal x 'nil))
                 'nil)
             'nil))
  :rule-classes :compound-recognizer)

Subtopics

Vl-parse-edition
Getopt option parser for Verilog editions.