svf-tools 1.0.372 → 1.0.376

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 (254) hide show
  1. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +3 -3
  2. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +5 -6
  3. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +10 -10
  4. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +1 -1
  5. package/SVF-doxygen/html/html/Conditions_8cpp_source.html +1 -1
  6. package/SVF-doxygen/html/html/ConsGEdge_8h_source.html +1 -1
  7. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +3 -3
  8. package/SVF-doxygen/html/html/ConsG_8h_source.html +7 -7
  9. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +6 -6
  10. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +3 -3
  11. package/SVF-doxygen/html/html/DDAClient_8h_source.html +1 -1
  12. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +15 -15
  14. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +2 -2
  15. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +7 -7
  16. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +7 -7
  17. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +1 -1
  18. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +1 -1
  19. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +4 -10
  20. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +3 -3
  21. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +6 -6
  22. package/SVF-doxygen/html/html/IRGraph_8h_source.html +2 -2
  23. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +2 -2
  24. package/SVF-doxygen/html/html/LLVMUtil_8h.html +3 -3
  25. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +2 -2
  26. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +1 -1
  27. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +11 -11
  28. package/SVF-doxygen/html/html/LocationSet_8h_source.html +10 -11
  29. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +10 -10
  30. package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +1 -1
  31. package/SVF-doxygen/html/html/Options_8cpp_source.html +22 -21
  32. package/SVF-doxygen/html/html/Options_8h_source.html +22 -21
  33. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +1 -1
  34. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +17 -17
  35. package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +1 -1
  36. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +8 -8
  37. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +2 -2
  38. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +11 -11
  39. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +14 -14
  40. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +2 -2
  41. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +8 -10
  42. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +72 -73
  43. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +37 -35
  44. package/SVF-doxygen/html/html/SVFIR_8h_source.html +66 -68
  45. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +1 -1
  46. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
  47. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +5 -5
  48. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +1 -1
  49. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +18 -19
  50. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +121 -127
  51. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +6 -6
  52. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +1 -1
  53. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +39 -30
  54. package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +10 -7
  55. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +93 -53
  56. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +82 -85
  57. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +5 -5
  58. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +1 -1
  59. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +17 -16
  60. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +1 -1
  61. package/SVF-doxygen/html/html/VFGNode_8h_source.html +2 -2
  62. package/SVF-doxygen/html/html/VFG_8cpp_source.html +7 -7
  63. package/SVF-doxygen/html/html/VFG_8h_source.html +2 -2
  64. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +4 -4
  65. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +4 -4
  66. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +5 -5
  67. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +1 -1
  68. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +1 -1
  69. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +2 -2
  70. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +8 -8
  71. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +8 -8
  72. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +4 -4
  73. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +5 -6
  74. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +3 -3
  75. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +12 -13
  76. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +3 -3
  77. package/SVF-doxygen/html/html/classSVF_1_1BranchCondManager.html +2 -2
  78. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +2 -2
  79. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +1 -1
  80. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar-members.html +22 -25
  81. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.html +16 -25
  82. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar-members.html +22 -25
  83. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.html +17 -26
  84. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar-members.html +23 -26
  85. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +17 -26
  86. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +3 -3
  87. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +1 -1
  88. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +5 -5
  89. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +6 -6
  90. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +2 -2
  91. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +2 -2
  92. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +12 -12
  93. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar-members.html +22 -25
  94. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +18 -27
  95. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar-members.html +21 -24
  96. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +18 -27
  97. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar-members.html +22 -25
  98. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +19 -28
  99. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +3 -3
  100. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +10 -10
  101. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +8 -8
  102. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +17 -17
  103. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +1 -1
  104. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +1 -1
  105. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +1 -1
  106. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar-members.html +24 -27
  107. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +42 -51
  108. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +12 -12
  109. package/SVF-doxygen/html/html/classSVF_1_1GepValVar-members.html +30 -35
  110. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +34 -106
  111. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +1 -1
  112. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +3 -3
  113. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  114. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +2 -2
  115. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +1 -1
  116. package/SVF-doxygen/html/html/classSVF_1_1LocationSet-members.html +15 -16
  117. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +47 -81
  118. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +12 -12
  119. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +87 -87
  120. package/SVF-doxygen/html/html/classSVF_1_1NormalGepCGEdge.html +1 -1
  121. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +1 -1
  122. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo-members.html +7 -8
  123. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +162 -211
  124. package/SVF-doxygen/html/html/classSVF_1_1ObjVar-members.html +22 -25
  125. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +23 -32
  126. package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +1 -1
  127. package/SVF-doxygen/html/html/classSVF_1_1Options-members.html +55 -54
  128. package/SVF-doxygen/html/html/classSVF_1_1Options.html +47 -21
  129. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +3 -3
  130. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +4 -4
  131. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +18 -18
  132. package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +1 -1
  133. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +30 -30
  134. package/SVF-doxygen/html/html/classSVF_1_1RetPN-members.html +22 -25
  135. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +18 -27
  136. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +1 -1
  137. package/SVF-doxygen/html/html/classSVF_1_1SVFIR-members.html +4 -4
  138. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +214 -227
  139. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +82 -83
  140. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +582 -529
  141. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +1 -1
  142. package/SVF-doxygen/html/html/classSVF_1_1SVFVar-members.html +23 -26
  143. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +54 -151
  144. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +6 -6
  145. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +1 -1
  146. package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +43 -43
  147. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder-members.html +10 -7
  148. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +182 -72
  149. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo-members.html +9 -11
  150. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +131 -162
  151. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +5 -5
  152. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +1 -1
  153. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +26 -25
  154. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +2 -2
  155. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +8 -8
  156. package/SVF-doxygen/html/html/classSVF_1_1ValVar-members.html +21 -24
  157. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +16 -25
  158. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN-members.html +22 -25
  159. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +18 -27
  160. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +7 -7
  161. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +5 -5
  162. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +12 -12
  163. package/SVF-doxygen/html/html/functions_a.html +24 -24
  164. package/SVF-doxygen/html/html/functions_c.html +1 -1
  165. package/SVF-doxygen/html/html/functions_f.html +19 -22
  166. package/SVF-doxygen/html/html/functions_func.html +24 -24
  167. package/SVF-doxygen/html/html/functions_func_c.html +1 -1
  168. package/SVF-doxygen/html/html/functions_func_g.html +20 -23
  169. package/SVF-doxygen/html/html/functions_func_h.html +1 -1
  170. package/SVF-doxygen/html/html/functions_func_i.html +11 -17
  171. package/SVF-doxygen/html/html/functions_func_l.html +2 -2
  172. package/SVF-doxygen/html/html/functions_func_o.html +4 -4
  173. package/SVF-doxygen/html/html/functions_func_r.html +5 -2
  174. package/SVF-doxygen/html/html/functions_g.html +18 -21
  175. package/SVF-doxygen/html/html/functions_h.html +1 -1
  176. package/SVF-doxygen/html/html/functions_i.html +12 -21
  177. package/SVF-doxygen/html/html/functions_l.html +8 -8
  178. package/SVF-doxygen/html/html/functions_m.html +4 -1
  179. package/SVF-doxygen/html/html/functions_o.html +22 -18
  180. package/SVF-doxygen/html/html/functions_p.html +3 -3
  181. package/SVF-doxygen/html/html/functions_r.html +5 -2
  182. package/SVF-doxygen/html/html/functions_rela.html +2 -1
  183. package/SVF-doxygen/html/html/functions_s.html +6 -5
  184. package/SVF-doxygen/html/html/functions_t.html +4 -4
  185. package/SVF-doxygen/html/html/functions_v.html +3 -3
  186. package/SVF-doxygen/html/html/functions_vars_f.html +0 -3
  187. package/SVF-doxygen/html/html/functions_vars_i.html +3 -6
  188. package/SVF-doxygen/html/html/functions_vars_m.html +3 -0
  189. package/SVF-doxygen/html/html/namespaceSVF.html +1 -1
  190. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +8 -8
  191. package/SVF-doxygen/html/html/namespacemembers_func.html +1 -1
  192. package/SVF-doxygen/html/html/namespacemembers_s.html +1 -1
  193. package/SVF-doxygen/html/html/search/all_1.js +22 -22
  194. package/SVF-doxygen/html/html/search/all_10.js +4 -4
  195. package/SVF-doxygen/html/html/search/all_12.js +5 -4
  196. package/SVF-doxygen/html/html/search/all_13.js +6 -6
  197. package/SVF-doxygen/html/html/search/all_14.js +4 -4
  198. package/SVF-doxygen/html/html/search/all_15.js +1 -1
  199. package/SVF-doxygen/html/html/search/all_16.js +1 -1
  200. package/SVF-doxygen/html/html/search/all_3.js +1 -1
  201. package/SVF-doxygen/html/html/search/all_6.js +0 -1
  202. package/SVF-doxygen/html/html/search/all_7.js +9 -9
  203. package/SVF-doxygen/html/html/search/all_8.js +1 -1
  204. package/SVF-doxygen/html/html/search/all_9.js +2 -5
  205. package/SVF-doxygen/html/html/search/all_c.js +4 -4
  206. package/SVF-doxygen/html/html/search/all_d.js +1 -0
  207. package/SVF-doxygen/html/html/search/all_e.js +3 -3
  208. package/SVF-doxygen/html/html/search/all_f.js +3 -3
  209. package/SVF-doxygen/html/html/search/functions_0.js +22 -22
  210. package/SVF-doxygen/html/html/search/functions_10.js +2 -2
  211. package/SVF-doxygen/html/html/search/functions_2.js +1 -1
  212. package/SVF-doxygen/html/html/search/functions_6.js +9 -9
  213. package/SVF-doxygen/html/html/search/functions_7.js +1 -1
  214. package/SVF-doxygen/html/html/search/functions_8.js +1 -3
  215. package/SVF-doxygen/html/html/search/functions_a.js +1 -1
  216. package/SVF-doxygen/html/html/search/functions_d.js +1 -1
  217. package/SVF-doxygen/html/html/search/functions_e.js +1 -1
  218. package/SVF-doxygen/html/html/search/functions_f.js +1 -0
  219. package/SVF-doxygen/html/html/search/related_9.js +1 -1
  220. package/SVF-doxygen/html/html/search/variables_14.js +2 -2
  221. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  222. package/SVF-doxygen/html/html/search/variables_6.js +0 -1
  223. package/SVF-doxygen/html/html/search/variables_9.js +1 -2
  224. package/SVF-doxygen/html/html/search/variables_d.js +1 -0
  225. package/SVF-doxygen/html/html/search/variables_e.js +2 -2
  226. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  227. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +7 -21
  228. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +3 -3
  229. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01OfflineConsG_01_5_01_4.html +1 -1
  230. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1LocationSet_01_4.html +4 -4
  231. package/SVF-doxygen/html/html/svf-ex_8cpp.html +2 -2
  232. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +2 -2
  233. package/include/MemoryModel/LocationSet.h +0 -6
  234. package/include/MemoryModel/SVFIR.h +5 -37
  235. package/include/MemoryModel/SVFStatements.h +1 -1
  236. package/include/MemoryModel/SVFVariables.h +4 -21
  237. package/include/MemoryModel/SymbolTableInfo.h +8 -24
  238. package/include/SVF-FE/LLVMUtil.h +1 -1
  239. package/include/SVF-FE/SVFIRBuilder.h +91 -108
  240. package/include/SVF-FE/SymbolTableBuilder.h +9 -2
  241. package/include/Util/Options.h +1 -0
  242. package/lib/Graphs/ICFG.cpp +1 -47
  243. package/lib/MemoryModel/LocationSet.cpp +7 -3
  244. package/lib/MemoryModel/PointerAnalysisImpl.cpp +1 -1
  245. package/lib/MemoryModel/SVFIR.cpp +61 -19
  246. package/lib/MemoryModel/SVFVariables.cpp +6 -13
  247. package/lib/MemoryModel/SymbolTableInfo.cpp +57 -68
  248. package/lib/SVF-FE/LLVMUtil.cpp +3 -3
  249. package/lib/SVF-FE/SVFIRBuilder.cpp +83 -136
  250. package/lib/SVF-FE/SymbolTableBuilder.cpp +81 -23
  251. package/lib/Util/Options.cpp +6 -0
  252. package/lib/Util/TypeBasedHeapCloning.cpp +1 -1
  253. package/lib/WPA/AndersenStat.cpp +1 -1
  254. package/package.json +1 -1
@@ -134,7 +134,7 @@ Public Types</h2></td></tr>
134
134
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
135
135
  Public Member Functions</h2></td></tr>
136
136
  <tr class="memitem:a24daf5faa4b1d159c193e61951d17414"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#a24daf5faa4b1d159c193e61951d17414">SVFVar</a> (const <a class="el" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a> *val, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> i, <a class="el" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeff">PNODEK</a> k)</td></tr>
137
- <tr class="memdesc:a24daf5faa4b1d159c193e61951d17414"><td class="mdescLeft">&#160;</td><td class="mdescRight">address-taken pointer <a href="#a24daf5faa4b1d159c193e61951d17414">More...</a><br /></td></tr>
137
+ <tr class="memdesc:a24daf5faa4b1d159c193e61951d17414"><td class="mdescLeft">&#160;</td><td class="mdescRight">whether it is a pointer (top-level or address-taken) <a href="#a24daf5faa4b1d159c193e61951d17414">More...</a><br /></td></tr>
138
138
  <tr class="separator:a24daf5faa4b1d159c193e61951d17414"><td class="memSeparator" colspan="2">&#160;</td></tr>
139
139
  <tr class="memitem:ab76f9dea1559bd9b10b870dbc7bb454a"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#ab76f9dea1559bd9b10b870dbc7bb454a">~SVFVar</a> ()</td></tr>
140
140
  <tr class="memdesc:ab76f9dea1559bd9b10b870dbc7bb454a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <a href="#ab76f9dea1559bd9b10b870dbc7bb454a">More...</a><br /></td></tr>
@@ -151,12 +151,6 @@ Public Member Functions</h2></td></tr>
151
151
  <tr class="memitem:a3b61042079a6c9dc395f38925c6a1271"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#a3b61042079a6c9dc395f38925c6a1271">isPointer</a> () const</td></tr>
152
152
  <tr class="memdesc:a3b61042079a6c9dc395f38925c6a1271"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether it is a pointer. <a href="#a3b61042079a6c9dc395f38925c6a1271">More...</a><br /></td></tr>
153
153
  <tr class="separator:a3b61042079a6c9dc395f38925c6a1271"><td class="memSeparator" colspan="2">&#160;</td></tr>
154
- <tr class="memitem:a60bed99a7fd939873118698b058ccc4a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#a60bed99a7fd939873118698b058ccc4a">isTopLevelPtr</a> () const</td></tr>
155
- <tr class="memdesc:a60bed99a7fd939873118698b058ccc4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether it is a top-level pointer. <a href="#a60bed99a7fd939873118698b058ccc4a">More...</a><br /></td></tr>
156
- <tr class="separator:a60bed99a7fd939873118698b058ccc4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
157
- <tr class="memitem:a482652e097c8e7921b4db2e75eb71efc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#a482652e097c8e7921b4db2e75eb71efc">isAddressTakenPtr</a> () const</td></tr>
158
- <tr class="memdesc:a482652e097c8e7921b4db2e75eb71efc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether it is an address-taken pointer. <a href="#a482652e097c8e7921b4db2e75eb71efc">More...</a><br /></td></tr>
159
- <tr class="separator:a482652e097c8e7921b4db2e75eb71efc"><td class="memSeparator" colspan="2">&#160;</td></tr>
160
154
  <tr class="memitem:ab51b134720986c39fce7f033a49df6f0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#ab51b134720986c39fce7f033a49df6f0">isConstantData</a> () const</td></tr>
161
155
  <tr class="separator:ab51b134720986c39fce7f033a49df6f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
162
156
  <tr class="memitem:acf194658d2cbdaf3f26f2af6c325fad7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#acf194658d2cbdaf3f26f2af6c325fad7">isIsolatedNode</a> () const</td></tr>
@@ -272,11 +266,8 @@ Protected Attributes</h2></td></tr>
272
266
  <tr class="separator:a0d918a6c8dd3b7b395d4c7161bcf9656"><td class="memSeparator" colspan="2">&#160;</td></tr>
273
267
  <tr class="memitem:a3775dd07e89ea6b25950a8b900a4ceab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SVFStmt.html#a93fc6c4c991931c78c48500c2db50f66">SVFStmt::KindToSVFStmtMapTy</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a></td></tr>
274
268
  <tr class="separator:a3775dd07e89ea6b25950a8b900a4ceab"><td class="memSeparator" colspan="2">&#160;</td></tr>
275
- <tr class="memitem:afeb667f2af988479e93a6067c4e6e622"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#afeb667f2af988479e93a6067c4e6e622">isTLPointer</a></td></tr>
276
- <tr class="separator:afeb667f2af988479e93a6067c4e6e622"><td class="memSeparator" colspan="2">&#160;</td></tr>
277
- <tr class="memitem:a307c0f4d90308d5f77977d5635cad65d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#a307c0f4d90308d5f77977d5635cad65d">isATPointer</a></td></tr>
278
- <tr class="memdesc:a307c0f4d90308d5f77977d5635cad65d"><td class="mdescLeft">&#160;</td><td class="mdescRight">top-level pointer <a href="#a307c0f4d90308d5f77977d5635cad65d">More...</a><br /></td></tr>
279
- <tr class="separator:a307c0f4d90308d5f77977d5635cad65d"><td class="memSeparator" colspan="2">&#160;</td></tr>
269
+ <tr class="memitem:a7c8ffadedbf53d30694feeb7771990af"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#a7c8ffadedbf53d30694feeb7771990af">isPtr</a></td></tr>
270
+ <tr class="separator:a7c8ffadedbf53d30694feeb7771990af"><td class="memSeparator" colspan="2">&#160;</td></tr>
280
271
  </table><table class="memberdecls">
281
272
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
282
273
  Friends</h2></td></tr>
@@ -384,23 +375,22 @@ Friends</h2></td></tr>
384
375
  </table>
385
376
  </div><div class="memdoc">
386
377
 
387
- <p>address-taken pointer </p>
378
+ <p>whether it is a pointer (top-level or address-taken) </p>
388
379
  <p>Constructor</p>
389
380
  <p><a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> constructor </p>
390
381
 
391
382
  <p class="definition">Definition at line <a class="el" href="SVFVariables_8cpp_source.html#l00040">40</a> of file <a class="el" href="SVFVariables_8cpp_source.html">SVFVariables.cpp</a>.</p>
392
- <div class="fragment"><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; :</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="namespaceSVF.html#a8d5e9e5137b04659ded32330e128df34">GenericPAGNodeTy</a>(i,k), <a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>(val)</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;{</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>( <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa32d22852d39756992f87bd02def75f66">ValNode</a> &lt;= k &amp;&amp; k &lt;= <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffab85277a3daeecc24c99b3da86108e482">CloneDummyObjNode</a> &amp;&amp; <span class="stringliteral">&quot;new SVFIR node kind?&quot;</span>);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">switch</span> (k)</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; {</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa32d22852d39756992f87bd02def75f66">ValNode</a>:</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa288e3f5d01c94d5c5d685d43f08a6c4a">GepValNode</a>:</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; {</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(val != <span class="keyword">nullptr</span> &amp;&amp; <span class="stringliteral">&quot;value is nullptr for ValVar or GepValNode&quot;</span>);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#afeb667f2af988479e93a6067c4e6e622">isTLPointer</a> = val-&gt;getType()-&gt;isPointerTy();</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a307c0f4d90308d5f77977d5635cad65d">isATPointer</a> = <span class="keyword">false</span>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; }</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa5de2a8fce9a85f31818d58992b381b98">RetNode</a>:</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; {</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(val != <span class="keyword">nullptr</span> &amp;&amp; <span class="stringliteral">&quot;value is nullptr for RetNode&quot;</span>);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#afeb667f2af988479e93a6067c4e6e622">isTLPointer</a> = SVFUtil::cast&lt;Function&gt;(val)-&gt;getReturnType()-&gt;isPointerTy();</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a307c0f4d90308d5f77977d5635cad65d">isATPointer</a> = <span class="keyword">false</span>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; }</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa5a13a457f037424f61e74165a9cdcebf">VarargNode</a>:</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa8299ae0d09f1b19411cb07cd79a2bae8">DummyValNode</a>:</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; {</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#afeb667f2af988479e93a6067c4e6e622">isTLPointer</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a307c0f4d90308d5f77977d5635cad65d">isATPointer</a> = <span class="keyword">false</span>;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; }</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffae21504009be26916ccdfcb5de42e3e11">ObjNode</a>:</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaf3364b22f497146f06d1f4175a839f4f">GepObjNode</a>:</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6">FIObjNode</a>:</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa1ab625ecaf51446246dcc2944d6559af">DummyObjNode</a>:</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffabf9e21e7cbec690ad318a68cd5d756dc">CloneGepObjNode</a>:</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a">CloneFIObjNode</a>:</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffab85277a3daeecc24c99b3da86108e482">CloneDummyObjNode</a>:</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; {</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#afeb667f2af988479e93a6067c4e6e622">isTLPointer</a> = <span class="keyword">false</span>;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a307c0f4d90308d5f77977d5635cad65d">isATPointer</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; }</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6">SVF::SVFVar::FIObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00071">SVFVariables.h:71</a></div></div>
383
+ <div class="fragment"><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; :</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="namespaceSVF.html#a8d5e9e5137b04659ded32330e128df34">GenericPAGNodeTy</a>(i,k), <a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>(val)</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;{</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>( <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa32d22852d39756992f87bd02def75f66">ValNode</a> &lt;= k &amp;&amp; k &lt;= <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffab85277a3daeecc24c99b3da86108e482">CloneDummyObjNode</a> &amp;&amp; <span class="stringliteral">&quot;new SVFIR node kind?&quot;</span>);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">switch</span> (k)</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; {</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa32d22852d39756992f87bd02def75f66">ValNode</a>:</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa288e3f5d01c94d5c5d685d43f08a6c4a">GepValNode</a>:</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; {</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(val != <span class="keyword">nullptr</span> &amp;&amp; <span class="stringliteral">&quot;value is nullptr for ValVar or GepValNode&quot;</span>);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a7c8ffadedbf53d30694feeb7771990af">isPtr</a> = val-&gt;getType()-&gt;isPointerTy();</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa5de2a8fce9a85f31818d58992b381b98">RetNode</a>:</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; {</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(val != <span class="keyword">nullptr</span> &amp;&amp; <span class="stringliteral">&quot;value is nullptr for RetNode&quot;</span>);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a7c8ffadedbf53d30694feeb7771990af">isPtr</a> = SVFUtil::cast&lt;Function&gt;(val)-&gt;getReturnType()-&gt;isPointerTy();</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; }</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa5a13a457f037424f61e74165a9cdcebf">VarargNode</a>:</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa8299ae0d09f1b19411cb07cd79a2bae8">DummyValNode</a>:</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; {</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a7c8ffadedbf53d30694feeb7771990af">isPtr</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; }</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffae21504009be26916ccdfcb5de42e3e11">ObjNode</a>:</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaf3364b22f497146f06d1f4175a839f4f">GepObjNode</a>:</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6">FIObjNode</a>:</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa1ab625ecaf51446246dcc2944d6559af">DummyObjNode</a>:</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffabf9e21e7cbec690ad318a68cd5d756dc">CloneGepObjNode</a>:</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a">CloneFIObjNode</a>:</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffab85277a3daeecc24c99b3da86108e482">CloneDummyObjNode</a>:</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; {</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a7c8ffadedbf53d30694feeb7771990af">isPtr</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">if</span>(val)</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a7c8ffadedbf53d30694feeb7771990af">isPtr</a> = val-&gt;getType()-&gt;isPointerTy();</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6">SVF::SVFVar::FIObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00071">SVFVariables.h:71</a></div></div>
393
384
  <div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa288e3f5d01c94d5c5d685d43f08a6c4a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa288e3f5d01c94d5c5d685d43f08a6c4a">SVF::SVFVar::GepValNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00069">SVFVariables.h:69</a></div></div>
394
385
  <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>
395
386
  <div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffabf9e21e7cbec690ad318a68cd5d756dc"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffabf9e21e7cbec690ad318a68cd5d756dc">SVF::SVFVar::CloneGepObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00074">SVFVariables.h:74</a></div></div>
396
387
  <div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa8299ae0d09f1b19411cb07cd79a2bae8"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa8299ae0d09f1b19411cb07cd79a2bae8">SVF::SVFVar::DummyValNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00072">SVFVariables.h:72</a></div></div>
397
388
  <div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffaf3364b22f497146f06d1f4175a839f4f"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaf3364b22f497146f06d1f4175a839f4f">SVF::SVFVar::GepObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00070">SVFVariables.h:70</a></div></div>
398
- <div class="ttc" id="classSVF_1_1SVFVar_html_a307c0f4d90308d5f77977d5635cad65d"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a307c0f4d90308d5f77977d5635cad65d">SVF::SVFVar::isATPointer</a></div><div class="ttdeci">bool isATPointer</div><div class="ttdoc">top-level pointer </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00085">SVFVariables.h:85</a></div></div>
399
389
  <div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a">SVF::SVFVar::CloneFIObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00075">SVFVariables.h:75</a></div></div>
400
390
  <div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa1ab625ecaf51446246dcc2944d6559af"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa1ab625ecaf51446246dcc2944d6559af">SVF::SVFVar::DummyObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00073">SVFVariables.h:73</a></div></div>
401
391
  <div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffae21504009be26916ccdfcb5de42e3e11"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffae21504009be26916ccdfcb5de42e3e11">SVF::SVFVar::ObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00066">SVFVariables.h:66</a></div></div>
402
- <div class="ttc" id="classSVF_1_1SVFVar_html_afeb667f2af988479e93a6067c4e6e622"><div class="ttname"><a href="classSVF_1_1SVFVar.html#afeb667f2af988479e93a6067c4e6e622">SVF::SVFVar::isTLPointer</a></div><div class="ttdeci">bool isTLPointer</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00084">SVFVariables.h:84</a></div></div>
403
392
  <div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffab85277a3daeecc24c99b3da86108e482"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffab85277a3daeecc24c99b3da86108e482">SVF::SVFVar::CloneDummyObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00076">SVFVariables.h:76</a></div></div>
393
+ <div class="ttc" id="classSVF_1_1SVFVar_html_a7c8ffadedbf53d30694feeb7771990af"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a7c8ffadedbf53d30694feeb7771990af">SVF::SVFVar::isPtr</a></div><div class="ttdeci">bool isPtr</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00084">SVFVariables.h:84</a></div></div>
404
394
  <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>
405
395
  <div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa5de2a8fce9a85f31818d58992b381b98"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa5de2a8fce9a85f31818d58992b381b98">SVF::SVFVar::RetNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00067">SVFVariables.h:67</a></div></div>
406
396
  <div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa32d22852d39756992f87bd02def75f66"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa32d22852d39756992f87bd02def75f66">SVF::SVFVar::ValNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00065">SVFVariables.h:65</a></div></div>
@@ -434,8 +424,8 @@ Friends</h2></td></tr>
434
424
 
435
425
  <p>Destructor. </p>
436
426
 
437
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00091">91</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
438
- <div class="fragment"><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; {</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div></div><!-- fragment -->
427
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00090">90</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
428
+ <div class="fragment"><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; {</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div></div><!-- fragment -->
439
429
  </div>
440
430
  </div>
441
431
  <h2 class="groupheader">Member Function Documentation</h2>
@@ -465,8 +455,8 @@ Friends</h2></td></tr>
465
455
 
466
456
  <p>add methods of the components </p>
467
457
 
468
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00228">228</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
469
- <div class="fragment"><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; {</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <a class="code" href="classSVF_1_1GenericNode.html#a3f20339b5295e11beb0f9adb95c7aa5b">GNodeK</a> kind = inEdge-&gt;getEdgeKind();</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>[kind].insert(inEdge);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <a class="code" href="classSVF_1_1GenericNode.html#a93d217b0c9fd8008a2989ca2b4f3fbfb">addIncomingEdge</a>(inEdge);</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; }</div><div class="ttc" id="classSVF_1_1GenericNode_html_a3f20339b5295e11beb0f9adb95c7aa5b"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a3f20339b5295e11beb0f9adb95c7aa5b">SVF::GenericNode::GNodeK</a></div><div class="ttdeci">s64_t GNodeK</div><div class="ttdoc">Edge kind. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00135">GenericGraph.h:135</a></div></div>
458
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00217">217</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
459
+ <div class="fragment"><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; {</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <a class="code" href="classSVF_1_1GenericNode.html#a3f20339b5295e11beb0f9adb95c7aa5b">GNodeK</a> kind = inEdge-&gt;getEdgeKind();</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>[kind].insert(inEdge);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <a class="code" href="classSVF_1_1GenericNode.html#a93d217b0c9fd8008a2989ca2b4f3fbfb">addIncomingEdge</a>(inEdge);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; }</div><div class="ttc" id="classSVF_1_1GenericNode_html_a3f20339b5295e11beb0f9adb95c7aa5b"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a3f20339b5295e11beb0f9adb95c7aa5b">SVF::GenericNode::GNodeK</a></div><div class="ttdeci">s64_t GNodeK</div><div class="ttdoc">Edge kind. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00135">GenericGraph.h:135</a></div></div>
470
460
  <div class="ttc" id="classSVF_1_1GenericNode_html_a93d217b0c9fd8008a2989ca2b4f3fbfb"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a93d217b0c9fd8008a2989ca2b4f3fbfb">SVF::GenericNode::addIncomingEdge</a></div><div class="ttdeci">bool addIncomingEdge(EdgeType *inEdge)</div><div class="ttdoc">Add incoming and outgoing edges. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00275">GenericGraph.h:275</a></div></div>
471
461
  <div class="ttc" id="classSVF_1_1SVFVar_html_a0d918a6c8dd3b7b395d4c7161bcf9656"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">SVF::SVFVar::InEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy InEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00082">SVFVariables.h:82</a></div></div>
472
462
  </div><!-- fragment -->
@@ -496,8 +486,8 @@ Friends</h2></td></tr>
496
486
  </table>
497
487
  </div><div class="memdoc">
498
488
 
499
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00235">235</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
500
- <div class="fragment"><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; {</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <a class="code" href="classSVF_1_1GenericNode.html#a3f20339b5295e11beb0f9adb95c7aa5b">GNodeK</a> kind = outEdge-&gt;getEdgeKind();</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>[kind].insert(outEdge);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <a class="code" href="classSVF_1_1GenericNode.html#ae74283fbc788665296a69e56f334557b">addOutgoingEdge</a>(outEdge);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a3775dd07e89ea6b25950a8b900a4ceab"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">SVF::SVFVar::OutEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy OutEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00083">SVFVariables.h:83</a></div></div>
489
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00224">224</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
490
+ <div class="fragment"><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; {</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <a class="code" href="classSVF_1_1GenericNode.html#a3f20339b5295e11beb0f9adb95c7aa5b">GNodeK</a> kind = outEdge-&gt;getEdgeKind();</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>[kind].insert(outEdge);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="classSVF_1_1GenericNode.html#ae74283fbc788665296a69e56f334557b">addOutgoingEdge</a>(outEdge);</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a3775dd07e89ea6b25950a8b900a4ceab"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">SVF::SVFVar::OutEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy OutEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00083">SVFVariables.h:83</a></div></div>
501
491
  <div class="ttc" id="classSVF_1_1GenericNode_html_ae74283fbc788665296a69e56f334557b"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ae74283fbc788665296a69e56f334557b">SVF::GenericNode::addOutgoingEdge</a></div><div class="ttdeci">bool addOutgoingEdge(EdgeType *outEdge)</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00279">GenericGraph.h:279</a></div></div>
502
492
  <div class="ttc" id="classSVF_1_1GenericNode_html_a3f20339b5295e11beb0f9adb95c7aa5b"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a3f20339b5295e11beb0f9adb95c7aa5b">SVF::GenericNode::GNodeK</a></div><div class="ttdeci">s64_t GNodeK</div><div class="ttdoc">Edge kind. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00135">GenericGraph.h:135</a></div></div>
503
493
  </div><!-- fragment -->
@@ -520,8 +510,8 @@ Friends</h2></td></tr>
520
510
 
521
511
  <p>Dump to console for debugging. </p>
522
512
 
523
- <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>
524
- <div class="fragment"><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; {</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() &lt;&lt; this-&gt;<a class="code" href="classSVF_1_1SVFVar.html#ada932ef2ae0a3e712174df479c35b0dd">toString</a>() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFVar_html_ada932ef2ae0a3e712174df479c35b0dd"><div class="ttname"><a href="classSVF_1_1SVFVar.html#ada932ef2ae0a3e712174df479c35b0dd">SVF::SVFVar::toString</a></div><div class="ttdeci">virtual const std::string toString() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8cpp_source.html#l00100">SVFVariables.cpp:100</a></div></div>
513
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8cpp_source.html#l00100">100</a> of file <a class="el" href="SVFVariables_8cpp_source.html">SVFVariables.cpp</a>.</p>
514
+ <div class="fragment"><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() &lt;&lt; this-&gt;<a class="code" href="classSVF_1_1SVFVar.html#ada932ef2ae0a3e712174df479c35b0dd">toString</a>() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFVar_html_ada932ef2ae0a3e712174df479c35b0dd"><div class="ttname"><a href="classSVF_1_1SVFVar.html#ada932ef2ae0a3e712174df479c35b0dd">SVF::SVFVar::toString</a></div><div class="ttdeci">virtual const std::string toString() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8cpp_source.html#l00093">SVFVariables.cpp:93</a></div></div>
525
515
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
526
516
  </div><!-- fragment -->
527
517
  </div>
@@ -551,8 +541,8 @@ Friends</h2></td></tr>
551
541
 
552
542
  <p>Return the function that this <a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> resides in. Return nullptr if it is a global or constantexpr node. </p>
553
543
 
554
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00149">149</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
555
- <div class="fragment"><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>)</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; {</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <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;(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>))</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">return</span> inst-&gt;getParent()-&gt;getParent();</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a58cdfbc4160cae08745b67844ac29801">Argument</a>* arg = SVFUtil::dyn_cast&lt;Argument&gt;(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>))</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">return</span> arg-&gt;getParent();</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* fun = SVFUtil::dyn_cast&lt;Function&gt;(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>))</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">return</span> fun;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; }</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div><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="BasicTypes_8h_source.html#l00076">BasicTypes.h:76</a></div></div>
544
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00138">138</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
545
+ <div class="fragment"><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>)</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; {</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</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;(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>))</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">return</span> inst-&gt;getParent()-&gt;getParent();</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a58cdfbc4160cae08745b67844ac29801">Argument</a>* arg = SVFUtil::dyn_cast&lt;Argument&gt;(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>))</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">return</span> arg-&gt;getParent();</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* fun = SVFUtil::dyn_cast&lt;Function&gt;(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>))</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">return</span> fun;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }</div><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="BasicTypes_8h_source.html#l00076">BasicTypes.h:76</a></div></div>
556
546
  <div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
557
547
  <div class="ttc" id="namespaceSVF_html_a58cdfbc4160cae08745b67844ac29801"><div class="ttname"><a href="namespaceSVF.html#a58cdfbc4160cae08745b67844ac29801">SVF::Argument</a></div><div class="ttdeci">llvm::Argument Argument</div><div class="ttdoc">LLVM Aliases and constants. </div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00122">BasicTypes.h:122</a></div></div>
558
548
  <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>
@@ -585,8 +575,8 @@ Friends</h2></td></tr>
585
575
 
586
576
  <p>Get incoming <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> statements (edges) </p>
587
577
 
588
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00164">164</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
589
- <div class="fragment"><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> <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>[kind];</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a0d918a6c8dd3b7b395d4c7161bcf9656"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">SVF::SVFVar::InEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy InEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00082">SVFVariables.h:82</a></div></div>
578
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00153">153</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
579
+ <div class="fragment"><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; {</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>[kind];</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a0d918a6c8dd3b7b395d4c7161bcf9656"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">SVF::SVFVar::InEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy InEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00082">SVFVariables.h:82</a></div></div>
590
580
  </div><!-- fragment -->
591
581
  </div>
592
582
  </div>
@@ -616,8 +606,8 @@ Friends</h2></td></tr>
616
606
 
617
607
  <p>Get incoming <a class="el" href="classSVF_1_1SVFStmt.html">SVFStmt</a> iterator. </p>
618
608
 
619
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00193">193</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
620
- <div class="fragment"><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; {</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.find(kind);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it!=<a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;The node does not have such kind of edge&quot;</span>);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">return</span> it-&gt;second.begin();</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</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>
609
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00182">182</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
610
+ <div class="fragment"><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; {</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.find(kind);</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it!=<a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;The node does not have such kind of edge&quot;</span>);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">return</span> it-&gt;second.begin();</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</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>
621
611
  <div class="ttc" id="classSVF_1_1SVFVar_html_a0d918a6c8dd3b7b395d4c7161bcf9656"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">SVF::SVFVar::InEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy InEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00082">SVFVariables.h:82</a></div></div>
622
612
  </div><!-- fragment -->
623
613
  </div>
@@ -648,8 +638,8 @@ Friends</h2></td></tr>
648
638
 
649
639
  <p>Get incoming <a class="el" href="classSVF_1_1SVFStmt.html">SVFStmt</a> iterator. </p>
650
640
 
651
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00201">201</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
652
- <div class="fragment"><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; {</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.find(kind);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it!=<a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;The node does not have such kind of edge&quot;</span>);</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordflow">return</span> it-&gt;second.end();</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</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>
641
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00190">190</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
642
+ <div class="fragment"><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; {</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.find(kind);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it!=<a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;The node does not have such kind of edge&quot;</span>);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">return</span> it-&gt;second.end();</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</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>
653
643
  <div class="ttc" id="classSVF_1_1SVFVar_html_a0d918a6c8dd3b7b395d4c7161bcf9656"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">SVF::SVFVar::InEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy InEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00082">SVFVariables.h:82</a></div></div>
654
644
  </div><!-- fragment -->
655
645
  </div>
@@ -680,8 +670,8 @@ Friends</h2></td></tr>
680
670
 
681
671
  <p>Get outgoing <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> statements (edges) </p>
682
672
 
683
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00169">169</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
684
- <div class="fragment"><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; {</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>[kind];</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a3775dd07e89ea6b25950a8b900a4ceab"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">SVF::SVFVar::OutEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy OutEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00083">SVFVariables.h:83</a></div></div>
673
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00158">158</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
674
+ <div class="fragment"><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; {</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>[kind];</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a3775dd07e89ea6b25950a8b900a4ceab"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">SVF::SVFVar::OutEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy OutEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00083">SVFVariables.h:83</a></div></div>
685
675
  </div><!-- fragment -->
686
676
  </div>
687
677
  </div>
@@ -711,8 +701,8 @@ Friends</h2></td></tr>
711
701
 
712
702
  <p>Get outgoing <a class="el" href="classSVF_1_1SVFStmt.html">SVFStmt</a> iterator. </p>
713
703
 
714
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00209">209</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
715
- <div class="fragment"><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; {</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>.find(kind);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it!=<a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;The node does not have such kind of edge&quot;</span>);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">return</span> it-&gt;second.begin();</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a3775dd07e89ea6b25950a8b900a4ceab"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">SVF::SVFVar::OutEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy OutEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00083">SVFVariables.h:83</a></div></div>
704
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00198">198</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
705
+ <div class="fragment"><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; {</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>.find(kind);</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it!=<a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;The node does not have such kind of edge&quot;</span>);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">return</span> it-&gt;second.begin();</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a3775dd07e89ea6b25950a8b900a4ceab"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">SVF::SVFVar::OutEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy OutEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00083">SVFVariables.h:83</a></div></div>
716
706
  <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>
717
707
  </div><!-- fragment -->
718
708
  </div>
@@ -743,8 +733,8 @@ Friends</h2></td></tr>
743
733
 
744
734
  <p>Get outgoing <a class="el" href="classSVF_1_1SVFStmt.html">SVFStmt</a> iterator. </p>
745
735
 
746
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00217">217</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
747
- <div class="fragment"><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; {</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>.find(kind);</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it!=<a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;The node does not have such kind of edge&quot;</span>);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> it-&gt;second.end();</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a3775dd07e89ea6b25950a8b900a4ceab"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">SVF::SVFVar::OutEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy OutEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00083">SVFVariables.h:83</a></div></div>
736
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00206">206</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
737
+ <div class="fragment"><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; {</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>.find(kind);</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it!=<a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;The node does not have such kind of edge&quot;</span>);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">return</span> it-&gt;second.end();</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a3775dd07e89ea6b25950a8b900a4ceab"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">SVF::SVFVar::OutEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy OutEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00083">SVFVariables.h:83</a></div></div>
748
738
  <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>
749
739
  </div><!-- fragment -->
750
740
  </div>
@@ -776,8 +766,8 @@ Friends</h2></td></tr>
776
766
 
777
767
  <p>Reimplemented in <a class="el" href="classSVF_1_1GepObjVar.html#ab2348a9378f1c64cf5c176b21a655d14">SVF::GepObjVar</a>, <a class="el" href="classSVF_1_1GepValVar.html#a2760700f067c6a2fbc4e6e626b603bc4">SVF::GepValVar</a>, and <a class="el" href="classSVF_1_1ObjVar.html#aa1004c9973fb974ba1e52df80978321d">SVF::ObjVar</a>.</p>
778
768
 
779
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00106">106</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
780
- <div class="fragment"><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; {</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>)</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>-&gt;getType();</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div><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>
769
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00105">105</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
770
+ <div class="fragment"><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; {</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>)</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>-&gt;getType();</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div><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>
781
771
  </div><!-- fragment -->
782
772
  </div>
783
773
  </div>
@@ -806,8 +796,8 @@ Friends</h2></td></tr>
806
796
 
807
797
  <p>Get/has methods of the components. </p>
808
798
 
809
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00097">97</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
810
- <div class="fragment"><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; {</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>((this-&gt;<a class="code" href="classSVF_1_1GenericNode.html#a391e996d695b114530120723da1d003e">getNodeKind</a>() != <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa8299ae0d09f1b19411cb07cd79a2bae8">DummyValNode</a> &amp;&amp; this-&gt;<a class="code" href="classSVF_1_1GenericNode.html#a391e996d695b114530120723da1d003e">getNodeKind</a>() != <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa1ab625ecaf51446246dcc2944d6559af">DummyObjNode</a>) &amp;&amp; <span class="stringliteral">&quot;dummy node do not have value!&quot;</span>);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>((<a class="code" href="classSVF_1_1SymbolTableInfo.html#a2fc4bfb83b71a4c14e16168382cb8f5d">SymbolTableInfo::isBlkObjOrConstantObj</a>(this-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>())==<span class="keyword">false</span>) &amp;&amp; <span class="stringliteral">&quot;blackhole and constant obj do not have value&quot;</span>);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a> &amp;&amp; <span class="stringliteral">&quot;value is null (GepObjNode whose basenode is a DummyObj?)&quot;</span>);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</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>
799
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00096">96</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
800
+ <div class="fragment"><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; {</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>((this-&gt;<a class="code" href="classSVF_1_1GenericNode.html#a391e996d695b114530120723da1d003e">getNodeKind</a>() != <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa8299ae0d09f1b19411cb07cd79a2bae8">DummyValNode</a> &amp;&amp; this-&gt;<a class="code" href="classSVF_1_1GenericNode.html#a391e996d695b114530120723da1d003e">getNodeKind</a>() != <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa1ab625ecaf51446246dcc2944d6559af">DummyObjNode</a>) &amp;&amp; <span class="stringliteral">&quot;dummy node do not have value!&quot;</span>);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>((<a class="code" href="classSVF_1_1SymbolTableInfo.html#a2fc4bfb83b71a4c14e16168382cb8f5d">SymbolTableInfo::isBlkObjOrConstantObj</a>(this-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>())==<span class="keyword">false</span>) &amp;&amp; <span class="stringliteral">&quot;blackhole and constant obj do not have value&quot;</span>);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a> &amp;&amp; <span class="stringliteral">&quot;value is null (GepObjNode whose basenode is a DummyObj?)&quot;</span>);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</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>
811
801
  <div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa8299ae0d09f1b19411cb07cd79a2bae8"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa8299ae0d09f1b19411cb07cd79a2bae8">SVF::SVFVar::DummyValNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00072">SVFVariables.h:72</a></div></div>
812
802
  <div class="ttc" id="classSVF_1_1GenericNode_html_a391e996d695b114530120723da1d003e"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a391e996d695b114530120723da1d003e">SVF::GenericNode::getNodeKind</a></div><div class="ttdeci">GNodeK getNodeKind() const</div><div class="ttdoc">Get node kind. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00171">GenericGraph.h:171</a></div></div>
813
803
  <div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa1ab625ecaf51446246dcc2944d6559af"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa1ab625ecaf51446246dcc2944d6559af">SVF::SVFVar::DummyObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00073">SVFVariables.h:73</a></div></div>
@@ -872,8 +862,8 @@ Friends</h2></td></tr>
872
862
 
873
863
  <p>Has incoming <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> statements (edges) </p>
874
864
 
875
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00174">174</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
876
- <div class="fragment"><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; {</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.find(kind);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">if</span> (it != <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.end())</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">return</span> (!it-&gt;second.empty());</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a0d918a6c8dd3b7b395d4c7161bcf9656"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">SVF::SVFVar::InEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy InEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00082">SVFVariables.h:82</a></div></div>
865
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00163">163</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
866
+ <div class="fragment"><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; {</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.find(kind);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">if</span> (it != <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.end())</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">return</span> (!it-&gt;second.empty());</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a0d918a6c8dd3b7b395d4c7161bcf9656"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">SVF::SVFVar::InEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy InEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00082">SVFVariables.h:82</a></div></div>
877
867
  </div><!-- fragment -->
878
868
  </div>
879
869
  </div>
@@ -902,8 +892,8 @@ Friends</h2></td></tr>
902
892
 
903
893
  <p>Has incoming VariantGepEdges. </p>
904
894
 
905
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00242">242</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
906
- <div class="fragment"><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; {</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.find(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">SVFStmt::Gep</a>);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">if</span> (it != <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.end())</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; {</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">auto</span> gep : it-&gt;second){</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">if</span>(SVFUtil::cast&lt;GepStmt&gt;(gep)-&gt;isVariantFieldGep())</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; }</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; }</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">SVF::SVFStmt::Gep</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
895
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00231">231</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
896
+ <div class="fragment"><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; {</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.find(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">SVFStmt::Gep</a>);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keywordflow">if</span> (it != <a class="code" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a>.end())</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; {</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">auto</span> gep : it-&gt;second){</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keywordflow">if</span>(SVFUtil::cast&lt;GepStmt&gt;(gep)-&gt;isVariantFieldGep())</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; }</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; }</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">SVF::SVFStmt::Gep</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
907
897
  <div class="ttc" id="classSVF_1_1SVFVar_html_a0d918a6c8dd3b7b395d4c7161bcf9656"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">SVF::SVFVar::InEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy InEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00082">SVFVariables.h:82</a></div></div>
908
898
  </div><!-- fragment -->
909
899
  </div>
@@ -934,8 +924,8 @@ Friends</h2></td></tr>
934
924
 
935
925
  <p>Has outgoing <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> statements (edges) </p>
936
926
 
937
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00183">183</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
938
- <div class="fragment"><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; {</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>.find(kind);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">if</span> (it != <a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>.end())</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> (!it-&gt;second.empty());</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a3775dd07e89ea6b25950a8b900a4ceab"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">SVF::SVFVar::OutEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy OutEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00083">SVFVariables.h:83</a></div></div>
927
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00172">172</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
928
+ <div class="fragment"><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; {</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; SVFStmt::KindToSVFStmtMapTy::const_iterator it = <a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>.find(kind);</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">if</span> (it != <a class="code" href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">OutEdgeKindToSetMap</a>.end())</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">return</span> (!it-&gt;second.empty());</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a3775dd07e89ea6b25950a8b900a4ceab"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a3775dd07e89ea6b25950a8b900a4ceab">SVF::SVFVar::OutEdgeKindToSetMap</a></div><div class="ttdeci">SVFStmt::KindToSVFStmtMapTy OutEdgeKindToSetMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00083">SVFVariables.h:83</a></div></div>
939
929
  </div><!-- fragment -->
940
930
  </div>
941
931
  </div>
@@ -962,38 +952,8 @@ Friends</h2></td></tr>
962
952
  </table>
963
953
  </div><div class="memdoc">
964
954
 
965
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00113">113</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
966
- <div class="fragment"><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; {</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>!=<span class="keyword">nullptr</span>;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div><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>
967
- </div><!-- fragment -->
968
- </div>
969
- </div>
970
- <a id="a482652e097c8e7921b4db2e75eb71efc"></a>
971
- <h2 class="memtitle"><span class="permalink"><a href="#a482652e097c8e7921b4db2e75eb71efc">&#9670;&nbsp;</a></span>isAddressTakenPtr()</h2>
972
-
973
- <div class="memitem">
974
- <div class="memproto">
975
- <table class="mlabels">
976
- <tr>
977
- <td class="mlabels-left">
978
- <table class="memname">
979
- <tr>
980
- <td class="memname">bool SVF::SVFVar::isAddressTakenPtr </td>
981
- <td>(</td>
982
- <td class="paramname"></td><td>)</td>
983
- <td> const</td>
984
- </tr>
985
- </table>
986
- </td>
987
- <td class="mlabels-right">
988
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
989
- </tr>
990
- </table>
991
- </div><div class="memdoc">
992
-
993
- <p>Whether it is an address-taken pointer. </p>
994
-
995
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00128">128</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
996
- <div class="fragment"><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; {</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a307c0f4d90308d5f77977d5635cad65d">isATPointer</a>;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a307c0f4d90308d5f77977d5635cad65d"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a307c0f4d90308d5f77977d5635cad65d">SVF::SVFVar::isATPointer</a></div><div class="ttdeci">bool isATPointer</div><div class="ttdoc">top-level pointer </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00085">SVFVariables.h:85</a></div></div>
955
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00112">112</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
956
+ <div class="fragment"><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; {</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>!=<span class="keyword">nullptr</span>;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div><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>
997
957
  </div><!-- fragment -->
998
958
  </div>
999
959
  </div>
@@ -1021,8 +981,8 @@ Friends</h2></td></tr>
1021
981
  </div><div class="memdoc">
1022
982
  <p>Whether it is constant data, i.e., "0", "1.001", "str" or llvm's metadata, i.e., metadata !4087 </p>
1023
983
 
1024
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00134">134</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
1025
- <div class="fragment"><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFVar.html#a1ace69053c2c4436fd78d5624bd0086a">hasValue</a>())</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1SVFUtil.html#a9e85d445e8b7b205134acd3874bba388">SVFUtil::isConstantData</a>(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; }</div><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#l00113">SVFVariables.h:113</a></div></div>
984
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00123">123</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
985
+ <div class="fragment"><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; {</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFVar.html#a1ace69053c2c4436fd78d5624bd0086a">hasValue</a>())</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1SVFUtil.html#a9e85d445e8b7b205134acd3874bba388">SVFUtil::isConstantData</a>(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div><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>
1026
986
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a9e85d445e8b7b205134acd3874bba388"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a9e85d445e8b7b205134acd3874bba388">SVF::SVFUtil::isConstantData</a></div><div class="ttdeci">bool isConstantData(const Value *val)</div><div class="ttdoc">Return true if the value refers to constant data, e.g., i32 0. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00392">LLVMUtil.h:392</a></div></div>
1027
987
  <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>
1028
988
  </div><!-- fragment -->
@@ -1045,12 +1005,12 @@ Friends</h2></td></tr>
1045
1005
 
1046
1006
  <p>Whether this is an isoloated node on the <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> graph. </p>
1047
1007
 
1048
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8cpp_source.html#l00088">88</a> of file <a class="el" href="SVFVariables_8cpp_source.html">SVFVariables.cpp</a>.</p>
1049
- <div class="fragment"><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; {</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1GenericNode.html#afc8b5f86d7795b6a0dfc0687d942d79b">getInEdges</a>().<a class="code" href="cuddInt_8c.html#a5beb39637a978181c7c17714ac96672e">empty</a>() &amp;&amp; <a class="code" href="classSVF_1_1GenericNode.html#a2d9cd758d6f8c5189d9b90b74f43e009">getOutEdges</a>().<a class="code" href="cuddInt_8c.html#a5beb39637a978181c7c17714ac96672e">empty</a>())</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFVar.html#ab51b134720986c39fce7f033a49df6f0">isConstantData</a>())</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a> &amp;&amp; SVFUtil::isa&lt;Function&gt;(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>))</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1SVFUtil.html#ad2c53be5490882768d51aa894b37cbf1">SVFUtil::isIntrinsicFun</a>(SVFUtil::cast&lt;Function&gt;(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>));</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericNode_html_afc8b5f86d7795b6a0dfc0687d942d79b"><div class="ttname"><a href="classSVF_1_1GenericNode.html#afc8b5f86d7795b6a0dfc0687d942d79b">SVF::GenericNode::getInEdges</a></div><div class="ttdeci">const GEdgeSetTy &amp; getInEdges() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00182">GenericGraph.h:182</a></div></div>
1008
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8cpp_source.html#l00081">81</a> of file <a class="el" href="SVFVariables_8cpp_source.html">SVFVariables.cpp</a>.</p>
1009
+ <div class="fragment"><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; {</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1GenericNode.html#afc8b5f86d7795b6a0dfc0687d942d79b">getInEdges</a>().<a class="code" href="cuddInt_8c.html#a5beb39637a978181c7c17714ac96672e">empty</a>() &amp;&amp; <a class="code" href="classSVF_1_1GenericNode.html#a2d9cd758d6f8c5189d9b90b74f43e009">getOutEdges</a>().<a class="code" href="cuddInt_8c.html#a5beb39637a978181c7c17714ac96672e">empty</a>())</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFVar.html#ab51b134720986c39fce7f033a49df6f0">isConstantData</a>())</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a> &amp;&amp; SVFUtil::isa&lt;Function&gt;(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>))</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1SVFUtil.html#ad2c53be5490882768d51aa894b37cbf1">SVFUtil::isIntrinsicFun</a>(SVFUtil::cast&lt;Function&gt;(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>));</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericNode_html_afc8b5f86d7795b6a0dfc0687d942d79b"><div class="ttname"><a href="classSVF_1_1GenericNode.html#afc8b5f86d7795b6a0dfc0687d942d79b">SVF::GenericNode::getInEdges</a></div><div class="ttdeci">const GEdgeSetTy &amp; getInEdges() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00182">GenericGraph.h:182</a></div></div>
1050
1010
  <div class="ttc" id="cuddInt_8c_html_a5beb39637a978181c7c17714ac96672e"><div class="ttname"><a href="cuddInt_8c.html#a5beb39637a978181c7c17714ac96672e">empty</a></div><div class="ttdeci">static DdNode * empty</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8c_source.html#l28567">cuddInt.c:28567</a></div></div>
1051
1011
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_ad2c53be5490882768d51aa894b37cbf1"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#ad2c53be5490882768d51aa894b37cbf1">SVF::SVFUtil::isIntrinsicFun</a></div><div class="ttdeci">bool isIntrinsicFun(const Function *func)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00167">SVFUtil.h:167</a></div></div>
1052
1012
  <div class="ttc" id="classSVF_1_1GenericNode_html_a2d9cd758d6f8c5189d9b90b74f43e009"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a2d9cd758d6f8c5189d9b90b74f43e009">SVF::GenericNode::getOutEdges</a></div><div class="ttdeci">const GEdgeSetTy &amp; getOutEdges() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00178">GenericGraph.h:178</a></div></div>
1053
- <div class="ttc" id="classSVF_1_1SVFVar_html_ab51b134720986c39fce7f033a49df6f0"><div class="ttname"><a href="classSVF_1_1SVFVar.html#ab51b134720986c39fce7f033a49df6f0">SVF::SVFVar::isConstantData</a></div><div class="ttdeci">bool isConstantData() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00134">SVFVariables.h:134</a></div></div>
1013
+ <div class="ttc" id="classSVF_1_1SVFVar_html_ab51b134720986c39fce7f033a49df6f0"><div class="ttname"><a href="classSVF_1_1SVFVar.html#ab51b134720986c39fce7f033a49df6f0">SVF::SVFVar::isConstantData</a></div><div class="ttdeci">bool isConstantData() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00123">SVFVariables.h:123</a></div></div>
1054
1014
  <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>
1055
1015
  </div><!-- fragment -->
1056
1016
  </div>
@@ -1080,39 +1040,8 @@ Friends</h2></td></tr>
1080
1040
 
1081
1041
  <p>Whether it is a pointer. </p>
1082
1042
 
1083
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00118">118</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
1084
- <div class="fragment"><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; {</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a60bed99a7fd939873118698b058ccc4a">isTopLevelPtr</a>() || <a class="code" href="classSVF_1_1SVFVar.html#a482652e097c8e7921b4db2e75eb71efc">isAddressTakenPtr</a>();</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a60bed99a7fd939873118698b058ccc4a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a60bed99a7fd939873118698b058ccc4a">SVF::SVFVar::isTopLevelPtr</a></div><div class="ttdeci">bool isTopLevelPtr() const</div><div class="ttdoc">Whether it is a top-level pointer. </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00123">SVFVariables.h:123</a></div></div>
1085
- <div class="ttc" id="classSVF_1_1SVFVar_html_a482652e097c8e7921b4db2e75eb71efc"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a482652e097c8e7921b4db2e75eb71efc">SVF::SVFVar::isAddressTakenPtr</a></div><div class="ttdeci">bool isAddressTakenPtr() const</div><div class="ttdoc">Whether it is an address-taken pointer. </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00128">SVFVariables.h:128</a></div></div>
1086
- </div><!-- fragment -->
1087
- </div>
1088
- </div>
1089
- <a id="a60bed99a7fd939873118698b058ccc4a"></a>
1090
- <h2 class="memtitle"><span class="permalink"><a href="#a60bed99a7fd939873118698b058ccc4a">&#9670;&nbsp;</a></span>isTopLevelPtr()</h2>
1091
-
1092
- <div class="memitem">
1093
- <div class="memproto">
1094
- <table class="mlabels">
1095
- <tr>
1096
- <td class="mlabels-left">
1097
- <table class="memname">
1098
- <tr>
1099
- <td class="memname">bool SVF::SVFVar::isTopLevelPtr </td>
1100
- <td>(</td>
1101
- <td class="paramname"></td><td>)</td>
1102
- <td> const</td>
1103
- </tr>
1104
- </table>
1105
- </td>
1106
- <td class="mlabels-right">
1107
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
1108
- </tr>
1109
- </table>
1110
- </div><div class="memdoc">
1111
-
1112
- <p>Whether it is a top-level pointer. </p>
1113
-
1114
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00123">123</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
1115
- <div class="fragment"><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; {</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#afeb667f2af988479e93a6067c4e6e622">isTLPointer</a>;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_afeb667f2af988479e93a6067c4e6e622"><div class="ttname"><a href="classSVF_1_1SVFVar.html#afeb667f2af988479e93a6067c4e6e622">SVF::SVFVar::isTLPointer</a></div><div class="ttdeci">bool isTLPointer</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00084">SVFVariables.h:84</a></div></div>
1043
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00117">117</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
1044
+ <div class="fragment"><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a7c8ffadedbf53d30694feeb7771990af">isPtr</a>;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a7c8ffadedbf53d30694feeb7771990af"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a7c8ffadedbf53d30694feeb7771990af">SVF::SVFVar::isPtr</a></div><div class="ttdeci">bool isPtr</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00084">SVFVariables.h:84</a></div></div>
1116
1045
  </div><!-- fragment -->
1117
1046
  </div>
1118
1047
  </div>
@@ -1141,8 +1070,8 @@ Friends</h2></td></tr>
1141
1070
 
1142
1071
  <p>Reimplemented in <a class="el" href="classSVF_1_1CloneFIObjVar.html#a336acd6fdf3e6be5ea44435a1576c9fc">SVF::CloneFIObjVar</a>, <a class="el" href="classSVF_1_1CloneGepObjVar.html#a74e6fea7dc651c57de3e06ff356522a5">SVF::CloneGepObjVar</a>, <a class="el" href="classSVF_1_1CloneDummyObjVar.html#a72249d18032dfcd866d0519da3c0999b">SVF::CloneDummyObjVar</a>, <a class="el" href="classSVF_1_1DummyObjVar.html#a0888335fe157af01e647b79043c7ae40">SVF::DummyObjVar</a>, <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>, <a class="el" href="classSVF_1_1FIObjVar.html#ad383a7468348cf040e9dcd8515848595">SVF::FIObjVar</a>, <a class="el" href="classSVF_1_1GepObjVar.html#aa7bfd42a92e9ebc34613818e70689218">SVF::GepObjVar</a>, <a class="el" href="classSVF_1_1GepValVar.html#ac9016b61dde44eb89ea715a0619994de">SVF::GepValVar</a>, <a class="el" href="classSVF_1_1ObjVar.html#a14da09447f9f0495a42a61bdd92688a3">SVF::ObjVar</a>, and <a class="el" href="classSVF_1_1ValVar.html#a4591213dd266efd380fd916fee73c1fd">SVF::ValVar</a>.</p>
1143
1072
 
1144
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8cpp_source.html#l00100">100</a> of file <a class="el" href="SVFVariables_8cpp_source.html">SVFVariables.cpp</a>.</p>
1145
- <div class="fragment"><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; std::string str;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;SVFVar ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</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="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00100">BasicTypes.h:100</a></div></div>
1073
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8cpp_source.html#l00093">93</a> of file <a class="el" href="SVFVariables_8cpp_source.html">SVFVariables.cpp</a>.</p>
1074
+ <div class="fragment"><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; {</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; std::string str;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;SVFVar ID: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</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="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00100">BasicTypes.h:100</a></div></div>
1146
1075
  <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#l00165">GenericGraph.h:165</a></div></div>
1147
1076
  </div><!-- fragment -->
1148
1077
  </div>
@@ -1208,8 +1137,8 @@ Friends</h2></td></tr>
1208
1137
 
1209
1138
  <p>Overloading operator &lt;&lt; for dumping <a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> value. </p>
1210
1139
 
1211
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00264">264</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
1212
- <div class="fragment"><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; {</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; o &lt;&lt; node.toString();</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">return</span> o;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; }</div></div><!-- fragment -->
1140
+ <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00253">253</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
1141
+ <div class="fragment"><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; {</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; o &lt;&lt; node.toString();</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">return</span> o;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; }</div></div><!-- fragment -->
1213
1142
  </div>
1214
1143
  </div>
1215
1144
  <a id="a6dbb40e8ee92033b77440c44acd8a868"></a>
@@ -1285,34 +1214,8 @@ Friends</h2></td></tr>
1285
1214
 
1286
1215
  </div>
1287
1216
  </div>
1288
- <a id="a307c0f4d90308d5f77977d5635cad65d"></a>
1289
- <h2 class="memtitle"><span class="permalink"><a href="#a307c0f4d90308d5f77977d5635cad65d">&#9670;&nbsp;</a></span>isATPointer</h2>
1290
-
1291
- <div class="memitem">
1292
- <div class="memproto">
1293
- <table class="mlabels">
1294
- <tr>
1295
- <td class="mlabels-left">
1296
- <table class="memname">
1297
- <tr>
1298
- <td class="memname">bool SVF::SVFVar::isATPointer</td>
1299
- </tr>
1300
- </table>
1301
- </td>
1302
- <td class="mlabels-right">
1303
- <span class="mlabels"><span class="mlabel">protected</span></span> </td>
1304
- </tr>
1305
- </table>
1306
- </div><div class="memdoc">
1307
-
1308
- <p>top-level pointer </p>
1309
-
1310
- <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00085">85</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
1311
-
1312
- </div>
1313
- </div>
1314
- <a id="afeb667f2af988479e93a6067c4e6e622"></a>
1315
- <h2 class="memtitle"><span class="permalink"><a href="#afeb667f2af988479e93a6067c4e6e622">&#9670;&nbsp;</a></span>isTLPointer</h2>
1217
+ <a id="a7c8ffadedbf53d30694feeb7771990af"></a>
1218
+ <h2 class="memtitle"><span class="permalink"><a href="#a7c8ffadedbf53d30694feeb7771990af">&#9670;&nbsp;</a></span>isPtr</h2>
1316
1219
 
1317
1220
  <div class="memitem">
1318
1221
  <div class="memproto">
@@ -1321,7 +1224,7 @@ Friends</h2></td></tr>
1321
1224
  <td class="mlabels-left">
1322
1225
  <table class="memname">
1323
1226
  <tr>
1324
- <td class="memname">bool SVF::SVFVar::isTLPointer</td>
1227
+ <td class="memname">bool SVF::SVFVar::isPtr</td>
1325
1228
  </tr>
1326
1229
  </table>
1327
1230
  </td>