summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/MachineFunctionPass.cpp
diff options
context:
space:
mode:
authorMatthias Braun <matze@braunis.de>2016-08-23 05:17:11 +0000
committerMatthias Braun <matze@braunis.de>2016-08-23 05:17:11 +0000
commit7f66202d38148a7c5b1cf6723de9d442f5566e46 (patch)
tree286a6404f2a0fcd2d8842ed5ab363c42857bc854 /llvm/lib/CodeGen/MachineFunctionPass.cpp
parentfd936841ebefb39a383fe651126998f6728efcbc (diff)
downloadbcm5719-llvm-7f66202d38148a7c5b1cf6723de9d442f5566e46.tar.gz
bcm5719-llvm-7f66202d38148a7c5b1cf6723de9d442f5566e46.zip
Revert "(HEAD -> master, origin/master, origin/HEAD) CodeGen: Remove MachineFunctionAnalysis => Enable (Machine)ModulePasses"
Reverting while tracking down a use after free. This reverts commit r279502. llvm-svn: 279503
Diffstat (limited to 'llvm/lib/CodeGen/MachineFunctionPass.cpp')
-rw-r--r--llvm/lib/CodeGen/MachineFunctionPass.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/llvm/lib/CodeGen/MachineFunctionPass.cpp b/llvm/lib/CodeGen/MachineFunctionPass.cpp
index 43cd2ed64b4..524ebdbf657 100644
--- a/llvm/lib/CodeGen/MachineFunctionPass.cpp
+++ b/llvm/lib/CodeGen/MachineFunctionPass.cpp
@@ -22,7 +22,7 @@
#include "llvm/Analysis/ScalarEvolution.h"
#include "llvm/Analysis/ScalarEvolutionAliasAnalysis.h"
#include "llvm/CodeGen/MachineFunction.h"
-#include "llvm/CodeGen/MachineModuleInfo.h"
+#include "llvm/CodeGen/MachineFunctionAnalysis.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/CodeGen/StackProtector.h"
#include "llvm/IR/Dominators.h"
@@ -41,9 +41,7 @@ bool MachineFunctionPass::runOnFunction(Function &F) {
if (F.hasAvailableExternallyLinkage())
return false;
- MachineModuleInfo &MMI = getAnalysis<MachineModuleInfo>();
- MachineFunction &MF = MMI.getMachineFunction(F);
-
+ MachineFunction &MF = getAnalysis<MachineFunctionAnalysis>().getMF();
MachineFunctionProperties &MFProps = MF.getProperties();
#ifndef NDEBUG
@@ -67,8 +65,8 @@ bool MachineFunctionPass::runOnFunction(Function &F) {
}
void MachineFunctionPass::getAnalysisUsage(AnalysisUsage &AU) const {
- AU.addRequired<MachineModuleInfo>();
- AU.addPreserved<MachineModuleInfo>();
+ AU.addRequired<MachineFunctionAnalysis>();
+ AU.addPreserved<MachineFunctionAnalysis>();
// MachineFunctionPass preserves all LLVM IR passes, but there's no
// high-level way to express this. Instead, just list a bunch of
OpenPOWER on IntegriCloud