[ADDI]
name = "Add immediate"
opcode = "OP-IMM / ADDI"
encoding = "I"
extension = "I"
long_description = """
ADDI adds the sign-extended 12-bit immediate to register rs1. Arithmetic overflow is ignored and
the result is simply the low XLEN bits of the result. ADDI rd, rs1, 0 is used to implement the MV
rd, rs1 assembler pseudoinstruction.
"""


[SLTI]
name = "Set less than immediate"
opcode = "OP-IMM / SLTI"
encoding = "I"
extension = "I"
long_description = """
SLTI (set less than immediate) places the value 1 in register rd if register rs1 is less than the signextended immediate when both are treated as signed numbers, else 0 is written to rd. SLTIU is
similar but compares the values as unsigned numbers (i.e., the immediate is first sign-extended to
XLEN bits then treated as an unsigned number). Note, SLTIU rd, rs1, 1 sets rd to 1 if rs1 equals
zero, otherwise sets rd to 0 (assembler pseudoinstruction SEQZ rd, rs)
"""


[SLTIU]
name = "Set less than immediate unsigned"
opcode = "OP-IMM / SLTIU"
encoding = "I"
extension = "I"
long_description = """
SLTI (set less than immediate) places the value 1 in register rd if register rs1 is less than the signextended immediate when both are treated as signed numbers, else 0 is written to rd. SLTIU is
similar but compares the values as unsigned numbers (i.e., the immediate is first sign-extended to
XLEN bits then treated as an unsigned number). Note, SLTIU rd, rs1, 1 sets rd to 1 if rs1 equals
zero, otherwise sets rd to 0 (assembler pseudoinstruction SEQZ rd, rs)
"""

[ANDI]
name = "AND immediate"
opcode = "OP-IMM / ANDI"
encoding = "I"
extension = "I"
long_description = """
ANDI, ORI, XORI are logical operations that perform bitwise AND, OR, and XOR on register rs1
and the sign-extended 12-bit immediate and place the result in rd. Note, XORI rd, rs1, -1 performs
a bitwise logical inversion of register rs1 (assembler pseudoinstruction
NOT rd, rs).
"""

[ORI]
name = "OR immediate"
opcode = "OP-IMM / ORI"
encoding = "I"
extension = "I"
long_description = """
ANDI, ORI, XORI are logical operations that perform bitwise AND, OR, and XOR on register rs1
and the sign-extended 12-bit immediate and place the result in rd. Note, XORI rd, rs1, -1 performs
a bitwise logical inversion of register rs1 (assembler pseudoinstruction
NOT rd, rs).
"""

[XORI]
name = "XOR immediate"
opcode = "OP-IMM / XORI"
encoding = "I"
extension = "I"
long_description = """
ANDI, ORI, XORI are logical operations that perform bitwise AND, OR, and XOR on register rs1
and the sign-extended 12-bit immediate and place the result in rd. Note, XORI rd, rs1, -1 performs
a bitwise logical inversion of register rs1 (assembler pseudoinstruction
NOT rd, rs).
"""

[SLLI]
name = "Shift left logical immediate"
opcode = "OP-IMM / SLLI"
encoding = "I"
extension = "I"
long_description = """
Shifts by a constant are encoded as a specialization of the I-type
format.  The operand to be shiftedis inrs1, and the shift amount is
encoded in the lower 5 bits of the I-immediate field.  The rightshift
type is encoded in bit 30.  SLLI is a logical left shift (zeros are
shifted into the lower bits); SRLI is a logical right shift (zeros are
shifted into the upper bits); and SRAI is an arithmetic rightshift (the
original sign bit is copied into the vacated upper bits).
"""

[SRLI]
name = "Shift right logical immediate"
opcode = "OP-IMM / SRLI"
encoding = "I"
extension = "I"
long_description = """
Shifts by a constant are encoded as a specialization of the I-type
format.  The operand to be shiftedis inrs1, and the shift amount is
encoded in the lower 5 bits of the I-immediate field.  The rightshift
type is encoded in bit 30.  SLLI is a logical left shift (zeros are
shifted into the lower bits); SRLI is a logical right shift (zeros are
shifted into the upper bits); and SRAI is an arithmetic rightshift (the
original sign bit is copied into the vacated upper bits).
"""

[SRAI]
name="Shift right arithmetic immediate"
opcode = "OP-IMM / SRAI"
encoding = "I"
extension = "I"
long_description = """
Shifts by a constant are encoded as a specialization of the I-type
format.  The operand to be shiftedis inrs1, and the shift amount is
encoded in the lower 5 bits of the I-immediate field.  The rightshift
type is encoded in bit 30.  SLLI is a logical left shift (zeros are
shifted into the lower bits); SRLI is a logical right shift (zeros are
shifted into the upper bits); and SRAI is an arithmetic rightshift (the
original sign bit is copied into the vacated upper bits).
"""

[LUI]
name = "Load upper immediate"
opcode = "LUI"
encoding = "U"
extension = "I"
long_description = """
LUI (load upper immediate) is used to build 32-bit constants and uses the U-type format.  LUIplaces the U-immediate value in the top 20 bits of the destination registerrd, filling in the lowest12 bits with zeros.
"""

[AUIPC]
name = "Add upper immediate to PC"
opcode = "AUIPC"
encoding = "U"
extension = "I"
long_description = """
AUIPC (add upper immediate topc) is used to buildpc-relative addresses and uses the U-typeformat.  AUIPC forms a 32-bit offset from the 20-bit U-immediate, filling in the lowest 12 bits withzeros, adds this offset to the address of the AUIPC instruction, then places the result in registerrd.
"""

[ADD]
name = "Add"
opcode = "OP / ADD / 0"
encoding = "R"
extension = "I"
long_description = """
ADD performs the addition of rs 1andrs2. SUB performs the subtraction of rs2 from rs1. Overflow sare ignored and the low XLEN bits of results are written to the destination rd.
"""


[SUB]
name = "SUB"
opcode = "OP / SUB / 0b0100000"
encoding = "R"
extension = "I"
long_description = """
ADD performs the addition of rs 1andrs2. SUB performs the subtraction of rs2 from rs1. Overflow sare ignored and the low XLEN bits of results are written to the destination rd.
"""

[SLT]
name = "Signed less than compare"
opcode = "OP / SLT / 0"
encoding = "R"
extension = "I"
long_description = """
SLT and SLTU perform signed and unsigned compares respectively, writing 1 tordifrs1<rs2, 0 otherwise.  Note,
SLTU rd,x0,rs2 sets rd to  1  if rs2 is  not  equal  to  zero,  otherwise  sets rd to  zero  (assembler pseudoinstruction SNEZ rd, rs).
"""

[SLTU]
name = "Signed less than compare unsigned"
opcode = "OP / SLTU / 0"
encoding = "R"
extension = "I"
long_description = """
SLT and SLTU perform signed and unsigned compares respectively, writing 1 tordifrs1<rs2, 0 otherwise.  Note,
SLTU rd,x0,rs2 sets rd to  1  if rs2 is  not  equal  to  zero,  otherwise  sets rd to  zero  (assembler pseudoinstruction SNEZ rd, rs).
"""

[AND]
name = "AND"
opcode = "OP / AND / 0"
encoding = "R"
extension = "I"
long_description = """
AND, OR, and XOR perform bitwise logical operations.
"""

[OR]
name = "OR"
opcode = "OP / OR / 0"
encoding = "R"
extension = "I"
long_description = """
AND, OR, and XOR perform bitwise logical operations.
"""

[XOR]
name = "XOR"
opcode = "OP / XOR / 0"
encoding = "R"
extension = "I"
long_description = """
AND, OR, and XOR perform bitwise logical operations.
"""

[SLL]
name = "Shift left logical"
opcode = "OP / SLL / 0"
encoding = "R"
extension = "I"
long_description = """
SLL, SRL, and SRA perform logical left, logical right, and arithmetic right shifts on the value inregister rs1 by the shift amount held in the lower 5 bits of register rs2
"""

[SRL]
name = "Shift right logical"
opcode = "OP / SRL / 0"
encoding = "R"
extension = "I"
long_description = """
SLL, SRL, and SRA perform logical left, logical right, and arithmetic right shifts on the value inregister rs1 by the shift amount held in the lower 5 bits of register rs2
"""

[SRA]
name = "Shift right arithmetic"
opcode = "OP / SRA / 0b0100000"
encoding = "R"
extension = "I"
long_description = """
SLL, SRL, and SRA perform logical left, logical right, and arithmetic right shifts on the value inregister rs1 by the shift amount held in the lower 5 bits of register rs2
"""

[NOP]
name = "No operation"
opcode = "OP-IMM / ADDI"
encoding = "I"
extension = "I"
long_description = """
The NOP instruction does not change any architecturally visible state, except for advancing the pc and incrementing any applicable performance counters.  NOP is encoded as ADDI x0, x0, 0.
"""

[J]
name = "Unconditional jump"
opcode = "JAL"
encoding = "J"
extension = "I"
long_description = """
Plain unconditional jumps (assembler pseudoinstruction J) are encoded as
a JAL with rd=x0.
"""

[JAL]
name = "Jump and link"
opcode = "JAL"
encoding = "J"
extension = "I"
long_description = """
The  jump  and  link  (JAL)  instruction  uses  the  J-type  format,  where  the  J-immediate  encodes  asigned offset in multiples of 2 bytes.  The offset is sign-extended and added to the address of thejump instruction to form the jump target address.  Jumps can therefore target a±1 MiB range.  JAL stores the address of the instruction following the jump (pc+4) into register rd.  The standard software calling convention uses x1 as the return address register and x5 as an alternate link register
"""

[JALR]
name = "Jump and link register"
opcode = "JAL"
encoding = "I"
extension = "I"
long_description = """
The indirect jump instruction JALR (jump and link register) uses the I-type encoding. The target
address is obtained by adding the sign-extended 12-bit I-immediate to the register rs1, then setting
the least-significant bit of the result to zero. The address of the instruction following the jump
(pc+4) is written to register rd. Register x0 can be used as the destination if the result is not
required.
"""

[BEQ]
name = "Branch if equal"
opcode = "BRANCH / BEQ"
encoding = "B"
extension = "I"
long_description = """
Branch instructions compare two registers. BEQ and BNE take the branch if registers rs1 and rs2
are equal or unequal respectively. BLT and BLTU take the branch if rs1 is less than rs2, using
signed and unsigned comparison respectively. BGE and BGEU take the branch if rs1 is greater
than or equal to rs2, using signed and unsigned comparison respectively. Note, BGT, BGTU,
BLE, and BLEU can be synthesized by reversing the operands to BLT, BLTU, BGE, and BGEU,
respectively
"""


[BNE]
name = "Branch if not equal"
opcode = "BRANCH / BNE"
encoding = "B"
extension = "I"
long_description = """
Branch instructions compare two registers. BEQ and BNE take the branch if registers rs1 and rs2
are equal or unequal respectively. BLT and BLTU take the branch if rs1 is less than rs2, using
signed and unsigned comparison respectively. BGE and BGEU take the branch if rs1 is greater
than or equal to rs2, using signed and unsigned comparison respectively. Note, BGT, BGTU,
BLE, and BLEU can be synthesized by reversing the operands to BLT, BLTU, BGE, and BGEU,
respectively
"""

[BLT]
name = "Branch if less than"
opcode = "BRANCH / BLT"
encoding = "B"
extension = "I"
long_description = """
Branch instructions compare two registers. BEQ and BNE take the branch if registers rs1 and rs2
are equal or unequal respectively. BLT and BLTU take the branch if rs1 is less than rs2, using
signed and unsigned comparison respectively. BGE and BGEU take the branch if rs1 is greater
than or equal to rs2, using signed and unsigned comparison respectively. Note, BGT, BGTU,
BLE, and BLEU can be synthesized by reversing the operands to BLT, BLTU, BGE, and BGEU,
respectively
"""

[BLTU]
name = "Branch if less than unsigned"
opcode = "BRANCH / BLTU"
encoding = "B"
extension = "I"
long_description = """
Branch instructions compare two registers. BEQ and BNE take the branch if registers rs1 and rs2
are equal or unequal respectively. BLT and BLTU take the branch if rs1 is less than rs2, using
signed and unsigned comparison respectively. BGE and BGEU take the branch if rs1 is greater
than or equal to rs2, using signed and unsigned comparison respectively. Note, BGT, BGTU,
BLE, and BLEU can be synthesized by reversing the operands to BLT, BLTU, BGE, and BGEU,
respectively
"""

[BGE]
name = "Branch if greater or equal"
opcode = "BRANCH / BGE"
encoding = "B"
extension = "I"
long_description = """
Branch instructions compare two registers. BEQ and BNE take the branch if registers rs1 and rs2
are equal or unequal respectively. BLT and BLTU take the branch if rs1 is less than rs2, using
signed and unsigned comparison respectively. BGE and BGEU take the branch if rs1 is greater
than or equal to rs2, using signed and unsigned comparison respectively. Note, BGT, BGTU,
BLE, and BLEU can be synthesized by reversing the operands to BLT, BLTU, BGE, and BGEU,
respectively
"""

[BGEU]
name = "Branch if greater or equal unsigned"
opcode = "BRANCH / BGEU"
encoding = "B"
extension = "I"
long_description = """
Branch instructions compare two registers. BEQ and BNE take the branch if registers rs1 and rs2
are equal or unequal respectively. BLT and BLTU take the branch if rs1 is less than rs2, using
signed and unsigned comparison respectively. BGE and BGEU take the branch if rs1 is greater
than or equal to rs2, using signed and unsigned comparison respectively. Note, BGT, BGTU,
BLE, and BLEU can be synthesized by reversing the operands to BLT, BLTU, BGE, and BGEU,
respectively
"""

[LW]
name = "Load word"
opcode = "LOAD / width"
encoding = "I"
extension = "I"
long_description = """
The LW instruction loads a 32-bit value from memory into rd. LH loads a 16-bit value from memory,
then sign-extends to 32-bits before storing in rd. LHU loads a 16-bit value from memory but then
zero extends to 32-bits before storing in rd. LB and LBU are defined analogously for 8-bit values.
"""

[LH]
name = "Load half word"
opcode = "LOAD / width"
encoding = "I"
extension = "I"
long_description = """
The LW instruction loads a 32-bit value from memory into rd. LH loads a 16-bit value from memory,
then sign-extends to 32-bits before storing in rd. LHU loads a 16-bit value from memory but then
zero extends to 32-bits before storing in rd. LB and LBU are defined analogously for 8-bit values.
"""

[LHU]
name = "Load half word unsigned"
opcode = "LOAD / width"
encoding = "I"
extension = "I"
long_description = """
The LW instruction loads a 32-bit value from memory into rd. LH loads a 16-bit value from memory,
then sign-extends to 32-bits before storing in rd. LHU loads a 16-bit value from memory but then
zero extends to 32-bits before storing in rd. LB and LBU are defined analogously for 8-bit values.
"""

[LB]
name = "Load byte"
opcode = "LOAD / width"
encoding = "I"
extension = "I"
long_description = """
The LW instruction loads a 32-bit value from memory into rd. LH loads a 16-bit value from memory,
then sign-extends to 32-bits before storing in rd. LHU loads a 16-bit value from memory but then
zero extends to 32-bits before storing in rd. LB and LBU are defined analogously for 8-bit values.
"""

[LBU]
name = "Load byte unsigned"
opcode = "LOAD / width"
encoding = "I"
extension = "I"
long_description = """
The LW instruction loads a 32-bit value from memory into rd. LH loads a 16-bit value from memory,
then sign-extends to 32-bits before storing in rd. LHU loads a 16-bit value from memory but then
zero extends to 32-bits before storing in rd. LB and LBU are defined analogously for 8-bit values.
"""


[SW]
name = "Store word"
opcode = "STORE / width"
encoding = "S"
extension = "I"
long_description = """
The SW, SH, and SB instructions store 32-bit, 16-bit, and 8-bit values from the low bits of register
rs2 to memory
"""

[SH]
name = "Store half word"
opcode = "STORE / width"
encoding = "S"
extension = "I"
long_description = """
The SW, SH, and SB instructions store 32-bit, 16-bit, and 8-bit values from the low bits of register
rs2 to memory
"""

[SB]
name = "Store byte"
opcode = "STORE / width"
encoding = "S"
extension = "I"
long_description = """
The SW, SH, and SB instructions store 32-bit, 16-bit, and 8-bit values from the low bits of register
rs2 to memory
"""

[FENCE]
name = "Fence"
opcode = "MISC-MEM / FENCE"
encoding = "I"
extension = "I"
long_description = """
The FENCE instruction is used to order device I/O and memory accesses as
viewed by other RISCV harts and external devices or coprocessors. Any
combination of device input (I), device output (O), memory reads (R),
and memory writes (W) may be ordered with respect to any combination of
the same. Informally, no other RISC-V hart or external device can
observe any operation in the successor set following a FENCE before any
operation in the predecessor set preceding the FENCE. Chapter 14
provides a precise description of the RISC-V memory consistency model
"""

[ECALL]
name = "Environment call"
opcode = "SYSTEM / PRIV / ECALL"
encoding = "I"
extension = "I"
long_description = """
The ECALL instruction is used to make a service request to the execution environment. The EEI
will define how parameters for the service request are passed, but usually these will be in defined
locations in the integer register file
"""

[EBREAK]
name = "Environment break point"
opcode = "SYSTEM / PRIV / EBREAK"
encoding = "I"
extension = "I"
long_description = """
The EBREAK instruction is used to return control to a debugging environment.
"""

[HINT]
name = "Hint"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
RV32I reserves a large encoding space for HINT instructions, which are usually used to communicate performance hints to the microarchitecture. HINTs are encoded as integer computational
instructions with rd=x0. Hence, like the NOP instruction, HINTs do not change any architecturally
visible state, except for advancing the pc and any applicable performance counters. Implementations are always allowed to ignore the encoded hints.
"""

["FENCE.I"]
name = "Fence"
opcode = "MISC-MEM / FENCE.I"
encoding = "I"
extension = "Zifencei"
long_description = """
The FENCE.I instruction is used to synchronize the instruction and data streams. RISC-V does
not guarantee that stores to instruction memory will be made visible to instruction fetches on a
RISC-V hart until that hart executes a FENCE.I instruction. A FENCE.I instruction ensures that
a subsequent instruction fetch on a RISC-V hart will see any previous data stores already visible to
the same RISC-V hart. FENCE.I does not ensure that other RISC-V harts’ instruction fetches will
observe the local hart’s stores in a multiprocessor system. To make a store to instruction memory
visible to all RISC-V harts, the writing hart has to execute a data FENCE before requesting that
all remote RISC-V harts execute a FENCE.I.

The unused fields in the FENCE.I instruction, imm[11:0], rs1, and rd, are reserved for finer-grain
fences in future extensions. For forward compatibility, base implementations shall ignore these
fields, and standard software shall zero these fields.
"""

[ADDIW]
name = "Add immediate word"
opcode = "OP-IMM-32 / ADDIW"
encoding = "I"
extension = "I"
long_description = """
ADDIW is an RV64I instruction that adds the sign-extended 12-bit immediate to register rs1
and produces the proper sign-extension of a 32-bit result in rd. Overflows are ignored and the
result is the low 32 bits of the result sign-extended to 64 bits. Note, ADDIW rd, rs1, 0 writes
the sign-extension of the lower 32 bits of register rs1 into register rd (assembler pseudoinstruction
SEXT.W)
"""

[SLLIW]
name = "Shift left logical immediate word"
opcode = "OP-IMM-32 / SLLIW"
encoding = "I"
extension = "I"
long_description = """
SLLIW, SRLIW, and SRAIW are RV64I-only instructions that are analogously defined but operate
on 32-bit values and produce signed 32-bit results. SLLIW, SRLIW, and SRAIW encodings with
imm[5] ̸= 0 are reserved.
"""

[SRLIW]
name = "Shift right logical immediate word"
opcode = "OP-IMM-32 / SLLIW"
encoding = "I"
extension = "I"
long_description = """
SLLIW, SRLIW, and SRAIW are RV64I-only instructions that are analogously defined but operate
on 32-bit values and produce signed 32-bit results. SLLIW, SRLIW, and SRAIW encodings with
imm[5] ̸= 0 are reserved.
"""


[SRAIW]
name = "Shift right arithmetic immediate word"
opcode = "OP-IMM-32 / SRAIW"
encoding = "I"
extension = "I"
long_description = """
SLLIW, SRLIW, and SRAIW are RV64I-only instructions that are analogously defined but operate
on 32-bit values and produce signed 32-bit results. SLLIW, SRLIW, and SRAIW encodings with
imm[5] ̸= 0 are reserved.
"""

[ADDW]
name = "Add word"
opcode = "OP-32 / ADDW"
encoding = "R"
extension = "I"
long_description = """
ADDW and SUBW are RV64I-only instructions that are defined analogously to ADD and SUB
but operate on 32-bit values and produce signed 32-bit results. Overflows are ignored, and the low
32-bits of the result is sign-extended to 64-bits and written to the destination register
"""

[SUBW]
name = "Subtract word"
opcode = "OP-32 / SUBW"
encoding = "R"
extension = "I"
long_description = """
ADDW and SUBW are RV64I-only instructions that are defined analogously to ADD and SUB
but operate on 32-bit values and produce signed 32-bit results. Overflows are ignored, and the low
32-bits of the result is sign-extended to 64-bits and written to the destination register
"""

[SLLW]
name = "Shift left logical word"
opcode = "OP-32 / SLLW"
encoding = "R"
extension = "I"
long_description = """
SLLW, SRLW, and SRAW are RV64I-only instructions that are analogously defined but operate
on 32-bit values and produce signed 32-bit results. The shift amount is given by rs2[4:0]
"""

[SRLW]
name = "Shift right logical word"
opcode = "OP-32 / SRLW"
encoding = "R"
extension = "I"
long_description = """
SLLW, SRLW, and SRAW are RV64I-only instructions that are analogously defined but operate
on 32-bit values and produce signed 32-bit results. The shift amount is given by rs2[4:0]
"""

[SRAW]
name = "Shift right arithmetic word"
opcode = "OP-32 / SRAW"
encoding = "R"
extension = "I"
long_description = """
SLLW, SRLW, and SRAW are RV64I-only instructions that are analogously defined but operate
on 32-bit values and produce signed 32-bit results. The shift amount is given by rs2[4:0]
"""

[LA]
name = "Load absolute address"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
Load absolute address, where delta = symbol − pc.

Non-position-independent version:
auipc rd, delta[31 : 12] + delta[11]
addi rd, rd, delta[11:0]

Position-independent version:
auipc rd, delta[31 : 12] + delta[11]
l{w|d} rd, rd, delta[11:0]

"""

[LLA]
name = "Load local address"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
Load local address, where delta = symbol − pc

auipc rd, delta[31 : 12] + delta[11]
addi rd, rd, delta[11:0]
"""

["LB/LH/LW/LD"]
name = "Load global byte/halfword/word/double"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
Load global

auipc rd, delta[31 : 12] + delta[11]
l{b|h|w|d} rd, delta[11:0](rd)
"""

["SB/SH/SW/SD"]
name = "Store global byte/halfword/word/double"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
Store global

auipc rt, delta[31 : 12] + delta[11]
s{b|h|w|d} rd, delta[11:0](rt)
"""

[LI]
name = "Load immediate"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
Load immediate.  Expands to "myriad sequences".
"""

[MV]
name = "Move"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
Copy register

add rd, rs, 0
"""

[NOT]
name = "One's complement negate"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
One's complement negation.

xori rd, rs, -1
"""

[NEG]
name = "Two's complement negate"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
Two's complement negation.

sub rd, x0, rs
"""

[NEGW]
name = "Two's complement negate word"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
Two's complement negation, word length.

subw rd, x0, rs
"""


["SEXT.W"]
name = "Sign extend word"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
Sign extend word

addiw rd, rs, 0
"""

[SEQZ]
name = "Set if equal to zero"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
sltiu rd, rs, 1
"""

[SNEZ]
name = "Set if not equal zero"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
sltu rd, x0, rs
"""

[SLTZ]
name = "Set if less than zero"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
slt rd, rs, x0
"""


[SGTZ]
name = "Set if greater than zero"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
lst rd, x0, rs
"""

[BEQZ]
name = "Branch if equal to zero"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
beq rs, x0, offset
"""

[BNEZ]
name = "Branch if not equal zero"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
bne rs, x0, offset
"""

[BLEZ]
name = "Branch if less than zero"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
bge x0, rs, offset
"""


[BGEZ]
name = "Branch if greater or equal to zero"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
bge rs, x0, offset
"""

[BLTZ]
name = "Branch if less than zero"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
blt rs, x0, offset
"""

[BGTZ]
name = "Branch if greater than zero"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
blt x0, rs, offset
"""

[BTG]
name = "Branch if greater than"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
blt rt, rs, offset
"""


[BLE]
name = "Branch if less than or equal"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
bge rt, rs, offset
"""

[BGTU]
name = "Branch if greater than, unsigned"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
bltu rt, rs, offset
"""

[BLEU]
name = "Branch if less than, unsigned"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
bgeu rt, rs, offset
"""

[JR]
name = "Jump register"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
jalr x0, 0(rs)
"""


[RET]
name = "Return from subroutine"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
jalr x0, 0(x1)
"""

[CALL]
name = "Call far-away subroutine"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
auipc x1, offset[31 : 12] + offset[11]
jalr x1, offset[11:0](x1)
"""

[TAIL]
name = "Tail call far-away subroutine"
opcode = ""
encoding = "pseudo"
extension = "I"
long_description = """
auipc x6, offset[31 : 12] + offset[11]
jalr x0, offset[11:0](x6)
"""

[MUL]
name = "Multiply"
opcode = "OP / MUL / MULDIV"
encoding = "R"
extension = "M"
long_description = """
MUL performs an XLEN-bit×XLEN-bit multiplication of rs1 by rs2 and places the lower XLEN bits
in the destination register. MULH, MULHU, and MULHSU perform the same multiplication but re-
turn the upper XLEN bits of the full 2×XLEN-bit product, for signed×signed, unsigned×unsigned,
and signed rs1×unsigned rs2 multiplication, respectively. If both the high and low bits of the same
product are required, then the recommended code sequence is: MULH[[S]U] rdh, rs1, rs2; MUL
rdl, rs1, rs2 (source register specifiers must be in same order and rdh cannot be the same as rs1 or
rs2). Microarchitectures can then fuse these into a single multiply operation instead of performing
two separate multiplies.
"""


[MULH]
name = "Multiply high"
opcode = "OP / MULH / MULDIV"
encoding = "R"
extension = "M"
long_description = """
MUL performs an XLEN-bit×XLEN-bit multiplication of rs1 by rs2 and places the lower XLEN bits
in the destination register. MULH, MULHU, and MULHSU perform the same multiplication but re-
turn the upper XLEN bits of the full 2×XLEN-bit product, for signed×signed, unsigned×unsigned,
and signed rs1×unsigned rs2 multiplication, respectively. If both the high and low bits of the same
product are required, then the recommended code sequence is: MULH[[S]U] rdh, rs1, rs2; MUL
rdl, rs1, rs2 (source register specifiers must be in same order and rdh cannot be the same as rs1 or
rs2). Microarchitectures can then fuse these into a single multiply operation instead of performing
two separate multiplies.
"""


[MULHU]
name = "Multiply high unsigned"
opcode = "OP / MULHW / MULDIV"
encoding = "R"
extension = "M"
long_description = """
MUL performs an XLEN-bit×XLEN-bit multiplication of rs1 by rs2 and places the lower XLEN bits
in the destination register. MULH, MULHU, and MULHSU perform the same multiplication but re-
turn the upper XLEN bits of the full 2×XLEN-bit product, for signed×signed, unsigned×unsigned,
and signed rs1×unsigned rs2 multiplication, respectively. If both the high and low bits of the same
product are required, then the recommended code sequence is: MULH[[S]U] rdh, rs1, rs2; MUL
rdl, rs1, rs2 (source register specifiers must be in same order and rdh cannot be the same as rs1 or
rs2). Microarchitectures can then fuse these into a single multiply operation instead of performing
two separate multiplies.
"""


[MULHSU]
name = "Multiply high signed-unsigned"
opcode = "OP / MULHSW / MULDIV"
encoding = "R"
extension = "M"
long_description = """
MUL performs an XLEN-bit×XLEN-bit multiplication of rs1 by rs2 and places the lower XLEN bits
in the destination register. MULH, MULHU, and MULHSU perform the same multiplication but re-
turn the upper XLEN bits of the full 2×XLEN-bit product, for signed×signed, unsigned×unsigned,
and signed rs1×unsigned rs2 multiplication, respectively. If both the high and low bits of the same
product are required, then the recommended code sequence is: MULH[[S]U] rdh, rs1, rs2; MUL
rdl, rs1, rs2 (source register specifiers must be in same order and rdh cannot be the same as rs1 or
rs2). Microarchitectures can then fuse these into a single multiply operation instead of performing
two separate multiplies.
"""


[MULW]
name = "Multiply word"
opcode = "OP-32 / MULW / MULDIV"
encoding = "R"
extension = "M"
long_description = """
MULW is an RV64 instruction that multiplies the lower 32 bits of the source registers, placing the
sign-extension of the lower 32 bits of the result into the destination register.
"""


[DIV]
name = "Divide"
opcode = "OP / DIV / MULDIV"
encoding = "R"
extension = "M"
long_description = """
DIV and DIVU perform an XLEN bits by XLEN bits signed and unsigned integer division of rs1 by
rs2, rounding towards zero. REM and REMU provide the remainder of the corresponding division
operation. For REM, the sign of the result equals the sign of the dividend.
For both signed and unsigned division, it holds that dividend = divisor × quotient + remainder.
If both the quotient and remainder are required from the same division, the recommended code
sequence is: DIV[U] rdq, rs1, rs2; REM[U] rdr, rs1, rs2 (rdq cannot be the same as rs1 or rs2).
Microarchitectures can then fuse these into a single divide operation instead of performing two
separate divides.
"""

[DIVU]
name = "Divide unsigned"
opcode = "OP / DIVU / MULDIV"
encoding = "R"
extension = "M"
long_description = """
DIV and DIVU perform an XLEN bits by XLEN bits signed and unsigned integer division of rs1 by
rs2, rounding towards zero. REM and REMU provide the remainder of the corresponding division
operation. For REM, the sign of the result equals the sign of the dividend.
For both signed and unsigned division, it holds that dividend = divisor × quotient + remainder.
If both the quotient and remainder are required from the same division, the recommended code
sequence is: DIV[U] rdq, rs1, rs2; REM[U] rdr, rs1, rs2 (rdq cannot be the same as rs1 or rs2).
Microarchitectures can then fuse these into a single divide operation instead of performing two
separate divides.
"""

[REM]
name = "Remainder"
opcode = "OP / REM / MULDIV"
encoding = "R"
extension = "M"
long_description = """
DIV and DIVU perform an XLEN bits by XLEN bits signed and unsigned integer division of rs1 by
rs2, rounding towards zero. REM and REMU provide the remainder of the corresponding division
operation. For REM, the sign of the result equals the sign of the dividend.
For both signed and unsigned division, it holds that dividend = divisor × quotient + remainder.
If both the quotient and remainder are required from the same division, the recommended code
sequence is: DIV[U] rdq, rs1, rs2; REM[U] rdr, rs1, rs2 (rdq cannot be the same as rs1 or rs2).
Microarchitectures can then fuse these into a single divide operation instead of performing two
separate divides.
"""

[REMU]
name = "Remainder unsigned"
opcode = "OP / REMU / MULDIV"
encoding = "R"
extension = "M"
long_description = """
DIV and DIVU perform an XLEN bits by XLEN bits signed and unsigned integer division of rs1 by
rs2, rounding towards zero. REM and REMU provide the remainder of the corresponding division
operation. For REM, the sign of the result equals the sign of the dividend.
For both signed and unsigned division, it holds that dividend = divisor × quotient + remainder.
If both the quotient and remainder are required from the same division, the recommended code
sequence is: DIV[U] rdq, rs1, rs2; REM[U] rdr, rs1, rs2 (rdq cannot be the same as rs1 or rs2).
Microarchitectures can then fuse these into a single divide operation instead of performing two
separate divides.
"""

[DIVW]
name = "Divide word"
opcode = "OP-32 / DIVW / MULDIV"
encoding = "R"
extension = "M"
long_description = """
DIVW and DIVUW are RV64 instructions that divide the lower 32 bits of rs1 by the lower 32
bits of rs2, treating them as signed and unsigned integers respectively, placing the 32-bit quotient
in rd, sign-extended to 64 bits. REMW and REMUW are RV64 instructions that provide the
corresponding signed and unsigned remainder operations respectively. Both REMW and REMUW
always sign-extend the 32-bit result to 64 bits, including on a divide by zero.
"""

[DIVUW]
name = "Divide word unsigned"
opcode = "OP-32 / DIVUW / MULDIV"
encoding = "R"
extension = "M"
long_description = """
DIVW and DIVUW are RV64 instructions that divide the lower 32 bits of rs1 by the lower 32
bits of rs2, treating them as signed and unsigned integers respectively, placing the 32-bit quotient
in rd, sign-extended to 64 bits. REMW and REMUW are RV64 instructions that provide the
corresponding signed and unsigned remainder operations respectively. Both REMW and REMUW
always sign-extend the 32-bit result to 64 bits, including on a divide by zero.
"""

[REMW]
name = "Remainder word"
opcode = "OP-32 / REMW / MULDIV"
encoding = "R"
extension = "M"
long_description = """
DIVW and DIVUW are RV64 instructions that divide the lower 32 bits of rs1 by the lower 32
bits of rs2, treating them as signed and unsigned integers respectively, placing the 32-bit quotient
in rd, sign-extended to 64 bits. REMW and REMUW are RV64 instructions that provide the
corresponding signed and unsigned remainder operations respectively. Both REMW and REMUW
always sign-extend the 32-bit result to 64 bits, including on a divide by zero.
"""

[REMUW]
name = "Remainder word unsigned"
opcode = "OP-32 / REMUW / MULDIV"
encoding = "R"
extension = "M"
long_description = """
DIVW and DIVUW are RV64 instructions that divide the lower 32 bits of rs1 by the lower 32
bits of rs2, treating them as signed and unsigned integers respectively, placing the 32-bit quotient
in rd, sign-extended to 64 bits. REMW and REMUW are RV64 instructions that provide the
corresponding signed and unsigned remainder operations respectively. Both REMW and REMUW
always sign-extend the 32-bit result to 64 bits, including on a divide by zero.
"""

["LR.W"]
name = "Load reserved word"
opcode = "AMO / width / LR.W"
encoding = "R"
extension = "A"
long_description = """
Complex atomic memory operations on a single memory word or doubleword are performed with the
load-reserved (LR) and store-conditional (SC) instructions. LR.W loads a word from the address
in rs1, places the sign-extended value in rd, and registers a reservation set—a set of bytes that
subsumes the bytes in the addressed word. SC.W conditionally writes a word in rs2 to the address
in rs1: the SC.W succeeds only if the reservation is still valid and the reservation set contains the
bytes being written. If the SC.W succeeds, the instruction writes the word in rs2 to memory, and
it writes zero to rd. If the SC.W fails, the instruction does not write to memory, and it writes a
nonzero value to rd. Regardless of success or failure, executing an SC.W instruction invalidates
any reservation held by this hart. LR.D and SC.D act analogously on doublewords and are only
available on RV64. For RV64, LR.W and SC.W sign-extend the value placed in rd.
"""

["LR.D"]
name = "Load reserved doubleword"
opcode = "AMO / width / LR.D"
encoding = "R"
extension = "A"
long_description = """
Complex atomic memory operations on a single memory word or doubleword are performed with the
load-reserved (LR) and store-conditional (SC) instructions. LR.W loads a word from the address
in rs1, places the sign-extended value in rd, and registers a reservation set—a set of bytes that
subsumes the bytes in the addressed word. SC.W conditionally writes a word in rs2 to the address
in rs1: the SC.W succeeds only if the reservation is still valid and the reservation set contains the
bytes being written. If the SC.W succeeds, the instruction writes the word in rs2 to memory, and
it writes zero to rd. If the SC.W fails, the instruction does not write to memory, and it writes a
nonzero value to rd. Regardless of success or failure, executing an SC.W instruction invalidates
any reservation held by this hart. LR.D and SC.D act analogously on doublewords and are only
available on RV64. For RV64, LR.W and SC.W sign-extend the value placed in rd.
"""

["SC.W"]
name = "Store conditional word"
opcode = "AMO / width / SC.W"
encoding = "R"
extension = "A"
long_description = """
Complex atomic memory operations on a single memory word or doubleword are performed with the
load-reserved (LR) and store-conditional (SC) instructions. LR.W loads a word from the address
in rs1, places the sign-extended value in rd, and registers a reservation set—a set of bytes that
subsumes the bytes in the addressed word. SC.W conditionally writes a word in rs2 to the address
in rs1: the SC.W succeeds only if the reservation is still valid and the reservation set contains the
bytes being written. If the SC.W succeeds, the instruction writes the word in rs2 to memory, and
it writes zero to rd. If the SC.W fails, the instruction does not write to memory, and it writes a
nonzero value to rd. Regardless of success or failure, executing an SC.W instruction invalidates
any reservation held by this hart. LR.D and SC.D act analogously on doublewords and are only
available on RV64. For RV64, LR.W and SC.W sign-extend the value placed in rd.
"""

["SC.D"]
name = "Store conditional doubleword"
opcode = "AMO / width / SC.D"
encoding = "R"
extension = "A"
long_description = """
Complex atomic memory operations on a single memory word or doubleword are performed with the
load-reserved (LR) and store-conditional (SC) instructions. LR.W loads a word from the address
in rs1, places the sign-extended value in rd, and registers a reservation set—a set of bytes that
subsumes the bytes in the addressed word. SC.W conditionally writes a word in rs2 to the address
in rs1: the SC.W succeeds only if the reservation is still valid and the reservation set contains the
bytes being written. If the SC.W succeeds, the instruction writes the word in rs2 to memory, and
it writes zero to rd. If the SC.W fails, the instruction does not write to memory, and it writes a
nonzero value to rd. Regardless of success or failure, executing an SC.W instruction invalidates
any reservation held by this hart. LR.D and SC.D act analogously on doublewords and are only
available on RV64. For RV64, LR.W and SC.W sign-extend the value placed in rd.
"""


["AMOSWAP.W"]
name = "Atomic swap word"
opcode = "AMO / width / AMOSWAP.W"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOSWAP.D"]
name = "Atomic swap doubleword"
opcode = "AMO / width / AMOSWAP.D"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""


["AMOADD.W"]
name = "Atomic ADD word"
opcode = "AMO / width / AMOADD.W"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOADD.D"]
name = "Atomic ADD doubleword"
opcode = "AMO / width / AMOADD.D"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOAND.W"]
name = "Atomic AND word"
opcode = "AMO / width / AMOAND.W"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOAND.D"]
name = "Atomic AND doubleword"
opcode = "AMO / width / AMOAND.D"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOOR.W"]
name = "Atomic OR word"
opcode = "AMO / width / AMOOR.W"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOOR.D"]
name = "Atomic OR doubleword"
opcode = "AMO / width / AMOOR.D"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOXOR.W"]
name = "Atomic XOR word"
opcode = "AMO / width / AMOXOR.W"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOXOR.D"]
name = "Atomic XOR doubleword"
opcode = "AMO / width / AMOXOR.D"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOMAX.W"]
name = "Atomic MAX word"
opcode = "AMO / width / AMOMAX.W"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOMAX.D"]
name = "Atomic MAX doubleword"
opcode = "AMO / width / AMOMAX.D"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOMAXU.W"]
name = "Atomic MAXU word"
opcode = "AMO / width / AMOMAXU.W"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOMAXU.D"]
name = "Atomic MAXU doubleword"
opcode = "AMO / width / AMOMAXU.D"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOMIN.W"]
name = "Atomic MIN word"
opcode = "AMO / width / AMOMIN.W"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOMIN.D"]
name = "Atomic MIN doubleword"
opcode = "AMO / width / AMOMIN.D"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOMINU.W"]
name = "Atomic MINU word"
opcode = "AMO / width / AMOMINU.W"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

["AMOMINU.D"]
name = "Atomic MINU doubleword"
opcode = "AMO / width / AMOMINU.D"
encoding = "R"
extension = "A"
long_description = """
The atomic memory operation (AMO) instructions perform read-modify-write operations for mul-
tiprocessor synchronization and are encoded with an R-type instruction format. These AMO in-
structions atomically load a data value from the address in rs1, place the value into register rd,
apply a binary operator to the loaded value and the original value in rs2, then store the result back
to the address in rs1. AMOs can either operate on 64-bit (RV64 only) or 32-bit words in memory.
For RV64, 32-bit AMOs always sign-extend the value placed in rd.

The operations supported are swap, integer add, bitwise AND, bitwise OR, bitwise XOR, and
signed and unsigned integer maximum and minimum. Without ordering constraints, these AMOs
can be used to implement parallel reduction operations, where typically the return value would be
discarded by writing to x0.
"""

[FLW]
name = "Floating point load word"
opcode = "LOAD-FP"
encoding = "I"
extension = "F"
long_description = """
Floating-point loads and stores use the same base+offset addressing mode as the integer base ISA,
with a base address in register rs1 and a 12-bit signed byte offset. The FLW instruction loads
a single-precision floating-point value from memory into floating-point register rd. FSW stores a
single-precision value from floating-point register rs2 to memory.
"""

[FSW]
name = "Floating point store word"
opcode = "STORE-FP"
encoding = "I"
extension = "F"
long_description = """
Floating-point loads and stores use the same base+offset addressing mode as the integer base ISA,
with a base address in register rs1 and a 12-bit signed byte offset. The FLW instruction loads
a single-precision floating-point value from memory into floating-point register rd. FSW stores a
single-precision value from floating-point register rs2 to memory.
"""

[FADD]
name = "Floating point add"
opcode = "OP-FP / FADD"
encoding = "R"
extension = "F"
long_description = """
Floating-point arithmetic instructions with one or two source operands use the R-type format with
the OP-FP major opcode. FADD.S and FMUL.S perform single-precision floating-point addition
68
and multiplication respectively, between rs1 and rs2. FSUB.S performs the single-precision floating-
point subtraction of rs2 from rs1. FDIV.S performs the single-precision floating-point division of
rs1 by rs2. FSQRT.S computes the square root of rs1. In each case, the result is written to rd.
"""

[FSUB]
name = "Floating point subtract"
opcode = "OP-FP / FSUB"
encoding = "R"
extension = "F"
long_description = """
Floating-point arithmetic instructions with one or two source operands use the R-type format with
the OP-FP major opcode. FADD.S and FMUL.S perform single-precision floating-point addition
68
and multiplication respectively, between rs1 and rs2. FSUB.S performs the single-precision floating-
point subtraction of rs2 from rs1. FDIV.S performs the single-precision floating-point division of
rs1 by rs2. FSQRT.S computes the square root of rs1. In each case, the result is written to rd.
"""


[FMUL]
name = "Floating point multiply"
opcode = "OP-FP / FMUL"
encoding = "R"
extension = "F"
long_description = """
Floating-point arithmetic instructions with one or two source operands use the R-type format with
the OP-FP major opcode. FADD.S and FMUL.S perform single-precision floating-point addition
68
and multiplication respectively, between rs1 and rs2. FSUB.S performs the single-precision floating-
point subtraction of rs2 from rs1. FDIV.S performs the single-precision floating-point division of
rs1 by rs2. FSQRT.S computes the square root of rs1. In each case, the result is written to rd.
"""


[FDIV]
name = "Floating point divide"
opcode = "OP-FP / FDIV"
encoding = "R"
extension = "F"
long_description = """
Floating-point arithmetic instructions with one or two source operands use the R-type format with
the OP-FP major opcode. FADD.S and FMUL.S perform single-precision floating-point addition
68
and multiplication respectively, between rs1 and rs2. FSUB.S performs the single-precision floating-
point subtraction of rs2 from rs1. FDIV.S performs the single-precision floating-point division of
rs1 by rs2. FSQRT.S computes the square root of rs1. In each case, the result is written to rd.
"""


[FSQRT]
name = "Floating point square root"
opcode = "OP-FP / FSQRT"
encoding = "R"
extension = "F"
long_description = """
Floating-point arithmetic instructions with one or two source operands use the R-type format with
the OP-FP major opcode. FADD.S and FMUL.S perform single-precision floating-point addition
68
and multiplication respectively, between rs1 and rs2. FSUB.S performs the single-precision floating-
point subtraction of rs2 from rs1. FDIV.S performs the single-precision floating-point division of
rs1 by rs2. FSQRT.S computes the square root of rs1. In each case, the result is written to rd.
"""


[FMIN]
name = "Floating point min"
opcode = "OP-FP / FMIN"
encoding = "R"
extension = "F"
long_description = """
Floating-point arithmetic instructions with one or two source operands use the R-type format with
the OP-FP major opcode. FADD.S and FMUL.S perform single-precision floating-point addition
68
and multiplication respectively, between rs1 and rs2. FSUB.S performs the single-precision floating-
point subtraction of rs2 from rs1. FDIV.S performs the single-precision floating-point division of
rs1 by rs2. FSQRT.S computes the square root of rs1. In each case, the result is written to rd.
"""


[FMAX]
name = "Floating point max"
opcode = "OP-FP / F"
encoding = "R"
extension = "F"
long_description = """
Floating-point arithmetic instructions with one or two source operands use the R-type format with
the OP-FP major opcode. FADD.S and FMUL.S perform single-precision floating-point addition
68
and multiplication respectively, between rs1 and rs2. FSUB.S performs the single-precision floating-
point subtraction of rs2 from rs1. FDIV.S performs the single-precision floating-point division of
rs1 by rs2. FSQRT.S computes the square root of rs1. In each case, the result is written to rd.
"""


[FMADD]
name = "Floating point fused multiply-add"
opcode = "FMADD"
encoding = "R4"
extension = "F"
long_description = """
Floating-point fused multiply-add instructions require a new standard instruction format. R4-type
instructions specify three source registers (rs1, rs2, and rs3) and a destination register (rd). This
format is only used by the floating-point fused multiply-add instructions.
FMADD.S multiplies the values in rs1 and rs2, adds the value in rs3, and writes the final result to
rd. FMADD.S computes (rs1×rs2)+rs3.
FMSUB.S multiplies the values in rs1 and rs2, subtracts the value in rs3, and writes the final result
to rd. FMSUB.S computes (rs1×rs2)-rs3.
FNMSUB.S multiplies the values in rs1 and rs2, negates the product, adds the value in rs3, and
writes the final result to rd. FNMSUB.S computes -(rs1×rs2)+rs3.
FNMADD.S multiplies the values in rs1 and rs2, negates the product, subtracts the value in rs3,
and writes the final result to rd. FNMADD.S computes -(rs1×rs2)-rs3.
"""

[FMSUB]
name = "Floating point fused multiply-subtract"
opcode = "FMSUB"
encoding = "R4"
extension = "F"
long_description = """
Floating-point fused multiply-add instructions require a new standard instruction format. R4-type
instructions specify three source registers (rs1, rs2, and rs3) and a destination register (rd). This
format is only used by the floating-point fused multiply-add instructions.
FMADD.S multiplies the values in rs1 and rs2, adds the value in rs3, and writes the final result to
rd. FMADD.S computes (rs1×rs2)+rs3.
FMSUB.S multiplies the values in rs1 and rs2, subtracts the value in rs3, and writes the final result
to rd. FMSUB.S computes (rs1×rs2)-rs3.
FNMSUB.S multiplies the values in rs1 and rs2, negates the product, adds the value in rs3, and
writes the final result to rd. FNMSUB.S computes -(rs1×rs2)+rs3.
FNMADD.S multiplies the values in rs1 and rs2, negates the product, subtracts the value in rs3,
and writes the final result to rd. FNMADD.S computes -(rs1×rs2)-rs3.
"""

[FNMADD]
name = "Floating point fused negate multiply-add"
opcode = "FNMADD"
encoding = "R4"
extension = "F"
long_description = """
Floating-point fused multiply-add instructions require a new standard instruction format. R4-type
instructions specify three source registers (rs1, rs2, and rs3) and a destination register (rd). This
format is only used by the floating-point fused multiply-add instructions.
FMADD.S multiplies the values in rs1 and rs2, adds the value in rs3, and writes the final result to
rd. FMADD.S computes (rs1×rs2)+rs3.
FMSUB.S multiplies the values in rs1 and rs2, subtracts the value in rs3, and writes the final result
to rd. FMSUB.S computes (rs1×rs2)-rs3.
FNMSUB.S multiplies the values in rs1 and rs2, negates the product, adds the value in rs3, and
writes the final result to rd. FNMSUB.S computes -(rs1×rs2)+rs3.
FNMADD.S multiplies the values in rs1 and rs2, negates the product, subtracts the value in rs3,
and writes the final result to rd. FNMADD.S computes -(rs1×rs2)-rs3.
"""

[FNMSUB]
name = "Floating point fused negate multiply-subtract"
opcode = "FMNSUB"
encoding = "R4"
extension = "F"
long_description = """
Floating-point fused multiply-add instructions require a new standard instruction format. R4-type
instructions specify three source registers (rs1, rs2, and rs3) and a destination register (rd). This
format is only used by the floating-point fused multiply-add instructions.
FMADD.S multiplies the values in rs1 and rs2, adds the value in rs3, and writes the final result to
rd. FMADD.S computes (rs1×rs2)+rs3.
FMSUB.S multiplies the values in rs1 and rs2, subtracts the value in rs3, and writes the final result
to rd. FMSUB.S computes (rs1×rs2)-rs3.
FNMSUB.S multiplies the values in rs1 and rs2, negates the product, adds the value in rs3, and
writes the final result to rd. FNMSUB.S computes -(rs1×rs2)+rs3.
FNMADD.S multiplies the values in rs1 and rs2, negates the product, subtracts the value in rs3,
and writes the final result to rd. FNMADD.S computes -(rs1×rs2)-rs3.
"""



["FCVT.W.S"]
name = "Convert single floating point to word integer"
opcode = "OP-FP / FCVT"
encoding = "F"
extension = "F"
long_description = """
Floating-point-to-integer and integer-to-floating-point conversion instructions are encoded in the
OP-FP major opcode space. FCVT.W.S or FCVT.L.S converts a floating-point number in floating-
point register rs1 to a signed 32-bit or 64-bit integer, respectively, in integer register rd. FCVT.S.W
or FCVT.S.L converts a 32-bit or 64-bit signed integer, respectively, in integer register rs1 into a
floating-point number in floating-point register rd. FCVT.WU.S, FCVT.LU.S, FCVT.S.WU, and
FCVT.S.LU variants convert to or from unsigned integer values. For XLEN> 32, FCVT.W[U].S
sign-extends the 32-bit result to the destination register width. FCVT.L[U].S and FCVT.S.L[U]
are RV64-only instructions. If the rounded result is not representable in the destination format, it
is clipped to the nearest value and the invalid flag is set. Table 11.4 gives the range of valid inputs
for FCVT.int.S and the behavior for invalid inputs.

All floating-point to integer and integer to floating-point conversion instructions round according
to the rm field. A floating-point register can be initialized to floating-point positive zero using
FCVT.S.W rd, x0, which will never set any exception flags.
"""

["FCVT.L.S"]
name = "Convert single floating point to doubleword integer"
opcode = "OP-FP / FCVT"
encoding = "F"
extension = "F"
long_description = """
Floating-point-to-integer and integer-to-floating-point conversion instructions are encoded in the
OP-FP major opcode space. FCVT.W.S or FCVT.L.S converts a floating-point number in floating-
point register rs1 to a signed 32-bit or 64-bit integer, respectively, in integer register rd. FCVT.S.W
or FCVT.S.L converts a 32-bit or 64-bit signed integer, respectively, in integer register rs1 into a
floating-point number in floating-point register rd. FCVT.WU.S, FCVT.LU.S, FCVT.S.WU, and
FCVT.S.LU variants convert to or from unsigned integer values. For XLEN> 32, FCVT.W[U].S
sign-extends the 32-bit result to the destination register width. FCVT.L[U].S and FCVT.S.L[U]
are RV64-only instructions. If the rounded result is not representable in the destination format, it
is clipped to the nearest value and the invalid flag is set. Table 11.4 gives the range of valid inputs
for FCVT.int.S and the behavior for invalid inputs.

All floating-point to integer and integer to floating-point conversion instructions round according
to the rm field. A floating-point register can be initialized to floating-point positive zero using
FCVT.S.W rd, x0, which will never set any exception flags.
"""

["FCVT.WU.S"]
name = "Convert single floating point to unsigned word integer"
opcode = "OP-FP / FCVT"
encoding = "F"
extension = "F"
long_description = """
Floating-point-to-integer and integer-to-floating-point conversion instructions are encoded in the
OP-FP major opcode space. FCVT.W.S or FCVT.L.S converts a floating-point number in floating-
point register rs1 to a signed 32-bit or 64-bit integer, respectively, in integer register rd. FCVT.S.W
or FCVT.S.L converts a 32-bit or 64-bit signed integer, respectively, in integer register rs1 into a
floating-point number in floating-point register rd. FCVT.WU.S, FCVT.LU.S, FCVT.S.WU, and
FCVT.S.LU variants convert to or from unsigned integer values. For XLEN> 32, FCVT.W[U].S
sign-extends the 32-bit result to the destination register width. FCVT.L[U].S and FCVT.S.L[U]
are RV64-only instructions. If the rounded result is not representable in the destination format, it
is clipped to the nearest value and the invalid flag is set. Table 11.4 gives the range of valid inputs
for FCVT.int.S and the behavior for invalid inputs.

All floating-point to integer and integer to floating-point conversion instructions round according
to the rm field. A floating-point register can be initialized to floating-point positive zero using
FCVT.S.W rd, x0, which will never set any exception flags.
"""

["FCVT.LU.S"]
name = "Convert single floating point to unsigned doubleword integer"
opcode = "OP-FP / FCVT"
encoding = "F"
extension = "F"
long_description = """
Floating-point-to-integer and integer-to-floating-point conversion instructions are encoded in the
OP-FP major opcode space. FCVT.W.S or FCVT.L.S converts a floating-point number in floating-
point register rs1 to a signed 32-bit or 64-bit integer, respectively, in integer register rd. FCVT.S.W
or FCVT.S.L converts a 32-bit or 64-bit signed integer, respectively, in integer register rs1 into a
floating-point number in floating-point register rd. FCVT.WU.S, FCVT.LU.S, FCVT.S.WU, and
FCVT.S.LU variants convert to or from unsigned integer values. For XLEN> 32, FCVT.W[U].S
sign-extends the 32-bit result to the destination register width. FCVT.L[U].S and FCVT.S.L[U]
are RV64-only instructions. If the rounded result is not representable in the destination format, it
is clipped to the nearest value and the invalid flag is set. Table 11.4 gives the range of valid inputs
for FCVT.int.S and the behavior for invalid inputs.

All floating-point to integer and integer to floating-point conversion instructions round according
to the rm field. A floating-point register can be initialized to floating-point positive zero using
FCVT.S.W rd, x0, which will never set any exception flags.
"""



["FCVT.S.W"]
name = "Convert word integer to single floating point"
opcode = "OP-FP / FCVT"
encoding = "F"
extension = "F"
long_description = """
Floating-point-to-integer and integer-to-floating-point conversion instructions are encoded in the
OP-FP major opcode space. FCVT.W.S or FCVT.L.S converts a floating-point number in floating-
point register rs1 to a signed 32-bit or 64-bit integer, respectively, in integer register rd. FCVT.S.W
or FCVT.S.L converts a 32-bit or 64-bit signed integer, respectively, in integer register rs1 into a
floating-point number in floating-point register rd. FCVT.WU.S, FCVT.LU.S, FCVT.S.WU, and
FCVT.S.LU variants convert to or from unsigned integer values. For XLEN> 32, FCVT.W[U].S
sign-extends the 32-bit result to the destination register width. FCVT.L[U].S and FCVT.S.L[U]
are RV64-only instructions. If the rounded result is not representable in the destination format, it
is clipped to the nearest value and the invalid flag is set. Table 11.4 gives the range of valid inputs
for FCVT.int.S and the behavior for invalid inputs.

All floating-point to integer and integer to floating-point conversion instructions round according
to the rm field. A floating-point register can be initialized to floating-point positive zero using
FCVT.S.W rd, x0, which will never set any exception flags.
"""


["FCVT.S.L"]
name = "Convert double word integer to single floating point"
opcode = "OP-FP / FCVT"
encoding = "F"
extension = "F"
long_description = """
Floating-point-to-integer and integer-to-floating-point conversion instructions are encoded in the
OP-FP major opcode space. FCVT.W.S or FCVT.L.S converts a floating-point number in floating-
point register rs1 to a signed 32-bit or 64-bit integer, respectively, in integer register rd. FCVT.S.W
or FCVT.S.L converts a 32-bit or 64-bit signed integer, respectively, in integer register rs1 into a
floating-point number in floating-point register rd. FCVT.WU.S, FCVT.LU.S, FCVT.S.WU, and
FCVT.S.LU variants convert to or from unsigned integer values. For XLEN> 32, FCVT.W[U].S
sign-extends the 32-bit result to the destination register width. FCVT.L[U].S and FCVT.S.L[U]
are RV64-only instructions. If the rounded result is not representable in the destination format, it
is clipped to the nearest value and the invalid flag is set. Table 11.4 gives the range of valid inputs
for FCVT.int.S and the behavior for invalid inputs.

All floating-point to integer and integer to floating-point conversion instructions round according
to the rm field. A floating-point register can be initialized to floating-point positive zero using
FCVT.S.W rd, x0, which will never set any exception flags.
"""

["FCVT.S.WU"]
name = "Convert unsigned word integer to single floating point"
opcode = "OP-FP / FCVT"
encoding = "F"
extension = "F"
long_description = """
Floating-point-to-integer and integer-to-floating-point conversion instructions are encoded in the
OP-FP major opcode space. FCVT.W.S or FCVT.L.S converts a floating-point number in floating-
point register rs1 to a signed 32-bit or 64-bit integer, respectively, in integer register rd. FCVT.S.W
or FCVT.S.L converts a 32-bit or 64-bit signed integer, respectively, in integer register rs1 into a
floating-point number in floating-point register rd. FCVT.WU.S, FCVT.LU.S, FCVT.S.WU, and
FCVT.S.LU variants convert to or from unsigned integer values. For XLEN> 32, FCVT.W[U].S
sign-extends the 32-bit result to the destination register width. FCVT.L[U].S and FCVT.S.L[U]
are RV64-only instructions. If the rounded result is not representable in the destination format, it
is clipped to the nearest value and the invalid flag is set. Table 11.4 gives the range of valid inputs
for FCVT.int.S and the behavior for invalid inputs.

All floating-point to integer and integer to floating-point conversion instructions round according
to the rm field. A floating-point register can be initialized to floating-point positive zero using
FCVT.S.W rd, x0, which will never set any exception flags.
"""


["FCVT.S.LU"]
name = "Convert unsigned double word integer to single floating point"
opcode = "OP-FP / FCVT"
encoding = "F"
extension = "F"
long_description = """
Floating-point-to-integer and integer-to-floating-point conversion instructions are encoded in the
OP-FP major opcode space. FCVT.W.S or FCVT.L.S converts a floating-point number in floating-
point register rs1 to a signed 32-bit or 64-bit integer, respectively, in integer register rd. FCVT.S.W
or FCVT.S.L converts a 32-bit or 64-bit signed integer, respectively, in integer register rs1 into a
floating-point number in floating-point register rd. FCVT.WU.S, FCVT.LU.S, FCVT.S.WU, and
FCVT.S.LU variants convert to or from unsigned integer values. For XLEN> 32, FCVT.W[U].S
sign-extends the 32-bit result to the destination register width. FCVT.L[U].S and FCVT.S.L[U]
are RV64-only instructions. If the rounded result is not representable in the destination format, it
is clipped to the nearest value and the invalid flag is set. Table 11.4 gives the range of valid inputs
for FCVT.int.S and the behavior for invalid inputs.

All floating-point to integer and integer to floating-point conversion instructions round according
to the rm field. A floating-point register can be initialized to floating-point positive zero using
FCVT.S.W rd, x0, which will never set any exception flags.
"""

["FSGNJ.S"]
name = "Floating point sign injection"
opcode = "OP-FP / FSGNJ"
encoding = "R"
extension = "F"
long_description = """
Floating-point to floating-point sign-injection instructions, FSGNJ.S, FSGNJN.S, and FSGNJX.S,
produce a result that takes all bits except the sign bit from rs1. For FSGNJ, the result’s sign bit is
rs2’s sign bit; for FSGNJN, the result’s sign bit is the opposite of rs2’s sign bit; and for FSGNJX,
the sign bit is the XOR of the sign bits of rs1 and rs2. Sign-injection instructions do not set
floating-point exception flags, nor do they canonicalize NaNs. Note, FSGNJ.S rx, ry, ry moves ry
to rx (assembler pseudoinstruction FMV.S rx, ry); FSGNJN.S rx, ry, ry moves the negation of ry
to rx (assembler pseudoinstruction FNEG.S rx, ry); and FSGNJX.S rx, ry, ry moves the absolute
value of ry to rx (assembler pseudoinstruction FABS.S rx, ry).
"""

["FSGNJN.S"]
name = "Floating point sign injection with negation"
opcode = "OP-FP / FSGNJ"
encoding = "R"
extension = "F"
long_description = """
Floating-point to floating-point sign-injection instructions, FSGNJ.S, FSGNJN.S, and FSGNJX.S,
produce a result that takes all bits except the sign bit from rs1. For FSGNJ, the result’s sign bit is
rs2’s sign bit; for FSGNJN, the result’s sign bit is the opposite of rs2’s sign bit; and for FSGNJX,
the sign bit is the XOR of the sign bits of rs1 and rs2. Sign-injection instructions do not set
floating-point exception flags, nor do they canonicalize NaNs. Note, FSGNJ.S rx, ry, ry moves ry
to rx (assembler pseudoinstruction FMV.S rx, ry); FSGNJN.S rx, ry, ry moves the negation of ry
to rx (assembler pseudoinstruction FNEG.S rx, ry); and FSGNJX.S rx, ry, ry moves the absolute
value of ry to rx (assembler pseudoinstruction FABS.S rx, ry).
"""

["FSGNJX.S"]
name = "Floating point sign injection with SOR"
opcode = "OP-FP / FSGNJ"
encoding = "R"
extension = "F"
long_description = """
Floating-point to floating-point sign-injection instructions, FSGNJ.S, FSGNJN.S, and FSGNJX.S,
produce a result that takes all bits except the sign bit from rs1. For FSGNJ, the result’s sign bit is
rs2’s sign bit; for FSGNJN, the result’s sign bit is the opposite of rs2’s sign bit; and for FSGNJX,
the sign bit is the XOR of the sign bits of rs1 and rs2. Sign-injection instructions do not set
floating-point exception flags, nor do they canonicalize NaNs. Note, FSGNJ.S rx, ry, ry moves ry
to rx (assembler pseudoinstruction FMV.S rx, ry); FSGNJN.S rx, ry, ry moves the negation of ry
to rx (assembler pseudoinstruction FNEG.S rx, ry); and FSGNJX.S rx, ry, ry moves the absolute
value of ry to rx (assembler pseudoinstruction FABS.S rx, ry).
"""

["FMV.W.X"]
name = "Move single floating point to integer register"
opcode = "OP-FP / FMV.W.X"
encoding = "R"
extension = "F"
long_description = """
Instructions are provided to move bit patterns between the floating-point and integer registers.
FMV.X.W moves the single-precision value in floating-point register rs1 represented in IEEE 754-
2008 encoding to the lower 32 bits of integer register rd. The bits are not modified in the transfer,
and in particular, the payloads of non-canonical NaNs are preserved. For RV64, the higher 32 bits
of the destination register are filled with copies of the floating-point number’s sign bit.
FMV.W.X moves the single-precision value encoded in IEEE 754-2008 standard encoding from the
lower 32 bits of integer register rs1 to the floating-point register rd. The bits are not modified in
the transfer, and in particular, the payloads of non-canonical NaNs are preserved.
"""

["FMV.X.W"]
name = "Move word integer to single floating point register"
opcode = "OP-FP / FMV.X.W"
encoding = "R"
extension = "F"
long_description = """
Instructions are provided to move bit patterns between the floating-point and integer registers.
FMV.X.W moves the single-precision value in floating-point register rs1 represented in IEEE 754-
2008 encoding to the lower 32 bits of integer register rd. The bits are not modified in the transfer,
and in particular, the payloads of non-canonical NaNs are preserved. For RV64, the higher 32 bits
of the destination register are filled with copies of the floating-point number’s sign bit.
FMV.W.X moves the single-precision value encoded in IEEE 754-2008 standard encoding from the
lower 32 bits of integer register rs1 to the floating-point register rd. The bits are not modified in
the transfer, and in particular, the payloads of non-canonical NaNs are preserved.
"""

["FEQ.S"]
name = "Floating point single precision equal"
opcode = "OP-FP / EQ / FCMP"
encoding = "R"
extension = "F"
long_description = """
Floating-point compare instructions (FEQ.S, FLT.S, FLE.S) perform the specified comparison be-
tween floating-point registers (rs1 = rs2, rs1 < rs2, rs1 ≤ rs2) writing 1 to the integer register rd
if the condition holds, and 0 otherwise.
FLT.S and FLE.S perform what the IEEE 754-2008 standard refers to as signaling comparisons:
that is, they set the invalid operation exception flag if either input is NaN. FEQ.S performs a quiet
comparison: it only sets the invalid operation exception flag if either input is a signaling NaN. For
all three instructions, the result is 0 if either operand is NaN.
"""

["FLT.S"]
name = "Floating point single precision less than"
opcode = "OP-FP / LT / FCMP"
encoding = "R"
extension = "F"
long_description = """
Floating-point compare instructions (FEQ.S, FLT.S, FLE.S) perform the specified comparison be-
tween floating-point registers (rs1 = rs2, rs1 < rs2, rs1 ≤ rs2) writing 1 to the integer register rd
if the condition holds, and 0 otherwise.
FLT.S and FLE.S perform what the IEEE 754-2008 standard refers to as signaling comparisons:
that is, they set the invalid operation exception flag if either input is NaN. FEQ.S performs a quiet
comparison: it only sets the invalid operation exception flag if either input is a signaling NaN. For
all three instructions, the result is 0 if either operand is NaN.
"""

["FLE.S"]
name = "Floating point single precision less than or equal"
opcode = "OP-FP / LE / FCMP"
encoding = "R"
extension = "F"
long_description = """
Floating-point compare instructions (FEQ.S, FLT.S, FLE.S) perform the specified comparison be-
tween floating-point registers (rs1 = rs2, rs1 < rs2, rs1 ≤ rs2) writing 1 to the integer register rd
if the condition holds, and 0 otherwise.
FLT.S and FLE.S perform what the IEEE 754-2008 standard refers to as signaling comparisons:
that is, they set the invalid operation exception flag if either input is NaN. FEQ.S performs a quiet
comparison: it only sets the invalid operation exception flag if either input is a signaling NaN. For
all three instructions, the result is 0 if either operand is NaN.
"""

["FCLASS.S"]
name = "Floating point single precision classify"
opcode = "OP-FP / FCLASS"
encoding = "R"
extension = "F"
long_description = """
The FCLASS.S instruction examines the value in floating-point register rs1 and writes to integer
register rd a 10-bit mask that indicates the class of the floating-point number. The format of the
mask is described in Table 11.5. The corresponding bit in rd will be set if the property is true
and clear otherwise. All other bits in rd are cleared. Note that exactly one bit in rd will be set.
FCLASS.S does not set the floating-point exception flags.
"""

["FMV.S"]
name = "Copy single precision floating point register"
opcode = ""
encoding = "pseudo"
extension = "F"
long_description = """
fsgnj.s rd, rs, rs
"""

["FABS.S"]
name = "Single precision absolute value"
opcode = ""
encoding = "pseudo"
extension = "F"
long_description = """
fsgnjx.s rd, rs, rs
"""

["FNEG.S"]
name = "Single precision negate"
opcode = ""
encoding = "pseudo"
extension = "F"
long_description = """
fsgnjn.s rd, rs, rs
"""

["FMV.D"]
name = "Copy double precision floating point register"
opcode = ""
encoding = "pseudo"
extension = "D"
long_description = """
fsgnj.d rd, rs, rs
"""

["FABS.D"]
name = "Double precision absolute value"
opcode = ""
encoding = "pseudo"
extension = "F"
long_description = """
fsgnjx.d rd, rs, rs
"""

["FNEG.D"]
name = "Double precision negate"
opcode = ""
encoding = "pseudo"
extension = "F"
long_description = """
fsgnjn.d rd, rs, rs
"""

#[]
#name = ""
#opcode = ""
#encoding = ""
#extension = ""
#long_description = """
#"""


