[][src]Trait cranelift_wasm::TargetEnvironment

pub trait TargetEnvironment {
    fn target_config(&self) -> TargetFrontendConfig;

    fn pointer_type(&self) -> Type { ... }
fn pointer_bytes(&self) -> u8 { ... }
fn reference_type(&self, ty: WasmType) -> Type { ... } }

Environment affecting the translation of a WebAssembly.

Required methods

fn target_config(&self) -> TargetFrontendConfig

Get the information needed to produce Cranelift IR for the given target.

Loading content...

Provided methods

fn pointer_type(&self) -> Type

Get the Cranelift integer type to use for native pointers.

This returns I64 for 64-bit architectures and I32 for 32-bit architectures.

fn pointer_bytes(&self) -> u8

Get the size of a native pointer, in bytes.

fn reference_type(&self, ty: WasmType) -> Type

Get the Cranelift reference type to use for the given Wasm reference type.

By default, this returns R64 for 64-bit architectures and R32 for 32-bit architectures. If you override this, then you should also override FuncEnvironment::{translate_ref_null, translate_ref_is_null} as well.

Loading content...

Implementors

impl TargetEnvironment for DummyEnvironment[src]

Loading content...