summaryrefslogtreecommitdiffstats
path: root/utils
diff options
context:
space:
mode:
authorMisha Brukman <brukman+llvm@gmail.com>2004-06-04 14:59:42 +0000
committerMisha Brukman <brukman+llvm@gmail.com>2004-06-04 14:59:42 +0000
commitbebdb204d225dffbb98129348224a21bbe72a033 (patch)
tree172e4a62e9f5ae4e43ee08c577e4175f605c56b2 /utils
parenta7afa37f3c8a8757e5729ddc22df0bc911bf6024 (diff)
downloadexternal_llvm-bebdb204d225dffbb98129348224a21bbe72a033.zip
external_llvm-bebdb204d225dffbb98129348224a21bbe72a033.tar.gz
external_llvm-bebdb204d225dffbb98129348224a21bbe72a033.tar.bz2
Emit a more sensible error message if no subclasses of Target are defined.
Patch contributed by Vladimir Prus. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14010 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils')
-rw-r--r--utils/TableGen/CodeGenTarget.cpp2
-rw-r--r--utils/TableGen/CodeGenWrappers.cpp2
2 files changed, 4 insertions, 0 deletions
diff --git a/utils/TableGen/CodeGenTarget.cpp b/utils/TableGen/CodeGenTarget.cpp
index bf641fa..842294a 100644
--- a/utils/TableGen/CodeGenTarget.cpp
+++ b/utils/TableGen/CodeGenTarget.cpp
@@ -72,6 +72,8 @@ std::ostream &operator<<(std::ostream &OS, MVT::ValueType T) {
///
CodeGenTarget::CodeGenTarget() : PointerType(MVT::Other) {
std::vector<Record*> Targets = Records.getAllDerivedDefinitions("Target");
+ if (Targets.size() == 0)
+ throw std::string("ERROR: No 'Target' subclasses defined!");
if (Targets.size() != 1)
throw std::string("ERROR: Multiple subclasses of Target defined!");
TargetRec = Targets[0];
diff --git a/utils/TableGen/CodeGenWrappers.cpp b/utils/TableGen/CodeGenWrappers.cpp
index bf641fa..842294a 100644
--- a/utils/TableGen/CodeGenWrappers.cpp
+++ b/utils/TableGen/CodeGenWrappers.cpp
@@ -72,6 +72,8 @@ std::ostream &operator<<(std::ostream &OS, MVT::ValueType T) {
///
CodeGenTarget::CodeGenTarget() : PointerType(MVT::Other) {
std::vector<Record*> Targets = Records.getAllDerivedDefinitions("Target");
+ if (Targets.size() == 0)
+ throw std::string("ERROR: No 'Target' subclasses defined!");
if (Targets.size() != 1)
throw std::string("ERROR: Multiple subclasses of Target defined!");
TargetRec = Targets[0];