svf-tools 1.0.596 → 1.0.598

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 (802) hide show
  1. package/README.md +1 -1
  2. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +4 -4
  3. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +2 -2
  4. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +7 -7
  5. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +11 -11
  6. package/SVF-doxygen/html/html/Andersen_8h_source.html +5 -5
  7. package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +7 -7
  8. package/SVF-doxygen/html/html/CFLAlias_8h_source.html +5 -5
  9. package/SVF-doxygen/html/html/CFLGraphBuilder_8cpp_source.html +8 -8
  10. package/SVF-doxygen/html/html/CFLGraphBuilder_8h_source.html +4 -4
  11. package/SVF-doxygen/html/html/CFLGraph_8cpp.html +3 -2
  12. package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +15 -16
  13. package/SVF-doxygen/html/html/CFLGraph_8h.html +4 -6
  14. package/SVF-doxygen/html/html/CFLGraph_8h_source.html +19 -20
  15. package/SVF-doxygen/html/html/CFLSolver_8cpp_source.html +4 -4
  16. package/SVF-doxygen/html/html/CFLStat_8cpp_source.html +1 -1
  17. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +8 -8
  18. package/SVF-doxygen/html/html/CHG_8cpp.html +6 -5
  19. package/SVF-doxygen/html/html/CHG_8cpp_source.html +26 -27
  20. package/SVF-doxygen/html/html/CHG_8h.html +4 -6
  21. package/SVF-doxygen/html/html/CHG_8h_source.html +13 -14
  22. package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +3 -3
  23. package/SVF-doxygen/html/html/ConsGEdge_8h_source.html +3 -3
  24. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +7 -7
  25. package/SVF-doxygen/html/html/ConsG_8cpp.html +3 -2
  26. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +27 -28
  27. package/SVF-doxygen/html/html/ConsG_8h.html +4 -6
  28. package/SVF-doxygen/html/html/ConsG_8h_source.html +10 -11
  29. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +7 -7
  30. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +3 -3
  31. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +4 -4
  32. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +21 -21
  33. package/SVF-doxygen/html/html/DCHG_8h.html +4 -6
  34. package/SVF-doxygen/html/html/DCHG_8h_source.html +15 -16
  35. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +3 -3
  36. package/SVF-doxygen/html/html/DDAClient_8h_source.html +1 -1
  37. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +9 -9
  38. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +1 -1
  39. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +8 -8
  40. package/SVF-doxygen/html/html/DOTGraphTraits_8h.html +4 -3
  41. package/SVF-doxygen/html/html/DOTGraphTraits_8h_source.html +24 -24
  42. package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +4 -4
  43. package/SVF-doxygen/html/html/DoubleFreeChecker_8h_source.html +1 -1
  44. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +5 -5
  45. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +1 -1
  46. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +12 -12
  47. package/SVF-doxygen/html/html/FileChecker_8cpp_source.html +1 -1
  48. package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
  49. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +3 -3
  50. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +1 -1
  51. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +8 -8
  52. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +6 -6
  53. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +1 -1
  54. package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +2 -2
  55. package/SVF-doxygen/html/html/GenericGraph_8h.html +8 -9
  56. package/SVF-doxygen/html/html/GenericGraph_8h_source.html +125 -125
  57. package/SVF-doxygen/html/html/GraphPrinter_8h.html +3 -2
  58. package/SVF-doxygen/html/html/GraphPrinter_8h_source.html +7 -7
  59. package/SVF-doxygen/html/html/GraphReachSolver_8h_source.html +4 -4
  60. package/SVF-doxygen/html/html/GraphTraits_8h.html +20 -19
  61. package/SVF-doxygen/html/html/GraphTraits_8h_source.html +13 -13
  62. package/SVF-doxygen/html/html/GraphWriter_8cpp_source.html +1 -1
  63. package/SVF-doxygen/html/html/GraphWriter_8h.html +23 -22
  64. package/SVF-doxygen/html/html/GraphWriter_8h_source.html +48 -48
  65. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +7 -7
  66. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +2 -2
  67. package/SVF-doxygen/html/html/ICFGEdge_8h_source.html +7 -7
  68. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +7 -7
  69. package/SVF-doxygen/html/html/ICFGStat_8h_source.html +3 -3
  70. package/SVF-doxygen/html/html/ICFG_8cpp.html +3 -2
  71. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +27 -28
  72. package/SVF-doxygen/html/html/ICFG_8h.html +4 -6
  73. package/SVF-doxygen/html/html/ICFG_8h_source.html +14 -15
  74. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +2 -2
  75. package/SVF-doxygen/html/html/IRGraph_8cpp.html +3 -2
  76. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +20 -21
  77. package/SVF-doxygen/html/html/IRGraph_8h.html +4 -6
  78. package/SVF-doxygen/html/html/IRGraph_8h_source.html +9 -10
  79. package/SVF-doxygen/html/html/LLVMLoopAnalysis_8cpp_source.html +7 -7
  80. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +38 -39
  81. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +19 -19
  82. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +16 -9
  83. package/SVF-doxygen/html/html/LLVMUtil_8h.html +6 -0
  84. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +6 -4
  85. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +6 -6
  86. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +1 -1
  87. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +3 -3
  88. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +23 -23
  89. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +3 -3
  90. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +6 -6
  91. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +3 -3
  92. package/SVF-doxygen/html/html/MHP_8cpp_source.html +23 -23
  93. package/SVF-doxygen/html/html/MHP_8h_source.html +4 -4
  94. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +3 -3
  95. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +5 -5
  96. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +3 -3
  97. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +3 -3
  98. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +8 -8
  99. package/SVF-doxygen/html/html/MTA_8cpp_source.html +3 -3
  100. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
  101. package/SVF-doxygen/html/html/MemPartition_8h_source.html +1 -1
  102. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +18 -18
  103. package/SVF-doxygen/html/html/MemRegion_8h_source.html +2 -2
  104. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +21 -21
  105. package/SVF-doxygen/html/html/MemSSA_8h_source.html +2 -2
  106. package/SVF-doxygen/html/html/PCG_8cpp_source.html +18 -18
  107. package/SVF-doxygen/html/html/PCG_8h_source.html +3 -3
  108. package/SVF-doxygen/html/html/PTACallGraph_8cpp.html +3 -2
  109. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +27 -28
  110. package/SVF-doxygen/html/html/PTACallGraph_8h.html +4 -6
  111. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +17 -18
  112. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +6 -6
  113. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +6 -6
  114. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +3 -3
  115. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +18 -18
  116. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +3 -3
  117. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +7 -7
  118. package/SVF-doxygen/html/html/ProgSlice_8h_source.html +1 -1
  119. package/SVF-doxygen/html/html/SCC_8h_source.html +4 -4
  120. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +1 -1
  121. package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +3 -3
  122. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +3 -3
  123. package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +14 -14
  124. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +9 -9
  125. package/SVF-doxygen/html/html/SVFGReadWrite_8cpp_source.html +3 -3
  126. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +7 -7
  127. package/SVF-doxygen/html/html/SVFG_8cpp.html +3 -2
  128. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +23 -24
  129. package/SVF-doxygen/html/html/SVFG_8h.html +1 -3
  130. package/SVF-doxygen/html/html/SVFG_8h_source.html +13 -14
  131. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +15 -14
  132. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +4 -4
  133. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +8 -8
  134. package/SVF-doxygen/html/html/SVFIR_8h_source.html +4 -4
  135. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +2 -2
  136. package/SVF-doxygen/html/html/SVFModule_8h_source.html +4 -4
  137. package/SVF-doxygen/html/html/SVFStat_8cpp_source.html +9 -9
  138. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +9 -9
  139. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +12 -12
  140. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +4 -4
  141. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +9 -9
  142. package/SVF-doxygen/html/html/SVFValue_8cpp_source.html +16 -19
  143. package/SVF-doxygen/html/html/SVFValue_8h.html +3 -3
  144. package/SVF-doxygen/html/html/SVFValue_8h_source.html +210 -213
  145. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +7 -7
  146. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +13 -14
  147. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +3 -3
  148. package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +17 -17
  149. package/SVF-doxygen/html/html/SaberCondAllocator_8h_source.html +6 -6
  150. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +8 -8
  151. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +7 -7
  152. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
  153. package/SVF-doxygen/html/html/SrcSnkSolver_8h_source.html +3 -4
  154. package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +3 -3
  155. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +7 -10
  156. package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +3 -4
  157. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +4 -4
  158. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +2 -2
  159. package/SVF-doxygen/html/html/TCT_8cpp.html +3 -2
  160. package/SVF-doxygen/html/html/TCT_8cpp_source.html +38 -39
  161. package/SVF-doxygen/html/html/TCT_8h.html +4 -6
  162. package/SVF-doxygen/html/html/TCT_8h_source.html +27 -28
  163. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +10 -10
  164. package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +6 -6
  165. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +2 -2
  166. package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +7 -7
  167. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +8 -8
  168. package/SVF-doxygen/html/html/VFGEdge_8h_source.html +6 -6
  169. package/SVF-doxygen/html/html/VFGNode_8h_source.html +8 -8
  170. package/SVF-doxygen/html/html/VFG_8cpp.html +3 -2
  171. package/SVF-doxygen/html/html/VFG_8cpp_source.html +20 -21
  172. package/SVF-doxygen/html/html/VFG_8h.html +4 -6
  173. package/SVF-doxygen/html/html/VFG_8h_source.html +14 -15
  174. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +4 -4
  175. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +10 -10
  176. package/SVF-doxygen/html/html/WPAFSSolver_8h_source.html +3 -3
  177. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +8 -8
  178. package/SVF-doxygen/html/html/WPAPass_8h_source.html +1 -1
  179. package/SVF-doxygen/html/html/WPASolver_8h_source.html +4 -4
  180. package/SVF-doxygen/html/html/annotated.html +291 -291
  181. package/SVF-doxygen/html/html/cfl_8cpp_source.html +1 -1
  182. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +4 -4
  183. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +4 -4
  184. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +3 -3
  185. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +3 -3
  186. package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge.html +2 -2
  187. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +1 -1
  188. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +1 -1
  189. package/SVF-doxygen/html/html/classSVF_1_1AliasCFLGraphBuilder.html +1 -1
  190. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +3 -3
  191. package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +1 -1
  192. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +33 -33
  193. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +1 -1
  194. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +7 -7
  195. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +1 -1
  196. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +10 -10
  197. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +1 -1
  198. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +7 -7
  199. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +17 -17
  200. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +1 -1
  201. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +4 -4
  202. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +1 -1
  203. package/SVF-doxygen/html/html/classSVF_1_1AssignStmt.html +4 -4
  204. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +12 -12
  205. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +1 -1
  206. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +3 -3
  207. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +4 -4
  208. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +1 -1
  209. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +11 -11
  210. package/SVF-doxygen/html/html/classSVF_1_1CFLEdge.html +4 -4
  211. package/SVF-doxygen/html/html/classSVF_1_1CFLGraph.html +4 -4
  212. package/SVF-doxygen/html/html/classSVF_1_1CFLNode-members.html +45 -44
  213. package/SVF-doxygen/html/html/classSVF_1_1CFLNode.html +29 -29
  214. package/SVF-doxygen/html/html/classSVF_1_1CFLSolver.html +4 -4
  215. package/SVF-doxygen/html/html/classSVF_1_1CFLStat.html +1 -1
  216. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +16 -16
  217. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +17 -17
  218. package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +3 -3
  219. package/SVF-doxygen/html/html/classSVF_1_1CallCHI.html +1 -1
  220. package/SVF-doxygen/html/html/classSVF_1_1CallDirSVFGEdge.html +2 -2
  221. package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +3 -3
  222. package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +7 -7
  223. package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +2 -2
  224. package/SVF-doxygen/html/html/classSVF_1_1CallMU.html +1 -1
  225. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
  226. package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +56 -56
  227. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +1 -1
  228. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +3 -3
  229. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +1 -1
  230. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +30 -30
  231. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +18 -18
  232. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +12 -12
  233. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +1 -1
  234. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +1 -1
  235. package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +1 -1
  236. package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +2 -2
  237. package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +2 -2
  238. package/SVF-doxygen/html/html/classSVF_1_1CxtThreadProc.html +1 -1
  239. package/SVF-doxygen/html/html/classSVF_1_1CxtThreadStmt.html +2 -2
  240. package/SVF-doxygen/html/html/classSVF_1_1DCHEdge.html +2 -2
  241. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +35 -35
  242. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +3 -3
  243. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +16 -16
  244. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +1 -1
  245. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +3 -3
  246. package/SVF-doxygen/html/html/classSVF_1_1DirectSVFGEdge.html +2 -2
  247. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +1 -1
  248. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker-members.html +2 -2
  249. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +16 -16
  250. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +1 -1
  251. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +1 -1
  252. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +6 -6
  253. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +3 -4
  254. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA-members.html +1 -1
  255. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +4 -4
  256. package/SVF-doxygen/html/html/classSVF_1_1FileChecker-members.html +2 -2
  257. package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +8 -8
  258. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +3 -3
  259. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive-members.html +1 -1
  260. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +21 -21
  261. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +17 -17
  262. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +29 -29
  263. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +2 -2
  264. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +2 -2
  265. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +3 -3
  266. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +3 -3
  267. package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +6 -6
  268. package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +8 -8
  269. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.html +31 -31
  270. package/SVF-doxygen/html/html/classSVF_1_1GenericGraph.html +44 -44
  271. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +98 -97
  272. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
  273. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +3 -4
  274. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +1 -1
  275. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +1 -1
  276. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +3 -4
  277. package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode.html +1 -1
  278. package/SVF-doxygen/html/html/classSVF_1_1GraphPrinter-members.html +83 -0
  279. package/SVF-doxygen/html/html/classSVF_1_1GraphPrinter.html +236 -0
  280. package/SVF-doxygen/html/html/classSVF_1_1GraphReachSolver-members.html +2 -2
  281. package/SVF-doxygen/html/html/classSVF_1_1GraphReachSolver.html +12 -12
  282. package/SVF-doxygen/html/html/classSVF_1_1GraphWriter-members.html +100 -0
  283. package/SVF-doxygen/html/html/classSVF_1_1GraphWriter.html +882 -0
  284. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +19 -19
  285. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +12 -12
  286. package/SVF-doxygen/html/html/classSVF_1_1ICFGEdge.html +7 -7
  287. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +1 -1
  288. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.html +2 -2
  289. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +11 -11
  290. package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +2 -2
  291. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +1 -1
  292. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +3 -3
  293. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +2 -2
  294. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +3 -3
  295. package/SVF-doxygen/html/html/classSVF_1_1IntraDirSVFGEdge.html +2 -2
  296. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +1 -1
  297. package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +6 -6
  298. package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +2 -2
  299. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +2 -2
  300. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +2 -2
  301. package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis.html +7 -7
  302. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +69 -69
  303. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker-members.html +2 -2
  304. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +22 -22
  305. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +1 -1
  306. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +1 -1
  307. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +3 -3
  308. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +50 -50
  309. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +7 -7
  310. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +55 -55
  311. package/SVF-doxygen/html/html/classSVF_1_1MHPValidator.html +1 -1
  312. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +22 -22
  313. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +1 -1
  314. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +4 -4
  315. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +3 -3
  316. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +6 -6
  317. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +8 -8
  318. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +37 -37
  319. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +9 -9
  320. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
  321. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +36 -36
  322. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +3 -3
  323. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +4 -4
  324. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +3 -4
  325. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +3 -3
  326. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +28 -28
  327. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +3 -3
  328. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +25 -25
  329. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +3 -3
  330. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +7 -7
  331. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +9 -9
  332. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +2 -2
  333. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +40 -40
  334. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +7 -7
  335. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +4 -4
  336. package/SVF-doxygen/html/html/classSVF_1_1RaceValidator.html +1 -1
  337. package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +3 -3
  338. package/SVF-doxygen/html/html/classSVF_1_1RetDirSVFGEdge.html +2 -2
  339. package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +5 -5
  340. package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +2 -2
  341. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
  342. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +2 -2
  343. package/SVF-doxygen/html/html/classSVF_1_1SCCDetection-members.html +1 -1
  344. package/SVF-doxygen/html/html/classSVF_1_1SCCDetection.html +8 -8
  345. package/SVF-doxygen/html/html/classSVF_1_1SVFArgument-members.html +7 -9
  346. package/SVF-doxygen/html/html/classSVF_1_1SVFArgument.html +16 -20
  347. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock-members.html +8 -10
  348. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +56 -63
  349. package/SVF-doxygen/html/html/classSVF_1_1SVFBlackHoleValue-members.html +6 -8
  350. package/SVF-doxygen/html/html/classSVF_1_1SVFBlackHoleValue.html +7 -11
  351. package/SVF-doxygen/html/html/classSVF_1_1SVFCallInst-members.html +12 -14
  352. package/SVF-doxygen/html/html/classSVF_1_1SVFCallInst.html +34 -38
  353. package/SVF-doxygen/html/html/classSVF_1_1SVFConstant-members.html +6 -8
  354. package/SVF-doxygen/html/html/classSVF_1_1SVFConstant.html +5 -9
  355. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantData-members.html +6 -8
  356. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantData.html +7 -11
  357. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantFP-members.html +6 -8
  358. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantFP.html +10 -14
  359. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantInt-members.html +6 -8
  360. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantInt.html +14 -18
  361. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantNullPtr-members.html +6 -8
  362. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantNullPtr.html +7 -11
  363. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction-members.html +23 -25
  364. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +115 -119
  365. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +16 -16
  366. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +1 -1
  367. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +43 -43
  368. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +9 -9
  369. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobalValue-members.html +9 -11
  370. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobalValue.html +14 -18
  371. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +35 -35
  372. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +48 -47
  373. package/SVF-doxygen/html/html/classSVF_1_1SVFInstruction-members.html +11 -13
  374. package/SVF-doxygen/html/html/classSVF_1_1SVFInstruction.html +31 -35
  375. package/SVF-doxygen/html/html/classSVF_1_1SVFLoopAndDomInfo.html +2 -2
  376. package/SVF-doxygen/html/html/classSVF_1_1SVFMetadataAsValue-members.html +6 -8
  377. package/SVF-doxygen/html/html/classSVF_1_1SVFMetadataAsValue.html +7 -11
  378. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +3 -3
  379. package/SVF-doxygen/html/html/classSVF_1_1SVFOtherValue-members.html +6 -8
  380. package/SVF-doxygen/html/html/classSVF_1_1SVFOtherValue.html +5 -9
  381. package/SVF-doxygen/html/html/classSVF_1_1SVFStat.html +9 -9
  382. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +9 -9
  383. package/SVF-doxygen/html/html/classSVF_1_1SVFType.html +3 -3
  384. package/SVF-doxygen/html/html/classSVF_1_1SVFValue-members.html +25 -28
  385. package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +38 -128
  386. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +12 -12
  387. package/SVF-doxygen/html/html/classSVF_1_1SVFVirtualCallInst-members.html +14 -16
  388. package/SVF-doxygen/html/html/classSVF_1_1SVFVirtualCallInst.html +29 -33
  389. package/SVF-doxygen/html/html/classSVF_1_1SaberCondAllocator.html +46 -46
  390. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +13 -13
  391. package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +2 -2
  392. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA-members.html +2 -2
  393. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +16 -16
  394. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkSolver-members.html +2 -2
  395. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkSolver.html +12 -12
  396. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +1 -1
  397. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +9 -9
  398. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +5 -5
  399. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +1 -1
  400. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +2 -2
  401. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder-members.html +2 -3
  402. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +21 -54
  403. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +5 -5
  404. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +72 -72
  405. package/SVF-doxygen/html/html/classSVF_1_1TCTNode.html +1 -1
  406. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
  407. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
  408. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +11 -11
  409. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +5 -5
  410. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +3 -3
  411. package/SVF-doxygen/html/html/classSVF_1_1ThreadForkEdge.html +4 -4
  412. package/SVF-doxygen/html/html/classSVF_1_1ThreadJoinEdge.html +4 -4
  413. package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +2 -2
  414. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +1 -1
  415. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +12 -12
  416. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +5 -5
  417. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +3 -3
  418. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +21 -21
  419. package/SVF-doxygen/html/html/classSVF_1_1VFGEdge.html +13 -13
  420. package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +1 -1
  421. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +3 -4
  422. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +2 -2
  423. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +1 -1
  424. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +35 -35
  425. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +6 -6
  426. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC.html +4 -4
  427. package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver-members.html +1 -1
  428. package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver.html +4 -4
  429. package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver.html +7 -7
  430. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +9 -9
  431. package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver.html +4 -4
  432. package/SVF-doxygen/html/html/classSVF_1_1WPASolver-members.html +1 -1
  433. package/SVF-doxygen/html/html/classSVF_1_1WPASolver.html +8 -8
  434. package/SVF-doxygen/html/html/classSVF_1_1iter__adaptor__base-members.html +112 -0
  435. package/SVF-doxygen/html/html/classSVF_1_1iter__adaptor__base.html +633 -0
  436. package/SVF-doxygen/html/html/classSVF_1_1iter__adaptor__base.png +0 -0
  437. package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base-members.html +102 -0
  438. package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base.html +787 -0
  439. package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base.png +0 -0
  440. package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base_1_1ReferenceProxy-members.html +84 -0
  441. package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base_1_1ReferenceProxy.html +229 -0
  442. package/SVF-doxygen/html/html/classSVF_1_1iter__range-members.html +87 -0
  443. package/SVF-doxygen/html/html/classSVF_1_1iter__range.html +342 -0
  444. package/SVF-doxygen/html/html/classSVF_1_1mapped__iter-members.html +112 -0
  445. package/SVF-doxygen/html/html/classSVF_1_1mapped__iter.html +322 -0
  446. package/SVF-doxygen/html/html/classSVF_1_1mapped__iter.png +0 -0
  447. package/SVF-doxygen/html/html/classSVF_1_1pointer__iterator-members.html +113 -0
  448. package/SVF-doxygen/html/html/classSVF_1_1pointer__iterator.html +343 -0
  449. package/SVF-doxygen/html/html/classSVF_1_1pointer__iterator.png +0 -0
  450. package/SVF-doxygen/html/html/classes.html +59 -59
  451. package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
  452. package/SVF-doxygen/html/html/fastcluster__R__dm_8cpp_8inc_source.html +2 -2
  453. package/SVF-doxygen/html/html/functions_a.html +1 -1
  454. package/SVF-doxygen/html/html/functions_b.html +4 -4
  455. package/SVF-doxygen/html/html/functions_c.html +20 -18
  456. package/SVF-doxygen/html/html/functions_d.html +20 -20
  457. package/SVF-doxygen/html/html/functions_e.html +14 -16
  458. package/SVF-doxygen/html/html/functions_eval_i.html +2 -2
  459. package/SVF-doxygen/html/html/functions_f.html +1 -1
  460. package/SVF-doxygen/html/html/functions_func.html +1 -1
  461. package/SVF-doxygen/html/html/functions_func_b.html +2 -2
  462. package/SVF-doxygen/html/html/functions_func_c.html +4 -4
  463. package/SVF-doxygen/html/html/functions_func_d.html +14 -14
  464. package/SVF-doxygen/html/html/functions_func_e.html +8 -8
  465. package/SVF-doxygen/html/html/functions_func_g.html +72 -72
  466. package/SVF-doxygen/html/html/functions_func_h.html +4 -7
  467. package/SVF-doxygen/html/html/functions_func_i.html +17 -20
  468. package/SVF-doxygen/html/html/functions_func_m.html +1 -1
  469. package/SVF-doxygen/html/html/functions_func_n.html +3 -3
  470. package/SVF-doxygen/html/html/functions_func_o.html +24 -24
  471. package/SVF-doxygen/html/html/functions_func_p.html +4 -4
  472. package/SVF-doxygen/html/html/functions_func_r.html +2 -2
  473. package/SVF-doxygen/html/html/functions_func_s.html +15 -18
  474. package/SVF-doxygen/html/html/functions_func_w.html +8 -8
  475. package/SVF-doxygen/html/html/functions_g.html +84 -82
  476. package/SVF-doxygen/html/html/functions_h.html +6 -12
  477. package/SVF-doxygen/html/html/functions_i.html +40 -43
  478. package/SVF-doxygen/html/html/functions_l.html +3 -3
  479. package/SVF-doxygen/html/html/functions_m.html +1 -1
  480. package/SVF-doxygen/html/html/functions_n.html +30 -30
  481. package/SVF-doxygen/html/html/functions_o.html +39 -43
  482. package/SVF-doxygen/html/html/functions_p.html +16 -16
  483. package/SVF-doxygen/html/html/functions_r.html +8 -6
  484. package/SVF-doxygen/html/html/functions_rela.html +3 -3
  485. package/SVF-doxygen/html/html/functions_s.html +22 -25
  486. package/SVF-doxygen/html/html/functions_t.html +3 -3
  487. package/SVF-doxygen/html/html/functions_type_b.html +1 -1
  488. package/SVF-doxygen/html/html/functions_type_c.html +7 -7
  489. package/SVF-doxygen/html/html/functions_type_d.html +4 -4
  490. package/SVF-doxygen/html/html/functions_type_e.html +4 -4
  491. package/SVF-doxygen/html/html/functions_type_g.html +6 -6
  492. package/SVF-doxygen/html/html/functions_type_i.html +4 -4
  493. package/SVF-doxygen/html/html/functions_type_n.html +27 -27
  494. package/SVF-doxygen/html/html/functions_type_p.html +3 -3
  495. package/SVF-doxygen/html/html/functions_type_r.html +2 -2
  496. package/SVF-doxygen/html/html/functions_type_v.html +2 -2
  497. package/SVF-doxygen/html/html/functions_v.html +5 -5
  498. package/SVF-doxygen/html/html/functions_vars_b.html +1 -1
  499. package/SVF-doxygen/html/html/functions_vars_d.html +1 -1
  500. package/SVF-doxygen/html/html/functions_vars_e.html +1 -1
  501. package/SVF-doxygen/html/html/functions_vars_f.html +1 -1
  502. package/SVF-doxygen/html/html/functions_vars_g.html +7 -5
  503. package/SVF-doxygen/html/html/functions_vars_h.html +0 -3
  504. package/SVF-doxygen/html/html/functions_vars_i.html +6 -6
  505. package/SVF-doxygen/html/html/functions_vars_o.html +1 -1
  506. package/SVF-doxygen/html/html/functions_vars_p.html +1 -1
  507. package/SVF-doxygen/html/html/functions_w.html +17 -17
  508. package/SVF-doxygen/html/html/hierarchy.html +159 -159
  509. package/SVF-doxygen/html/html/include_2MTA_2MTAResultValidator_8h_source.html +4 -4
  510. package/SVF-doxygen/html/html/iterator_8h.html +16 -15
  511. package/SVF-doxygen/html/html/iterator_8h_source.html +53 -53
  512. package/SVF-doxygen/html/html/iterator__range_8h.html +9 -8
  513. package/SVF-doxygen/html/html/iterator__range_8h_source.html +11 -11
  514. package/SVF-doxygen/html/html/mta_8cpp_source.html +1 -1
  515. package/SVF-doxygen/html/html/namespaceSVF.html +575 -9
  516. package/SVF-doxygen/html/html/namespaceSVF_1_1DOT.html +107 -0
  517. package/SVF-doxygen/html/html/namespaceSVF_1_1GraphProgram.html +122 -0
  518. package/SVF-doxygen/html/html/namespaceSVF_1_1LLVMUtil.html +65 -7
  519. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +3 -3
  520. package/SVF-doxygen/html/html/namespacellvm.html +1 -572
  521. package/SVF-doxygen/html/html/namespacemembers_c.html +3 -3
  522. package/SVF-doxygen/html/html/namespacemembers_d.html +1 -1
  523. package/SVF-doxygen/html/html/namespacemembers_e.html +1 -1
  524. package/SVF-doxygen/html/html/namespacemembers_enum.html +1 -1
  525. package/SVF-doxygen/html/html/namespacemembers_eval.html +5 -5
  526. package/SVF-doxygen/html/html/namespacemembers_f.html +1 -1
  527. package/SVF-doxygen/html/html/namespacemembers_func_c.html +2 -2
  528. package/SVF-doxygen/html/html/namespacemembers_func_e.html +1 -1
  529. package/SVF-doxygen/html/html/namespacemembers_func_i.html +8 -5
  530. package/SVF-doxygen/html/html/namespacemembers_func_m.html +4 -4
  531. package/SVF-doxygen/html/html/namespacemembers_func_n.html +1 -1
  532. package/SVF-doxygen/html/html/namespacemembers_func_v.html +1 -1
  533. package/SVF-doxygen/html/html/namespacemembers_func_w.html +1 -1
  534. package/SVF-doxygen/html/html/namespacemembers_g.html +1 -1
  535. package/SVF-doxygen/html/html/namespacemembers_i.html +6 -3
  536. package/SVF-doxygen/html/html/namespacemembers_m.html +4 -4
  537. package/SVF-doxygen/html/html/namespacemembers_n.html +3 -3
  538. package/SVF-doxygen/html/html/namespacemembers_r.html +1 -1
  539. package/SVF-doxygen/html/html/namespacemembers_t.html +1 -1
  540. package/SVF-doxygen/html/html/namespacemembers_type_g.html +1 -1
  541. package/SVF-doxygen/html/html/namespacemembers_type_r.html +1 -1
  542. package/SVF-doxygen/html/html/namespacemembers_v.html +1 -1
  543. package/SVF-doxygen/html/html/namespacemembers_w.html +1 -1
  544. package/SVF-doxygen/html/html/namespaces.html +5 -5
  545. package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -1
  546. package/SVF-doxygen/html/html/search/all_1.js +1 -1
  547. package/SVF-doxygen/html/html/search/all_10.js +12 -12
  548. package/SVF-doxygen/html/html/search/all_11.js +7 -7
  549. package/SVF-doxygen/html/html/search/all_12.js +7 -6
  550. package/SVF-doxygen/html/html/search/all_13.js +7 -7
  551. package/SVF-doxygen/html/html/search/all_15.js +4 -4
  552. package/SVF-doxygen/html/html/search/all_16.js +10 -10
  553. package/SVF-doxygen/html/html/search/all_2.js +3 -3
  554. package/SVF-doxygen/html/html/search/all_3.js +7 -7
  555. package/SVF-doxygen/html/html/search/all_4.js +20 -20
  556. package/SVF-doxygen/html/html/search/all_5.js +9 -9
  557. package/SVF-doxygen/html/html/search/all_6.js +2 -2
  558. package/SVF-doxygen/html/html/search/all_7.js +87 -87
  559. package/SVF-doxygen/html/html/search/all_8.js +1 -3
  560. package/SVF-doxygen/html/html/search/all_9.js +23 -23
  561. package/SVF-doxygen/html/html/search/all_c.js +2 -4
  562. package/SVF-doxygen/html/html/search/all_d.js +5 -5
  563. package/SVF-doxygen/html/html/search/all_e.js +11 -11
  564. package/SVF-doxygen/html/html/search/all_f.js +19 -19
  565. package/SVF-doxygen/html/html/search/classes_3.js +13 -13
  566. package/SVF-doxygen/html/html/search/classes_6.js +64 -64
  567. package/SVF-doxygen/html/html/search/classes_8.js +10 -10
  568. package/SVF-doxygen/html/html/search/classes_a.js +1 -1
  569. package/SVF-doxygen/html/html/search/classes_d.js +2 -2
  570. package/SVF-doxygen/html/html/search/classes_e.js +1 -1
  571. package/SVF-doxygen/html/html/search/enums_8.js +1 -1
  572. package/SVF-doxygen/html/html/search/enumvalues_10.js +1 -1
  573. package/SVF-doxygen/html/html/search/enumvalues_2.js +1 -1
  574. package/SVF-doxygen/html/html/search/enumvalues_3.js +1 -1
  575. package/SVF-doxygen/html/html/search/enumvalues_5.js +1 -1
  576. package/SVF-doxygen/html/html/search/enumvalues_8.js +2 -2
  577. package/SVF-doxygen/html/html/search/enumvalues_b.js +1 -1
  578. package/SVF-doxygen/html/html/search/functions_0.js +1 -1
  579. package/SVF-doxygen/html/html/search/functions_1.js +1 -1
  580. package/SVF-doxygen/html/html/search/functions_10.js +2 -2
  581. package/SVF-doxygen/html/html/search/functions_11.js +1 -2
  582. package/SVF-doxygen/html/html/search/functions_14.js +1 -1
  583. package/SVF-doxygen/html/html/search/functions_15.js +8 -8
  584. package/SVF-doxygen/html/html/search/functions_2.js +4 -4
  585. package/SVF-doxygen/html/html/search/functions_3.js +5 -5
  586. package/SVF-doxygen/html/html/search/functions_4.js +7 -7
  587. package/SVF-doxygen/html/html/search/functions_6.js +21 -21
  588. package/SVF-doxygen/html/html/search/functions_7.js +1 -2
  589. package/SVF-doxygen/html/html/search/functions_8.js +8 -8
  590. package/SVF-doxygen/html/html/search/functions_c.js +5 -5
  591. package/SVF-doxygen/html/html/search/functions_d.js +4 -4
  592. package/SVF-doxygen/html/html/search/functions_e.js +14 -14
  593. package/SVF-doxygen/html/html/search/functions_f.js +4 -4
  594. package/SVF-doxygen/html/html/search/namespaces_0.js +0 -2
  595. package/SVF-doxygen/html/html/search/namespaces_1.js +2 -0
  596. package/SVF-doxygen/html/html/search/related_9.js +3 -3
  597. package/SVF-doxygen/html/html/search/typedefs_1.js +1 -1
  598. package/SVF-doxygen/html/html/search/typedefs_13.js +1 -1
  599. package/SVF-doxygen/html/html/search/typedefs_2.js +2 -2
  600. package/SVF-doxygen/html/html/search/typedefs_3.js +2 -2
  601. package/SVF-doxygen/html/html/search/typedefs_4.js +1 -1
  602. package/SVF-doxygen/html/html/search/typedefs_6.js +3 -3
  603. package/SVF-doxygen/html/html/search/typedefs_7.js +2 -2
  604. package/SVF-doxygen/html/html/search/typedefs_c.js +4 -4
  605. package/SVF-doxygen/html/html/search/typedefs_e.js +2 -2
  606. package/SVF-doxygen/html/html/search/typedefs_f.js +2 -2
  607. package/SVF-doxygen/html/html/search/variables_10.js +1 -1
  608. package/SVF-doxygen/html/html/search/variables_13.js +3 -3
  609. package/SVF-doxygen/html/html/search/variables_2.js +1 -1
  610. package/SVF-doxygen/html/html/search/variables_4.js +1 -1
  611. package/SVF-doxygen/html/html/search/variables_5.js +1 -1
  612. package/SVF-doxygen/html/html/search/variables_6.js +1 -1
  613. package/SVF-doxygen/html/html/search/variables_7.js +2 -2
  614. package/SVF-doxygen/html/html/search/variables_8.js +0 -1
  615. package/SVF-doxygen/html/html/search/variables_9.js +5 -5
  616. package/SVF-doxygen/html/html/search/variables_c.js +1 -1
  617. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  618. package/SVF-doxygen/html/html/search/variables_f.js +1 -1
  619. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits-members.html +99 -0
  620. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits.html +193 -0
  621. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits.png +0 -0
  622. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4-members.html +105 -0
  623. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.html +443 -0
  624. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.png +0 -0
  625. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CHGraph_01_5_01_4-members.html +104 -0
  626. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CHGraph_01_5_01_4.html +388 -0
  627. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CHGraph_01_5_01_4.png +0 -0
  628. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4-members.html +106 -0
  629. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +481 -0
  630. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.png +0 -0
  631. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ICFG_01_5_01_4-members.html +106 -0
  632. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +475 -0
  633. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.png +0 -0
  634. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4-members.html +107 -0
  635. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +486 -0
  636. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.png +0 -0
  637. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4-members.html +106 -0
  638. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.html +457 -0
  639. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.png +0 -0
  640. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01SVFG_01_5_01_4-members.html +108 -0
  641. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +595 -0
  642. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.png +0 -0
  643. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01TCT_01_5_01_4-members.html +105 -0
  644. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01TCT_01_5_01_4.html +409 -0
  645. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01TCT_01_5_01_4.png +0 -0
  646. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01VFG_01_5_01_4-members.html +107 -0
  647. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +543 -0
  648. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01VFG_01_5_01_4.png +0 -0
  649. package/SVF-doxygen/html/html/structSVF_1_1DefaultDOTGraphTraits-members.html +99 -0
  650. package/SVF-doxygen/html/html/structSVF_1_1DefaultDOTGraphTraits.html +855 -0
  651. package/SVF-doxygen/html/html/structSVF_1_1DefaultDOTGraphTraits.png +0 -0
  652. package/SVF-doxygen/html/html/structSVF_1_1GenericEdge_1_1equalGEdge.html +3 -3
  653. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits-members.html +81 -0
  654. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits.html +116 -0
  655. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01Inverse_3_01T_01_4_01_4_01_4-members.html +81 -0
  656. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01Inverse_3_01T_01_4_01_4_01_4.html +106 -0
  657. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01Inverse_3_01T_01_4_01_4_01_4.png +0 -0
  658. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CFLNode_01_5_01_4_01_4-members.html +81 -0
  659. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CFLNode_01_5_01_4_01_4.html +110 -0
  660. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CFLNode_01_5_01_4_01_4.png +0 -0
  661. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CHNode_01_5_01_4_01_4-members.html +81 -0
  662. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CHNode_01_5_01_4_01_4.html +110 -0
  663. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CHNode_01_5_01_4_01_4.png +0 -0
  664. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1ConstraintNode_01_5_01_4_01_4-members.html +81 -0
  665. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1ConstraintNode_01_5_01_4_01_4.html +110 -0
  666. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1ConstraintNode_01_5_01_4_01_4.png +0 -0
  667. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1DCHNode_01_5_01_4_01_4-members.html +81 -0
  668. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1DCHNode_01_5_01_4_01_4.html +110 -0
  669. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1DCHNode_01_5_01_4_01_4.png +0 -0
  670. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1GenericNode_3_01NodeTy_00_01EdgeTy_01_4_01_5_4_01_4-members.html +88 -0
  671. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1GenericNode_3_01NodeTy_00_01EdgeTy_01_4_01_5_4_01_4.html +324 -0
  672. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1ICFGNode_01_5_01_4_01_4-members.html +81 -0
  673. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1ICFGNode_01_5_01_4_01_4.html +110 -0
  674. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1ICFGNode_01_5_01_4_01_4.png +0 -0
  675. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1PTACallGraphNode_01_5_01_4_01_4-members.html +81 -0
  676. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1PTACallGraphNode_01_5_01_4_01_4.html +110 -0
  677. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1PTACallGraphNode_01_5_01_4_01_4.png +0 -0
  678. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1SVFVar_01_5_01_4_01_4-members.html +81 -0
  679. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1SVFVar_01_5_01_4_01_4.html +110 -0
  680. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1SVFVar_01_5_01_4_01_4.png +0 -0
  681. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1TCTNode_01_5_01_4_01_4-members.html +81 -0
  682. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1TCTNode_01_5_01_4_01_4.html +110 -0
  683. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1TCTNode_01_5_01_4_01_4.png +0 -0
  684. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1VFGNode_01_5_01_4_01_4-members.html +81 -0
  685. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1VFGNode_01_5_01_4_01_4.html +110 -0
  686. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1VFGNode_01_5_01_4_01_4.png +0 -0
  687. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFLGraph_01_5_01_4-members.html +81 -0
  688. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFLGraph_01_5_01_4.html +126 -0
  689. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFLGraph_01_5_01_4.png +0 -0
  690. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFLNode_01_5_01_4-members.html +81 -0
  691. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFLNode_01_5_01_4.html +106 -0
  692. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFLNode_01_5_01_4.png +0 -0
  693. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CHGraph_01_5_01_4-members.html +81 -0
  694. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CHGraph_01_5_01_4.html +126 -0
  695. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CHGraph_01_5_01_4.png +0 -0
  696. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CHNode_01_5_01_4-members.html +81 -0
  697. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CHNode_01_5_01_4.html +106 -0
  698. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CHNode_01_5_01_4.png +0 -0
  699. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ConstraintGraph_01_5_01_4-members.html +81 -0
  700. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ConstraintGraph_01_5_01_4.html +126 -0
  701. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ConstraintGraph_01_5_01_4.png +0 -0
  702. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ConstraintNode_01_5_01_4-members.html +81 -0
  703. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ConstraintNode_01_5_01_4.html +106 -0
  704. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ConstraintNode_01_5_01_4.png +0 -0
  705. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHGraph_01_5_01_4-members.html +81 -0
  706. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHGraph_01_5_01_4.html +126 -0
  707. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHGraph_01_5_01_4.png +0 -0
  708. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHNode_01_5_01_4-members.html +81 -0
  709. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHNode_01_5_01_4.html +106 -0
  710. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHNode_01_5_01_4.png +0 -0
  711. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1GenericGraph_3_01NodeTy_00_01EdgeTy_01_4_01_5_4-members.html +99 -0
  712. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1GenericGraph_3_01NodeTy_00_01EdgeTy_01_4_01_5_4.html +467 -0
  713. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1GenericGraph_3_01NodeTy_00_01EdgeTy_01_4_01_5_4.png +0 -0
  714. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1GenericNode_3_01NodeTy_00_01EdgeTy_01_4_01_5_01_4-members.html +89 -0
  715. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1GenericNode_3_01NodeTy_00_01EdgeTy_01_4_01_5_01_4.html +367 -0
  716. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1GenericNode_3_01NodeTy_00_01EdgeTy_01_4_01_5_01_4.png +0 -0
  717. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ICFGNode_01_5_01_4-members.html +81 -0
  718. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ICFGNode_01_5_01_4.html +106 -0
  719. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ICFGNode_01_5_01_4.png +0 -0
  720. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ICFG_01_5_01_4-members.html +81 -0
  721. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ICFG_01_5_01_4.html +126 -0
  722. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ICFG_01_5_01_4.png +0 -0
  723. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1IRGraph_01_5_01_4-members.html +81 -0
  724. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1IRGraph_01_5_01_4.html +126 -0
  725. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1IRGraph_01_5_01_4.png +0 -0
  726. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1PTACallGraphNode_01_5_01_4-members.html +81 -0
  727. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1PTACallGraphNode_01_5_01_4.html +106 -0
  728. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1PTACallGraphNode_01_5_01_4.png +0 -0
  729. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1PTACallGraph_01_5_01_4-members.html +81 -0
  730. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1PTACallGraph_01_5_01_4.html +126 -0
  731. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1PTACallGraph_01_5_01_4.png +0 -0
  732. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFG_01_5_01_4-members.html +81 -0
  733. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFG_01_5_01_4.html +126 -0
  734. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFG_01_5_01_4.png +0 -0
  735. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFVar_01_5_01_4-members.html +81 -0
  736. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFVar_01_5_01_4.html +106 -0
  737. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFVar_01_5_01_4.png +0 -0
  738. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1TCTNode_01_5_01_4-members.html +81 -0
  739. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1TCTNode_01_5_01_4.html +106 -0
  740. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1TCTNode_01_5_01_4.png +0 -0
  741. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1TCT_01_5_01_4-members.html +81 -0
  742. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1TCT_01_5_01_4.html +126 -0
  743. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1TCT_01_5_01_4.png +0 -0
  744. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1VFGNode_01_5_01_4-members.html +81 -0
  745. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1VFGNode_01_5_01_4.html +106 -0
  746. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1VFGNode_01_5_01_4.png +0 -0
  747. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1VFG_01_5_01_4-members.html +81 -0
  748. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1VFG_01_5_01_4.html +126 -0
  749. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1VFG_01_5_01_4.png +0 -0
  750. package/SVF-doxygen/html/html/structSVF_1_1Inverse-members.html +82 -0
  751. package/SVF-doxygen/html/html/structSVF_1_1Inverse.html +154 -0
  752. package/SVF-doxygen/html/html/structSVF_1_1pointee__iter-members.html +111 -0
  753. package/SVF-doxygen/html/html/structSVF_1_1pointee__iter.html +279 -0
  754. package/SVF-doxygen/html/html/structSVF_1_1pointee__iter.png +0 -0
  755. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CallSite_01_4.html +3 -3
  756. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtProc_01_4.html +1 -1
  757. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtStmt_01_4.html +1 -1
  758. package/SVF-doxygen/html/html/svf-ex_8cpp.html +9 -9
  759. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +7 -7
  760. package/SVF-doxygen/html/html/tools_2MTA_2MTAResultValidator_8h_source.html +4 -4
  761. package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
  762. package/include/Graphs/CFLGraph.h +6 -6
  763. package/include/Graphs/CHG.h +6 -6
  764. package/include/Graphs/ConsG.h +6 -6
  765. package/include/Graphs/DOTGraphTraits.h +3 -3
  766. package/include/Graphs/GenericGraph.h +10 -9
  767. package/include/Graphs/GraphPrinter.h +2 -2
  768. package/include/Graphs/GraphTraits.h +29 -29
  769. package/include/Graphs/GraphWriter.h +6 -6
  770. package/include/Graphs/ICFG.h +6 -6
  771. package/include/Graphs/IRGraph.h +6 -7
  772. package/include/Graphs/PTACallGraph.h +6 -6
  773. package/include/Graphs/SVFG.h +6 -6
  774. package/include/Graphs/VFG.h +6 -6
  775. package/include/MTA/TCT.h +6 -6
  776. package/include/SABER/SrcSnkSolver.h +2 -2
  777. package/include/SVF-LLVM/DCHG.h +6 -6
  778. package/include/SVF-LLVM/LLVMUtil.h +5 -0
  779. package/include/SVF-LLVM/SymbolTableBuilder.h +0 -3
  780. package/include/SVFIR/SVFValue.h +2 -11
  781. package/include/SVFIR/SVFVariables.h +5 -5
  782. package/include/Util/GraphReachSolver.h +2 -2
  783. package/include/Util/SCC.h +1 -1
  784. package/include/Util/iterator.h +32 -32
  785. package/include/Util/iterator_range.h +11 -11
  786. package/include/WPA/WPASolver.h +1 -1
  787. package/lib/Graphs/CFLGraph.cpp +2 -2
  788. package/lib/Graphs/CHG.cpp +2 -2
  789. package/lib/Graphs/ConsG.cpp +2 -2
  790. package/lib/Graphs/GraphWriter.cpp +1 -1
  791. package/lib/Graphs/ICFG.cpp +2 -2
  792. package/lib/Graphs/IRGraph.cpp +2 -2
  793. package/lib/Graphs/PTACallGraph.cpp +2 -2
  794. package/lib/Graphs/SVFG.cpp +1 -1
  795. package/lib/Graphs/VFG.cpp +2 -2
  796. package/lib/MTA/TCT.cpp +1 -1
  797. package/lib/SVF-LLVM/LLVMModule.cpp +0 -2
  798. package/lib/SVF-LLVM/LLVMUtil.cpp +40 -0
  799. package/lib/SVF-LLVM/SVFIRBuilder.cpp +1 -1
  800. package/lib/SVF-LLVM/SymbolTableBuilder.cpp +0 -34
  801. package/lib/SVFIR/SVFValue.cpp +0 -1
  802. package/package.json +1 -1
@@ -0,0 +1,107 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5
+ <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6
+ <meta name="generator" content="Doxygen 1.8.13"/>
7
+ <meta name="viewport" content="width=device-width, initial-scale=1"/>
8
+ <title>Static Value-Flow Analysis: SVF::DOT Namespace Reference</title>
9
+ <link href="tabs.css" rel="stylesheet" type="text/css"/>
10
+ <script type="text/javascript" src="jquery.js"></script>
11
+ <script type="text/javascript" src="dynsections.js"></script>
12
+ <link href="search/search.css" rel="stylesheet" type="text/css"/>
13
+ <script type="text/javascript" src="search/searchdata.js"></script>
14
+ <script type="text/javascript" src="search/search.js"></script>
15
+ <link href="doxygen.css" rel="stylesheet" type="text/css" />
16
+ </head>
17
+ <body>
18
+ <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
19
+ <div id="titlearea">
20
+ <table cellspacing="0" cellpadding="0">
21
+ <tbody>
22
+ <tr style="height: 56px;">
23
+ <td id="projectalign" style="padding-left: 0.5em;">
24
+ <div id="projectname">Static Value-Flow Analysis
25
+ </div>
26
+ </td>
27
+ </tr>
28
+ </tbody>
29
+ </table>
30
+ </div>
31
+ <!-- end header part -->
32
+ <!-- Generated by Doxygen 1.8.13 -->
33
+ <script type="text/javascript">
34
+ var searchBox = new SearchBox("searchBox", "search",false,'Search');
35
+ </script>
36
+ <script type="text/javascript" src="menudata.js"></script>
37
+ <script type="text/javascript" src="menu.js"></script>
38
+ <script type="text/javascript">
39
+ $(function() {
40
+ initMenu('',true,false,'search.php','Search');
41
+ $(document).ready(function() { init_search(); });
42
+ });
43
+ </script>
44
+ <div id="main-nav"></div>
45
+ <!-- window showing the filter options -->
46
+ <div id="MSearchSelectWindow"
47
+ onmouseover="return searchBox.OnSearchSelectShow()"
48
+ onmouseout="return searchBox.OnSearchSelectHide()"
49
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
50
+ </div>
51
+
52
+ <!-- iframe showing the search results (closed by default) -->
53
+ <div id="MSearchResultsWindow">
54
+ <iframe src="javascript:void(0)" frameborder="0"
55
+ name="MSearchResults" id="MSearchResults">
56
+ </iframe>
57
+ </div>
58
+
59
+ <div id="nav-path" class="navpath">
60
+ <ul>
61
+ <li class="navelem"><a class="el" href="namespaceSVF.html">SVF</a></li><li class="navelem"><a class="el" href="namespaceSVF_1_1DOT.html">DOT</a></li> </ul>
62
+ </div>
63
+ </div><!-- top -->
64
+ <div class="header">
65
+ <div class="summary">
66
+ <a href="#func-members">Functions</a> </div>
67
+ <div class="headertitle">
68
+ <div class="title">SVF::DOT Namespace Reference</div> </div>
69
+ </div><!--header-->
70
+ <div class="contents">
71
+ <table class="memberdecls">
72
+ <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
73
+ Functions</h2></td></tr>
74
+ <tr class="memitem:a9e3127c2bbedaec1f20d4437bea9e2f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF_1_1DOT.html#a9e3127c2bbedaec1f20d4437bea9e2f7">EscapeStr</a> (const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> &amp;Label)</td></tr>
75
+ <tr class="separator:a9e3127c2bbedaec1f20d4437bea9e2f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
76
+ </table>
77
+ <h2 class="groupheader">Function Documentation</h2>
78
+ <a id="a9e3127c2bbedaec1f20d4437bea9e2f7"></a>
79
+ <h2 class="memtitle"><span class="permalink"><a href="#a9e3127c2bbedaec1f20d4437bea9e2f7">&#9670;&nbsp;</a></span>EscapeStr()</h2>
80
+
81
+ <div class="memitem">
82
+ <div class="memproto">
83
+ <table class="memname">
84
+ <tr>
85
+ <td class="memname"><a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> SVF::DOT::EscapeStr </td>
86
+ <td>(</td>
87
+ <td class="paramtype">const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> &amp;&#160;</td>
88
+ <td class="paramname"><em>Label</em></td><td>)</td>
89
+ <td></td>
90
+ </tr>
91
+ </table>
92
+ </div><div class="memdoc">
93
+
94
+ <p class="definition">Definition at line <a class="el" href="GraphWriter_8cpp_source.html#l00012">12</a> of file <a class="el" href="GraphWriter_8cpp_source.html">GraphWriter.cpp</a>.</p>
95
+ <div class="fragment"><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;{</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> Str(Label);</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i != Str.length(); ++i)</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; <span class="keywordflow">switch</span> (Str[i])</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; {</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;\n&#39;</span>:</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; Str.insert(Str.begin()+i, <span class="charliteral">&#39;\\&#39;</span>); <span class="comment">// Escape character...</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; ++i;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; Str[i] = <span class="charliteral">&#39;n&#39;</span>;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;\t&#39;</span>:</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; Str.insert(Str.begin()+i, <span class="charliteral">&#39; &#39;</span>); <span class="comment">// Convert to two spaces</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; ++i;</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; Str[i] = <span class="charliteral">&#39; &#39;</span>;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;\\&#39;</span>:</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keywordflow">if</span> (i+1 != Str.length())</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordflow">switch</span> (Str[i+1])</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; {</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;l&#39;</span>:</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keywordflow">continue</span>; <span class="comment">// don&#39;t disturb \l</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;|&#39;</span>:</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;{&#39;</span>:</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;}&#39;</span>:</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; Str.erase(Str.begin()+i);</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; }</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;{&#39;</span>:</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;}&#39;</span>:</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;&lt;&#39;</span>:</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;&gt;&#39;</span>:</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;|&#39;</span>:</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">case</span> <span class="charliteral">&#39;&quot;&#39;</span>:</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; Str.insert(Str.begin()+i, <span class="charliteral">&#39;\\&#39;</span>); <span class="comment">// Escape character...</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; ++i; <span class="comment">// don&#39;t infinite loop</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; }</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">return</span> Str;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;}</div><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>
96
+ </div><!-- fragment -->
97
+ </div>
98
+ </div>
99
+ </div><!-- contents -->
100
+ <!-- start footer part -->
101
+ <hr class="footer"/><address class="footer"><small>
102
+ Generated by &#160;<a href="http://www.doxygen.org/index.html">
103
+ <img class="footer" src="doxygen.png" alt="doxygen"/>
104
+ </a> 1.8.13
105
+ </small></address>
106
+ </body>
107
+ </html>
@@ -0,0 +1,122 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5
+ <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6
+ <meta name="generator" content="Doxygen 1.8.13"/>
7
+ <meta name="viewport" content="width=device-width, initial-scale=1"/>
8
+ <title>Static Value-Flow Analysis: SVF::GraphProgram Namespace Reference</title>
9
+ <link href="tabs.css" rel="stylesheet" type="text/css"/>
10
+ <script type="text/javascript" src="jquery.js"></script>
11
+ <script type="text/javascript" src="dynsections.js"></script>
12
+ <link href="search/search.css" rel="stylesheet" type="text/css"/>
13
+ <script type="text/javascript" src="search/searchdata.js"></script>
14
+ <script type="text/javascript" src="search/search.js"></script>
15
+ <link href="doxygen.css" rel="stylesheet" type="text/css" />
16
+ </head>
17
+ <body>
18
+ <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
19
+ <div id="titlearea">
20
+ <table cellspacing="0" cellpadding="0">
21
+ <tbody>
22
+ <tr style="height: 56px;">
23
+ <td id="projectalign" style="padding-left: 0.5em;">
24
+ <div id="projectname">Static Value-Flow Analysis
25
+ </div>
26
+ </td>
27
+ </tr>
28
+ </tbody>
29
+ </table>
30
+ </div>
31
+ <!-- end header part -->
32
+ <!-- Generated by Doxygen 1.8.13 -->
33
+ <script type="text/javascript">
34
+ var searchBox = new SearchBox("searchBox", "search",false,'Search');
35
+ </script>
36
+ <script type="text/javascript" src="menudata.js"></script>
37
+ <script type="text/javascript" src="menu.js"></script>
38
+ <script type="text/javascript">
39
+ $(function() {
40
+ initMenu('',true,false,'search.php','Search');
41
+ $(document).ready(function() { init_search(); });
42
+ });
43
+ </script>
44
+ <div id="main-nav"></div>
45
+ <!-- window showing the filter options -->
46
+ <div id="MSearchSelectWindow"
47
+ onmouseover="return searchBox.OnSearchSelectShow()"
48
+ onmouseout="return searchBox.OnSearchSelectHide()"
49
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
50
+ </div>
51
+
52
+ <!-- iframe showing the search results (closed by default) -->
53
+ <div id="MSearchResultsWindow">
54
+ <iframe src="javascript:void(0)" frameborder="0"
55
+ name="MSearchResults" id="MSearchResults">
56
+ </iframe>
57
+ </div>
58
+
59
+ <div id="nav-path" class="navpath">
60
+ <ul>
61
+ <li class="navelem"><a class="el" href="namespaceSVF.html">SVF</a></li><li class="navelem"><a class="el" href="namespaceSVF_1_1GraphProgram.html">GraphProgram</a></li> </ul>
62
+ </div>
63
+ </div><!-- top -->
64
+ <div class="header">
65
+ <div class="summary">
66
+ <a href="#enum-members">Enumerations</a> </div>
67
+ <div class="headertitle">
68
+ <div class="title">SVF::GraphProgram Namespace Reference</div> </div>
69
+ </div><!--header-->
70
+ <div class="contents">
71
+ <table class="memberdecls">
72
+ <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
73
+ Enumerations</h2></td></tr>
74
+ <tr class="memitem:a10f45758abb5c1ef51b0ba38d18efd37"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37">Name</a> { <br />
75
+ &#160;&#160;<a class="el" href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37ae09e3feb3996d73e682cf2a5077c090c">DOT</a>,
76
+ <a class="el" href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37ac3a20ad67d8b23a37a2c81ef793323a9">FDP</a>,
77
+ <a class="el" href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37a280cacd79d09366b6832ebc6e54b5a9c">NEATO</a>,
78
+ <a class="el" href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37ac6a6eaaa34322cf54953ba390895f0c5">TWOPI</a>,
79
+ <br />
80
+ &#160;&#160;<a class="el" href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37a88732178df8f5804ab976cc48e584674">CIRCO</a>
81
+ <br />
82
+ }</td></tr>
83
+ <tr class="separator:a10f45758abb5c1ef51b0ba38d18efd37"><td class="memSeparator" colspan="2">&#160;</td></tr>
84
+ </table>
85
+ <h2 class="groupheader">Enumeration Type Documentation</h2>
86
+ <a id="a10f45758abb5c1ef51b0ba38d18efd37"></a>
87
+ <h2 class="memtitle"><span class="permalink"><a href="#a10f45758abb5c1ef51b0ba38d18efd37">&#9670;&nbsp;</a></span>Name</h2>
88
+
89
+ <div class="memitem">
90
+ <div class="memproto">
91
+ <table class="memname">
92
+ <tr>
93
+ <td class="memname">enum <a class="el" href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37">SVF::GraphProgram::Name</a></td>
94
+ </tr>
95
+ </table>
96
+ </div><div class="memdoc">
97
+ <table class="fieldtable">
98
+ <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a10f45758abb5c1ef51b0ba38d18efd37ae09e3feb3996d73e682cf2a5077c090c"></a>DOT&#160;</td><td class="fielddoc"></td></tr>
99
+ <tr><td class="fieldname"><a id="a10f45758abb5c1ef51b0ba38d18efd37ac3a20ad67d8b23a37a2c81ef793323a9"></a>FDP&#160;</td><td class="fielddoc"></td></tr>
100
+ <tr><td class="fieldname"><a id="a10f45758abb5c1ef51b0ba38d18efd37a280cacd79d09366b6832ebc6e54b5a9c"></a>NEATO&#160;</td><td class="fielddoc"></td></tr>
101
+ <tr><td class="fieldname"><a id="a10f45758abb5c1ef51b0ba38d18efd37ac6a6eaaa34322cf54953ba390895f0c5"></a>TWOPI&#160;</td><td class="fielddoc"></td></tr>
102
+ <tr><td class="fieldname"><a id="a10f45758abb5c1ef51b0ba38d18efd37a88732178df8f5804ab976cc48e584674"></a>CIRCO&#160;</td><td class="fielddoc"></td></tr>
103
+ </table>
104
+
105
+ <p class="definition">Definition at line <a class="el" href="GraphWriter_8h_source.html#l00050">50</a> of file <a class="el" href="GraphWriter_8h_source.html">GraphWriter.h</a>.</p>
106
+ <div class="fragment"><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;{</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37ae09e3feb3996d73e682cf2a5077c090c">DOT</a>,</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37ac3a20ad67d8b23a37a2c81ef793323a9">FDP</a>,</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37a280cacd79d09366b6832ebc6e54b5a9c">NEATO</a>,</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37ac6a6eaaa34322cf54953ba390895f0c5">TWOPI</a>,</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37a88732178df8f5804ab976cc48e584674">CIRCO</a></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;};</div><div class="ttc" id="namespaceSVF_1_1GraphProgram_html_a10f45758abb5c1ef51b0ba38d18efd37a88732178df8f5804ab976cc48e584674"><div class="ttname"><a href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37a88732178df8f5804ab976cc48e584674">SVF::GraphProgram::CIRCO</a></div><div class="ttdef"><b>Definition:</b> <a href="GraphWriter_8h_source.html#l00056">GraphWriter.h:56</a></div></div>
107
+ <div class="ttc" id="namespaceSVF_1_1GraphProgram_html_a10f45758abb5c1ef51b0ba38d18efd37ae09e3feb3996d73e682cf2a5077c090c"><div class="ttname"><a href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37ae09e3feb3996d73e682cf2a5077c090c">SVF::GraphProgram::DOT</a></div><div class="ttdef"><b>Definition:</b> <a href="GraphWriter_8h_source.html#l00052">GraphWriter.h:52</a></div></div>
108
+ <div class="ttc" id="namespaceSVF_1_1GraphProgram_html_a10f45758abb5c1ef51b0ba38d18efd37a280cacd79d09366b6832ebc6e54b5a9c"><div class="ttname"><a href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37a280cacd79d09366b6832ebc6e54b5a9c">SVF::GraphProgram::NEATO</a></div><div class="ttdef"><b>Definition:</b> <a href="GraphWriter_8h_source.html#l00054">GraphWriter.h:54</a></div></div>
109
+ <div class="ttc" id="namespaceSVF_1_1GraphProgram_html_a10f45758abb5c1ef51b0ba38d18efd37ac3a20ad67d8b23a37a2c81ef793323a9"><div class="ttname"><a href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37ac3a20ad67d8b23a37a2c81ef793323a9">SVF::GraphProgram::FDP</a></div><div class="ttdef"><b>Definition:</b> <a href="GraphWriter_8h_source.html#l00053">GraphWriter.h:53</a></div></div>
110
+ <div class="ttc" id="namespaceSVF_1_1GraphProgram_html_a10f45758abb5c1ef51b0ba38d18efd37ac6a6eaaa34322cf54953ba390895f0c5"><div class="ttname"><a href="namespaceSVF_1_1GraphProgram.html#a10f45758abb5c1ef51b0ba38d18efd37ac6a6eaaa34322cf54953ba390895f0c5">SVF::GraphProgram::TWOPI</a></div><div class="ttdef"><b>Definition:</b> <a href="GraphWriter_8h_source.html#l00055">GraphWriter.h:55</a></div></div>
111
+ </div><!-- fragment -->
112
+ </div>
113
+ </div>
114
+ </div><!-- contents -->
115
+ <!-- start footer part -->
116
+ <hr class="footer"/><address class="footer"><small>
117
+ Generated by &#160;<a href="http://www.doxygen.org/index.html">
118
+ <img class="footer" src="doxygen.png" alt="doxygen"/>
119
+ </a> 1.8.13
120
+ </small></address>
121
+ </body>
122
+ </html>
@@ -167,6 +167,12 @@ Functions</h2></td></tr>
167
167
  <tr class="memitem:a9e0c786488dfdc4605d4cbcf9943c85a"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF_1_1LLVMUtil.html#a9e0c786488dfdc4605d4cbcf9943c85a">getGlobalRep</a> (const <a class="el" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a> *val)</td></tr>
168
168
  <tr class="memdesc:a9e0c786488dfdc4605d4cbcf9943c85a"><td class="mdescLeft">&#160;</td><td class="mdescRight">find the unique defined global across multiple modules <a href="#a9e0c786488dfdc4605d4cbcf9943c85a">More...</a><br /></td></tr>
169
169
  <tr class="separator:a9e0c786488dfdc4605d4cbcf9943c85a"><td class="memSeparator" colspan="2">&#160;</td></tr>
170
+ <tr class="memitem:ad8ee8de153df3f1bbdebb67185a2731c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF_1_1LLVMUtil.html#ad8ee8de153df3f1bbdebb67185a2731c">isConstantObjSym</a> (const <a class="el" href="classSVF_1_1SVFValue.html">SVFValue</a> *val)</td></tr>
171
+ <tr class="memdesc:ad8ee8de153df3f1bbdebb67185a2731c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check whether this value points-to a constant object. <a href="#ad8ee8de153df3f1bbdebb67185a2731c">More...</a><br /></td></tr>
172
+ <tr class="separator:ad8ee8de153df3f1bbdebb67185a2731c"><td class="memSeparator" colspan="2">&#160;</td></tr>
173
+ <tr class="memitem:a2fd5c626b818ac22a9c845227e1461c4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF_1_1LLVMUtil.html#a2fd5c626b818ac22a9c845227e1461c4">isConstantObjSym</a> (const <a class="el" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a> *val)</td></tr>
174
+ <tr class="memdesc:a2fd5c626b818ac22a9c845227e1461c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check whether this value points-to a constant object. <a href="#a2fd5c626b818ac22a9c845227e1461c4">More...</a><br /></td></tr>
175
+ <tr class="separator:a2fd5c626b818ac22a9c845227e1461c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
170
176
  <tr class="memitem:abc9c437b7da5cfe3d988dadfcbd0635f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF_1_1LLVMUtil.html#abc9c437b7da5cfe3d988dadfcbd0635f">viewCFG</a> (const <a class="el" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *fun)</td></tr>
171
177
  <tr class="separator:abc9c437b7da5cfe3d988dadfcbd0635f"><td class="memSeparator" colspan="2">&#160;</td></tr>
172
178
  <tr class="memitem:a2abbe4ed46b2031a981d93b3ba9d3fbd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF_1_1LLVMUtil.html#a2abbe4ed46b2031a981d93b3ba9d3fbd">viewCFGOnly</a> (const <a class="el" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *fun)</td></tr>
@@ -302,8 +308,8 @@ Functions</h2></td></tr>
302
308
 
303
309
  <p class="definition">Definition at line <a class="el" href="LLVMUtil_8cpp_source.html#l00098">98</a> of file <a class="el" href="LLVMUtil_8cpp_source.html">LLVMUtil.cpp</a>.</p>
304
310
  <div class="fragment"><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;{</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* svffun = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFFunction(fun);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVFUtil::isExtCall</a>(svffun))</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; {</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">return</span> fun-&gt;<a class="code" href="classSVF_1_1SVFFunction.html#af264312f0020bde9151697bccfde3263">getReturnType</a>()-&gt;isVoidTy();</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; std::vector&lt;const BasicBlock*&gt; bbVec;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const BasicBlock*&gt;</a> visited;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; bbVec.push_back(&amp;fun-&gt;getEntryBlock());</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">while</span>(!bbVec.empty())</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; {</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>* bb = bbVec.back();</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; bbVec.pop_back();</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">for</span> (BasicBlock::const_iterator it = bb-&gt;begin(), eit = bb-&gt;end();</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; it != eit; ++it)</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; {</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">if</span>(SVFUtil::isa&lt;ReturnInst&gt;(*it))</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a3436a988bf80c021cd8022fb445b66d5">succ_const_iterator</a> sit = succ_begin(bb), esit = succ_end(bb);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; sit != esit; ++sit)</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="keyword">const</span> <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>* succbb = (*sit);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">if</span>(visited.find(succbb)==visited.end())</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; visited.insert(succbb);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; bbVec.push_back(succbb);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</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="comment">// if(isProgEntryFunction(fun)==false) {</span></div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment">// writeWrnMsg(fun-&gt;getName().str() + &quot; does not have return&quot;);</span></div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment">// }</span></div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a23bf614858f168b6ad76e0233cec9965"><div class="ttname"><a href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">SVF::BasicBlock</a></div><div class="ttdeci">llvm::BasicBlock BasicBlock</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00060">BasicTypes.h:60</a></div></div>
305
- <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="SVFValue_8h_source.html#l00266">SVFValue.h:266</a></div></div>
306
- <div class="ttc" id="classSVF_1_1SVFFunction_html_af264312f0020bde9151697bccfde3263"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#af264312f0020bde9151697bccfde3263">SVF::SVFFunction::getReturnType</a></div><div class="ttdeci">const SVFType * getReturnType() const</div><div class="ttdoc">Returns the FunctionType. </div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00355">SVFValue.h:355</a></div></div>
311
+ <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="SVFValue_8h_source.html#l00257">SVFValue.h:257</a></div></div>
312
+ <div class="ttc" id="classSVF_1_1SVFFunction_html_af264312f0020bde9151697bccfde3263"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#af264312f0020bde9151697bccfde3263">SVF::SVFFunction::getReturnType</a></div><div class="ttdeci">const SVFType * getReturnType() const</div><div class="ttdoc">Returns the FunctionType. </div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00346">SVFValue.h:346</a></div></div>
307
313
  <div class="ttc" id="namespaceSVF_html_a3436a988bf80c021cd8022fb445b66d5"><div class="ttname"><a href="namespaceSVF.html#a3436a988bf80c021cd8022fb445b66d5">SVF::succ_const_iterator</a></div><div class="ttdeci">llvm::succ_const_iterator succ_const_iterator</div><div class="ttdoc">LLVM Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00244">BasicTypes.h:244</a></div></div>
308
314
  <div class="ttc" id="namespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set&lt; Key, Hash, KeyEqual, Allocator &gt; Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00094">SVFType.h:94</a></div></div>
309
315
  <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#l00295">SVFUtil.h:295</a></div></div>
@@ -487,11 +493,11 @@ Functions</h2></td></tr>
487
493
 
488
494
  <p class="definition">Definition at line <a class="el" href="LLVMUtil_8cpp_source.html#l00062">62</a> of file <a class="el" href="LLVMUtil_8cpp_source.html">LLVMUtil.cpp</a>.</p>
489
495
  <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; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* svfFun = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFFunction(fun);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; assert(!<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVFUtil::isExtCall</a>(svfFun) &amp;&amp; <span class="stringliteral">&quot;The calling function cannot be an external function.&quot;</span>);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="comment">//initial DominatorTree</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="namespaceSVF.html#aecbb42b8e9d17fa0189c50dda9fd5fdd">DominatorTree</a> dt;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; dt.recalculate(const_cast&lt;Function&amp;&gt;(*fun));</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const BasicBlock*&gt;</a> visited;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; std::vector&lt;const BasicBlock*&gt; bbVec;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; bbVec.push_back(&amp;fun-&gt;getEntryBlock());</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">while</span>(!bbVec.empty())</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; {</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>* bb = bbVec.back();</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; bbVec.pop_back();</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFBasicBlock.html">SVFBasicBlock</a>* svfbb = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFBasicBlock(bb);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; reachableBBs.push_back(svfbb);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF.html#a827d09974dc7bf0849f96823cc2fee89">DomTreeNode</a> *dtNode = dt.getNode(const_cast&lt;BasicBlock*&gt;(bb)))</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; {</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">for</span> (DomTreeNode::iterator DI = dtNode-&gt;begin(), DE = dtNode-&gt;end();</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; DI != DE; ++DI)</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; {</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>* succbb = (*DI)-&gt;getBlock();</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">if</span>(visited.find(succbb)==visited.end())</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; visited.insert(succbb);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; bbVec.push_back(succbb);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; }</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; }</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a23bf614858f168b6ad76e0233cec9965"><div class="ttname"><a href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">SVF::BasicBlock</a></div><div class="ttdeci">llvm::BasicBlock BasicBlock</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00060">BasicTypes.h:60</a></div></div>
490
- <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="SVFValue_8h_source.html#l00266">SVFValue.h:266</a></div></div>
496
+ <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="SVFValue_8h_source.html#l00257">SVFValue.h:257</a></div></div>
491
497
  <div class="ttc" id="namespaceSVF_html_a827d09974dc7bf0849f96823cc2fee89"><div class="ttname"><a href="namespaceSVF.html#a827d09974dc7bf0849f96823cc2fee89">SVF::DomTreeNode</a></div><div class="ttdeci">llvm::DomTreeNode DomTreeNode</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00107">BasicTypes.h:107</a></div></div>
492
498
  <div class="ttc" id="namespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set&lt; Key, Hash, KeyEqual, Allocator &gt; Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00094">SVFType.h:94</a></div></div>
493
499
  <div class="ttc" id="namespaceSVF_html_aecbb42b8e9d17fa0189c50dda9fd5fdd"><div class="ttname"><a href="namespaceSVF.html#aecbb42b8e9d17fa0189c50dda9fd5fdd">SVF::DominatorTree</a></div><div class="ttdeci">llvm::DominatorTree DominatorTree</div><div class="ttdoc">LLVM Dominators. </div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00106">BasicTypes.h:106</a></div></div>
494
- <div class="ttc" id="classSVF_1_1SVFBasicBlock_html"><div class="ttname"><a href="classSVF_1_1SVFBasicBlock.html">SVF::SVFBasicBlock</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00480">SVFValue.h:480</a></div></div>
500
+ <div class="ttc" id="classSVF_1_1SVFBasicBlock_html"><div class="ttname"><a href="classSVF_1_1SVFBasicBlock.html">SVF::SVFBasicBlock</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00471">SVFValue.h:471</a></div></div>
495
501
  <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#l00295">SVFUtil.h:295</a></div></div>
496
502
  </div><!-- fragment -->
497
503
  </div>
@@ -619,7 +625,7 @@ Functions</h2></td></tr>
619
625
  <p>Get the next instructions following control flow. </p>
620
626
 
621
627
  <p class="definition">Definition at line <a class="el" href="LLVMUtil_8cpp_source.html#l00272">272</a> of file <a class="el" href="LLVMUtil_8cpp_source.html">LLVMUtil.cpp</a>.</p>
622
- <div class="fragment"><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;{</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">if</span> (!curInst-&gt;isTerminator())</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; {</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* nextInst = curInst-&gt;getNextNode();</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFInstruction.html">SVFInstruction</a>* svfNextInst = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFInstruction(nextInst);</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1LLVMUtil.html#a003b769751b93b94bdb011bd704cfde1">LLVMUtil::isIntrinsicInst</a>(nextInst))</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a3b2ca48c72fba877c6cb3d52e23704e3">getNextInsts</a>(nextInst, instList);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; instList.push_back(svfNextInst);</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; <span class="keywordflow">else</span></div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; {</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>* BB = curInst-&gt;getParent();</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="comment">// Visit all successors of BB in the CFG</span></div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a3436a988bf80c021cd8022fb445b66d5">succ_const_iterator</a> it = succ_begin(BB), ie = succ_end(BB); it != ie; ++it)</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; {</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* nextInst = &amp;((*it)-&gt;front());</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFInstruction.html">SVFInstruction</a>* svfNextInst = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFInstruction(nextInst);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1LLVMUtil.html#a003b769751b93b94bdb011bd704cfde1">LLVMUtil::isIntrinsicInst</a>(nextInst))</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a3b2ca48c72fba877c6cb3d52e23704e3">getNextInsts</a>(nextInst, instList);</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; instList.push_back(svfNextInst);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; }</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; }</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFInstruction_html"><div class="ttname"><a href="classSVF_1_1SVFInstruction.html">SVF::SVFInstruction</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00579">SVFValue.h:579</a></div></div>
628
+ <div class="fragment"><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;{</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">if</span> (!curInst-&gt;isTerminator())</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; {</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* nextInst = curInst-&gt;getNextNode();</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFInstruction.html">SVFInstruction</a>* svfNextInst = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFInstruction(nextInst);</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1LLVMUtil.html#a003b769751b93b94bdb011bd704cfde1">LLVMUtil::isIntrinsicInst</a>(nextInst))</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a3b2ca48c72fba877c6cb3d52e23704e3">getNextInsts</a>(nextInst, instList);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; instList.push_back(svfNextInst);</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; <span class="keywordflow">else</span></div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; {</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>* BB = curInst-&gt;getParent();</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="comment">// Visit all successors of BB in the CFG</span></div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a3436a988bf80c021cd8022fb445b66d5">succ_const_iterator</a> it = succ_begin(BB), ie = succ_end(BB); it != ie; ++it)</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; {</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* nextInst = &amp;((*it)-&gt;front());</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFInstruction.html">SVFInstruction</a>* svfNextInst = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFInstruction(nextInst);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1LLVMUtil.html#a003b769751b93b94bdb011bd704cfde1">LLVMUtil::isIntrinsicInst</a>(nextInst))</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a3b2ca48c72fba877c6cb3d52e23704e3">getNextInsts</a>(nextInst, instList);</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; instList.push_back(svfNextInst);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; }</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; }</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFInstruction_html"><div class="ttname"><a href="classSVF_1_1SVFInstruction.html">SVF::SVFInstruction</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00570">SVFValue.h:570</a></div></div>
623
629
  <div class="ttc" id="namespaceSVF_html_a23bf614858f168b6ad76e0233cec9965"><div class="ttname"><a href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">SVF::BasicBlock</a></div><div class="ttdeci">llvm::BasicBlock BasicBlock</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00060">BasicTypes.h:60</a></div></div>
624
630
  <div class="ttc" id="namespaceSVF_1_1LLVMUtil_html_a003b769751b93b94bdb011bd704cfde1"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a003b769751b93b94bdb011bd704cfde1">SVF::LLVMUtil::isIntrinsicInst</a></div><div class="ttdeci">bool isIntrinsicInst(const Instruction *inst)</div><div class="ttdoc">Return true if it is an intrinsic instruction. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00201">LLVMUtil.cpp:201</a></div></div>
625
631
  <div class="ttc" id="namespaceSVF_html_a3436a988bf80c021cd8022fb445b66d5"><div class="ttname"><a href="namespaceSVF.html#a3436a988bf80c021cd8022fb445b66d5">SVF::succ_const_iterator</a></div><div class="ttdeci">llvm::succ_const_iterator succ_const_iterator</div><div class="ttdoc">LLVM Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00244">BasicTypes.h:244</a></div></div>
@@ -694,7 +700,7 @@ Functions</h2></td></tr>
694
700
  <p>Get the previous instructions following control flow. </p>
695
701
 
696
702
  <p class="definition">Definition at line <a class="el" href="LLVMUtil_8cpp_source.html#l00301">301</a> of file <a class="el" href="LLVMUtil_8cpp_source.html">LLVMUtil.cpp</a>.</p>
697
- <div class="fragment"><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; <span class="keywordflow">if</span> (curInst != &amp;(curInst-&gt;getParent()-&gt;front()))</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* prevInst = curInst-&gt;getPrevNode();</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFInstruction.html">SVFInstruction</a>* svfPrevInst = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFInstruction(prevInst);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1LLVMUtil.html#a003b769751b93b94bdb011bd704cfde1">LLVMUtil::isIntrinsicInst</a>(prevInst))</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="namespaceSVF_1_1LLVMUtil.html#ae9ddfd95ec4a36537f582acad0262e70">getPrevInsts</a>(prevInst, instList);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; instList.push_back(svfPrevInst);</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; }</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; {</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>* BB = curInst-&gt;getParent();</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="comment">// Visit all successors of BB in the CFG</span></div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a5c943191dc4e242704943e5f594ae99e">const_pred_iterator</a> it = pred_begin(BB), ie = pred_end(BB); it != ie; ++it)</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; {</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* prevInst = &amp;((*it)-&gt;back());</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFInstruction.html">SVFInstruction</a>* svfPrevInst = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFInstruction(prevInst);</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1LLVMUtil.html#a003b769751b93b94bdb011bd704cfde1">LLVMUtil::isIntrinsicInst</a>(prevInst))</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <a class="code" href="namespaceSVF_1_1LLVMUtil.html#ae9ddfd95ec4a36537f582acad0262e70">getPrevInsts</a>(prevInst, instList);</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; instList.push_back(svfPrevInst);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; }</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; }</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFInstruction_html"><div class="ttname"><a href="classSVF_1_1SVFInstruction.html">SVF::SVFInstruction</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00579">SVFValue.h:579</a></div></div>
703
+ <div class="fragment"><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; <span class="keywordflow">if</span> (curInst != &amp;(curInst-&gt;getParent()-&gt;front()))</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* prevInst = curInst-&gt;getPrevNode();</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFInstruction.html">SVFInstruction</a>* svfPrevInst = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFInstruction(prevInst);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1LLVMUtil.html#a003b769751b93b94bdb011bd704cfde1">LLVMUtil::isIntrinsicInst</a>(prevInst))</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="namespaceSVF_1_1LLVMUtil.html#ae9ddfd95ec4a36537f582acad0262e70">getPrevInsts</a>(prevInst, instList);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; instList.push_back(svfPrevInst);</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; }</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; {</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>* BB = curInst-&gt;getParent();</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="comment">// Visit all successors of BB in the CFG</span></div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a5c943191dc4e242704943e5f594ae99e">const_pred_iterator</a> it = pred_begin(BB), ie = pred_end(BB); it != ie; ++it)</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; {</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* prevInst = &amp;((*it)-&gt;back());</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFInstruction.html">SVFInstruction</a>* svfPrevInst = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFInstruction(prevInst);</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1LLVMUtil.html#a003b769751b93b94bdb011bd704cfde1">LLVMUtil::isIntrinsicInst</a>(prevInst))</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <a class="code" href="namespaceSVF_1_1LLVMUtil.html#ae9ddfd95ec4a36537f582acad0262e70">getPrevInsts</a>(prevInst, instList);</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; instList.push_back(svfPrevInst);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; }</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; }</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFInstruction_html"><div class="ttname"><a href="classSVF_1_1SVFInstruction.html">SVF::SVFInstruction</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00570">SVFValue.h:570</a></div></div>
698
704
  <div class="ttc" id="namespaceSVF_html_a23bf614858f168b6ad76e0233cec9965"><div class="ttname"><a href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">SVF::BasicBlock</a></div><div class="ttdeci">llvm::BasicBlock BasicBlock</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00060">BasicTypes.h:60</a></div></div>
699
705
  <div class="ttc" id="namespaceSVF_1_1LLVMUtil_html_a003b769751b93b94bdb011bd704cfde1"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a003b769751b93b94bdb011bd704cfde1">SVF::LLVMUtil::isIntrinsicInst</a></div><div class="ttdeci">bool isIntrinsicInst(const Instruction *inst)</div><div class="ttdoc">Return true if it is an intrinsic instruction. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00201">LLVMUtil.cpp:201</a></div></div>
700
706
  <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="BasicTypes_8h_source.html#l00061">BasicTypes.h:61</a></div></div>
@@ -945,7 +951,7 @@ Functions</h2></td></tr>
945
951
  <p>Return the type of the object from a heap allocation </p>
946
952
 
947
953
  <p class="definition">Definition at line <a class="el" href="LLVMUtil_8cpp_source.html#l00353">353</a> of file <a class="el" href="LLVMUtil_8cpp_source.html">LLVMUtil.cpp</a>.</p>
948
- <div class="fragment"><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;{</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">PointerType</a>* <a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a> = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">PointerType</a>&gt;(inst-&gt;getType());</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFInstruction.html">SVFInstruction</a>* svfinst = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFInstruction(inst);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#ab2064cb70c76f399ce115f2621adea35">SVFUtil::isHeapAllocExtCallViaRet</a>(svfinst))</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; {</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* v = <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a837d19c740902c419206287bdb21273b">getUniqueUseViaCastInst</a>(inst))</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; {</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">PointerType</a>* newTy = SVFUtil::dyn_cast&lt;PointerType&gt;(v-&gt;getType()))</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; type = newTy;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; }</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; }</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#aedfa6e9216c6c788c26aef1967689b76">SVFUtil::isHeapAllocExtCallViaArg</a>(svfinst))</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; {</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs = <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a0095d23a9c9d5d62ec4a23c56824b5f0">LLVMUtil::getLLVMCallSite</a>(inst);</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordtype">int</span> arg_pos = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a73215bac62f1340a58f6c7f2ba9b0e7b">SVFUtil::getHeapAllocHoldingArgPosition</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a9815a5b31ac7dc21239d08e5b9f61106">SVFUtil::getSVFCallSite</a>(svfinst));</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* arg = cs-&gt;getArgOperand(arg_pos);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; type = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">PointerType</a>&gt;(arg-&gt;getType());</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; }</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; {</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; assert( <span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;not a heap allocation instruction?&quot;</span>);</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; }</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; assert(type &amp;&amp; <span class="stringliteral">&quot;not a pointer type?&quot;</span>);</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#abba4111230f6009bbf50518ee36a9870">getPtrElementType</a>(type);</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFInstruction_html"><div class="ttname"><a href="classSVF_1_1SVFInstruction.html">SVF::SVFInstruction</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00579">SVFValue.h:579</a></div></div>
954
+ <div class="fragment"><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;{</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">PointerType</a>* <a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a> = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">PointerType</a>&gt;(inst-&gt;getType());</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFInstruction.html">SVFInstruction</a>* svfinst = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFInstruction(inst);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#ab2064cb70c76f399ce115f2621adea35">SVFUtil::isHeapAllocExtCallViaRet</a>(svfinst))</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; {</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* v = <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a837d19c740902c419206287bdb21273b">getUniqueUseViaCastInst</a>(inst))</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; {</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">PointerType</a>* newTy = SVFUtil::dyn_cast&lt;PointerType&gt;(v-&gt;getType()))</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; type = newTy;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; }</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; }</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#aedfa6e9216c6c788c26aef1967689b76">SVFUtil::isHeapAllocExtCallViaArg</a>(svfinst))</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; {</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs = <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a0095d23a9c9d5d62ec4a23c56824b5f0">LLVMUtil::getLLVMCallSite</a>(inst);</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordtype">int</span> arg_pos = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a73215bac62f1340a58f6c7f2ba9b0e7b">SVFUtil::getHeapAllocHoldingArgPosition</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a9815a5b31ac7dc21239d08e5b9f61106">SVFUtil::getSVFCallSite</a>(svfinst));</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* arg = cs-&gt;getArgOperand(arg_pos);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; type = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">PointerType</a>&gt;(arg-&gt;getType());</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; }</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; {</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; assert( <span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;not a heap allocation instruction?&quot;</span>);</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; }</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; assert(type &amp;&amp; <span class="stringliteral">&quot;not a pointer type?&quot;</span>);</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#abba4111230f6009bbf50518ee36a9870">getPtrElementType</a>(type);</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFInstruction_html"><div class="ttname"><a href="classSVF_1_1SVFInstruction.html">SVF::SVFInstruction</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00570">SVFValue.h:570</a></div></div>
949
955
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a9815a5b31ac7dc21239d08e5b9f61106"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a9815a5b31ac7dc21239d08e5b9f61106">SVF::SVFUtil::getSVFCallSite</a></div><div class="ttdeci">CallSite getSVFCallSite(const SVFInstruction *inst)</div><div class="ttdoc">Return LLVM callsite given an instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00194">SVFUtil.h:194</a></div></div>
950
956
  <div class="ttc" id="namespaceSVF_1_1LLVMUtil_html_a0095d23a9c9d5d62ec4a23c56824b5f0"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a0095d23a9c9d5d62ec4a23c56824b5f0">SVF::LLVMUtil::getLLVMCallSite</a></div><div class="ttdeci">const CallBase * getLLVMCallSite(const Value *value)</div><div class="ttdoc">Return LLVM callsite given a value. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00071">LLVMUtil.h:71</a></div></div>
951
957
  <div class="ttc" id="namespaceSVF_html_aa962cc1d782cc46553251e96b64a754b"><div class="ttname"><a href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">SVF::PointerType</a></div><div class="ttdeci">llvm::PointerType PointerType</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00070">BasicTypes.h:70</a></div></div>
@@ -1256,6 +1262,58 @@ Functions</h2></td></tr>
1256
1262
  </div><!-- fragment -->
1257
1263
  </div>
1258
1264
  </div>
1265
+ <a id="ad8ee8de153df3f1bbdebb67185a2731c"></a>
1266
+ <h2 class="memtitle"><span class="permalink"><a href="#ad8ee8de153df3f1bbdebb67185a2731c">&#9670;&nbsp;</a></span>isConstantObjSym() <span class="overload">[1/2]</span></h2>
1267
+
1268
+ <div class="memitem">
1269
+ <div class="memproto">
1270
+ <table class="memname">
1271
+ <tr>
1272
+ <td class="memname">bool SVF::LLVMUtil::isConstantObjSym </td>
1273
+ <td>(</td>
1274
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SVFValue.html">SVFValue</a> *&#160;</td>
1275
+ <td class="paramname"><em>val</em></td><td>)</td>
1276
+ <td></td>
1277
+ </tr>
1278
+ </table>
1279
+ </div><div class="memdoc">
1280
+
1281
+ <p>Check whether this value points-to a constant object. </p>
1282
+
1283
+ <p class="definition">Definition at line <a class="el" href="LLVMUtil_8cpp_source.html#l00640">640</a> of file <a class="el" href="LLVMUtil_8cpp_source.html">LLVMUtil.cpp</a>.</p>
1284
+ <div class="fragment"><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160;{</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#ad8ee8de153df3f1bbdebb67185a2731c">isConstantObjSym</a>(LLVMModuleSet::getLLVMModuleSet()-&gt;getLLVMValue(val));</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1LLVMUtil_html_ad8ee8de153df3f1bbdebb67185a2731c"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#ad8ee8de153df3f1bbdebb67185a2731c">SVF::LLVMUtil::isConstantObjSym</a></div><div class="ttdeci">bool isConstantObjSym(const SVFValue *val)</div><div class="ttdoc">Check whether this value points-to a constant object. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00640">LLVMUtil.cpp:640</a></div></div>
1285
+ </div><!-- fragment -->
1286
+ </div>
1287
+ </div>
1288
+ <a id="a2fd5c626b818ac22a9c845227e1461c4"></a>
1289
+ <h2 class="memtitle"><span class="permalink"><a href="#a2fd5c626b818ac22a9c845227e1461c4">&#9670;&nbsp;</a></span>isConstantObjSym() <span class="overload">[2/2]</span></h2>
1290
+
1291
+ <div class="memitem">
1292
+ <div class="memproto">
1293
+ <table class="memname">
1294
+ <tr>
1295
+ <td class="memname">bool SVF::LLVMUtil::isConstantObjSym </td>
1296
+ <td>(</td>
1297
+ <td class="paramtype">const <a class="el" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a> *&#160;</td>
1298
+ <td class="paramname"><em>val</em></td><td>)</td>
1299
+ <td></td>
1300
+ </tr>
1301
+ </table>
1302
+ </div><div class="memdoc">
1303
+
1304
+ <p>Check whether this value points-to a constant object. </p>
1305
+ <p>Check whether this value points-to a constant object </p>
1306
+
1307
+ <p class="definition">Definition at line <a class="el" href="LLVMUtil_8cpp_source.html#l00648">648</a> of file <a class="el" href="LLVMUtil_8cpp_source.html">LLVMUtil.cpp</a>.</p>
1308
+ <div class="fragment"><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160;{</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a>* v = SVFUtil::dyn_cast&lt;GlobalVariable&gt;(val))</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; {</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1cppUtil.html#aeef0f5c6486379043a7d47b0635f2667">cppUtil::isValVtbl</a>(v))</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!v-&gt;hasInitializer())</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; {</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keywordflow">if</span>(v-&gt;isExternalLinkage(v-&gt;getLinkage()))</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; }</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; {</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <a class="code" href="classSVF_1_1StInfo.html">StInfo</a> *stInfo = LLVMModuleSet::getLLVMModuleSet()-&gt;getSVFType(v-&gt;getInitializer()-&gt;getType())-&gt;getTypeInfo();</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; <span class="keyword">const</span> std::vector&lt;const SVFType*&gt; &amp;fields = stInfo-&gt;<a class="code" href="classSVF_1_1StInfo.html#ac0a9f85f90524abfd519d3cd2ac95a56">getFlattenFieldTypes</a>();</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; <span class="keywordflow">for</span> (std::vector&lt;const SVFType*&gt;::const_iterator it = fields.begin(), eit = fields.end(); it != eit; ++it)</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; {</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFType.html">SVFType</a>* elemTy = *it;</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; assert(!SVFUtil::isa&lt;SVFFunctionType&gt;(elemTy) &amp;&amp; <span class="stringliteral">&quot;Initializer of a global is a function?&quot;</span>);</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keywordflow">if</span> (SVFUtil::isa&lt;SVFPointerType&gt;(elemTy))</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; }</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; <span class="keywordflow">return</span> v-&gt;isConstant();</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; }</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; }</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a8a77403306e97ab4cb31a56d38bba5be">LLVMUtil::isConstDataOrAggData</a>(val);</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a09f5fa3bc44bf53612a085e3a611cc4e"><div class="ttname"><a href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">SVF::GlobalVariable</a></div><div class="ttdeci">llvm::GlobalVariable GlobalVariable</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00103">BasicTypes.h:103</a></div></div>
1309
+ <div class="ttc" id="namespaceSVF_1_1LLVMUtil_html_a8a77403306e97ab4cb31a56d38bba5be"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a8a77403306e97ab4cb31a56d38bba5be">SVF::LLVMUtil::isConstDataOrAggData</a></div><div class="ttdeci">bool isConstDataOrAggData(const Value *val)</div><div class="ttdoc">Return true if the value refers to constant data, e.g., i32 0. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00374">LLVMUtil.h:374</a></div></div>
1310
+ <div class="ttc" id="classSVF_1_1StInfo_html_ac0a9f85f90524abfd519d3cd2ac95a56"><div class="ttname"><a href="classSVF_1_1StInfo.html#ac0a9f85f90524abfd519d3cd2ac95a56">SVF::StInfo::getFlattenFieldTypes</a></div><div class="ttdeci">std::vector&lt; const SVFType * &gt; &amp; getFlattenFieldTypes()</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00185">SVFType.h:185</a></div></div>
1311
+ <div class="ttc" id="namespaceSVF_1_1cppUtil_html_aeef0f5c6486379043a7d47b0635f2667"><div class="ttname"><a href="namespaceSVF_1_1cppUtil.html#aeef0f5c6486379043a7d47b0635f2667">SVF::cppUtil::isValVtbl</a></div><div class="ttdeci">bool isValVtbl(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="CPPUtil_8cpp_source.html#l00124">CPPUtil.cpp:124</a></div></div>
1312
+ <div class="ttc" id="classSVF_1_1SVFType_html"><div class="ttname"><a href="classSVF_1_1SVFType.html">SVF::SVFType</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00235">SVFType.h:235</a></div></div>
1313
+ <div class="ttc" id="classSVF_1_1StInfo_html"><div class="ttname"><a href="classSVF_1_1StInfo.html">SVF::StInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00131">SVFType.h:131</a></div></div>
1314
+ </div><!-- fragment -->
1315
+ </div>
1316
+ </div>
1259
1317
  <a id="a8a77403306e97ab4cb31a56d38bba5be"></a>
1260
1318
  <h2 class="memtitle"><span class="permalink"><a href="#a8a77403306e97ab4cb31a56d38bba5be">&#9670;&nbsp;</a></span>isConstDataOrAggData()</h2>
1261
1319