Enum rustc_target::asm::InlineAsmReg
source · pub enum InlineAsmReg {
Show 15 variants
X86(X86InlineAsmReg),
Arm(ArmInlineAsmReg),
AArch64(AArch64InlineAsmReg),
RiscV(RiscVInlineAsmReg),
Nvptx(NvptxInlineAsmReg),
PowerPC(PowerPCInlineAsmReg),
Hexagon(HexagonInlineAsmReg),
Mips(MipsInlineAsmReg),
S390x(S390xInlineAsmReg),
SpirV(SpirVInlineAsmReg),
Wasm(WasmInlineAsmReg),
Bpf(BpfInlineAsmReg),
Avr(AvrInlineAsmReg),
Msp430(Msp430InlineAsmReg),
Err,
}
Variants§
X86(X86InlineAsmReg)
Arm(ArmInlineAsmReg)
AArch64(AArch64InlineAsmReg)
RiscV(RiscVInlineAsmReg)
Nvptx(NvptxInlineAsmReg)
PowerPC(PowerPCInlineAsmReg)
Hexagon(HexagonInlineAsmReg)
Mips(MipsInlineAsmReg)
S390x(S390xInlineAsmReg)
SpirV(SpirVInlineAsmReg)
Wasm(WasmInlineAsmReg)
Bpf(BpfInlineAsmReg)
Avr(AvrInlineAsmReg)
Msp430(Msp430InlineAsmReg)
Err
Implementations§
source§impl InlineAsmReg
impl InlineAsmReg
pub fn name(self) -> &'static str
pub fn reg_class(self) -> InlineAsmRegClass
pub fn parse(arch: InlineAsmArch, name: Symbol) -> Result<Self, &'static str>
pub fn validate(
self,
arch: InlineAsmArch,
reloc_model: RelocModel,
target_features: &FxHashSet<Symbol>,
target: &Target,
is_clobber: bool
) -> Result<(), &'static str>
pub fn emit(
self,
out: &mut dyn Write,
arch: InlineAsmArch,
modifier: Option<char>
) -> Result
pub fn overlapping_regs(self, cb: impl FnMut(InlineAsmReg))
Trait Implementations§
source§impl Clone for InlineAsmReg
impl Clone for InlineAsmReg
source§fn clone(&self) -> InlineAsmReg
fn clone(&self) -> InlineAsmReg
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for InlineAsmReg
impl Debug for InlineAsmReg
source§impl<__D: Decoder> Decodable<__D> for InlineAsmReg
impl<__D: Decoder> Decodable<__D> for InlineAsmReg
source§impl<__E: Encoder> Encodable<__E> for InlineAsmReg
impl<__E: Encoder> Encodable<__E> for InlineAsmReg
source§impl Hash for InlineAsmReg
impl Hash for InlineAsmReg
source§impl<__CTX> HashStable<__CTX> for InlineAsmRegwhere
__CTX: HashStableContext,
impl<__CTX> HashStable<__CTX> for InlineAsmRegwhere
__CTX: HashStableContext,
fn hash_stable(&self, __hcx: &mut __CTX, __hasher: &mut StableHasher)
source§impl PartialEq<InlineAsmReg> for InlineAsmReg
impl PartialEq<InlineAsmReg> for InlineAsmReg
source§fn eq(&self, other: &InlineAsmReg) -> bool
fn eq(&self, other: &InlineAsmReg) -> bool
source§impl PartialOrd<InlineAsmReg> for InlineAsmReg
impl PartialOrd<InlineAsmReg> for InlineAsmReg
source§fn partial_cmp(&self, other: &InlineAsmReg) -> Option<Ordering>
fn partial_cmp(&self, other: &InlineAsmReg) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Copy for InlineAsmReg
impl Eq for InlineAsmReg
impl StructuralEq for InlineAsmReg
impl StructuralPartialEq for InlineAsmReg
Auto Trait Implementations§
impl RefUnwindSafe for InlineAsmReg
impl Send for InlineAsmReg
impl Sync for InlineAsmReg
impl Unpin for InlineAsmReg
impl UnwindSafe for InlineAsmReg
Blanket Implementations§
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 2 bytes
Size for each variant:
X86
: 1 byteArm
: 1 byteAArch64
: 1 byteRiscV
: 1 byteNvptx
: 0 bytesPowerPC
: 1 byteHexagon
: 1 byteMips
: 1 byteS390x
: 1 byteSpirV
: 0 bytesWasm
: 0 bytesBpf
: 1 byteAvr
: 1 byteMsp430
: 1 byteErr
: 0 bytes