svf-tools 1.0.455 → 1.0.458

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 (323) hide show
  1. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +1 -1
  2. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +1 -1
  3. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +5 -5
  4. package/SVF-doxygen/html/html/Andersen_8h_source.html +2 -2
  5. package/SVF-doxygen/html/html/Annotator_8h_source.html +3 -3
  6. package/SVF-doxygen/html/html/BDDExpr_8cpp_source.html +1 -1
  7. package/SVF-doxygen/html/html/BDDExpr_8h_source.html +1 -1
  8. package/SVF-doxygen/html/html/BreakConstantExpr_8cpp.html +1 -1
  9. package/SVF-doxygen/html/html/BreakConstantExpr_8cpp_source.html +3 -3
  10. package/SVF-doxygen/html/html/BreakConstantExpr_8h_source.html +3 -3
  11. package/SVF-doxygen/html/html/CFLAlias_8h_source.html +1 -1
  12. package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +15 -15
  14. package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +5 -5
  15. package/SVF-doxygen/html/html/CHG_8cpp.html +2 -2
  16. package/SVF-doxygen/html/html/CHG_8cpp_source.html +10 -10
  17. package/SVF-doxygen/html/html/CHG_8h_source.html +3 -3
  18. package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +19 -19
  19. package/SVF-doxygen/html/html/CPPUtil_8h_source.html +3 -3
  20. package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +3 -3
  21. package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +1 -1
  22. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +1 -1
  23. package/SVF-doxygen/html/html/ConsG_8h_source.html +2 -2
  24. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +4 -4
  25. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +1 -1
  26. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +4 -4
  27. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +14 -14
  28. package/SVF-doxygen/html/html/DCHG_8h_source.html +8 -8
  29. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +1 -1
  30. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +3 -3
  31. package/SVF-doxygen/html/html/DDAPass_8h_source.html +3 -3
  32. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +2 -2
  33. package/SVF-doxygen/html/html/DPItem_8h_source.html +1 -1
  34. package/SVF-doxygen/html/html/DataFlowUtil_8cpp_source.html +7 -7
  35. package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +8 -8
  36. package/SVF-doxygen/html/html/ExeState_8cpp_source.html +4 -4
  37. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +3 -3
  38. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +1 -1
  39. package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
  40. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +1 -1
  41. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +1 -1
  42. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +1 -1
  43. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp.html +3 -3
  44. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +4 -4
  45. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +2 -2
  46. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +1 -1
  47. package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +3 -3
  48. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +2 -2
  49. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +5 -5
  50. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +2 -2
  51. package/SVF-doxygen/html/html/ICFGEdge_8h_source.html +2 -2
  52. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +3 -3
  53. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +5 -5
  54. package/SVF-doxygen/html/html/ICFG_8h_source.html +3 -3
  55. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +9 -9
  56. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +2 -2
  57. package/SVF-doxygen/html/html/IRGraph_8h_source.html +3 -3
  58. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +8 -8
  59. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +6 -6
  60. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +15 -15
  61. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +15 -15
  62. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +1 -1
  63. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +1 -1
  64. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +5 -5
  65. package/SVF-doxygen/html/html/LocationSet_8h_source.html +2 -2
  66. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +7 -7
  67. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +4 -4
  68. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +10 -10
  69. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +2 -2
  70. package/SVF-doxygen/html/html/MHP_8cpp.html +1 -1
  71. package/SVF-doxygen/html/html/MHP_8cpp_source.html +9 -9
  72. package/SVF-doxygen/html/html/MHP_8h_source.html +4 -4
  73. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +2 -2
  74. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +5 -5
  75. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +5 -5
  76. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +14 -14
  77. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +6 -6
  78. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +4 -4
  79. package/SVF-doxygen/html/html/MTA_8cpp_source.html +4 -4
  80. package/SVF-doxygen/html/html/MTA_8h_source.html +3 -3
  81. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
  82. package/SVF-doxygen/html/html/MemPartition_8h_source.html +1 -1
  83. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +7 -7
  84. package/SVF-doxygen/html/html/MemRegion_8h_source.html +3 -3
  85. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +8 -8
  86. package/SVF-doxygen/html/html/MemSSA_8h_source.html +4 -4
  87. package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +1 -1
  88. package/SVF-doxygen/html/html/PCG_8cpp_source.html +7 -7
  89. package/SVF-doxygen/html/html/PCG_8h_source.html +3 -3
  90. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +2 -2
  91. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +1 -1
  92. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +3 -3
  93. package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +9 -9
  94. package/SVF-doxygen/html/html/PathCondAllocator_8h_source.html +7 -7
  95. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +1 -1
  96. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +1 -1
  97. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +13 -13
  98. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +2 -2
  99. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +3 -3
  100. package/SVF-doxygen/html/html/ProgSlice_8h_source.html +1 -1
  101. package/SVF-doxygen/html/html/SVFBasicTypes_8h_source.html +2 -2
  102. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +3 -3
  103. package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +2 -2
  104. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
  105. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +1 -1
  106. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +3 -3
  107. package/SVF-doxygen/html/html/SVFG_8h_source.html +1 -1
  108. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +30 -30
  109. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +14 -14
  110. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +2 -2
  111. package/SVF-doxygen/html/html/SVFIR_8h_source.html +3 -3
  112. package/SVF-doxygen/html/html/SVFModule_8h_source.html +4 -4
  113. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
  114. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +3 -3
  115. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +12 -12
  116. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +10 -10
  117. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +2 -2
  118. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +6 -6
  119. package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +3 -3
  120. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +2 -2
  121. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +2 -2
  122. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
  123. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +18 -18
  124. package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +5 -5
  125. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +9 -9
  126. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +5 -5
  127. package/SVF-doxygen/html/html/TCT_8cpp_source.html +13 -13
  128. package/SVF-doxygen/html/html/TCT_8h_source.html +10 -10
  129. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +5 -5
  130. package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +6 -6
  131. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +3 -3
  132. package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +2 -2
  133. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +3 -3
  134. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +13 -13
  135. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +3 -3
  136. package/SVF-doxygen/html/html/Util_2BasicTypes_8h.html +1 -0
  137. package/SVF-doxygen/html/html/Util_2BasicTypes_8h_source.html +84 -84
  138. package/SVF-doxygen/html/html/VFGNode_8h_source.html +3 -3
  139. package/SVF-doxygen/html/html/VFG_8cpp_source.html +4 -4
  140. package/SVF-doxygen/html/html/VFG_8h_source.html +1 -1
  141. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +1 -1
  142. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +4 -4
  143. package/SVF-doxygen/html/html/WPAPass_8h_source.html +4 -4
  144. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +1 -1
  145. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
  146. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +1 -1
  147. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +1 -1
  148. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +1 -1
  149. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +1 -1
  150. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +5 -5
  151. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +1 -1
  152. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +1 -1
  153. package/SVF-doxygen/html/html/classSVF_1_1Annotator.html +1 -1
  154. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +1 -1
  155. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +1 -1
  156. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +1 -1
  157. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
  158. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +1 -1
  159. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +1 -1
  160. package/SVF-doxygen/html/html/classSVF_1_1BreakConstantGEPs.html +1 -1
  161. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +29 -29
  162. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +7 -7
  163. package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +1 -1
  164. package/SVF-doxygen/html/html/classSVF_1_1CallDirSVFGEdge.html +1 -1
  165. package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +3 -3
  166. package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +1 -1
  167. package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +1 -1
  168. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
  169. package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +41 -41
  170. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.html +1 -1
  171. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.html +1 -1
  172. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +1 -1
  173. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +1 -1
  174. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +1 -1
  175. package/SVF-doxygen/html/html/classSVF_1_1CondStdSet.html +1 -1
  176. package/SVF-doxygen/html/html/classSVF_1_1CondVar.html +1 -1
  177. package/SVF-doxygen/html/html/classSVF_1_1ContextCond.html +1 -1
  178. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +6 -6
  179. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +1 -1
  180. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +1 -1
  181. package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +1 -1
  182. package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +1 -1
  183. package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +1 -1
  184. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +42 -42
  185. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +2 -2
  186. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +1 -1
  187. package/SVF-doxygen/html/html/classSVF_1_1DirectSVFGEdge.html +1 -1
  188. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +1 -1
  189. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +1 -1
  190. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +1 -1
  191. package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +6 -6
  192. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +1 -1
  193. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +2 -2
  194. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +1 -1
  195. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +8 -8
  196. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +20 -20
  197. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +1 -1
  198. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +1 -1
  199. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +1 -1
  200. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +1 -1
  201. package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +2 -2
  202. package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +2 -2
  203. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +1 -1
  204. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +1 -1
  205. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +1 -1
  206. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +1 -1
  207. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +1 -1
  208. package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode.html +1 -1
  209. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +2 -2
  210. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +10 -10
  211. package/SVF-doxygen/html/html/classSVF_1_1ICFGEdge.html +1 -1
  212. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +1 -1
  213. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +2 -2
  214. package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +1 -1
  215. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +1 -1
  216. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
  217. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  218. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +1 -1
  219. package/SVF-doxygen/html/html/classSVF_1_1IntraDirSVFGEdge.html +1 -1
  220. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +1 -1
  221. package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +1 -1
  222. package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +1 -1
  223. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +1 -1
  224. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
  225. package/SVF-doxygen/html/html/classSVF_1_1IteratedDominanceFrontier.html +3 -3
  226. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +16 -16
  227. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +3 -3
  228. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +1 -1
  229. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +1 -1
  230. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +6 -6
  231. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +30 -30
  232. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +12 -12
  233. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +25 -25
  234. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +9 -9
  235. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +1 -1
  236. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +1 -1
  237. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +3 -3
  238. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +8 -8
  239. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +26 -26
  240. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +9 -9
  241. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +5 -5
  242. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
  243. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +16 -16
  244. package/SVF-doxygen/html/html/classSVF_1_1MemSSADF.html +1 -1
  245. package/SVF-doxygen/html/html/classSVF_1_1MergeFunctionRets.html +2 -2
  246. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +1 -1
  247. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +2 -2
  248. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
  249. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +19 -19
  250. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +1 -1
  251. package/SVF-doxygen/html/html/classSVF_1_1PTACFInfoBuilder.html +7 -7
  252. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +1 -1
  253. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +1 -1
  254. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +1 -1
  255. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +3 -3
  256. package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +22 -22
  257. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +1 -1
  258. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +19 -19
  259. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +4 -4
  260. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +8 -8
  261. package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +1 -1
  262. package/SVF-doxygen/html/html/classSVF_1_1RetDirSVFGEdge.html +1 -1
  263. package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +1 -1
  264. package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +1 -1
  265. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
  266. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +1 -1
  267. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +3 -3
  268. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +29 -29
  269. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +2 -2
  270. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +3 -3
  271. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobal.html +3 -3
  272. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +82 -82
  273. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +2 -2
  274. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +4 -4
  275. package/SVF-doxygen/html/html/classSVF_1_1SaberAnnotator.html +7 -7
  276. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +2 -2
  277. package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +1 -1
  278. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +1 -1
  279. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +1 -1
  280. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +1 -1
  281. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +26 -26
  282. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +13 -13
  283. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +30 -30
  284. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
  285. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
  286. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +5 -5
  287. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +9 -9
  288. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +2 -2
  289. package/SVF-doxygen/html/html/classSVF_1_1ThreadForkEdge.html +1 -1
  290. package/SVF-doxygen/html/html/classSVF_1_1ThreadJoinEdge.html +1 -1
  291. package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +1 -1
  292. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +3 -3
  293. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +17 -17
  294. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +1 -1
  295. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
  296. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +4 -4
  297. package/SVF-doxygen/html/html/classSVF_1_1VFGEdge.html +1 -1
  298. package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +1 -1
  299. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +1 -1
  300. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +1 -1
  301. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +1 -1
  302. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +1 -1
  303. package/SVF-doxygen/html/html/classllvm_1_1generic__bridge__gep__type__iterator.html +3 -3
  304. package/SVF-doxygen/html/html/namespaceSVF.html +47 -47
  305. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +44 -44
  306. package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +36 -36
  307. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.html +3 -3
  308. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  309. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +2 -2
  310. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +2 -2
  311. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01OfflineConsG_01_5_01_4.html +1 -1
  312. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.html +2 -2
  313. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +4 -4
  314. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +4 -4
  315. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CallSite_01_4.html +3 -3
  316. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtProc_01_4.html +1 -1
  317. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtStmt_01_4.html +1 -1
  318. package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
  319. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +3 -3
  320. package/include/Util/BasicTypes.h +1 -0
  321. package/lib/SVF-FE/SVFIRBuilder.cpp +3 -3
  322. package/lib/Util/ExeState.cpp +2 -2
  323. package/package.json +1 -1
@@ -828,10 +828,10 @@ Private Attributes</h2></td></tr>
828
828
  <div class="ttc" id="classSVF_1_1SVFVar_html"><div class="ttname"><a href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00046">SVFVariables.h:46</a></div></div>
829
829
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_a16ad9c601a044731b982305a177dbda3"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#a16ad9c601a044731b982305a177dbda3">SVF::TypeBasedHeapCloning::addCloneGepObjNode</a></div><div class="ttdeci">NodeID addCloneGepObjNode(const MemObj *mem, const LocationSet &amp;l)</div><div class="ttdoc">Add clone GEP object node to SVFIR. </div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8cpp_source.html#l00507">TypeBasedHeapCloning.cpp:507</a></div></div>
830
830
  <div class="ttc" id="classSVF_1_1ObjVar_html"><div class="ttname"><a href="classSVF_1_1ObjVar.html">SVF::ObjVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00315">SVFVariables.h:315</a></div></div>
831
- <div class="ttc" id="namespaceSVF_html_aded9b991c77acc5284ccead0739e84f1"><div class="ttname"><a href="namespaceSVF.html#aded9b991c77acc5284ccead0739e84f1">SVF::DICompositeType</a></div><div class="ttdeci">llvm::DICompositeType DICompositeType</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00128">BasicTypes.h:128</a></div></div>
831
+ <div class="ttc" id="namespaceSVF_html_aded9b991c77acc5284ccead0739e84f1"><div class="ttname"><a href="namespaceSVF.html#aded9b991c77acc5284ccead0739e84f1">SVF::DICompositeType</a></div><div class="ttdeci">llvm::DICompositeType DICompositeType</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00129">BasicTypes.h:129</a></div></div>
832
832
  <div class="ttc" id="classSVF_1_1ObjVar_html_a6a4feb73b54e602407e35eeb09f55930"><div class="ttname"><a href="classSVF_1_1ObjVar.html#a6a4feb73b54e602407e35eeb09f55930">SVF::ObjVar::getMemObj</a></div><div class="ttdeci">const MemObj * getMemObj() const</div><div class="ttdoc">Return memory object. </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00355">SVFVariables.h:355</a></div></div>
833
833
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_a465e67781977e83526df7e36d576e539"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#a465e67781977e83526df7e36d576e539">SVF::TypeBasedHeapCloning::dchg</a></div><div class="ttdeci">DCHGraph * dchg</div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8h_source.html#l00047">TypeBasedHeapCloning.h:47</a></div></div>
834
- <div class="ttc" id="namespaceSVF_html_a852e75c562139237fcc754c7461533e6"><div class="ttname"><a href="namespaceSVF.html#a852e75c562139237fcc754c7461533e6">SVF::DIDerivedType</a></div><div class="ttdeci">llvm::DIDerivedType DIDerivedType</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00129">BasicTypes.h:129</a></div></div>
834
+ <div class="ttc" id="namespaceSVF_html_a852e75c562139237fcc754c7461533e6"><div class="ttname"><a href="namespaceSVF.html#a852e75c562139237fcc754c7461533e6">SVF::DIDerivedType</a></div><div class="ttdeci">llvm::DIDerivedType DIDerivedType</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00130">BasicTypes.h:130</a></div></div>
835
835
  <div class="ttc" id="classSVF_1_1LocationSet_html_abe990543374ebd8c1b3ee0d37c83eb8f"><div class="ttname"><a href="classSVF_1_1LocationSet.html#abe990543374ebd8c1b3ee0d37c83eb8f">SVF::LocationSet::setFldIdx</a></div><div class="ttdeci">void setFldIdx(s32_t idx)</div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00094">LocationSet.h:94</a></div></div>
836
836
  <div class="ttc" id="classSVF_1_1GepObjVar_html"><div class="ttname"><a href="classSVF_1_1GepObjVar.html">SVF::GepObjVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00443">SVFVariables.h:443</a></div></div>
837
837
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_a219edef6c013a953ed12ee3c56bde6de"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#a219edef6c013a953ed12ee3c56bde6de">SVF::TypeBasedHeapCloning::getType</a></div><div class="ttdeci">const DIType * getType(NodeID o) const</div><div class="ttdoc">Returns the type (from objToType) of o. Asserts existence. </div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8cpp_source.html#l00058">TypeBasedHeapCloning.cpp:58</a></div></div>
@@ -846,7 +846,7 @@ Private Attributes</h2></td></tr>
846
846
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8182be247907420db00837cef9bcfa70"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVF::SVFUtil::dyn_cast</a></div><div class="ttdeci">LLVM_NODISCARD std::enable_if&lt;!is_simple_type&lt; Y &gt;::value, typename cast_retty&lt; X, const Y &gt;::ret_type &gt;::type dyn_cast(const Y &amp;Val)</div><div class="ttdef"><b>Definition:</b> <a href="Casting_8h_source.html#l00343">Casting.h:343</a></div></div>
847
847
  <div class="ttc" id="classSVF_1_1GenericGraph_html_a43c9c773bfa17abf481c33073e30d01b"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">SVF::GenericGraph::getGNode</a></div><div class="ttdeci">NodeType * getGNode(NodeID id) const</div><div class="ttdoc">Get a node. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00391">GenericGraph.h:391</a></div></div>
848
848
  <div class="ttc" id="classSVF_1_1SVFIR_html_a20c0c65af266ac876cb722aee6e87101"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a20c0c65af266ac876cb722aee6e87101">SVF::SVFIR::getGepObjVar</a></div><div class="ttdeci">NodeID getGepObjVar(const MemObj *obj, const LocationSet &amp;ls)</div><div class="ttdoc">Get a field SVFIR Object node according to base mem obj and offset. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00429">SVFIR.cpp:429</a></div></div>
849
- <div class="ttc" id="namespaceSVF_html_ad127b0ad478640ede3d426e3a58d2632"><div class="ttname"><a href="namespaceSVF.html#ad127b0ad478640ede3d426e3a58d2632">SVF::DIType</a></div><div class="ttdeci">llvm::DIType DIType</div><div class="ttdoc">LLVM debug information. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00127">BasicTypes.h:127</a></div></div>
849
+ <div class="ttc" id="namespaceSVF_html_ad127b0ad478640ede3d426e3a58d2632"><div class="ttname"><a href="namespaceSVF.html#ad127b0ad478640ede3d426e3a58d2632">SVF::DIType</a></div><div class="ttdeci">llvm::DIType DIType</div><div class="ttdoc">LLVM debug information. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00128">BasicTypes.h:128</a></div></div>
850
850
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_ad07fb204258fccda89053514338e3804"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#ad07fb204258fccda89053514338e3804">SVF::TypeBasedHeapCloning::addGepToObj</a></div><div class="ttdeci">void addGepToObj(NodeID gep, NodeID base, unsigned offset)</div><div class="ttdoc">Associates gep with base (through objToGeps and memObjToGeps). </div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8cpp_source.html#l00118">TypeBasedHeapCloning.cpp:118</a></div></div>
851
851
  </div><!-- fragment -->
852
852
  </div>
@@ -1014,10 +1014,10 @@ Private Attributes</h2></td></tr>
1014
1014
 
1015
1015
  <p class="definition">Definition at line <a class="el" href="TypeBasedHeapCloning_8cpp_source.html#l00483">483</a> of file <a class="el" href="TypeBasedHeapCloning_8cpp_source.html">TypeBasedHeapCloning.cpp</a>.</p>
1016
1016
  <div class="fragment"><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;{</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(v != <span class="keyword">nullptr</span> &amp;&amp; <span class="stringliteral">&quot;TBHC: trying to get metadata from nullptr!&quot;</span>);</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad3d3cec1813411f039211c86236f7adb">MDNode</a> *mdNode = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *inst = SVFUtil::dyn_cast&lt;Instruction&gt;(v))</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; {</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; mdNode = inst-&gt;getMetadata(<a class="code" href="namespaceSVF_1_1cppUtil_1_1ctir.html#a0cd5347bc8043d4306e66a4a96005ace">cppUtil::ctir::derefMDName</a>);</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; }</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#af157dc77830b6cc804338df7430cbbb3">GlobalObject</a> *go = SVFUtil::dyn_cast&lt;GlobalObject&gt;(v))</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; {</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; mdNode = go-&gt;getMetadata(<a class="code" href="namespaceSVF_1_1cppUtil_1_1ctir.html#a0cd5347bc8043d4306e66a4a96005ace">cppUtil::ctir::derefMDName</a>);</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; }</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="comment">// Will be nullptr if metadata isn&#39;t there.</span></div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="keywordflow">return</span> mdNode;</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;}</div><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
- <div class="ttc" id="namespaceSVF_html_af157dc77830b6cc804338df7430cbbb3"><div class="ttname"><a href="namespaceSVF.html#af157dc77830b6cc804338df7430cbbb3">SVF::GlobalObject</a></div><div class="ttdeci">llvm::GlobalObject GlobalObject</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00070">BasicTypes.h:70</a></div></div>
1017
+ <div class="ttc" id="namespaceSVF_html_af157dc77830b6cc804338df7430cbbb3"><div class="ttname"><a href="namespaceSVF.html#af157dc77830b6cc804338df7430cbbb3">SVF::GlobalObject</a></div><div class="ttdeci">llvm::GlobalObject GlobalObject</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00071">BasicTypes.h:71</a></div></div>
1018
1018
  <div class="ttc" id="namespaceSVF_1_1cppUtil_1_1ctir_html_a0cd5347bc8043d4306e66a4a96005ace"><div class="ttname"><a href="namespaceSVF_1_1cppUtil_1_1ctir.html#a0cd5347bc8043d4306e66a4a96005ace">SVF::cppUtil::ctir::derefMDName</a></div><div class="ttdeci">const std::string derefMDName</div><div class="ttdef"><b>Definition:</b> <a href="CPPUtil_8h_source.html#l00113">CPPUtil.h:113</a></div></div>
1019
- <div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00068">BasicTypes.h:68</a></div></div>
1020
- <div class="ttc" id="namespaceSVF_html_ad3d3cec1813411f039211c86236f7adb"><div class="ttname"><a href="namespaceSVF.html#ad3d3cec1813411f039211c86236f7adb">SVF::MDNode</a></div><div class="ttdeci">llvm::MDNode MDNode</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00103">BasicTypes.h:103</a></div></div>
1019
+ <div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00069">BasicTypes.h:69</a></div></div>
1020
+ <div class="ttc" id="namespaceSVF_html_ad3d3cec1813411f039211c86236f7adb"><div class="ttname"><a href="namespaceSVF.html#ad3d3cec1813411f039211c86236f7adb">SVF::MDNode</a></div><div class="ttdeci">llvm::MDNode MDNode</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00104">BasicTypes.h:104</a></div></div>
1021
1021
  </div><!-- fragment -->
1022
1022
  </div>
1023
1023
  </div>
@@ -1084,9 +1084,9 @@ Private Attributes</h2></td></tr>
1084
1084
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_ab65033f068bfbeb0a1c52dcec3beb6bc"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#ab65033f068bfbeb0a1c52dcec3beb6bc">SVF::SVFUtil::errs</a></div><div class="ttdeci">std::ostream &amp; errs()</div><div class="ttdoc">Overwrite llvm::errs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00055">SVFUtil.h:55</a></div></div>
1085
1085
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_a21d2fd8bbef0c6f6ddddb5387569a7fa"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#a21d2fd8bbef0c6f6ddddb5387569a7fa">SVF::TypeBasedHeapCloning::getRawCTirMetadata</a></div><div class="ttdeci">static const MDNode * getRawCTirMetadata(const Value *)</div><div class="ttdoc">Returns raw ctir metadata of a Value. Returns null if it doesn&amp;#39;t exist. </div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8cpp_source.html#l00483">TypeBasedHeapCloning.cpp:483</a></div></div>
1086
1086
  <div class="ttc" id="classSVF_1_1DCHGraph_html_a079feacdcc3783f4a9108a3b2d2aed2c"><div class="ttname"><a href="classSVF_1_1DCHGraph.html#a079feacdcc3783f4a9108a3b2d2aed2c">SVF::DCHGraph::getCanonicalType</a></div><div class="ttdeci">const DIType * getCanonicalType(const DIType *t)</div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8cpp_source.html#l00713">DCHG.cpp:713</a></div></div>
1087
- <div class="ttc" id="namespaceSVF_html_ad3d3cec1813411f039211c86236f7adb"><div class="ttname"><a href="namespaceSVF.html#ad3d3cec1813411f039211c86236f7adb">SVF::MDNode</a></div><div class="ttdeci">llvm::MDNode MDNode</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00103">BasicTypes.h:103</a></div></div>
1087
+ <div class="ttc" id="namespaceSVF_html_ad3d3cec1813411f039211c86236f7adb"><div class="ttname"><a href="namespaceSVF.html#ad3d3cec1813411f039211c86236f7adb">SVF::MDNode</a></div><div class="ttdeci">llvm::MDNode MDNode</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00104">BasicTypes.h:104</a></div></div>
1088
1088
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8182be247907420db00837cef9bcfa70"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVF::SVFUtil::dyn_cast</a></div><div class="ttdeci">LLVM_NODISCARD std::enable_if&lt;!is_simple_type&lt; Y &gt;::value, typename cast_retty&lt; X, const Y &gt;::ret_type &gt;::type dyn_cast(const Y &amp;Val)</div><div class="ttdef"><b>Definition:</b> <a href="Casting_8h_source.html#l00343">Casting.h:343</a></div></div>
1089
- <div class="ttc" id="namespaceSVF_html_ad127b0ad478640ede3d426e3a58d2632"><div class="ttname"><a href="namespaceSVF.html#ad127b0ad478640ede3d426e3a58d2632">SVF::DIType</a></div><div class="ttdeci">llvm::DIType DIType</div><div class="ttdoc">LLVM debug information. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00127">BasicTypes.h:127</a></div></div>
1089
+ <div class="ttc" id="namespaceSVF_html_ad127b0ad478640ede3d426e3a58d2632"><div class="ttname"><a href="namespaceSVF.html#ad127b0ad478640ede3d426e3a58d2632">SVF::DIType</a></div><div class="ttdeci">llvm::DIType DIType</div><div class="ttdoc">LLVM debug information. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00128">BasicTypes.h:128</a></div></div>
1090
1090
  </div><!-- fragment -->
1091
1091
  </div>
1092
1092
  </div>
@@ -1182,7 +1182,7 @@ Private Attributes</h2></td></tr>
1182
1182
  <div class="ttc" id="classSVF_1_1GenericGraph_html_a43c9c773bfa17abf481c33073e30d01b"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">SVF::GenericGraph::getGNode</a></div><div class="ttdeci">NodeType * getGNode(NodeID id) const</div><div class="ttdoc">Get a node. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00391">GenericGraph.h:391</a></div></div>
1183
1183
  <div class="ttc" id="classSVF_1_1PointsTo_html"><div class="ttname"><a href="classSVF_1_1PointsTo.html">SVF::PointsTo</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00027">PointsTo.h:27</a></div></div>
1184
1184
  <div class="ttc" id="classSVF_1_1DCHGraph_html_a2b2dbc52089696854a8339f2e83fc333"><div class="ttname"><a href="classSVF_1_1DCHGraph.html#a2b2dbc52089696854a8339f2e83fc333">SVF::DCHGraph::isFirstField</a></div><div class="ttdeci">bool isFirstField(const DIType *f, const DIType *b)</div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8cpp_source.html#l00931">DCHG.cpp:931</a></div></div>
1185
- <div class="ttc" id="namespaceSVF_html_ad127b0ad478640ede3d426e3a58d2632"><div class="ttname"><a href="namespaceSVF.html#ad127b0ad478640ede3d426e3a58d2632">SVF::DIType</a></div><div class="ttdeci">llvm::DIType DIType</div><div class="ttdoc">LLVM debug information. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00127">BasicTypes.h:127</a></div></div>
1185
+ <div class="ttc" id="namespaceSVF_html_ad127b0ad478640ede3d426e3a58d2632"><div class="ttname"><a href="namespaceSVF.html#ad127b0ad478640ede3d426e3a58d2632">SVF::DIType</a></div><div class="ttdeci">llvm::DIType DIType</div><div class="ttdoc">LLVM debug information. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00128">BasicTypes.h:128</a></div></div>
1186
1186
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_a4c658be1ade99ad1e848cd80332e38ce"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#a4c658be1ade99ad1e848cd80332e38ce">SVF::TypeBasedHeapCloning::numInit</a></div><div class="ttdeci">unsigned numInit</div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8h_source.html#l00172">TypeBasedHeapCloning.h:172</a></div></div>
1187
1187
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_afca6afa06a1072e7a452ed42bcd666d3"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#afca6afa06a1072e7a452ed42bcd666d3">SVF::TypeBasedHeapCloning::numSGTBWU</a></div><div class="ttdeci">unsigned numSGTBWU</div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8h_source.html#l00181">TypeBasedHeapCloning.h:181</a></div></div>
1188
1188
  </div><!-- fragment -->
@@ -1538,14 +1538,14 @@ Private Attributes</h2></td></tr>
1538
1538
  <div class="fragment"><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;{</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html">LLVMModuleSet</a> *llvmModuleSet = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>();</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i &lt; llvmModuleSet-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>(); ++i)</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; {</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFIR.html#a2b237e55fd8d7fd61eb3ac6968e4a76e">SVFIR::CallSiteSet</a> &amp;callSites = <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a629ad3cef8929865b7319fb9e389f7bf">ppag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#aa530e33657f68fc2e8eae9435ce430cb">getCallSiteSet</a>();</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *cbn : callSites)</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; {</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallSite.html">CallSite</a> &amp;cs = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a202de7ad2bea0311e2f75894c030e7a9">SVFUtil::getLLVMCallSite</a>(cbn-&gt;getCallSite());</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *fn = cs.<a class="code" href="classSVF_1_1CallSite.html#ae9b0172e29199f2a938d7cf9e42241cf">getCalledFunction</a>();</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; <span class="keywordflow">if</span> (fn == <span class="keyword">nullptr</span> || !<a class="code" href="TypeBasedHeapCloning_8cpp.html#a2be9728908f88e4e16b1e6218801fa06">isAliasTestFunction</a>(fn-&gt;getName().str()))</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; {</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; }</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; <span class="comment">// We have a test call,</span></div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; <span class="comment">// We want the store which stores to the pointer in question (i.e. operand of the</span></div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; <span class="comment">// store is the pointer, and the store itself is the dereference).</span></div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ab696aab940eb187dc81217efe8649af5">StoreInst</a> *ps = <span class="keyword">nullptr</span>, *qs = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <span class="comment">// Check: currInst is a deref call, so p/q is prevInst.</span></div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160;</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="comment">// Find p.</span></div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *prevInst = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *currInst = cs.<a class="code" href="classSVF_1_1CallSite.html#ab36a6a35eea673d4bdca615efc4336b1">getInstruction</a>();</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <span class="keywordflow">do</span></div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; {</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#adc8b60ca7d60cf6c81feae20e4a04c63">CallInst</a> *ci = SVFUtil::dyn_cast&lt;CallInst&gt;(currInst))</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; {</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; std::string calledFnName = ci-&gt;getCalledFunction()-&gt;getName().str();</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <span class="keywordflow">if</span> (calledFnName == <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a03ef2decb80ba07f4d98cae0a4497212">derefFnName</a> || calledFnName == <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#ab1467e374b238b0f68d3fdd8f3ef6596">mangledDerefFnName</a>)</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; {</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ab696aab940eb187dc81217efe8649af5">StoreInst</a> *si = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#ab696aab940eb187dc81217efe8649af5">StoreInst</a>&gt;(prevInst);</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(si &amp;&amp; <span class="stringliteral">&quot;TBHC: validation macro not producing stores?&quot;</span>);</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; ps = si;</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; }</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; }</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160;</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; prevInst = currInst;</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; currInst = currInst-&gt;getNextNonDebugInstruction();</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; }</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <span class="keywordflow">while</span> (currInst != <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160;</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; <span class="comment">// Repeat for q.</span></div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; <span class="keywordflow">while</span> (currInst != <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; {</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; <span class="comment">// while loop, not do-while, because we need to the next instruction (current</span></div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; <span class="comment">// instruction is the first deref()).</span></div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; prevInst = currInst;</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; currInst = currInst-&gt;getNextNonDebugInstruction();</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#adc8b60ca7d60cf6c81feae20e4a04c63">CallInst</a> *ci = SVFUtil::dyn_cast&lt;CallInst&gt;(currInst))</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; {</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; std::string calledFnName = ci-&gt;getCalledFunction()-&gt;getName().str();</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; <span class="keywordflow">if</span> (calledFnName == <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a03ef2decb80ba07f4d98cae0a4497212">derefFnName</a> || calledFnName == <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#ab1467e374b238b0f68d3fdd8f3ef6596">mangledDerefFnName</a>)</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; {</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ab696aab940eb187dc81217efe8649af5">StoreInst</a> *si = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#ab696aab940eb187dc81217efe8649af5">StoreInst</a>&gt;(prevInst);</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(si &amp;&amp; <span class="stringliteral">&quot;TBHC: validation macro not producing stores?&quot;</span>);</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; qs = si;</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; }</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; }</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; }</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160;</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(ps != <span class="keyword">nullptr</span> &amp;&amp; qs != <span class="keyword">nullptr</span> &amp;&amp; <span class="stringliteral">&quot;TBHC: malformed alias test?&quot;</span>);</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> p = <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a629ad3cef8929865b7319fb9e389f7bf">ppag</a>-&gt;<a class="code" href="classSVF_1_1IRGraph.html#abffddd41cc308b9b3bd5ad4a7f8f1624">getValueNode</a>(ps-&gt;getPointerOperand()),</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; q = <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a629ad3cef8929865b7319fb9e389f7bf">ppag</a>-&gt;<a class="code" href="classSVF_1_1IRGraph.html#abffddd41cc308b9b3bd5ad4a7f8f1624">getValueNode</a>(qs-&gt;getPointerOperand());</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad127b0ad478640ede3d426e3a58d2632">DIType</a> *pt = <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#ac4565775cced4444ba007e310c4a02d8">getTypeFromCTirMetadata</a>(ps), *qt = <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#ac4565775cced4444ba007e310c4a02d8">getTypeFromCTirMetadata</a>(qs);</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; <span class="comment">// Now filter both points-to sets according to the type of the value.</span></div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;pPts = <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a7d3f7d27c9491b099a623ba03b1c4732">pta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(p), &amp;qPts = <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a7d3f7d27c9491b099a623ba03b1c4732">pta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(q);</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a> pPtsFiltered, qPtsFiltered;</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> o : pPts)</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; {</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a219edef6c013a953ed12ee3c56bde6de">getType</a>(o) != <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a6363466e64eee4405806568d26206d2e">undefType</a> &amp;&amp; <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#add00f1c20a524c0be903af679bd6f638">isBase</a>(pt, <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a219edef6c013a953ed12ee3c56bde6de">getType</a>(o)))</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; {</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; pPtsFiltered.<a class="code" href="classSVF_1_1PointsTo.html#ab196d86cfb48d1c5d27a0c03c7497afa">set</a>(o);</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; }</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; }</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160;</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> o : qPts)</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; {</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a219edef6c013a953ed12ee3c56bde6de">getType</a>(o) != <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a6363466e64eee4405806568d26206d2e">undefType</a> &amp;&amp; <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#add00f1c20a524c0be903af679bd6f638">isBase</a>(qt, <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a219edef6c013a953ed12ee3c56bde6de">getType</a>(o)))</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; {</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; qPtsFiltered.<a class="code" href="classSVF_1_1PointsTo.html#ab196d86cfb48d1c5d27a0c03c7497afa">set</a>(o);</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; }</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; }</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160;</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; <a class="code" href="classSVF_1_1BVDataPTAImpl.html">BVDataPTAImpl</a> *bvpta = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html">BVDataPTAImpl</a>&gt;(<a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a7d3f7d27c9491b099a623ba03b1c4732">pta</a>);</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(bvpta &amp;&amp; <span class="stringliteral">&quot;TBHC: need a BVDataPTAImpl for TBHC alias testing.&quot;</span>);</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">AliasResult</a> res = bvpta-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#adaba5a41a60e32d18d964bdb8ae5b2df">alias</a>(pPtsFiltered, qPtsFiltered);</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <span class="keywordtype">bool</span> passed = <span class="keyword">false</span>;</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; std::string testName = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keywordflow">if</span> (fn-&gt;getName() == <a class="code" href="classSVF_1_1PointerAnalysis.html#a7648a0358e2c0798db1c547ec7aa7c64">PointerAnalysis::aliasTestMayAlias</a></div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; || fn-&gt;getName() == <a class="code" href="classSVF_1_1PointerAnalysis.html#a13ce6b930a35877f17bffd4b89e22654">PointerAnalysis::aliasTestMayAliasMangled</a>)</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; {</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; passed = res == <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f">AliasResult::MayAlias</a> || res == <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2">AliasResult::MustAlias</a>;</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; testName = <a class="code" href="classSVF_1_1PointerAnalysis.html#a7648a0358e2c0798db1c547ec7aa7c64">PointerAnalysis::aliasTestMayAlias</a>;</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; }</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (fn-&gt;getName() == <a class="code" href="classSVF_1_1PointerAnalysis.html#ac353221cc7aced590dcf3550a24b1570">PointerAnalysis::aliasTestNoAlias</a></div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; || fn-&gt;getName() == <a class="code" href="classSVF_1_1PointerAnalysis.html#a0e68883e2ee328315af29e59bb2008cd">PointerAnalysis::aliasTestNoAliasMangled</a>)</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; {</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; passed = res == <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239">AliasResult::NoAlias</a>;</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; testName = <a class="code" href="classSVF_1_1PointerAnalysis.html#ac353221cc7aced590dcf3550a24b1570">PointerAnalysis::aliasTestNoAlias</a>;</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; }</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (fn-&gt;getName() == <a class="code" href="classSVF_1_1PointerAnalysis.html#a7477a4301d548b93958e57df389cbba0">PointerAnalysis::aliasTestMustAlias</a></div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; || fn-&gt;getName() == <a class="code" href="classSVF_1_1PointerAnalysis.html#aec884481726cfaf19c4ab8ec8d9195b7">PointerAnalysis::aliasTestMustAliasMangled</a>)</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; {</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; passed = res == <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2">AliasResult::MustAlias</a> || res == <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f">AliasResult::MayAlias</a>;</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; testName = <a class="code" href="classSVF_1_1PointerAnalysis.html#a7477a4301d548b93958e57df389cbba0">PointerAnalysis::aliasTestMustAlias</a>;</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; }</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (fn-&gt;getName() == <a class="code" href="classSVF_1_1PointerAnalysis.html#a83b0a51d88fa7aadff6e9267765d07a5">PointerAnalysis::aliasTestPartialAlias</a></div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; || fn-&gt;getName() == <a class="code" href="classSVF_1_1PointerAnalysis.html#acbb517523fd30708ed1a93f306cd3545">PointerAnalysis::aliasTestPartialAliasMangled</a>)</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; {</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; passed = res == <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f">AliasResult::MayAlias</a> || res == <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aa03eb20fd81629154d6c346763ea64d6">AliasResult::PartialAlias</a>;</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; testName = <a class="code" href="classSVF_1_1PointerAnalysis.html#a83b0a51d88fa7aadff6e9267765d07a5">PointerAnalysis::aliasTestPartialAlias</a>;</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; }</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (fn-&gt;getName() == <a class="code" href="classSVF_1_1PointerAnalysis.html#a32c6f12ce8bc0554dbb6aafa36f9a235">PointerAnalysis::aliasTestFailMayAlias</a></div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; || fn-&gt;getName() == <a class="code" href="classSVF_1_1PointerAnalysis.html#a651cc82379c2d18cc2f69f25b2ae08db">PointerAnalysis::aliasTestFailMayAliasMangled</a>)</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; {</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; passed = res != <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f">AliasResult::MayAlias</a> &amp;&amp; res != <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2">AliasResult::MustAlias</a> &amp;&amp; res != <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aa03eb20fd81629154d6c346763ea64d6">AliasResult::PartialAlias</a>;</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; testName = <a class="code" href="classSVF_1_1PointerAnalysis.html#a32c6f12ce8bc0554dbb6aafa36f9a235">PointerAnalysis::aliasTestFailMayAlias</a>;</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; }</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (fn-&gt;getName() == <a class="code" href="classSVF_1_1PointerAnalysis.html#a18347e41bc66b16e3f42c7c52811ad42">PointerAnalysis::aliasTestFailNoAlias</a></div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; || fn-&gt;getName() == <a class="code" href="classSVF_1_1PointerAnalysis.html#aefd4e9ea66da5ad84a45efead823eb22">PointerAnalysis::aliasTestFailNoAliasMangled</a>)</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; {</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; passed = res != <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239">AliasResult::NoAlias</a>;</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; testName = <a class="code" href="classSVF_1_1PointerAnalysis.html#a18347e41bc66b16e3f42c7c52811ad42">PointerAnalysis::aliasTestFailNoAlias</a>;</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; }</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160;</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;[&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1TypeBasedHeapCloning.html#a7d3f7d27c9491b099a623ba03b1c4732">pta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#aed4e5066f6ddef83afaf60adbcc11de0">PTAName</a>() &lt;&lt; <span class="stringliteral">&quot;] Checking &quot;</span> &lt;&lt; testName &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <a class="code" href="namespaceSVF.html#a8bd74fdcb0e58d0249003df9c3fb8b31">OutStream</a> &amp;msgStream = passed ? <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() : SVFUtil::<a class="code" href="namespaceSVF_1_1SVFUtil.html#ab65033f068bfbeb0a1c52dcec3beb6bc">errs</a>();</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; msgStream &lt;&lt; (passed ? <a class="code" href="namespaceSVF_1_1SVFUtil.html#a6a55f1f8598998a3ffbbc67d32eaf8c4">SVFUtil::sucMsg</a>(<span class="stringliteral">&quot;\t SUCCESS&quot;</span>) : SVFUtil::<a class="code" href="namespaceSVF_1_1SVFUtil.html#a5d4bb92f5df30417f414397f8e58cf01">errMsg</a>(<span class="stringliteral">&quot;\t FAILURE&quot;</span>))</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; &lt;&lt; <span class="stringliteral">&quot; : &quot;</span> &lt;&lt; testName</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; &lt;&lt; <span class="stringliteral">&quot; check &lt;id:&quot;</span> &lt;&lt; p &lt;&lt; <span class="stringliteral">&quot;, id:&quot;</span> &lt;&lt; q &lt;&lt; <span class="stringliteral">&quot;&gt; &quot;</span></div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; &lt;&lt; <span class="stringliteral">&quot;at (&quot;</span> &lt;&lt; SVFUtil::<a class="code" href="namespaceSVF_1_1SVFUtil.html#a28c0ede7e4765d2a686fc8ae0f5641a4">getSourceLoc</a>(cs.getInstruction()) &lt;&lt; <span class="stringliteral">&quot;)\n&quot;</span>;</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <span class="keywordflow">if</span> (!passed)</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;test case failed!&quot;</span>);</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160;</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; <span class="keywordflow">if</span> (pPtsFiltered.<a class="code" href="classSVF_1_1PointsTo.html#ac4688413177b49b37dbbfd3ed188d59b">empty</a>())</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; {</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; msgStream &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a6c06020737f7dff22a666b75c28c5e7d">SVFUtil::wrnMsg</a>(<span class="stringliteral">&quot;\t WARNING&quot;</span>)</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; &lt;&lt; <span class="stringliteral">&quot; : pts(&quot;</span> &lt;&lt; p &lt;&lt; <span class="stringliteral">&quot;) is empty\n&quot;</span>;</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; }</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160;</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; <span class="keywordflow">if</span> (qPtsFiltered.<a class="code" href="classSVF_1_1PointsTo.html#ac4688413177b49b37dbbfd3ed188d59b">empty</a>())</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; {</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; msgStream &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a6c06020737f7dff22a666b75c28c5e7d">SVFUtil::wrnMsg</a>(<span class="stringliteral">&quot;\t WARNING&quot;</span>)</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; &lt;&lt; <span class="stringliteral">&quot; : pts(&quot;</span> &lt;&lt; q &lt;&lt; <span class="stringliteral">&quot;) is empty\n&quot;</span>;</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; }</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; <span class="keywordflow">if</span> (testName == <a class="code" href="classSVF_1_1PointerAnalysis.html#a7477a4301d548b93958e57df389cbba0">PointerAnalysis::aliasTestMustAlias</a>)</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; {</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; msgStream &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a6c06020737f7dff22a666b75c28c5e7d">SVFUtil::wrnMsg</a>(<span class="stringliteral">&quot;\t WARNING&quot;</span>)</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; &lt;&lt; <span class="stringliteral">&quot; : MUSTALIAS tests are actually MAYALIAS tests\n&quot;</span>;</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; }</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <span class="keywordflow">if</span> (testName == <a class="code" href="classSVF_1_1PointerAnalysis.html#a83b0a51d88fa7aadff6e9267765d07a5">PointerAnalysis::aliasTestPartialAlias</a>)</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; {</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; msgStream &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a6c06020737f7dff22a666b75c28c5e7d">SVFUtil::wrnMsg</a>(<span class="stringliteral">&quot;\t WARNING&quot;</span>)</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; &lt;&lt; <span class="stringliteral">&quot; : PARTIALALIAS tests are actually MAYALIAS tests\n&quot;</span>;</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; }</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; msgStream.flush();</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; }</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; }</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160;}</div><div class="ttc" id="classSVF_1_1BVDataPTAImpl_html"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00042">PointerAnalysisImpl.h:42</a></div></div>
1539
1539
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_a629ad3cef8929865b7319fb9e389f7bf"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#a629ad3cef8929865b7319fb9e389f7bf">SVF::TypeBasedHeapCloning::ppag</a></div><div class="ttdeci">SVFIR * ppag</div><div class="ttdoc">SVFIR the PTA uses. Just a shortcut for getPAG(). </div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8h_source.html#l00149">TypeBasedHeapCloning.h:149</a></div></div>
1540
1540
  <div class="ttc" id="TypeBasedHeapCloning_8cpp_html_a2be9728908f88e4e16b1e6218801fa06"><div class="ttname"><a href="TypeBasedHeapCloning_8cpp.html#a2be9728908f88e4e16b1e6218801fa06">isAliasTestFunction</a></div><div class="ttdeci">static bool isAliasTestFunction(std::string name)</div><div class="ttdoc">Returns true if the function name matches MAYALIAS, NOALIAS, etc. </div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8cpp_source.html#l00546">TypeBasedHeapCloning.cpp:546</a></div></div>
1541
- <div class="ttc" id="namespaceSVF_html_ab696aab940eb187dc81217efe8649af5"><div class="ttname"><a href="namespaceSVF.html#ab696aab940eb187dc81217efe8649af5">SVF::StoreInst</a></div><div class="ttdeci">llvm::StoreInst StoreInst</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00107">BasicTypes.h:107</a></div></div>
1541
+ <div class="ttc" id="namespaceSVF_html_ab696aab940eb187dc81217efe8649af5"><div class="ttname"><a href="namespaceSVF.html#ab696aab940eb187dc81217efe8649af5">SVF::StoreInst</a></div><div class="ttdeci">llvm::StoreInst StoreInst</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00108">BasicTypes.h:108</a></div></div>
1542
1542
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_a03ef2decb80ba07f4d98cae0a4497212"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#a03ef2decb80ba07f4d98cae0a4497212">SVF::TypeBasedHeapCloning::derefFnName</a></div><div class="ttdeci">static const std::string derefFnName</div><div class="ttdoc">deref function for TBHC alias tests. </div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8h_source.html#l00034">TypeBasedHeapCloning.h:34</a></div></div>
1543
1543
  <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#l00019">MTAResultValidator.h:19</a></div></div>
1544
1544
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a651cc82379c2d18cc2f69f25b2ae08db"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a651cc82379c2d18cc2f69f25b2ae08db">SVF::PointerAnalysis::aliasTestFailMayAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestFailMayAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00126">PointerAnalysis.h:126</a></div></div>
1545
1545
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac353221cc7aced590dcf3550a24b1570"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac353221cc7aced590dcf3550a24b1570">SVF::PointerAnalysis::aliasTestNoAlias</a></div><div class="ttdeci">static const std::string aliasTestNoAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00119">PointerAnalysis.h:119</a></div></div>
1546
1546
  <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>
1547
- <div class="ttc" id="namespaceSVF_html_adc8b60ca7d60cf6c81feae20e4a04c63"><div class="ttname"><a href="namespaceSVF.html#adc8b60ca7d60cf6c81feae20e4a04c63">SVF::CallInst</a></div><div class="ttdeci">llvm::CallInst CallInst</div><div class="ttdoc">LLVM Instructions. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00106">BasicTypes.h:106</a></div></div>
1548
- <div class="ttc" id="classSVF_1_1CallSite_html_ab36a6a35eea673d4bdca615efc4336b1"><div class="ttname"><a href="classSVF_1_1CallSite.html#ab36a6a35eea673d4bdca615efc4336b1">SVF::CallSite::getInstruction</a></div><div class="ttdeci">CallBase * getInstruction() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00216">BasicTypes.h:216</a></div></div>
1547
+ <div class="ttc" id="namespaceSVF_html_adc8b60ca7d60cf6c81feae20e4a04c63"><div class="ttname"><a href="namespaceSVF.html#adc8b60ca7d60cf6c81feae20e4a04c63">SVF::CallInst</a></div><div class="ttdeci">llvm::CallInst CallInst</div><div class="ttdoc">LLVM Instructions. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00107">BasicTypes.h:107</a></div></div>
1548
+ <div class="ttc" id="classSVF_1_1CallSite_html_ab36a6a35eea673d4bdca615efc4336b1"><div class="ttname"><a href="classSVF_1_1CallSite.html#ab36a6a35eea673d4bdca615efc4336b1">SVF::CallSite::getInstruction</a></div><div class="ttdeci">CallBase * getInstruction() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00217">BasicTypes.h:217</a></div></div>
1549
1549
  <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#l00269">SVFUtil.cpp:269</a></div></div>
1550
1550
  <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">SVF::AliasResult</a></div><div class="ttdeci">AliasResult</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00195">SVFBasicTypes.h:195</a></div></div>
1551
1551
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a6a55f1f8598998a3ffbbc67d32eaf8c4"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a6a55f1f8598998a3ffbbc67d32eaf8c4">SVF::SVFUtil::sucMsg</a></div><div class="ttdeci">std::string sucMsg(std::string msg)</div><div class="ttdoc">Returns successful message by converting a string into green string output. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00056">SVFUtil.cpp:56</a></div></div>
@@ -1558,9 +1558,9 @@ Private Attributes</h2></td></tr>
1558
1558
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_a7d3f7d27c9491b099a623ba03b1c4732"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#a7d3f7d27c9491b099a623ba03b1c4732">SVF::TypeBasedHeapCloning::pta</a></div><div class="ttdeci">BVDataPTAImpl * pta</div><div class="ttdoc">PTA extending this class. </div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8h_source.html#l00147">TypeBasedHeapCloning.h:147</a></div></div>
1559
1559
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a13ce6b930a35877f17bffd4b89e22654"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a13ce6b930a35877f17bffd4b89e22654">SVF::PointerAnalysis::aliasTestMayAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestMayAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00118">PointerAnalysis.h:118</a></div></div>
1560
1560
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a18347e41bc66b16e3f42c7c52811ad42"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a18347e41bc66b16e3f42c7c52811ad42">SVF::PointerAnalysis::aliasTestFailNoAlias</a></div><div class="ttdeci">static const std::string aliasTestFailNoAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00127">PointerAnalysis.h:127</a></div></div>
1561
- <div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00065">BasicTypes.h:65</a></div></div>
1561
+ <div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00066">BasicTypes.h:66</a></div></div>
1562
1562
  <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#l00099">PointerAnalysisImpl.h:99</a></div></div>
1563
- <div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00068">BasicTypes.h:68</a></div></div>
1563
+ <div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00069">BasicTypes.h:69</a></div></div>
1564
1564
  <div class="ttc" id="classSVF_1_1PointsTo_html_ac4688413177b49b37dbbfd3ed188d59b"><div class="ttname"><a href="classSVF_1_1PointsTo.html#ac4688413177b49b37dbbfd3ed188d59b">SVF::PointsTo::empty</a></div><div class="ttdeci">bool empty(void) const</div><div class="ttdoc">Returns true if set is empty. </div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8cpp_source.html#l00094">PointsTo.cpp:94</a></div></div>
1565
1565
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_ab1467e374b238b0f68d3fdd8f3ef6596"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#ab1467e374b238b0f68d3fdd8f3ef6596">SVF::TypeBasedHeapCloning::mangledDerefFnName</a></div><div class="ttdeci">static const std::string mangledDerefFnName</div><div class="ttdoc">deref function (mangled) for TBHC alias tests. </div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8h_source.html#l00036">TypeBasedHeapCloning.h:36</a></div></div>
1566
1566
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_aec884481726cfaf19c4ab8ec8d9195b7"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aec884481726cfaf19c4ab8ec8d9195b7">SVF::PointerAnalysis::aliasTestMustAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestMustAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00124">PointerAnalysis.h:124</a></div></div>
@@ -1575,12 +1575,12 @@ Private Attributes</h2></td></tr>
1575
1575
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a83b0a51d88fa7aadff6e9267765d07a5"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a83b0a51d88fa7aadff6e9267765d07a5">SVF::PointerAnalysis::aliasTestPartialAlias</a></div><div class="ttdeci">static const std::string aliasTestPartialAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00121">PointerAnalysis.h:121</a></div></div>
1576
1576
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_add00f1c20a524c0be903af679bd6f638"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#add00f1c20a524c0be903af679bd6f638">SVF::TypeBasedHeapCloning::isBase</a></div><div class="ttdeci">bool isBase(const DIType *a, const DIType *b) const</div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8cpp_source.html#l00042">TypeBasedHeapCloning.cpp:42</a></div></div>
1577
1577
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_a219edef6c013a953ed12ee3c56bde6de"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#a219edef6c013a953ed12ee3c56bde6de">SVF::TypeBasedHeapCloning::getType</a></div><div class="ttdeci">const DIType * getType(NodeID o) const</div><div class="ttdoc">Returns the type (from objToType) of o. Asserts existence. </div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8cpp_source.html#l00058">TypeBasedHeapCloning.cpp:58</a></div></div>
1578
- <div class="ttc" id="classSVF_1_1CallSite_html_ae9b0172e29199f2a938d7cf9e42241cf"><div class="ttname"><a href="classSVF_1_1CallSite.html#ae9b0172e29199f2a938d7cf9e42241cf">SVF::CallSite::getCalledFunction</a></div><div class="ttdeci">Function * getCalledFunction() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00253">BasicTypes.h:253</a></div></div>
1578
+ <div class="ttc" id="classSVF_1_1CallSite_html_ae9b0172e29199f2a938d7cf9e42241cf"><div class="ttname"><a href="classSVF_1_1CallSite.html#ae9b0172e29199f2a938d7cf9e42241cf">SVF::CallSite::getCalledFunction</a></div><div class="ttdeci">Function * getCalledFunction() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00254">BasicTypes.h:254</a></div></div>
1579
1579
  <div class="ttc" id="classSVF_1_1CallICFGNode_html"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html">SVF::CallICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00363">ICFGNode.h:363</a></div></div>
1580
1580
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acf40310917909e4234282c0695a43160"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">SVF::LLVMModuleSet::getLLVMModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * getLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00070">LLVMModule.h:70</a></div></div>
1581
1581
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a202de7ad2bea0311e2f75894c030e7a9"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a202de7ad2bea0311e2f75894c030e7a9">SVF::SVFUtil::getLLVMCallSite</a></div><div class="ttdeci">CallSite getLLVMCallSite(const Instruction *inst)</div><div class="ttdoc">Return LLVM callsite given a instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00217">SVFUtil.h:217</a></div></div>
1582
1582
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_aefd4e9ea66da5ad84a45efead823eb22"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aefd4e9ea66da5ad84a45efead823eb22">SVF::PointerAnalysis::aliasTestFailNoAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestFailNoAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00128">PointerAnalysis.h:128</a></div></div>
1583
- <div class="ttc" id="classSVF_1_1CallSite_html"><div class="ttname"><a href="classSVF_1_1CallSite.html">SVF::CallSite</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00208">BasicTypes.h:208</a></div></div>
1583
+ <div class="ttc" id="classSVF_1_1CallSite_html"><div class="ttname"><a href="classSVF_1_1CallSite.html">SVF::CallSite</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00209">BasicTypes.h:209</a></div></div>
1584
1584
  <div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_adaba5a41a60e32d18d964bdb8ae5b2df"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#adaba5a41a60e32d18d964bdb8ae5b2df">SVF::BVDataPTAImpl::alias</a></div><div class="ttdeci">virtual AliasResult alias(const Value *V1, const Value *V2)</div><div class="ttdoc">Interface expose to users of our pointer analysis, given Value infos. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8cpp_source.html#l00463">PointerAnalysisImpl.cpp:463</a></div></div>
1585
1585
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8182be247907420db00837cef9bcfa70"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVF::SVFUtil::dyn_cast</a></div><div class="ttdeci">LLVM_NODISCARD std::enable_if&lt;!is_simple_type&lt; Y &gt;::value, typename cast_retty&lt; X, const Y &gt;::ret_type &gt;::type dyn_cast(const Y &amp;Val)</div><div class="ttdef"><b>Definition:</b> <a href="Casting_8h_source.html#l00343">Casting.h:343</a></div></div>
1586
1586
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_ac4565775cced4444ba007e310c4a02d8"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#ac4565775cced4444ba007e310c4a02d8">SVF::TypeBasedHeapCloning::getTypeFromCTirMetadata</a></div><div class="ttdeci">const DIType * getTypeFromCTirMetadata(const Value *)</div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8cpp_source.html#l00519">TypeBasedHeapCloning.cpp:519</a></div></div>
@@ -1592,7 +1592,7 @@ Private Attributes</h2></td></tr>
1592
1592
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a5d4bb92f5df30417f414397f8e58cf01"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a5d4bb92f5df30417f414397f8e58cf01">SVF::SVFUtil::errMsg</a></div><div class="ttdeci">std::string errMsg(std::string msg)</div><div class="ttdoc">Print error message by converting a string into red string output. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00078">SVFUtil.cpp:78</a></div></div>
1593
1593
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_aed4e5066f6ddef83afaf60adbcc11de0"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aed4e5066f6ddef83afaf60adbcc11de0">SVF::PointerAnalysis::PTAName</a></div><div class="ttdeci">virtual const std::string PTAName() const</div><div class="ttdoc">Return PTA name. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00430">PointerAnalysis.h:430</a></div></div>
1594
1594
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a32c6f12ce8bc0554dbb6aafa36f9a235"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a32c6f12ce8bc0554dbb6aafa36f9a235">SVF::PointerAnalysis::aliasTestFailMayAlias</a></div><div class="ttdeci">static const std::string aliasTestFailMayAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00125">PointerAnalysis.h:125</a></div></div>
1595
- <div class="ttc" id="namespaceSVF_html_ad127b0ad478640ede3d426e3a58d2632"><div class="ttname"><a href="namespaceSVF.html#ad127b0ad478640ede3d426e3a58d2632">SVF::DIType</a></div><div class="ttdeci">llvm::DIType DIType</div><div class="ttdoc">LLVM debug information. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00127">BasicTypes.h:127</a></div></div>
1595
+ <div class="ttc" id="namespaceSVF_html_ad127b0ad478640ede3d426e3a58d2632"><div class="ttname"><a href="namespaceSVF.html#ad127b0ad478640ede3d426e3a58d2632">SVF::DIType</a></div><div class="ttdeci">llvm::DIType DIType</div><div class="ttdoc">LLVM debug information. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00128">BasicTypes.h:128</a></div></div>
1596
1596
  <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239">SVF::NoAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00197">SVFBasicTypes.h:197</a></div></div>
1597
1597
  <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2">SVF::MustAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00199">SVFBasicTypes.h:199</a></div></div>
1598
1598
  </div><!-- fragment -->
@@ -750,7 +750,7 @@ Additional Inherited Members</h2></td></tr>
750
750
  <div class="fragment"><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;{</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; std::string str;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;UnaryOPStmt: [Var&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1UnaryOPStmt.html#ae2ffeaec2d2e4de69826495006c35856">getResID</a>() &lt;&lt; <span class="stringliteral">&quot; &lt;-- &quot;</span> &lt;&lt; <span class="stringliteral">&quot; opcode&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1UnaryOPStmt.html#af29723d5e777b10d53d48263a786f5b6">getOpcode</a>() &lt;&lt; <span class="stringliteral">&quot; Var&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1UnaryOPStmt.html#a8029b46bccda153ca2e677686c2655e2">getOpVarID</a>() &lt;&lt; <span class="stringliteral">&quot;]\t&quot;</span>;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a63c2ff1420867ea4ef0a94d28b3f0558">Options::ShowSVFIRValue</a>)</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; {</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; rawstr &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a65ee8b43a3a4999eb112a197d1a9f882">getValue</a>());</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; }</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;}</div><div class="ttc" id="classSVF_1_1UnaryOPStmt_html_af29723d5e777b10d53d48263a786f5b6"><div class="ttname"><a href="classSVF_1_1UnaryOPStmt.html#af29723d5e777b10d53d48263a786f5b6">SVF::UnaryOPStmt::getOpcode</a></div><div class="ttdeci">u32_t getOpcode() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00914">SVFStatements.h:914</a></div></div>
751
751
  <div class="ttc" id="classSVF_1_1SVFStmt_html_a65ee8b43a3a4999eb112a197d1a9f882"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a65ee8b43a3a4999eb112a197d1a9f882">SVF::SVFStmt::getValue</a></div><div class="ttdeci">const Value * getValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00115">SVFStatements.h:115</a></div></div>
752
752
  <div class="ttc" id="classSVF_1_1UnaryOPStmt_html_ae2ffeaec2d2e4de69826495006c35856"><div class="ttname"><a href="classSVF_1_1UnaryOPStmt.html#ae2ffeaec2d2e4de69826495006c35856">SVF::UnaryOPStmt::getResID</a></div><div class="ttdeci">NodeID getResID() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8cpp_source.html#l00296">SVFStatements.cpp:296</a></div></div>
753
- <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
753
+ <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00080">BasicTypes.h:80</a></div></div>
754
754
  <div class="ttc" id="classSVF_1_1UnaryOPStmt_html_a8029b46bccda153ca2e677686c2655e2"><div class="ttname"><a href="classSVF_1_1UnaryOPStmt.html#a8029b46bccda153ca2e677686c2655e2">SVF::UnaryOPStmt::getOpVarID</a></div><div class="ttdeci">NodeID getOpVarID() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8cpp_source.html#l00292">SVFStatements.cpp:292</a></div></div>
755
755
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7486fd8e5350879ed1cbd835c0d4e191"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVF::SVFUtil::value2String</a></div><div class="ttdeci">const std::string value2String(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00392">SVFUtil.cpp:392</a></div></div>
756
756
  <div class="ttc" id="classSVF_1_1Options_html_a63c2ff1420867ea4ef0a94d28b3f0558"><div class="ttname"><a href="classSVF_1_1Options.html#a63c2ff1420867ea4ef0a94d28b3f0558">SVF::Options::ShowSVFIRValue</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ShowSVFIRValue</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00134">Options.h:134</a></div></div>
@@ -805,7 +805,7 @@ Private Member Functions</h2></td></tr>
805
805
  <p>Reimplemented from <a class="el" href="classSVF_1_1VFGNode.html#a0342b5a6f270f4ff0e8e2a9b0082c6c5">SVF::VFGNode</a>.</p>
806
806
 
807
807
  <p class="definition">Definition at line <a class="el" href="VFG_8cpp_source.html#l00166">166</a> of file <a class="el" href="VFG_8cpp_source.html">VFG.cpp</a>.</p>
808
- <div class="fragment"><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;{</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; std::string str;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;UnaryOPVFGNode ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;PAGEdge: [&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1UnaryOPVFGNode.html#a4403fd618b01a26c7c1e8c5da2319db6">res</a>-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() &lt;&lt; <span class="stringliteral">&quot; = Unary(&quot;</span>;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">for</span>(UnaryOPVFGNode::OPVers::const_iterator it = <a class="code" href="classSVF_1_1UnaryOPVFGNode.html#ab63ddaa05181f2c60ca7a001001a908d">opVerBegin</a>(), eit = <a class="code" href="classSVF_1_1UnaryOPVFGNode.html#af31a06d33f41bdcff625ac23e269708c">opVerEnd</a>();</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; it != eit; it++)</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; rawstr &lt;&lt; it-&gt;second-&gt;getId() &lt;&lt; <span class="stringliteral">&quot;, &quot;</span>;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;)]\t&quot;</span>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1UnaryOPVFGNode.html#a4403fd618b01a26c7c1e8c5da2319db6">res</a>-&gt;<a class="code" href="classSVF_1_1SVFVar.html#a1ace69053c2c4436fd78d5624bd0086a">hasValue</a>())</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; {</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(<a class="code" href="classSVF_1_1UnaryOPVFGNode.html#a4403fd618b01a26c7c1e8c5da2319db6">res</a>-&gt;<a class="code" href="classSVF_1_1SVFVar.html#afaa33caa8d2a306f6741d9d066243e40">getValue</a>());</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; }</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
808
+ <div class="fragment"><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;{</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; std::string str;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;UnaryOPVFGNode ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;PAGEdge: [&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1UnaryOPVFGNode.html#a4403fd618b01a26c7c1e8c5da2319db6">res</a>-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() &lt;&lt; <span class="stringliteral">&quot; = Unary(&quot;</span>;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">for</span>(UnaryOPVFGNode::OPVers::const_iterator it = <a class="code" href="classSVF_1_1UnaryOPVFGNode.html#ab63ddaa05181f2c60ca7a001001a908d">opVerBegin</a>(), eit = <a class="code" href="classSVF_1_1UnaryOPVFGNode.html#af31a06d33f41bdcff625ac23e269708c">opVerEnd</a>();</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; it != eit; it++)</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; rawstr &lt;&lt; it-&gt;second-&gt;getId() &lt;&lt; <span class="stringliteral">&quot;, &quot;</span>;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;)]\t&quot;</span>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1UnaryOPVFGNode.html#a4403fd618b01a26c7c1e8c5da2319db6">res</a>-&gt;<a class="code" href="classSVF_1_1SVFVar.html#a1ace69053c2c4436fd78d5624bd0086a">hasValue</a>())</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; {</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(<a class="code" href="classSVF_1_1UnaryOPVFGNode.html#a4403fd618b01a26c7c1e8c5da2319db6">res</a>-&gt;<a class="code" href="classSVF_1_1SVFVar.html#afaa33caa8d2a306f6741d9d066243e40">getValue</a>());</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; }</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00080">BasicTypes.h:80</a></div></div>
809
809
  <div class="ttc" id="classSVF_1_1UnaryOPVFGNode_html_a4403fd618b01a26c7c1e8c5da2319db6"><div class="ttname"><a href="classSVF_1_1UnaryOPVFGNode.html#a4403fd618b01a26c7c1e8c5da2319db6">SVF::UnaryOPVFGNode::res</a></div><div class="ttdeci">const PAGNode * res</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00470">VFGNode.h:470</a></div></div>
810
810
  <div class="ttc" id="classSVF_1_1UnaryOPVFGNode_html_ab63ddaa05181f2c60ca7a001001a908d"><div class="ttname"><a href="classSVF_1_1UnaryOPVFGNode.html#ab63ddaa05181f2c60ca7a001001a908d">SVF::UnaryOPVFGNode::opVerBegin</a></div><div class="ttdeci">OPVers::const_iterator opVerBegin() const</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00521">VFGNode.h:521</a></div></div>
811
811
  <div class="ttc" id="classSVF_1_1SVFVar_html_a1ace69053c2c4436fd78d5624bd0086a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a1ace69053c2c4436fd78d5624bd0086a">SVF::SVFVar::hasValue</a></div><div class="ttdeci">bool hasValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00112">SVFVariables.h:112</a></div></div>
@@ -2069,7 +2069,7 @@ Additional Inherited Members</h2></td></tr>
2069
2069
  <div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVF::SVFStmt::Cmp</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
2070
2070
  <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>
2071
2071
  <div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a0a9a0f650e864e89b7cbb3dc8c8aa197"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a0a9a0f650e864e89b7cbb3dc8c8aa197">SVF::SVFStmt::Addr</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
2072
- <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00133">BasicTypes.h:133</a></div></div>
2072
+ <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00134">BasicTypes.h:134</a></div></div>
2073
2073
  <div class="ttc" id="classSVF_1_1VFG_html_a2e182f7e90a3519a2147a300470a88f1"><div class="ttname"><a href="classSVF_1_1VFG.html#a2e182f7e90a3519a2147a300470a88f1">SVF::VFG::getPAGEdgeSet</a></div><div class="ttdeci">virtual SVFStmt::SVFStmtSetTy &amp; getPAGEdgeSet(SVFStmt::PEDGEK kind)</div><div class="ttdoc">Get PAGEdge set. </div><div class="ttdef"><b>Definition:</b> <a href="VFG_8h_source.html#l00435">VFG.h:435</a></div></div>
2074
2074
  <div class="ttc" id="classSVF_1_1SVFStmt_html_a8cd7b6c6fd8b030b1421d95a086359f4"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a8cd7b6c6fd8b030b1421d95a086359f4">SVF::SVFStmt::SVFStmtSetTy</a></div><div class="ttdeci">GenericNode&lt; SVFVar, SVFStmt &gt;::GEdgeSetTy SVFStmtSetTy</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00177">SVFStatements.h:177</a></div></div>
2075
2075
  <div class="ttc" id="classSVF_1_1SVFIR_html_a615c056c876b59d1fd174a2ac9ade27c"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a615c056c876b59d1fd174a2ac9ade27c">SVF::SVFIR::getFunArgsMap</a></div><div class="ttdeci">FunToArgsListMap &amp; getFunArgsMap()</div><div class="ttdoc">Get function arguments list. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00220">SVFIR.h:220</a></div></div>
@@ -2103,7 +2103,7 @@ Additional Inherited Members</h2></td></tr>
2103
2103
  <div class="ttc" id="classSVF_1_1VFG_html_a373e7066630719ffb7c62681f2c2a74e"><div class="ttname"><a href="classSVF_1_1VFG.html#a373e7066630719ffb7c62681f2c2a74e">SVF::VFG::addLoadVFGNode</a></div><div class="ttdeci">void addLoadVFGNode(const LoadStmt *load)</div><div class="ttdoc">Add a Load VFG node. </div><div class="ttdef"><b>Definition:</b> <a href="VFG_8h_source.html#l00512">VFG.h:512</a></div></div>
2104
2104
  <div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9ad9397ec243a61992dc2b5681bea587fa"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad9397ec243a61992dc2b5681bea587fa">SVF::SVFStmt::Select</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
2105
2105
  <div class="ttc" id="classSVF_1_1SVFIR_html_a650b3931af337a92ffcb5dad5ab47b22"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a650b3931af337a92ffcb5dad5ab47b22">SVF::SVFIR::getCallSiteRets</a></div><div class="ttdeci">CSToRetMap &amp; getCallSiteRets()</div><div class="ttdoc">Get callsite return. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00249">SVFIR.h:249</a></div></div>
2106
- <div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00149">BasicTypes.h:149</a></div></div>
2106
+ <div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00150">BasicTypes.h:150</a></div></div>
2107
2107
  <div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a375b956af2119d7abca8f1995f7701fd"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a375b956af2119d7abca8f1995f7701fd">SVF::SVFStmt::ThreadFork</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
2108
2108
  <div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9ad58f5e59c55e1ffd23b83d16224fed13"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad58f5e59c55e1ffd23b83d16224fed13">SVF::SVFStmt::BinaryOp</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
2109
2109
  <div class="ttc" id="classSVF_1_1CmpStmt_html"><div class="ttname"><a href="classSVF_1_1CmpStmt.html">SVF::CmpStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00789">SVFStatements.h:789</a></div></div>
@@ -2296,7 +2296,7 @@ Additional Inherited Members</h2></td></tr>
2296
2296
  <div class="ttc" id="classSVF_1_1ICFG_html"><div class="ttname"><a href="classSVF_1_1ICFG.html">SVF::ICFG</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00046">ICFG.h:46</a></div></div>
2297
2297
  <div class="ttc" id="classSVF_1_1SVFIR_html_afe8274c3b7317fccef5314662a182046"><div class="ttname"><a href="classSVF_1_1SVFIR.html#afe8274c3b7317fccef5314662a182046">SVF::SVFIR::funHasRet</a></div><div class="ttdeci">bool funHasRet(const SVFFunction *func) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00276">SVFIR.h:276</a></div></div>
2298
2298
  <div class="ttc" id="classSVF_1_1CallICFGNode_html_a674753d5ca0fbe28674acb25291f2bcf"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">SVF::CallICFGNode::getCallSite</a></div><div class="ttdeci">const Instruction * getCallSite() const</div><div class="ttdoc">Return callsite. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00380">ICFGNode.h:380</a></div></div>
2299
- <div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00149">BasicTypes.h:149</a></div></div>
2299
+ <div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00150">BasicTypes.h:150</a></div></div>
2300
2300
  <div class="ttc" id="classSVF_1_1SVFIR_html_a34e27b8bcfeaafda190dcdb9169a346f"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a34e27b8bcfeaafda190dcdb9169a346f">SVF::SVFIR::getFunRet</a></div><div class="ttdeci">const SVFVar * getFunRet(const SVFFunction *func) const</div><div class="ttdoc">Get function return list. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00270">SVFIR.h:270</a></div></div>
2301
2301
  <div class="ttc" id="classSVF_1_1GenericGraph_html_a43c9c773bfa17abf481c33073e30d01b"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">SVF::GenericGraph::getGNode</a></div><div class="ttdeci">NodeType * getGNode(NodeID id) const</div><div class="ttdoc">Get a node. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00391">GenericGraph.h:391</a></div></div>
2302
2302
  <div class="ttc" id="classSVF_1_1SVFIR_html_a3145677c7a3763fc0d6aa7e21b264ab6"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a3145677c7a3763fc0d6aa7e21b264ab6">SVF::SVFIR::getCallSiteRet</a></div><div class="ttdeci">const SVFVar * getCallSiteRet(const RetICFGNode *cs) const</div><div class="ttdoc">Get callsite return. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00254">SVFIR.h:254</a></div></div>
@@ -3810,7 +3810,7 @@ Additional Inherited Members</h2></td></tr>
3810
3810
  <p class="definition">Definition at line <a class="el" href="VFG_8cpp_source.html#l00933">933</a> of file <a class="el" href="VFG_8cpp_source.html">VFG.cpp</a>.</p>
3811
3811
  <div class="fragment"><div class="line"><a name="l00934"></a><span class="lineno"> 934</span>&#160;{</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>&#160; <a class="code" href="classSVF_1_1VFG.html#a0bdac7337a393ad2e21a33ec1978ca3f">VFGEdgeSetTy</a> vfEdgesAtIndCallSite;</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; PointerAnalysis::CallEdgeMap::const_iterator iter = pta-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">getIndCallMap</a>().begin();</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; PointerAnalysis::CallEdgeMap::const_iterator eiter = pta-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">getIndCallMap</a>().end();</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160; <span class="keywordflow">for</span> (; iter != eiter; iter++)</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; {</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* newcs = iter-&gt;first;</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(newcs-&gt;<a class="code" href="classSVF_1_1CallICFGNode.html#aa11226a2e4fa6a7b1d78006cc8ca0518">isIndirectCall</a>() &amp;&amp; <span class="stringliteral">&quot;this is not an indirect call?&quot;</span>);</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">PointerAnalysis::FunctionSet</a> &amp; functions = iter-&gt;second;</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; <span class="keywordflow">for</span> (PointerAnalysis::FunctionSet::const_iterator func_iter = functions.begin(); func_iter != functions.end(); func_iter++)</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; {</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* func = *func_iter;</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; <a class="code" href="classSVF_1_1VFG.html#aa055ce3c4fe1cde5529cd63dd1ef2ed6">connectCallerAndCallee</a>(newcs, func, vfEdgesAtIndCallSite);</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; }</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160; }</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160;}</div><div class="ttc" id="classSVF_1_1VFG_html_a0bdac7337a393ad2e21a33ec1978ca3f"><div class="ttname"><a href="classSVF_1_1VFG.html#a0bdac7337a393ad2e21a33ec1978ca3f">SVF::VFG::VFGEdgeSetTy</a></div><div class="ttdeci">VFGEdge::VFGEdgeSetTy VFGEdgeSetTy</div><div class="ttdef"><b>Definition:</b> <a href="VFG_8h_source.html#l00077">VFG.h:77</a></div></div>
3812
3812
  <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>
3813
- <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00133">BasicTypes.h:133</a></div></div>
3813
+ <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00134">BasicTypes.h:134</a></div></div>
3814
3814
  <div class="ttc" id="classSVF_1_1CallICFGNode_html_aa11226a2e4fa6a7b1d78006cc8ca0518"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#aa11226a2e4fa6a7b1d78006cc8ca0518">SVF::CallICFGNode::isIndirectCall</a></div><div class="ttdeci">bool isIndirectCall() const</div><div class="ttdoc">Return true if this is an indirect call. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00411">ICFGNode.h:411</a></div></div>
3815
3815
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac1422cd8b449fdb4a1f7c539364e4c41"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">SVF::PointerAnalysis::FunctionSet</a></div><div class="ttdeci">Set&lt; const SVFFunction * &gt; FunctionSet</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00110">PointerAnalysis.h:110</a></div></div>
3816
3816
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a1ca30dfa42702071b65d363c76d25cbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">SVF::PointerAnalysis::getIndCallMap</a></div><div class="ttdeci">CallEdgeMap &amp; getIndCallMap()</div><div class="ttdoc">Get callees from an indirect callsite. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00380">PointerAnalysis.h:380</a></div></div>
@@ -734,7 +734,7 @@ Additional Inherited Members</h2></td></tr>
734
734
  <p class="definition">Definition at line <a class="el" href="VFG_8cpp_source.html#l00379">379</a> of file <a class="el" href="VFG_8cpp_source.html">VFG.cpp</a>.</p>
735
735
  <div class="fragment"><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;{</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; std::string str;</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;VFGEdge: [&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>() &lt;&lt; <span class="stringliteral">&quot;&lt;--&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>() &lt;&lt; <span class="stringliteral">&quot;]\t&quot;</span>;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</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>
736
736
  <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>
737
- <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
737
+ <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00080">BasicTypes.h:80</a></div></div>
738
738
  </div><!-- fragment -->
739
739
  </div>
740
740
  </div>
@@ -623,7 +623,7 @@ Friends</h2></td></tr>
623
623
  <p>Reimplemented in <a class="el" href="classSVF_1_1NullPtrVFGNode.html#a75c8b89a34bfd89a4af2c699cdb626b9">SVF::NullPtrVFGNode</a>, <a class="el" href="classSVF_1_1InterPHIVFGNode.html#aff35aebdc8d955df160e51da7b666a7e">SVF::InterPHIVFGNode</a>, <a class="el" href="classSVF_1_1FormalRetVFGNode.html#ab1ae2339d7408d9156cdfe5ab4559e66">SVF::FormalRetVFGNode</a>, <a class="el" href="classSVF_1_1ActualRetVFGNode.html#a4d1e7df32604becd2e2b60fe2e5cfbfa">SVF::ActualRetVFGNode</a>, <a class="el" href="classSVF_1_1FormalParmVFGNode.html#ac4e695d6ee7bb7c5ed4e273567e7c1cc">SVF::FormalParmVFGNode</a>, <a class="el" href="classSVF_1_1ActualParmVFGNode.html#a60d6ce4c4fe2cf54be45e58b2b93c9f6">SVF::ActualParmVFGNode</a>, <a class="el" href="classSVF_1_1ArgumentVFGNode.html#a3c10cd63e18f79ccc66f4687d05cb8c5">SVF::ArgumentVFGNode</a>, <a class="el" href="classSVF_1_1AddrVFGNode.html#ac26fbce400355f43fdc22ad88a8d9067">SVF::AddrVFGNode</a>, <a class="el" href="classSVF_1_1IntraPHIVFGNode.html#a145413d87e9174b5eb70b871b9dfa13e">SVF::IntraPHIVFGNode</a>, <a class="el" href="classSVF_1_1PHIVFGNode.html#a7fb9cbed3718922cd81b18d069c79aea">SVF::PHIVFGNode</a>, <a class="el" href="classSVF_1_1GepVFGNode.html#ad27376633c939952878d5d73621ec638">SVF::GepVFGNode</a>, <a class="el" href="classSVF_1_1BranchVFGNode.html#a131fe96308f67b307ea08e645b019e13">SVF::BranchVFGNode</a>, <a class="el" href="classSVF_1_1UnaryOPVFGNode.html#ad0b45546c62bdef367149b58f530f89d">SVF::UnaryOPVFGNode</a>, <a class="el" href="classSVF_1_1InterMSSAPHISVFGNode.html#a286e9064de854a84bdd2efe8f7d73688">SVF::InterMSSAPHISVFGNode</a>, <a class="el" href="classSVF_1_1BinaryOPVFGNode.html#aa743cf19c5dc91dbb0c7b8981fecc6c4">SVF::BinaryOPVFGNode</a>, <a class="el" href="classSVF_1_1IntraMSSAPHISVFGNode.html#ad463be283dcad18654cee4311d071a47">SVF::IntraMSSAPHISVFGNode</a>, <a class="el" href="classSVF_1_1CmpVFGNode.html#aa08c4475c47beb0d026acab859d68117">SVF::CmpVFGNode</a>, <a class="el" href="classSVF_1_1MSSAPHISVFGNode.html#a1a07b3e8da65d17c16ed34a4f66b80dd">SVF::MSSAPHISVFGNode</a>, <a class="el" href="classSVF_1_1CopyVFGNode.html#ad86bbc5ec4a9ea226364a84e04724b37">SVF::CopyVFGNode</a>, <a class="el" href="classSVF_1_1StoreVFGNode.html#aba7e8b8329caf412a55f5880f68414fe">SVF::StoreVFGNode</a>, <a class="el" href="classSVF_1_1ActualOUTSVFGNode.html#a460d0d6f338c33e39d810f7921237b5c">SVF::ActualOUTSVFGNode</a>, <a class="el" href="classSVF_1_1LoadVFGNode.html#aad3591f38e30c5168d4accb76ac8dc04">SVF::LoadVFGNode</a>, <a class="el" href="classSVF_1_1ActualINSVFGNode.html#a5f583665f7e094dc4f7c387f4522a1a5">SVF::ActualINSVFGNode</a>, <a class="el" href="classSVF_1_1StmtVFGNode.html#aa5011ff12de490146ab106e90d0b6ad8">SVF::StmtVFGNode</a>, <a class="el" href="classSVF_1_1FormalOUTSVFGNode.html#a45b1aafb8a2464c868c5249b37e9ff0a">SVF::FormalOUTSVFGNode</a>, <a class="el" href="classSVF_1_1FormalINSVFGNode.html#a4022ecd01a88758b5fa7d22856c89745">SVF::FormalINSVFGNode</a>, and <a class="el" href="classSVF_1_1MRSVFGNode.html#a232213efbfa9e21b7410de6b4040c475">SVF::MRSVFGNode</a>.</p>
624
624
 
625
625
  <p class="definition">Definition at line <a class="el" href="VFG_8cpp_source.html#l00040">40</a> of file <a class="el" href="VFG_8cpp_source.html">VFG.cpp</a>.</p>
626
- <div class="fragment"><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;{</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; std::string str;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;VFGNode ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
626
+ <div class="fragment"><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;{</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; std::string str;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;VFGNode ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00080">BasicTypes.h:80</a></div></div>
627
627
  <div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00169">GenericGraph.h:169</a></div></div>
628
628
  </div><!-- fragment -->
629
629
  </div>
@@ -487,7 +487,7 @@ Additional Inherited Members</h2></td></tr>
487
487
  <p>Reimplemented in <a class="el" href="classSVF_1_1DummyValVar.html#a4da61151fed6a64cc361d69276d00b84">SVF::DummyValVar</a>, <a class="el" href="classSVF_1_1VarArgPN.html#a617077176f0ea586a0cf9a4a1034e99d">SVF::VarArgPN</a>, <a class="el" href="classSVF_1_1RetPN.html#a9824061477c142e5dba14af14fa53aa2">SVF::RetPN</a>, and <a class="el" href="classSVF_1_1GepValVar.html#ac9016b61dde44eb89ea715a0619994de">SVF::GepValVar</a>.</p>
488
488
 
489
489
  <p class="definition">Definition at line <a class="el" href="SVFVariables_8cpp_source.html#l00107">107</a> of file <a class="el" href="SVFVariables_8cpp_source.html">SVFVariables.cpp</a>.</p>
490
- <div class="fragment"><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;{</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; std::string str;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;ValVar ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a63c2ff1420867ea4ef0a94d28b3f0558">Options::ShowSVFIRValue</a>)</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; {</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; rawstr &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
490
+ <div class="fragment"><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;{</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; std::string str;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;ValVar ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a63c2ff1420867ea4ef0a94d28b3f0558">Options::ShowSVFIRValue</a>)</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; {</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; rawstr &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00080">BasicTypes.h:80</a></div></div>
491
491
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7486fd8e5350879ed1cbd835c0d4e191"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVF::SVFUtil::value2String</a></div><div class="ttdeci">const std::string value2String(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00392">SVFUtil.cpp:392</a></div></div>
492
492
  <div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00169">GenericGraph.h:169</a></div></div>
493
493
  <div class="ttc" id="classSVF_1_1SVFVar_html_a7deb494ac20ed56fca31a4f1fd92deea"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">SVF::SVFVar::value</a></div><div class="ttdeci">const Value * value</div><div class="ttdoc">value of this SVFIR node </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00081">SVFVariables.h:81</a></div></div>