mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-09-27 16:17:17 +00:00
Minor changes for bug fixes in SchedGraph.cpp.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@677 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -33,7 +33,7 @@ class TargetMachine;
|
|||||||
class SchedGraphEdge;
|
class SchedGraphEdge;
|
||||||
class SchedGraphNode;
|
class SchedGraphNode;
|
||||||
class SchedGraph;
|
class SchedGraph;
|
||||||
class NodeToRegRefMap;
|
class RegToRefVecMap;
|
||||||
class MachineInstr;
|
class MachineInstr;
|
||||||
|
|
||||||
/******************** Exported Data Types and Constants ********************/
|
/******************** Exported Data Types and Constants ********************/
|
||||||
@@ -61,9 +61,9 @@ protected:
|
|||||||
int minDelay; // cached latency (assumes fixed target arch)
|
int minDelay; // cached latency (assumes fixed target arch)
|
||||||
|
|
||||||
union {
|
union {
|
||||||
Value* val;
|
const Value* val;
|
||||||
int machineRegNum;
|
int machineRegNum;
|
||||||
ResourceId resourceId;
|
ResourceId resourceId;
|
||||||
};
|
};
|
||||||
|
|
||||||
public:
|
public:
|
||||||
@@ -79,7 +79,7 @@ public:
|
|||||||
// constructor for explicit def-use or memory def-use edge
|
// constructor for explicit def-use or memory def-use edge
|
||||||
/*ctor*/ SchedGraphEdge(SchedGraphNode* _src,
|
/*ctor*/ SchedGraphEdge(SchedGraphNode* _src,
|
||||||
SchedGraphNode* _sink,
|
SchedGraphNode* _sink,
|
||||||
Value* _val,
|
const Value* _val,
|
||||||
DataDepOrderType _depOrderType =TrueDep,
|
DataDepOrderType _depOrderType =TrueDep,
|
||||||
int _minDelay = -1);
|
int _minDelay = -1);
|
||||||
|
|
||||||
@@ -293,8 +293,11 @@ private:
|
|||||||
//
|
//
|
||||||
void buildGraph (const TargetMachine& target);
|
void buildGraph (const TargetMachine& target);
|
||||||
|
|
||||||
void addEdgesForInstruction (SchedGraphNode* node,
|
void buildNodesforVMInstr (const TargetMachine& target,
|
||||||
NodeToRegRefMap& regToRefVecMap,
|
const Instruction* instr);
|
||||||
|
|
||||||
|
void addEdgesForInstruction (const MachineInstr& minstr,
|
||||||
|
RegToRefVecMap& regToRefVecMap,
|
||||||
const TargetMachine& target);
|
const TargetMachine& target);
|
||||||
|
|
||||||
void addCDEdges (const TerminatorInst* term,
|
void addCDEdges (const TerminatorInst* term,
|
||||||
@@ -303,11 +306,14 @@ private:
|
|||||||
void addMemEdges (const vector<const Instruction*>& memVec,
|
void addMemEdges (const vector<const Instruction*>& memVec,
|
||||||
const TargetMachine& target);
|
const TargetMachine& target);
|
||||||
|
|
||||||
void addMachineRegEdges (NodeToRegRefMap& regToRefVecMap,
|
void addMachineRegEdges (RegToRefVecMap& regToRefVecMap,
|
||||||
const TargetMachine& target);
|
const TargetMachine& target);
|
||||||
|
|
||||||
void addSSAEdge (SchedGraphNode* node,
|
void addSSAEdge (SchedGraphNode* node,
|
||||||
Value* val,
|
const Value* val,
|
||||||
|
const TargetMachine& target);
|
||||||
|
|
||||||
|
void addNonSSAEdgesForValue (const Instruction* instr,
|
||||||
const TargetMachine& target);
|
const TargetMachine& target);
|
||||||
|
|
||||||
void addDummyEdges ();
|
void addDummyEdges ();
|
||||||
|
@@ -33,7 +33,7 @@ class TargetMachine;
|
|||||||
class SchedGraphEdge;
|
class SchedGraphEdge;
|
||||||
class SchedGraphNode;
|
class SchedGraphNode;
|
||||||
class SchedGraph;
|
class SchedGraph;
|
||||||
class NodeToRegRefMap;
|
class RegToRefVecMap;
|
||||||
class MachineInstr;
|
class MachineInstr;
|
||||||
|
|
||||||
/******************** Exported Data Types and Constants ********************/
|
/******************** Exported Data Types and Constants ********************/
|
||||||
@@ -61,9 +61,9 @@ protected:
|
|||||||
int minDelay; // cached latency (assumes fixed target arch)
|
int minDelay; // cached latency (assumes fixed target arch)
|
||||||
|
|
||||||
union {
|
union {
|
||||||
Value* val;
|
const Value* val;
|
||||||
int machineRegNum;
|
int machineRegNum;
|
||||||
ResourceId resourceId;
|
ResourceId resourceId;
|
||||||
};
|
};
|
||||||
|
|
||||||
public:
|
public:
|
||||||
@@ -79,7 +79,7 @@ public:
|
|||||||
// constructor for explicit def-use or memory def-use edge
|
// constructor for explicit def-use or memory def-use edge
|
||||||
/*ctor*/ SchedGraphEdge(SchedGraphNode* _src,
|
/*ctor*/ SchedGraphEdge(SchedGraphNode* _src,
|
||||||
SchedGraphNode* _sink,
|
SchedGraphNode* _sink,
|
||||||
Value* _val,
|
const Value* _val,
|
||||||
DataDepOrderType _depOrderType =TrueDep,
|
DataDepOrderType _depOrderType =TrueDep,
|
||||||
int _minDelay = -1);
|
int _minDelay = -1);
|
||||||
|
|
||||||
@@ -293,8 +293,11 @@ private:
|
|||||||
//
|
//
|
||||||
void buildGraph (const TargetMachine& target);
|
void buildGraph (const TargetMachine& target);
|
||||||
|
|
||||||
void addEdgesForInstruction (SchedGraphNode* node,
|
void buildNodesforVMInstr (const TargetMachine& target,
|
||||||
NodeToRegRefMap& regToRefVecMap,
|
const Instruction* instr);
|
||||||
|
|
||||||
|
void addEdgesForInstruction (const MachineInstr& minstr,
|
||||||
|
RegToRefVecMap& regToRefVecMap,
|
||||||
const TargetMachine& target);
|
const TargetMachine& target);
|
||||||
|
|
||||||
void addCDEdges (const TerminatorInst* term,
|
void addCDEdges (const TerminatorInst* term,
|
||||||
@@ -303,11 +306,14 @@ private:
|
|||||||
void addMemEdges (const vector<const Instruction*>& memVec,
|
void addMemEdges (const vector<const Instruction*>& memVec,
|
||||||
const TargetMachine& target);
|
const TargetMachine& target);
|
||||||
|
|
||||||
void addMachineRegEdges (NodeToRegRefMap& regToRefVecMap,
|
void addMachineRegEdges (RegToRefVecMap& regToRefVecMap,
|
||||||
const TargetMachine& target);
|
const TargetMachine& target);
|
||||||
|
|
||||||
void addSSAEdge (SchedGraphNode* node,
|
void addSSAEdge (SchedGraphNode* node,
|
||||||
Value* val,
|
const Value* val,
|
||||||
|
const TargetMachine& target);
|
||||||
|
|
||||||
|
void addNonSSAEdgesForValue (const Instruction* instr,
|
||||||
const TargetMachine& target);
|
const TargetMachine& target);
|
||||||
|
|
||||||
void addDummyEdges ();
|
void addDummyEdges ();
|
||||||
|
Reference in New Issue
Block a user