/// <summary>
        /// Extends the compiler setup.
        /// </summary>
        public override void ExtendCompilerSetup()
        {
            // Build the assembly compiler pipeline
            PreCompilePipeline.Add(new ICompilerStage[] {
                new PlugStage(),
            });

            // Build the assembly compiler pipeline
            PostCompilePipeline.Add(new ICompilerStage[] {
                new TypeInitializerSchedulerStage(),
                new MethodLookupTableStage(),
                new MethodExceptionLookupTableStage(),
                new MetadataStage(),
            });
        }
Example #2
0
        /// <summary>
        /// Extends the compiler setup.
        /// </summary>
        public override void ExtendCompilerSetup()
        {
            // Build the assembly compiler pipeline
            PreCompilePipeline.Add(new ICompilerStage[] {
                new PlugStage(),
            });

            PostCompilePipeline.Add(new ICompilerStage[] {
                new TypeInitializerSchedulerStage(),
                new SimPowerUpStage(),
                new MethodLookupTableStage(),
                new MethodExceptionLookupTableStage(),
                new MetadataStage(),
                new SimLinkerFinalizationStage(simAdapter),
            });
        }
Example #3
0
		/// <summary>
		/// Extends the compiler setup.
		/// </summary>
		public override void ExtendCompilerSetup()
		{
			var bootStage = CompilerOptions.BootStageFactory != null ? CompilerOptions.BootStageFactory() : null;

			PreCompilePipeline.Add(new ICompilerStage[] {
				bootStage,
				new PlugStage(),
			});

			PostCompilePipeline.Add(new ICompilerStage[] {
				new TypeInitializerSchedulerStage(),
				bootStage,
				new MethodLookupTableStage(),
				new MethodExceptionLookupTableStage(),
				new MetadataStage(),
				new LinkerFinalizationStage(),
				CompilerOptions.MapFile != null ? new MapFileGenerationStage() : null
			});
		}