Add new helpers for registering targets.
 - Less boilerplate == good.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77052 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/X86/AsmParser/X86AsmParser.cpp b/lib/Target/X86/AsmParser/X86AsmParser.cpp
index 7c50f31..c278de0 100644
--- a/lib/Target/X86/AsmParser/X86AsmParser.cpp
+++ b/lib/Target/X86/AsmParser/X86AsmParser.cpp
@@ -56,14 +56,8 @@
   return MatchInstruction(Name, Operands, Inst);
 }
 
-namespace {
-  TargetAsmParser *createAsmParser(const Target &T) {
-    return new X86ATTAsmParser(T);
-  }
-}
-
 // Force static initialization.
 extern "C" void LLVMInitializeX86AsmParser() {
-  TargetRegistry::RegisterAsmParser(TheX86_32Target, &createAsmParser);
-  TargetRegistry::RegisterAsmParser(TheX86_64Target, &createAsmParser);
+  RegisterAsmParser<X86ATTAsmParser> X(TheX86_32Target);
+  RegisterAsmParser<X86ATTAsmParser> Y(TheX86_64Target);
 }