Struct FuncInstBuilder

Source
pub struct FuncInstBuilder<'func, 'ctx> { /* private fields */ }
Expand description

The instruction appender to an function.

See InsnBuilder for all instructions.

Trait Implementations§

Source§

impl<'func, 'ctx> Debug for FuncInstBuilder<'func, 'ctx>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'func, 'ctx> Freeze for FuncInstBuilder<'func, 'ctx>

§

impl<'func, 'ctx> !RefUnwindSafe for FuncInstBuilder<'func, 'ctx>

§

impl<'func, 'ctx> !Send for FuncInstBuilder<'func, 'ctx>

§

impl<'func, 'ctx> !Sync for FuncInstBuilder<'func, 'ctx>

§

impl<'func, 'ctx> Unpin for FuncInstBuilder<'func, 'ctx>

§

impl<'func, 'ctx> !UnwindSafe for FuncInstBuilder<'func, 'ctx>

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<'func, T> InsnBuilder<'func> for T
where T: InsnBuilderBase<'func>,

Source§

fn mov<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn fmov<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn dmov<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn ext8<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn ext16<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn ext32<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn uext8<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn uext16<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn uext32<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn i2f<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn i2d<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn ui2f<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn ui2d<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn f2i<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn d2i<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn f2d<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn d2f<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn neg<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn negs<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn fneg<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn dneg<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn addr<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn addr8<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn addr16<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn addr32<'o>(self, dst: impl IntoOutOperand<'o>, src: impl IntoOperand<'o>)

Source§

fn add<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn adds<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fadd<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dadd<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn sub<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn subs<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fsub<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dsub<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn mul<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn muls<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fmul<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dmul<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn div<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn divs<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn udiv<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn udivs<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fdiv<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ddiv<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn mod_<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn mods<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn umod<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn umods<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn and<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ands<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn or<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ors<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn xor<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn xors<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn lsh<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn lshs<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn rsh<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn rshs<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ursh<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn urshs<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn eq<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn eqs<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn feq<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn deq<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ne<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn nes<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fne<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dne<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn lt<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn lts<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ult<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ults<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn flt<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dlt<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn le<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn les<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ule<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ules<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fle<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dle<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn gt<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn gts<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ugt<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ugts<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fgt<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dgt<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ge<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ges<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn uge<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn uges<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fge<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dge<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn addo<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn addos<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn subo<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn subos<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn mulo<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn mulos<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn umulo<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn umulos<'o>( self, dst: impl IntoOutOperand<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn jmp<'o>(self, label: Label<'o>)

Source§

fn bo<'o>(self, label: Label<'o>)

Source§

fn bno<'o>(self, label: Label<'o>)

Source§

fn ubo<'o>(self, label: Label<'o>)

Source§

fn ubno<'o>(self, label: Label<'o>)

Source§

fn jmpi<'o>(self, label_op: impl IntoOperand<'o>)

Source§

fn bt<'o>(self, label: Label<'o>, v: impl IntoOperand<'o>)

Source§

fn bts<'o>(self, label: Label<'o>, v: impl IntoOperand<'o>)

Source§

fn bf<'o>(self, label: Label<'o>, v: impl IntoOperand<'o>)

Source§

fn bfs<'o>(self, label: Label<'o>, v: impl IntoOperand<'o>)

Source§

fn beq<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn beqs<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fbeq<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dbeq<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn bne<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn bnes<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fbne<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dbne<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn blt<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn blts<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ublt<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ublts<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fblt<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dblt<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ble<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn bles<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn uble<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ubles<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fble<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dble<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn bgt<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn bgts<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ubgt<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ubgts<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fbgt<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dbgt<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn bge<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn bges<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ubge<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn ubges<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn fbge<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn dbge<'o>( self, label: Label<'o>, a: impl IntoOperand<'o>, b: impl IntoOperand<'o>, )

Source§

fn laddr<'o>(self, dst: impl IntoOutOperand<'o>, label: Label<'_>)

Source§

fn call<'o>( self, proto: ProtoItemRef<'o>, func: impl IntoOperand<'o>, results: impl IntoIterator<Item = Operand<'o>>, args: impl IntoIterator<Item = Operand<'o>>, )

Source§

fn inline<'o>( self, proto: ProtoItemRef<'o>, func: impl IntoOperand<'o>, results: impl IntoIterator<Item = Operand<'o>>, args: impl IntoIterator<Item = Operand<'o>>, )

Source§

fn jcall<'o>( self, proto: ProtoItemRef<'o>, func: impl IntoOperand<'o>, results: impl IntoIterator<Item = Operand<'o>>, args: impl IntoIterator<Item = Operand<'o>>, )

Source§

fn ret<'o>(self, v: impl IntoOperand<'o>)

Source§

fn jret<'o>(self, v: impl IntoOperand<'o>)

Source§

fn alloca<'o>(self, dst: impl IntoOutOperand<'o>, len: impl IntoOperand<'o>)

Source§

fn va_start<'o>(self, va_list: impl IntoOperand<'o>)

Source§

fn va_end<'o>(self, va_list: impl IntoOperand<'o>)

Source§

fn va_block_arg<'o>( self, dst: impl IntoOutOperand<'o>, va_list: impl IntoOperand<'o>, size: impl IntoOperand<'o>, block_type: impl IntoOperand<'o>, )

Source§

fn va_arg<'o>( self, dst: impl IntoOutOperand<'o>, va_list: impl IntoOperand<'o>, mem: MemOp, )

Source§

fn label(self, label: Label<'_>)

Bind (insert) a previously unbound label to the current location.
Source§

fn new_label(self) -> Label<'func>

Create a new label on the current location (immediately insert).
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>,

Source§

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>,

Source§

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.