buildUseTable(const std::vector< FilteredCfgNode > &cfgNodes) | StaticSingleAssignment | private |
buildVariableReference(const VarName &var, SgScopeStatement *scope=NULL) | StaticSingleAssignment | static |
calculateInterproceduralProcessingOrder(const boost::unordered_set< SgFunctionDefinition * > &interestingFunctions) | StaticSingleAssignment | private |
emptyName | StaticSingleAssignment | static |
expandedDefTable | StaticSingleAssignment | private |
expandParentMemberDefinitions(SgFunctionDeclaration *function) | StaticSingleAssignment | private |
expandParentMemberUses(SgFunctionDeclaration *function) | StaticSingleAssignment | private |
FilteredCfgEdge typedef | StaticSingleAssignment | |
FilteredCfgNode typedef | StaticSingleAssignment | |
getCfgNodesInPostorder(SgFunctionDefinition *func) | StaticSingleAssignment | privatestatic |
getDebug() | StaticSingleAssignment | inlinestatic |
getDebugExtra() | StaticSingleAssignment | inlinestatic |
getDefsAtNode(SgNode *node) const | StaticSingleAssignment | |
getLastVersions(SgFunctionDeclaration *func) const | StaticSingleAssignment | |
getLocalUsesTable() | StaticSingleAssignment | inline |
getOriginalDefTable() | StaticSingleAssignment | inline |
getOriginalVarsDefinedInSubtree(SgNode *root) const | StaticSingleAssignment | |
getOutgoingDefsAtNode(SgNode *node) const | StaticSingleAssignment | |
getReachingDefsAtNode_(SgNode *node) const | StaticSingleAssignment | |
getUniqueName(SgNode *node) | StaticSingleAssignment | static |
getUsesAtNode(SgNode *node) const | StaticSingleAssignment | |
getVarForExpression(SgNode *node) | StaticSingleAssignment | static |
getVarName(SgNode *node) | StaticSingleAssignment | static |
getVarsDefinedInSubtree(SgNode *root) const | StaticSingleAssignment | |
getVarsUsedInSubtree(SgNode *root) const | StaticSingleAssignment | |
GlobalReachingDefTable typedef | StaticSingleAssignment | |
insertDefsForChildMemberUses(SgFunctionDeclaration *function) | StaticSingleAssignment | private |
insertDefsForExternalVariables(SgFunctionDeclaration *function) | StaticSingleAssignment | private |
insertInterproceduralDefs(SgFunctionDefinition *funcDef, const boost::unordered_set< SgFunctionDefinition * > &processed, ClassHierarchyWrapper *classHierarchy) | StaticSingleAssignment | private |
insertPhiFunctions(SgFunctionDefinition *function, const std::vector< FilteredCfgNode > &cfgNodesInPostOrder) | StaticSingleAssignment | private |
interproceduralDefPropagation(const boost::unordered_set< SgFunctionDefinition * > &interestingFunctions) | StaticSingleAssignment | private |
isArgumentNonConstReferenceOrPointer(SgInitializedName *formalArgument) | StaticSingleAssignment | privatestatic |
isBuiltinVar(const VarName &var) | StaticSingleAssignment | privatestatic |
isDeepConstPointer(SgType *type) | StaticSingleAssignment | privatestatic |
isPointerToDeepConst(SgType *type) | StaticSingleAssignment | privatestatic |
isPrefixOfName(VarName name, VarName prefix) | StaticSingleAssignment | static |
isThisPointer(SgExpression *expression) | StaticSingleAssignment | privatestatic |
isThisPointerSameInCallee(SgFunctionCallExp *callSite, SgMemberFunctionDeclaration *callee) | StaticSingleAssignment | privatestatic |
isVarAccessibleFromCaller(const VarName &var, SgExpression *callSite, SgFunctionDeclaration *callee) | StaticSingleAssignment | privatestatic |
isVarInScope(const VarName &var, SgNode *scope) | StaticSingleAssignment | static |
LocalDefUseTable typedef | StaticSingleAssignment | |
localUsesTable | StaticSingleAssignment | private |
NodeReachingDefTable typedef | StaticSingleAssignment | |
originalDefTable | StaticSingleAssignment | private |
populateLocalDefsTable(SgFunctionDeclaration *function) | StaticSingleAssignment | private |
printLocalDefUseTable(const LocalDefUseTable &table) | StaticSingleAssignment | static |
printOriginalDefs(SgNode *node) | StaticSingleAssignment | |
printOriginalDefTable() | StaticSingleAssignment | |
printToDOT(SgSourceFile *file, std::ofstream &outFile) | StaticSingleAssignment | private |
printToFilteredDOT(SgSourceFile *file, std::ofstream &outFile) | StaticSingleAssignment | private |
processCalleesThenFunction(SgFunctionDefinition *targetFunction, SgIncidenceDirectedGraph *callGraph, const boost::unordered_map< SgFunctionDefinition *, SgGraphNode * > &graphNodeToFunction, std::vector< SgFunctionDefinition * > &processingOrder, std::set< SgFunctionDefinition * > visited) | StaticSingleAssignment | private |
processOneCallSite(SgExpression *callSite, SgFunctionDeclaration *callee, const boost::unordered_set< SgFunctionDefinition * > &processed, ClassHierarchyWrapper *classHierarchy) | StaticSingleAssignment | private |
project | StaticSingleAssignment | private |
propagateDefs(FilteredCfgNode cfgNode) | StaticSingleAssignment | private |
ReachingDefPtr typedef | StaticSingleAssignment | |
reachingDefsTable | StaticSingleAssignment | private |
renumberAllDefinitions(SgFunctionDefinition *func, const std::vector< FilteredCfgNode > &cfgNodesInPostOrder) | StaticSingleAssignment | private |
run(bool interprocedural, bool treatPointersAsStructures) | StaticSingleAssignment | |
runDefUseDataFlow(SgFunctionDefinition *func) | StaticSingleAssignment | private |
ssaLocalDefTable | StaticSingleAssignment | private |
StaticSingleAssignment(SgProject *proj) | StaticSingleAssignment | inline |
toDOT(const std::string fileName) | StaticSingleAssignment | |
toFilteredDOT(const std::string fileName) | StaticSingleAssignment | |
updateIncomingPropagatedDefs(FilteredCfgNode cfgNode) | StaticSingleAssignment | private |
UseTable typedef | StaticSingleAssignment | |
useTable | StaticSingleAssignment | private |
VarName typedef | StaticSingleAssignment | |
varnameToString(const VarName &vec) | StaticSingleAssignment | static |
varRequiresThisPointer(const VarName &var) | StaticSingleAssignment | privatestatic |
~StaticSingleAssignment() | StaticSingleAssignment | inline |