summaryrefslogtreecommitdiffstats
path: root/lib/MC/MCSubtargetInfo.cpp
diff options
context:
space:
mode:
authordim <dim@FreeBSD.org>2015-12-30 11:46:15 +0000
committerdim <dim@FreeBSD.org>2015-12-30 11:46:15 +0000
commite194cd6d03d91631334d9d5e55b506036f423cc8 (patch)
treefcfbb4df56a744f4ddc6122c50521dd3f1c5e196 /lib/MC/MCSubtargetInfo.cpp
parent1f8fab1f5d4699e0d1676fd4e5150ed8635f5035 (diff)
downloadFreeBSD-src-e194cd6d03d91631334d9d5e55b506036f423cc8.zip
FreeBSD-src-e194cd6d03d91631334d9d5e55b506036f423cc8.tar.gz
Vendor import of llvm trunk r256633:
https://llvm.org/svn/llvm-project/llvm/trunk@256633
Diffstat (limited to 'lib/MC/MCSubtargetInfo.cpp')
-rw-r--r--lib/MC/MCSubtargetInfo.cpp17
1 files changed, 8 insertions, 9 deletions
diff --git a/lib/MC/MCSubtargetInfo.cpp b/lib/MC/MCSubtargetInfo.cpp
index 9210cf5..dc864d3 100644
--- a/lib/MC/MCSubtargetInfo.cpp
+++ b/lib/MC/MCSubtargetInfo.cpp
@@ -32,8 +32,8 @@ void MCSubtargetInfo::InitMCProcessorInfo(StringRef CPU, StringRef FS) {
CPUSchedModel = &MCSchedModel::GetDefaultSchedModel();
}
-void MCSubtargetInfo::setDefaultFeatures(StringRef CPU) {
- FeatureBits = getFeatures(CPU, "", ProcDesc, ProcFeatures);
+void MCSubtargetInfo::setDefaultFeatures(StringRef CPU, StringRef FS) {
+ FeatureBits = getFeatures(CPU, FS, ProcDesc, ProcFeatures);
}
MCSubtargetInfo::MCSubtargetInfo(
@@ -77,13 +77,12 @@ FeatureBitset MCSubtargetInfo::ApplyFeatureFlag(StringRef FS) {
const MCSchedModel &MCSubtargetInfo::getSchedModelForCPU(StringRef CPU) const {
assert(ProcSchedModels && "Processor machine model not available!");
- unsigned NumProcs = ProcDesc.size();
-#ifndef NDEBUG
- for (size_t i = 1; i < NumProcs; i++) {
- assert(strcmp(ProcSchedModels[i - 1].Key, ProcSchedModels[i].Key) < 0 &&
- "Processor machine model table is not sorted");
- }
-#endif
+ size_t NumProcs = ProcDesc.size();
+ assert(std::is_sorted(ProcSchedModels, ProcSchedModels+NumProcs,
+ [](const SubtargetInfoKV &LHS, const SubtargetInfoKV &RHS) {
+ return strcmp(LHS.Key, RHS.Key) < 0;
+ }) &&
+ "Processor machine model table is not sorted");
// Find entry
const SubtargetInfoKV *Found =
OpenPOWER on IntegriCloud