revert 99311. Looks like it broke darwin bootstrap.

llvm-svn: 99317
diff --git a/clang/lib/CodeGen/CGVtable.cpp b/clang/lib/CodeGen/CGVtable.cpp
index cedefba..9204e4e 100644
--- a/clang/lib/CodeGen/CGVtable.cpp
+++ b/clang/lib/CodeGen/CGVtable.cpp
@@ -3805,17 +3805,7 @@
     return;
 
   TemplateSpecializationKind kind = RD->getTemplateSpecializationKind();
-
-
-  // The reason we have TSK_ExplicitInstantiationDeclaration in here (but not
-  // in  Sema::MaybeMarkVirtualMembersReferenced) is for the case
-  // template<> void stdio_sync_filebuf<wchar_t>::xsgetn() {
-  // }
-  // extern template class stdio_sync_filebuf<wchar_t>;
-  // Since we are called after the extern declaration is seen.
-
-  if (kind == TSK_ImplicitInstantiation ||
-      kind == TSK_ExplicitInstantiationDeclaration)
+  if (kind == TSK_ImplicitInstantiation)
     CGM.DeferredVtables.push_back(RD);
   else
     GenerateClassData(CGM.getVtableLinkage(RD), RD);