Exemple #1
0
        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);
        }
Exemple #2
0
 public void Add(BaseOpcode opcode, byte size, SimOperand operand1, byte opcodeSize)
 {
     Add(new SimInstruction(opcode, size, operand1, opcodeSize));
 }
Exemple #3
0
 public static SimOperand CreateMemoryAddressLabel(int size, string label)
 {
     return(SimOperand.CreateMemoryAddressLabel(size, label));
 }
Exemple #4
0
 public static SimOperand CreateMemoryAddressOperand(int size, SimRegister baseRegister, SimRegister index, int scale, int displacement)
 {
     return(SimOperand.CreateMemoryAddress(size, baseRegister, index, scale, displacement));
 }
Exemple #5
0
 public static SimOperand CreateMemoryAddressOperand(int size, ulong immediate)
 {
     return(SimOperand.CreateMemoryAddress(size, immediate));
 }
Exemple #6
0
 protected static SimOperand CreateImmediate(ulong value, int size)
 {
     return(SimOperand.CreateImmediate(value, size));
 }
Exemple #7
0
 protected static SimOperand CreateImmediate(byte value)
 {
     return(SimOperand.CreateImmediate(value));
 }
Exemple #8
0
 protected static SimOperand CreateImmediate(int value)
 {
     return(SimOperand.CreateImmediate((uint)value));
 }
Exemple #9
0
 public void Add(BaseOpcode opcode, byte size, SimOperand operand1, SimRegister register2, byte opcodeSize)
 {
     Add(new SimInstruction(opcode, size, operand1, CreateOperand(register2), opcodeSize));
 }
Exemple #10
0
		public static SimOperand CreateLabel(int size, string label)
		{
			return SimOperand.CreateLabel(size, label);
		}
Exemple #11
0
		protected static SimOperand CreateImmediate(ushort value)
		{
			return SimOperand.CreateImmediate(value);
		}