コード例 #1
0
ファイル: GAScheduler.cs プロジェクト: harnold/cobe
        protected virtual void InitializeBase(
            MachineDescription machineDescription,
            InstructionGraph instructionGraph)
        {
            this.machineDescription = machineDescription;
            this.instructionGraph = instructionGraph;

            instructionNodes = instructionGraph.GetInstructionNodes();

            instructionsOnExUnit =
                new IList[machineDescription.ExecutionUnits];

            for (int i = 0; i < machineDescription.ExecutionUnits; i++) {
                instructionsOnExUnit[i] =
                    instructionGraph.GetInstructionNodesOnExUnit(i);
            }

            valueNodes = instructionGraph.GetValueNodes();

            registerValues = new ArrayList();

            foreach (ValueNode vNode in valueNodes) {
                if (vNode is RegisterValueNode)
                    registerValues.Add(vNode);
            }
        }