protected override void VisitBranchOnGreaterThanUnsignedShortInstruction(BranchOnGreaterThanUnsignedShortInstruction instruction)
        {
            ControlState.EvaluationStack.Pop(out var stackVal1, out var stackVal2);
            var branch = ComputeBinaryBranchOperation(
                stackVal1,
                stackVal2,
                (a, b) => a.ValueUnsigned > b.ValueUnsigned,
                (a, b) => a.ValueUnsigned > b.ValueUnsigned,
                (a, b) => a.Value > b.Value
                );

            if (branch)
            {
                ControlState.Move(instruction.Offset, instruction.Label);
            }
            else
            {
                ControlState.MoveToNextInstruction();
            }
        }
Esempio n. 2
0
 protected abstract void VisitBranchOnGreaterThanUnsignedShortInstruction(BranchOnGreaterThanUnsignedShortInstruction instruction);