Struct wasmtime_environ::ir::StackSlots[][src]

pub struct StackSlots {
    pub layout_info: Option<StackLayoutInfo>,
    // some fields omitted
}
Expand description

Stack frame manager.

Keep track of all the stack slots used by a function.

Fields

layout_info: Option<StackLayoutInfo>

Layout information computed from layout_stack.

Implementations

Stack slot manager functions that behave mostly like an entity map.

Create an empty stack slot manager.

Clear out everything.

Allocate a new stack slot.

This function should be primarily used by the text format parser. There are more convenient functions for creating specific kinds of stack slots below.

Check if ss is a valid stack slot reference.

Get an iterator over all the stack slot keys.

Get an iterator over all the stack slot keys, mutable edition.

Get an iterator over all the stack slot records.

Get an iterator over all the stack slot records, mutable edition.

Get an iterator over all the stack slot keys.

Get a reference to the next stack slot that would be created by push().

This should just be used by the parser.

Higher-level stack frame manipulation functions.

Create a new spill slot for spilling values of type ty.

Create a stack slot representing an incoming function argument.

Get a stack slot representing an outgoing argument.

This may create a new stack slot, or reuse an existing outgoing stack slot with the requested offset and size.

The requested offset is relative to this function’s stack pointer immediately before making the call.

Get an emergency spill slot that can be used to store a ty value.

This may allocate a new slot, or it may reuse an existing emergency spill slot, excluding any slots in the in_use list.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

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

Deserialize this value from the given Serde deserializer. Read more

The returned type after indexing.

Performs the indexing (container[index]) operation. Read more

Performs the mutable indexing (container[index]) operation. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Compare self to key and return true if they are equal.

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

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

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.