pub trait AddEmitter<A, B> {
// Required method
fn add(&mut self, op0: A, op1: B);
}Expand description
ADD (ADD).
Adds the destination operand (first operand) and the source operand (second operand) and then stores the result in the destination operand. The destination operand can be a register or a memory location; the source operand can be an immediate, a register, or a memory location. (However, two memory operands cannot be used in one instruction.) When an immediate value is used as an operand, it is sign-extended to the length of the destination operand format.
For more details, see the Intel manual.
Supported operand variants:
+----+--------------+
| # | Operands |
+----+--------------+
| 1 | GpbLo, GpbLo |
| 2 | GpbLo, Imm |
| 3 | GpbLo, Mem |
| 4 | Gpd, Gpd |
| 5 | Gpd, Imm |
| 6 | Gpd, Mem |
| 7 | Gpq, Gpq |
| 8 | Gpq, Imm |
| 9 | Gpq, Mem |
| 10 | Gpw, Gpw |
| 11 | Gpw, Imm |
| 12 | Gpw, Mem |
| 13 | Mem, GpbLo |
| 14 | Mem, Gpd |
| 15 | Mem, Gpq |
| 16 | Mem, Gpw |
| 17 | Mem, Imm |
+----+--------------+