diff --git a/bridge/go-llvm-builtins.cpp b/bridge/go-llvm-builtins.cpp
index f860161..6f0f0b2 100644
--- a/bridge/go-llvm-builtins.cpp
+++ b/bridge/go-llvm-builtins.cpp
@@ -419,7 +419,7 @@
       llvmOrder(llvm::cast<llvm::ConstantInt>(args[1])->getZExtValue()) :
       llvm::AtomicOrdering::SequentiallyConsistent;
   load->setAtomic(o);
-  load->setAlignment(sz);
+  load->setAlignment(llvm::MaybeAlign(sz));
   return load;
 }
 
@@ -449,7 +449,7 @@
       llvmOrder(llvm::cast<llvm::ConstantInt>(args[2])->getZExtValue()) :
       llvm::AtomicOrdering::SequentiallyConsistent;
   store->setAtomic(o);
-  store->setAlignment(sz);
+  store->setAlignment(llvm::MaybeAlign(sz));
   return store;
 }
 
diff --git a/driver/CompileGo.cpp b/driver/CompileGo.cpp
index d47ad5e..4d04c31 100644
--- a/driver/CompileGo.cpp
+++ b/driver/CompileGo.cpp
@@ -965,8 +965,8 @@
     // Set PassConfig options provided by TargetMachine.
     passConfig->setDisableVerify(noverify);
     codeGenPasses.add(passConfig);
-    MachineModuleInfo *MMI = new MachineModuleInfo(lltm);
-    codeGenPasses.add(MMI);
+    MachineModuleInfoWrapperPass *MMIWP = new MachineModuleInfoWrapperPass(lltm);
+    codeGenPasses.add(MMIWP);
     passConfig->addISelPasses();
     passConfig->addMachinePasses();
     passConfig->setInitialized();
@@ -977,7 +977,7 @@
     if (enable_gc_)
       codeGenPasses.add(createGoAnnotationPass());
 
-    lltm->addAsmPrinter(codeGenPasses, *OS, nullptr, ft, MMI->getContext());
+    lltm->addAsmPrinter(codeGenPasses, *OS, nullptr, ft, MMIWP->getMMI().getContext());
 
     codeGenPasses.add(createFreeMachineFunctionPass());
   }
diff --git a/passes/GoStatepoints.cpp b/passes/GoStatepoints.cpp
index 9b272b9..bc3d81c 100644
--- a/passes/GoStatepoints.cpp
+++ b/passes/GoStatepoints.cpp
@@ -2122,7 +2122,7 @@
   // statepoints surviving this pass.  This makes testing easier and the
   // resulting IR less confusing to human readers.
   DomTreeUpdater DTU(DT, DomTreeUpdater::UpdateStrategy::Lazy);
-  bool MadeChange = removeUnreachableBlocks(F, nullptr, &DTU);
+  bool MadeChange = removeUnreachableBlocks(F, &DTU);
 
   // Rewrite all the calls that need statepoints to invokes, so we can
   // attach a stack map through its landing pad.
