Enum Inst

Source
pub enum Inst<R: Registers> {
Show 212 variants addb_i(addb_i), addw_i(addw_i), addl_i(addl_i), addq_i_sxl(addq_i_sxl), addb_mi(addb_mi<R>), addw_mi(addw_mi<R>), addl_mi(addl_mi<R>), addq_mi_sxl(addq_mi_sxl<R>), addl_mi_sxb(addl_mi_sxb<R>), addq_mi_sxb(addq_mi_sxb<R>), addb_mr(addb_mr<R>), addw_mr(addw_mr<R>), addl_mr(addl_mr<R>), addq_mr(addq_mr<R>), addb_rm(addb_rm<R>), addw_rm(addw_rm<R>), addl_rm(addl_rm<R>), addq_rm(addq_rm<R>), adcb_i(adcb_i), adcw_i(adcw_i), adcl_i(adcl_i), adcq_i_sxl(adcq_i_sxl), adcb_mi(adcb_mi<R>), adcw_mi(adcw_mi<R>), adcl_mi(adcl_mi<R>), adcq_mi_sxl(adcq_mi_sxl<R>), adcl_mi_sxb(adcl_mi_sxb<R>), adcq_mi_sxb(adcq_mi_sxb<R>), adcb_mr(adcb_mr<R>), adcw_mr(adcw_mr<R>), adcl_mr(adcl_mr<R>), adcq_mr(adcq_mr<R>), adcb_rm(adcb_rm<R>), adcw_rm(adcw_rm<R>), adcl_rm(adcl_rm<R>), adcq_rm(adcq_rm<R>), lock_addb_mi(lock_addb_mi<R>), lock_addw_mi(lock_addw_mi<R>), lock_addl_mi(lock_addl_mi<R>), lock_addq_mi_sxl(lock_addq_mi_sxl<R>), lock_addl_mi_sxb(lock_addl_mi_sxb<R>), lock_addq_mi_sxb(lock_addq_mi_sxb<R>), lock_addb_mr(lock_addb_mr<R>), lock_addw_mr(lock_addw_mr<R>), lock_addl_mr(lock_addl_mr<R>), lock_addq_mr(lock_addq_mr<R>), lock_adcb_mi(lock_adcb_mi<R>), lock_adcw_mi(lock_adcw_mi<R>), lock_adcl_mi(lock_adcl_mi<R>), lock_adcq_mi_sxl(lock_adcq_mi_sxl<R>), lock_adcl_mi_sxb(lock_adcl_mi_sxb<R>), lock_adcq_mi_sxb(lock_adcq_mi_sxb<R>), lock_adcb_mr(lock_adcb_mr<R>), lock_adcw_mr(lock_adcw_mr<R>), lock_adcl_mr(lock_adcl_mr<R>), lock_adcq_mr(lock_adcq_mr<R>), addps_a(addps_a<R>), addpd_a(addpd_a<R>), andb_i(andb_i), andw_i(andw_i), andl_i(andl_i), andq_i_sxl(andq_i_sxl), andb_mi(andb_mi<R>), andw_mi(andw_mi<R>), andl_mi(andl_mi<R>), andq_mi_sxl(andq_mi_sxl<R>), andl_mi_sxb(andl_mi_sxb<R>), andq_mi_sxb(andq_mi_sxb<R>), andb_mr(andb_mr<R>), andw_mr(andw_mr<R>), andl_mr(andl_mr<R>), andq_mr(andq_mr<R>), andb_rm(andb_rm<R>), andw_rm(andw_rm<R>), andl_rm(andl_rm<R>), andq_rm(andq_rm<R>), lock_andb_mi(lock_andb_mi<R>), lock_andw_mi(lock_andw_mi<R>), lock_andl_mi(lock_andl_mi<R>), lock_andq_mi_sxl(lock_andq_mi_sxl<R>), lock_andl_mi_sxb(lock_andl_mi_sxb<R>), lock_andq_mi_sxb(lock_andq_mi_sxb<R>), lock_andb_mr(lock_andb_mr<R>), lock_andw_mr(lock_andw_mr<R>), lock_andl_mr(lock_andl_mr<R>), lock_andq_mr(lock_andq_mr<R>), andps_a(andps_a<R>), andpd_a(andpd_a<R>), orb_i(orb_i), orw_i(orw_i), orl_i(orl_i), orq_i_sxl(orq_i_sxl), orb_mi(orb_mi<R>), orw_mi(orw_mi<R>), orl_mi(orl_mi<R>), orq_mi_sxl(orq_mi_sxl<R>), orl_mi_sxb(orl_mi_sxb<R>), orq_mi_sxb(orq_mi_sxb<R>), orb_mr(orb_mr<R>), orw_mr(orw_mr<R>), orl_mr(orl_mr<R>), orq_mr(orq_mr<R>), orb_rm(orb_rm<R>), orw_rm(orw_rm<R>), orl_rm(orl_rm<R>), orq_rm(orq_rm<R>), lock_orb_mi(lock_orb_mi<R>), lock_orw_mi(lock_orw_mi<R>), lock_orl_mi(lock_orl_mi<R>), lock_orq_mi_sxl(lock_orq_mi_sxl<R>), lock_orl_mi_sxb(lock_orl_mi_sxb<R>), lock_orq_mi_sxb(lock_orq_mi_sxb<R>), lock_orb_mr(lock_orb_mr<R>), lock_orw_mr(lock_orw_mr<R>), lock_orl_mr(lock_orl_mr<R>), lock_orq_mr(lock_orq_mr<R>), orps_a(orps_a<R>), orpd_a(orpd_a<R>), shldw_mri(shldw_mri<R>), shldw_mrc(shldw_mrc<R>), shldl_mri(shldl_mri<R>), shldq_mri(shldq_mri<R>), shldl_mrc(shldl_mrc<R>), shldq_mrc(shldq_mrc<R>), subb_i(subb_i), subw_i(subw_i), subl_i(subl_i), subq_i_sxl(subq_i_sxl), subb_mi(subb_mi<R>), subw_mi(subw_mi<R>), subl_mi(subl_mi<R>), subq_mi_sxl(subq_mi_sxl<R>), subl_mi_sxb(subl_mi_sxb<R>), subq_mi_sxb(subq_mi_sxb<R>), subb_mr(subb_mr<R>), subw_mr(subw_mr<R>), subl_mr(subl_mr<R>), subq_mr(subq_mr<R>), subb_rm(subb_rm<R>), subw_rm(subw_rm<R>), subl_rm(subl_rm<R>), subq_rm(subq_rm<R>), sbbb_i(sbbb_i), sbbw_i(sbbw_i), sbbl_i(sbbl_i), sbbq_i_sxl(sbbq_i_sxl), sbbb_mi(sbbb_mi<R>), sbbw_mi(sbbw_mi<R>), sbbl_mi(sbbl_mi<R>), sbbq_mi_sxl(sbbq_mi_sxl<R>), sbbl_mi_sxb(sbbl_mi_sxb<R>), sbbq_mi_sxb(sbbq_mi_sxb<R>), sbbb_mr(sbbb_mr<R>), sbbw_mr(sbbw_mr<R>), sbbl_mr(sbbl_mr<R>), sbbq_mr(sbbq_mr<R>), sbbb_rm(sbbb_rm<R>), sbbw_rm(sbbw_rm<R>), sbbl_rm(sbbl_rm<R>), sbbq_rm(sbbq_rm<R>), lock_subb_mi(lock_subb_mi<R>), lock_subw_mi(lock_subw_mi<R>), lock_subl_mi(lock_subl_mi<R>), lock_subq_mi_sxl(lock_subq_mi_sxl<R>), lock_subl_mi_sxb(lock_subl_mi_sxb<R>), lock_subq_mi_sxb(lock_subq_mi_sxb<R>), lock_subb_mr(lock_subb_mr<R>), lock_subw_mr(lock_subw_mr<R>), lock_subl_mr(lock_subl_mr<R>), lock_subq_mr(lock_subq_mr<R>), lock_sbbb_mi(lock_sbbb_mi<R>), lock_sbbw_mi(lock_sbbw_mi<R>), lock_sbbl_mi(lock_sbbl_mi<R>), lock_sbbq_mi_sxl(lock_sbbq_mi_sxl<R>), lock_sbbl_mi_sxb(lock_sbbl_mi_sxb<R>), lock_sbbq_mi_sxb(lock_sbbq_mi_sxb<R>), lock_sbbb_mr(lock_sbbb_mr<R>), lock_sbbw_mr(lock_sbbw_mr<R>), lock_sbbl_mr(lock_sbbl_mr<R>), lock_sbbq_mr(lock_sbbq_mr<R>), subps_a(subps_a<R>), subpd_a(subpd_a<R>), xorb_i(xorb_i), xorw_i(xorw_i), xorl_i(xorl_i), xorq_i_sxl(xorq_i_sxl), xorb_mi(xorb_mi<R>), xorw_mi(xorw_mi<R>), xorl_mi(xorl_mi<R>), xorq_mi_sxl(xorq_mi_sxl<R>), xorl_mi_sxb(xorl_mi_sxb<R>), xorq_mi_sxb(xorq_mi_sxb<R>), xorb_mr(xorb_mr<R>), xorw_mr(xorw_mr<R>), xorl_mr(xorl_mr<R>), xorq_mr(xorq_mr<R>), xorb_rm(xorb_rm<R>), xorw_rm(xorw_rm<R>), xorl_rm(xorl_rm<R>), xorq_rm(xorq_rm<R>), lock_xorb_mi(lock_xorb_mi<R>), lock_xorw_mi(lock_xorw_mi<R>), lock_xorl_mi(lock_xorl_mi<R>), lock_xorq_mi_sxl(lock_xorq_mi_sxl<R>), lock_xorl_mi_sxb(lock_xorl_mi_sxb<R>), lock_xorq_mi_sxb(lock_xorq_mi_sxb<R>), lock_xorb_mr(lock_xorb_mr<R>), lock_xorw_mr(lock_xorw_mr<R>), lock_xorl_mr(lock_xorl_mr<R>), lock_xorq_mr(lock_xorq_mr<R>), xorps_a(xorps_a<R>), xorpd_a(xorpd_a<R>),
}
Expand description

An assembly instruction; contains all instructions known to the assembler.

This wraps all inst structures into a single enumeration for collecting instructions.

Variants§

§

addb_i(addb_i)

§

addw_i(addw_i)

§

addl_i(addl_i)

§

addq_i_sxl(addq_i_sxl)

§

addb_mi(addb_mi<R>)

§

addw_mi(addw_mi<R>)

§

addl_mi(addl_mi<R>)

§

addq_mi_sxl(addq_mi_sxl<R>)

§

addl_mi_sxb(addl_mi_sxb<R>)

§

addq_mi_sxb(addq_mi_sxb<R>)

§

addb_mr(addb_mr<R>)

§

addw_mr(addw_mr<R>)

§

addl_mr(addl_mr<R>)

§

addq_mr(addq_mr<R>)

§

addb_rm(addb_rm<R>)

§

addw_rm(addw_rm<R>)

§

addl_rm(addl_rm<R>)

§

addq_rm(addq_rm<R>)

§

adcb_i(adcb_i)

§

adcw_i(adcw_i)

§

adcl_i(adcl_i)

§

adcq_i_sxl(adcq_i_sxl)

§

adcb_mi(adcb_mi<R>)

§

adcw_mi(adcw_mi<R>)

§

adcl_mi(adcl_mi<R>)

§

adcq_mi_sxl(adcq_mi_sxl<R>)

§

adcl_mi_sxb(adcl_mi_sxb<R>)

§

adcq_mi_sxb(adcq_mi_sxb<R>)

§

adcb_mr(adcb_mr<R>)

§

adcw_mr(adcw_mr<R>)

§

adcl_mr(adcl_mr<R>)

§

adcq_mr(adcq_mr<R>)

§

adcb_rm(adcb_rm<R>)

§

adcw_rm(adcw_rm<R>)

§

adcl_rm(adcl_rm<R>)

§

adcq_rm(adcq_rm<R>)

§

lock_addb_mi(lock_addb_mi<R>)

§

lock_addw_mi(lock_addw_mi<R>)

§

lock_addl_mi(lock_addl_mi<R>)

§

lock_addq_mi_sxl(lock_addq_mi_sxl<R>)

§

lock_addl_mi_sxb(lock_addl_mi_sxb<R>)

§

lock_addq_mi_sxb(lock_addq_mi_sxb<R>)

§

lock_addb_mr(lock_addb_mr<R>)

§

lock_addw_mr(lock_addw_mr<R>)

§

lock_addl_mr(lock_addl_mr<R>)

§

lock_addq_mr(lock_addq_mr<R>)

§

lock_adcb_mi(lock_adcb_mi<R>)

§

lock_adcw_mi(lock_adcw_mi<R>)

§

lock_adcl_mi(lock_adcl_mi<R>)

§

lock_adcq_mi_sxl(lock_adcq_mi_sxl<R>)

§

lock_adcl_mi_sxb(lock_adcl_mi_sxb<R>)

§

lock_adcq_mi_sxb(lock_adcq_mi_sxb<R>)

§

lock_adcb_mr(lock_adcb_mr<R>)

§

lock_adcw_mr(lock_adcw_mr<R>)

§

lock_adcl_mr(lock_adcl_mr<R>)

§

lock_adcq_mr(lock_adcq_mr<R>)

§

addps_a(addps_a<R>)

§

addpd_a(addpd_a<R>)

§

andb_i(andb_i)

§

andw_i(andw_i)

§

andl_i(andl_i)

§

andq_i_sxl(andq_i_sxl)

§

andb_mi(andb_mi<R>)

§

andw_mi(andw_mi<R>)

§

andl_mi(andl_mi<R>)

§

andq_mi_sxl(andq_mi_sxl<R>)

§

andl_mi_sxb(andl_mi_sxb<R>)

§

andq_mi_sxb(andq_mi_sxb<R>)

§

andb_mr(andb_mr<R>)

§

andw_mr(andw_mr<R>)

§

andl_mr(andl_mr<R>)

§

andq_mr(andq_mr<R>)

§

andb_rm(andb_rm<R>)

§

andw_rm(andw_rm<R>)

§

andl_rm(andl_rm<R>)

§

andq_rm(andq_rm<R>)

§

lock_andb_mi(lock_andb_mi<R>)

§

lock_andw_mi(lock_andw_mi<R>)

§

lock_andl_mi(lock_andl_mi<R>)

§

lock_andq_mi_sxl(lock_andq_mi_sxl<R>)

§

lock_andl_mi_sxb(lock_andl_mi_sxb<R>)

§

lock_andq_mi_sxb(lock_andq_mi_sxb<R>)

§

lock_andb_mr(lock_andb_mr<R>)

§

lock_andw_mr(lock_andw_mr<R>)

§

lock_andl_mr(lock_andl_mr<R>)

§

lock_andq_mr(lock_andq_mr<R>)

§

andps_a(andps_a<R>)

§

andpd_a(andpd_a<R>)

§

orb_i(orb_i)

§

orw_i(orw_i)

§

orl_i(orl_i)

§

orq_i_sxl(orq_i_sxl)

§

orb_mi(orb_mi<R>)

§

orw_mi(orw_mi<R>)

§

orl_mi(orl_mi<R>)

§

orq_mi_sxl(orq_mi_sxl<R>)

§

orl_mi_sxb(orl_mi_sxb<R>)

§

orq_mi_sxb(orq_mi_sxb<R>)

§

orb_mr(orb_mr<R>)

§

orw_mr(orw_mr<R>)

§

orl_mr(orl_mr<R>)

§

orq_mr(orq_mr<R>)

§

orb_rm(orb_rm<R>)

§

orw_rm(orw_rm<R>)

§

orl_rm(orl_rm<R>)

§

orq_rm(orq_rm<R>)

§

lock_orb_mi(lock_orb_mi<R>)

§

lock_orw_mi(lock_orw_mi<R>)

§

lock_orl_mi(lock_orl_mi<R>)

§

lock_orq_mi_sxl(lock_orq_mi_sxl<R>)

§

lock_orl_mi_sxb(lock_orl_mi_sxb<R>)

§

lock_orq_mi_sxb(lock_orq_mi_sxb<R>)

§

lock_orb_mr(lock_orb_mr<R>)

§

lock_orw_mr(lock_orw_mr<R>)

§

lock_orl_mr(lock_orl_mr<R>)

§

lock_orq_mr(lock_orq_mr<R>)

§

orps_a(orps_a<R>)

§

orpd_a(orpd_a<R>)

§

shldw_mri(shldw_mri<R>)

§

shldw_mrc(shldw_mrc<R>)

§

shldl_mri(shldl_mri<R>)

§

shldq_mri(shldq_mri<R>)

§

shldl_mrc(shldl_mrc<R>)

§

shldq_mrc(shldq_mrc<R>)

§

subb_i(subb_i)

§

subw_i(subw_i)

§

subl_i(subl_i)

§

subq_i_sxl(subq_i_sxl)

§

subb_mi(subb_mi<R>)

§

subw_mi(subw_mi<R>)

§

subl_mi(subl_mi<R>)

§

subq_mi_sxl(subq_mi_sxl<R>)

§

subl_mi_sxb(subl_mi_sxb<R>)

§

subq_mi_sxb(subq_mi_sxb<R>)

§

subb_mr(subb_mr<R>)

§

subw_mr(subw_mr<R>)

§

subl_mr(subl_mr<R>)

§

subq_mr(subq_mr<R>)

§

subb_rm(subb_rm<R>)

§

subw_rm(subw_rm<R>)

§

subl_rm(subl_rm<R>)

§

subq_rm(subq_rm<R>)

§

sbbb_i(sbbb_i)

§

sbbw_i(sbbw_i)

§

sbbl_i(sbbl_i)

§

sbbq_i_sxl(sbbq_i_sxl)

§

sbbb_mi(sbbb_mi<R>)

§

sbbw_mi(sbbw_mi<R>)

§

sbbl_mi(sbbl_mi<R>)

§

sbbq_mi_sxl(sbbq_mi_sxl<R>)

§

sbbl_mi_sxb(sbbl_mi_sxb<R>)

§

sbbq_mi_sxb(sbbq_mi_sxb<R>)

§

sbbb_mr(sbbb_mr<R>)

§

sbbw_mr(sbbw_mr<R>)

§

sbbl_mr(sbbl_mr<R>)

§

sbbq_mr(sbbq_mr<R>)

§

sbbb_rm(sbbb_rm<R>)

§

sbbw_rm(sbbw_rm<R>)

§

sbbl_rm(sbbl_rm<R>)

§

sbbq_rm(sbbq_rm<R>)

§

lock_subb_mi(lock_subb_mi<R>)

§

lock_subw_mi(lock_subw_mi<R>)

§

lock_subl_mi(lock_subl_mi<R>)

§

lock_subq_mi_sxl(lock_subq_mi_sxl<R>)

§

lock_subl_mi_sxb(lock_subl_mi_sxb<R>)

§

lock_subq_mi_sxb(lock_subq_mi_sxb<R>)

§

lock_subb_mr(lock_subb_mr<R>)

§

lock_subw_mr(lock_subw_mr<R>)

§

lock_subl_mr(lock_subl_mr<R>)

§

lock_subq_mr(lock_subq_mr<R>)

§

lock_sbbb_mi(lock_sbbb_mi<R>)

§

lock_sbbw_mi(lock_sbbw_mi<R>)

§

lock_sbbl_mi(lock_sbbl_mi<R>)

§

lock_sbbq_mi_sxl(lock_sbbq_mi_sxl<R>)

§

lock_sbbl_mi_sxb(lock_sbbl_mi_sxb<R>)

§

lock_sbbq_mi_sxb(lock_sbbq_mi_sxb<R>)

§

lock_sbbb_mr(lock_sbbb_mr<R>)

§

lock_sbbw_mr(lock_sbbw_mr<R>)

§

lock_sbbl_mr(lock_sbbl_mr<R>)

§

lock_sbbq_mr(lock_sbbq_mr<R>)

§

subps_a(subps_a<R>)

§

subpd_a(subpd_a<R>)

§

xorb_i(xorb_i)

§

xorw_i(xorw_i)

§

xorl_i(xorl_i)

§

xorq_i_sxl(xorq_i_sxl)

§

xorb_mi(xorb_mi<R>)

§

xorw_mi(xorw_mi<R>)

§

xorl_mi(xorl_mi<R>)

§

xorq_mi_sxl(xorq_mi_sxl<R>)

§

xorl_mi_sxb(xorl_mi_sxb<R>)

§

xorq_mi_sxb(xorq_mi_sxb<R>)

§

xorb_mr(xorb_mr<R>)

§

xorw_mr(xorw_mr<R>)

§

xorl_mr(xorl_mr<R>)

§

xorq_mr(xorq_mr<R>)

§

xorb_rm(xorb_rm<R>)

§

xorw_rm(xorw_rm<R>)

§

xorl_rm(xorl_rm<R>)

§

xorq_rm(xorq_rm<R>)

§

lock_xorb_mi(lock_xorb_mi<R>)

§

lock_xorw_mi(lock_xorw_mi<R>)

§

lock_xorl_mi(lock_xorl_mi<R>)

§

lock_xorq_mi_sxl(lock_xorq_mi_sxl<R>)

§

lock_xorl_mi_sxb(lock_xorl_mi_sxb<R>)

§

lock_xorq_mi_sxb(lock_xorq_mi_sxb<R>)

§

lock_xorb_mr(lock_xorb_mr<R>)

§

lock_xorw_mr(lock_xorw_mr<R>)

§

lock_xorl_mr(lock_xorl_mr<R>)

§

lock_xorq_mr(lock_xorq_mr<R>)

§

xorps_a(xorps_a<R>)

§

xorpd_a(xorpd_a<R>)

Implementations§

Source§

impl<R: Registers> Inst<R>

Source

pub fn encode(&self, b: &mut impl CodeSink, o: &impl KnownOffsetTable)

Source§

impl<R: Registers> Inst<R>

Source

pub fn visit(&mut self, v: &mut impl RegisterVisitor<R>)

Source§

impl<R: Registers> Inst<R>

Source

pub fn features(&self) -> Vec<Feature>