Пример #1
0
        public ReadyToRunObjectWriter(
            string objectFilePath,
            EcmaModule componentModule,
            IEnumerable <string> inputFiles,
            IEnumerable <DependencyNode> nodes,
            NodeFactory factory,
            bool generateMapFile,
            bool generateMapCsvFile,
            bool generatePdbFile,
            string pdbPath,
            bool generatePerfMapFile,
            string perfMapPath,
            int perfMapFormatVersion,
            bool generateProfileFile,
            CallChainProfile callChainProfile,
            int customPESectionAlignment)
        {
            _objectFilePath           = objectFilePath;
            _componentModule          = componentModule;
            _inputFiles               = inputFiles;
            _nodes                    = nodes;
            _nodeFactory              = factory;
            _customPESectionAlignment = customPESectionAlignment;
            _generateMapFile          = generateMapFile;
            _generateMapCsvFile       = generateMapCsvFile;
            _generatePdbFile          = generatePdbFile;
            _pdbPath                  = pdbPath;
            _generatePerfMapFile      = generatePerfMapFile;
            _perfMapPath              = perfMapPath;
            _perfMapFormatVersion     = perfMapFormatVersion;

            bool generateMap     = (generateMapFile || generateMapCsvFile);
            bool generateSymbols = (generatePdbFile || generatePerfMapFile);

            if (generateMap || generateSymbols || generateProfileFile)
            {
                _outputInfoBuilder = new OutputInfoBuilder();

                if (generateMap)
                {
                    _mapFileBuilder = new MapFileBuilder(_outputInfoBuilder);
                }

                if (generateSymbols)
                {
                    _symbolFileBuilder = new SymbolFileBuilder(_outputInfoBuilder, _nodeFactory.Target);
                }

                if (generateProfileFile)
                {
                    _profileFileBuilder = new ProfileFileBuilder(_outputInfoBuilder, callChainProfile, _nodeFactory.Target);
                }
            }
        }
Пример #2
0
        public ReadyToRunObjectWriter(
            string objectFilePath,
            EcmaModule componentModule,
            IEnumerable <DependencyNode> nodes,
            NodeFactory factory,
            bool generateMapFile,
            bool generateMapCsvFile,
            bool generatePdbFile,
            string pdbPath,
            bool generatePerfMapFile,
            string perfMapPath,
            int customPESectionAlignment)
        {
            _objectFilePath           = objectFilePath;
            _componentModule          = componentModule;
            _nodes                    = nodes;
            _nodeFactory              = factory;
            _customPESectionAlignment = customPESectionAlignment;
            _generateMapFile          = generateMapFile;
            _generateMapCsvFile       = generateMapCsvFile;
            _generatePdbFile          = generatePdbFile;
            _pdbPath                  = pdbPath;
            _generatePerfMapFile      = generatePerfMapFile;
            _perfMapPath              = perfMapPath;

            bool generateMap     = (generateMapFile || generateMapCsvFile);
            bool generateSymbols = (generatePdbFile || generatePerfMapFile);

            if (generateMap || generateSymbols)
            {
                _outputInfoBuilder = new OutputInfoBuilder();

                if (generateMap)
                {
                    _mapFileBuilder = new MapFileBuilder(_outputInfoBuilder);
                }

                if (generateSymbols)
                {
                    _symbolFileBuilder = new SymbolFileBuilder(_outputInfoBuilder);
                }
            }
        }