encodeNum encodes an instruction with up to two registers and a number parameter.
(code []byte, mod AddressMode, reg cpu.Register, rm cpu.Register, number int, opCode8 uint32, opCode32 uint32)
| 8 | |
| 9 | // encodeNum encodes an instruction with up to two registers and a number parameter. |
| 10 | func encodeNum(code []byte, mod AddressMode, reg cpu.Register, rm cpu.Register, number int, opCode8 uint32, opCode32 uint32) []byte { |
| 11 | if cpu.SizeInt(int64(number)) == 1 { |
| 12 | code = encode(code, mod, reg, rm, 8, opCode8) |
| 13 | return append(code, byte(number)) |
| 14 | } |
| 15 | |
| 16 | code = encode(code, mod, reg, rm, 8, opCode32) |
| 17 | return binary.LittleEndian.AppendUint32(code, uint32(number)) |
| 18 | } |
no test coverage detected