Skip to main content

juicebox_asm/insn/
movzx.rs

1// SPDX-License-Identifier: MIT
2//
3// Copyright (c) 2026, Johannes Stoelp <dev@memzero.de>
4
5use super::Movzx;
6use crate::{Asm, Mem16, Mem8, Reg32, Reg8};
7
8// -- MOVZX : reg reg
9
10impl Movzx<Reg32, Reg8> for Asm {
11    fn movzx(&mut self, op1: Reg32, op2: Reg8) {
12        self.encode_rr_rm(&[0x0f, 0xb6], op1, op2);
13    }
14}
15
16// -- MOVZX : reg mem
17
18impl Movzx<Reg32, Mem8> for Asm {
19    fn movzx(&mut self, op1: Reg32, op2: Mem8) {
20        self.encode_rm(&[0x0f, 0xb6], op1, op2);
21    }
22}
23
24impl Movzx<Reg32, Mem16> for Asm {
25    fn movzx(&mut self, op1: Reg32, op2: Mem16) {
26        self.encode_rm(&[0x0f, 0xb7], op1, op2);
27    }
28}