svf-tools 1.0.336 → 1.0.340

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 (209) hide show
  1. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +1 -1
  2. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +3 -3
  3. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +3 -3
  4. package/SVF-doxygen/html/html/Andersen_8h_source.html +2 -2
  5. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +3 -3
  6. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +7 -7
  7. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +4 -4
  8. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +1 -1
  9. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +2 -2
  10. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +3 -3
  11. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +1 -1
  12. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +3 -3
  13. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +5 -5
  14. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +1 -1
  15. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +4 -2
  16. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
  17. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +17 -17
  18. package/SVF-doxygen/html/html/ICFG_8h_source.html +38 -37
  19. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +3 -3
  20. package/SVF-doxygen/html/html/MTA_8cpp_source.html +2 -2
  21. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +1 -1
  22. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +2 -2
  23. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +2 -2
  24. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +9 -9
  25. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +4 -4
  26. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +22 -25
  27. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +42 -43
  28. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +1 -1
  29. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp.html +1 -0
  30. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +6 -5
  31. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +40 -40
  32. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +12 -12
  33. package/SVF-doxygen/html/html/SVFIR_8h_source.html +14 -14
  34. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +22 -21
  35. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +47 -47
  36. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +91 -87
  37. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +5 -5
  38. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +1 -1
  39. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +5 -5
  40. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +5 -5
  41. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +2 -2
  42. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +11 -11
  43. package/SVF-doxygen/html/html/VFGNode_8h_source.html +4 -4
  44. package/SVF-doxygen/html/html/VFG_8cpp_source.html +9 -9
  45. package/SVF-doxygen/html/html/VFG_8h_source.html +8 -8
  46. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +2 -2
  47. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +1 -1
  48. package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +187 -188
  49. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +7 -10
  50. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +160 -161
  51. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +4 -7
  52. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD-members.html +199 -200
  53. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +0 -3
  54. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD-members.html +202 -203
  55. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD.html +0 -3
  56. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD-members.html +195 -196
  57. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +0 -3
  58. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +196 -197
  59. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +0 -3
  60. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +205 -206
  61. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +1 -4
  62. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +3 -3
  63. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +193 -194
  64. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +0 -3
  65. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl-members.html +116 -117
  66. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +12 -15
  67. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +18 -18
  68. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +32 -32
  69. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +4 -4
  70. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +2 -2
  71. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar-members.html +1 -1
  72. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.html +13 -11
  73. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.html +12 -12
  74. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +12 -12
  75. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +19 -19
  76. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl-members.html +104 -105
  77. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +5 -8
  78. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +3 -3
  79. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA-members.html +182 -183
  80. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +12 -15
  81. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +5 -5
  82. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +3 -3
  83. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar-members.html +2 -2
  84. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +46 -14
  85. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar-members.html +2 -2
  86. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +45 -14
  87. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +14 -14
  88. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA-members.html +219 -220
  89. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +0 -3
  90. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA-members.html +180 -181
  91. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +9 -12
  92. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive-members.html +212 -213
  93. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +17 -20
  94. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +2 -2
  95. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC-members.html +244 -245
  96. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +7 -10
  97. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +1 -1
  98. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +1 -3
  99. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
  100. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +32 -32
  101. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +2 -2
  102. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +27 -27
  103. package/SVF-doxygen/html/html/classSVF_1_1ICFG-members.html +27 -26
  104. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +183 -116
  105. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +9 -5
  106. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter-members.html +9 -9
  107. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +26 -25
  108. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +2 -2
  109. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +1 -1
  110. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +2 -2
  111. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +1 -1
  112. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +2 -2
  113. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +4 -4
  114. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt.html +2 -2
  115. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +18 -18
  116. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +2 -2
  117. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt-members.html +37 -36
  118. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +27 -3
  119. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis-members.html +78 -79
  120. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +106 -146
  121. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +2 -2
  122. package/SVF-doxygen/html/html/classSVF_1_1RetPN-members.html +75 -73
  123. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +60 -16
  124. package/SVF-doxygen/html/html/classSVF_1_1RetPN.png +0 -0
  125. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +1 -1
  126. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +14 -14
  127. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +122 -115
  128. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +3 -3
  129. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.png +0 -0
  130. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +5 -5
  131. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +1 -1
  132. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +171 -172
  133. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +0 -3
  134. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +2 -2
  135. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +5 -5
  136. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +18 -18
  137. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +11 -11
  138. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +11 -11
  139. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +2 -2
  140. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +161 -162
  141. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +3 -6
  142. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +17 -17
  143. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +25 -25
  144. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +11 -11
  145. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +17 -11
  146. package/SVF-doxygen/html/html/classSVF_1_1ValVar.png +0 -0
  147. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN-members.html +74 -72
  148. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +60 -16
  149. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.png +0 -0
  150. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt.html +2 -2
  151. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +254 -255
  152. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +2 -5
  153. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +1 -1
  154. package/SVF-doxygen/html/html/functions_c.html +12 -12
  155. package/SVF-doxygen/html/html/functions_d.html +0 -3
  156. package/SVF-doxygen/html/html/functions_func_c.html +19 -19
  157. package/SVF-doxygen/html/html/functions_func_d.html +0 -3
  158. package/SVF-doxygen/html/html/functions_func_i.html +13 -10
  159. package/SVF-doxygen/html/html/functions_i.html +10 -6
  160. package/SVF-doxygen/html/html/functions_l.html +6 -6
  161. package/SVF-doxygen/html/html/functions_n.html +3 -3
  162. package/SVF-doxygen/html/html/functions_p.html +9 -9
  163. package/SVF-doxygen/html/html/functions_r.html +1 -1
  164. package/SVF-doxygen/html/html/functions_rela.html +3 -0
  165. package/SVF-doxygen/html/html/functions_s.html +14 -12
  166. package/SVF-doxygen/html/html/functions_t.html +7 -5
  167. package/SVF-doxygen/html/html/functions_v.html +6 -6
  168. package/SVF-doxygen/html/html/hierarchy.html +5 -5
  169. package/SVF-doxygen/html/html/search/all_10.js +7 -7
  170. package/SVF-doxygen/html/html/search/all_12.js +1 -1
  171. package/SVF-doxygen/html/html/search/all_13.js +10 -10
  172. package/SVF-doxygen/html/html/search/all_14.js +3 -3
  173. package/SVF-doxygen/html/html/search/all_15.js +1 -1
  174. package/SVF-doxygen/html/html/search/all_16.js +3 -3
  175. package/SVF-doxygen/html/html/search/all_3.js +1 -1
  176. package/SVF-doxygen/html/html/search/all_4.js +0 -1
  177. package/SVF-doxygen/html/html/search/all_9.js +2 -1
  178. package/SVF-doxygen/html/html/search/all_c.js +3 -3
  179. package/SVF-doxygen/html/html/search/all_d.js +3 -3
  180. package/SVF-doxygen/html/html/search/all_e.js +2 -2
  181. package/SVF-doxygen/html/html/search/functions_10.js +1 -1
  182. package/SVF-doxygen/html/html/search/functions_2.js +1 -1
  183. package/SVF-doxygen/html/html/search/functions_3.js +0 -1
  184. package/SVF-doxygen/html/html/search/functions_8.js +1 -0
  185. package/SVF-doxygen/html/html/search/functions_e.js +1 -1
  186. package/SVF-doxygen/html/html/search/related_4.js +1 -0
  187. package/SVF-doxygen/html/html/search/variables_14.js +1 -1
  188. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  189. package/SVF-doxygen/html/html/search/variables_d.js +1 -1
  190. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  191. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +1 -1
  192. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01Inverse_3_01SVF_1_1ICFGNode_01_5_01_4_01_4.html +1 -1
  193. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1ICFGNode_01_5_01_4.html +1 -1
  194. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1ICFG_01_5_01_4.html +2 -2
  195. package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
  196. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  197. package/include/Graphs/ICFG.h +5 -3
  198. package/include/MemoryModel/PointerAnalysis.h +0 -3
  199. package/include/MemoryModel/SVFStatements.h +5 -0
  200. package/include/MemoryModel/SVFVariables.h +25 -4
  201. package/include/MemoryModel/SymbolTableInfo.h +2 -2
  202. package/lib/Graphs/ICFG.cpp +2 -2
  203. package/lib/MSSA/MemSSA.cpp +1 -1
  204. package/lib/MemoryModel/PointerAnalysis.cpp +1 -21
  205. package/lib/MemoryModel/SVFStatements.cpp +10 -1
  206. package/lib/SVF-FE/ICFGBuilder.cpp +16 -2
  207. package/lib/SVF-FE/SVFIRBuilder.cpp +13 -0
  208. package/lib/SVF-FE/SymbolTableBuilder.cpp +8 -8
  209. package/package.json +1 -1
@@ -563,9 +563,6 @@ Additional Inherited Members</h2></td></tr>
563
563
  <tr class="memitem:a74df51017ceaa389de2c2f33f3522fc3 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a74df51017ceaa389de2c2f33f3522fc3">getFunPtr</a> (const <a class="el" href="classSVF_1_1CallBlockNode.html">CallBlockNode</a> *cs) const</td></tr>
564
564
  <tr class="memdesc:a74df51017ceaa389de2c2f33f3522fc3 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return function pointer PAGNode at a callsite cs. <a href="classSVF_1_1PointerAnalysis.html#a74df51017ceaa389de2c2f33f3522fc3">More...</a><br /></td></tr>
565
565
  <tr class="separator:a74df51017ceaa389de2c2f33f3522fc3 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
566
- <tr class="memitem:a3fd44d3cfc3f4ab18506870c65df32f5 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a3fd44d3cfc3f4ab18506870c65df32f5">dumpGraph</a> ()</td></tr>
567
- <tr class="memdesc:a3fd44d3cfc3f4ab18506870c65df32f5 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether to dump the graph for debugging purpose. <a href="classSVF_1_1PointerAnalysis.html#a3fd44d3cfc3f4ab18506870c65df32f5">More...</a><br /></td></tr>
568
- <tr class="separator:a3fd44d3cfc3f4ab18506870c65df32f5 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
569
566
  <tr class="memitem:a73fb8e595473e0c7df1dd0de4968ad13 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a73fb8e595473e0c7df1dd0de4968ad13">resetObjFieldSensitive</a> ()</td></tr>
570
567
  <tr class="memdesc:a73fb8e595473e0c7df1dd0de4968ad13 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset all object node as field-sensitive. <a href="classSVF_1_1PointerAnalysis.html#a73fb8e595473e0c7df1dd0de4968ad13">More...</a><br /></td></tr>
571
568
  <tr class="separator:a73fb8e595473e0c7df1dd0de4968ad13 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -996,7 +993,7 @@ Additional Inherited Members</h2></td></tr>
996
993
  <div class="ttc" id="classSVF_1_1DDAStat_html_ac3189db5d8e17f64fdfcc9b040cf6100"><div class="ttname"><a href="classSVF_1_1DDAStat.html#ac3189db5d8e17f64fdfcc9b040cf6100">SVF::DDAStat::_TotalTimeOfQueries</a></div><div class="ttdeci">double _TotalTimeOfQueries</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00041">DDAStat.h:41</a></div></div>
997
994
  <div class="ttc" id="classSVF_1_1DDAVFSolver_html_a55803a2d30137b5ad15c5afeec7c6b28"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#a55803a2d30137b5ad15c5afeec7c6b28">SVF::DDAVFSolver&lt; NodeID, PointsTo, LocDPItem &gt;::getDefSVFGNode</a></div><div class="ttdeci">const SVFGNode * getDefSVFGNode(const PAGNode *pagNode) const</div><div class="ttdoc">GetDefinition SVFG. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00320">DDAVFSolver.h:320</a></div></div>
998
995
  <div class="ttc" id="classSVF_1_1DDAVFSolver_html_afe518d3d7f8051de5b9860f2460aa1b7"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#afe518d3d7f8051de5b9860f2460aa1b7">SVF::DDAVFSolver&lt; NodeID, PointsTo, LocDPItem &gt;::resetQuery</a></div><div class="ttdeci">virtual void resetQuery()</div><div class="ttdoc">Reset visited map for next points-to query. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00297">DDAVFSolver.h:297</a></div></div>
999
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a4880571f57542afc50da506dfe273183"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a4880571f57542afc50da506dfe273183">SVF::PointerAnalysis::printStat</a></div><div class="ttdeci">bool printStat()</div><div class="ttdoc">Whether print statistics. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00378">PointerAnalysis.h:378</a></div></div>
996
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a4880571f57542afc50da506dfe273183"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a4880571f57542afc50da506dfe273183">SVF::PointerAnalysis::printStat</a></div><div class="ttdeci">bool printStat()</div><div class="ttdoc">Whether print statistics. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00375">PointerAnalysis.h:375</a></div></div>
1000
997
  <div class="ttc" id="classSVF_1_1FlowDDA_html_a8930c3b8f3b58dca8da6017310bb74ae"><div class="ttname"><a href="classSVF_1_1FlowDDA.html#a8930c3b8f3b58dca8da6017310bb74ae">SVF::FlowDDA::handleOutOfBudgetDpm</a></div><div class="ttdeci">void handleOutOfBudgetDpm(const LocDPItem &amp;dpm)</div><div class="ttdoc">Handle out-of-budget dpm. </div><div class="ttdef"><b>Definition:</b> <a href="FlowDDA_8cpp_source.html#l00050">FlowDDA.cpp:50</a></div></div>
1001
998
  <div class="ttc" id="classSVF_1_1SVFVar_html"><div class="ttname"><a href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00046">SVFVariables.h:46</a></div></div>
1002
999
  <div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_ae7073c07bfd7912f888d54d4652c7cc2"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#ae7073c07bfd7912f888d54d4652c7cc2">SVF::BVDataPTAImpl::unionPts</a></div><div class="ttdeci">virtual bool unionPts(NodeID id, const PointsTo &amp;target)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00124">PointerAnalysisImpl.h:124</a></div></div>
@@ -1205,9 +1202,9 @@ Additional Inherited Members</h2></td></tr>
1205
1202
  <div class="ttc" id="SVFBasicTypes_8h_html_a40845b3027a1237076aa8297ca39e730"><div class="ttname"><a href="SVFBasicTypes_8h.html#a40845b3027a1237076aa8297ca39e730">DDDA</a></div><div class="ttdeci">#define DDDA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00160">SVFBasicTypes.h:160</a></div></div>
1206
1203
  <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>
1207
1204
  <div class="ttc" id="classSVF_1_1DDAVFSolver_html_a5a8632a957fce63f186dd8b657566dd2"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#a5a8632a957fce63f186dd8b657566dd2">SVF::DDAVFSolver&lt; NodeID, PointsTo, LocDPItem &gt;::addDDAPts</a></div><div class="ttdeci">virtual void addDDAPts(PointsTo &amp;pts, const NodeID &amp;var)</div><div class="ttdoc">Add pts. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00091">DDAVFSolver.h:91</a></div></div>
1208
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0f71e4cd0948b294c7d33a690bde7dbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0f71e4cd0948b294c7d33a690bde7dbe">SVF::PointerAnalysis::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00370">PointerAnalysis.h:370</a></div></div>
1205
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0f71e4cd0948b294c7d33a690bde7dbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0f71e4cd0948b294c7d33a690bde7dbe">SVF::PointerAnalysis::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00367">PointerAnalysis.h:367</a></div></div>
1209
1206
  <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
1210
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a68b05bc02c5473c1e0d39ac4f4454bac"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">SVF::PointerAnalysis::getFIObjVar</a></div><div class="ttdeci">NodeID getFIObjVar(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00353">PointerAnalysis.h:353</a></div></div>
1207
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a68b05bc02c5473c1e0d39ac4f4454bac"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">SVF::PointerAnalysis::getFIObjVar</a></div><div class="ttdeci">NodeID getFIObjVar(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00350">PointerAnalysis.h:350</a></div></div>
1211
1208
  </div><!-- fragment -->
1212
1209
  </div>
1213
1210
  </div>
@@ -1422,11 +1419,11 @@ Additional Inherited Members</h2></td></tr>
1422
1419
  <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>
1423
1420
  <div class="ttc" id="classSVF_1_1PointsTo_1_1PointsToIterator_html"><div class="ttname"><a href="classSVF_1_1PointsTo_1_1PointsToIterator.html">SVF::PointsTo::PointsToIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00174">PointsTo.h:174</a></div></div>
1424
1421
  <div class="ttc" id="classSVF_1_1StmtVFGNode_html_a4dd7615f42971da9b6ec1dc04f0ec4e6"><div class="ttname"><a href="classSVF_1_1StmtVFGNode.html#a4dd7615f42971da9b6ec1dc04f0ec4e6">SVF::StmtVFGNode::getPAGEdge</a></div><div class="ttdeci">const PAGEdge * getPAGEdge() const</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00133">VFGNode.h:133</a></div></div>
1425
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_acbbc0934af9bc0145389dc41430c6d8b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#acbbc0934af9bc0145389dc41430c6d8b">SVF::PointerAnalysis::getGepObjVar</a></div><div class="ttdeci">NodeID getGepObjVar(NodeID id, const LocationSet &amp;ls)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00357">PointerAnalysis.h:357</a></div></div>
1422
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_acbbc0934af9bc0145389dc41430c6d8b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#acbbc0934af9bc0145389dc41430c6d8b">SVF::PointerAnalysis::getGepObjVar</a></div><div class="ttdeci">NodeID getGepObjVar(NodeID id, const LocationSet &amp;ls)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00354">PointerAnalysis.h:354</a></div></div>
1426
1423
  <div class="ttc" id="SVFBasicTypes_8h_html_a40845b3027a1237076aa8297ca39e730"><div class="ttname"><a href="SVFBasicTypes_8h.html#a40845b3027a1237076aa8297ca39e730">DDDA</a></div><div class="ttdeci">#define DDDA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00160">SVFBasicTypes.h:160</a></div></div>
1427
1424
  <div class="ttc" id="classSVF_1_1PointsTo_html_aa53962e561399bf493d1f2b9137356f6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">SVF::PointsTo::begin</a></div><div class="ttdeci">const_iterator begin(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00127">PointsTo.h:127</a></div></div>
1428
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac5683fe2e24b393ccc5cb6d8bc92cf2b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac5683fe2e24b393ccc5cb6d8bc92cf2b">SVF::PointerAnalysis::setObjFieldInsensitive</a></div><div class="ttdeci">void setObjFieldInsensitive(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00365">PointerAnalysis.h:365</a></div></div>
1429
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a45462312a746339fff8b990a093d9a1b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a45462312a746339fff8b990a093d9a1b">SVF::PointerAnalysis::isBlkObjOrConstantObj</a></div><div class="ttdeci">virtual bool isBlkObjOrConstantObj(NodeID ptd) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00316">PointerAnalysis.h:316</a></div></div>
1425
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac5683fe2e24b393ccc5cb6d8bc92cf2b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac5683fe2e24b393ccc5cb6d8bc92cf2b">SVF::PointerAnalysis::setObjFieldInsensitive</a></div><div class="ttdeci">void setObjFieldInsensitive(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00362">PointerAnalysis.h:362</a></div></div>
1426
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a45462312a746339fff8b990a093d9a1b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a45462312a746339fff8b990a093d9a1b">SVF::PointerAnalysis::isBlkObjOrConstantObj</a></div><div class="ttdeci">virtual bool isBlkObjOrConstantObj(NodeID ptd) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00313">PointerAnalysis.h:313</a></div></div>
1430
1427
  <div class="ttc" id="classSVF_1_1PointsTo_html_ab196d86cfb48d1c5d27a0c03c7497afa"><div class="ttname"><a href="classSVF_1_1PointsTo.html#ab196d86cfb48d1c5d27a0c03c7497afa">SVF::PointsTo::set</a></div><div class="ttdeci">void set(u32_t n)</div><div class="ttdoc">Inserts n in the set. </div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8cpp_source.html#l00149">PointsTo.cpp:149</a></div></div>
1431
1428
  <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>
1432
1429
  <div class="ttc" id="classSVF_1_1NormalGepStmt_html"><div class="ttname"><a href="classSVF_1_1NormalGepStmt.html">SVF::NormalGepStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00459">SVFStatements.h:459</a></div></div>
@@ -1434,7 +1431,7 @@ Additional Inherited Members</h2></td></tr>
1434
1431
  <div class="ttc" id="classSVF_1_1PointsTo_html"><div class="ttname"><a href="classSVF_1_1PointsTo.html">SVF::PointsTo</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00027">PointsTo.h:27</a></div></div>
1435
1432
  <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
1436
1433
  <div class="ttc" id="classSVF_1_1PointsTo_html_a8f741cdffbf3c5fe0f602cdca677dee6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a8f741cdffbf3c5fe0f602cdca677dee6">SVF::PointsTo::end</a></div><div class="ttdeci">const_iterator end(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00128">PointsTo.h:128</a></div></div>
1437
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a68b05bc02c5473c1e0d39ac4f4454bac"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">SVF::PointerAnalysis::getFIObjVar</a></div><div class="ttdeci">NodeID getFIObjVar(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00353">PointerAnalysis.h:353</a></div></div>
1434
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a68b05bc02c5473c1e0d39ac4f4454bac"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">SVF::PointerAnalysis::getFIObjVar</a></div><div class="ttdeci">NodeID getFIObjVar(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00350">PointerAnalysis.h:350</a></div></div>
1438
1435
  </div><!-- fragment -->
1439
1436
  </div>
1440
1437
  </div>
@@ -1504,7 +1501,7 @@ Additional Inherited Members</h2></td></tr>
1504
1501
  <p>refine indirect call edge </p>
1505
1502
 
1506
1503
  <p class="definition">Definition at line <a class="el" href="FlowDDA_8cpp_source.html#l00059">59</a> of file <a class="el" href="FlowDDA_8cpp_source.html">FlowDDA.cpp</a>.</p>
1507
- <div class="fragment"><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;{</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallBlockNode.html">CallBlockNode</a>* cbn = <a class="code" href="classSVF_1_1DDAVFSolver.html#acb7980c7e0d1d8ad6abab0b80831d2a9">getSVFG</a>()-&gt;<a class="code" href="classSVF_1_1VFG.html#af04068b6f6beff961f815cc6eae7f5b0">getCallSite</a>(csId);</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; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()-&gt;isIndirectCallSites(cbn))</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; {</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a8d3a457efb1963f8d87305bf33c02754">hasIndCSCallees</a>(cbn))</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; <span class="keyword">const</span> <a class="code" href="classSVF_1_1FlowDDA.html#ae1ec4e6e9b967a7fd36c32f21e05ba11">FunctionSet</a>&amp; funset = <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#a88bec70a6bf5c1c41bc4efd035ef0e08">getIndCSCallees</a>(cbn);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">if</span>(funset.find(callee)!=funset.end())</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</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">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">else</span> <span class="comment">// if this is an direct call</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</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="ttc" id="classSVF_1_1PointerAnalysis_html_a8d3a457efb1963f8d87305bf33c02754"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a8d3a457efb1963f8d87305bf33c02754">SVF::PointerAnalysis::hasIndCSCallees</a></div><div class="ttdeci">bool hasIndCSCallees(const CallBlockNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00395">PointerAnalysis.h:395</a></div></div>
1504
+ <div class="fragment"><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;{</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallBlockNode.html">CallBlockNode</a>* cbn = <a class="code" href="classSVF_1_1DDAVFSolver.html#acb7980c7e0d1d8ad6abab0b80831d2a9">getSVFG</a>()-&gt;<a class="code" href="classSVF_1_1VFG.html#af04068b6f6beff961f815cc6eae7f5b0">getCallSite</a>(csId);</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; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()-&gt;isIndirectCallSites(cbn))</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; {</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a8d3a457efb1963f8d87305bf33c02754">hasIndCSCallees</a>(cbn))</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; <span class="keyword">const</span> <a class="code" href="classSVF_1_1FlowDDA.html#ae1ec4e6e9b967a7fd36c32f21e05ba11">FunctionSet</a>&amp; funset = <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#a88bec70a6bf5c1c41bc4efd035ef0e08">getIndCSCallees</a>(cbn);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">if</span>(funset.find(callee)!=funset.end())</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</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">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">else</span> <span class="comment">// if this is an direct call</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</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="ttc" id="classSVF_1_1PointerAnalysis_html_a8d3a457efb1963f8d87305bf33c02754"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a8d3a457efb1963f8d87305bf33c02754">SVF::PointerAnalysis::hasIndCSCallees</a></div><div class="ttdeci">bool hasIndCSCallees(const CallBlockNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00392">PointerAnalysis.h:392</a></div></div>
1508
1505
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00178">PointerAnalysis.h:178</a></div></div>
1509
1506
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00205">PointerAnalysis.h:205</a></div></div>
1510
1507
  <div class="ttc" id="classSVF_1_1VFG_html_af04068b6f6beff961f815cc6eae7f5b0"><div class="ttname"><a href="classSVF_1_1VFG.html#af04068b6f6beff961f815cc6eae7f5b0">SVF::VFG::getCallSite</a></div><div class="ttdeci">const CallBlockNode * getCallSite(CallSiteID id) const</div><div class="ttdef"><b>Definition:</b> <a href="VFG_8h_source.html#l00182">VFG.h:182</a></div></div>
@@ -1607,7 +1604,7 @@ Additional Inherited Members</h2></td></tr>
1607
1604
  <p class="definition">Definition at line <a class="el" href="FlowDDA_8h_source.html#l00107">107</a> of file <a class="el" href="FlowDDA_8h_source.html">FlowDDA.h</a>.</p>
1608
1605
  <div class="fragment"><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; {</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="classSVF_1_1FlowDDA.html#a5a5548577e4a3e225185c4001386fc84">CallEdgeMap</a> newEdges;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a40738643202ca6301671f51da3fc1137">resolveIndCalls</a>(cs, <a class="code" href="classSVF_1_1DDAVFSolver.html#ae31e9281e4f1e0585fdf328b7339e1bf">getCachedPointsTo</a>(dpm), newEdges);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">for</span> (CallEdgeMap::const_iterator iter = newEdges.begin(),eiter = newEdges.end(); iter != eiter; iter++)</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; {</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">const</span> CallBlockNode* newcs = iter-&gt;first;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1FlowDDA.html#ae1ec4e6e9b967a7fd36c32f21e05ba11">FunctionSet</a> &amp; functions = iter-&gt;second;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">for</span> (FunctionSet::const_iterator func_iter = functions.begin(); func_iter != functions.end(); func_iter++)</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; {</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keyword">const</span> SVFFunction* func = *func_iter;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="classSVF_1_1DDAVFSolver.html#acb7980c7e0d1d8ad6abab0b80831d2a9">getSVFG</a>()-&gt;<a class="code" href="classSVF_1_1SVFG.html#a0cebc2ba5ae81a6d45b224a4f94fc8b4">connectCallerAndCallee</a>(newcs, func, svfgEdges);</div><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; }</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; }</div><div class="ttc" id="classSVF_1_1FlowDDA_html_a5a5548577e4a3e225185c4001386fc84"><div class="ttname"><a href="classSVF_1_1FlowDDA.html#a5a5548577e4a3e225185c4001386fc84">SVF::FlowDDA::CallEdgeMap</a></div><div class="ttdeci">BVDataPTAImpl::CallEdgeMap CallEdgeMap</div><div class="ttdef"><b>Definition:</b> <a href="FlowDDA_8h_source.html#l00030">FlowDDA.h:30</a></div></div>
1609
1606
  <div class="ttc" id="classSVF_1_1FlowDDA_html_ae1ec4e6e9b967a7fd36c32f21e05ba11"><div class="ttname"><a href="classSVF_1_1FlowDDA.html#ae1ec4e6e9b967a7fd36c32f21e05ba11">SVF::FlowDDA::FunctionSet</a></div><div class="ttdeci">BVDataPTAImpl::FunctionSet FunctionSet</div><div class="ttdef"><b>Definition:</b> <a href="FlowDDA_8h_source.html#l00031">FlowDDA.h:31</a></div></div>
1610
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a40738643202ca6301671f51da3fc1137"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a40738643202ca6301671f51da3fc1137">SVF::PointerAnalysis::resolveIndCalls</a></div><div class="ttdeci">virtual void resolveIndCalls(const CallBlockNode *cs, const PointsTo &amp;target, CallEdgeMap &amp;newEdges, LLVMCallGraph *callgraph=nullptr)</div><div class="ttdoc">Resolve indirect call edges. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00435">PointerAnalysis.cpp:435</a></div></div>
1607
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a40738643202ca6301671f51da3fc1137"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a40738643202ca6301671f51da3fc1137">SVF::PointerAnalysis::resolveIndCalls</a></div><div class="ttdeci">virtual void resolveIndCalls(const CallBlockNode *cs, const PointsTo &amp;target, CallEdgeMap &amp;newEdges, LLVMCallGraph *callgraph=nullptr)</div><div class="ttdoc">Resolve indirect call edges. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00415">PointerAnalysis.cpp:415</a></div></div>
1611
1608
  <div class="ttc" id="classSVF_1_1DDAVFSolver_html_ae31e9281e4f1e0585fdf328b7339e1bf"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#ae31e9281e4f1e0585fdf328b7339e1bf">SVF::DDAVFSolver&lt; NodeID, PointsTo, LocDPItem &gt;::getCachedPointsTo</a></div><div class="ttdeci">virtual const PointsTo &amp; getCachedPointsTo(const LocDPItem &amp;dpm)</div><div class="ttdoc">Points-to Caching for top-level pointers and address-taken objects. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00532">DDAVFSolver.h:532</a></div></div>
1612
1609
  <div class="ttc" id="classSVF_1_1DDAVFSolver_html_acb7980c7e0d1d8ad6abab0b80831d2a9"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#acb7980c7e0d1d8ad6abab0b80831d2a9">SVF::DDAVFSolver&lt; NodeID, PointsTo, LocDPItem &gt;::getSVFG</a></div><div class="ttdeci">SVFG * getSVFG() const</div><div class="ttdoc">Return SVFG. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00096">DDAVFSolver.h:96</a></div></div>
1613
1610
  <div class="ttc" id="classSVF_1_1SVFG_html_a0cebc2ba5ae81a6d45b224a4f94fc8b4"><div class="ttname"><a href="classSVF_1_1SVFG.html#a0cebc2ba5ae81a6d45b224a4f94fc8b4">SVF::SVFG::connectCallerAndCallee</a></div><div class="ttdeci">virtual void connectCallerAndCallee(const CallBlockNode *cs, const SVFFunction *callee, SVFGEdgeSetTy &amp;edges)</div><div class="ttdoc">Connect SVFG nodes between caller and callee for indirect call site. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00641">SVFG.cpp:641</a></div></div>