diff options
Diffstat (limited to 'llvm/lib/Target/Hexagon/RDFCopy.h')
-rw-r--r-- | llvm/lib/Target/Hexagon/RDFCopy.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/lib/Target/Hexagon/RDFCopy.h b/llvm/lib/Target/Hexagon/RDFCopy.h index e4fb898..92b2c65 100644 --- a/llvm/lib/Target/Hexagon/RDFCopy.h +++ b/llvm/lib/Target/Hexagon/RDFCopy.h @@ -25,8 +25,8 @@ class MachineInstr; namespace rdf { struct CopyPropagation { - CopyPropagation(DataFlowGraph &dfg) : MDT(dfg.getDT()), DFG(dfg), - RDefMap(std::less<RegisterRef>(DFG.getPRI())) {} + CopyPropagation(DataFlowGraph &dfg) + : MDT(dfg.getDT()), DFG(dfg), RDefMap(RegisterRefLess(DFG.getPRI())) {} virtual ~CopyPropagation() = default; @@ -35,7 +35,7 @@ namespace rdf { bool trace() const { return Trace; } DataFlowGraph &getDFG() { return DFG; } - using EqualityMap = std::map<RegisterRef, RegisterRef>; + using EqualityMap = std::map<RegisterRef, RegisterRef, RegisterRefLess>; virtual bool interpretAsCopy(const MachineInstr *MI, EqualityMap &EM); private: @@ -45,7 +45,7 @@ namespace rdf { bool Trace = false; // map: register -> (map: stmt -> reaching def) - std::map<RegisterRef,std::map<NodeId,NodeId>> RDefMap; + std::map<RegisterRef, std::map<NodeId, NodeId>, RegisterRefLess> RDefMap; // map: statement -> (map: dst reg -> src reg) std::map<NodeId, EqualityMap> CopyMap; std::vector<NodeId> Copies; |