svf-tools 1.0.553 → 1.0.554

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +1 -1
  2. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +1 -1
  3. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +7 -7
  4. package/SVF-doxygen/html/html/Andersen_8h_source.html +2 -2
  5. package/SVF-doxygen/html/html/Annotator_8h_source.html +1 -1
  6. package/SVF-doxygen/html/html/BreakConstantExpr_8cpp.html +1 -1
  7. package/SVF-doxygen/html/html/BreakConstantExpr_8cpp_source.html +3 -3
  8. package/SVF-doxygen/html/html/BreakConstantExpr_8h_source.html +1 -1
  9. package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +8 -8
  10. package/SVF-doxygen/html/html/CFLAlias_8h_source.html +2 -2
  11. package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +1 -1
  12. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +18 -18
  13. package/SVF-doxygen/html/html/CHGBuilder_8h.html +1 -0
  14. package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +11 -10
  15. package/SVF-doxygen/html/html/CHG_8cpp.html +2 -2
  16. package/SVF-doxygen/html/html/CHG_8cpp_source.html +8 -8
  17. package/SVF-doxygen/html/html/CHG_8h_source.html +3 -3
  18. package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +17 -17
  19. package/SVF-doxygen/html/html/CPPUtil_8h_source.html +1 -1
  20. package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +4 -4
  21. package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +1 -1
  22. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +1 -1
  23. package/SVF-doxygen/html/html/ConsG_8h_source.html +1 -1
  24. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +2 -2
  25. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +1 -1
  26. package/SVF-doxygen/html/html/CoreBitVector_8cpp_source.html +1 -1
  27. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +3 -3
  28. package/SVF-doxygen/html/html/DCHG_8cpp.html +2 -2
  29. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +38 -35
  30. package/SVF-doxygen/html/html/DCHG_8h_source.html +9 -10
  31. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +11 -14
  32. package/SVF-doxygen/html/html/DDAPass_8h_source.html +12 -13
  33. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +1 -1
  34. package/SVF-doxygen/html/html/DPItem_8h_source.html +2 -2
  35. package/SVF-doxygen/html/html/DataFlowUtil_8cpp_source.html +5 -5
  36. package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +7 -7
  37. package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +2 -2
  38. package/SVF-doxygen/html/html/DoubleFreeChecker_8h_source.html +1 -1
  39. package/SVF-doxygen/html/html/ExeState_8cpp_source.html +3 -3
  40. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +3 -3
  41. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +1 -1
  42. package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
  43. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +1 -1
  44. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +1 -1
  45. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +1 -1
  46. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +1 -1
  47. package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +1 -1
  48. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +1 -1
  49. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +9 -9
  50. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
  51. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +2 -2
  52. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +5 -5
  53. package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
  54. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +5 -5
  55. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +1 -1
  56. package/SVF-doxygen/html/html/IRGraph_8h_source.html +2 -2
  57. package/SVF-doxygen/html/html/LLVMLoopAnalysis_8cpp_source.html +3 -3
  58. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +12 -12
  59. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +20 -18
  60. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +27 -27
  61. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +17 -17
  62. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
  63. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +1 -1
  64. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +3 -3
  65. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +7 -7
  66. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +1 -1
  67. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +10 -10
  68. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +1 -1
  69. package/SVF-doxygen/html/html/MHP_8cpp.html +2 -2
  70. package/SVF-doxygen/html/html/MHP_8cpp_source.html +11 -11
  71. package/SVF-doxygen/html/html/MHP_8h_source.html +3 -3
  72. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +1 -1
  73. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +5 -5
  74. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +3 -3
  75. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +12 -12
  76. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +4 -4
  77. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +4 -4
  78. package/SVF-doxygen/html/html/MTA_8cpp_source.html +4 -4
  79. package/SVF-doxygen/html/html/MTA_8h_source.html +3 -3
  80. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
  81. package/SVF-doxygen/html/html/MemPartition_8h_source.html +1 -1
  82. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +6 -6
  83. package/SVF-doxygen/html/html/MemRegion_8h_source.html +1 -1
  84. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +10 -10
  85. package/SVF-doxygen/html/html/MemSSA_8h_source.html +3 -3
  86. package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +2 -2
  87. package/SVF-doxygen/html/html/PCG_8cpp_source.html +6 -6
  88. package/SVF-doxygen/html/html/PCG_8h_source.html +1 -1
  89. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +6 -6
  90. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +1 -1
  91. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +1 -1
  92. package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +2 -2
  93. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +2 -2
  94. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +11 -11
  95. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +1 -1
  96. package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +1 -1
  97. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +1 -1
  98. package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h.html +2 -0
  99. package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h_source.html +110 -109
  100. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +4 -4
  101. package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +2 -2
  102. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
  103. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +1 -1
  104. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +4 -4
  105. package/SVF-doxygen/html/html/SVFG_8h_source.html +1 -1
  106. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +60 -60
  107. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +40 -40
  108. package/SVF-doxygen/html/html/SVFIR_8h_source.html +1 -1
  109. package/SVF-doxygen/html/html/SVFModule_8h_source.html +4 -4
  110. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
  111. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +9 -9
  112. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +49 -52
  113. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +2 -2
  114. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +2 -2
  115. package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +2 -2
  116. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +2 -2
  117. package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +10 -10
  118. package/SVF-doxygen/html/html/SaberCondAllocator_8h_source.html +4 -4
  119. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +1 -1
  120. package/SVF-doxygen/html/html/SparseBitVector_8h_source.html +1 -1
  121. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
  122. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +34 -34
  123. package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +1 -1
  124. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +5 -5
  125. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +5 -5
  126. package/SVF-doxygen/html/html/TCT_8cpp_source.html +12 -12
  127. package/SVF-doxygen/html/html/TCT_8h_source.html +8 -8
  128. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +4 -4
  129. package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +4 -4
  130. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +2 -2
  131. package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +2 -2
  132. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
  133. package/SVF-doxygen/html/html/Util_2BasicTypes_8h.html +0 -2
  134. package/SVF-doxygen/html/html/Util_2BasicTypes_8h_source.html +79 -80
  135. package/SVF-doxygen/html/html/VFGNode_8h_source.html +1 -1
  136. package/SVF-doxygen/html/html/VFG_8cpp_source.html +3 -3
  137. package/SVF-doxygen/html/html/VFG_8h_source.html +1 -1
  138. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +1 -1
  139. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +9 -12
  140. package/SVF-doxygen/html/html/WPAPass_8h_source.html +10 -11
  141. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +1 -1
  142. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
  143. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +1 -1
  144. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +1 -1
  145. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +1 -1
  146. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +1 -1
  147. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +7 -7
  148. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +1 -1
  149. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +1 -1
  150. package/SVF-doxygen/html/html/classSVF_1_1Annotator.html +1 -1
  151. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +1 -1
  152. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +2 -2
  153. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +1 -1
  154. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
  155. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +1 -1
  156. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +1 -1
  157. package/SVF-doxygen/html/html/classSVF_1_1BreakConstantGEPs.html +2 -2
  158. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +8 -8
  159. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +50 -50
  160. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +6 -6
  161. package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +1 -1
  162. package/SVF-doxygen/html/html/classSVF_1_1CallDirSVFGEdge.html +1 -1
  163. package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +3 -3
  164. package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +2 -2
  165. package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +1 -1
  166. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
  167. package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +41 -41
  168. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +1 -1
  169. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +1 -1
  170. package/SVF-doxygen/html/html/classSVF_1_1CondStdSet.html +1 -1
  171. package/SVF-doxygen/html/html/classSVF_1_1CondVar.html +1 -1
  172. package/SVF-doxygen/html/html/classSVF_1_1ContextCond.html +3 -3
  173. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +4 -4
  174. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +1 -1
  175. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +1 -1
  176. package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +2 -2
  177. package/SVF-doxygen/html/html/classSVF_1_1CxtDPItem.html +2 -2
  178. package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +1 -1
  179. package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +1 -1
  180. package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +1 -1
  181. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph-members.html +1 -1
  182. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +114 -111
  183. package/SVF-doxygen/html/html/classSVF_1_1DDAPass-members.html +5 -6
  184. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +42 -79
  185. package/SVF-doxygen/html/html/classSVF_1_1DirectSVFGEdge.html +1 -1
  186. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +1 -1
  187. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +2 -2
  188. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +1 -1
  189. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +1 -1
  190. package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +5 -5
  191. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +3 -3
  192. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +1 -1
  193. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +2 -2
  194. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +1 -1
  195. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +12 -12
  196. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +1 -1
  197. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +1 -1
  198. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +1 -1
  199. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +1 -1
  200. package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +3 -3
  201. package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +4 -4
  202. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +1 -1
  203. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +1 -1
  204. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +1 -1
  205. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +1 -1
  206. package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode.html +1 -1
  207. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +2 -2
  208. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +13 -13
  209. package/SVF-doxygen/html/html/classSVF_1_1ICFGEdge.html +1 -1
  210. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +1 -1
  211. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +1 -1
  212. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +1 -1
  213. package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +1 -1
  214. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +1 -1
  215. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
  216. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  217. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +1 -1
  218. package/SVF-doxygen/html/html/classSVF_1_1IntraDirSVFGEdge.html +1 -1
  219. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +1 -1
  220. package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +1 -1
  221. package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +1 -1
  222. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +1 -1
  223. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
  224. package/SVF-doxygen/html/html/classSVF_1_1IteratedDominanceFrontier.html +2 -2
  225. package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis.html +3 -3
  226. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet-members.html +20 -19
  227. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +95 -54
  228. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +4 -4
  229. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +1 -1
  230. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +1 -1
  231. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +4 -4
  232. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +20 -20
  233. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +9 -9
  234. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +19 -19
  235. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +12 -12
  236. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +1 -1
  237. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +1 -1
  238. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +4 -4
  239. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +10 -10
  240. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +15 -15
  241. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +4 -4
  242. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
  243. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +13 -13
  244. package/SVF-doxygen/html/html/classSVF_1_1MemSSADF.html +1 -1
  245. package/SVF-doxygen/html/html/classSVF_1_1MutablePTData.html +2 -2
  246. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +1 -1
  247. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
  248. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +11 -11
  249. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +1 -1
  250. package/SVF-doxygen/html/html/classSVF_1_1PTACFInfoBuilder.html +4 -4
  251. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +1 -1
  252. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +4 -4
  253. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +2 -2
  254. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +1 -1
  255. package/SVF-doxygen/html/html/classSVF_1_1PersistentIncDFPTData.html +2 -2
  256. package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +2 -2
  257. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +1 -1
  258. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +16 -16
  259. package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +3 -3
  260. package/SVF-doxygen/html/html/classSVF_1_1PointsTo_1_1PointsToIterator.html +2 -2
  261. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +1 -1
  262. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +4 -4
  263. package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +1 -1
  264. package/SVF-doxygen/html/html/classSVF_1_1RetDirSVFGEdge.html +1 -1
  265. package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +1 -1
  266. package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +1 -1
  267. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
  268. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +1 -1
  269. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +3 -3
  270. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +61 -61
  271. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +3 -3
  272. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +4 -4
  273. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobal.html +3 -3
  274. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +79 -79
  275. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +1 -1
  276. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +3 -3
  277. package/SVF-doxygen/html/html/classSVF_1_1SaberAnnotator.html +5 -5
  278. package/SVF-doxygen/html/html/classSVF_1_1SaberCheckerAPI.html +4 -4
  279. package/SVF-doxygen/html/html/classSVF_1_1SaberCondAllocator.html +14 -14
  280. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +1 -1
  281. package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +1 -1
  282. package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector.html +2 -2
  283. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +1 -1
  284. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +1 -1
  285. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +1 -1
  286. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +40 -40
  287. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +8 -8
  288. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +19 -19
  289. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
  290. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
  291. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +4 -4
  292. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +4 -4
  293. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +1 -1
  294. package/SVF-doxygen/html/html/classSVF_1_1ThreadForkEdge.html +1 -1
  295. package/SVF-doxygen/html/html/classSVF_1_1ThreadJoinEdge.html +1 -1
  296. package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +1 -1
  297. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
  298. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +1 -1
  299. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
  300. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +4 -4
  301. package/SVF-doxygen/html/html/classSVF_1_1VFGEdge.html +1 -1
  302. package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +1 -1
  303. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +1 -1
  304. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +1 -1
  305. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +1 -1
  306. package/SVF-doxygen/html/html/classSVF_1_1WPAPass-members.html +4 -5
  307. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +28 -66
  308. package/SVF-doxygen/html/html/functions_b.html +1 -1
  309. package/SVF-doxygen/html/html/functions_func_b.html +1 -1
  310. package/SVF-doxygen/html/html/functions_func_g.html +6 -6
  311. package/SVF-doxygen/html/html/functions_func_r.html +3 -3
  312. package/SVF-doxygen/html/html/functions_g.html +7 -7
  313. package/SVF-doxygen/html/html/functions_r.html +2 -4
  314. package/SVF-doxygen/html/html/namespaceSVF.html +141 -141
  315. package/SVF-doxygen/html/html/namespaceSVF_1_1LLVMUtil.html +49 -49
  316. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +168 -171
  317. package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +28 -28
  318. package/SVF-doxygen/html/html/search/all_11.js +1 -1
  319. package/SVF-doxygen/html/html/search/all_13.js +1 -1
  320. package/SVF-doxygen/html/html/search/all_2.js +1 -1
  321. package/SVF-doxygen/html/html/search/all_7.js +1 -1
  322. package/SVF-doxygen/html/html/search/functions_1.js +1 -1
  323. package/SVF-doxygen/html/html/search/functions_10.js +1 -1
  324. package/SVF-doxygen/html/html/search/functions_6.js +1 -1
  325. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.html +3 -3
  326. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  327. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +2 -2
  328. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +1 -1
  329. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.html +3 -3
  330. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +4 -4
  331. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +4 -4
  332. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CallSite_01_4.html +3 -3
  333. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtProc_01_4.html +1 -1
  334. package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
  335. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  336. package/include/DDA/DDAPass.h +0 -3
  337. package/include/SVF-FE/BasicTypes.h +1 -0
  338. package/include/SVF-FE/CHGBuilder.h +1 -0
  339. package/include/SVF-FE/DCHG.h +1 -1
  340. package/include/SVF-FE/LLVMModule.h +17 -0
  341. package/include/Util/BasicTypes.h +0 -1
  342. package/include/Util/SVFUtil.h +1 -13
  343. package/include/WPA/WPAPass.h +0 -3
  344. package/lib/DDA/DDAPass.cpp +0 -7
  345. package/lib/SVF-FE/DCHG.cpp +4 -7
  346. package/lib/WPA/WPAPass.cpp +0 -10
  347. package/package.json +1 -1
@@ -1867,7 +1867,7 @@ Additional Inherited Members</h2></td></tr>
1867
1867
  <div class="ttc" id="classSVF_1_1RetPE_html"><div class="ttname"><a href="classSVF_1_1RetPE.html">SVF::RetPE</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00540">SVFStatements.h:540</a></div></div>
1868
1868
  <div class="ttc" id="classSVF_1_1PTACallGraph_html_ad49fa2a288945f6910deb11acdf6a42d"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#ad49fa2a288945f6910deb11acdf6a42d">SVF::PTACallGraph::getIndCallMap</a></div><div class="ttdeci">CallEdgeMap &amp; getIndCallMap()</div><div class="ttdoc">Get callees from an indirect callsite. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00280">PTACallGraph.h:280</a></div></div>
1869
1869
  <div class="ttc" id="classSVF_1_1PTACallGraph_html_a5f5a5ec7e707a21994d301cc07d32a5a"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#a5f5a5ec7e707a21994d301cc07d32a5a">SVF::PTACallGraph::FunctionSet</a></div><div class="ttdeci">Set&lt; const SVFFunction * &gt; FunctionSet</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00228">PTACallGraph.h:228</a></div></div>
1870
- <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00126">BasicTypes.h:126</a></div></div>
1870
+ <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00125">BasicTypes.h:125</a></div></div>
1871
1871
  <div class="ttc" id="classSVF_1_1ICFG_html_a66cb50d8c176f800f06d9cb8924eb896"><div class="ttname"><a href="classSVF_1_1ICFG.html#a66cb50d8c176f800f06d9cb8924eb896">SVF::ICFG::getRetICFGNode</a></div><div class="ttdeci">RetICFGNode * getRetICFGNode(const Instruction *inst)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00252">ICFG.cpp:252</a></div></div>
1872
1872
  <div class="ttc" id="classSVF_1_1RetICFGNode_html"><div class="ttname"><a href="classSVF_1_1RetICFGNode.html">SVF::RetICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00458">ICFGNode.h:458</a></div></div>
1873
1873
  <div class="ttc" id="classSVF_1_1CallPE_html"><div class="ttname"><a href="classSVF_1_1CallPE.html">SVF::CallPE</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00483">SVFStatements.h:483</a></div></div>
@@ -1888,7 +1888,7 @@ Additional Inherited Members</h2></td></tr>
1888
1888
  <div class="ttc" id="classSVF_1_1FunExitICFGNode_html"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html">SVF::FunExitICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00308">ICFGNode.h:308</a></div></div>
1889
1889
  <div class="ttc" id="classSVF_1_1ICFGNode_html_a6c68f52dd90728073fb79141df9b0661"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#a6c68f52dd90728073fb79141df9b0661">SVF::ICFGNode::getSVFStmts</a></div><div class="ttdeci">const SVFStmtList &amp; getSVFStmts() const</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00121">ICFGNode.h:121</a></div></div>
1890
1890
  <div class="ttc" id="classSVF_1_1ICFG_html_adafd8bbb91507a9a78a3f16305812afc"><div class="ttname"><a href="classSVF_1_1ICFG.html#adafd8bbb91507a9a78a3f16305812afc">SVF::ICFG::addIntraEdge</a></div><div class="ttdeci">ICFGEdge * addIntraEdge(ICFGNode *srcNode, ICFGNode *dstNode)</div><div class="ttdoc">Add control-flow edges for top level pointers. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00367">ICFG.cpp:367</a></div></div>
1891
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a22ef185e767ff76c098e75126c885400"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVF::SVFUtil::isExtCall</a></div><div class="ttdeci">bool isExtCall(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00358">SVFUtil.h:358</a></div></div>
1891
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a22ef185e767ff76c098e75126c885400"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVF::SVFUtil::isExtCall</a></div><div class="ttdeci">bool isExtCall(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00346">SVFUtil.h:346</a></div></div>
1892
1892
  <div class="ttc" id="classSVF_1_1SVFStmt_html"><div class="ttname"><a href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00047">SVFStatements.h:47</a></div></div>
1893
1893
  </div><!-- fragment -->
1894
1894
  </div>
@@ -263,7 +263,7 @@ Private Attributes</h2></td></tr>
263
263
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_adefeaad9c02000f263430dfee7149ea6"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">SVF::ICFGBuilder::icfg</a></div><div class="ttdeci">ICFG * icfg</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00048">ICFGBuilder.h:48</a></div></div>
264
264
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_a702a888f2175dd32e2467bff27385e02"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a702a888f2175dd32e2467bff27385e02">SVF::ICFGBuilder::getCallICFGNode</a></div><div class="ttdeci">CallICFGNode * getCallICFGNode(const Instruction *cs)</div><div class="ttdoc">Add a call node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00087">ICFGBuilder.h:87</a></div></div>
265
265
  <div class="ttc" id="classSVF_1_1ICFG_html_adafd8bbb91507a9a78a3f16305812afc"><div class="ttname"><a href="classSVF_1_1ICFG.html#adafd8bbb91507a9a78a3f16305812afc">SVF::ICFG::addIntraEdge</a></div><div class="ttdeci">ICFGEdge * addIntraEdge(ICFGNode *srcNode, ICFGNode *dstNode)</div><div class="ttdoc">Add control-flow edges for top level pointers. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00367">ICFG.cpp:367</a></div></div>
266
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a22ef185e767ff76c098e75126c885400"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVF::SVFUtil::isExtCall</a></div><div class="ttdeci">bool isExtCall(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00358">SVFUtil.h:358</a></div></div>
266
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a22ef185e767ff76c098e75126c885400"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVF::SVFUtil::isExtCall</a></div><div class="ttdeci">bool isExtCall(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00346">SVFUtil.h:346</a></div></div>
267
267
  </div><!-- fragment -->
268
268
  </div>
269
269
  </div>
@@ -286,7 +286,7 @@ Private Attributes</h2></td></tr>
286
286
 
287
287
  <p class="definition">Definition at line <a class="el" href="ICFGBuilder_8cpp_source.html#l00042">42</a> of file <a class="el" href="ICFGBuilder_8cpp_source.html">ICFGBuilder.cpp</a>.</p>
288
288
  <div class="fragment"><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;{</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#afcf2978f32e15127fb093405dc17d7f1">SVFModule::const_iterator</a> iter = svfModule-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a5486697889c6cca4f9f426650defc255">begin</a>(), eiter = svfModule-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a58d03edb6ff85f4943135478f113df31">end</a>(); iter != eiter; ++iter)</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; {</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *fun = *iter;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVFUtil::isExtCall</a>(fun))</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#a2dc4467008cdd6eb896e98b67457082a">WorkList</a> worklist;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#a52e6426f0a1af479159f6fbac6d5b8f4">processFunEntry</a>(fun,worklist);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#ab1cc5de5c2ee7acf83e9ae51c7b38cb5">processFunBody</a>(worklist);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#a21ecc610b7ac35f4e64b2a4a45688359">processFunExit</a>(fun);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; }</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#a05539eb12b22886ea4b5b4275f601641">connectGlobalToProgEntry</a>(svfModule);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFModule_html_a5486697889c6cca4f9f426650defc255"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a5486697889c6cca4f9f426650defc255">SVF::SVFModule::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00156">SVFModule.h:156</a></div></div>
289
- <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00126">BasicTypes.h:126</a></div></div>
289
+ <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00125">BasicTypes.h:125</a></div></div>
290
290
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_a2dc4467008cdd6eb896e98b67457082a"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a2dc4467008cdd6eb896e98b67457082a">SVF::ICFGBuilder::WorkList</a></div><div class="ttdeci">FIFOWorkList&lt; const Instruction * &gt; WorkList</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00051">ICFGBuilder.h:51</a></div></div>
291
291
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_ab1cc5de5c2ee7acf83e9ae51c7b38cb5"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#ab1cc5de5c2ee7acf83e9ae51c7b38cb5">SVF::ICFGBuilder::processFunBody</a></div><div class="ttdeci">void processFunBody(WorkList &amp;worklist)</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8cpp_source.html#l00081">ICFGBuilder.cpp:81</a></div></div>
292
292
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_a21ecc610b7ac35f4e64b2a4a45688359"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a21ecc610b7ac35f4e64b2a4a45688359">SVF::ICFGBuilder::processFunExit</a></div><div class="ttdeci">void processFunExit(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8cpp_source.html#l00145">ICFGBuilder.cpp:145</a></div></div>
@@ -294,7 +294,7 @@ Private Attributes</h2></td></tr>
294
294
  <div class="ttc" id="classSVF_1_1SVFModule_html_a58d03edb6ff85f4943135478f113df31"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a58d03edb6ff85f4943135478f113df31">SVF::SVFModule::end</a></div><div class="ttdeci">iterator end()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00164">SVFModule.h:164</a></div></div>
295
295
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_a52e6426f0a1af479159f6fbac6d5b8f4"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a52e6426f0a1af479159f6fbac6d5b8f4">SVF::ICFGBuilder::processFunEntry</a></div><div class="ttdeci">void processFunEntry(const SVFFunction *fun, WorkList &amp;worklist)</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8cpp_source.html#l00060">ICFGBuilder.cpp:60</a></div></div>
296
296
  <div class="ttc" id="classSVF_1_1SVFModule_html_afcf2978f32e15127fb093405dc17d7f1"><div class="ttname"><a href="classSVF_1_1SVFModule.html#afcf2978f32e15127fb093405dc17d7f1">SVF::SVFModule::const_iterator</a></div><div class="ttdeci">FunctionSetType::const_iterator const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00052">SVFModule.h:52</a></div></div>
297
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a22ef185e767ff76c098e75126c885400"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVF::SVFUtil::isExtCall</a></div><div class="ttdeci">bool isExtCall(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00358">SVFUtil.h:358</a></div></div>
297
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a22ef185e767ff76c098e75126c885400"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVF::SVFUtil::isExtCall</a></div><div class="ttdeci">bool isExtCall(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00346">SVFUtil.h:346</a></div></div>
298
298
  </div><!-- fragment -->
299
299
  </div>
300
300
  </div>
@@ -324,8 +324,8 @@ Private Attributes</h2></td></tr>
324
324
  <p>Return back if the main function is not found, the bc file might be a library only </p>
325
325
 
326
326
  <p class="definition">Definition at line <a class="el" href="ICFGBuilder_8cpp_source.html#l00210">210</a> of file <a class="el" href="ICFGBuilder_8cpp_source.html">ICFGBuilder.cpp</a>.</p>
327
- <div class="fragment"><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;{</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* mainFunc = <a class="code" href="namespaceSVF_1_1SVFUtil.html#aa8017e3e5100b3f63ee338b66118d266">SVFUtil::getProgEntryFunction</a>(svfModule);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">if</span>(mainFunc == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="classSVF_1_1FunEntryICFGNode.html">FunEntryICFGNode</a>* entryNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#a0dca4655c2f6112a5be1f921b8e81076">getFunEntryICFGNode</a>(mainFunc);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <a class="code" href="classSVF_1_1GlobalICFGNode.html">GlobalICFGNode</a>* globalNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#ae0b05ce161d62362642803158228e5d0">getGlobalICFGNode</a>();</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <a class="code" href="classSVF_1_1IntraCFGEdge.html">IntraCFGEdge</a>* intraEdge = <span class="keyword">new</span> <a class="code" href="classSVF_1_1IntraCFGEdge.html">IntraCFGEdge</a>(globalNode, entryNode);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#a462f590c2604184d69e4efe3d85a7b5b">addICFGEdge</a>(intraEdge);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00126">BasicTypes.h:126</a></div></div>
328
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aa8017e3e5100b3f63ee338b66118d266"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aa8017e3e5100b3f63ee338b66118d266">SVF::SVFUtil::getProgEntryFunction</a></div><div class="ttdeci">const SVFFunction * getProgEntryFunction(SVFModule *svfModule)</div><div class="ttdoc">Get program entry function from module. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00430">SVFUtil.h:430</a></div></div>
327
+ <div class="fragment"><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;{</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* mainFunc = <a class="code" href="namespaceSVF_1_1SVFUtil.html#aa8017e3e5100b3f63ee338b66118d266">SVFUtil::getProgEntryFunction</a>(svfModule);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">if</span>(mainFunc == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="classSVF_1_1FunEntryICFGNode.html">FunEntryICFGNode</a>* entryNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#a0dca4655c2f6112a5be1f921b8e81076">getFunEntryICFGNode</a>(mainFunc);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <a class="code" href="classSVF_1_1GlobalICFGNode.html">GlobalICFGNode</a>* globalNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#ae0b05ce161d62362642803158228e5d0">getGlobalICFGNode</a>();</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <a class="code" href="classSVF_1_1IntraCFGEdge.html">IntraCFGEdge</a>* intraEdge = <span class="keyword">new</span> <a class="code" href="classSVF_1_1IntraCFGEdge.html">IntraCFGEdge</a>(globalNode, entryNode);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#a462f590c2604184d69e4efe3d85a7b5b">addICFGEdge</a>(intraEdge);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00125">BasicTypes.h:125</a></div></div>
328
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aa8017e3e5100b3f63ee338b66118d266"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aa8017e3e5100b3f63ee338b66118d266">SVF::SVFUtil::getProgEntryFunction</a></div><div class="ttdeci">const SVFFunction * getProgEntryFunction(SVFModule *svfModule)</div><div class="ttdoc">Get program entry function from module. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00418">SVFUtil.h:418</a></div></div>
329
329
  <div class="ttc" id="classSVF_1_1FunEntryICFGNode_html"><div class="ttname"><a href="classSVF_1_1FunEntryICFGNode.html">SVF::FunEntryICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00251">ICFGNode.h:251</a></div></div>
330
330
  <div class="ttc" id="classSVF_1_1IntraCFGEdge_html"><div class="ttname"><a href="classSVF_1_1IntraCFGEdge.html">SVF::IntraCFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00113">ICFGEdge.h:113</a></div></div>
331
331
  <div class="ttc" id="classSVF_1_1ICFG_html_ae0b05ce161d62362642803158228e5d0"><div class="ttname"><a href="classSVF_1_1ICFG.html#ae0b05ce161d62362642803158228e5d0">SVF::ICFG::getGlobalICFGNode</a></div><div class="ttdeci">GlobalICFGNode * getGlobalICFGNode() const</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00208">ICFG.h:208</a></div></div>
@@ -430,7 +430,7 @@ Private Attributes</h2></td></tr>
430
430
 
431
431
  <p class="definition">Definition at line <a class="el" href="ICFGBuilder_8cpp_source.html#l00167">167</a> of file <a class="el" href="ICFGBuilder_8cpp_source.html">ICFGBuilder.cpp</a>.</p>
432
432
  <div class="fragment"><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;{</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; assert(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVFUtil::isCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;not a call instruction?&quot;</span>);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; assert(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVFUtil::isNonInstricCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;associating an intrinsic debug instruction with an ICFGNode!&quot;</span>);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callICFGNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#a702a888f2175dd32e2467bff27385e02">getCallICFGNode</a>(inst);</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#af1fb4795e58130d639b75c354f67a6ab">addICFGInterEdges</a>(inst, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">getCallee</a>(inst)); <span class="comment">//creating interprocedural edges</span></div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">return</span> callICFGNode;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a2e08ce822223842fa6a73fd659b1a526"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVF::SVFUtil::isCallSite</a></div><div class="ttdeci">bool isCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a call or invoke instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00196">SVFUtil.h:196</a></div></div>
433
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a145abbd2958629718fbca41d25c3124d"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">SVF::SVFUtil::getCallee</a></div><div class="ttdeci">const SVFFunction * getCallee(const CallSite cs)</div><div class="ttdoc">Return callee of a callsite. Return null if this is an indirect call. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00281">SVFUtil.h:281</a></div></div>
433
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a145abbd2958629718fbca41d25c3124d"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">SVF::SVFUtil::getCallee</a></div><div class="ttdeci">const SVFFunction * getCallee(const CallSite cs)</div><div class="ttdoc">Return callee of a callsite. Return null if this is an indirect call. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00269">SVFUtil.h:269</a></div></div>
434
434
  <div class="ttc" id="classSVF_1_1CallICFGNode_html"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html">SVF::CallICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00363">ICFGNode.h:363</a></div></div>
435
435
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00209">SVFUtil.h:209</a></div></div>
436
436
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_a702a888f2175dd32e2467bff27385e02"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a702a888f2175dd32e2467bff27385e02">SVF::ICFGBuilder::getCallICFGNode</a></div><div class="ttdeci">CallICFGNode * getCallICFGNode(const Instruction *cs)</div><div class="ttdoc">Add a call node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00087">ICFGBuilder.h:87</a></div></div>
@@ -532,12 +532,12 @@ Private Attributes</h2></td></tr>
532
532
 
533
533
  <p class="definition">Definition at line <a class="el" href="ICFGBuilder_8cpp_source.html#l00081">81</a> of file <a class="el" href="ICFGBuilder_8cpp_source.html">ICFGBuilder.cpp</a>.</p>
534
534
  <div class="fragment"><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#abb7144bcc587e236fd22f6c8896117f5">BBSet</a> visited;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">while</span> (!worklist.empty())</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; {</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* inst = worklist.pop();</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">if</span> (visited.find(inst) == visited.end())</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; {</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; visited.insert(inst);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* srcNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#a42f190f697284e6da7a6211ce7adecfe">getOrAddBlockICFGNode</a>(inst);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1LLVMUtil.html#a832b1306f23e0f3db8cf5c0a35dc4561">isReturn</a>(inst))</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; {</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* fun = inst-&gt;getFunction();</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* svfFun = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a547b3bc62de65b9dbfc6dee55c063dd7">getSVFFunction</a>(fun);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classSVF_1_1FunExitICFGNode.html">FunExitICFGNode</a>* <a class="code" href="classSVF_1_1FunExitICFGNode.html">FunExitICFGNode</a> = <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#af1b2d2839f811a00103df87342dfc919">getFunExitICFGNode</a>(svfFun);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#adafd8bbb91507a9a78a3f16305812afc">addIntraEdge</a>(srcNode, FunExitICFGNode);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#a57af1044422b3c3860aa6fb033f8111e">InstVec</a> nextInsts;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a752d53b6b65d892d0e579aafe70083b4">getNextInsts</a>(inst, nextInsts);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> branchID = 0;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">for</span> (InstVec::const_iterator nit = nextInsts.begin(), enit =</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; nextInsts.end(); nit != enit; ++nit)</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; {</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* succ = *nit;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* dstNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#a42f190f697284e6da7a6211ce7adecfe">getOrAddBlockICFGNode</a>(succ);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">isNonInstricCallSite</a>(inst))</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; {</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="classSVF_1_1RetICFGNode.html">RetICFGNode</a>* retICFGNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#a7c1125c992eec20e118e6bfc12cb8bfb">getRetICFGNode</a>(inst);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; srcNode = retICFGNode;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ac9a05dd7ab16e998625037aa242cd30f">BranchInst</a>* br = SVFUtil::dyn_cast&lt;BranchInst&gt;(inst))</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; {</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; assert(branchID &lt;= 2 &amp;&amp; <span class="stringliteral">&quot;if/else has more than two branches?&quot;</span>);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">if</span>(br-&gt;isConditional())</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#aa4517b497891823eccbad2e790e2a440">addConditionalIntraEdge</a>(srcNode, dstNode, br-&gt;getCondition(), 1 - branchID);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#adafd8bbb91507a9a78a3f16305812afc">addIntraEdge</a>(srcNode, dstNode);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; }</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a412280b134578905248ce0122c5db7c9">SwitchInst</a>* si = SVFUtil::dyn_cast&lt;SwitchInst&gt;(inst))</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; {</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">ConstantInt</a>* condVal = <span class="keyword">const_cast&lt;</span><a class="code" href="namespaceSVF.html#a412280b134578905248ce0122c5db7c9">SwitchInst</a>*<span class="keyword">&gt;</span>(si)-&gt;findCaseDest(const_cast&lt;BasicBlock*&gt;(succ-&gt;getParent()));</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> val = condVal ? condVal-&gt;getSExtValue() : -1;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#aa4517b497891823eccbad2e790e2a440">addConditionalIntraEdge</a>(srcNode, dstNode, si-&gt;getCondition(),val);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#adafd8bbb91507a9a78a3f16305812afc">addIntraEdge</a>(srcNode, dstNode);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; worklist.push(succ);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; branchID++;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; }</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;}</div><div class="ttc" id="classSVF_1_1ICFGBuilder_html_a7c1125c992eec20e118e6bfc12cb8bfb"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a7c1125c992eec20e118e6bfc12cb8bfb">SVF::ICFGBuilder::getRetICFGNode</a></div><div class="ttdeci">RetICFGNode * getRetICFGNode(const Instruction *cs)</div><div class="ttdoc">Add a return node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00092">ICFGBuilder.h:92</a></div></div>
535
- <div class="ttc" id="namespaceSVF_html_ac9a05dd7ab16e998625037aa242cd30f"><div class="ttname"><a href="namespaceSVF.html#ac9a05dd7ab16e998625037aa242cd30f">SVF::BranchInst</a></div><div class="ttdeci">llvm::BranchInst BranchInst</div><div class="ttdef"><b>Definition:</b> <a href="SVF-FE_2BasicTypes_8h_source.html#l00071">BasicTypes.h:71</a></div></div>
535
+ <div class="ttc" id="namespaceSVF_html_ac9a05dd7ab16e998625037aa242cd30f"><div class="ttname"><a href="namespaceSVF.html#ac9a05dd7ab16e998625037aa242cd30f">SVF::BranchInst</a></div><div class="ttdeci">llvm::BranchInst BranchInst</div><div class="ttdef"><b>Definition:</b> <a href="SVF-FE_2BasicTypes_8h_source.html#l00072">BasicTypes.h:72</a></div></div>
536
536
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_abb7144bcc587e236fd22f6c8896117f5"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#abb7144bcc587e236fd22f6c8896117f5">SVF::ICFGBuilder::BBSet</a></div><div class="ttdeci">Set&lt; const Instruction * &gt; BBSet</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00045">ICFGBuilder.h:45</a></div></div>
537
- <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00126">BasicTypes.h:126</a></div></div>
537
+ <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00125">BasicTypes.h:125</a></div></div>
538
538
  <div class="ttc" id="namespaceSVF_html_a9b707002523ece2ac54ca893ee9a2d4e"><div class="ttname"><a href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">SVF::s32_t</a></div><div class="ttdeci">signed s32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
539
539
  <div class="ttc" id="classSVF_1_1ICFG_html_af1b2d2839f811a00103df87342dfc919"><div class="ttname"><a href="classSVF_1_1ICFG.html#af1b2d2839f811a00103df87342dfc919">SVF::ICFG::getFunExitICFGNode</a></div><div class="ttdeci">FunExitICFGNode * getFunExitICFGNode(const SVFFunction *fun)</div><div class="ttdoc">Add a function exit node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00281">ICFG.cpp:281</a></div></div>
540
- <div class="ttc" id="namespaceSVF_html_adefcb50414ea999d70cea5ccdbcb98d7"><div class="ttname"><a href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">SVF::ConstantInt</a></div><div class="ttdeci">llvm::ConstantInt ConstantInt</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00094">BasicTypes.h:94</a></div></div>
540
+ <div class="ttc" id="namespaceSVF_html_adefcb50414ea999d70cea5ccdbcb98d7"><div class="ttname"><a href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">SVF::ConstantInt</a></div><div class="ttdeci">llvm::ConstantInt ConstantInt</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00093">BasicTypes.h:93</a></div></div>
541
541
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_a57af1044422b3c3860aa6fb033f8111e"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a57af1044422b3c3860aa6fb033f8111e">SVF::ICFGBuilder::InstVec</a></div><div class="ttdeci">std::vector&lt; const Instruction * &gt; InstVec</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00044">ICFGBuilder.h:44</a></div></div>
542
542
  <div class="ttc" id="classSVF_1_1ICFGNode_html"><div class="ttname"><a href="classSVF_1_1ICFGNode.html">SVF::ICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00054">ICFGNode.h:54</a></div></div>
543
543
  <div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00085">SVFBasicTypes.h:85</a></div></div>
@@ -547,7 +547,7 @@ Private Attributes</h2></td></tr>
547
547
  <div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
548
548
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_a42f190f697284e6da7a6211ce7adecfe"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a42f190f697284e6da7a6211ce7adecfe">SVF::ICFGBuilder::getOrAddBlockICFGNode</a></div><div class="ttdeci">ICFGNode * getOrAddBlockICFGNode(const Instruction *inst)</div><div class="ttdoc">Add/Get a basic block ICFGNode. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00075">ICFGBuilder.h:75</a></div></div>
549
549
  <div class="ttc" id="namespaceSVF_1_1LLVMUtil_html_a752d53b6b65d892d0e579aafe70083b4"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a752d53b6b65d892d0e579aafe70083b4">SVF::LLVMUtil::getNextInsts</a></div><div class="ttdeci">void getNextInsts(const Instruction *curInst, std::vector&lt; const Instruction *&gt; &amp;instList)</div><div class="ttdoc">Get the next instructions following control flow. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00259">LLVMUtil.cpp:259</a></div></div>
550
- <div class="ttc" id="namespaceSVF_html_a412280b134578905248ce0122c5db7c9"><div class="ttname"><a href="namespaceSVF.html#a412280b134578905248ce0122c5db7c9">SVF::SwitchInst</a></div><div class="ttdeci">llvm::SwitchInst SwitchInst</div><div class="ttdef"><b>Definition:</b> <a href="SVF-FE_2BasicTypes_8h_source.html#l00072">BasicTypes.h:72</a></div></div>
550
+ <div class="ttc" id="namespaceSVF_html_a412280b134578905248ce0122c5db7c9"><div class="ttname"><a href="namespaceSVF.html#a412280b134578905248ce0122c5db7c9">SVF::SwitchInst</a></div><div class="ttdeci">llvm::SwitchInst SwitchInst</div><div class="ttdef"><b>Definition:</b> <a href="SVF-FE_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
551
551
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acf40310917909e4234282c0695a43160"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">SVF::LLVMModuleSet::getLLVMModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * getLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00070">LLVMModule.h:70</a></div></div>
552
552
  <div class="ttc" id="classSVF_1_1FunExitICFGNode_html"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html">SVF::FunExitICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00308">ICFGNode.h:308</a></div></div>
553
553
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00209">SVFUtil.h:209</a></div></div>
@@ -602,7 +602,7 @@ Private Attributes</h2></td></tr>
602
602
  <div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
603
603
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_a42f190f697284e6da7a6211ce7adecfe"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a42f190f697284e6da7a6211ce7adecfe">SVF::ICFGBuilder::getOrAddBlockICFGNode</a></div><div class="ttdeci">ICFGNode * getOrAddBlockICFGNode(const Instruction *inst)</div><div class="ttdoc">Add/Get a basic block ICFGNode. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00075">ICFGBuilder.h:75</a></div></div>
604
604
  <div class="ttc" id="namespaceSVF_1_1LLVMUtil_html_a752d53b6b65d892d0e579aafe70083b4"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a752d53b6b65d892d0e579aafe70083b4">SVF::LLVMUtil::getNextInsts</a></div><div class="ttdeci">void getNextInsts(const Instruction *curInst, std::vector&lt; const Instruction *&gt; &amp;instList)</div><div class="ttdoc">Get the next instructions following control flow. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00259">LLVMUtil.cpp:259</a></div></div>
605
- <div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00152">BasicTypes.h:152</a></div></div>
605
+ <div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00151">BasicTypes.h:151</a></div></div>
606
606
  <div class="ttc" id="classSVF_1_1ICFG_html_a0dca4655c2f6112a5be1f921b8e81076"><div class="ttname"><a href="classSVF_1_1ICFG.html#a0dca4655c2f6112a5be1f921b8e81076">SVF::ICFG::getFunEntryICFGNode</a></div><div class="ttdeci">FunEntryICFGNode * getFunEntryICFGNode(const SVFFunction *fun)</div><div class="ttdoc">Add a function entry node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00272">ICFG.cpp:272</a></div></div>
607
607
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_adefeaad9c02000f263430dfee7149ea6"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">SVF::ICFGBuilder::icfg</a></div><div class="ttdeci">ICFG * icfg</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00048">ICFGBuilder.h:48</a></div></div>
608
608
  <div class="ttc" id="classSVF_1_1ICFG_html_adafd8bbb91507a9a78a3f16305812afc"><div class="ttname"><a href="classSVF_1_1ICFG.html#adafd8bbb91507a9a78a3f16305812afc">SVF::ICFG::addIntraEdge</a></div><div class="ttdeci">ICFGEdge * addIntraEdge(ICFGNode *srcNode, ICFGNode *dstNode)</div><div class="ttdoc">Add control-flow edges for top level pointers. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00367">ICFG.cpp:367</a></div></div>
@@ -639,10 +639,10 @@ Private Attributes</h2></td></tr>
639
639
  <div class="ttc" id="classSVF_1_1ICFGNode_html"><div class="ttname"><a href="classSVF_1_1ICFGNode.html">SVF::ICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00054">ICFGNode.h:54</a></div></div>
640
640
  <div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
641
641
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_a42f190f697284e6da7a6211ce7adecfe"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a42f190f697284e6da7a6211ce7adecfe">SVF::ICFGBuilder::getOrAddBlockICFGNode</a></div><div class="ttdeci">ICFGNode * getOrAddBlockICFGNode(const Instruction *inst)</div><div class="ttdoc">Add/Get a basic block ICFGNode. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00075">ICFGBuilder.h:75</a></div></div>
642
- <div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00152">BasicTypes.h:152</a></div></div>
642
+ <div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00151">BasicTypes.h:151</a></div></div>
643
643
  <div class="ttc" id="classSVF_1_1FunExitICFGNode_html"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html">SVF::FunExitICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00308">ICFGNode.h:308</a></div></div>
644
644
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_adefeaad9c02000f263430dfee7149ea6"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">SVF::ICFGBuilder::icfg</a></div><div class="ttdeci">ICFG * icfg</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00048">ICFGBuilder.h:48</a></div></div>
645
- <div class="ttc" id="namespaceSVF_html_a255af6ff30782cb9a548feadb0fe7d6b"><div class="ttname"><a href="namespaceSVF.html#a255af6ff30782cb9a548feadb0fe7d6b">SVF::inst_iterator</a></div><div class="ttdeci">llvm::inst_iterator inst_iterator</div><div class="ttdef"><b>Definition:</b> <a href="SVF-FE_2BasicTypes_8h_source.html#l00157">BasicTypes.h:157</a></div></div>
645
+ <div class="ttc" id="namespaceSVF_html_a255af6ff30782cb9a548feadb0fe7d6b"><div class="ttname"><a href="namespaceSVF.html#a255af6ff30782cb9a548feadb0fe7d6b">SVF::inst_iterator</a></div><div class="ttdeci">llvm::inst_iterator inst_iterator</div><div class="ttdef"><b>Definition:</b> <a href="SVF-FE_2BasicTypes_8h_source.html#l00158">BasicTypes.h:158</a></div></div>
646
646
  <div class="ttc" id="classSVF_1_1ICFG_html_adafd8bbb91507a9a78a3f16305812afc"><div class="ttname"><a href="classSVF_1_1ICFG.html#adafd8bbb91507a9a78a3f16305812afc">SVF::ICFG::addIntraEdge</a></div><div class="ttdeci">ICFGEdge * addIntraEdge(ICFGNode *srcNode, ICFGNode *dstNode)</div><div class="ttdoc">Add control-flow edges for top level pointers. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00367">ICFG.cpp:367</a></div></div>
647
647
  </div><!-- fragment -->
648
648
  </div>
@@ -521,7 +521,7 @@ Additional Inherited Members</h2></td></tr>
521
521
  <p class="definition">Definition at line <a class="el" href="ICFG_8cpp_source.html#l00151">151</a> of file <a class="el" href="ICFG_8cpp_source.html">ICFG.cpp</a>.</p>
522
522
  <div class="fragment"><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;{</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;ICFGEdge: [ICFGNode&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>() &lt;&lt; <span class="stringliteral">&quot; &lt;-- ICFGNode&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>() &lt;&lt; <span class="stringliteral">&quot;]\t&quot;</span>;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericEdge_html_ad9edb45e74ae675d9da82f5acf02d56e"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">SVF::GenericEdge::getDstID</a></div><div class="ttdeci">NodeID getDstID() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00077">GenericGraph.h:77</a></div></div>
523
523
  <div class="ttc" id="classSVF_1_1GenericEdge_html_ae6792506a0150a9400d635eceab7f9e7"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">SVF::GenericEdge::getSrcID</a></div><div class="ttdeci">NodeID getSrcID() const</div><div class="ttdoc">get methods of the components </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00073">GenericGraph.h:73</a></div></div>
524
- <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00083">BasicTypes.h:83</a></div></div>
524
+ <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
525
525
  <div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
526
526
  </div><!-- fragment -->
527
527
  </div>
@@ -646,7 +646,7 @@ Friends</h2></td></tr>
646
646
  <p>Reimplemented in <a class="el" href="classSVF_1_1RetICFGNode.html#ab0b54268167a593e2db9d02d3dd9c4f1">SVF::RetICFGNode</a>, <a class="el" href="classSVF_1_1CallICFGNode.html#ab07e504bbc100fa3e111d62de815a88c">SVF::CallICFGNode</a>, <a class="el" href="classSVF_1_1FunExitICFGNode.html#aa73e5a5e577b789842987fec2fb307f9">SVF::FunExitICFGNode</a>, <a class="el" href="classSVF_1_1FunEntryICFGNode.html#a3e9032ea2388682e568b6324fe8e4882">SVF::FunEntryICFGNode</a>, <a class="el" href="classSVF_1_1IntraICFGNode.html#a85d3e05cb5a95c2f9d678d9f010419a5">SVF::IntraICFGNode</a>, and <a class="el" href="classSVF_1_1GlobalICFGNode.html#ada960e5bdba75c165a67b33c09819c47">SVF::GlobalICFGNode</a>.</p>
647
647
 
648
648
  <p class="definition">Definition at line <a class="el" href="ICFG_8cpp_source.html#l00062">62</a> of file <a class="el" href="ICFG_8cpp_source.html">ICFG.cpp</a>.</p>
649
- <div class="fragment"><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;{</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;ICFGNode&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00083">BasicTypes.h:83</a></div></div>
649
+ <div class="fragment"><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;{</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;ICFGNode&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
650
650
  <div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00169">GenericGraph.h:169</a></div></div>
651
651
  <div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
652
652
  </div><!-- fragment -->
@@ -441,7 +441,7 @@ Additional Inherited Members</h2></td></tr>
441
441
  <div class="ttc" id="classSVF_1_1ICFGPrinter_html_a38aa67e172459a72d8fc92a6172903be"><div class="ttname"><a href="classSVF_1_1ICFGPrinter.html#a38aa67e172459a72d8fc92a6172903be">SVF::ICFGPrinter::getPAGEdgeKindValue</a></div><div class="ttdeci">std::string getPAGEdgeKindValue(int kind)</div><div class="ttdef"><b>Definition:</b> <a href="Graph2Json_8cpp_source.html#l00205">Graph2Json.cpp:205</a></div></div>
442
442
  <div class="ttc" id="namespaceSVF_html_a90b263fd2f541eca78135078114cabda"><div class="ttname"><a href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">SVF::Value</a></div><div class="ttdeci">llvm::Value Value</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00072">BasicTypes.h:72</a></div></div>
443
443
  <div class="ttc" id="classSVF_1_1RetCFGEdge_html"><div class="ttname"><a href="classSVF_1_1RetCFGEdge.html">SVF::RetCFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00216">ICFGEdge.h:216</a></div></div>
444
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a22ef185e767ff76c098e75126c885400"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVF::SVFUtil::isExtCall</a></div><div class="ttdeci">bool isExtCall(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00358">SVFUtil.h:358</a></div></div>
444
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a22ef185e767ff76c098e75126c885400"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVF::SVFUtil::isExtCall</a></div><div class="ttdeci">bool isExtCall(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00346">SVFUtil.h:346</a></div></div>
445
445
  <div class="ttc" id="classSVF_1_1SVFStmt_html"><div class="ttname"><a href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00047">SVFStatements.h:47</a></div></div>
446
446
  </div><!-- fragment -->
447
447
  </div>
@@ -345,7 +345,7 @@ Private Attributes</h2></td></tr>
345
345
  </div><div class="memdoc">
346
346
 
347
347
  <p class="definition">Definition at line <a class="el" href="IRAnnotator_8h_source.html#l00031">31</a> of file <a class="el" href="IRAnnotator_8h_source.html">IRAnnotator.h</a>.</p>
348
- <div class="fragment"><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; {</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; this-&gt;<a class="code" href="classSVF_1_1IRAnnotator.html#afd8770eee0c14386c407cae026ce87b5">ptsTo</a> = <a class="code" href="classSVF_1_1IRAnnotator.html#afd8770eee0c14386c407cae026ce87b5">ptsTo</a>;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <a class="code" href="classSVF_1_1IRAnnotator.html#a01462e9ee84f490514598c68e8c9557b">mainModule</a> = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a9fe3fa15a6a0ec25864cb8439a45596e">getMainLLVMModule</a>();</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="comment">// Add a named metadata node used to check whether or not</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="comment">// this IR has been annotated with Andersen information</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordflow">if</span> (writeFlag)</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <a class="code" href="classSVF_1_1IRAnnotator.html#a01462e9ee84f490514598c68e8c9557b">mainModule</a>-&gt;getOrInsertNamedMetadata(<span class="stringliteral">&quot;SVFIR-Annotated&quot;</span>);</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = pag-&gt;begin(); it != pag-&gt;end(); ++it)</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; {</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">auto</span> nodeId = it-&gt;first;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keyword">auto</span> pagNode = it-&gt;second;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keyword">auto</span> gepNode = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;GepObjVar&gt;(pagNode);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">if</span> (gepNode &amp;&amp; writeFlag)</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; {</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="classSVF_1_1IRAnnotator.html#a958e9af846c882ef3eeba4d71ff7ef7d">writePAGgepNode</a>(nodeId, gepNode);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; }</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (pagNode-&gt;hasValue())</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; {</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="classSVF_1_1IRAnnotator.html#a067fe6d76b3b11bbb726e2b40e723f78">processPAGNode</a>(pagNode-&gt;getValue(), nodeId, writeFlag);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; }</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; }</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">if</span> (!writeFlag)</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="classSVF_1_1IRAnnotator.html#a7f69afba3424c615736bffe2469d9a20">readPAGgepNodes</a>(pag);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a9fe3fa15a6a0ec25864cb8439a45596e"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a9fe3fa15a6a0ec25864cb8439a45596e">SVF::LLVMModuleSet::getMainLLVMModule</a></div><div class="ttdeci">Module * getMainLLVMModule() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00195">LLVMModule.h:195</a></div></div>
348
+ <div class="fragment"><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; {</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; this-&gt;<a class="code" href="classSVF_1_1IRAnnotator.html#afd8770eee0c14386c407cae026ce87b5">ptsTo</a> = <a class="code" href="classSVF_1_1IRAnnotator.html#afd8770eee0c14386c407cae026ce87b5">ptsTo</a>;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <a class="code" href="classSVF_1_1IRAnnotator.html#a01462e9ee84f490514598c68e8c9557b">mainModule</a> = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a9fe3fa15a6a0ec25864cb8439a45596e">getMainLLVMModule</a>();</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="comment">// Add a named metadata node used to check whether or not</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="comment">// this IR has been annotated with Andersen information</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordflow">if</span> (writeFlag)</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <a class="code" href="classSVF_1_1IRAnnotator.html#a01462e9ee84f490514598c68e8c9557b">mainModule</a>-&gt;getOrInsertNamedMetadata(<span class="stringliteral">&quot;SVFIR-Annotated&quot;</span>);</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = pag-&gt;begin(); it != pag-&gt;end(); ++it)</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; {</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">auto</span> nodeId = it-&gt;first;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keyword">auto</span> pagNode = it-&gt;second;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keyword">auto</span> gepNode = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;GepObjVar&gt;(pagNode);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">if</span> (gepNode &amp;&amp; writeFlag)</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; {</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="classSVF_1_1IRAnnotator.html#a958e9af846c882ef3eeba4d71ff7ef7d">writePAGgepNode</a>(nodeId, gepNode);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; }</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (pagNode-&gt;hasValue())</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; {</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="classSVF_1_1IRAnnotator.html#a067fe6d76b3b11bbb726e2b40e723f78">processPAGNode</a>(pagNode-&gt;getValue(), nodeId, writeFlag);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; }</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; }</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">if</span> (!writeFlag)</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="classSVF_1_1IRAnnotator.html#a7f69afba3424c615736bffe2469d9a20">readPAGgepNodes</a>(pag);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a9fe3fa15a6a0ec25864cb8439a45596e"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a9fe3fa15a6a0ec25864cb8439a45596e">SVF::LLVMModuleSet::getMainLLVMModule</a></div><div class="ttdeci">Module * getMainLLVMModule() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00212">LLVMModule.h:212</a></div></div>
349
349
  <div class="ttc" id="classSVF_1_1IRAnnotator_html_a067fe6d76b3b11bbb726e2b40e723f78"><div class="ttname"><a href="classSVF_1_1IRAnnotator.html#a067fe6d76b3b11bbb726e2b40e723f78">SVF::IRAnnotator::processPAGNode</a></div><div class="ttdeci">void processPAGNode(const Value *value, SVF::NodeID nodeId, bool writeFlag)</div><div class="ttdef"><b>Definition:</b> <a href="IRAnnotator_8h_source.html#l00109">IRAnnotator.h:109</a></div></div>
350
350
  <div class="ttc" id="classSVF_1_1IRAnnotator_html_a01462e9ee84f490514598c68e8c9557b"><div class="ttname"><a href="classSVF_1_1IRAnnotator.html#a01462e9ee84f490514598c68e8c9557b">SVF::IRAnnotator::mainModule</a></div><div class="ttdeci">Module * mainModule</div><div class="ttdef"><b>Definition:</b> <a href="IRAnnotator_8h_source.html#l00314">IRAnnotator.h:314</a></div></div>
351
351
  <div class="ttc" id="classSVF_1_1IRAnnotator_html_a7f69afba3424c615736bffe2469d9a20"><div class="ttname"><a href="classSVF_1_1IRAnnotator.html#a7f69afba3424c615736bffe2469d9a20">SVF::IRAnnotator::readPAGgepNodes</a></div><div class="ttdeci">void readPAGgepNodes(SVFIR *pag)</div><div class="ttdef"><b>Definition:</b> <a href="IRAnnotator_8h_source.html#l00082">IRAnnotator.h:82</a></div></div>
@@ -469,7 +469,7 @@ Additional Inherited Members</h2></td></tr>
469
469
  <p class="definition">Definition at line <a class="el" href="SVFG_8cpp_source.html#l00146">146</a> of file <a class="el" href="SVFG_8cpp_source.html">SVFG.cpp</a>.</p>
470
470
  <div class="fragment"><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;{</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;IndirectSVFGEdge: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>() &lt;&lt; <span class="stringliteral">&quot;&lt;--&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericEdge_html_ad9edb45e74ae675d9da82f5acf02d56e"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">SVF::GenericEdge::getDstID</a></div><div class="ttdeci">NodeID getDstID() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00077">GenericGraph.h:77</a></div></div>
471
471
  <div class="ttc" id="classSVF_1_1GenericEdge_html_ae6792506a0150a9400d635eceab7f9e7"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">SVF::GenericEdge::getSrcID</a></div><div class="ttdeci">NodeID getSrcID() const</div><div class="ttdoc">get methods of the components </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00073">GenericGraph.h:73</a></div></div>
472
- <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00083">BasicTypes.h:83</a></div></div>
472
+ <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
473
473
  <div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
474
474
  </div><!-- fragment -->
475
475
  </div>
@@ -473,7 +473,7 @@ Additional Inherited Members</h2></td></tr>
473
473
  <p>Reimplemented from <a class="el" href="classSVF_1_1IntraDisjointMRG.html#a6d2434f0e3a318b89b7b9fa4f5613b64">SVF::IntraDisjointMRG</a>.</p>
474
474
 
475
475
  <p class="definition">Definition at line <a class="el" href="MemPartition_8cpp_source.html#l00269">269</a> of file <a class="el" href="MemPartition_8cpp_source.html">MemPartition.cpp</a>.</p>
476
- <div class="fragment"><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;{</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">for</span>(FunToPointsTosMap::iterator it = <a class="code" href="classSVF_1_1MRGenerator.html#a1331e6f0941838064d77a5adaa5c6303">getFunToPointsToList</a>().begin(),</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; eit = <a class="code" href="classSVF_1_1MRGenerator.html#a1331e6f0941838064d77a5adaa5c6303">getFunToPointsToList</a>().end(); it!=eit; ++it)</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; {</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">for</span>(PointsToList::iterator cit = it-&gt;second.begin(), ecit = it-&gt;second.end();</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; cit!=ecit; ++cit)</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; {</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a>&amp; cpts = *cit;</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <a class="code" href="classSVF_1_1IntraDisjointMRG.html#adb3ed119aee3f1bc62b9679ee095580d">computeIntersections</a>(cpts, <a class="code" href="classSVF_1_1InterDisjointMRG.html#a104134d0f7c8b16abe8f5f3899c3bbf0">inters</a>);</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; }</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; }</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">for</span>(FunToPointsTosMap::iterator it = <a class="code" href="classSVF_1_1MRGenerator.html#a1331e6f0941838064d77a5adaa5c6303">getFunToPointsToList</a>().begin(),</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; eit = <a class="code" href="classSVF_1_1MRGenerator.html#a1331e6f0941838064d77a5adaa5c6303">getFunToPointsToList</a>().end(); it!=eit; ++it)</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; {</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun = it-&gt;first;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">for</span>(PointsToList::iterator cit = it-&gt;second.begin(), ecit = it-&gt;second.end();</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; cit!=ecit; ++cit)</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; {</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a>&amp; cpts = *cit;</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">for</span> (PointsToList::const_iterator interIt = <a class="code" href="classSVF_1_1InterDisjointMRG.html#a104134d0f7c8b16abe8f5f3899c3bbf0">inters</a>.begin(), interEit = <a class="code" href="classSVF_1_1InterDisjointMRG.html#a104134d0f7c8b16abe8f5f3899c3bbf0">inters</a>.end();</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; interIt != interEit; ++interIt)</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; {</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a>&amp; inter = *interIt;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">if</span> (cpts.<a class="code" href="classSVF_1_1SparseBitVector.html#abbd0e0cf759fad7858224ed8a63aade8">contains</a>(inter))</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <a class="code" href="classSVF_1_1IntraDisjointMRG.html#a17d0ad0c62982d2b03121e935469e7b2">createDisjointMR</a>(fun, inter);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; }</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; }</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; }</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00126">BasicTypes.h:126</a></div></div>
476
+ <div class="fragment"><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;{</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">for</span>(FunToPointsTosMap::iterator it = <a class="code" href="classSVF_1_1MRGenerator.html#a1331e6f0941838064d77a5adaa5c6303">getFunToPointsToList</a>().begin(),</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; eit = <a class="code" href="classSVF_1_1MRGenerator.html#a1331e6f0941838064d77a5adaa5c6303">getFunToPointsToList</a>().end(); it!=eit; ++it)</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; {</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">for</span>(PointsToList::iterator cit = it-&gt;second.begin(), ecit = it-&gt;second.end();</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; cit!=ecit; ++cit)</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; {</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a>&amp; cpts = *cit;</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <a class="code" href="classSVF_1_1IntraDisjointMRG.html#adb3ed119aee3f1bc62b9679ee095580d">computeIntersections</a>(cpts, <a class="code" href="classSVF_1_1InterDisjointMRG.html#a104134d0f7c8b16abe8f5f3899c3bbf0">inters</a>);</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; }</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; }</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">for</span>(FunToPointsTosMap::iterator it = <a class="code" href="classSVF_1_1MRGenerator.html#a1331e6f0941838064d77a5adaa5c6303">getFunToPointsToList</a>().begin(),</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; eit = <a class="code" href="classSVF_1_1MRGenerator.html#a1331e6f0941838064d77a5adaa5c6303">getFunToPointsToList</a>().end(); it!=eit; ++it)</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; {</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun = it-&gt;first;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">for</span>(PointsToList::iterator cit = it-&gt;second.begin(), ecit = it-&gt;second.end();</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; cit!=ecit; ++cit)</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; {</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a>&amp; cpts = *cit;</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">for</span> (PointsToList::const_iterator interIt = <a class="code" href="classSVF_1_1InterDisjointMRG.html#a104134d0f7c8b16abe8f5f3899c3bbf0">inters</a>.begin(), interEit = <a class="code" href="classSVF_1_1InterDisjointMRG.html#a104134d0f7c8b16abe8f5f3899c3bbf0">inters</a>.end();</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; interIt != interEit; ++interIt)</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; {</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a>&amp; inter = *interIt;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">if</span> (cpts.<a class="code" href="classSVF_1_1SparseBitVector.html#abbd0e0cf759fad7858224ed8a63aade8">contains</a>(inter))</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <a class="code" href="classSVF_1_1IntraDisjointMRG.html#a17d0ad0c62982d2b03121e935469e7b2">createDisjointMR</a>(fun, inter);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; }</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; }</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; }</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00125">BasicTypes.h:125</a></div></div>
477
477
  <div class="ttc" id="classSVF_1_1InterDisjointMRG_html_a104134d0f7c8b16abe8f5f3899c3bbf0"><div class="ttname"><a href="classSVF_1_1InterDisjointMRG.html#a104134d0f7c8b16abe8f5f3899c3bbf0">SVF::InterDisjointMRG::inters</a></div><div class="ttdeci">PointsToList inters</div><div class="ttdef"><b>Definition:</b> <a href="MemPartition_8h_source.html#l00164">MemPartition.h:164</a></div></div>
478
478
  <div class="ttc" id="classSVF_1_1IntraDisjointMRG_html_adb3ed119aee3f1bc62b9679ee095580d"><div class="ttname"><a href="classSVF_1_1IntraDisjointMRG.html#adb3ed119aee3f1bc62b9679ee095580d">SVF::IntraDisjointMRG::computeIntersections</a></div><div class="ttdeci">void computeIntersections(const NodeBS &amp;cpts, PointsToList &amp;inters)</div><div class="ttdoc">Compute intersections between cpts and computed cpts intersections before. </div><div class="ttdef"><b>Definition:</b> <a href="MemPartition_8cpp_source.html#l00152">MemPartition.cpp:152</a></div></div>
479
479
  <div class="ttc" id="classSVF_1_1SparseBitVector_html_abbd0e0cf759fad7858224ed8a63aade8"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html#abbd0e0cf759fad7858224ed8a63aade8">SVF::SparseBitVector::contains</a></div><div class="ttdeci">bool contains(const SparseBitVector&lt; ElementSize &gt; &amp;RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l01071">SparseBitVector.h:1071</a></div></div>
@@ -718,7 +718,7 @@ Additional Inherited Members</h2></td></tr>
718
718
 
719
719
  <p class="definition">Definition at line <a class="el" href="SVFG_8cpp_source.html#l00134">134</a> of file <a class="el" href="SVFG_8cpp_source.html">SVFG.cpp</a>.</p>
720
720
  <div class="fragment"><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;{</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1InterMSSAPHISVFGNode.html#a47d870a6c0f515139b1950e8985dc2d1">isFormalINPHI</a>())</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;FormalINPHISVFGNode ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() &lt;&lt; <span class="stringliteral">&quot; {fun: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1InterMSSAPHISVFGNode.html#a242d8967d6fc10ba37e3f0103081ec01">getFun</a>()-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a2409c01221b9a6632655cee43d1b35e4">getName</a>() &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;ActualOUTPHISVFGNode ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() &lt;&lt; <span class="stringliteral">&quot; at callsite: &quot;</span> &lt;&lt; *<a class="code" href="classSVF_1_1InterMSSAPHISVFGNode.html#a5b4ba4b7753d786ff2e3d834bda017ce">getCallSite</a>()-&gt;<a class="code" href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">getCallSite</a>() &lt;&lt; <span class="stringliteral">&quot; {fun: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1InterMSSAPHISVFGNode.html#a242d8967d6fc10ba37e3f0103081ec01">getFun</a>()-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a2409c01221b9a6632655cee43d1b35e4">getName</a>() &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; rawstr &lt;&lt; <a class="code" href="classSVF_1_1MSSAPHISVFGNode.html#a1a07b3e8da65d17c16ed34a4f66b80dd">MSSAPHISVFGNode::toString</a>();</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;}</div><div class="ttc" id="classSVF_1_1InterMSSAPHISVFGNode_html_a47d870a6c0f515139b1950e8985dc2d1"><div class="ttname"><a href="classSVF_1_1InterMSSAPHISVFGNode.html#a47d870a6c0f515139b1950e8985dc2d1">SVF::InterMSSAPHISVFGNode::isFormalINPHI</a></div><div class="ttdeci">bool isFormalINPHI() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGNode_8h_source.html#l00413">SVFGNode.h:413</a></div></div>
721
- <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00083">BasicTypes.h:83</a></div></div>
721
+ <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
722
722
  <div class="ttc" id="classSVF_1_1InterMSSAPHISVFGNode_html_a5b4ba4b7753d786ff2e3d834bda017ce"><div class="ttname"><a href="classSVF_1_1InterMSSAPHISVFGNode.html#a5b4ba4b7753d786ff2e3d834bda017ce">SVF::InterMSSAPHISVFGNode::getCallSite</a></div><div class="ttdeci">const CallICFGNode * getCallSite() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGNode_8h_source.html#l00429">SVFGNode.h:429</a></div></div>
723
723
  <div class="ttc" id="classSVF_1_1InterMSSAPHISVFGNode_html_a242d8967d6fc10ba37e3f0103081ec01"><div class="ttname"><a href="classSVF_1_1InterMSSAPHISVFGNode.html#a242d8967d6fc10ba37e3f0103081ec01">SVF::InterMSSAPHISVFGNode::getFun</a></div><div class="ttdeci">const SVFFunction * getFun() const</div><div class="ttdoc">Get the function of this SVFGNode. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGNode_8h_source.html#l00423">SVFGNode.h:423</a></div></div>
724
724
  <div class="ttc" id="classSVF_1_1SVFValue_html_a2409c01221b9a6632655cee43d1b35e4"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a2409c01221b9a6632655cee43d1b35e4">SVF::SVFValue::getName</a></div><div class="ttdeci">const std::string getName() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00253">SVFBasicTypes.h:253</a></div></div>
@@ -670,7 +670,7 @@ Additional Inherited Members</h2></td></tr>
670
670
  <p class="definition">Definition at line <a class="el" href="VFG_8cpp_source.html#l00351">351</a> of file <a class="el" href="VFG_8cpp_source.html">VFG.cpp</a>.</p>
671
671
  <div class="fragment"><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;{</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1InterPHIVFGNode.html#a6049300f916dd23f34d9cacccc7e3ea7">isFormalParmPHI</a>())</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;FormalParmPHI ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() &lt;&lt; <span class="stringliteral">&quot; PAGNode ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1PHIVFGNode.html#a513b2636967a86902f4243dc0d2e0e3f">res</a>-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span> &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(<a class="code" href="classSVF_1_1PHIVFGNode.html#a513b2636967a86902f4243dc0d2e0e3f">res</a>-&gt;<a class="code" href="classSVF_1_1SVFVar.html#afaa33caa8d2a306f6741d9d066243e40">getValue</a>());</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;ActualRetPHI ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() &lt;&lt; <span class="stringliteral">&quot; PAGNode ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1PHIVFGNode.html#a513b2636967a86902f4243dc0d2e0e3f">res</a>-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span> &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(<a class="code" href="classSVF_1_1PHIVFGNode.html#a513b2636967a86902f4243dc0d2e0e3f">res</a>-&gt;<a class="code" href="classSVF_1_1SVFVar.html#afaa33caa8d2a306f6741d9d066243e40">getValue</a>());</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;}</div><div class="ttc" id="classSVF_1_1InterPHIVFGNode_html_a6049300f916dd23f34d9cacccc7e3ea7"><div class="ttname"><a href="classSVF_1_1InterPHIVFGNode.html#a6049300f916dd23f34d9cacccc7e3ea7">SVF::InterPHIVFGNode::isFormalParmPHI</a></div><div class="ttdeci">bool isFormalParmPHI() const</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l01100">VFGNode.h:1100</a></div></div>
672
672
  <div class="ttc" id="classSVF_1_1PHIVFGNode_html_a513b2636967a86902f4243dc0d2e0e3f"><div class="ttname"><a href="classSVF_1_1PHIVFGNode.html#a513b2636967a86902f4243dc0d2e0e3f">SVF::PHIVFGNode::res</a></div><div class="ttdeci">const PAGNode * res</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00641">VFGNode.h:641</a></div></div>
673
- <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00083">BasicTypes.h:83</a></div></div>
673
+ <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
674
674
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7486fd8e5350879ed1cbd835c0d4e191"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVF::SVFUtil::value2String</a></div><div class="ttdeci">const std::string value2String(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00390">SVFUtil.cpp:390</a></div></div>
675
675
  <div class="ttc" id="classSVF_1_1SVFVar_html_afaa33caa8d2a306f6741d9d066243e40"><div class="ttname"><a href="classSVF_1_1SVFVar.html#afaa33caa8d2a306f6741d9d066243e40">SVF::SVFVar::getValue</a></div><div class="ttdeci">const Value * getValue() const</div><div class="ttdoc">Get/has methods of the components. </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00091">SVFVariables.h:91</a></div></div>
676
676
  <div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00169">GenericGraph.h:169</a></div></div>
@@ -453,7 +453,7 @@ Additional Inherited Members</h2></td></tr>
453
453
  <div class="fragment"><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;{</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1IntraCFGEdge.html#ac13be3c3ee581e20974ce4527a3cfe7b">getCondition</a>() == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;IntraCFGEdge: [ICFGNode&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>() &lt;&lt; <span class="stringliteral">&quot; &lt;-- ICFGNode&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>() &lt;&lt; <span class="stringliteral">&quot;]\t&quot;</span>;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;IntraCFGEdge: [ICFGNode&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>() &lt;&lt; <span class="stringliteral">&quot; &lt;-- ICFGNode&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>() &lt;&lt; <span class="stringliteral">&quot;] (branchCondition:&quot;</span> &lt;&lt; *<a class="code" href="classSVF_1_1IntraCFGEdge.html#ac13be3c3ee581e20974ce4527a3cfe7b">getCondition</a>() &lt;&lt; <span class="stringliteral">&quot;) (succCondValue: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1IntraCFGEdge.html#a6a4ba7a362bae8bff69ccad07df61119">getSuccessorCondValue</a>() &lt;&lt; <span class="stringliteral">&quot;) \t&quot;</span>;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericEdge_html_ad9edb45e74ae675d9da82f5acf02d56e"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">SVF::GenericEdge::getDstID</a></div><div class="ttdeci">NodeID getDstID() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00077">GenericGraph.h:77</a></div></div>
454
454
  <div class="ttc" id="classSVF_1_1GenericEdge_html_ae6792506a0150a9400d635eceab7f9e7"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">SVF::GenericEdge::getSrcID</a></div><div class="ttdeci">NodeID getSrcID() const</div><div class="ttdoc">get methods of the components </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00073">GenericGraph.h:73</a></div></div>
455
455
  <div class="ttc" id="classSVF_1_1IntraCFGEdge_html_a6a4ba7a362bae8bff69ccad07df61119"><div class="ttname"><a href="classSVF_1_1IntraCFGEdge.html#a6a4ba7a362bae8bff69ccad07df61119">SVF::IntraCFGEdge::getSuccessorCondValue</a></div><div class="ttdeci">s32_t getSuccessorCondValue() const</div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00142">ICFGEdge.h:142</a></div></div>
456
- <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00083">BasicTypes.h:83</a></div></div>
456
+ <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
457
457
  <div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
458
458
  <div class="ttc" id="classSVF_1_1IntraCFGEdge_html_ac13be3c3ee581e20974ce4527a3cfe7b"><div class="ttname"><a href="classSVF_1_1IntraCFGEdge.html#ac13be3c3ee581e20974ce4527a3cfe7b">SVF::IntraCFGEdge::getCondition</a></div><div class="ttdeci">const Value * getCondition() const</div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00137">ICFGEdge.h:137</a></div></div>
459
459
  </div><!-- fragment -->
@@ -402,7 +402,7 @@ Additional Inherited Members</h2></td></tr>
402
402
  <p class="definition">Definition at line <a class="el" href="VFG_8cpp_source.html#l00395">395</a> of file <a class="el" href="VFG_8cpp_source.html">VFG.cpp</a>.</p>
403
403
  <div class="fragment"><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160;{</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;IntraDirSVFGEdge: [&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>() &lt;&lt; <span class="stringliteral">&quot;&lt;--&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>() &lt;&lt; <span class="stringliteral">&quot;]\t&quot;</span>;</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericEdge_html_ad9edb45e74ae675d9da82f5acf02d56e"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">SVF::GenericEdge::getDstID</a></div><div class="ttdeci">NodeID getDstID() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00077">GenericGraph.h:77</a></div></div>
404
404
  <div class="ttc" id="classSVF_1_1GenericEdge_html_ae6792506a0150a9400d635eceab7f9e7"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">SVF::GenericEdge::getSrcID</a></div><div class="ttdeci">NodeID getSrcID() const</div><div class="ttdoc">get methods of the components </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00073">GenericGraph.h:73</a></div></div>
405
- <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00083">BasicTypes.h:83</a></div></div>
405
+ <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
406
406
  <div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
407
407
  </div><!-- fragment -->
408
408
  </div>