[][src]Struct cranelift_codegen::ir::stackslot::StackSlotData

pub struct StackSlotData {
    pub kind: StackSlotKind,
    pub size: StackSize,
    pub offset: Option<StackOffset>,
}

Contents of a stack slot.

Fields

kind: StackSlotKind

The kind of stack slot.

size: StackSize

Size of stack slot in bytes.

offset: Option<StackOffset>

Offset of stack slot relative to the stack pointer in the caller.

On x86, the base address is the stack pointer before the return address was pushed. On RISC ISAs, the base address is the value of the stack pointer on entry to the function.

For OutgoingArg stack slots, the offset is relative to the current function's stack pointer immediately before the call.

Methods

impl StackSlotData[src]

pub fn new(kind: StackSlotKind, size: StackSize) -> Self[src]

Create a stack slot with the specified byte size.

pub fn alignment(&self, max_align: StackSize) -> StackSize[src]

Get the alignment in bytes of this stack slot given the stack pointer alignment.

Trait Implementations

impl Display for StackSlotData[src]

impl Debug for StackSlotData[src]

impl PartialEq<StackSlotData> for StackSlotData[src]

impl Eq for StackSlotData[src]

impl StructuralPartialEq for StackSlotData[src]

impl StructuralEq for StackSlotData[src]

impl Clone for StackSlotData[src]

Auto Trait Implementations

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]