• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Community
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
      • Kestrel-books
        • Crypto-hdwallet
        • Apt
        • Error-checking
        • Fty-extensions
        • Isar
        • Kestrel-utilities
        • Set
        • Soft
        • C
        • Bv
        • Imp-language
        • Event-macros
        • Java
        • Riscv
          • Specification
            • Semantics
            • Features
            • Instructions
              • Instr
              • Op-funct
              • Op-32-funct
              • Op-imm-funct
                • Op-imm-funct-fix
                • Op-imm-funct-case
                • Op-imm-funct-equiv
                • Op-imm-funct-p
                • Op-imm-funct-kind
                • Op-imm-funct-xori
                • Op-imm-funct-sltiu
                • Op-imm-funct-slti
                • Op-imm-funct-ori
                • Op-imm-funct-andi
                • Op-imm-funct-addi
              • Load-funct
              • Instr-validp
              • Branch-funct
              • Op-imms-funct
              • Store-funct
              • Op-imms-32-funct
              • Instr-option
              • Op-imm-32-funct
            • Encoding
            • States
            • Reads-over-writes
            • Semantics-equivalences
            • Decoding
            • Execution
          • Executable
          • Specialized
          • Optimized
        • Bitcoin
        • Ethereum
        • Yul
        • Zcash
        • ACL2-programming-language
        • Prime-fields
        • Json
        • Syntheto
        • File-io-light
        • Cryptography
        • Number-theory
        • Lists-light
        • Axe
        • Builtins
        • Solidity
        • Helpers
        • Htclient
        • Typed-lists-light
        • Arithmetic-light
      • X86isa
      • Axe
      • Execloader
    • Math
    • Testing-utilities
  • Instructions

Op-imm-funct

Fixtype of names of non-shift instructions with the OP-IMM opcode [ISA:2.4.1].

This is a tagged union type, introduced by fty::deftagsum.

Member Tags → Types
:addi → op-imm-funct-addi
:slti → op-imm-funct-slti
:sltiu → op-imm-funct-sltiu
:andi → op-imm-funct-andi
:ori → op-imm-funct-ori
:xori → op-imm-funct-xori

These instructions are encoded in the I-type format [ISA:2.2]. They are designated by the funct3 field, which motivates the name of this fixtype.

The OP-IMM opcode also includes shift instructions, but those are in a slightly different format, and thus their names are in a separate fixtype, op-imms-funct, to facilitate the definition of the fixtype of instructions.

Subtopics

Op-imm-funct-fix
Fixing function for op-imm-funct structures.
Op-imm-funct-case
Case macro for the different kinds of op-imm-funct structures.
Op-imm-funct-equiv
Basic equivalence relation for op-imm-funct structures.
Op-imm-funct-p
Recognizer for op-imm-funct structures.
Op-imm-funct-kind
Get the kind (tag) of a op-imm-funct structure.
Op-imm-funct-xori
Op-imm-funct-sltiu
Op-imm-funct-slti
Op-imm-funct-ori
Op-imm-funct-andi
Op-imm-funct-addi