Skip to main content

Label

Struct Label 

Source
pub struct Label(pub Operand);

Tuple Fields§

§0: Operand

Implementations§

Source§

impl Label

Source

pub const fn new() -> Self

Source

pub const fn from_id(id: u32) -> Self

Source

pub const fn is_valid(&self) -> bool

Source

pub fn set_id(&mut self, id: u32)

Methods from Deref<Target = Operand>§

Source

pub fn reset(&mut self)

Source

pub fn has_signature(&self, other: OperandSignature) -> bool

Source

pub fn signature(&self) -> OperandSignature

Source

pub fn set_signature(&mut self, sig: OperandSignature)

Source

pub fn set_id(&mut self, id: u32)

Source

pub fn op_type(&self) -> OperandType

Source

pub fn is_none(&self) -> bool

Source

pub fn is_reg(&self) -> bool

Source

pub fn is_reg_list(&self) -> bool

Source

pub fn is_mem(&self) -> bool

Source

pub fn is_imm(&self) -> bool

Source

pub fn is_label(&self) -> bool

Source

pub fn is_sym(&self) -> bool

Source

pub fn is_phys_reg(&self) -> bool

Source

pub fn is_virt_reg(&self) -> bool

Source

pub fn id(&self) -> u32

Source

pub fn is_reg_type_of(&self, typ: RegType) -> bool

Source

pub fn is_reg_group_of(&self, group: RegGroup) -> bool

Source

pub fn is_gp(&self) -> bool

Source

pub fn is_gp32(&self) -> bool

Source

pub fn is_gp64(&self) -> bool

Source

pub fn is_vec(&self) -> bool

Source

pub fn is_vec8(&self) -> bool

Source

pub fn is_vec16(&self) -> bool

Source

pub fn is_vec32(&self) -> bool

Source

pub fn is_vec64(&self) -> bool

Source

pub fn is_vec128(&self) -> bool

Source

pub fn is_vec256(&self) -> bool

Source

pub fn is_vec512(&self) -> bool

Source

pub fn is_mask(&self) -> bool

Source

pub fn is_reg_list_of(&self, typ: RegType) -> bool

Source

pub fn is_reg_or_mem(&self) -> bool

Source

pub fn is_reg_or_reg_list_or_mem(&self) -> bool

Source

pub fn x86_rm_size(&self) -> u32

Source

pub fn as_<T>(&self) -> T
where T: OperandCast,

Trait Implementations§

Source§

impl Add<i32> for Label

Source§

type Output = Mem

The resulting type after applying the + operator.
Source§

fn add(self, rhs: i32) -> Self::Output

Performs the + operation. Read more
Source§

impl AdrEmitter<Gp, Label> for Assembler<'_>

Source§

fn adr(&mut self, rd: Gp, target: Label)

Source§

impl AdrpEmitter<Gp, Label> for Assembler<'_>

Source§

fn adrp(&mut self, rd: Gp, target: Label)

Source§

impl AuipcEmitter<Gp, Label> for Assembler<'_>

Source§

fn auipc(&mut self, rd: Gp, imm: Label)

Source§

impl BEmitter<Label> for Assembler<'_>

Source§

fn b(&mut self, target: Label)

Source§

fn b_eq(&mut self, target: Label)

Source§

fn b_ne(&mut self, target: Label)

Source§

fn b_cs(&mut self, target: Label)

Source§

fn b_hs(&mut self, target: Label)

Source§

fn b_cc(&mut self, target: Label)

Source§

fn b_lo(&mut self, target: Label)

Source§

fn b_mi(&mut self, target: Label)

Source§

fn b_pl(&mut self, target: Label)

Source§

fn b_vs(&mut self, target: Label)

Source§

fn b_vc(&mut self, target: Label)

Source§

fn b_hi(&mut self, target: Label)

Source§

fn b_ls(&mut self, target: Label)

Source§

fn b_ge(&mut self, target: Label)

Source§

fn b_lt(&mut self, target: Label)

Source§

fn b_gt(&mut self, target: Label)

Source§

fn b_le(&mut self, target: Label)

Source§

fn b_al(&mut self, target: Label)

Source§

impl BcEmitter<Label> for Assembler<'_>

Source§

fn bc(&mut self, target: Label)

Source§

fn bc_eq(&mut self, target: Label)

Source§

fn bc_ne(&mut self, target: Label)

Source§

fn bc_cs(&mut self, target: Label)

Source§

fn bc_hs(&mut self, target: Label)

Source§

fn bc_cc(&mut self, target: Label)

Source§

fn bc_lo(&mut self, target: Label)

Source§

fn bc_mi(&mut self, target: Label)

Source§

fn bc_pl(&mut self, target: Label)

Source§

fn bc_vs(&mut self, target: Label)

Source§

fn bc_vc(&mut self, target: Label)

Source§

fn bc_hi(&mut self, target: Label)

Source§

fn bc_ls(&mut self, target: Label)

Source§

fn bc_ge(&mut self, target: Label)

Source§

fn bc_lt(&mut self, target: Label)

Source§

fn bc_gt(&mut self, target: Label)

Source§

fn bc_le(&mut self, target: Label)

Source§

fn bc_al(&mut self, target: Label)

Source§

impl BeqEmitter<Gp, Gp, Label> for Assembler<'_>

Source§

fn beq(&mut self, rs1: Gp, rs2: Gp, imm: Label)

Source§

impl BeqzEmitter<Gp, Label> for Assembler<'_>

Source§

fn beqz(&mut self, rs1: Gp, imm: Label)

Source§

impl BgeEmitter<Gp, Gp, Label> for Assembler<'_>

Source§

fn bge(&mut self, rs1: Gp, rs2: Gp, imm: Label)

Source§

impl BgeuEmitter<Gp, Gp, Label> for Assembler<'_>

Source§

fn bgeu(&mut self, rs1: Gp, rs2: Gp, imm: Label)

Source§

impl BgezEmitter<Gp, Label> for Assembler<'_>

Source§

fn bgez(&mut self, rs1: Gp, imm: Label)

Source§

impl BgtEmitter<Gp, Gp, Label> for Assembler<'_>

Source§

fn bgt(&mut self, rs1: Gp, rs2: Gp, imm: Label)

Source§

impl BgtuEmitter<Gp, Gp, Label> for Assembler<'_>

Source§

fn bgtu(&mut self, rs1: Gp, rs2: Gp, imm: Label)

Source§

impl BgtzEmitter<Gp, Label> for Assembler<'_>

Source§

fn bgtz(&mut self, rs2: Gp, imm: Label)

Source§

impl BlEmitter<Label> for Assembler<'_>

Source§

fn bl(&mut self, target: Label)

Source§

impl BleEmitter<Gp, Gp, Label> for Assembler<'_>

Source§

fn ble(&mut self, rs1: Gp, rs2: Gp, imm: Label)

Source§

impl BleuEmitter<Gp, Gp, Label> for Assembler<'_>

Source§

fn bleu(&mut self, rs1: Gp, rs2: Gp, imm: Label)

Source§

impl BlezEmitter<Gp, Label> for Assembler<'_>

Source§

fn blez(&mut self, rs2: Gp, imm: Label)

Source§

impl BltEmitter<Gp, Gp, Label> for Assembler<'_>

Source§

fn blt(&mut self, rs1: Gp, rs2: Gp, imm: Label)

Source§

impl BltuEmitter<Gp, Gp, Label> for Assembler<'_>

Source§

fn bltu(&mut self, rs1: Gp, rs2: Gp, imm: Label)

Source§

impl BltzEmitter<Gp, Label> for Assembler<'_>

Source§

fn bltz(&mut self, rs1: Gp, imm: Label)

Source§

impl BneEmitter<Gp, Gp, Label> for Assembler<'_>

Source§

fn bne(&mut self, rs1: Gp, rs2: Gp, imm: Label)

Source§

impl BnezEmitter<Gp, Label> for Assembler<'_>

Source§

fn bnez(&mut self, rs1: Gp, imm: Label)

Source§

impl CBeqzEmitter<Gp, Label> for Assembler<'_>

Source§

fn c_beqz(&mut self, rs1: Gp, bimm9lohi: Label)

Source§

impl CBnezEmitter<Gp, Label> for Assembler<'_>

Source§

fn c_bnez(&mut self, rs1: Gp, bimm9lohi: Label)

Source§

impl CJEmitter<Label> for Assembler<'_>

Source§

fn c_j(&mut self, imm: Label)

Source§

impl CJalEmitter<Label> for Assembler<'_>

Source§

fn c_jal(&mut self, imm: Label)

Source§

impl CallEmitter<Label> for Assembler<'_>

Source§

fn call(&mut self, target: Label)

Source§

impl CbnzEmitter<Gp, Label> for Assembler<'_>

Source§

fn cbnz(&mut self, rn: Gp, target: Label)

Source§

impl CbzEmitter<Gp, Label> for Assembler<'_>

Source§

fn cbz(&mut self, rn: Gp, target: Label)

Source§

impl Clone for Label

Source§

fn clone(&self) -> Label

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for Label

Source§

impl Debug for Label

Source§

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

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

impl Default for Label

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Deref for Label

Source§

type Target = Operand

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl DerefMut for Label

Source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.
Source§

impl Display for Label

Source§

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

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

impl Eq for Label

Source§

impl Hash for Label

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 JEmitter<Label> for Assembler<'_>

Source§

fn j(&mut self, imm: Label)

Source§

impl JEmitter<Label> for Assembler<'_>

Source§

fn j(&mut self, cc: CondCode, target: Label)

Source§

fn jo(&mut self, target: Label)

Source§

fn jno(&mut self, target: Label)

Source§

fn jb(&mut self, target: Label)

Source§

fn jnb(&mut self, target: Label)

Source§

fn jz(&mut self, target: Label)

Source§

fn jnz(&mut self, target: Label)

Source§

fn jbe(&mut self, target: Label)

Source§

fn jnbe(&mut self, target: Label)

Source§

fn js(&mut self, target: Label)

Source§

fn jns(&mut self, target: Label)

Source§

fn jp(&mut self, target: Label)

Source§

fn jnp(&mut self, target: Label)

Source§

fn jl(&mut self, target: Label)

Source§

fn jnl(&mut self, target: Label)

Source§

fn jle(&mut self, target: Label)

Source§

fn jnle(&mut self, target: Label)

Source§

impl JalEmitter<Gp, Label> for Assembler<'_>

Source§

fn jal(&mut self, rd: Gp, imm: Label)

Source§

impl JalPseudoEmitter<Label> for Assembler<'_>

Source§

fn jal_pseudo(&mut self, imm: Label)

Source§

impl Jecxz1Emitter<Label> for Assembler<'_>

Source§

fn jecxz_1(&mut self, target: Label)

Source§

impl JecxzEmitter<Gp, Label> for Assembler<'_>

Source§

fn jecxz(&mut self, lhs: Gp, target: Label)

Source§

impl JecxzEmitter<Gpd, Label> for Assembler<'_>

Source§

fn jecxz(&mut self, lhs: Gpd, target: Label)

Source§

impl JecxzEmitter<Gpq, Label> for Assembler<'_>

Source§

fn jecxz(&mut self, lhs: Gpq, target: Label)

Source§

impl JecxzEmitter<Gpw, Label> for Assembler<'_>

Source§

fn jecxz(&mut self, lhs: Gpw, target: Label)

Source§

impl JmpEmitter<Label> for Assembler<'_>

Source§

fn jmp(&mut self, target: Label)

Source§

impl LoadConstantEmitter<Gp, Label> for Assembler<'_>

Source§

fn load_constant(&mut self, dst: Gp, src: Label)

Source§

impl Loop1Emitter<Label> for Assembler<'_>

Source§

fn loop_1(&mut self, target: Label)

Source§

impl LoopEmitter<Gp, Label> for Assembler<'_>

Source§

fn loop(&mut self, target: Gp, target2: Label)

Source§

impl LoopEmitter<Gpd, Label> for Assembler<'_>

Source§

fn loop(&mut self, target: Gpd, target2: Label)

Source§

impl LoopEmitter<Gpq, Label> for Assembler<'_>

Source§

fn loop(&mut self, target: Gpq, target2: Label)

Source§

impl LoopEmitter<Gpw, Label> for Assembler<'_>

Source§

fn loop(&mut self, target: Gpw, target2: Label)

Source§

impl Loope1Emitter<Label> for Assembler<'_>

Source§

fn loope_1(&mut self, target: Label)

Source§

impl LoopeEmitter<Gp, Label> for Assembler<'_>

Source§

fn loope(&mut self, target: Gp, target2: Label)

Source§

impl LoopeEmitter<Gpd, Label> for Assembler<'_>

Source§

fn loope(&mut self, target: Gpd, target2: Label)

Source§

impl LoopeEmitter<Gpq, Label> for Assembler<'_>

Source§

fn loope(&mut self, target: Gpq, target2: Label)

Source§

impl LoopeEmitter<Gpw, Label> for Assembler<'_>

Source§

fn loope(&mut self, target: Gpw, target2: Label)

Source§

impl Loopne1Emitter<Label> for Assembler<'_>

Source§

fn loopne_1(&mut self, target: Label)

Source§

impl LoopneEmitter<Gp, Label> for Assembler<'_>

Source§

fn loopne(&mut self, target: Gp, target2: Label)

Source§

impl LoopneEmitter<Gpd, Label> for Assembler<'_>

Source§

fn loopne(&mut self, target: Gpd, target2: Label)

Source§

impl LoopneEmitter<Gpq, Label> for Assembler<'_>

Source§

fn loopne(&mut self, target: Gpq, target2: Label)

Source§

impl LoopneEmitter<Gpw, Label> for Assembler<'_>

Source§

fn loopne(&mut self, target: Gpw, target2: Label)

Source§

impl OperandCast for Label

Source§

impl Ord for Label

Source§

fn cmp(&self, other: &Self) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 (const: unstable) · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 (const: unstable) · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 (const: unstable) · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq for Label

Source§

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

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

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

Inequality operator !=. Read more
Source§

impl PartialOrd for Label

Source§

fn partial_cmp(&self, other: &Self) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 (const: unstable) · Source§

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 (const: unstable) · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 (const: unstable) · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 (const: unstable) · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl StructuralPartialEq for Label

Source§

impl TbnzEmitter<Gp, Imm, Label> for Assembler<'_>

Source§

fn tbnz(&mut self, rt: Gp, imm: Imm, target: Label)

Source§

impl TbzEmitter<Gp, Imm, Label> for Assembler<'_>

Source§

fn tbz(&mut self, rt: Gp, imm: Imm, target: Label)

Source§

impl XbeginEmitter<Label> for Assembler<'_>

Source§

fn xbegin(&mut self, target: Label)

Auto Trait Implementations§

§

impl Freeze for Label

§

impl RefUnwindSafe for Label

§

impl Send for Label

§

impl Sync for Label

§

impl Unpin for Label

§

impl UnsafeUnpin for Label

§

impl UnwindSafe for Label

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
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
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<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

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

Source§

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>,

Source§

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.