Factor commonality in triple match routines into helper template for registering
classes, and migrate existing targets over.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77126 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/SystemZ/TargetInfo/SystemZTargetInfo.cpp b/lib/Target/SystemZ/TargetInfo/SystemZTargetInfo.cpp
index e063a91..8272b11 100644
--- a/lib/Target/SystemZ/TargetInfo/SystemZTargetInfo.cpp
+++ b/lib/Target/SystemZ/TargetInfo/SystemZTargetInfo.cpp
@@ -14,17 +14,6 @@
Target llvm::TheSystemZTarget;
-static unsigned SystemZ_TripleMatchQuality(const std::string &TT) {
- // We strongly match s390x
- if (TT.size() >= 5 && TT[0] == 's' && TT[1] == '3' && TT[2] == '9' &&
- TT[3] == '0' && TT[4] == 'x')
- return 20;
-
- return 0;
-}
-
extern "C" void LLVMInitializeSystemZTargetInfo() {
- TargetRegistry::RegisterTarget(TheSystemZTarget, "systemz",
- "SystemZ",
- &SystemZ_TripleMatchQuality);
+ RegisterTarget<Triple::systemz> X(TheSystemZTarget, "systemz", "SystemZ");
}