Provide slightly more refined error message when trying to lookup a target, and

none are registered.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76181 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Daniel Dunbar 2009-07-17 15:50:49 +00:00
parent ab9238e876
commit 7df0c07dbc

View File

@ -21,6 +21,11 @@ TargetRegistry::iterator TargetRegistry::begin() {
const Target *
TargetRegistry::getClosestStaticTargetForTriple(const std::string &TT,
std::string &Error) {
// Provide special warning when no targets are initialized.
if (begin() == end()) {
Error = "Unable to find target for this triple (no targets are registered)";
return 0;
}
const Target *Best = 0, *EquallyBest = 0;
unsigned BestQuality = 0;
for (iterator it = begin(), ie = end(); it != ie; ++it) {
@ -35,7 +40,7 @@ TargetRegistry::getClosestStaticTargetForTriple(const std::string &TT,
}
if (!Best) {
Error = "No available targets are compatible with this module";
Error = "No available targets are compatible with this triple";
return 0;
}
@ -53,6 +58,12 @@ TargetRegistry::getClosestStaticTargetForTriple(const std::string &TT,
const Target *
TargetRegistry::getClosestStaticTargetForModule(const Module &M,
std::string &Error) {
// Provide special warning when no targets are initialized.
if (begin() == end()) {
Error = "Unable to find target for this module (no targets are registered)";
return 0;
}
const Target *Best = 0, *EquallyBest = 0;
unsigned BestQuality = 0;
for (iterator it = begin(), ie = end(); it != ie; ++it) {
@ -84,6 +95,12 @@ TargetRegistry::getClosestStaticTargetForModule(const Module &M,
const Target *
TargetRegistry::getClosestTargetForJIT(std::string &Error) {
// Provide special warning when no targets are initialized.
if (begin() == end()) {
Error = "No JIT is available for this host (no targets are registered)";
return 0;
}
const Target *Best = 0, *EquallyBest = 0;
unsigned BestQuality = 0;
for (iterator it = begin(), ie = end(); it != ie; ++it) {