svf-tools 1.0.283 → 1.0.287

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 (483) hide show
  1. package/Dockerfile +8 -5
  2. package/LICENSE.TXT +6 -4
  3. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +1 -1
  4. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +2 -2
  5. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +8 -8
  6. package/SVF-doxygen/html/html/Andersen_8h_source.html +5 -5
  7. package/SVF-doxygen/html/html/BasicTypes_8h_source.html +2 -2
  8. package/SVF-doxygen/html/html/CHG_8cpp_source.html +5 -5
  9. package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +2 -2
  10. package/SVF-doxygen/html/html/ConditionalPT_8h.html +2 -0
  11. package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +57 -54
  12. package/SVF-doxygen/html/html/Conditions_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +1 -1
  14. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +6 -6
  15. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +4 -4
  16. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +1 -1
  17. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +1 -1
  18. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +3 -3
  19. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +3 -3
  20. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +2 -3
  21. package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +2 -2
  22. package/SVF-doxygen/html/html/ExternalPAG_8cpp_source.html +1 -1
  23. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +15 -15
  24. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +51 -51
  25. package/SVF-doxygen/html/html/FileChecker_8cpp_source.html +3 -3
  26. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +1 -1
  27. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +3 -3
  28. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +3 -3
  29. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +7 -7
  30. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +5 -5
  31. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +3 -3
  32. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +1 -1
  33. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +5 -5
  34. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
  35. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +1 -1
  36. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +6 -6
  37. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +2 -2
  38. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +4 -4
  39. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +1 -1
  40. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +7 -7
  41. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +3 -3
  42. package/SVF-doxygen/html/html/LocationSet_8h_source.html +3 -3
  43. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +2 -2
  44. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +7 -7
  45. package/SVF-doxygen/html/html/MHP_8cpp_source.html +3 -3
  46. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +5 -5
  47. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +1 -1
  48. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +1 -1
  49. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +7 -7
  50. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +5 -5
  51. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +3 -3
  52. package/SVF-doxygen/html/html/MTA_8cpp_source.html +1 -1
  53. package/SVF-doxygen/html/html/MemModel_8cpp_source.html +1 -1
  54. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +15 -15
  55. package/SVF-doxygen/html/html/MemPartition_8h_source.html +11 -11
  56. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +103 -34
  57. package/SVF-doxygen/html/html/MemRegion_8h.html +3 -3
  58. package/SVF-doxygen/html/html/MemRegion_8h_source.html +97 -109
  59. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +43 -42
  60. package/SVF-doxygen/html/html/MemSSA_8h_source.html +46 -47
  61. package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +3 -3
  62. package/SVF-doxygen/html/html/PAGBuilder_8cpp_source.html +5 -5
  63. package/SVF-doxygen/html/html/PAG_8cpp_source.html +3 -3
  64. package/SVF-doxygen/html/html/PCG_8cpp_source.html +2 -2
  65. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +2 -2
  66. package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +1 -1
  67. package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +29 -29
  68. package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +7 -7
  69. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp.html +2 -2
  70. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +19 -21
  71. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +81 -81
  72. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +9 -9
  73. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +1 -1
  74. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +8 -8
  75. package/SVF-doxygen/html/html/SVFGBuilder_8h.html +2 -1
  76. package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +20 -19
  77. package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +7 -7
  78. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +6 -6
  79. package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +8 -8
  80. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +4 -5
  81. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +22 -23
  82. package/SVF-doxygen/html/html/SVFG_8cpp.html +1 -0
  83. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +49 -48
  84. package/SVF-doxygen/html/html/SVFG_8h_source.html +13 -14
  85. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +1 -1
  86. package/SVF-doxygen/html/html/SVFUtil_8cpp.html +9 -8
  87. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +34 -33
  88. package/SVF-doxygen/html/html/SVFUtil_8h.html +14 -2
  89. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +43 -36
  90. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
  91. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp.html +1 -0
  92. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +13 -13
  93. package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +13 -13
  94. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +1 -1
  95. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +6 -6
  96. package/SVF-doxygen/html/html/TCT_8cpp_source.html +2 -2
  97. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +2 -2
  98. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +4 -4
  99. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +1 -1
  100. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +9 -9
  101. package/SVF-doxygen/html/html/VFG_8cpp_source.html +3 -3
  102. package/SVF-doxygen/html/html/VFG_8h_source.html +1 -1
  103. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +5 -5
  104. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +3 -3
  105. package/SVF-doxygen/html/html/annotated.html +30 -29
  106. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode-members.html +2 -2
  107. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +12 -12
  108. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode-members.html +2 -2
  109. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +11 -11
  110. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +1 -1
  111. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +1 -1
  112. package/SVF-doxygen/html/html/classSVF_1_1AddrPE.html +1 -1
  113. package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +58 -59
  114. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +19 -22
  115. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +48 -49
  116. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +9 -12
  117. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD-members.html +60 -61
  118. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +2 -5
  119. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD-members.html +63 -64
  120. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD.html +2 -5
  121. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD-members.html +59 -60
  122. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +2 -5
  123. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +63 -64
  124. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +5 -8
  125. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +67 -68
  126. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +2 -5
  127. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +3 -3
  128. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +58 -59
  129. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +2 -5
  130. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiffWithType-members.html +64 -65
  131. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiffWithType.html +4 -7
  132. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +2 -2
  133. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl-members.html +2 -2
  134. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +135 -138
  135. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPPE.html +1 -1
  136. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +3 -3
  137. package/SVF-doxygen/html/html/classSVF_1_1BranchCondManager.html +2 -2
  138. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +6 -6
  139. package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode.html +2 -2
  140. package/SVF-doxygen/html/html/classSVF_1_1CallCHI.html +2 -2
  141. package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +2 -2
  142. package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge-members.html +2 -2
  143. package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +7 -7
  144. package/SVF-doxygen/html/html/classSVF_1_1CallMU.html +2 -2
  145. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
  146. package/SVF-doxygen/html/html/classSVF_1_1CmpPE.html +1 -1
  147. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +3 -3
  148. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +115 -115
  149. package/SVF-doxygen/html/html/classSVF_1_1CondPointsToSet.html +116 -116
  150. package/SVF-doxygen/html/html/classSVF_1_1CondPointsToSet_1_1CondPtsSetIterator.html +35 -35
  151. package/SVF-doxygen/html/html/classSVF_1_1CondStdSet-members.html +27 -26
  152. package/SVF-doxygen/html/html/classSVF_1_1CondStdSet.html +56 -21
  153. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +10 -10
  154. package/SVF-doxygen/html/html/classSVF_1_1CopyPE.html +1 -1
  155. package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +1 -1
  156. package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +1 -1
  157. package/SVF-doxygen/html/html/classSVF_1_1CxtThreadStmt.html +1 -1
  158. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +1 -1
  159. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +1 -1
  160. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +3 -3
  161. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +2 -2
  162. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG-members.html +63 -62
  163. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +94 -92
  164. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +2 -2
  165. package/SVF-doxygen/html/html/classSVF_1_1EntryCHI.html +2 -2
  166. package/SVF-doxygen/html/html/classSVF_1_1ExternalPAG.html +1 -1
  167. package/SVF-doxygen/html/html/classSVF_1_1FIObjPN.html +1 -1
  168. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA-members.html +65 -66
  169. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +27 -30
  170. package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +4 -4
  171. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA-members.html +51 -52
  172. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +10 -13
  173. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive-members.html +62 -63
  174. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +38 -43
  175. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +7 -7
  176. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC-members.html +74 -75
  177. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +19 -22
  178. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode-members.html +2 -2
  179. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +10 -10
  180. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode-members.html +2 -2
  181. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +11 -11
  182. package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode.html +1 -1
  183. package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode.html +1 -1
  184. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +2 -2
  185. package/SVF-doxygen/html/html/classSVF_1_1GepObjPN.html +1 -1
  186. package/SVF-doxygen/html/html/classSVF_1_1GepPE.html +1 -1
  187. package/SVF-doxygen/html/html/classSVF_1_1GepValPN.html +1 -1
  188. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +7 -7
  189. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +7 -7
  190. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +1 -1
  191. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +3 -3
  192. package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge-members.html +3 -3
  193. package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +22 -22
  194. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG-members.html +71 -70
  195. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +88 -86
  196. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode-members.html +2 -2
  197. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +8 -8
  198. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  199. package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode.html +1 -1
  200. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG-members.html +71 -70
  201. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +126 -124
  202. package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge-members.html +2 -2
  203. package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +7 -7
  204. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode-members.html +2 -2
  205. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +8 -8
  206. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
  207. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +13 -13
  208. package/SVF-doxygen/html/html/classSVF_1_1LoadMU.html +2 -2
  209. package/SVF-doxygen/html/html/classSVF_1_1LoadPE.html +1 -1
  210. package/SVF-doxygen/html/html/classSVF_1_1LocSymTableInfo.html +1 -1
  211. package/SVF-doxygen/html/html/classSVF_1_1LocationSet-members.html +1 -1
  212. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +11 -11
  213. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +3 -3
  214. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +8 -8
  215. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +5 -5
  216. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator-members.html +76 -75
  217. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +515 -506
  218. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode-members.html +2 -2
  219. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +14 -14
  220. package/SVF-doxygen/html/html/classSVF_1_1MSSACHI.html +2 -2
  221. package/SVF-doxygen/html/html/classSVF_1_1MSSADEF.html +1 -1
  222. package/SVF-doxygen/html/html/classSVF_1_1MSSAMU.html +2 -2
  223. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHI.html +1 -1
  224. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode-members.html +2 -2
  225. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +12 -12
  226. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +2 -2
  227. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +4 -4
  228. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +14 -14
  229. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +120 -118
  230. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +3 -3
  231. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +3 -3
  232. package/SVF-doxygen/html/html/classSVF_1_1MemRegion-members.html +9 -10
  233. package/SVF-doxygen/html/html/classSVF_1_1MemRegion.html +38 -56
  234. package/SVF-doxygen/html/html/classSVF_1_1MemSSA-members.html +1 -1
  235. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +132 -132
  236. package/SVF-doxygen/html/html/classSVF_1_1MemSSADF.html +5 -5
  237. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +21 -21
  238. package/SVF-doxygen/html/html/classSVF_1_1MutableDFPTData.html +1 -1
  239. package/SVF-doxygen/html/html/classSVF_1_1MutablePTData.html +2 -2
  240. package/SVF-doxygen/html/html/classSVF_1_1NormalGepPE.html +1 -1
  241. package/SVF-doxygen/html/html/classSVF_1_1ObjPN.html +1 -1
  242. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilder.html +6 -6
  243. package/SVF-doxygen/html/html/classSVF_1_1PAGNode.html +1 -1
  244. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +2 -2
  245. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +3 -3
  246. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +1 -1
  247. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +2 -2
  248. package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +1 -1
  249. package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +3 -3
  250. package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +4 -4
  251. package/SVF-doxygen/html/html/classSVF_1_1PersistentIncDFPTData.html +2 -2
  252. package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +9 -9
  253. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache-members.html +28 -27
  254. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +144 -111
  255. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +22 -22
  256. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +1 -1
  257. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +5 -5
  258. package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode.html +1 -1
  259. package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge-members.html +2 -2
  260. package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +7 -7
  261. package/SVF-doxygen/html/html/classSVF_1_1RetMU.html +2 -2
  262. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
  263. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +4 -4
  264. package/SVF-doxygen/html/html/classSVF_1_1SVFG-members.html +4 -4
  265. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +70 -70
  266. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +37 -37
  267. package/SVF-doxygen/html/html/classSVF_1_1SVFGNodeLockSpan.html +23 -23
  268. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT-members.html +6 -6
  269. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +52 -52
  270. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +2 -2
  271. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +1 -1
  272. package/SVF-doxygen/html/html/classSVF_1_1SaberCheckerAPI.html +4 -4
  273. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder-members.html +3 -3
  274. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +58 -58
  275. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +1 -1
  276. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +52 -53
  277. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +6 -9
  278. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +2 -2
  279. package/SVF-doxygen/html/html/classSVF_1_1StoreCHI.html +2 -2
  280. package/SVF-doxygen/html/html/classSVF_1_1StorePE.html +1 -1
  281. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +5 -5
  282. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +2 -2
  283. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
  284. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
  285. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +3 -3
  286. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +4 -4
  287. package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge-members.html +2 -2
  288. package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +7 -7
  289. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +51 -52
  290. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +3 -6
  291. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +10 -10
  292. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPPE.html +1 -1
  293. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
  294. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +2 -2
  295. package/SVF-doxygen/html/html/classSVF_1_1ValPN.html +1 -1
  296. package/SVF-doxygen/html/html/classSVF_1_1VariantGepPE.html +1 -1
  297. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +82 -83
  298. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +14 -17
  299. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +1 -1
  300. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +7 -7
  301. package/SVF-doxygen/html/html/classes.html +93 -92
  302. package/SVF-doxygen/html/html/dir_63dba4c559aa5986900c35e27974bafc.html +83 -0
  303. package/SVF-doxygen/html/html/dir_97aefd0d527b934f1d99a682da8fe6a9.html +2 -0
  304. package/SVF-doxygen/html/html/dir_d1b325ac671111a54e189ae033ba710d.html +87 -0
  305. package/SVF-doxygen/html/html/dir_d44c64559bbebec7f509842c48db8b23.html +2 -0
  306. package/SVF-doxygen/html/html/fastcluster_8cpp.html +263 -0
  307. package/SVF-doxygen/html/html/fastcluster_8cpp_source.html +88 -0
  308. package/SVF-doxygen/html/html/fastcluster_8h.html +278 -0
  309. package/SVF-doxygen/html/html/fastcluster_8h_source.html +86 -0
  310. package/SVF-doxygen/html/html/fastcluster__R__dm_8cpp_8inc.html +79 -0
  311. package/SVF-doxygen/html/html/fastcluster__R__dm_8cpp_8inc_source.html +77 -0
  312. package/SVF-doxygen/html/html/fastcluster__dm_8cpp_8inc.html +89 -0
  313. package/SVF-doxygen/html/html/fastcluster__dm_8cpp_8inc_source.html +80 -0
  314. package/SVF-doxygen/html/html/files.html +220 -214
  315. package/SVF-doxygen/html/html/functions_a.html +11 -11
  316. package/SVF-doxygen/html/html/functions_c.html +35 -30
  317. package/SVF-doxygen/html/html/functions_e.html +4 -7
  318. package/SVF-doxygen/html/html/functions_f.html +17 -14
  319. package/SVF-doxygen/html/html/functions_func.html +11 -11
  320. package/SVF-doxygen/html/html/functions_func_c.html +25 -22
  321. package/SVF-doxygen/html/html/functions_func_g.html +35 -32
  322. package/SVF-doxygen/html/html/functions_func_h.html +1 -1
  323. package/SVF-doxygen/html/html/functions_func_i.html +1 -1
  324. package/SVF-doxygen/html/html/functions_func_m.html +2 -2
  325. package/SVF-doxygen/html/html/functions_func_o.html +5 -4
  326. package/SVF-doxygen/html/html/functions_func_p.html +1 -1
  327. package/SVF-doxygen/html/html/functions_func_s.html +1 -1
  328. package/SVF-doxygen/html/html/functions_g.html +33 -30
  329. package/SVF-doxygen/html/html/functions_h.html +1 -1
  330. package/SVF-doxygen/html/html/functions_i.html +5 -5
  331. package/SVF-doxygen/html/html/functions_l.html +1 -1
  332. package/SVF-doxygen/html/html/functions_m.html +2 -2
  333. package/SVF-doxygen/html/html/functions_n.html +1 -1
  334. package/SVF-doxygen/html/html/functions_o.html +12 -13
  335. package/SVF-doxygen/html/html/functions_p.html +17 -15
  336. package/SVF-doxygen/html/html/functions_r.html +1 -1
  337. package/SVF-doxygen/html/html/functions_s.html +10 -12
  338. package/SVF-doxygen/html/html/functions_t.html +3 -3
  339. package/SVF-doxygen/html/html/functions_type_c.html +1 -1
  340. package/SVF-doxygen/html/html/functions_type_e.html +0 -3
  341. package/SVF-doxygen/html/html/functions_type_f.html +4 -1
  342. package/SVF-doxygen/html/html/functions_type_l.html +1 -1
  343. package/SVF-doxygen/html/html/functions_type_n.html +1 -1
  344. package/SVF-doxygen/html/html/functions_type_p.html +3 -3
  345. package/SVF-doxygen/html/html/functions_type_s.html +1 -1
  346. package/SVF-doxygen/html/html/functions_u.html +3 -3
  347. package/SVF-doxygen/html/html/functions_v.html +3 -3
  348. package/SVF-doxygen/html/html/functions_vars_c.html +7 -7
  349. package/SVF-doxygen/html/html/functions_vars_f.html +3 -3
  350. package/SVF-doxygen/html/html/functions_vars_g.html +1 -1
  351. package/SVF-doxygen/html/html/functions_vars_i.html +1 -1
  352. package/SVF-doxygen/html/html/functions_vars_p.html +1 -1
  353. package/SVF-doxygen/html/html/globals_c.html +82 -74
  354. package/SVF-doxygen/html/html/globals_enum.html +3 -0
  355. package/SVF-doxygen/html/html/globals_eval.html +19 -0
  356. package/SVF-doxygen/html/html/globals_f.html +6 -3
  357. package/SVF-doxygen/html/html/globals_func_c.html +46 -38
  358. package/SVF-doxygen/html/html/globals_func_f.html +3 -0
  359. package/SVF-doxygen/html/html/globals_func_h.html +4 -0
  360. package/SVF-doxygen/html/html/globals_h.html +22 -0
  361. package/SVF-doxygen/html/html/globals_r.html +3 -3
  362. package/SVF-doxygen/html/html/globals_s.html +4 -6
  363. package/SVF-doxygen/html/html/hierarchy.html +167 -166
  364. package/SVF-doxygen/html/html/menudata.js +2 -0
  365. package/SVF-doxygen/html/html/namespaceSVF.html +3 -3
  366. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +250 -122
  367. package/SVF-doxygen/html/html/namespacemembers_c.html +3 -0
  368. package/SVF-doxygen/html/html/namespacemembers_e.html +3 -0
  369. package/SVF-doxygen/html/html/namespacemembers_func.html +23 -10
  370. package/SVF-doxygen/html/html/namespacemembers_m.html +3 -0
  371. package/SVF-doxygen/html/html/namespacemembers_p.html +4 -1
  372. package/SVF-doxygen/html/html/namespacemembers_type_e.html +3 -0
  373. package/SVF-doxygen/html/html/namespacemembers_type_p.html +1 -1
  374. package/SVF-doxygen/html/html/search/all_1.js +11 -11
  375. package/SVF-doxygen/html/html/search/all_10.js +12 -11
  376. package/SVF-doxygen/html/html/search/all_12.js +2 -2
  377. package/SVF-doxygen/html/html/search/all_13.js +12 -12
  378. package/SVF-doxygen/html/html/search/all_14.js +3 -3
  379. package/SVF-doxygen/html/html/search/all_15.js +1 -1
  380. package/SVF-doxygen/html/html/search/all_16.js +1 -1
  381. package/SVF-doxygen/html/html/search/all_3.js +17 -13
  382. package/SVF-doxygen/html/html/search/all_5.js +2 -1
  383. package/SVF-doxygen/html/html/search/all_6.js +11 -5
  384. package/SVF-doxygen/html/html/search/all_7.js +15 -14
  385. package/SVF-doxygen/html/html/search/all_8.js +9 -1
  386. package/SVF-doxygen/html/html/search/all_9.js +3 -3
  387. package/SVF-doxygen/html/html/search/all_c.js +1 -1
  388. package/SVF-doxygen/html/html/search/all_d.js +6 -5
  389. package/SVF-doxygen/html/html/search/all_e.js +3 -3
  390. package/SVF-doxygen/html/html/search/all_f.js +3 -3
  391. package/SVF-doxygen/html/html/search/classes_4.js +2 -1
  392. package/SVF-doxygen/html/html/search/classes_7.js +1 -0
  393. package/SVF-doxygen/html/html/search/enums_4.js +1 -2
  394. package/SVF-doxygen/html/html/search/enums_5.js +2 -2
  395. package/SVF-doxygen/html/html/search/enums_6.js +2 -3
  396. package/SVF-doxygen/html/html/search/enums_7.js +3 -6
  397. package/SVF-doxygen/html/html/search/enums_8.js +6 -1
  398. package/SVF-doxygen/html/html/search/enums_9.js +1 -5
  399. package/SVF-doxygen/html/html/search/enums_a.js +5 -1
  400. package/SVF-doxygen/html/html/search/enums_b.js +1 -4
  401. package/SVF-doxygen/html/html/search/enums_c.html +26 -0
  402. package/SVF-doxygen/html/html/search/enums_c.js +7 -0
  403. package/SVF-doxygen/html/html/search/enumvalues_7.js +5 -0
  404. package/SVF-doxygen/html/html/search/files_5.js +4 -0
  405. package/SVF-doxygen/html/html/search/functions_0.js +11 -11
  406. package/SVF-doxygen/html/html/search/functions_10.js +2 -2
  407. package/SVF-doxygen/html/html/search/functions_2.js +10 -6
  408. package/SVF-doxygen/html/html/search/functions_5.js +1 -0
  409. package/SVF-doxygen/html/html/search/functions_6.js +14 -13
  410. package/SVF-doxygen/html/html/search/functions_7.js +2 -1
  411. package/SVF-doxygen/html/html/search/functions_8.js +1 -1
  412. package/SVF-doxygen/html/html/search/functions_b.js +3 -2
  413. package/SVF-doxygen/html/html/search/functions_d.js +1 -1
  414. package/SVF-doxygen/html/html/search/functions_e.js +2 -1
  415. package/SVF-doxygen/html/html/search/searchdata.js +1 -1
  416. package/SVF-doxygen/html/html/search/typedefs_11.js +1 -1
  417. package/SVF-doxygen/html/html/search/typedefs_2.js +1 -1
  418. package/SVF-doxygen/html/html/search/typedefs_4.js +2 -1
  419. package/SVF-doxygen/html/html/search/typedefs_5.js +2 -1
  420. package/SVF-doxygen/html/html/search/typedefs_b.js +1 -1
  421. package/SVF-doxygen/html/html/search/typedefs_d.js +1 -1
  422. package/SVF-doxygen/html/html/search/typedefs_f.js +3 -3
  423. package/SVF-doxygen/html/html/search/variables_10.js +1 -1
  424. package/SVF-doxygen/html/html/search/variables_14.js +2 -2
  425. package/SVF-doxygen/html/html/search/variables_3.js +6 -6
  426. package/SVF-doxygen/html/html/search/variables_6.js +3 -3
  427. package/SVF-doxygen/html/html/search/variables_7.js +1 -1
  428. package/SVF-doxygen/html/html/search/variables_9.js +1 -1
  429. package/SVF-doxygen/html/html/search/variables_d.js +2 -2
  430. package/SVF-doxygen/html/html/structSVF_1_1MemRegion_1_1equalMemRegion.html +3 -3
  431. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1equalNodeBS-members.html +81 -0
  432. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1equalNodeBS.html +134 -0
  433. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1equalPointsTo.html +3 -3
  434. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  435. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +1 -1
  436. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01PAG_01_5_01_4.html +1 -1
  437. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CondStdSet_3_01Element_01_4_01_4-members.html +81 -0
  438. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CondStdSet_3_01Element_01_4_01_4.html +131 -0
  439. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CondVar_3_01Cond_01_4_01_4.html +3 -3
  440. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SVFGNodeLockSpan_01_4.html +3 -3
  441. package/SVF-doxygen/html/html/structstd_1_1hash_3_01const_01SVF_1_1CondVar_3_01Cond_01_4_01_4.html +3 -3
  442. package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
  443. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  444. package/include/DDA/DDAVFSolver.h +1 -1
  445. package/include/FastCluster/LICENSE.TXT +13 -0
  446. package/include/FastCluster/fastcluster.h +79 -0
  447. package/include/Graphs/SVFG.h +4 -4
  448. package/include/Graphs/SVFGEdge.h +3 -3
  449. package/include/Graphs/SVFGNode.h +2 -2
  450. package/include/Graphs/SVFGOPT.h +4 -4
  451. package/include/MSSA/MemPartition.h +10 -10
  452. package/include/MSSA/MemRegion.h +40 -64
  453. package/include/MSSA/MemSSA.h +1 -4
  454. package/include/MSSA/SVFGBuilder.h +1 -0
  455. package/include/MTA/FSMPTA.h +1 -0
  456. package/include/MemoryModel/ConditionalPT.h +21 -5
  457. package/include/MemoryModel/LocationSet.h +3 -3
  458. package/include/MemoryModel/PersistentPointsToCache.h +19 -8
  459. package/include/MemoryModel/PointerAnalysisImpl.h +3 -4
  460. package/include/SABER/SaberSVFGBuilder.h +3 -3
  461. package/include/Util/SVFUtil.h +44 -1
  462. package/lib/CMakeLists.txt +4 -1
  463. package/lib/FastCluster/LICENSE.TXT +13 -0
  464. package/lib/FastCluster/fastcluster.cpp +170 -0
  465. package/lib/FastCluster/fastcluster_R_dm.cpp.inc +115 -0
  466. package/lib/FastCluster/fastcluster_dm.cpp.inc +1795 -0
  467. package/lib/Graphs/SVFG.cpp +12 -12
  468. package/lib/Graphs/SVFGOPT.cpp +6 -6
  469. package/lib/Graphs/SVFGStat.cpp +1 -1
  470. package/lib/Graphs/ThreadCallGraph.cpp +4 -4
  471. package/lib/MSSA/MemPartition.cpp +31 -31
  472. package/lib/MSSA/MemRegion.cpp +59 -35
  473. package/lib/MSSA/MemSSA.cpp +5 -0
  474. package/lib/MTA/FSMPTA.cpp +7 -7
  475. package/lib/MemoryModel/LocationSet.cpp +2 -2
  476. package/lib/MemoryModel/PointerAnalysis.cpp +1 -1
  477. package/lib/MemoryModel/PointerAnalysisImpl.cpp +1 -4
  478. package/lib/SABER/SaberSVFGBuilder.cpp +2 -1
  479. package/lib/Util/SVFUtil.cpp +3 -2
  480. package/lib/WPA/FlowSensitive.cpp +2 -2
  481. package/lib/WPA/FlowSensitiveTBHC.cpp +2 -2
  482. package/lib/WPA/VersionedFlowSensitive.cpp +1 -1
  483. package/package.json +1 -1
@@ -477,7 +477,7 @@ Additional Inherited Members</h2></td></tr>
477
477
  </ul>
478
478
 
479
479
  <p class="definition">Definition at line <a class="el" href="ICFG_8cpp_source.html#l00172">172</a> of file <a class="el" href="ICFG_8cpp_source.html">ICFG.cpp</a>.</p>
480
- <div class="fragment"><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; : <a class="code" href="classSVF_1_1ICFG.html#a5df6061b65d021cd73c66592ec79f052">totalICFGNode</a>(0)</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;{</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a>, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">pasMsg</a>(<span class="stringliteral">&quot;\tCreate ICFG ...\n&quot;</span>));</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="classSVF_1_1ICFG.html#a37ec47cd95cf25b18720c4267a9fd40c">globalBlockNode</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1GlobalBlockNode.html">GlobalBlockNode</a>(<a class="code" href="classSVF_1_1ICFG.html#a5df6061b65d021cd73c66592ec79f052">totalICFGNode</a>++);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="classSVF_1_1ICFG.html#a15816a82d8c33a066009440dce6ee973">addICFGNode</a>(<a class="code" href="classSVF_1_1ICFG.html#a37ec47cd95cf25b18720c4267a9fd40c">globalBlockNode</a>);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a609eea630a8f88fe9eaba15ce7e48738"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">SVF::SVFUtil::pasMsg</a></div><div class="ttdeci">std::string pasMsg(std::string msg)</div><div class="ttdoc">Print each pass/phase message by converting a string into blue string output. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00098">SVFUtil.cpp:98</a></div></div>
480
+ <div class="fragment"><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; : <a class="code" href="classSVF_1_1ICFG.html#a5df6061b65d021cd73c66592ec79f052">totalICFGNode</a>(0)</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;{</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a>, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">pasMsg</a>(<span class="stringliteral">&quot;\tCreate ICFG ...\n&quot;</span>));</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="classSVF_1_1ICFG.html#a37ec47cd95cf25b18720c4267a9fd40c">globalBlockNode</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1GlobalBlockNode.html">GlobalBlockNode</a>(<a class="code" href="classSVF_1_1ICFG.html#a5df6061b65d021cd73c66592ec79f052">totalICFGNode</a>++);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="classSVF_1_1ICFG.html#a15816a82d8c33a066009440dce6ee973">addICFGNode</a>(<a class="code" href="classSVF_1_1ICFG.html#a37ec47cd95cf25b18720c4267a9fd40c">globalBlockNode</a>);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a609eea630a8f88fe9eaba15ce7e48738"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">SVF::SVFUtil::pasMsg</a></div><div class="ttdeci">std::string pasMsg(std::string msg)</div><div class="ttdoc">Print each pass/phase message by converting a string into blue string output. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00100">SVFUtil.cpp:100</a></div></div>
481
481
  <div class="ttc" id="classSVF_1_1ICFG_html_a5df6061b65d021cd73c66592ec79f052"><div class="ttname"><a href="classSVF_1_1ICFG.html#a5df6061b65d021cd73c66592ec79f052">SVF::ICFG::totalICFGNode</a></div><div class="ttdeci">NodeID totalICFGNode</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00062">ICFG.h:62</a></div></div>
482
482
  <div class="ttc" id="classSVF_1_1GlobalBlockNode_html"><div class="ttname"><a href="classSVF_1_1GlobalBlockNode.html">SVF::GlobalBlockNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00142">ICFGNode.h:142</a></div></div>
483
483
  <div class="ttc" id="classSVF_1_1ICFG_html_a37ec47cd95cf25b18720c4267a9fd40c"><div class="ttname"><a href="classSVF_1_1ICFG.html#a37ec47cd95cf25b18720c4267a9fd40c">SVF::ICFG::globalBlockNode</a></div><div class="ttdeci">GlobalBlockNode * globalBlockNode</div><div class="ttdoc">unique basic block for all globals </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00070">ICFG.h:70</a></div></div>
@@ -1011,12 +1011,12 @@ Additional Inherited Members</h2></td></tr>
1011
1011
  <p>Get a basic block <a class="el" href="classSVF_1_1ICFGNode.html">ICFGNode</a> TODO:: need to fix the assertions </p>
1012
1012
 
1013
1013
  <p class="definition">Definition at line <a class="el" href="ICFG_8cpp_source.html#l00181">181</a> of file <a class="el" href="ICFG_8cpp_source.html">ICFG.cpp</a>.</p>
1014
- <div class="fragment"><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;{</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* node;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVFUtil::isNonInstricCallSite</a>(inst))</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; node = <a class="code" href="classSVF_1_1ICFG.html#a7d10e8a815c836a070d35850f817a18c">getCallBlockNode</a>(inst);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#ab7f58caf27c30a1d414e06f60ca84d80">SVFUtil::isIntrinsicInst</a>(inst))</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; node = <a class="code" href="classSVF_1_1ICFG.html#a485fcd76a8a864c9b686e68a3ca66dfc">getIntraBlockNode</a>(inst);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="comment">// assert (false &amp;&amp; &quot;associating an intrinsic instruction with an ICFGNode!&quot;);</span></div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; node = <a class="code" href="classSVF_1_1ICFG.html#a485fcd76a8a864c9b686e68a3ca66dfc">getIntraBlockNode</a>(inst);</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a> (node!=<span class="keyword">nullptr</span> &amp;&amp; <span class="stringliteral">&quot;no ICFGNode for this instruction?&quot;</span>);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">return</span> node;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_ab7f58caf27c30a1d414e06f60ca84d80"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#ab7f58caf27c30a1d414e06f60ca84d80">SVF::SVFUtil::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="SVFUtil_8h_source.html#l00144">SVFUtil.h:144</a></div></div>
1014
+ <div class="fragment"><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;{</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* node;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVFUtil::isNonInstricCallSite</a>(inst))</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; node = <a class="code" href="classSVF_1_1ICFG.html#a7d10e8a815c836a070d35850f817a18c">getCallBlockNode</a>(inst);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#ab7f58caf27c30a1d414e06f60ca84d80">SVFUtil::isIntrinsicInst</a>(inst))</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; node = <a class="code" href="classSVF_1_1ICFG.html#a485fcd76a8a864c9b686e68a3ca66dfc">getIntraBlockNode</a>(inst);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="comment">// assert (false &amp;&amp; &quot;associating an intrinsic instruction with an ICFGNode!&quot;);</span></div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; node = <a class="code" href="classSVF_1_1ICFG.html#a485fcd76a8a864c9b686e68a3ca66dfc">getIntraBlockNode</a>(inst);</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a> (node!=<span class="keyword">nullptr</span> &amp;&amp; <span class="stringliteral">&quot;no ICFGNode for this instruction?&quot;</span>);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">return</span> node;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_ab7f58caf27c30a1d414e06f60ca84d80"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#ab7f58caf27c30a1d414e06f60ca84d80">SVF::SVFUtil::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="SVFUtil_8h_source.html#l00177">SVFUtil.h:177</a></div></div>
1015
1015
  <div class="ttc" id="classSVF_1_1ICFG_html_a7d10e8a815c836a070d35850f817a18c"><div class="ttname"><a href="classSVF_1_1ICFG.html#a7d10e8a815c836a070d35850f817a18c">SVF::ICFG::getCallBlockNode</a></div><div class="ttdeci">CallBlockNode * getCallBlockNode(const Instruction *inst)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00197">ICFG.cpp:197</a></div></div>
1016
1016
  <div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
1017
1017
  <div class="ttc" id="classSVF_1_1ICFGNode_html"><div class="ttname"><a href="classSVF_1_1ICFGNode.html">SVF::ICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00054">ICFGNode.h:54</a></div></div>
1018
1018
  <div class="ttc" id="classSVF_1_1ICFG_html_a485fcd76a8a864c9b686e68a3ca66dfc"><div class="ttname"><a href="classSVF_1_1ICFG.html#a485fcd76a8a864c9b686e68a3ca66dfc">SVF::ICFG::getIntraBlockNode</a></div><div class="ttdeci">IntraBlockNode * getIntraBlockNode(const Instruction *inst)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00221">ICFG.cpp:221</a></div></div>
1019
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00170">SVFUtil.h:170</a></div></div>
1019
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00203">SVFUtil.h:203</a></div></div>
1020
1020
  </div><!-- fragment -->
1021
1021
  </div>
1022
1022
  </div>
@@ -1037,11 +1037,11 @@ Additional Inherited Members</h2></td></tr>
1037
1037
  </div><div class="memdoc">
1038
1038
 
1039
1039
  <p class="definition">Definition at line <a class="el" href="ICFG_8cpp_source.html#l00197">197</a> of file <a class="el" href="ICFG_8cpp_source.html">ICFG.cpp</a>.</p>
1040
- <div class="fragment"><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;{</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVFUtil::isCallSite</a>(inst) ==<span class="keyword">false</span>)</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() &lt;&lt; *inst &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVFUtil::isCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;not a call instruction?&quot;</span>);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVFUtil::isNonInstricCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;associating an intrinsic debug instruction with an ICFGNode!&quot;</span>);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <a class="code" href="classSVF_1_1CallBlockNode.html">CallBlockNode</a>* node = <a class="code" href="classSVF_1_1ICFG.html#a288c5cc9fb6595d367f23d1c0c05a57a">getCallICFGNode</a>(inst);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">if</span>(node==<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; node = <a class="code" href="classSVF_1_1ICFG.html#ac069357c3f5140fcb0d6163c944638fd">addCallICFGNode</a>(inst);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a> (node!=<span class="keyword">nullptr</span> &amp;&amp; <span class="stringliteral">&quot;no CallBlockNode for this instruction?&quot;</span>);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">return</span> node;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a2e08ce822223842fa6a73fd659b1a526"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVF::SVFUtil::isCallSite</a></div><div class="ttdeci">bool isCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a call or invoke instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00157">SVFUtil.h:157</a></div></div>
1040
+ <div class="fragment"><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;{</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVFUtil::isCallSite</a>(inst) ==<span class="keyword">false</span>)</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() &lt;&lt; *inst &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVFUtil::isCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;not a call instruction?&quot;</span>);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVFUtil::isNonInstricCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;associating an intrinsic debug instruction with an ICFGNode!&quot;</span>);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <a class="code" href="classSVF_1_1CallBlockNode.html">CallBlockNode</a>* node = <a class="code" href="classSVF_1_1ICFG.html#a288c5cc9fb6595d367f23d1c0c05a57a">getCallICFGNode</a>(inst);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">if</span>(node==<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; node = <a class="code" href="classSVF_1_1ICFG.html#ac069357c3f5140fcb0d6163c944638fd">addCallICFGNode</a>(inst);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a> (node!=<span class="keyword">nullptr</span> &amp;&amp; <span class="stringliteral">&quot;no CallBlockNode for this instruction?&quot;</span>);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">return</span> node;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a2e08ce822223842fa6a73fd659b1a526"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVF::SVFUtil::isCallSite</a></div><div class="ttdeci">bool isCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a call or invoke instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00190">SVFUtil.h:190</a></div></div>
1041
1041
  <div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
1042
1042
  <div class="ttc" id="classSVF_1_1ICFG_html_a288c5cc9fb6595d367f23d1c0c05a57a"><div class="ttname"><a href="classSVF_1_1ICFG.html#a288c5cc9fb6595d367f23d1c0c05a57a">SVF::ICFG::getCallICFGNode</a></div><div class="ttdeci">CallBlockNode * getCallICFGNode(const Instruction *cs)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00240">ICFG.h:240</a></div></div>
1043
1043
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00047">SVFUtil.h:47</a></div></div>
1044
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00170">SVFUtil.h:170</a></div></div>
1044
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00203">SVFUtil.h:203</a></div></div>
1045
1045
  <div class="ttc" id="classSVF_1_1CallBlockNode_html"><div class="ttname"><a href="classSVF_1_1CallBlockNode.html">SVF::CallBlockNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00364">ICFGNode.h:364</a></div></div>
1046
1046
  <div class="ttc" id="classSVF_1_1ICFG_html_ac069357c3f5140fcb0d6163c944638fd"><div class="ttname"><a href="classSVF_1_1ICFG.html#ac069357c3f5140fcb0d6163c944638fd">SVF::ICFG::addCallICFGNode</a></div><div class="ttdeci">CallBlockNode * addCallICFGNode(const Instruction *cs)</div><div class="ttdoc">Get/Add a call node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00233">ICFG.h:233</a></div></div>
1047
1047
  </div><!-- fragment -->
@@ -1363,12 +1363,12 @@ Additional Inherited Members</h2></td></tr>
1363
1363
  </div><div class="memdoc">
1364
1364
 
1365
1365
  <p class="definition">Definition at line <a class="el" href="ICFG_8cpp_source.html#l00210">210</a> of file <a class="el" href="ICFG_8cpp_source.html">ICFG.cpp</a>.</p>
1366
- <div class="fragment"><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;{</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVFUtil::isCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;not a call instruction?&quot;</span>);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVFUtil::isNonInstricCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;associating an intrinsic debug instruction with an ICFGNode!&quot;</span>);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <a class="code" href="classSVF_1_1RetBlockNode.html">RetBlockNode</a>* node = <a class="code" href="classSVF_1_1ICFG.html#ae3bd3bf29b3dac286b93be22cbb60b2c">getRetICFGNode</a>(inst);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">if</span>(node==<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; node = <a class="code" href="classSVF_1_1ICFG.html#a45891a968511d4779288a1a0aa089619">addRetICFGNode</a>(inst);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a> (node!=<span class="keyword">nullptr</span> &amp;&amp; <span class="stringliteral">&quot;no RetBlockNode for this instruction?&quot;</span>);</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keywordflow">return</span> node;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a2e08ce822223842fa6a73fd659b1a526"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVF::SVFUtil::isCallSite</a></div><div class="ttdeci">bool isCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a call or invoke instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00157">SVFUtil.h:157</a></div></div>
1366
+ <div class="fragment"><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;{</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVFUtil::isCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;not a call instruction?&quot;</span>);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVFUtil::isNonInstricCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;associating an intrinsic debug instruction with an ICFGNode!&quot;</span>);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <a class="code" href="classSVF_1_1RetBlockNode.html">RetBlockNode</a>* node = <a class="code" href="classSVF_1_1ICFG.html#ae3bd3bf29b3dac286b93be22cbb60b2c">getRetICFGNode</a>(inst);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">if</span>(node==<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; node = <a class="code" href="classSVF_1_1ICFG.html#a45891a968511d4779288a1a0aa089619">addRetICFGNode</a>(inst);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a> (node!=<span class="keyword">nullptr</span> &amp;&amp; <span class="stringliteral">&quot;no RetBlockNode for this instruction?&quot;</span>);</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keywordflow">return</span> node;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a2e08ce822223842fa6a73fd659b1a526"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVF::SVFUtil::isCallSite</a></div><div class="ttdeci">bool isCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a call or invoke instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00190">SVFUtil.h:190</a></div></div>
1367
1367
  <div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
1368
1368
  <div class="ttc" id="classSVF_1_1ICFG_html_ae3bd3bf29b3dac286b93be22cbb60b2c"><div class="ttname"><a href="classSVF_1_1ICFG.html#ae3bd3bf29b3dac286b93be22cbb60b2c">SVF::ICFG::getRetICFGNode</a></div><div class="ttdeci">RetBlockNode * getRetICFGNode(const Instruction *cs)</div><div class="ttdoc">Get/Add a return node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00249">ICFG.h:249</a></div></div>
1369
1369
  <div class="ttc" id="classSVF_1_1RetBlockNode_html"><div class="ttname"><a href="classSVF_1_1RetBlockNode.html">SVF::RetBlockNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00459">ICFGNode.h:459</a></div></div>
1370
1370
  <div class="ttc" id="classSVF_1_1ICFG_html_a45891a968511d4779288a1a0aa089619"><div class="ttname"><a href="classSVF_1_1ICFG.html#a45891a968511d4779288a1a0aa089619">SVF::ICFG::addRetICFGNode</a></div><div class="ttdeci">RetBlockNode * addRetICFGNode(const Instruction *cs)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00256">ICFG.h:256</a></div></div>
1371
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00170">SVFUtil.h:170</a></div></div>
1371
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00203">SVFUtil.h:203</a></div></div>
1372
1372
  </div><!-- fragment -->
1373
1373
  </div>
1374
1374
  </div>
@@ -360,7 +360,7 @@ Private Attributes</h2></td></tr>
360
360
  <p class="definition">Definition at line <a class="el" href="ICFGBuilder_8h_source.html#l00075">75</a> of file <a class="el" href="ICFGBuilder_8h_source.html">ICFGBuilder.h</a>.</p>
361
361
  <div class="fragment"><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; {</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVFUtil::isNonInstricCallSite</a>(inst))</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ICFGBuilder.html#a1fe9bfb1f0cb64fba6b54d598b6d7a74">getOrAddInterBlockICFGNode</a>(inst);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ICFGBuilder.html#a28bcef712806344a3bcd664ef3d1e48b">getOrAddIntraBlockICFGNode</a>(inst);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; }</div><div class="ttc" id="classSVF_1_1ICFGBuilder_html_a28bcef712806344a3bcd664ef3d1e48b"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a28bcef712806344a3bcd664ef3d1e48b">SVF::ICFGBuilder::getOrAddIntraBlockICFGNode</a></div><div class="ttdeci">IntraBlockNode * getOrAddIntraBlockICFGNode(const Instruction *inst)</div><div class="ttdoc">Add and get IntraBlock ICFGNode. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00098">ICFGBuilder.h:98</a></div></div>
362
362
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_a1fe9bfb1f0cb64fba6b54d598b6d7a74"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a1fe9bfb1f0cb64fba6b54d598b6d7a74">SVF::ICFGBuilder::getOrAddInterBlockICFGNode</a></div><div class="ttdeci">InterBlockNode * getOrAddInterBlockICFGNode(const Instruction *inst)</div><div class="ttdoc">Add/Get an inter block ICFGNode. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8cpp_source.html#l00162">ICFGBuilder.cpp:162</a></div></div>
363
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00170">SVFUtil.h:170</a></div></div>
363
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00203">SVFUtil.h:203</a></div></div>
364
364
  </div><!-- fragment -->
365
365
  </div>
366
366
  </div>
@@ -424,11 +424,11 @@ Private Attributes</h2></td></tr>
424
424
  <p>(1) Add and get CallBlockICFGNode (2) Handle call instruction by creating interprocedural edges </p>
425
425
 
426
426
  <p class="definition">Definition at line <a class="el" href="ICFGBuilder_8cpp_source.html#l00162">162</a> of file <a class="el" href="ICFGBuilder_8cpp_source.html">ICFGBuilder.cpp</a>.</p>
427
- <div class="fragment"><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;{</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVFUtil::isCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;not a call instruction?&quot;</span>);</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVFUtil::isNonInstricCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;associating an intrinsic debug instruction with an ICFGNode!&quot;</span>);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="classSVF_1_1CallBlockNode.html">CallBlockNode</a>* callICFGNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#ae9958bebe253db187d403929bc508eac">getOrAddCallICFGNode</a>(inst);</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* callee = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">getCallee</a>(inst))</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#af1fb4795e58130d639b75c354f67a6ab">addICFGInterEdges</a>(inst, callee); <span class="comment">//creating interprocedural edges</span></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">return</span> callICFGNode;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a2e08ce822223842fa6a73fd659b1a526"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVF::SVFUtil::isCallSite</a></div><div class="ttdeci">bool isCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a call or invoke instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00157">SVFUtil.h:157</a></div></div>
427
+ <div class="fragment"><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;{</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVFUtil::isCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;not a call instruction?&quot;</span>);</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVFUtil::isNonInstricCallSite</a>(inst) &amp;&amp; <span class="stringliteral">&quot;associating an intrinsic debug instruction with an ICFGNode!&quot;</span>);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="classSVF_1_1CallBlockNode.html">CallBlockNode</a>* callICFGNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#ae9958bebe253db187d403929bc508eac">getOrAddCallICFGNode</a>(inst);</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* callee = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">getCallee</a>(inst))</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#af1fb4795e58130d639b75c354f67a6ab">addICFGInterEdges</a>(inst, callee); <span class="comment">//creating interprocedural edges</span></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">return</span> callICFGNode;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a2e08ce822223842fa6a73fd659b1a526"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVF::SVFUtil::isCallSite</a></div><div class="ttdeci">bool isCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a call or invoke instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00190">SVFUtil.h:190</a></div></div>
428
428
  <div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
429
429
  <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="BasicTypes_8h_source.html#l00233">BasicTypes.h:233</a></div></div>
430
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a145abbd2958629718fbca41d25c3124d"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">SVF::SVFUtil::getCallee</a></div><div class="ttdeci">const SVFFunction * getCallee(const CallSite cs)</div><div class="ttdoc">Return callee of a callsite. Return null if this is an indirect call. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00221">SVFUtil.h:221</a></div></div>
431
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00170">SVFUtil.h:170</a></div></div>
430
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a145abbd2958629718fbca41d25c3124d"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">SVF::SVFUtil::getCallee</a></div><div class="ttdeci">const SVFFunction * getCallee(const CallSite cs)</div><div class="ttdoc">Return callee of a callsite. Return null if this is an indirect call. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00254">SVFUtil.h:254</a></div></div>
431
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00203">SVFUtil.h:203</a></div></div>
432
432
  <div class="ttc" id="classSVF_1_1CallBlockNode_html"><div class="ttname"><a href="classSVF_1_1CallBlockNode.html">SVF::CallBlockNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00364">ICFGNode.h:364</a></div></div>
433
433
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_af1fb4795e58130d639b75c354f67a6ab"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#af1fb4795e58130d639b75c354f67a6ab">SVF::ICFGBuilder::addICFGInterEdges</a></div><div class="ttdeci">void addICFGInterEdges(const Instruction *cs, const SVFFunction *callee)</div><div class="ttdoc">Create edges between ICFG nodes across functions. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8cpp_source.html#l00175">ICFGBuilder.cpp:175</a></div></div>
434
434
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_ae9958bebe253db187d403929bc508eac"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#ae9958bebe253db187d403929bc508eac">SVF::ICFGBuilder::getOrAddCallICFGNode</a></div><div class="ttdeci">CallBlockNode * getOrAddCallICFGNode(const Instruction *cs)</div><div class="ttdoc">Add a call node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00087">ICFGBuilder.h:87</a></div></div>
@@ -543,8 +543,8 @@ Private Attributes</h2></td></tr>
543
543
  <div class="ttc" id="classSVF_1_1FunExitBlockNode_html"><div class="ttname"><a href="classSVF_1_1FunExitBlockNode.html">SVF::FunExitBlockNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00308">ICFGNode.h:308</a></div></div>
544
544
  <div class="ttc" id="namespaceSVF_html_a412280b134578905248ce0122c5db7c9"><div class="ttname"><a href="namespaceSVF.html#a412280b134578905248ce0122c5db7c9">SVF::SwitchInst</a></div><div class="ttdeci">llvm::SwitchInst SwitchInst</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00162">BasicTypes.h:162</a></div></div>
545
545
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acf40310917909e4234282c0695a43160"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">SVF::LLVMModuleSet::getLLVMModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * getLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00069">LLVMModule.h:69</a></div></div>
546
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00170">SVFUtil.h:170</a></div></div>
547
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_abd525a2e3b7b9167b61b2304cc2cbdf2"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#abd525a2e3b7b9167b61b2304cc2cbdf2">SVF::SVFUtil::isReturn</a></div><div class="ttdeci">bool isReturn(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a return instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00177">SVFUtil.h:177</a></div></div>
546
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00203">SVFUtil.h:203</a></div></div>
547
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_abd525a2e3b7b9167b61b2304cc2cbdf2"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#abd525a2e3b7b9167b61b2304cc2cbdf2">SVF::SVFUtil::isReturn</a></div><div class="ttdeci">bool isReturn(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a return instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00210">SVFUtil.h:210</a></div></div>
548
548
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_adefeaad9c02000f263430dfee7149ea6"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">SVF::ICFGBuilder::icfg</a></div><div class="ttdeci">ICFG * icfg</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00048">ICFGBuilder.h:48</a></div></div>
549
549
  <div class="ttc" id="classSVF_1_1ICFG_html_adafd8bbb91507a9a78a3f16305812afc"><div class="ttname"><a href="classSVF_1_1ICFG.html#adafd8bbb91507a9a78a3f16305812afc">SVF::ICFG::addIntraEdge</a></div><div class="ttdeci">ICFGEdge * addIntraEdge(ICFGNode *srcNode, ICFGNode *dstNode)</div><div class="ttdoc">Add control-flow edges for top level pointers. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00325">ICFG.cpp:325</a></div></div>
550
550
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a547b3bc62de65b9dbfc6dee55c063dd7"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a547b3bc62de65b9dbfc6dee55c063dd7">SVF::LLVMModuleSet::getSVFFunction</a></div><div class="ttdeci">const SVFFunction * getSVFFunction(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00112">LLVMModule.h:112</a></div></div>
@@ -588,7 +588,7 @@ Private Attributes</h2></td></tr>
588
588
  <p>function entry </p>
589
589
 
590
590
  <p class="definition">Definition at line <a class="el" href="ICFGBuilder_8cpp_source.html#l00059">59</a> of file <a class="el" href="ICFGBuilder_8cpp_source.html">ICFGBuilder.cpp</a>.</p>
591
- <div class="fragment"><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;{</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="classSVF_1_1FunEntryBlockNode.html">FunEntryBlockNode</a>* <a class="code" href="classSVF_1_1FunEntryBlockNode.html">FunEntryBlockNode</a> = <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#ae1ef14cdda27a2062c4c454750444108">getFunEntryBlockNode</a>(fun);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* entryInst = &amp;((fun-&gt;<a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>()-&gt;getEntryBlock()).front());</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#a57af1044422b3c3860aa6fb033f8111e">InstVec</a> insts;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1SVFUtil.html#ab7f58caf27c30a1d414e06f60ca84d80">isIntrinsicInst</a>(entryInst))</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a2f9959fa23ab4bdc65ca36fbda8c1b70">getNextInsts</a>(entryInst, insts);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; insts.push_back(entryInst);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">for</span> (InstVec::const_iterator nit = insts.begin(), enit = insts.end();</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; nit != enit; ++nit)</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; {</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* instNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#a42f190f697284e6da7a6211ce7adecfe">getOrAddBlockICFGNode</a>(*nit); <span class="comment">//add interprocedure edge</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#adafd8bbb91507a9a78a3f16305812afc">addIntraEdge</a>(FunEntryBlockNode, instNode);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; worklist.push(*nit);</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;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_ab7f58caf27c30a1d414e06f60ca84d80"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#ab7f58caf27c30a1d414e06f60ca84d80">SVF::SVFUtil::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="SVFUtil_8h_source.html#l00144">SVFUtil.h:144</a></div></div>
591
+ <div class="fragment"><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;{</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="classSVF_1_1FunEntryBlockNode.html">FunEntryBlockNode</a>* <a class="code" href="classSVF_1_1FunEntryBlockNode.html">FunEntryBlockNode</a> = <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#ae1ef14cdda27a2062c4c454750444108">getFunEntryBlockNode</a>(fun);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* entryInst = &amp;((fun-&gt;<a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>()-&gt;getEntryBlock()).front());</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#a57af1044422b3c3860aa6fb033f8111e">InstVec</a> insts;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1SVFUtil.html#ab7f58caf27c30a1d414e06f60ca84d80">isIntrinsicInst</a>(entryInst))</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a2f9959fa23ab4bdc65ca36fbda8c1b70">getNextInsts</a>(entryInst, insts);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; insts.push_back(entryInst);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">for</span> (InstVec::const_iterator nit = insts.begin(), enit = insts.end();</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; nit != enit; ++nit)</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; {</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* instNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#a42f190f697284e6da7a6211ce7adecfe">getOrAddBlockICFGNode</a>(*nit); <span class="comment">//add interprocedure edge</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#adafd8bbb91507a9a78a3f16305812afc">addIntraEdge</a>(FunEntryBlockNode, instNode);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; worklist.push(*nit);</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;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_ab7f58caf27c30a1d414e06f60ca84d80"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#ab7f58caf27c30a1d414e06f60ca84d80">SVF::SVFUtil::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="SVFUtil_8h_source.html#l00177">SVFUtil.h:177</a></div></div>
592
592
  <div class="ttc" id="classSVF_1_1ICFGBuilder_html_a57af1044422b3c3860aa6fb033f8111e"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a57af1044422b3c3860aa6fb033f8111e">SVF::ICFGBuilder::InstVec</a></div><div class="ttdeci">std::vector&lt; const Instruction * &gt; InstVec</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00044">ICFGBuilder.h:44</a></div></div>
593
593
  <div class="ttc" id="classSVF_1_1ICFGNode_html"><div class="ttname"><a href="classSVF_1_1ICFGNode.html">SVF::ICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00054">ICFGNode.h:54</a></div></div>
594
594
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a2f9959fa23ab4bdc65ca36fbda8c1b70"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a2f9959fa23ab4bdc65ca36fbda8c1b70">SVF::SVFUtil::getNextInsts</a></div><div class="ttdeci">void getNextInsts(const Instruction *curInst, std::vector&lt; const Instruction *&gt; &amp;instList)</div><div class="ttdoc">Get the next instructions following control flow. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00213">LLVMUtil.cpp:213</a></div></div>
@@ -397,7 +397,7 @@ Additional Inherited Members</h2></td></tr>
397
397
  <div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
398
398
  <div class="ttc" id="classSVF_1_1GenericEdge_html_ae6792506a0150a9400d635eceab7f9e7"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">SVF::GenericEdge::getSrcID</a></div><div class="ttdeci">NodeID getSrcID() const</div><div class="ttdoc">get methods of the components </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00073">GenericGraph.h:73</a></div></div>
399
399
  <div class="ttc" id="classSVF_1_1CallCFGEdge_html"><div class="ttname"><a href="classSVF_1_1CallCFGEdge.html">SVF::CallCFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00162">ICFGEdge.h:162</a></div></div>
400
- <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a28c0ede7e4765d2a686fc8ae0f5641a4"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a28c0ede7e4765d2a686fc8ae0f5641a4">SVF::SVFUtil::getSourceLoc</a></div><div class="ttdeci">std::string getSourceLoc(const Value *val)</div><div class="ttdoc">Return source code including line number and file name from debug information. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00258">SVFUtil.cpp:258</a></div></div>
400
+ <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a28c0ede7e4765d2a686fc8ae0f5641a4"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a28c0ede7e4765d2a686fc8ae0f5641a4">SVF::SVFUtil::getSourceLoc</a></div><div class="ttdeci">std::string getSourceLoc(const Value *val)</div><div class="ttdoc">Return source code including line number and file name from debug information. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00260">SVFUtil.cpp:260</a></div></div>
401
401
  <div class="ttc" id="classSVF_1_1PAGEdge_html_a79080505b4744aa8806b55215ac2b0f6a4b8b2eb7125c259d8d550dd83c51147b"><div class="ttname"><a href="classSVF_1_1PAGEdge.html#a79080505b4744aa8806b55215ac2b0f6a4b8b2eb7125c259d8d550dd83c51147b">SVF::PAGEdge::NormalGep</a></div><div class="ttdef"><b>Definition:</b> <a href="PAGEdge_8h_source.html#l00056">PAGEdge.h:56</a></div></div>
402
402
  <div class="ttc" id="classSVF_1_1GenericNode_html_a391e996d695b114530120723da1d003e"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a391e996d695b114530120723da1d003e">SVF::GenericNode::getNodeKind</a></div><div class="ttdeci">GNodeK getNodeKind() const</div><div class="ttdoc">Get node kind. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00170">GenericGraph.h:170</a></div></div>
403
403
  <div class="ttc" id="classSVF_1_1ICFGNode_html"><div class="ttname"><a href="classSVF_1_1ICFGNode.html">SVF::ICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00054">ICFGNode.h:54</a></div></div>
@@ -217,7 +217,7 @@ Private Attributes</h2></td></tr>
217
217
 
218
218
  <p class="definition">Definition at line <a class="el" href="IRAnnotator_8h_source.html#l00272">272</a> of file <a class="el" href="IRAnnotator_8h_source.html">IRAnnotator.h</a>.</p>
219
219
  <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> (mdNode)</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="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; mdNode-&gt;getNumOperands(); i++)</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; {</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keyword">auto</span> anderNodeIdStr = llvm::cast&lt;llvm::MDString&gt;(mdNode-&gt;getOperand(i))-&gt;getString().str();</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keyword">auto</span> anderNodeId = <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a>(std::stoul(anderNodeIdStr));</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <a class="code" href="classSVF_1_1IRAnnotator.html#afd8770eee0c14386c407cae026ce87b5">ptsTo</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#af68485a2208553579f9c2e4b2cb20cff">addPts</a>(nodeId, anderNodeId);</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; }</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; }</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div><div class="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00018">MTAResultValidator.h:18</a></div></div>
220
- <div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_af68485a2208553579f9c2e4b2cb20cff"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#af68485a2208553579f9c2e4b2cb20cff">SVF::BVDataPTAImpl::addPts</a></div><div class="ttdeci">virtual bool addPts(NodeID id, NodeID ptd)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00134">PointerAnalysisImpl.h:134</a></div></div>
220
+ <div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_af68485a2208553579f9c2e4b2cb20cff"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#af68485a2208553579f9c2e4b2cb20cff">SVF::BVDataPTAImpl::addPts</a></div><div class="ttdeci">virtual bool addPts(NodeID id, NodeID ptd)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00131">PointerAnalysisImpl.h:131</a></div></div>
221
221
  <div class="ttc" id="classSVF_1_1IRAnnotator_html_afd8770eee0c14386c407cae026ce87b5"><div class="ttname"><a href="classSVF_1_1IRAnnotator.html#afd8770eee0c14386c407cae026ce87b5">SVF::IRAnnotator::ptsTo</a></div><div class="ttdeci">BVDataPTAImpl * ptsTo</div><div class="ttdef"><b>Definition:</b> <a href="IRAnnotator_8h_source.html#l00315">IRAnnotator.h:315</a></div></div>
222
222
  </div><!-- fragment -->
223
223
  </div>
@@ -258,7 +258,7 @@ Private Attributes</h2></td></tr>
258
258
 
259
259
  <p class="definition">Definition at line <a class="el" href="IRAnnotator_8h_source.html#l00285">285</a> of file <a class="el" href="IRAnnotator_8h_source.html">IRAnnotator.h</a>.</p>
260
260
  <div class="fragment"><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; {</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">if</span> (mdNode)</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="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; mdNode-&gt;getNumOperands(); i++)</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; {</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keyword">auto</span> node = mdNode-&gt;getOperand(i);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j = 0; j &lt; node-&gt;getNumOperands(); j++)</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; {</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keyword">auto</span> anderNodeIdStr = llvm::cast&lt;llvm::MDString&gt;(node-&gt;getOperand(j))-&gt;getString().str();</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keyword">auto</span> anderNodeId = <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a>(std::stoul(anderNodeIdStr));</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <a class="code" href="classSVF_1_1IRAnnotator.html#afd8770eee0c14386c407cae026ce87b5">ptsTo</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#af68485a2208553579f9c2e4b2cb20cff">addPts</a>(nodeId, anderNodeId);</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; }</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; }</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; }</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; }</div><div class="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00018">MTAResultValidator.h:18</a></div></div>
261
- <div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_af68485a2208553579f9c2e4b2cb20cff"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#af68485a2208553579f9c2e4b2cb20cff">SVF::BVDataPTAImpl::addPts</a></div><div class="ttdeci">virtual bool addPts(NodeID id, NodeID ptd)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00134">PointerAnalysisImpl.h:134</a></div></div>
261
+ <div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_af68485a2208553579f9c2e4b2cb20cff"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#af68485a2208553579f9c2e4b2cb20cff">SVF::BVDataPTAImpl::addPts</a></div><div class="ttdeci">virtual bool addPts(NodeID id, NodeID ptd)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00131">PointerAnalysisImpl.h:131</a></div></div>
262
262
  <div class="ttc" id="classSVF_1_1IRAnnotator_html_afd8770eee0c14386c407cae026ce87b5"><div class="ttname"><a href="classSVF_1_1IRAnnotator.html#afd8770eee0c14386c407cae026ce87b5">SVF::IRAnnotator::ptsTo</a></div><div class="ttdeci">BVDataPTAImpl * ptsTo</div><div class="ttdef"><b>Definition:</b> <a href="IRAnnotator_8h_source.html#l00315">IRAnnotator.h:315</a></div></div>
263
263
  </div><!-- fragment -->
264
264
  </div>
@@ -298,7 +298,7 @@ Private Attributes</h2></td></tr>
298
298
  </div><div class="memdoc">
299
299
 
300
300
  <p class="definition">Definition at line <a class="el" href="IRAnnotator_8h_source.html#l00303">303</a> of file <a class="el" href="IRAnnotator_8h_source.html">IRAnnotator.h</a>.</p>
301
- <div class="fragment"><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; {</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; llvm::SmallVector&lt;llvm::Metadata *, 32&gt; operands;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keyword">auto</span> &amp;ptTo = <a class="code" href="classSVF_1_1IRAnnotator.html#afd8770eee0c14386c407cae026ce87b5">ptsTo</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(nodeId);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> p : ptTo)</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; {</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; operands.push_back(llvm::MDString::get(context, std::to_string(p)));</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; }</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">return</span> llvm::MDTuple::get(context, operands);</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; }</div><div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_aee289e298e421448caaa604b7eb34fcb"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">SVF::BVDataPTAImpl::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00101">PointerAnalysisImpl.h:101</a></div></div>
301
+ <div class="fragment"><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; {</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; llvm::SmallVector&lt;llvm::Metadata *, 32&gt; operands;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keyword">auto</span> &amp;ptTo = <a class="code" href="classSVF_1_1IRAnnotator.html#afd8770eee0c14386c407cae026ce87b5">ptsTo</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(nodeId);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> p : ptTo)</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; {</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; operands.push_back(llvm::MDString::get(context, std::to_string(p)));</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; }</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">return</span> llvm::MDTuple::get(context, operands);</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; }</div><div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_aee289e298e421448caaa604b7eb34fcb"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">SVF::BVDataPTAImpl::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00098">PointerAnalysisImpl.h:98</a></div></div>
302
302
  <div class="ttc" id="classSVF_1_1IRAnnotator_html_afd8770eee0c14386c407cae026ce87b5"><div class="ttname"><a href="classSVF_1_1IRAnnotator.html#afd8770eee0c14386c407cae026ce87b5">SVF::IRAnnotator::ptsTo</a></div><div class="ttdeci">BVDataPTAImpl * ptsTo</div><div class="ttdef"><b>Definition:</b> <a href="IRAnnotator_8h_source.html#l00315">IRAnnotator.h:315</a></div></div>
303
303
  </div><!-- fragment -->
304
304
  </div>
@@ -70,13 +70,13 @@ $(function() {
70
70
  <p>This is the complete list of members for <a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a>, including all inherited members.</p>
71
71
  <table class="directory">
72
72
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a7ac57ccfe31b6cd6bbc6f15ed22a6531">addMrVer</a>(const MRVer *mr)</td><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
73
- <tr><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#ab4138387b74d13458b09884c6f543790">addPointsTo</a>(const PointsTo &amp;c)</td><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
73
+ <tr><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a50ac2e33c6a4a41291c0a476ed07de53">addPointsTo</a>(const NodeBS &amp;c)</td><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
74
74
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1VFGEdge.html#a156ae6a8b3a033f505c18c6b162e7cf5a8383c27feab3f1acc67cacef9744c04a">CallDirVF</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1VFGEdge.html">SVF::VFGEdge</a></td><td class="entry"></td></tr>
75
75
  <tr><td class="entry"><a class="el" href="classSVF_1_1VFGEdge.html#a156ae6a8b3a033f505c18c6b162e7cf5a978c857fcc06d2f988bc9ce16ce10145">CallIndVF</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1VFGEdge.html">SVF::VFGEdge</a></td><td class="entry"></td></tr>
76
76
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a65d58ce28f0bec8ba20191257a80221f">classof</a>(const IndirectSVFGEdge *)</td><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
77
77
  <tr><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#ad1635bdd79cae91c5a58b5e540f19df1">classof</a>(const VFGEdge *edge)</td><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
78
78
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a62352957241f7ac5faba6b502d0ed0f1">classof</a>(const GenericVFGEdgeTy *edge)</td><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
79
- <tr><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#ac730b7fd9dfe729a184d9f3065c33dfc">cpts</a></td><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
79
+ <tr><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a2d54c1c3567ef6676ba15f88c622e5b7">cpts</a></td><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
80
80
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#a93dec4c27088242a4b1b6aa82cea46b9">EdgeKindMask</a></td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
81
81
  <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#af1c2fd4b5ef1d7b7605572bf2489c298">EdgeKindMaskBits</a></td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
82
82
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#a69accb303ee67733e065350e4452cbca">equalGEdge</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"></td></tr>
@@ -87,7 +87,7 @@ $(function() {
87
87
  <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#aeaa31a2c8479e831b36ce2e2582ceb86">getDstNode</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
88
88
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#abe8525c542def8162b094c169a01993b">getEdgeKind</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
89
89
  <tr><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#ac08d8b88c44881d87c1299d18c943ace">getMRVer</a>()</td><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
90
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#abfabfa0478515d18e43ae47214e38cc6">getPointsTo</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
90
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a30aca718d25924f1babdf348bb0ace71">getPointsTo</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
91
91
  <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
92
92
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#ab47ca533c415841ef75456cbad439589">getSrcNode</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
93
93
  <tr><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a6d40ccc9b99aec6515c2ef1df5a7b18f">IndirectSVFGEdge</a>(VFGNode *s, VFGNode *d, GEdgeFlag k)</td><td class="entry"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
@@ -131,11 +131,11 @@ Public Member Functions</h2></td></tr>
131
131
  <tr class="memitem:a33e6221e5005fda68903f4cdadf58ce8"><td class="memItemLeft" align="right" valign="top">virtual const std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a33e6221e5005fda68903f4cdadf58ce8">toString</a> () const</td></tr>
132
132
  <tr class="separator:a33e6221e5005fda68903f4cdadf58ce8"><td class="memSeparator" colspan="2">&#160;</td></tr>
133
133
  <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
134
- <tr class="memitem:ab4138387b74d13458b09884c6f543790"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#ab4138387b74d13458b09884c6f543790">addPointsTo</a> (const <a class="el" href="namespaceSVF.html#a0c6594b4bae7924369bb61943c1da4fb">PointsTo</a> &amp;c)</td></tr>
135
- <tr class="memdesc:ab4138387b74d13458b09884c6f543790"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handle memory region. <a href="#ab4138387b74d13458b09884c6f543790">More...</a><br /></td></tr>
136
- <tr class="separator:ab4138387b74d13458b09884c6f543790"><td class="memSeparator" colspan="2">&#160;</td></tr>
137
- <tr class="memitem:abfabfa0478515d18e43ae47214e38cc6"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="namespaceSVF.html#a0c6594b4bae7924369bb61943c1da4fb">PointsTo</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#abfabfa0478515d18e43ae47214e38cc6">getPointsTo</a> () const</td></tr>
138
- <tr class="separator:abfabfa0478515d18e43ae47214e38cc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
134
+ <tr class="memitem:a50ac2e33c6a4a41291c0a476ed07de53"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a50ac2e33c6a4a41291c0a476ed07de53">addPointsTo</a> (const <a class="el" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> &amp;c)</td></tr>
135
+ <tr class="memdesc:a50ac2e33c6a4a41291c0a476ed07de53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handle memory region. <a href="#a50ac2e33c6a4a41291c0a476ed07de53">More...</a><br /></td></tr>
136
+ <tr class="separator:a50ac2e33c6a4a41291c0a476ed07de53"><td class="memSeparator" colspan="2">&#160;</td></tr>
137
+ <tr class="memitem:a30aca718d25924f1babdf348bb0ace71"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a30aca718d25924f1babdf348bb0ace71">getPointsTo</a> () const</td></tr>
138
+ <tr class="separator:a30aca718d25924f1babdf348bb0ace71"><td class="memSeparator" colspan="2">&#160;</td></tr>
139
139
  <tr class="memitem:ac08d8b88c44881d87c1299d18c943ace"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a0df62e44e394d4b4cc30b5012308eb11">MRVerSet</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#ac08d8b88c44881d87c1299d18c943ace">getMRVer</a> ()</td></tr>
140
140
  <tr class="separator:ac08d8b88c44881d87c1299d18c943ace"><td class="memSeparator" colspan="2">&#160;</td></tr>
141
141
  <tr class="memitem:a7ac57ccfe31b6cd6bbc6f15ed22a6531"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a7ac57ccfe31b6cd6bbc6f15ed22a6531">addMrVer</a> (const <a class="el" href="classSVF_1_1MRVer.html">MRVer</a> *mr)</td></tr>
@@ -208,8 +208,8 @@ Static Public Member Functions</h2></td></tr>
208
208
  Private Attributes</h2></td></tr>
209
209
  <tr class="memitem:afb265822e2581e4d7fccc47d1b8b2a5c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a0df62e44e394d4b4cc30b5012308eb11">MRVerSet</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#afb265822e2581e4d7fccc47d1b8b2a5c">mrs</a></td></tr>
210
210
  <tr class="separator:afb265822e2581e4d7fccc47d1b8b2a5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
211
- <tr class="memitem:ac730b7fd9dfe729a184d9f3065c33dfc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a0c6594b4bae7924369bb61943c1da4fb">PointsTo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#ac730b7fd9dfe729a184d9f3065c33dfc">cpts</a></td></tr>
212
- <tr class="separator:ac730b7fd9dfe729a184d9f3065c33dfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
211
+ <tr class="memitem:a2d54c1c3567ef6676ba15f88c622e5b7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1IndirectSVFGEdge.html#a2d54c1c3567ef6676ba15f88c622e5b7">cpts</a></td></tr>
212
+ <tr class="separator:a2d54c1c3567ef6676ba15f88c622e5b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
213
213
  </table><table class="memberdecls">
214
214
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
215
215
  Additional Inherited Members</h2></td></tr>
@@ -315,13 +315,13 @@ Additional Inherited Members</h2></td></tr>
315
315
  </div><div class="memdoc">
316
316
 
317
317
  <p class="definition">Definition at line <a class="el" href="SVFGEdge_8h_source.html#l00070">70</a> of file <a class="el" href="SVFGEdge_8h_source.html">SVFGEdge.h</a>.</p>
318
- <div class="fragment"><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; {</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">// collect memory regions&#39; pts to edge;</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="classSVF_1_1IndirectSVFGEdge.html#ac730b7fd9dfe729a184d9f3065c33dfc">cpts</a> |= mr-&gt;getMR()-&gt;getPointsTo();</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1IndirectSVFGEdge.html#afb265822e2581e4d7fccc47d1b8b2a5c">mrs</a>.insert(mr).second;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; }</div><div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html_afb265822e2581e4d7fccc47d1b8b2a5c"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html#afb265822e2581e4d7fccc47d1b8b2a5c">SVF::IndirectSVFGEdge::mrs</a></div><div class="ttdeci">MRVerSet mrs</div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00048">SVFGEdge.h:48</a></div></div>
319
- <div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html_ac730b7fd9dfe729a184d9f3065c33dfc"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html#ac730b7fd9dfe729a184d9f3065c33dfc">SVF::IndirectSVFGEdge::cpts</a></div><div class="ttdeci">PointsTo cpts</div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00049">SVFGEdge.h:49</a></div></div>
318
+ <div class="fragment"><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; {</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">// collect memory regions&#39; pts to edge;</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="classSVF_1_1IndirectSVFGEdge.html#a2d54c1c3567ef6676ba15f88c622e5b7">cpts</a> |= mr-&gt;getMR()-&gt;getPointsTo();</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1IndirectSVFGEdge.html#afb265822e2581e4d7fccc47d1b8b2a5c">mrs</a>.insert(mr).second;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; }</div><div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html_a2d54c1c3567ef6676ba15f88c622e5b7"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html#a2d54c1c3567ef6676ba15f88c622e5b7">SVF::IndirectSVFGEdge::cpts</a></div><div class="ttdeci">NodeBS cpts</div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00049">SVFGEdge.h:49</a></div></div>
319
+ <div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html_afb265822e2581e4d7fccc47d1b8b2a5c"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html#afb265822e2581e4d7fccc47d1b8b2a5c">SVF::IndirectSVFGEdge::mrs</a></div><div class="ttdeci">MRVerSet mrs</div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00048">SVFGEdge.h:48</a></div></div>
320
320
  </div><!-- fragment -->
321
321
  </div>
322
322
  </div>
323
- <a id="ab4138387b74d13458b09884c6f543790"></a>
324
- <h2 class="memtitle"><span class="permalink"><a href="#ab4138387b74d13458b09884c6f543790">&#9670;&nbsp;</a></span>addPointsTo()</h2>
323
+ <a id="a50ac2e33c6a4a41291c0a476ed07de53"></a>
324
+ <h2 class="memtitle"><span class="permalink"><a href="#a50ac2e33c6a4a41291c0a476ed07de53">&#9670;&nbsp;</a></span>addPointsTo()</h2>
325
325
 
326
326
  <div class="memitem">
327
327
  <div class="memproto">
@@ -332,7 +332,7 @@ Additional Inherited Members</h2></td></tr>
332
332
  <tr>
333
333
  <td class="memname">bool SVF::IndirectSVFGEdge::addPointsTo </td>
334
334
  <td>(</td>
335
- <td class="paramtype">const <a class="el" href="namespaceSVF.html#a0c6594b4bae7924369bb61943c1da4fb">PointsTo</a> &amp;&#160;</td>
335
+ <td class="paramtype">const <a class="el" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> &amp;&#160;</td>
336
336
  <td class="paramname"><em>c</em></td><td>)</td>
337
337
  <td></td>
338
338
  </tr>
@@ -347,7 +347,7 @@ Additional Inherited Members</h2></td></tr>
347
347
  <p>Handle memory region. </p>
348
348
 
349
349
  <p class="definition">Definition at line <a class="el" href="SVFGEdge_8h_source.html#l00057">57</a> of file <a class="el" href="SVFGEdge_8h_source.html">SVFGEdge.h</a>.</p>
350
- <div class="fragment"><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; {</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="classSVF_1_1IndirectSVFGEdge.html#ac730b7fd9dfe729a184d9f3065c33dfc">cpts</a> |= c);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div><div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html_ac730b7fd9dfe729a184d9f3065c33dfc"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html#ac730b7fd9dfe729a184d9f3065c33dfc">SVF::IndirectSVFGEdge::cpts</a></div><div class="ttdeci">PointsTo cpts</div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00049">SVFGEdge.h:49</a></div></div>
350
+ <div class="fragment"><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; {</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="classSVF_1_1IndirectSVFGEdge.html#a2d54c1c3567ef6676ba15f88c622e5b7">cpts</a> |= c);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div><div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html_a2d54c1c3567ef6676ba15f88c622e5b7"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html#a2d54c1c3567ef6676ba15f88c622e5b7">SVF::IndirectSVFGEdge::cpts</a></div><div class="ttdeci">NodeBS cpts</div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00049">SVFGEdge.h:49</a></div></div>
351
351
  </div><!-- fragment -->
352
352
  </div>
353
353
  </div>
@@ -473,8 +473,8 @@ Additional Inherited Members</h2></td></tr>
473
473
  </div><!-- fragment -->
474
474
  </div>
475
475
  </div>
476
- <a id="abfabfa0478515d18e43ae47214e38cc6"></a>
477
- <h2 class="memtitle"><span class="permalink"><a href="#abfabfa0478515d18e43ae47214e38cc6">&#9670;&nbsp;</a></span>getPointsTo()</h2>
476
+ <a id="a30aca718d25924f1babdf348bb0ace71"></a>
477
+ <h2 class="memtitle"><span class="permalink"><a href="#a30aca718d25924f1babdf348bb0ace71">&#9670;&nbsp;</a></span>getPointsTo()</h2>
478
478
 
479
479
  <div class="memitem">
480
480
  <div class="memproto">
@@ -483,7 +483,7 @@ Additional Inherited Members</h2></td></tr>
483
483
  <td class="mlabels-left">
484
484
  <table class="memname">
485
485
  <tr>
486
- <td class="memname">const <a class="el" href="namespaceSVF.html#a0c6594b4bae7924369bb61943c1da4fb">PointsTo</a>&amp; SVF::IndirectSVFGEdge::getPointsTo </td>
486
+ <td class="memname">const <a class="el" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a>&amp; SVF::IndirectSVFGEdge::getPointsTo </td>
487
487
  <td>(</td>
488
488
  <td class="paramname"></td><td>)</td>
489
489
  <td> const</td>
@@ -497,7 +497,7 @@ Additional Inherited Members</h2></td></tr>
497
497
  </div><div class="memdoc">
498
498
 
499
499
  <p class="definition">Definition at line <a class="el" href="SVFGEdge_8h_source.html#l00061">61</a> of file <a class="el" href="SVFGEdge_8h_source.html">SVFGEdge.h</a>.</p>
500
- <div class="fragment"><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; {</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1IndirectSVFGEdge.html#ac730b7fd9dfe729a184d9f3065c33dfc">cpts</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; }</div><div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html_ac730b7fd9dfe729a184d9f3065c33dfc"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html#ac730b7fd9dfe729a184d9f3065c33dfc">SVF::IndirectSVFGEdge::cpts</a></div><div class="ttdeci">PointsTo cpts</div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00049">SVFGEdge.h:49</a></div></div>
500
+ <div class="fragment"><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; {</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1IndirectSVFGEdge.html#a2d54c1c3567ef6676ba15f88c622e5b7">cpts</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; }</div><div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html_a2d54c1c3567ef6676ba15f88c622e5b7"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html#a2d54c1c3567ef6676ba15f88c622e5b7">SVF::IndirectSVFGEdge::cpts</a></div><div class="ttdeci">NodeBS cpts</div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00049">SVFGEdge.h:49</a></div></div>
501
501
  </div><!-- fragment -->
502
502
  </div>
503
503
  </div>
@@ -528,16 +528,16 @@ Additional Inherited Members</h2></td></tr>
528
528
 
529
529
  <p>Reimplemented in <a class="el" href="classSVF_1_1ThreadMHPIndSVFGEdge.html#a09b7fef74030eecc6fa7b83a15c12521">SVF::ThreadMHPIndSVFGEdge</a>, <a class="el" href="classSVF_1_1RetIndSVFGEdge.html#a58502c0881d2d8dccf9dd09385e08dc5">SVF::RetIndSVFGEdge</a>, <a class="el" href="classSVF_1_1CallIndSVFGEdge.html#a06cc5ba2c5be41bf38e4fad0c031138e">SVF::CallIndSVFGEdge</a>, and <a class="el" href="classSVF_1_1IntraIndSVFGEdge.html#ae148fda488b6505a6cc4103aae30e291">SVF::IntraIndSVFGEdge</a>.</p>
530
530
 
531
- <p class="definition">Definition at line <a class="el" href="SVFG_8cpp_source.html#l00125">125</a> of file <a class="el" href="SVFG_8cpp_source.html">SVFG.cpp</a>.</p>
532
- <div class="fragment"><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; {</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; std::string str;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;IndirectSVFGEdge: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>() &lt;&lt; <span class="stringliteral">&quot;&lt;--&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericEdge_html_ad9edb45e74ae675d9da82f5acf02d56e"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">SVF::GenericEdge::getDstID</a></div><div class="ttdeci">NodeID getDstID() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00077">GenericGraph.h:77</a></div></div>
531
+ <p class="definition">Definition at line <a class="el" href="SVFG_8cpp_source.html#l00126">126</a> of file <a class="el" href="SVFG_8cpp_source.html">SVFG.cpp</a>.</p>
532
+ <div class="fragment"><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; {</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; std::string str;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;IndirectSVFGEdge: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>() &lt;&lt; <span class="stringliteral">&quot;&lt;--&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericEdge_html_ad9edb45e74ae675d9da82f5acf02d56e"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">SVF::GenericEdge::getDstID</a></div><div class="ttdeci">NodeID getDstID() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00077">GenericGraph.h:77</a></div></div>
533
533
  <div class="ttc" id="classSVF_1_1GenericEdge_html_ae6792506a0150a9400d635eceab7f9e7"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">SVF::GenericEdge::getSrcID</a></div><div class="ttdeci">NodeID getSrcID() const</div><div class="ttdoc">get methods of the components </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00073">GenericGraph.h:73</a></div></div>
534
534
  <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00100">BasicTypes.h:100</a></div></div>
535
535
  </div><!-- fragment -->
536
536
  </div>
537
537
  </div>
538
538
  <h2 class="groupheader">Member Data Documentation</h2>
539
- <a id="ac730b7fd9dfe729a184d9f3065c33dfc"></a>
540
- <h2 class="memtitle"><span class="permalink"><a href="#ac730b7fd9dfe729a184d9f3065c33dfc">&#9670;&nbsp;</a></span>cpts</h2>
539
+ <a id="a2d54c1c3567ef6676ba15f88c622e5b7"></a>
540
+ <h2 class="memtitle"><span class="permalink"><a href="#a2d54c1c3567ef6676ba15f88c622e5b7">&#9670;&nbsp;</a></span>cpts</h2>
541
541
 
542
542
  <div class="memitem">
543
543
  <div class="memproto">
@@ -546,7 +546,7 @@ Additional Inherited Members</h2></td></tr>
546
546
  <td class="mlabels-left">
547
547
  <table class="memname">
548
548
  <tr>
549
- <td class="memname"><a class="el" href="namespaceSVF.html#a0c6594b4bae7924369bb61943c1da4fb">PointsTo</a> SVF::IndirectSVFGEdge::cpts</td>
549
+ <td class="memname"><a class="el" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> SVF::IndirectSVFGEdge::cpts</td>
550
550
  </tr>
551
551
  </table>
552
552
  </td>