MCPcopy Create free account
hub / github.com/akyoto/q / encodeNum

Function encodeNum

src/x86/encodeNum.go:10–18  ·  view source on GitHub ↗

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)

Source from the content-addressed store, hash-verified

8
9// encodeNum encodes an instruction with up to two registers and a number parameter.
10func 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}

Callers 7

SubRegisterNumberFunction · 0.85
CompareRegisterNumberFunction · 0.85
MulRegisterNumberFunction · 0.85
AddRegisterNumberFunction · 0.85
OrRegisterNumberFunction · 0.85
XorRegisterNumberFunction · 0.85
AndRegisterNumberFunction · 0.85

Calls 2

SizeIntFunction · 0.92
encodeFunction · 0.85

Tested by

no test coverage detected