ClearBlue
Public Member Functions | Static Public Attributes | Friends
SailfishChecker Class Reference
Inheritance diagram for SailfishChecker:
Inheritance graph
[legend]
Collaboration diagram for SailfishChecker:
Collaboration graph
[legend]

Public Member Functions

virtual void getAnalysisUsage (AnalysisUsage &AU) const override
 
virtual bool runOnModule (Module &M) override
 
virtual bool internallyDepends (unsigned TaskAID, unsigned TaskBID) override
 
virtual bool externallyDepends (unsigned CallerTaskID, unsigned CalleeTaskID) override
 
virtual bool runOnFunction (Function &F) override
 
virtual bool runOnFunction (Function &F, unsigned TaskID) override
 
virtual bool releaseMemory (Function &F) override
 
virtual std::string getName ()
 
virtual SymbolicExprGraphBuildergetSEGs () override
 
virtual CBCallGraph * getCG () override
 
virtual DomTreePass * getDTP () override
 
virtual TSDataLayout * getDL () override
 
virtual DebugInfoAnalysis * getDIA () override
 
ExternalMemorySpec * getMemSpec () override
 
ExternalIOSpec * getIOSpec () override
 
ExternalTaintSpec * getTaintSpec () override
 
- Public Member Functions inherited from BotUpParallelPass
 BotUpParallelPass (char &ID, unsigned NumTasks)
 
bool toCheck (const Function *Func)
 return true if the function should be in the dependence graph
 

Static Public Attributes

static char ID = 1
 

Friends

class SailfishFunctionChecker
 

Additional Inherited Members

- Protected Attributes inherited from BotUpParallelPass
CBCallGraph * CG = nullptr
 
SymbolicExprGraphBuilderSEGBuilder = nullptr
 

Member Function Documentation

◆ externallyDepends()

bool SailfishChecker::externallyDepends ( unsigned  CallerTaskID,
unsigned  CalleeTaskID 
)
overridevirtual

override this function to determine the task dependency between caller and callee returns true if CallerTask depends on CalleeTask

Implements BotUpParallelPass.

◆ internallyDepends()

bool SailfishChecker::internallyDepends ( unsigned  TaskAID,
unsigned  TaskBID 
)
overridevirtual

override this function to determine the task dependency in a single function returns true if TaskA depends on TaskB

Implements BotUpParallelPass.

◆ releaseMemory()

bool SailfishChecker::releaseMemory ( Function &  F)
overridevirtual

Release the memory for storing intermediate results produced during the analysis of F This is done automatically when the results are no longer needed.

Implements BotUpParallelPass.

◆ runOnFunction()

virtual bool SailfishChecker::runOnFunction ( Function &  F,
unsigned  TaskID 
)
overridevirtual

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; ... }

Implements BotUpParallelPass.


The documentation for this class was generated from the following files: