summaryrefslogtreecommitdiff
path: root/lib/CodeGen/MachineFunctionPass.cpp
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-07-31 03:02:41 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-07-31 03:02:41 +0000
commitc5b19b21d84814d19692a6bbea11fbd135f4b094 (patch)
treebb1bd4e3aa43436e497fba177d854d517f35075a /lib/CodeGen/MachineFunctionPass.cpp
parent527695dd66971086f1a67ad30762c47fc7bce5d1 (diff)
downloadllvm-c5b19b21d84814d19692a6bbea11fbd135f4b094.tar.gz
llvm-c5b19b21d84814d19692a6bbea11fbd135f4b094.tar.bz2
llvm-c5b19b21d84814d19692a6bbea11fbd135f4b094.tar.xz
Revert r77654, it appears to be causing llvm-gcc bootstrap failures, and many
failures when building assorted projects with clang. --- Reverse-merging r77654 into '.': U include/llvm/CodeGen/Passes.h U include/llvm/CodeGen/MachineFunctionPass.h U include/llvm/CodeGen/MachineFunction.h U include/llvm/CodeGen/LazyLiveness.h U include/llvm/CodeGen/SelectionDAGISel.h D include/llvm/CodeGen/MachineFunctionAnalysis.h U include/llvm/Function.h U lib/Target/CellSPU/SPUISelDAGToDAG.cpp U lib/Target/PowerPC/PPCISelDAGToDAG.cpp U lib/CodeGen/LLVMTargetMachine.cpp U lib/CodeGen/MachineVerifier.cpp U lib/CodeGen/MachineFunction.cpp U lib/CodeGen/PrologEpilogInserter.cpp U lib/CodeGen/MachineLoopInfo.cpp U lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp D lib/CodeGen/MachineFunctionAnalysis.cpp D lib/CodeGen/MachineFunctionPass.cpp U lib/CodeGen/LiveVariables.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77661 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/MachineFunctionPass.cpp')
-rw-r--r--lib/CodeGen/MachineFunctionPass.cpp50
1 files changed, 0 insertions, 50 deletions
diff --git a/lib/CodeGen/MachineFunctionPass.cpp b/lib/CodeGen/MachineFunctionPass.cpp
deleted file mode 100644
index d8a7c55280..0000000000
--- a/lib/CodeGen/MachineFunctionPass.cpp
+++ /dev/null
@@ -1,50 +0,0 @@
-//===-- MachineFunctionPass.cpp -------------------------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file contains the definitions of the MachineFunctionPass members.
-//
-//===----------------------------------------------------------------------===//
-
-#include "llvm/Analysis/AliasAnalysis.h"
-#include "llvm/Analysis/ScalarEvolution.h"
-#include "llvm/Analysis/IVUsers.h"
-#include "llvm/Analysis/LiveValues.h"
-#include "llvm/Analysis/LoopDependenceAnalysis.h"
-#include "llvm/Analysis/MemoryDependenceAnalysis.h"
-#include "llvm/CodeGen/MachineFunctionAnalysis.h"
-#include "llvm/CodeGen/MachineFunctionPass.h"
-using namespace llvm;
-
-bool MachineFunctionPass::runOnFunction(Function &F) {
- // Do not codegen any 'available_externally' functions at all, they have
- // definitions outside the translation unit.
- if (F.hasAvailableExternallyLinkage())
- return false;
-
- MachineFunction &MF = getAnalysis<MachineFunctionAnalysis>().getMF();
- return runOnMachineFunction(MF);
-}
-
-void MachineFunctionPass::getAnalysisUsage(AnalysisUsage &AU) const {
- AU.addRequired<MachineFunctionAnalysis>();
-
- // MachineFunctionPass preserves all LLVM IR passes, but there's no
- // high-level way to express this. Instead, just list a bunch of
- // passes explicitly.
- AU.addPreserved<AliasAnalysis>();
- AU.addPreserved<ScalarEvolution>();
- AU.addPreserved<IVUsers>();
- AU.addPreserved<LoopDependenceAnalysis>();
- AU.addPreserved<MemoryDependenceAnalysis>();
- AU.addPreserved<LiveValues>();
- AU.addPreserved<MachineFunctionAnalysis>();
- AU.setPreservesCFG();
-
- FunctionPass::getAnalysisUsage(AU);
-}