1 #ifndef MAGIC_LTLAZY_CHECKPOINT_PASS_H 2 #define MAGIC_LTLAZY_CHECKPOINT_PASS_H 3 4 #include <magic/magic.h> 5 #include <magic/MagicPass.h> 6 7 using namespace llvm; 8 9 namespace llvm { 10 11 #define magicLTLazyCheckpointPassLog(M) DEBUG(dbgs() << "MagicLTLazyCheckpointPass: " << M << "\n") 12 13 class MagicLTLazyCheckpointPass : public FunctionPass { 14 15 public: 16 static char ID; 17 18 MagicLTLazyCheckpointPass(); 19 20 virtual void getAnalysisUsage(AnalysisUsage &AU) const; 21 virtual bool runOnFunction(Function &F); 22 23 private: 24 MagicPass *MP; 25 }; 26 27 } 28 29 #endif 30