public override void Emit(InstructionWriter writer) { var restartLabel = new LabelStatementSyntaxNode(); writer.MarkLabel(restartLabel); _cond.Emit(writer); _block.Emit(writer); writer.WriteUSx(OpCodes.JMP, 0, 0); writer.AddLabelFix(restartLabel, InstructionWriter.FixUSxJump); writer.MarkLabel(_exitLabel); }
public override void Emit(InstructionWriter writer) { writer.MarkLabel(_repeatLabel); _block.Emit(writer); _cond.Emit(writer); }