Struct orzir::dialects::riscv::regs::IReg

source ·
pub struct IReg;
Expand description

Integer/General-purpose register of the RISC-V architecture

Implementations§

source§

impl IReg

source

pub fn get(ctx: &mut Context) -> ArenaPtr<TyObj>

Trait Implementations§

source§

impl Debug for IReg

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Hash for IReg

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl IntegerLikeTy for IReg

source§

fn verify(&self, _ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for AddOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for AddiOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for AddiwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for AddwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for AndOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for AndiOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for DivOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for DivuOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for DivuwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for DivwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for FCvtI2FOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for FLoadOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for FMvI2FOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for LoadOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for LoadSymbolAddrOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for LoadSymbolOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for MulOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for MulhOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for MulhsuOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for MulhuOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for MulwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for OrOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for OriOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for RemOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for RemuOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for RemuwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for RemwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SllOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SlliOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SlliwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SllwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SltOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SltiOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SltiuOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SltuOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SraOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SraiOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SraiwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SrawOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SrlOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SrliOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SrliwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SrlwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for StoreOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for StoreSymbolOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SubOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for SubwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for XorOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl OperandTysAre<IReg> for XoriOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl Parse for IReg

§

type Item = ArenaPtr<TyObj>

source§

fn parse( __ctx: &mut Context, __state: &mut ParseState<'_> ) -> ParseResult<Self::Item>

source§

impl PartialEq for IReg

source§

fn eq(&self, other: &IReg) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Print for IReg

source§

fn print(&self, __ctx: &Context, __state: &mut PrintState) -> PrintResult<()>

source§

impl ResultTysAre<IReg> for AddOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for AddiOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for AddiwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for AddwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for AndOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for AndiOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for DivOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for DivuOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for DivuwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for DivwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for FClassOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for FCmpOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for FCvtF2IOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for FMvF2IOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for LiOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for LoadAddrOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for LoadOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for LoadSymbolAddrOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for LoadSymbolOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for MulOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for MulhOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for MulhsuOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for MulhuOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for MulwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for OrOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for OriOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for RemOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for RemuOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for RemuwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for RemwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SllOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SlliOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SlliwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SllwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SltOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SltiOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SltiuOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SltuOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SraOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SraiOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SraiwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SrawOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SrlOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SrliOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SrliwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SrlwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for StoreOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for StoreSymbolOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SubOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for SubwOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for XorOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for XoriOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl ResultTysAre<IReg> for ZeroOp

source§

fn verify(&self, ctx: &Context) -> VerifyResult<()>

source§

impl RunVerifiers for IReg

source§

impl Ty for IReg

source§

fn mnemonic(&self) -> Mnemonic

Get the mnemonic of the type.
source§

fn mnemonic_static() -> Mnemonic

Get the mnemonic of the type statically.
source§

fn eq(&self, other: &dyn Ty) -> bool

Check if the type is equal to another type.
source§

fn register(ctx: &mut Context, parse_fn: TyParseFn)
where Self: Sized,

source§

impl Verify for IReg

source§

impl Eq for IReg

source§

impl StructuralPartialEq for IReg

Auto Trait Implementations§

§

impl Freeze for IReg

§

impl RefUnwindSafe for IReg

§

impl Send for IReg

§

impl Sync for IReg

§

impl Unpin for IReg

§

impl UnwindSafe for IReg

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.