diff --git a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp --- a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp @@ -72,6 +72,7 @@ #include #include #include +#include using namespace llvm; @@ -24943,13 +24944,6 @@ return DAG.getTokenFactor(SDLoc(N), Aliases); } -namespace { -// TODO: Replace with with std::monostate when we move to C++17. -struct UnitT { } Unit; -bool operator==(const UnitT &, const UnitT &) { return true; } -bool operator!=(const UnitT &, const UnitT &) { return false; } -} // namespace - // This function tries to collect a bunch of potentially interesting // nodes to improve the chains of, all at once. This might seem // redundant, as this function gets called when visiting every store @@ -24971,7 +24965,7 @@ // space and thus merged with the previous interval at insertion time. using IMap = - llvm::IntervalMap>; + llvm::IntervalMap>; IMap::Allocator A; IMap Intervals(A);