diff --git a/tools/driver/cc1_main.cpp b/tools/driver/cc1_main.cpp
index 5de6c73e6a0f68aa34f73744452e19cb755c4d94..9ad4af1436ca7a9d8f9fd595fe53f5366e97df33 100644
--- a/tools/driver/cc1_main.cpp
+++ b/tools/driver/cc1_main.cpp
@@ -126,6 +126,7 @@ int cc1_main(const char **ArgBegin, const char **ArgEnd,
 
   // Initialize targets first, so that --version shows registered targets.
   llvm::InitializeAllTargets();
+  llvm::InitializeAllMCAsmInfos();
   llvm::InitializeAllMCSubtargetInfos();
   llvm::InitializeAllAsmPrinters();
   llvm::InitializeAllAsmParsers();
diff --git a/tools/driver/cc1as_main.cpp b/tools/driver/cc1as_main.cpp
index dd18ea75c232ccd605c46d8984878d3b3cc54ffc..358d746986c81f7cfd8c45c165091790893d5eb3 100644
--- a/tools/driver/cc1as_main.cpp
+++ b/tools/driver/cc1as_main.cpp
@@ -256,7 +256,7 @@ static bool ExecuteAssembler(AssemblerInvocation &Opts, Diagnostic &Diags) {
   // it later.
   SrcMgr.setIncludeDirs(Opts.IncludePaths);
 
-  OwningPtr<MCAsmInfo> MAI(TheTarget->createAsmInfo(Opts.Triple));
+  OwningPtr<MCAsmInfo> MAI(TheTarget->createMCAsmInfo(Opts.Triple));
   assert(MAI && "Unable to create target asm info!");
 
   bool IsBinary = Opts.OutputType == AssemblerInvocation::FT_Obj;
@@ -356,6 +356,7 @@ int cc1as_main(const char **ArgBegin, const char **ArgEnd,
   InitializeAllTargetInfos();
   // FIXME: We shouldn't need to initialize the Target(Machine)s.
   InitializeAllTargets();
+  InitializeAllMCAsmInfos();
   InitializeAllMCInstrInfos();
   InitializeAllMCSubtargetInfos();
   InitializeAllAsmPrinters();