//===-- TargetMachineRegistry.cpp - Target Auto Registration Impl ---------===//
-//
+//
// The LLVM Compiler Infrastructure
//
// This file was developed by the LLVM research group and is distributed under
// the University of Illinois Open Source License. See LICENSE.TXT for details.
-//
+//
//===----------------------------------------------------------------------===//
//
// This file exposes the RegisterTarget class, which TargetMachine
static TargetRegistrationListener *Listeners = 0;
TargetMachineRegistry::Entry::Entry(const char *N, const char *SD,
- TargetMachine *(*CF)(const Module &, IntrinsicLowering*),
+ TargetMachine *(*CF)(const Module &, IntrinsicLowering*,
+ const std::string &),
unsigned (*MMF)(const Module &M), unsigned (*JMF)())
: Name(N), ShortDesc(SD), CtorFn(CF), ModuleMatchQualityFn(MMF),
JITMatchQualityFn(JMF), Next(List) {
return 0;
} else if (UsableTargets.size() == 1)
return UsableTargets.back().second;
-
+
// Otherwise, take the best target, but make sure we don't have to equally
// good best targets.
std::sort(UsableTargets.begin(), UsableTargets.end());
return 0;
} else if (UsableTargets.size() == 1)
return UsableTargets.back().second;
-
+
// Otherwise, take the best target. If there is a tie, just pick one.
unsigned MaxQual = UsableTargets.front().first;
const Entry *MaxQualTarget = UsableTargets.front().second;
MaxQual = UsableTargets[i].first;
MaxQualTarget = UsableTargets[i].second;
}
-
+
return MaxQualTarget;
}
-
+