|  | 
|  | BotUpParallelPass (char &ID, unsigned NumTasks) | 
|  | 
| virtual void | getAnalysisUsage (AnalysisUsage &AU) const override | 
|  | 
| virtual bool | runOnModule (Module &M) override | 
|  | 
| virtual bool | runOnFunction (Function &F)=0 | 
|  | 
| virtual bool | runOnFunction (Function &F, unsigned TaskID)=0 | 
|  | 
| virtual bool | releaseMemory (Function &F)=0 | 
|  | 
| virtual bool | internallyDepends (unsigned TaskAID, unsigned TaskBID)=0 | 
|  | 
| virtual bool | externallyDepends (unsigned CallerTaskID, unsigned CalleeTaskID)=0 | 
|  | 
| bool | toCheck (const Function *Func) | 
|  | return true if the function should be in the dependence graph 
 | 
|  | 
◆ externallyDepends()
  
  | 
        
          | virtual bool BotUpParallelPass::externallyDepends | ( | unsigned | CallerTaskID, |  
          |  |  | unsigned | CalleeTaskID |  
          |  | ) |  |  |  | pure virtual | 
 
override this function to determine the task dependency between caller and callee returns true if CallerTask depends on CalleeTask 
Implemented in SailfishChecker.
 
 
◆ internallyDepends()
  
  | 
        
          | virtual bool BotUpParallelPass::internallyDepends | ( | unsigned | TaskAID, |  
          |  |  | unsigned | TaskBID |  
          |  | ) |  |  |  | pure virtual | 
 
override this function to determine the task dependency in a single function returns true if TaskA depends on TaskB 
Implemented in SailfishChecker.
 
 
◆ releaseMemory()
  
  | 
        
          | virtual bool BotUpParallelPass::releaseMemory | ( | Function & | F | ) |  |  | pure virtual | 
 
Release the memory for storing intermediate results produced during the analysis of F This is done automatically when the results are no longer needed. 
Implemented in SailfishChecker.
 
 
◆ runOnFunction()
  
  | 
        
          | virtual bool BotUpParallelPass::runOnFunction | ( | Function & | F, |  
          |  |  | unsigned | TaskID |  
          |  | ) |  |  |  | pure virtual | 
 
override this function to define the tasks in each function a simple example is like: assert(TaskID < getNumTasksEachFunction()); switch(TaskID) { case 0: doTask0(); break; case 1: doTask1(); break; ... } 
Implemented in SailfishChecker.
 
 
The documentation for this class was generated from the following files:
- /builds/prismers/clearblue/include/Checker/Sailfish/BotUpParallelPass.h
- /builds/prismers/clearblue/lib/Checker/Sailfish/BotUpParallelPass.cpp