예제 #1
0
        public override void AssembleNew(Cosmos.Assembler.Assembler aAssembler, object aMethodInfo)
        {
            var xAssembler  = aAssembler;
            var xMethodInfo = (MethodInfo)aMethodInfo;
            var xDelegate   = typeof(global::System.Delegate);
            var xMethod     = xDelegate.GetMethod("GetInvokeMethod", BindingFlags.NonPublic | BindingFlags.Instance);

            XS.Push(ILOp.GetMethodLabel(xMethod));
        }
예제 #2
0
        public override void AssembleNew(Cosmos.Assembler.Assembler aAssembler, object aMethodInfo)
        {
            var xAsm        = (Assembler.Assembler)aAssembler;
            var xMethodInfo = (MethodInfo)aMethodInfo;
            var xDelegate   = typeof(Delegate);
            var xMethod     = xDelegate.GetMethod("GetInvokeMethod", BindingFlags.NonPublic | BindingFlags.Instance);

            new CPUx86.Push {
                DestinationRef = Cosmos.Assembler.ElementReference.New(ILOp.GetMethodLabel(xMethod))
            };
        }