From f57587ac2e9f1f764c7db076393bc848ae246831 Mon Sep 17 00:00:00 2001 From: kudzu_cp <6d05c8c8ef5431987001abfdb2eadc9593ac9498> Date: Wed, 9 Sep 2009 16:46:22 +0000 Subject: [PATCH] --- source2/IL2PCU/Cosmos.IL2CPU/ILScanner.cs | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/source2/IL2PCU/Cosmos.IL2CPU/ILScanner.cs b/source2/IL2PCU/Cosmos.IL2CPU/ILScanner.cs index 6ab1d255d..26cada376 100644 --- a/source2/IL2PCU/Cosmos.IL2CPU/ILScanner.cs +++ b/source2/IL2PCU/Cosmos.IL2CPU/ILScanner.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; +using Indy.IL2CPU; using Indy.IL2CPU.Plugs; namespace Cosmos.IL2CPU { @@ -199,17 +200,17 @@ namespace Cosmos.IL2CPU { } } - //ExecuteInternal( ( System.Reflection.MethodInfo )RuntimeEngineRefs.InitializeApplicationRef ); - //ExecuteInternal( ( System.Reflection.MethodInfo )RuntimeEngineRefs.FinalizeApplicationRef ); - ////xScanner.QueueMethod(typeof(CosmosAssembler).GetMethod("PrintException")); - //ExecuteInternal( ( System.Reflection.MethodInfo )VTablesImplRefs.LoadTypeTableRef ); - //ExecuteInternal( ( System.Reflection.MethodInfo )VTablesImplRefs.SetMethodInfoRef ); - //ExecuteInternal( ( System.Reflection.MethodInfo )VTablesImplRefs.IsInstanceRef ); - //ExecuteInternal( ( System.Reflection.MethodInfo )VTablesImplRefs.SetTypeInfoRef ); - //ExecuteInternal( ( System.Reflection.MethodInfo )VTablesImplRefs.GetMethodAddressForTypeRef ); - //ExecuteInternal( ( System.Reflection.MethodInfo )GCImplementationRefs.IncRefCountRef ); - //ExecuteInternal( ( System.Reflection.MethodInfo )GCImplementationRefs.DecRefCountRef ); - //ExecuteInternal( ( System.Reflection.MethodInfo )GCImplementationRefs.AllocNewObjectRef ); + ExecuteInternal( ( System.Reflection.MethodInfo )RuntimeEngineRefs.InitializeApplicationRef, true ); + ExecuteInternal( ( System.Reflection.MethodInfo )RuntimeEngineRefs.FinalizeApplicationRef, true ); + ////xScanner.QueueMethod(typeof(CosmosAssembler).GetMethod("PrintException"), true); + ExecuteInternal( ( System.Reflection.MethodInfo )VTablesImplRefs.LoadTypeTableRef, true ); + ExecuteInternal( ( System.Reflection.MethodInfo )VTablesImplRefs.SetMethodInfoRef, true ); + ExecuteInternal( ( System.Reflection.MethodInfo )VTablesImplRefs.IsInstanceRef, true ); + ExecuteInternal( ( System.Reflection.MethodInfo )VTablesImplRefs.SetTypeInfoRef, true ); + ExecuteInternal( ( System.Reflection.MethodInfo )VTablesImplRefs.GetMethodAddressForTypeRef, true ); + ExecuteInternal( ( System.Reflection.MethodInfo )GCImplementationRefs.IncRefCountRef, true ); + ExecuteInternal( ( System.Reflection.MethodInfo )GCImplementationRefs.DecRefCountRef, true ); + ExecuteInternal( ( System.Reflection.MethodInfo )GCImplementationRefs.AllocNewObjectRef, true ); // Scan from entry point of this program //TODO: Now that we scan plugs first, we might need to put a jump