//top block of cfg
//===----------------------------------------------------------------------===//
-#include "llvm/Transforms/Instrumentation/Graph.h"
+#include "Graph.h"
#include "llvm/Constants.h"
#include "llvm/DerivedTypes.h"
#include "llvm/iMemory.h"
#include "llvm/iOperators.h"
#include "llvm/iPHINode.h"
#include "llvm/Module.h"
-#include "llvm/Instruction.h"
#include <stdio.h>
#define INSERT_LOAD_COUNT
//
//===----------------------------------------------------------------------===//
-#include "llvm/Transforms/Instrumentation/Graph.h"
+#include "Graph.h"
#include "llvm/iTerminators.h"
-#include "llvm/BasicBlock.h"
#include "Support/Statistic.h"
#include <algorithm>
-//using std::list;
-//using std::set;
using std::map;
using std::vector;
using std::cerr;
//===----------------------------------------------------------------------===//
#include "llvm/Transforms/Utils/UnifyFunctionExitNodes.h"
-#include "llvm/Transforms/Instrumentation/Graph.h"
#include "llvm/Pass.h"
#include "llvm/Module.h"
#include "llvm/iTerminators.h"
#include "Support/Statistic.h"
#include <algorithm>
+#include "Graph.h"
//using std::list;
using std::map;
//===----------------------------------------------------------------------===//
#include "llvm/Transforms/Utils/UnifyFunctionExitNodes.h"
-#include "llvm/Transforms/Instrumentation/Graph.h"
#include "llvm/Pass.h"
#include "llvm/Module.h"
#include "llvm/iTerminators.h"
#include "Support/Statistic.h"
#include <algorithm>
+#include "Graph.h"
//using std::list;
using std::map;
// update can be collapsed into minimum number of edges.
//===----------------------------------------------------------------------===//
-#include "llvm/Transforms/Instrumentation/ProfilePaths.h"
#include "llvm/Transforms/Utils/UnifyFunctionExitNodes.h"
-#include "llvm/Transforms/Instrumentation/Graph.h"
#include "llvm/Support/CFG.h"
#include "llvm/Constants.h"
#include "llvm/DerivedTypes.h"
#include "llvm/iMemory.h"
-#include "llvm/GlobalVariable.h"
#include "llvm/Module.h"
-#include <iostream>
+#include "Graph.h"
#include <fstream>
using std::vector;
static RegisterOpt<ProfilePaths> X("paths", "Profile Paths");
-// createProfilePathsPass - Create a new pass to add path profiling
-//
-Pass *createProfilePathsPass() {
- return new ProfilePaths();
-}
-
-
static Node *findBB(std::vector<Node *> &st, BasicBlock *BB){
for(std::vector<Node *>::iterator si=st.begin(); si!=st.end(); ++si){
if(((*si)->getElement())==BB){
//
//===----------------------------------------------------------------------===//
-#include "llvm/Transforms/Instrumentation/Graph.h"
#include "llvm/Module.h"
-#include "llvm/BasicBlock.h"
#include "llvm/iTerminators.h"
-#include "llvm/Support/CFG.h"
-#include "llvm/Function.h"
#include "llvm/iOther.h"
-#include "Support/Casting.h"
-#include <iostream>
-#include <vector>
-#include <map>
+#include "llvm/Support/CFG.h"
+#include "Graph.h"
using std::vector;
using std::map;