use crate::records::assembly_builder_x_64::AssemblyBuilderX64;
use crate::records::register_x_64::RegisterX64;
impl AssemblyBuilderX64 {
pub fn vpextrd(&mut self, dst: RegisterX64, src: RegisterX64, offset: u8) {
if self.log_text {
self.log_c_char_operand_x_64_operand_x_64_operand_x_64(
b"vpextrd\0".as_ptr() as *const core::ffi::c_char,
dst.into(),
src.into(),
crate::records::operand_x_64::OperandX64::from(offset as i32),
);
}
self.place_vex(
src.into(),
crate::records::operand_x_64::OperandX64::reg(RegisterX64::noreg),
dst.into(),
false,
0x3A,
0x66,
);
self.place(0x16);
self.place_reg_and_mod_reg_mem(src.into(), dst.into(), 1);
self.place_imm_8(offset as i32);
self.commit();
}
}