diff options
-rw-r--r-- | llvm/include/llvm/MC/SubtargetFeature.h | 5 | ||||
-rw-r--r-- | llvm/lib/MC/MCSubtargetInfo.cpp | 5 |
2 files changed, 6 insertions, 4 deletions
diff --git a/llvm/include/llvm/MC/SubtargetFeature.h b/llvm/include/llvm/MC/SubtargetFeature.h index 6dc4931f5ac..ee278279794 100644 --- a/llvm/include/llvm/MC/SubtargetFeature.h +++ b/llvm/include/llvm/MC/SubtargetFeature.h @@ -100,6 +100,11 @@ struct SubtargetInfoKV { bool operator<(StringRef S) const { return StringRef(Key) < S; } + + /// Compare routine for std::is_sorted. + bool operator<(const SubtargetInfoKV &Other) const { + return StringRef(Key) < StringRef(Other.Key); + } }; //===----------------------------------------------------------------------===// diff --git a/llvm/lib/MC/MCSubtargetInfo.cpp b/llvm/lib/MC/MCSubtargetInfo.cpp index 540af9a9d47..9e7ea595255 100644 --- a/llvm/lib/MC/MCSubtargetInfo.cpp +++ b/llvm/lib/MC/MCSubtargetInfo.cpp @@ -87,10 +87,7 @@ const MCSchedModel &MCSubtargetInfo::getSchedModelForCPU(StringRef CPU) const { ArrayRef<SubtargetInfoKV> SchedModels(ProcSchedModels, ProcDesc.size()); - assert(std::is_sorted(SchedModels.begin(), SchedModels.end(), - [](const SubtargetInfoKV &LHS, const SubtargetInfoKV &RHS) { - return strcmp(LHS.Key, RHS.Key) < 0; - }) && + assert(std::is_sorted(SchedModels.begin(), SchedModels.end()) && "Processor machine model table is not sorted"); // Find entry |