Struct vtil_parser::InstructionBuilder [−][src]
pub struct InstructionBuilder<'a> { /* fields omitted */ }Builder for VTIL instructions in an associated BasicBlock
Implementations
impl<'a> InstructionBuilder<'a>[src]
impl<'a> InstructionBuilder<'a>[src]pub fn from(basic_block: &'a mut BasicBlock) -> InstructionBuilder<'a>[src]
pub fn from(basic_block: &'a mut BasicBlock) -> InstructionBuilder<'a>[src]Build an InstructionBuilder from an existing BasicBlock
pub fn push(&mut self, op1: Operand) -> &mut Self[src]
pub fn push(&mut self, op1: Operand) -> &mut Self[src]Pushes an operand up the stack queueing the shift in the stack pointer
pub fn pop(&mut self, op1: RegisterDesc) -> &mut Self[src]
pub fn pop(&mut self, op1: RegisterDesc) -> &mut Self[src]Pops an operand from the stack queueing the shift in the stack pointer
pub fn str(
&mut self,
op1: RegisterDesc,
op2: ImmediateDesc,
op3: Operand
) -> &mut Self[src]
pub fn str(
&mut self,
op1: RegisterDesc,
op2: ImmediateDesc,
op3: Operand
) -> &mut Self[src]Insert an Op::Str
pub fn ldd(
&mut self,
op1: RegisterDesc,
op2: RegisterDesc,
op3: ImmediateDesc
) -> &mut Self[src]
pub fn ldd(
&mut self,
op1: RegisterDesc,
op2: RegisterDesc,
op3: ImmediateDesc
) -> &mut Self[src]Insert an Op::Ldd
pub fn neg(&mut self, op1: RegisterDesc) -> &mut Self[src]
pub fn neg(&mut self, op1: RegisterDesc) -> &mut Self[src]Insert an Op::Neg
pub fn imulhi(&mut self, op1: RegisterDesc, op2: Operand) -> &mut Self[src]
pub fn imulhi(&mut self, op1: RegisterDesc, op2: Operand) -> &mut Self[src]Insert an Op::Imulhi
pub fn div(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]
pub fn div(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]Insert an Op::Div
pub fn rem(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]
pub fn rem(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]Insert an Op::Rem
pub fn idiv(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]
pub fn idiv(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]Insert an Op::Idiv
pub fn irem(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]
pub fn irem(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]Insert an Op::Irem
pub fn popcnt(&mut self, op1: RegisterDesc) -> &mut Self[src]
pub fn popcnt(&mut self, op1: RegisterDesc) -> &mut Self[src]Insert an Op::Popcnt
pub fn bsf(&mut self, op1: RegisterDesc) -> &mut Self[src]
pub fn bsf(&mut self, op1: RegisterDesc) -> &mut Self[src]Insert an Op::Bsf
pub fn bsr(&mut self, op1: RegisterDesc) -> &mut Self[src]
pub fn bsr(&mut self, op1: RegisterDesc) -> &mut Self[src]Insert an Op::Bsr
pub fn not(&mut self, op1: RegisterDesc) -> &mut Self[src]
pub fn not(&mut self, op1: RegisterDesc) -> &mut Self[src]Insert an Op::Not
pub fn tg(&mut self, op1: RegisterDesc, op2: Operand, op3: Operand) -> &mut Self[src]
pub fn tg(&mut self, op1: RegisterDesc, op2: Operand, op3: Operand) -> &mut Self[src]Insert an Op::Tg
pub fn tge(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]
pub fn tge(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]Insert an Op::Tge
pub fn te(&mut self, op1: RegisterDesc, op2: Operand, op3: Operand) -> &mut Self[src]
pub fn te(&mut self, op1: RegisterDesc, op2: Operand, op3: Operand) -> &mut Self[src]Insert an Op::Te
pub fn tne(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]
pub fn tne(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]Insert an Op::Tne
pub fn tl(&mut self, op1: RegisterDesc, op2: Operand, op3: Operand) -> &mut Self[src]
pub fn tl(&mut self, op1: RegisterDesc, op2: Operand, op3: Operand) -> &mut Self[src]Insert an Op::Tl
pub fn tle(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]
pub fn tle(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]Insert an Op::Tle
pub fn tug(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]
pub fn tug(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]Insert an Op::Tug
pub fn tuge(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]
pub fn tuge(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]Insert an Op::Tuge
pub fn tul(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]
pub fn tul(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]Insert an Op::Tul
pub fn tule(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]
pub fn tule(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]Insert an Op::Tule
pub fn ifs(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]
pub fn ifs(
&mut self,
op1: RegisterDesc,
op2: Operand,
op3: Operand
) -> &mut Self[src]Insert an Op::Ifs
pub fn js(&mut self, op1: RegisterDesc, op2: Operand, op3: Operand) -> &mut Self[src]
pub fn js(&mut self, op1: RegisterDesc, op2: Operand, op3: Operand) -> &mut Self[src]Insert an Op::Js
pub fn vxcall(&mut self, op1: Operand) -> &mut Self[src]
pub fn vxcall(&mut self, op1: Operand) -> &mut Self[src]Insert an Op::Vxcall
pub fn sfence(&mut self) -> &mut Self[src]
pub fn sfence(&mut self) -> &mut Self[src]Insert an Op::Sfence
pub fn lfence(&mut self) -> &mut Self[src]
pub fn lfence(&mut self) -> &mut Self[src]Insert an Op::Lfence
pub fn vemit(&mut self, op1: ImmediateDesc) -> &mut Self[src]
pub fn vemit(&mut self, op1: ImmediateDesc) -> &mut Self[src]Insert an Op::Vemit
pub fn vpinr(&mut self, op1: RegisterDesc) -> &mut Self[src]
pub fn vpinr(&mut self, op1: RegisterDesc) -> &mut Self[src]Insert an Op::Vpinr
pub fn vpinw(&mut self, op1: RegisterDesc) -> &mut Self[src]
pub fn vpinw(&mut self, op1: RegisterDesc) -> &mut Self[src]Insert an Op::Vpinw
pub fn vpinrm(
&mut self,
op1: RegisterDesc,
op2: ImmediateDesc,
op3: ImmediateDesc
) -> &mut Self[src]
pub fn vpinrm(
&mut self,
op1: RegisterDesc,
op2: ImmediateDesc,
op3: ImmediateDesc
) -> &mut Self[src]Insert an Op::Vpinrm
pub fn vpinwm(
&mut self,
op1: RegisterDesc,
op2: ImmediateDesc,
op3: ImmediateDesc
) -> &mut Self[src]
pub fn vpinwm(
&mut self,
op1: RegisterDesc,
op2: ImmediateDesc,
op3: ImmediateDesc
) -> &mut Self[src]Insert an Op::Vpinwm