svf-tools 1.0.557 → 1.0.560

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 (221) hide show
  1. package/SVF-doxygen/html/html/AndersenPWC_8h_source.html +15 -15
  2. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +12 -11
  3. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +11 -10
  4. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +47 -46
  5. package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +9 -8
  6. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +35 -34
  7. package/SVF-doxygen/html/html/Andersen_8h_source.html +6 -6
  8. package/SVF-doxygen/html/html/CFLGrammar_8txt.html +8 -8
  9. package/SVF-doxygen/html/html/CFLGraphBuilder_8cpp_source.html +10 -1
  10. package/SVF-doxygen/html/html/CFLGraphBuilder_8h_source.html +3 -1
  11. package/SVF-doxygen/html/html/CHGBuilder_8cpp.html +2 -2
  12. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +19 -18
  13. package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +15 -15
  14. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +4 -4
  15. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +13 -12
  16. package/SVF-doxygen/html/html/DDAPass_8h_source.html +11 -11
  17. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +20 -19
  18. package/SVF-doxygen/html/html/DDAStat_8h_source.html +13 -13
  19. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +2 -2
  20. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +5 -2
  21. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +3 -2
  22. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +3 -3
  23. package/SVF-doxygen/html/html/ICFGStat_8h_source.html +5 -4
  24. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +2 -2
  25. package/SVF-doxygen/html/html/MHP_8cpp_source.html +2 -2
  26. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +5 -5
  27. package/SVF-doxygen/html/html/MTAStat_8h_source.html +1 -1
  28. package/SVF-doxygen/html/html/MTA_8cpp_source.html +2 -2
  29. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +2 -2
  30. package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +2 -2
  31. package/SVF-doxygen/html/html/PEGGrammar_8txt.html +14 -32
  32. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +67 -69
  33. package/SVF-doxygen/html/html/PTAStat_8h.html +1 -0
  34. package/SVF-doxygen/html/html/PTAStat_8h_source.html +70 -76
  35. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +2 -2
  36. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +1 -1
  37. package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +2 -1
  38. package/SVF-doxygen/html/html/SVFGReadWrite_8cpp_source.html +5 -4
  39. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +22 -21
  40. package/SVF-doxygen/html/html/SVFGStat_8h_source.html +5 -5
  41. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +5 -5
  42. package/SVF-doxygen/html/html/SVFG_8h_source.html +3 -3
  43. package/SVF-doxygen/html/html/SVFStat_8cpp.html +81 -0
  44. package/SVF-doxygen/html/html/SVFStat_8cpp_source.html +85 -0
  45. package/SVF-doxygen/html/html/SVFStat_8h.html +94 -0
  46. package/SVF-doxygen/html/html/SVFStat_8h_source.html +103 -0
  47. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +1 -1
  48. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +1 -1
  49. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
  50. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +3 -3
  51. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +2 -2
  52. package/SVF-doxygen/html/html/WPAStat_8h_source.html +8 -8
  53. package/SVF-doxygen/html/html/annotated.html +39 -38
  54. package/SVF-doxygen/html/html/classSVF_1_1AliasCFLGraphBuilder-members.html +13 -10
  55. package/SVF-doxygen/html/html/classSVF_1_1AliasCFLGraphBuilder.html +190 -2
  56. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +79 -79
  57. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +15 -15
  58. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +37 -37
  59. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +1 -1
  60. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +22 -22
  61. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat-members.html +24 -22
  62. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +97 -86
  63. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.png +0 -0
  64. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +24 -24
  65. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +47 -47
  66. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +4 -4
  67. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +30 -30
  68. package/SVF-doxygen/html/html/classSVF_1_1DDAStat-members.html +24 -23
  69. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +80 -67
  70. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.png +0 -0
  71. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +4 -4
  72. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI-members.html +5 -4
  73. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +40 -5
  74. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +4 -4
  75. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +26 -26
  76. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat-members.html +24 -22
  77. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +67 -56
  78. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.png +0 -0
  79. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat-members.html +23 -21
  80. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.html +55 -42
  81. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.png +0 -0
  82. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +6 -6
  83. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +4 -4
  84. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +2 -2
  85. package/SVF-doxygen/html/html/classSVF_1_1MTAStat-members.html +25 -23
  86. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +59 -48
  87. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.png +0 -0
  88. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +5 -5
  89. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat-members.html +22 -21
  90. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +57 -44
  91. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.png +0 -0
  92. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +6 -6
  93. package/SVF-doxygen/html/html/classSVF_1_1Options.html +2 -2
  94. package/SVF-doxygen/html/html/classSVF_1_1PTAStat-members.html +24 -22
  95. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +186 -420
  96. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.png +0 -0
  97. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +2 -2
  98. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +12 -12
  99. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat-members.html +33 -32
  100. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +100 -87
  101. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.png +0 -0
  102. package/SVF-doxygen/html/html/classSVF_1_1SVFStat-members.html +100 -0
  103. package/SVF-doxygen/html/html/classSVF_1_1SVFStat.html +605 -0
  104. package/SVF-doxygen/html/html/classSVF_1_1SVFStat.png +0 -0
  105. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +1 -1
  106. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +4 -4
  107. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +12 -12
  108. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat-members.html +26 -24
  109. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +65 -54
  110. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.png +0 -0
  111. package/SVF-doxygen/html/html/classes.html +50 -50
  112. package/SVF-doxygen/html/html/dda_8cpp.html +1 -1
  113. package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
  114. package/SVF-doxygen/html/html/dir_862d3276083eaac55caed79b9120bf29.html +2 -0
  115. package/SVF-doxygen/html/html/dir_95e22971b5dbae2382075a3453e365b4.html +2 -0
  116. package/SVF-doxygen/html/html/files.html +10 -8
  117. package/SVF-doxygen/html/html/functions_0x7e.html +3 -0
  118. package/SVF-doxygen/html/html/functions_a.html +11 -5
  119. package/SVF-doxygen/html/html/functions_c.html +27 -25
  120. package/SVF-doxygen/html/html/functions_e.html +3 -2
  121. package/SVF-doxygen/html/html/functions_enum.html +1 -1
  122. package/SVF-doxygen/html/html/functions_eval_c.html +1 -1
  123. package/SVF-doxygen/html/html/functions_eval_w.html +1 -1
  124. package/SVF-doxygen/html/html/functions_f.html +3 -3
  125. package/SVF-doxygen/html/html/functions_func.html +16 -10
  126. package/SVF-doxygen/html/html/functions_func_0x7e.html +3 -0
  127. package/SVF-doxygen/html/html/functions_func_c.html +29 -25
  128. package/SVF-doxygen/html/html/functions_func_e.html +1 -1
  129. package/SVF-doxygen/html/html/functions_func_g.html +1 -1
  130. package/SVF-doxygen/html/html/functions_func_i.html +11 -8
  131. package/SVF-doxygen/html/html/functions_func_p.html +9 -7
  132. package/SVF-doxygen/html/html/functions_func_s.html +14 -11
  133. package/SVF-doxygen/html/html/functions_g.html +2 -2
  134. package/SVF-doxygen/html/html/functions_i.html +11 -8
  135. package/SVF-doxygen/html/html/functions_l.html +6 -6
  136. package/SVF-doxygen/html/html/functions_m.html +2 -1
  137. package/SVF-doxygen/html/html/functions_n.html +1 -1
  138. package/SVF-doxygen/html/html/functions_o.html +3 -3
  139. package/SVF-doxygen/html/html/functions_p.html +20 -16
  140. package/SVF-doxygen/html/html/functions_s.html +19 -15
  141. package/SVF-doxygen/html/html/functions_t.html +8 -8
  142. package/SVF-doxygen/html/html/functions_type_n.html +1 -1
  143. package/SVF-doxygen/html/html/functions_type_s.html +1 -1
  144. package/SVF-doxygen/html/html/functions_type_t.html +1 -1
  145. package/SVF-doxygen/html/html/functions_v.html +6 -6
  146. package/SVF-doxygen/html/html/functions_vars_e.html +1 -0
  147. package/SVF-doxygen/html/html/functions_vars_g.html +1 -1
  148. package/SVF-doxygen/html/html/functions_vars_m.html +1 -0
  149. package/SVF-doxygen/html/html/functions_vars_s.html +1 -0
  150. package/SVF-doxygen/html/html/functions_vars_t.html +1 -1
  151. package/SVF-doxygen/html/html/functions_w.html +1 -1
  152. package/SVF-doxygen/html/html/globals_g.html +3 -3
  153. package/SVF-doxygen/html/html/globals_v.html +1 -2
  154. package/SVF-doxygen/html/html/globals_vars.html +3 -4
  155. package/SVF-doxygen/html/html/hierarchy.html +47 -46
  156. package/SVF-doxygen/html/html/namespaceSVF.html +2 -0
  157. package/SVF-doxygen/html/html/search/all_1.js +2 -0
  158. package/SVF-doxygen/html/html/search/all_10.js +10 -10
  159. package/SVF-doxygen/html/html/search/all_11.js +1 -1
  160. package/SVF-doxygen/html/html/search/all_12.js +11 -8
  161. package/SVF-doxygen/html/html/search/all_13.js +4 -4
  162. package/SVF-doxygen/html/html/search/all_14.js +1 -1
  163. package/SVF-doxygen/html/html/search/all_15.js +5 -5
  164. package/SVF-doxygen/html/html/search/all_16.js +1 -1
  165. package/SVF-doxygen/html/html/search/all_19.js +1 -0
  166. package/SVF-doxygen/html/html/search/all_3.js +4 -3
  167. package/SVF-doxygen/html/html/search/all_5.js +2 -2
  168. package/SVF-doxygen/html/html/search/all_6.js +1 -1
  169. package/SVF-doxygen/html/html/search/all_7.js +4 -4
  170. package/SVF-doxygen/html/html/search/all_9.js +2 -1
  171. package/SVF-doxygen/html/html/search/all_c.js +4 -4
  172. package/SVF-doxygen/html/html/search/all_d.js +1 -1
  173. package/SVF-doxygen/html/html/search/all_e.js +2 -2
  174. package/SVF-doxygen/html/html/search/all_f.js +2 -2
  175. package/SVF-doxygen/html/html/search/classes_f.js +1 -0
  176. package/SVF-doxygen/html/html/search/enums_1.js +1 -1
  177. package/SVF-doxygen/html/html/search/enumvalues_13.js +1 -1
  178. package/SVF-doxygen/html/html/search/enumvalues_2.js +1 -1
  179. package/SVF-doxygen/html/html/search/files_d.js +2 -0
  180. package/SVF-doxygen/html/html/search/functions_0.js +2 -0
  181. package/SVF-doxygen/html/html/search/functions_11.js +2 -1
  182. package/SVF-doxygen/html/html/search/functions_17.js +1 -0
  183. package/SVF-doxygen/html/html/search/functions_2.js +2 -1
  184. package/SVF-doxygen/html/html/search/functions_4.js +1 -1
  185. package/SVF-doxygen/html/html/search/functions_6.js +1 -1
  186. package/SVF-doxygen/html/html/search/functions_8.js +1 -0
  187. package/SVF-doxygen/html/html/search/functions_f.js +4 -4
  188. package/SVF-doxygen/html/html/search/typedefs_10.js +1 -1
  189. package/SVF-doxygen/html/html/search/typedefs_11.js +1 -1
  190. package/SVF-doxygen/html/html/search/typedefs_c.js +1 -1
  191. package/SVF-doxygen/html/html/search/variables_12.js +1 -1
  192. package/SVF-doxygen/html/html/search/variables_13.js +2 -2
  193. package/SVF-doxygen/html/html/search/variables_14.js +1 -1
  194. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  195. package/SVF-doxygen/html/html/search/variables_5.js +1 -1
  196. package/SVF-doxygen/html/html/search/variables_7.js +3 -3
  197. package/SVF-doxygen/html/html/search/variables_d.js +1 -1
  198. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  199. package/include/CFL/CFLGraphBuilder.h +9 -0
  200. package/include/CFL/PEGGrammar.txt +4 -8
  201. package/include/Graphs/ICFGStat.h +1 -1
  202. package/include/Util/ExtAPI.h +3 -0
  203. package/include/Util/ExtAPI.json +1456 -44
  204. package/include/Util/PTAStat.h +6 -36
  205. package/include/Util/SVFStat.h +95 -0
  206. package/include/WPA/AndersenPWC.h +1 -1
  207. package/lib/CFL/CFLGraphBuilder.cpp +44 -0
  208. package/lib/DDA/DDAPass.cpp +1 -0
  209. package/lib/DDA/DDAStat.cpp +1 -0
  210. package/lib/Graphs/SVFGReadWrite.cpp +1 -0
  211. package/lib/Graphs/SVFGStat.cpp +1 -0
  212. package/lib/SVF-FE/CHGBuilder.cpp +1 -0
  213. package/lib/Util/ExtAPI.cpp +42 -4
  214. package/lib/Util/PTAStat.cpp +2 -21
  215. package/lib/Util/SVFStat.cpp +58 -0
  216. package/lib/WPA/Andersen.cpp +1 -0
  217. package/lib/WPA/AndersenSCD.cpp +1 -0
  218. package/lib/WPA/AndersenSFR.cpp +1 -0
  219. package/lib/WPA/AndersenStat.cpp +1 -0
  220. package/lib/WPA/AndersenWaveDiff.cpp +1 -0
  221. package/package.json +1 -1
@@ -22,7 +22,7 @@ var searchData=
22
22
  ['tid',['tid',['../classSVF_1_1CxtThreadStmt.html#ad96bacc3de1ce576ad397d19aa99a269',1,'SVF::CxtThreadStmt::tid()'],['../classSVF_1_1CxtThreadProc.html#a99b24e1be2bfb49569532c2c28c68969',1,'SVF::CxtThreadProc::tid()']]],
23
23
  ['timeofcollapse',['timeOfCollapse',['../classSVF_1_1AndersenBase.html#ad40b196c2c699bd115529b806d20de25',1,'SVF::AndersenBase']]],
24
24
  ['timeofcreatemuchi',['timeOfCreateMUCHI',['../classSVF_1_1MemSSA.html#a4d2418b7df74f23d8fd328f66e29f198',1,'SVF::MemSSA::timeOfCreateMUCHI()'],['../classSVF_1_1MemSSAStat.html#a48c70f0ed1c7d031a3cd528035162e52',1,'SVF::MemSSAStat::TimeOfCreateMUCHI()']]],
25
- ['timeofgeneratingmemregions',['timeOfGeneratingMemRegions',['../classSVF_1_1MemSSA.html#a37dca8a7d155de4870358146d219b5e5',1,'SVF::MemSSA::timeOfGeneratingMemRegions()'],['../classSVF_1_1MemSSAStat.html#a74c36654b7452aa94aa241881f0a83c5',1,'SVF::MemSSAStat::TimeOfGeneratingMemRegions()']]],
25
+ ['timeofgeneratingmemregions',['TimeOfGeneratingMemRegions',['../classSVF_1_1MemSSAStat.html#a74c36654b7452aa94aa241881f0a83c5',1,'SVF::MemSSAStat::TimeOfGeneratingMemRegions()'],['../classSVF_1_1MemSSA.html#a37dca8a7d155de4870358146d219b5e5',1,'SVF::MemSSA::timeOfGeneratingMemRegions()']]],
26
26
  ['timeofinsertingphi',['timeOfInsertingPHI',['../classSVF_1_1MemSSA.html#a3c7b5fa73fdc7c805ee3673fbe812b44',1,'SVF::MemSSA::timeOfInsertingPHI()'],['../classSVF_1_1MemSSAStat.html#a0c24822c8549af6a96e82312954fab9b',1,'SVF::MemSSAStat::TimeOfInsertingPHI()']]],
27
27
  ['timeofprocesscopygep',['timeOfProcessCopyGep',['../classSVF_1_1AndersenBase.html#aae14de6fbca9280d8d0290326aa493f0',1,'SVF::AndersenBase']]],
28
28
  ['timeofprocessloadstore',['timeOfProcessLoadStore',['../classSVF_1_1AndersenBase.html#a9fe738f1e11c80006d540f246a80bfdf',1,'SVF::AndersenBase']]],
@@ -30,7 +30,7 @@ var searchData=
30
30
  ['timeofsccmerges',['timeOfSCCMerges',['../classSVF_1_1AndersenBase.html#a02c5a50b214d36921e1404784e76704d',1,'SVF::AndersenBase']]],
31
31
  ['timeofssarenaming',['timeOfSSARenaming',['../classSVF_1_1MemSSA.html#a97ccd5e0b9ab6144415e26bdf95cbabd',1,'SVF::MemSSA::timeOfSSARenaming()'],['../classSVF_1_1MemSSAStat.html#a887ff23a7ea1a18f08b1744ff30da773',1,'SVF::MemSSAStat::TimeOfSSARenaming()']]],
32
32
  ['timeofupdatecallgraph',['timeOfUpdateCallGraph',['../classSVF_1_1AndersenBase.html#a2afb49f513c9534fd051117b59dc056b',1,'SVF::AndersenBase']]],
33
- ['timestatmap',['timeStatMap',['../classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337',1,'SVF::PTAStat']]],
33
+ ['timestatmap',['timeStatMap',['../classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831',1,'SVF::SVFStat']]],
34
34
  ['tlptdata',['tlPTData',['../classSVF_1_1MutableVersionedPTData.html#a01974968b7cf60a4231cc83c93b26d7f',1,'SVF::MutableVersionedPTData::tlPTData()'],['../classSVF_1_1PersistentVersionedPTData.html#a29104a2d53d94805e142f778d3d21ad5',1,'SVF::PersistentVersionedPTData::tlPTData()']]],
35
35
  ['totalanalysistime',['TotalAnalysisTime',['../classSVF_1_1PTAStat.html#a25001a6d794d91056f37d954d9660910',1,'SVF::PTAStat']]],
36
36
  ['totalcallsitenum',['totalCallSiteNum',['../classSVF_1_1PTACallGraph.html#a276338e88cc286f6a1808b1fcdf74d9a',1,'SVF::PTACallGraph']]],
@@ -5,7 +5,7 @@ var searchData=
5
5
  ['uniqueintersections',['uniqueIntersections',['../classSVF_1_1PersistentPointsToCache.html#a474023fe293b080fbda7da06ef380531',1,'SVF::PersistentPointsToCache']]],
6
6
  ['uniqueunions',['uniqueUnions',['../classSVF_1_1PersistentPointsToCache.html#aacebdd87b1dd45250391d035b032f9d4',1,'SVF::PersistentPointsToCache']]],
7
7
  ['unlocksites',['unlocksites',['../classSVF_1_1LockAnalysis.html#aec459af1d1624df55ffc95cd75655780',1,'SVF::LockAnalysis']]],
8
- ['updatecallgraphtime',['updateCallGraphTime',['../classSVF_1_1FlowSensitive.html#afc140b6c8e78dc2d962f64fdf53b1e07',1,'SVF::FlowSensitive::updateCallGraphTime()'],['../classSVF_1_1PTAStat.html#a8aedfeb35f76e6d33135637156468894',1,'SVF::PTAStat::UpdateCallGraphTime()']]],
8
+ ['updatecallgraphtime',['UpdateCallGraphTime',['../classSVF_1_1PTAStat.html#a8aedfeb35f76e6d33135637156468894',1,'SVF::PTAStat::UpdateCallGraphTime()'],['../classSVF_1_1FlowSensitive.html#afc140b6c8e78dc2d962f64fdf53b1e07',1,'SVF::FlowSensitive::updateCallGraphTime()']]],
9
9
  ['updatetime',['updateTime',['../classSVF_1_1FlowSensitive.html#af5a94d14096ae2bbc47b3b3b9f723226',1,'SVF::FlowSensitive']]],
10
10
  ['usedregs',['usedRegs',['../classSVF_1_1MemSSA.html#acf840b71b67cabe831f01f2d358f27fa',1,'SVF::MemSSA']]],
11
11
  ['usepcg',['UsePCG',['../classSVF_1_1Options.html#af2f66307e1d51947676f622c98ef0762',1,'SVF::Options']]],
@@ -25,7 +25,7 @@ var searchData=
25
25
  ['vfnvectors',['vfnVectors',['../classSVF_1_1DCHNode.html#af479bf99a759b5dd68619e24f00bfa10',1,'SVF::DCHNode']]],
26
26
  ['vfspta',['vfspta',['../classSVF_1_1VersionedFlowSensitive.html#a53b8a881400d7b353133c68295812efb',1,'SVF::VersionedFlowSensitive::vfspta()'],['../classSVF_1_1VersionedFlowSensitiveStat.html#a19bde64f7e0ac99a2a6b49e78aa2e70f',1,'SVF::VersionedFlowSensitiveStat::vfspta()']]],
27
27
  ['vfunprelabel',['vfunPreLabel',['../CPPUtil_8cpp.html#a74958d1db4b08e58aee58557d386c24b',1,'CPPUtil.cpp']]],
28
- ['vgep',['Vgep',['../CFLGrammar_8txt.html#ab5d65f36b081efc4f36dc7086db1fc2c',1,'Vgep(): CFLGrammar.txt'],['../PEGGrammar_8txt.html#ab5d65f36b081efc4f36dc7086db1fc2c',1,'Vgep(): PEGGrammar.txt']]],
28
+ ['vgep',['Vgep',['../CFLGrammar_8txt.html#ab5d65f36b081efc4f36dc7086db1fc2c',1,'CFLGrammar.txt']]],
29
29
  ['vgepbar',['Vgepbar',['../CFLGrammar_8txt.html#ae239ca8fb918fa812492fe369202225d',1,'CFLGrammar.txt']]],
30
30
  ['vid',['vid',['../classSVF_1_1MRVer.html#a394b8c115d01dcf212d453a93a812aab',1,'SVF::MRVer']]],
31
31
  ['virtualcallsites',['virtualCallSites',['../classSVF_1_1TypeAnalysis.html#aa7fb5d1cd8e42058120758a990ed471d',1,'SVF::TypeAnalysis']]],
@@ -17,7 +17,7 @@ var searchData=
17
17
  ['else',['else',['../cJSON_8cpp.html#a0544c3fe466e421738dae463968b70ba',1,'cJSON.cpp']]],
18
18
  ['enablealiascheck',['EnableAliasCheck',['../classSVF_1_1Options.html#a4da18281b973b9ffb5068dd53060524c',1,'SVF::Options']]],
19
19
  ['enablethreadcallgraph',['EnableThreadCallGraph',['../classSVF_1_1Options.html#a153d42a480ef1763ad59fd7258ac3ac5',1,'SVF::Options']]],
20
- ['endtime',['endTime',['../classSVF_1_1PTAStat.html#a267ba4aac2e7ceb65f008f9486d3d9f7',1,'SVF::PTAStat']]],
20
+ ['endtime',['endTime',['../classSVF_1_1PTAStat.html#a267ba4aac2e7ceb65f008f9486d3d9f7',1,'SVF::PTAStat::endTime()'],['../classSVF_1_1SVFStat.html#a8b01f1564408b51f28c107454bf9068d',1,'SVF::SVFStat::endTime()']]],
21
21
  ['entry',['entry',['../classSVF_1_1CallPE.html#a88e420e259b8d7d34c9850ddde53d372',1,'SVF::CallPE']]],
22
22
  ['entryfuncset',['entryFuncSet',['../classSVF_1_1TCT.html#a140eaf9440ae9d52dbfb659967aa449a',1,'SVF::TCT']]],
23
23
  ['entryicfgedges',['entryICFGEdges',['../classSVF_1_1SVFLoop.html#a681d712db88d105c8a2f758de3d7e72e',1,'SVF::SVFLoop']]],
@@ -1,10 +1,10 @@
1
1
  var searchData=
2
2
  [
3
- ['generalnummap',['generalNumMap',['../classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6',1,'SVF::PTAStat']]],
4
- ['gep_5f0',['Gep_0',['../CFLGrammar_8txt.html#ace8178aa913f2a15d4b3f12778dfc6f1',1,'Gep_0(): CFLGrammar.txt'],['../PEGGrammar_8txt.html#ace8178aa913f2a15d4b3f12778dfc6f1',1,'Gep_0(): PEGGrammar.txt']]],
3
+ ['generalnummap',['generalNumMap',['../classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41',1,'SVF::SVFStat']]],
4
+ ['gep_5f0',['Gep_0',['../CFLGrammar_8txt.html#ace8178aa913f2a15d4b3f12778dfc6f1',1,'Gep_0(): CFLGrammar.txt'],['../PEGGrammar_8txt.html#aedc3573eed4e9af781034300bff32d69',1,'Gep_0(): PEGGrammar.txt']]],
5
5
  ['gep_5f1',['Gep_1',['../CFLGrammar_8txt.html#a92c75ced313339aea5e3e0c9f0726e5a',1,'CFLGrammar.txt']]],
6
6
  ['gep_5fi',['Gep_i',['../CFLGrammar_8txt.html#af184db68cfa45428afdc186dd62e32a3',1,'Gep_i(): CFLGrammar.txt'],['../PEGGrammar_8txt.html#af184db68cfa45428afdc186dd62e32a3',1,'Gep_i(): PEGGrammar.txt']]],
7
- ['gepbar_5f0',['Gepbar_0',['../CFLGrammar_8txt.html#a74e2e5aac99754fa661689592e053e27',1,'Gepbar_0(): CFLGrammar.txt'],['../PEGGrammar_8txt.html#a74e2e5aac99754fa661689592e053e27',1,'Gepbar_0(): PEGGrammar.txt']]],
7
+ ['gepbar_5f0',['Gepbar_0',['../CFLGrammar_8txt.html#ab2278962121baf68c9efd38abb522942',1,'Gepbar_0(): CFLGrammar.txt'],['../PEGGrammar_8txt.html#ab2278962121baf68c9efd38abb522942',1,'Gepbar_0(): PEGGrammar.txt']]],
8
8
  ['gepbar_5fi',['Gepbar_i',['../CFLGrammar_8txt.html#aa3f2c8659adb9738e29e47d3a607ff1e',1,'Gepbar_i(): CFLGrammar.txt'],['../PEGGrammar_8txt.html#aa3f2c8659adb9738e29e47d3a607ff1e',1,'Gepbar_i(): PEGGrammar.txt']]],
9
9
  ['gepinedges',['gepInEdges',['../classSVF_1_1ConstraintNode.html#a4d0113f2af3a61892acee1fb21f0b938',1,'SVF::ConstraintNode']]],
10
10
  ['gepnodenumindex',['gepNodeNumIndex',['../PAGBuilderFromFile_8cpp.html#a1af3947dbaf1ad4364bc4818f70ead40',1,'PAGBuilderFromFile.cpp']]],
@@ -46,7 +46,7 @@ var searchData=
46
46
  ['module',['module',['../classSVF_1_1DDAClient.html#a4ac68012099540beb87ee4700e824d64',1,'SVF::DDAClient']]],
47
47
  ['moduleflagvalue',['moduleFlagValue',['../namespaceSVF_1_1cppUtil_1_1ctir.html#a05c7c51164928786d70713094db7f3f3',1,'SVF::cppUtil::ctir']]],
48
48
  ['moduleidentifier',['moduleIdentifier',['../classSVF_1_1SVFModule.html#ac40e98040f949171279afec54bb03f71',1,'SVF::SVFModule']]],
49
- ['modulename',['moduleName',['../classSVF_1_1PTAStat.html#a194734855aa1c9e0ba891f1085d50d5d',1,'SVF::PTAStat']]],
49
+ ['modulename',['moduleName',['../classSVF_1_1PTAStat.html#a194734855aa1c9e0ba891f1085d50d5d',1,'SVF::PTAStat::moduleName()'],['../classSVF_1_1SVFStat.html#a3333e45303dcc9c3da00858628cdbbff',1,'SVF::SVFStat::moduleName()']]],
50
50
  ['modulepass',['modulePass',['../classSVF_1_1MTA.html#a3dd09dcdcf58ae8ee1745634cefbb8aa',1,'SVF::MTA']]],
51
51
  ['modules',['modules',['../classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd',1,'SVF::LLVMModuleSet']]],
52
52
  ['mr',['mr',['../classSVF_1_1MRVer.html#aafe30801672cd436216386ad6ff479e6',1,'SVF::MRVer::mr()'],['../classSVF_1_1MSSAMU.html#a51b89fa50c39d864cc9ca63508ea94f4',1,'SVF::MSSAMU::mr()'],['../classSVF_1_1MSSADEF.html#a01bc47f779d20fa8e3be182ceab12780',1,'SVF::MSSADEF::mr()']]],
@@ -98,7 +98,7 @@ var searchData=
98
98
  ['numofmhpld',['numOfMHPLd',['../classSVF_1_1MTAAnnotator.html#a29e0123620ab072fddc45331c6aa46e8',1,'SVF::MTAAnnotator']]],
99
99
  ['numofmhpqueries',['numOfMHPQueries',['../classSVF_1_1MHP.html#ab8bd382e0c70b0feb2a291ecc4043106',1,'SVF::MHP']]],
100
100
  ['numofmhpst',['numOfMHPSt',['../classSVF_1_1MTAAnnotator.html#a3a53e90b4f361d1298983bc89795b3d2',1,'SVF::MTAAnnotator']]],
101
- ['numofmssaphi',['numOfMSSAPhi',['../classSVF_1_1SVFGStat.html#a9fc87025af3b7e54442e78f46ebe0360',1,'SVF::SVFGStat::numOfMSSAPhi()'],['../classSVF_1_1MemSSAStat.html#a4b598cb1d06c4c0963787036862b1c3d',1,'SVF::MemSSAStat::NumOfMSSAPhi()']]],
101
+ ['numofmssaphi',['NumOfMSSAPhi',['../classSVF_1_1MemSSAStat.html#a4b598cb1d06c4c0963787036862b1c3d',1,'SVF::MemSSAStat::NumOfMSSAPhi()'],['../classSVF_1_1SVFGStat.html#a9fc87025af3b7e54442e78f46ebe0360',1,'SVF::SVFGStat::numOfMSSAPhi()']]],
102
102
  ['numofnewsvfgedges',['numOfNewSVFGEdges',['../classSVF_1_1MTASVFGBuilder.html#a019a4597074fdad6e51d936ed4ead0d9',1,'SVF::MTASVFGBuilder']]],
103
103
  ['numofnodes',['numOfNodes',['../classSVF_1_1ICFGStat.html#a8e71a19c266aacd7acb1fee6bb339788',1,'SVF::ICFGStat::numOfNodes()'],['../classSVF_1_1SVFGStat.html#ab499c24856a990dd4adb366107eb3302',1,'SVF::SVFGStat::numOfNodes()']]],
104
104
  ['numofnodesincycles',['NumOfNodesInCycles',['../classSVF_1_1PTAStat.html#aea3e95097b3b9d326bef0d36f17e51a5',1,'SVF::PTAStat']]],
@@ -155,6 +155,15 @@ public:
155
155
  /// Build Bidirectional graph by copying nodes and edges from any graph inherited from GenericGraph
156
156
  /// And transfer Load Store to copy edge and address edge to construct PEG style CFG
157
157
  CFLGraph* buildBiPEGgraph(ConstraintGraph *graph, Kind startKind, GrammarBase *grammar, SVFIR* pag);
158
+
159
+ private:
160
+ void connectVGep(CFLGraph *cflGraph, ConstraintGraph *graph, ConstraintNode *src, ConstraintNode *dst, u32_t level, SVFIR* pag);
161
+
162
+ /// Handle edge except for the GEP
163
+ void addBiCFLEdge(CFLGraph *cflGraph, ConstraintNode* src, ConstraintNode* dst, CFLGrammar::Kind label);
164
+
165
+ /// Add Bidirectional GEP edge with attribute
166
+ void addBiGepCFLEdge(CFLGraph *cflGraph, ConstraintNode* src, ConstraintNode* dst, CFLGrammar::Attribute attri);
158
167
  };
159
168
 
160
169
  }// SVF
@@ -1,7 +1,7 @@
1
1
  Start:
2
2
  V
3
3
  Terminal:
4
- Addr Copy Store Load Gep Vgep
4
+ Addr Copy Store Load Gep
5
5
  Productions:
6
6
  F -> epsilon;
7
7
  M -> Addr V Addrbar;
@@ -14,15 +14,11 @@ Productions:
14
14
  Fbar -> epsilon;
15
15
  Fbar -> Copybar Fbar;
16
16
  Fbar -> M Copybar Fbar;
17
- Gep_1 -> Gep_0 F Vgep;
18
- Gepbar_1 -> Vgepbar Fbar Gepbar_0;
19
- Gepbarpath -> Gepbar_0 Gepbar_0;
20
- Gepbarpath -> Gepbarpath Gepbar_0;
21
- Gep_3 -> Gep_0;
22
- Gepbar_3 -> Gepbar_0;
17
+ ArrayPath -> Gepbar_0 Gepbar_0;
18
+ ArrayPath -> ArrayPath Gepbar_0;
23
19
  Memcpy -> Addrbar V Addr;
24
20
  Memcpy -> Gep_i Memcpy Gepbar_i;
25
21
  Memcpy -> F Memcpy Fbar;
26
22
  V -> Gepbar_i Memcpy Gep_i;
27
23
  V -> Gep_i Memcpy Gepbar_i;
28
- V -> Gepbarpath V Gep_0;
24
+ V -> ArrayPath V Gep_0;
@@ -142,7 +142,7 @@ public:
142
142
  }
143
143
  }
144
144
 
145
- void printStat(string statname)
145
+ void printStat(std::string statname)
146
146
  {
147
147
 
148
148
  SVFUtil::outs() << "\n************ " << statname << " ***************\n";
@@ -302,6 +302,9 @@ public:
302
302
  // Does (F) reallocate a new object?
303
303
  bool is_realloc(const SVFFunction *F);
304
304
 
305
+ // Does (F) have the same return type(pointer or nonpointer) and same number of arguments
306
+ bool is_sameSignature(const SVFFunction *F);
307
+
305
308
  // Should (F) be considered "external" (either not defined in the program
306
309
  // or a user-defined version of a known alloc or no-op)?
307
310
  bool is_ext(const SVFFunction *F);