本文整理汇总了C#中BaseInstruction类的典型用法代码示例。如果您正苦于以下问题:C# BaseInstruction类的具体用法?C# BaseInstruction怎么用?C# BaseInstruction使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
BaseInstruction类属于命名空间,在下文中一共展示了BaseInstruction类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: InstructionNode
/// <summary>
/// Sets the instruction.
/// </summary>
/// <param name="instruction">The instruction.</param>
/// <param name="operandCount">The operand count.</param>
/// <param name="resultCount">The result count.</param>
public InstructionNode(BaseInstruction instruction, int operandCount, byte resultCount)
{
Instruction = instruction;
OperandCount = operandCount;
ResultCount = resultCount;
Size = InstructionSize.None;
}
示例2: Save
public void Save(BaseInstruction instruction)
{
var client = new RedisClient();
var key = new InstructionKeys ().GetKey (instruction.Id);
var json = instruction.ToJson ();
client.Set(key, json);
var idManager = new InstructionIdManager ();
idManager.Add (instruction);
}
示例3: Add
public void Add(BaseInstruction instruction)
{
var key = new InstructionKeys ().GetIdsKey (instruction.TargetType, instruction.TargetId);
var client = new RedisClient ();
var stringToAppend = instruction.Id.ToString();
if (client.Exists (key))
stringToAppend = "." + stringToAppend;
client.Append (key, stringToAppend);
}
示例4: Replace
private static void Replace(Context context, BaseInstruction floatingPointInstruction, BaseInstruction signedInstruction, BaseInstruction unsignedInstruction)
{
if (context.Result.IsR)
{
context.ReplaceInstructionOnly(floatingPointInstruction);
}
else if (context.Result.IsUnsigned)
{
context.ReplaceInstructionOnly(unsignedInstruction);
}
else
{
context.ReplaceInstructionOnly(signedInstruction);
}
}
示例5: SetInstruction
/// <summary>
/// Sets the instruction.
/// </summary>
/// <param name="instruction">The instruction.</param>
/// <param name="condition">The condition.</param>
/// <param name="block">The block.</param>
public void SetInstruction(BaseInstruction instruction, ConditionCode condition, BasicBlock block)
{
SetInstruction(instruction);
ConditionCode = condition;
AddBranchTarget(block);
}
示例6: SetInstruction2
/// <summary>
/// Sets the instruction.
/// </summary>
/// <param name="instruction">The instruction.</param>
/// <param name="result">The result.</param>
/// <param name="result2">The result2.</param>
public void SetInstruction2(BaseInstruction instruction, Operand result, Operand result2)
{
SetInstruction(instruction, 1, 2);
Result = result;
Result2 = result2;
}
示例7: ReplaceInstructionOnly
/// <summary>
/// Replaces the instruction only.
/// </summary>
/// <param name="instruction">The instruction.</param>
public void ReplaceInstructionOnly(BaseInstruction instruction)
{
Instruction = instruction;
}
示例8: IsCommutative
/// <summary>
/// Determines whether the specified instruction is commutative.
/// </summary>
/// <param name="instruction">The instruction.</param>
/// <returns>
/// <c>true</c> if the specified instruction is commutative; otherwise, <c>false</c>.
/// </returns>
private static bool IsCommutative(BaseInstruction instruction)
{
return (instruction is CIL.AddInstruction) ||
(instruction is CIL.MulInstruction) ||
(instruction is IR.LogicalAnd) ||
(instruction is IR.LogicalOr) ||
(instruction is IR.LogicalXor);
}