/// <inheritdoc /> protected override Trilean VerifyCondition(ExecutionContext context, CilInstruction instruction, OValue left, OValue right) { var equal = left.IsEqualTo(right); var lessThan = left.IsLessThan(right); if (equal.ToBooleanOrFalse() || lessThan.ToBooleanOrFalse()) { return(true); } if (!equal.IsKnown || !lessThan.IsKnown) { return(null); } return(false); }
/// <inheritdoc /> protected override DispatchResult Execute(ExecutionContext context, CilInstruction instruction, OValue left, OValue right) { var result = left.IsLessThan(right); return(ConvertToI4AndReturnSuccess(context, result)); }
/// <inheritdoc /> protected override Trilean VerifyCondition(ExecutionContext context, CilInstruction instruction, OValue left, OValue right) { return(left.IsLessThan(right)); }