juicebox_asm/insn/
inc.rs

1// SPDX-License-Identifier: MIT
2//
3// Copyright (c) 2024, Johannes Stoelp <dev@memzero.de>
4
5use super::Inc;
6use crate::{Asm, Mem16, Mem32, Mem64, Mem8, Reg32, Reg64};
7
8impl Inc<Reg64> for Asm {
9    fn inc(&mut self, op1: Reg64) {
10        self.encode_r(0xff, 0, op1);
11    }
12}
13
14impl Inc<Reg32> for Asm {
15    fn inc(&mut self, op1: Reg32) {
16        self.encode_r(0xff, 0, op1);
17    }
18}
19
20impl Inc<Mem8> for Asm {
21    fn inc(&mut self, op1: Mem8) {
22        self.encode_m(0xfe, 0, op1);
23    }
24}
25
26impl Inc<Mem16> for Asm {
27    fn inc(&mut self, op1: Mem16) {
28        self.encode_m(0xff, 0, op1);
29    }
30}
31
32impl Inc<Mem32> for Asm {
33    fn inc(&mut self, op1: Mem32) {
34        self.encode_m(0xff, 0, op1);
35    }
36}
37
38impl Inc<Mem64> for Asm {
39    fn inc(&mut self, op1: Mem64) {
40        self.encode_m(0xff, 0, op1);
41    }
42}