Trait dynasmrt::DynasmLabelApi[][src]

pub trait DynasmLabelApi: DynasmApi {
    type Relocation: Relocation;
Show 13 methods fn local_label(&mut self, name: &'static str);
fn global_label(&mut self, name: &'static str);
fn dynamic_label(&mut self, id: DynamicLabel);
fn forward_relocation(
        &mut self,
        name: &'static str,
        target_offset: isize,
        field_offset: u8,
        ref_offset: u8,
        kind: Self::Relocation
    );
fn backward_relocation(
        &mut self,
        name: &'static str,
        target_offset: isize,
        field_offset: u8,
        ref_offset: u8,
        kind: Self::Relocation
    );
fn global_relocation(
        &mut self,
        name: &'static str,
        target_offset: isize,
        field_offset: u8,
        ref_offset: u8,
        kind: Self::Relocation
    );
fn dynamic_relocation(
        &mut self,
        id: DynamicLabel,
        target_offset: isize,
        field_offset: u8,
        ref_offset: u8,
        kind: Self::Relocation
    );
fn bare_relocation(
        &mut self,
        target: usize,
        field_offset: u8,
        ref_offset: u8,
        kind: Self::Relocation
    ); fn forward_reloc(
        &mut self,
        name: &'static str,
        target_offset: isize,
        field_offset: u8,
        ref_offset: u8,
        kind: <Self::Relocation as Relocation>::Encoding
    ) { ... }
fn backward_reloc(
        &mut self,
        name: &'static str,
        target_offset: isize,
        field_offset: u8,
        ref_offset: u8,
        kind: <Self::Relocation as Relocation>::Encoding
    ) { ... }
fn global_reloc(
        &mut self,
        name: &'static str,
        target_offset: isize,
        field_offset: u8,
        ref_offset: u8,
        kind: <Self::Relocation as Relocation>::Encoding
    ) { ... }
fn dynamic_reloc(
        &mut self,
        id: DynamicLabel,
        target_offset: isize,
        field_offset: u8,
        ref_offset: u8,
        kind: <Self::Relocation as Relocation>::Encoding
    ) { ... }
fn bare_reloc(
        &mut self,
        target: usize,
        field_offset: u8,
        ref_offset: u8,
        kind: <Self::Relocation as Relocation>::Encoding
    ) { ... }
}
Expand description

This trait extends DynasmApi to not only allow assembling, but also labels and various directives

Associated Types

The relocation info type this assembler uses.

Required methods

Record the definition of a local label

Record the definition of a global label

Record the definition of a dynamic label

Equivalent of forward_reloc, but takes a non-encoded relocation

Equivalent of backward_reloc, but takes a non-encoded relocation

Equivalent of global_reloc, but takes a non-encoded relocation

Equivalent of dynamic_reloc, but takes a non-encoded relocation

Equivalent of bare_reloc, but takes a non-encoded relocation

Provided methods

Record a relocation spot for a forward reference to a local label

Record a relocation spot for a backward reference to a local label

Record a relocation spot for a reference to a global label

Record a relocation spot for a reference to a dynamic label

Record a relocation spot to an arbitrary target.

Implementors