コード例 #1
0
        private void CompileHelpers(MethodDef method, ScopeBlock scope)
        {
            var methodCtx = new IRContext(method, method.Body);

            methodCtx.IsRuntime = true;
            var irTransformer = new IRTransformer(scope, methodCtx, rt);

            irTransformer.Transform();

            var ilTranslator  = new ILTranslator(rt);
            var ilTransformer = new ILTransformer(method, scope, rt);

            ilTranslator.Translate(scope);
            ilTransformer.Transform();

            var postTransformer = new ILPostTransformer(method, scope, rt);

            postTransformer.Transform();
        }
コード例 #2
0
ファイル: MethodVirtualizer.cs プロジェクト: hmyit/KoiVM
        protected virtual void TransformVMIR()
        {
            var transformer = new IRTransformer(RootScope, IRContext, Runtime);

            transformer.Transform();
        }