protected SimOperand CreateOperand(SimRegister register) { SimOperand operand = null; lock (myLock) { if (!registerOperands.TryGetValue(register, out operand)) { operand = new SimOperand(register); registerOperands.Add(register, operand); } } return(operand); }
public void Add(BaseOpcode opcode, byte size, SimOperand operand1, byte opcodeSize) { Add(new SimInstruction(opcode, size, operand1, opcodeSize)); }
public static SimOperand CreateMemoryAddressLabel(int size, string label) { return(SimOperand.CreateMemoryAddressLabel(size, label)); }
public static SimOperand CreateMemoryAddressOperand(int size, SimRegister baseRegister, SimRegister index, int scale, int displacement) { return(SimOperand.CreateMemoryAddress(size, baseRegister, index, scale, displacement)); }
public static SimOperand CreateMemoryAddressOperand(int size, ulong immediate) { return(SimOperand.CreateMemoryAddress(size, immediate)); }
protected static SimOperand CreateImmediate(ulong value, int size) { return(SimOperand.CreateImmediate(value, size)); }
protected static SimOperand CreateImmediate(byte value) { return(SimOperand.CreateImmediate(value)); }
protected static SimOperand CreateImmediate(int value) { return(SimOperand.CreateImmediate((uint)value)); }
public void Add(BaseOpcode opcode, byte size, SimOperand operand1, SimRegister register2, byte opcodeSize) { Add(new SimInstruction(opcode, size, operand1, CreateOperand(register2), opcodeSize)); }
public static SimOperand CreateLabel(int size, string label) { return SimOperand.CreateLabel(size, label); }
protected static SimOperand CreateImmediate(ushort value) { return SimOperand.CreateImmediate(value); }