pub enum Rv64ZbbZbkbSharedInstruction<Hart>where
Hart: HartConfig,{
Andn {
rs1: Hart::Reg,
rs2: Hart::Reg,
rd: Hart::Reg,
},
Orn {
rs1: Hart::Reg,
rs2: Hart::Reg,
rd: Hart::Reg,
},
Xnor {
rs1: Hart::Reg,
rs2: Hart::Reg,
rd: Hart::Reg,
},
Rol {
rs1: Hart::Reg,
rs2: Hart::Reg,
rd: Hart::Reg,
},
Rolw {
rs1: Hart::Reg,
rs2: Hart::Reg,
rd: Hart::Reg,
},
Ror {
rs1: Hart::Reg,
rs2: Hart::Reg,
rd: Hart::Reg,
},
Rori {
rs1: Hart::Reg,
rd: Hart::Reg,
shamt: Shamt<u64>,
/* private fields */
},
Roriw {
rs1: Hart::Reg,
rd: Hart::Reg,
shamt: Shamt<u32>,
/* private fields */
},
Rorw {
rs1: Hart::Reg,
rs2: Hart::Reg,
rd: Hart::Reg,
},
Rev8 {
rs1: Hart::Reg,
rd: Hart::Reg,
/* private fields */
},
}Expand description
RISC-V RV64 instructions shared between Zbb and Zbkb extensions.
Not an extension on its own, only exists such that both Zbb and Zbkb can inherit it.
Variants§
Trait Implementations§
Source§fn clone(&self) -> Rv64ZbbZbkbSharedInstruction<Hart>
fn clone(&self) -> Rv64ZbbZbkbSharedInstruction<Hart>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§const IMPLEMENTED_EXTENSIONS: &'static [ImplementedExtension]
const IMPLEMENTED_EXTENSIONS: &'static [ImplementedExtension]
All implemented extensions, including this instruction itself, with their ISA extensions. Read more
§const OWN_ISA_EXTENSIONS: &'static [IsaExtension]
const OWN_ISA_EXTENSIONS: &'static [IsaExtension]
ISA extensions defined by this instruction enum itself, without inherited ones. Read more
§fn try_decode(instruction: u32) -> Option<Self>
fn try_decode(instruction: u32) -> Option<Self>
Try to decode a single valid instruction
Source§const ISA_STRING: &'static str = _
const ISA_STRING: &'static str = _
ISA string as used in the
Tag_RISCV_arch attribute of ELF files, for example,
rv64i2p1_m2p0_zmmul1p0. Read moreSource§fn implements_extension<E>() -> boolwhere
E: Instruction<Hart = Self::Hart>,
fn implements_extension<E>() -> boolwhere
E: Instruction<Hart = Self::Hart>,
Checks whether this instruction implements the given extension, see
Self::IMPLEMENTED_EXTENSIONS for detailsAuto Trait Implementations§
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more