pub struct CompiledOptimizer { /* private fields */ }

Trait Implementations§

source§

impl Default for CompiledOptimizer

source§

fn default() -> Self

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

impl Drop for CompiledOptimizer

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

impl Optimizer for CompiledOptimizer

source§

fn register_pass(&mut self, pass: Passes) -> &mut Self

Register a single pass with the the optimizer.

source§

fn register_performance_passes(&mut self) -> &mut Self

Registers passes that attempt to improve performance of generated code. This sequence of passes is subject to constant review and will change from time to time.

source§

fn register_size_passes(&mut self) -> &mut Self

Registers passes that attempt to improve the size of generated code. This sequence of passes is subject to constant review and will change from time to time.

source§

fn register_hlsl_legalization_passes(&mut self) -> &mut Self

Registers passes that attempt to legalize the generated code.

Note: this recipe is specially designed for legalizing SPIR-V. It should be used by compilers after translating HLSL source code literally. It should not be used by general workloads for performance or size improvement.

This sequence of passes is subject to constant review and will change from time to time.

source§

fn with_env(target: TargetEnv) -> Self

source§

fn optimize<MC: MessageCallback>( &self, input: impl AsRef<[u32]>, msg_callback: &mut MC, options: Option<Options> ) -> Result<Binary, Error>

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.