Fix undefined behavior in the Mips backend.
[oota-llvm.git] / lib / Target / MSP430 / TargetInfo / MSP430TargetInfo.cpp
index e2a71238d941f0fdd08882b2f79a4d2e3d4b68a1..8b3e01ecf52c344b17740021302da930fa33fa3b 100644 (file)
@@ -9,22 +9,12 @@
 
 #include "MSP430.h"
 #include "llvm/Module.h"
-#include "llvm/Target/TargetRegistry.h"
+#include "llvm/Support/TargetRegistry.h"
 using namespace llvm;
 
 Target llvm::TheMSP430Target;
 
-static unsigned MSP430_TripleMatchQuality(const std::string &TT) {
-  // We strongly match msp430
-  if (TT.size() >= 6 && TT[0] == 'm' && TT[1] == 's' && TT[2] == 'p' &&
-      TT[3] == '4' &&  TT[4] == '3' && TT[5] == '0')
-    return 20;
-
-  return 0;
-}
-
 extern "C" void LLVMInitializeMSP430TargetInfo() { 
-  TargetRegistry::RegisterTarget(TheMSP430Target, "msp430",    
-                                  "MSP430 [experimental]",
-                                  &MSP430_TripleMatchQuality);
+  RegisterTarget<Triple::msp430> 
+    X(TheMSP430Target, "msp430", "MSP430 [experimental]");
 }