public UtcNodeFactory( CompilerTypeSystemContext context, CompilationModuleGroup compilationModuleGroup, IEnumerable <ModuleDesc> inputModules, IEnumerable <ModuleDesc> inputMetadataOnlyAssemblies, string metadataFile, string outputFile, UTCNameMangler nameMangler, bool buildMRT, bool emitStackTraceMetadata, bool disableExceptionMessages, bool allowInvokeThunks, DictionaryLayoutProvider dictionaryLayoutProvider, ImportedNodeProvider importedNodeProvider) : base(context, compilationModuleGroup, PickMetadataManager(context, compilationModuleGroup, inputModules, inputMetadataOnlyAssemblies, metadataFile, emitStackTraceMetadata, disableExceptionMessages, allowInvokeThunks), NewEmptyInteropStubManager(context, compilationModuleGroup), nameMangler, new AttributeDrivenLazyGenericsPolicy(), null, dictionaryLayoutProvider, importedNodeProvider) { CreateHostedNodeCaches(); CompilationUnitPrefix = nameMangler.CompilationUnitPrefix; ThreadStaticsIndex = new ThreadStaticsIndexNode(nameMangler.GetCurrentModuleTlsIndexPrefix()); targetPrefix = context.Target.Architecture == TargetArchitecture.X86 ? "_" : ""; TLSDirectory = new ThreadStaticsDirectoryNode(targetPrefix); TlsStart = new ExternSymbolNode(targetPrefix + "_tls_start"); TlsEnd = new ExternSymbolNode(targetPrefix + "_tls_end"); LoopHijackFlag = new LoopHijackFlagNode(); this.buildMRT = buildMRT; }
public UtcNodeFactory(CompilerTypeSystemContext context, CompilationModuleGroup compilationModuleGroup, IEnumerable <ModuleDesc> inputModules, string metadataFile, string outputFile, UTCNameMangler nameMangler) : base(context, compilationModuleGroup, PickMetadataManager(context, compilationModuleGroup, inputModules, metadataFile), nameMangler) { CreateHostedNodeCaches(); CompilationUnitPrefix = nameMangler.CompilationUnitPrefix; ThreadStaticsIndex = new ThreadStaticsIndexNode(nameMangler.GetCurrentModuleTlsIndexPrefix()); targetPrefix = context.Target.Architecture == TargetArchitecture.X86 ? "_" : ""; TLSDirectory = new ThreadStaticsDirectoryNode(targetPrefix); TlsStart = new ExternSymbolNode(targetPrefix + "_tls_start"); TlsEnd = new ExternSymbolNode(targetPrefix + "_tls_end"); }
public UtcNodeFactory(CompilerTypeSystemContext context, CompilationModuleGroup compilationModuleGroup, IEnumerable <ModuleDesc> inputModules, string metadataFile, string outputFile, UTCNameMangler nameMangler, bool buildMRT) : base(context, compilationModuleGroup, PickMetadataManager(context, compilationModuleGroup, inputModules, metadataFile), NewEmptyInteropStubManager(context, compilationModuleGroup), nameMangler, new AttributeDrivenLazyGenericsPolicy(), null, new UtcDictionaryLayoutProvider()) { CreateHostedNodeCaches(); CompilationUnitPrefix = nameMangler.CompilationUnitPrefix; ThreadStaticsIndex = new ThreadStaticsIndexNode(nameMangler.GetCurrentModuleTlsIndexPrefix()); targetPrefix = context.Target.Architecture == TargetArchitecture.X86 ? "_" : ""; TLSDirectory = new ThreadStaticsDirectoryNode(targetPrefix); TlsStart = new ExternSymbolNode(targetPrefix + "_tls_start"); TlsEnd = new ExternSymbolNode(targetPrefix + "_tls_end"); this.buildMRT = buildMRT; }