Add support for finding the dependencies of call and invoke instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38497 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Owen Anderson
2007-07-10 17:59:22 +00:00
parent 5e2456c959
commit 5f32320797
2 changed files with 66 additions and 17 deletions

View File

@ -18,6 +18,7 @@
#define LLVM_ANALYSIS_MEMORY_DEPENDENCE_H
#include "llvm/Pass.h"
#include "llvm/Support/CallSite.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/Support/Compiler.h"
#include <map>
@ -34,6 +35,7 @@ class MemoryDependenceAnalysis : public FunctionPass {
DenseMap<Instruction*, std::pair<Instruction*, bool> > depGraphLocal;
std::multimap<Instruction*, Instruction*> reverseDep;
Instruction* getCallSiteDependency(CallSite C, bool local = true);
public:
static Instruction* NonLocal;