svf-tools 1.0.890 → 1.0.892

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 (343) hide show
  1. package/SVF-doxygen/html/AbstractExecution_8cpp_source.html +451 -450
  2. package/SVF-doxygen/html/AbstractExecution_8h_source.html +11 -11
  3. package/SVF-doxygen/html/AccessPath_8cpp_source.html +150 -147
  4. package/SVF-doxygen/html/AccessPath_8h_source.html +6 -6
  5. package/SVF-doxygen/html/Andersen_8cpp_source.html +1 -1
  6. package/SVF-doxygen/html/BufOverflowChecker_8cpp_source.html +426 -425
  7. package/SVF-doxygen/html/BufOverflowChecker_8h_source.html +2 -2
  8. package/SVF-doxygen/html/CFLAlias_8cpp_source.html +1 -1
  9. package/SVF-doxygen/html/ConsG_8cpp_source.html +1 -1
  10. package/SVF-doxygen/html/CppUtil_8cpp_source.html +4 -4
  11. package/SVF-doxygen/html/CxtStmt_8h_source.html +1 -1
  12. package/SVF-doxygen/html/DCHG_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/DDAClient_8cpp_source.html +1 -1
  14. package/SVF-doxygen/html/ICFGBuilder_8cpp_source.html +1 -1
  15. package/SVF-doxygen/html/ICFGSimplification_8cpp_source.html +43 -44
  16. package/SVF-doxygen/html/ICFGWTO_8h_source.html +4 -4
  17. package/SVF-doxygen/html/ICFG_8cpp_source.html +1 -1
  18. package/SVF-doxygen/html/LLVMModule_8cpp_source.html +556 -556
  19. package/SVF-doxygen/html/LLVMModule_8h_source.html +15 -15
  20. package/SVF-doxygen/html/LLVMUtil_8cpp_source.html +552 -525
  21. package/SVF-doxygen/html/LLVMUtil_8h.html +2 -0
  22. package/SVF-doxygen/html/LLVMUtil_8h_source.html +55 -52
  23. package/SVF-doxygen/html/LockResultValidator_8cpp_source.html +1 -1
  24. package/SVF-doxygen/html/MHP_8cpp_source.html +1 -1
  25. package/SVF-doxygen/html/MTAAnnotator_8cpp_source.html +1 -1
  26. package/SVF-doxygen/html/MTAResultValidator_8cpp_source.html +1 -1
  27. package/SVF-doxygen/html/MemSSA_8cpp_source.html +1 -1
  28. package/SVF-doxygen/html/ObjTypeInference_8cpp.html +1 -1
  29. package/SVF-doxygen/html/ObjTypeInference_8cpp_source.html +3 -3
  30. package/SVF-doxygen/html/PointerAnalysis_8cpp_source.html +1 -1
  31. package/SVF-doxygen/html/SVFIR2ItvExeState_8cpp_source.html +828 -827
  32. package/SVF-doxygen/html/SVFIR2ItvExeState_8h_source.html +20 -20
  33. package/SVF-doxygen/html/SVFIRBuilder_8cpp_source.html +7 -7
  34. package/SVF-doxygen/html/SVFIRBuilder_8h_source.html +1 -1
  35. package/SVF-doxygen/html/SVFIRExtAPI_8cpp_source.html +2 -2
  36. package/SVF-doxygen/html/SVFStatements_8cpp_source.html +1 -1
  37. package/SVF-doxygen/html/SVFStatements_8h_source.html +1 -1
  38. package/SVF-doxygen/html/SVFValue_8cpp_source.html +1 -1
  39. package/SVF-doxygen/html/SVFValue_8h_source.html +1 -1
  40. package/SVF-doxygen/html/SVFVariables_8cpp_source.html +1 -1
  41. package/SVF-doxygen/html/Steensgaard_8cpp_source.html +1 -1
  42. package/SVF-doxygen/html/SymbolTableBuilder_8cpp_source.html +9 -9
  43. package/SVF-doxygen/html/SymbolTableInfo_8cpp_source.html +1 -1
  44. package/SVF-doxygen/html/WTO_8h.html +1 -0
  45. package/SVF-doxygen/html/WTO_8h_source.html +812 -811
  46. package/SVF-doxygen/html/ae_8cpp.html +46 -47
  47. package/SVF-doxygen/html/ae_8cpp_source.html +46 -47
  48. package/SVF-doxygen/html/classSVF_1_1AEAPI.html +432 -431
  49. package/SVF-doxygen/html/classSVF_1_1AbstractExecution.html +22 -22
  50. package/SVF-doxygen/html/classSVF_1_1AccessPath.html +136 -133
  51. package/SVF-doxygen/html/classSVF_1_1ActualINSVFGNode.html +1 -1
  52. package/SVF-doxygen/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
  53. package/SVF-doxygen/html/classSVF_1_1AddrStmt.html +1 -1
  54. package/SVF-doxygen/html/classSVF_1_1AliasDDAClient.html +1 -1
  55. package/SVF-doxygen/html/classSVF_1_1Andersen.html +1 -1
  56. package/SVF-doxygen/html/classSVF_1_1BinaryOPStmt.html +1 -1
  57. package/SVF-doxygen/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
  58. package/SVF-doxygen/html/classSVF_1_1BranchStmt.html +1 -1
  59. package/SVF-doxygen/html/classSVF_1_1BufOverflowCheckerAPI.html +82 -81
  60. package/SVF-doxygen/html/classSVF_1_1CFLAlias.html +1 -1
  61. package/SVF-doxygen/html/classSVF_1_1CallCFGEdge.html +1 -1
  62. package/SVF-doxygen/html/classSVF_1_1CallPE.html +1 -1
  63. package/SVF-doxygen/html/classSVF_1_1CmpStmt.html +1 -1
  64. package/SVF-doxygen/html/classSVF_1_1CmpVFGNode.html +1 -1
  65. package/SVF-doxygen/html/classSVF_1_1CopyStmt.html +1 -1
  66. package/SVF-doxygen/html/classSVF_1_1CxtStmt.html +1 -1
  67. package/SVF-doxygen/html/classSVF_1_1CxtThread.html +1 -1
  68. package/SVF-doxygen/html/classSVF_1_1CxtThreadStmt.html +1 -1
  69. package/SVF-doxygen/html/classSVF_1_1DCHGraph.html +1 -1
  70. package/SVF-doxygen/html/classSVF_1_1DoubleFreeChecker.html +1 -1
  71. package/SVF-doxygen/html/classSVF_1_1FIObjVar.html +1 -1
  72. package/SVF-doxygen/html/classSVF_1_1ForkJoinAnalysis.html +1 -1
  73. package/SVF-doxygen/html/classSVF_1_1GepObjVar.html +1 -1
  74. package/SVF-doxygen/html/classSVF_1_1GepStmt.html +2 -2
  75. package/SVF-doxygen/html/classSVF_1_1GepValVar.html +1 -1
  76. package/SVF-doxygen/html/classSVF_1_1ICFG.html +1 -1
  77. package/SVF-doxygen/html/classSVF_1_1ICFGBuilder.html +1 -1
  78. package/SVF-doxygen/html/classSVF_1_1ICFGSimplification.html +43 -44
  79. package/SVF-doxygen/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
  80. package/SVF-doxygen/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  81. package/SVF-doxygen/html/classSVF_1_1IntraCFGEdge.html +1 -1
  82. package/SVF-doxygen/html/classSVF_1_1IntraICFGNode.html +1 -1
  83. package/SVF-doxygen/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
  84. package/SVF-doxygen/html/classSVF_1_1LLVMModuleSet.html +538 -538
  85. package/SVF-doxygen/html/classSVF_1_1LeakChecker.html +1 -1
  86. package/SVF-doxygen/html/classSVF_1_1LoadStmt.html +1 -1
  87. package/SVF-doxygen/html/classSVF_1_1LockResultValidator.html +1 -1
  88. package/SVF-doxygen/html/classSVF_1_1MHP.html +1 -1
  89. package/SVF-doxygen/html/classSVF_1_1MTAAnnotator.html +1 -1
  90. package/SVF-doxygen/html/classSVF_1_1MTAResultValidator.html +1 -1
  91. package/SVF-doxygen/html/classSVF_1_1MemObj.html +1 -1
  92. package/SVF-doxygen/html/classSVF_1_1MemSSA.html +1 -1
  93. package/SVF-doxygen/html/classSVF_1_1ObjTypeInference.html +3 -3
  94. package/SVF-doxygen/html/classSVF_1_1ObjVar.html +1 -1
  95. package/SVF-doxygen/html/classSVF_1_1PHIVFGNode.html +1 -1
  96. package/SVF-doxygen/html/classSVF_1_1PhiStmt.html +1 -1
  97. package/SVF-doxygen/html/classSVF_1_1PointerAnalysis.html +1 -1
  98. package/SVF-doxygen/html/classSVF_1_1RaceResultValidator.html +1 -1
  99. package/SVF-doxygen/html/classSVF_1_1RetCFGEdge.html +1 -1
  100. package/SVF-doxygen/html/classSVF_1_1RetPE.html +1 -1
  101. package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState.html +792 -791
  102. package/SVF-doxygen/html/classSVF_1_1SVFIRBuilder.html +8 -8
  103. package/SVF-doxygen/html/classSVF_1_1SVFValue.html +23 -23
  104. package/SVF-doxygen/html/classSVF_1_1SelectStmt.html +1 -1
  105. package/SVF-doxygen/html/classSVF_1_1Steensgaard.html +1 -1
  106. package/SVF-doxygen/html/classSVF_1_1StoreStmt.html +1 -1
  107. package/SVF-doxygen/html/classSVF_1_1SymbolTableBuilder.html +8 -8
  108. package/SVF-doxygen/html/classSVF_1_1TCT.html +1 -1
  109. package/SVF-doxygen/html/classSVF_1_1TDForkPE.html +1 -1
  110. package/SVF-doxygen/html/classSVF_1_1TDJoinPE.html +1 -1
  111. package/SVF-doxygen/html/classSVF_1_1UnaryOPStmt.html +1 -1
  112. package/SVF-doxygen/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
  113. package/SVF-doxygen/html/classSVF_1_1ValVar.html +1 -1
  114. package/SVF-doxygen/html/classSVF_1_1WTO.html +253 -253
  115. package/SVF-doxygen/html/classSVF_1_1WTOComponent.html +21 -21
  116. package/SVF-doxygen/html/classSVF_1_1WTOComponentVisitor.html +3 -3
  117. package/SVF-doxygen/html/classSVF_1_1WTOCycle.html +61 -61
  118. package/SVF-doxygen/html/classSVF_1_1WTOCycleDepth.html +115 -115
  119. package/SVF-doxygen/html/classSVF_1_1WTONode.html +31 -31
  120. package/SVF-doxygen/html/classSVF_1_1WTO_1_1WTOCycleDepthBuilder.html +31 -31
  121. package/SVF-doxygen/html/globals_vars.html +3 -3
  122. package/SVF-doxygen/html/globals_z.html +3 -3
  123. package/SVF-doxygen/html/namespaceSVF_1_1LLVMUtil.html +529 -483
  124. package/SVF-doxygen/html/namespaceSVF_1_1cppUtil.html +2 -2
  125. package/SVF-doxygen/html/namespacemembers_func_r.html +3 -0
  126. package/SVF-doxygen/html/namespacemembers_r.html +3 -0
  127. package/SVF-doxygen/html/search/all_11.js +54 -53
  128. package/SVF-doxygen/html/search/all_12.js +570 -570
  129. package/SVF-doxygen/html/search/all_13.js +207 -207
  130. package/SVF-doxygen/html/search/all_14.js +70 -70
  131. package/SVF-doxygen/html/search/all_15.js +176 -176
  132. package/SVF-doxygen/html/search/all_16.js +77 -77
  133. package/SVF-doxygen/html/search/all_17.js +1 -1
  134. package/SVF-doxygen/html/search/all_18.js +1 -1
  135. package/SVF-doxygen/html/search/all_19.js +26 -26
  136. package/SVF-doxygen/html/search/all_1a.js +180 -180
  137. package/SVF-doxygen/html/search/classes_0.js +29 -29
  138. package/SVF-doxygen/html/search/classes_1.js +12 -12
  139. package/SVF-doxygen/html/search/classes_10.js +74 -74
  140. package/SVF-doxygen/html/search/classes_11.js +14 -14
  141. package/SVF-doxygen/html/search/classes_12.js +2 -2
  142. package/SVF-doxygen/html/search/classes_13.js +10 -10
  143. package/SVF-doxygen/html/search/classes_14.js +19 -19
  144. package/SVF-doxygen/html/search/classes_15.js +1 -1
  145. package/SVF-doxygen/html/search/classes_2.js +73 -73
  146. package/SVF-doxygen/html/search/classes_3.js +35 -35
  147. package/SVF-doxygen/html/search/classes_4.js +8 -8
  148. package/SVF-doxygen/html/search/classes_5.js +28 -28
  149. package/SVF-doxygen/html/search/classes_6.js +98 -98
  150. package/SVF-doxygen/html/search/classes_7.js +38 -38
  151. package/SVF-doxygen/html/search/classes_8.js +59 -59
  152. package/SVF-doxygen/html/search/classes_9.js +1 -1
  153. package/SVF-doxygen/html/search/classes_a.js +12 -12
  154. package/SVF-doxygen/html/search/classes_b.js +29 -29
  155. package/SVF-doxygen/html/search/classes_c.js +6 -6
  156. package/SVF-doxygen/html/search/classes_d.js +19 -19
  157. package/SVF-doxygen/html/search/classes_e.js +36 -36
  158. package/SVF-doxygen/html/search/classes_f.js +25 -25
  159. package/SVF-doxygen/html/search/defines_0.js +3 -3
  160. package/SVF-doxygen/html/search/defines_1.js +3 -3
  161. package/SVF-doxygen/html/search/defines_10.js +2 -2
  162. package/SVF-doxygen/html/search/defines_2.js +30 -30
  163. package/SVF-doxygen/html/search/defines_3.js +20 -20
  164. package/SVF-doxygen/html/search/defines_4.js +3 -3
  165. package/SVF-doxygen/html/search/defines_5.js +4 -4
  166. package/SVF-doxygen/html/search/defines_6.js +2 -2
  167. package/SVF-doxygen/html/search/defines_7.js +5 -5
  168. package/SVF-doxygen/html/search/defines_8.js +11 -11
  169. package/SVF-doxygen/html/search/defines_9.js +9 -9
  170. package/SVF-doxygen/html/search/defines_a.js +2 -2
  171. package/SVF-doxygen/html/search/defines_b.js +1 -1
  172. package/SVF-doxygen/html/search/defines_c.js +4 -4
  173. package/SVF-doxygen/html/search/defines_d.js +2 -2
  174. package/SVF-doxygen/html/search/defines_e.js +8 -8
  175. package/SVF-doxygen/html/search/defines_f.js +4 -4
  176. package/SVF-doxygen/html/search/enums_0.js +4 -4
  177. package/SVF-doxygen/html/search/enums_1.js +2 -2
  178. package/SVF-doxygen/html/search/enums_10.js +1 -1
  179. package/SVF-doxygen/html/search/enums_11.js +1 -1
  180. package/SVF-doxygen/html/search/enums_2.js +8 -8
  181. package/SVF-doxygen/html/search/enums_3.js +1 -1
  182. package/SVF-doxygen/html/search/enums_4.js +4 -4
  183. package/SVF-doxygen/html/search/enums_5.js +1 -1
  184. package/SVF-doxygen/html/search/enums_6.js +2 -2
  185. package/SVF-doxygen/html/search/enums_7.js +2 -2
  186. package/SVF-doxygen/html/search/enums_8.js +4 -4
  187. package/SVF-doxygen/html/search/enums_9.js +1 -1
  188. package/SVF-doxygen/html/search/enums_a.js +1 -1
  189. package/SVF-doxygen/html/search/enums_b.js +7 -7
  190. package/SVF-doxygen/html/search/enums_c.js +1 -1
  191. package/SVF-doxygen/html/search/enums_d.js +4 -4
  192. package/SVF-doxygen/html/search/enums_e.js +2 -2
  193. package/SVF-doxygen/html/search/enums_f.js +4 -4
  194. package/SVF-doxygen/html/search/enumvalues_0.js +15 -15
  195. package/SVF-doxygen/html/search/enumvalues_1.js +15 -15
  196. package/SVF-doxygen/html/search/enumvalues_10.js +35 -35
  197. package/SVF-doxygen/html/search/enumvalues_11.js +4 -4
  198. package/SVF-doxygen/html/search/enumvalues_12.js +10 -10
  199. package/SVF-doxygen/html/search/enumvalues_13.js +1 -1
  200. package/SVF-doxygen/html/search/enumvalues_14.js +1 -1
  201. package/SVF-doxygen/html/search/enumvalues_15.js +3 -3
  202. package/SVF-doxygen/html/search/enumvalues_2.js +36 -36
  203. package/SVF-doxygen/html/search/enumvalues_3.js +13 -13
  204. package/SVF-doxygen/html/search/enumvalues_4.js +2 -2
  205. package/SVF-doxygen/html/search/enumvalues_5.js +47 -47
  206. package/SVF-doxygen/html/search/enumvalues_6.js +6 -6
  207. package/SVF-doxygen/html/search/enumvalues_7.js +8 -8
  208. package/SVF-doxygen/html/search/enumvalues_8.js +23 -23
  209. package/SVF-doxygen/html/search/enumvalues_9.js +6 -6
  210. package/SVF-doxygen/html/search/enumvalues_a.js +17 -17
  211. package/SVF-doxygen/html/search/enumvalues_b.js +11 -11
  212. package/SVF-doxygen/html/search/enumvalues_c.js +5 -5
  213. package/SVF-doxygen/html/search/enumvalues_d.js +18 -18
  214. package/SVF-doxygen/html/search/enumvalues_e.js +9 -9
  215. package/SVF-doxygen/html/search/enumvalues_f.js +47 -47
  216. package/SVF-doxygen/html/search/files_0.js +16 -16
  217. package/SVF-doxygen/html/search/files_1.js +9 -9
  218. package/SVF-doxygen/html/search/files_10.js +8 -8
  219. package/SVF-doxygen/html/search/files_11.js +8 -8
  220. package/SVF-doxygen/html/search/files_12.js +2 -2
  221. package/SVF-doxygen/html/search/files_2.js +53 -53
  222. package/SVF-doxygen/html/search/files_3.js +14 -14
  223. package/SVF-doxygen/html/search/files_4.js +5 -5
  224. package/SVF-doxygen/html/search/files_5.js +13 -13
  225. package/SVF-doxygen/html/search/files_6.js +10 -10
  226. package/SVF-doxygen/html/search/files_7.js +17 -17
  227. package/SVF-doxygen/html/search/files_8.js +13 -13
  228. package/SVF-doxygen/html/search/files_9.js +18 -18
  229. package/SVF-doxygen/html/search/files_a.js +3 -3
  230. package/SVF-doxygen/html/search/files_b.js +4 -4
  231. package/SVF-doxygen/html/search/files_c.js +20 -20
  232. package/SVF-doxygen/html/search/files_d.js +4 -4
  233. package/SVF-doxygen/html/search/files_e.js +62 -62
  234. package/SVF-doxygen/html/search/files_f.js +8 -8
  235. package/SVF-doxygen/html/search/functions_0.js +13 -13
  236. package/SVF-doxygen/html/search/functions_1.js +369 -369
  237. package/SVF-doxygen/html/search/functions_10.js +140 -140
  238. package/SVF-doxygen/html/search/functions_11.js +140 -139
  239. package/SVF-doxygen/html/search/functions_12.js +299 -299
  240. package/SVF-doxygen/html/search/functions_13.js +73 -73
  241. package/SVF-doxygen/html/search/functions_14.js +41 -41
  242. package/SVF-doxygen/html/search/functions_15.js +72 -72
  243. package/SVF-doxygen/html/search/functions_16.js +38 -38
  244. package/SVF-doxygen/html/search/functions_17.js +3 -3
  245. package/SVF-doxygen/html/search/functions_18.js +180 -180
  246. package/SVF-doxygen/html/search/functions_2.js +95 -95
  247. package/SVF-doxygen/html/search/functions_3.js +261 -261
  248. package/SVF-doxygen/html/search/functions_4.js +84 -84
  249. package/SVF-doxygen/html/search/functions_5.js +57 -57
  250. package/SVF-doxygen/html/search/functions_6.js +65 -65
  251. package/SVF-doxygen/html/search/functions_7.js +863 -863
  252. package/SVF-doxygen/html/search/functions_8.js +162 -162
  253. package/SVF-doxygen/html/search/functions_9.js +439 -439
  254. package/SVF-doxygen/html/search/functions_a.js +30 -30
  255. package/SVF-doxygen/html/search/functions_b.js +2 -2
  256. package/SVF-doxygen/html/search/functions_c.js +25 -25
  257. package/SVF-doxygen/html/search/functions_d.js +82 -82
  258. package/SVF-doxygen/html/search/functions_e.js +36 -36
  259. package/SVF-doxygen/html/search/functions_f.js +58 -58
  260. package/SVF-doxygen/html/search/namespaces_0.js +1 -1
  261. package/SVF-doxygen/html/search/namespaces_1.js +7 -7
  262. package/SVF-doxygen/html/search/related_0.js +4 -4
  263. package/SVF-doxygen/html/search/related_1.js +2 -2
  264. package/SVF-doxygen/html/search/related_2.js +2 -2
  265. package/SVF-doxygen/html/search/related_3.js +2 -2
  266. package/SVF-doxygen/html/search/related_4.js +2 -2
  267. package/SVF-doxygen/html/search/related_5.js +1 -1
  268. package/SVF-doxygen/html/search/related_6.js +2 -2
  269. package/SVF-doxygen/html/search/related_7.js +5 -5
  270. package/SVF-doxygen/html/search/related_8.js +2 -2
  271. package/SVF-doxygen/html/search/related_9.js +4 -4
  272. package/SVF-doxygen/html/search/related_a.js +19 -19
  273. package/SVF-doxygen/html/search/related_b.js +4 -4
  274. package/SVF-doxygen/html/search/related_c.js +2 -2
  275. package/SVF-doxygen/html/search/related_d.js +12 -12
  276. package/SVF-doxygen/html/search/related_e.js +2 -2
  277. package/SVF-doxygen/html/search/related_f.js +2 -2
  278. package/SVF-doxygen/html/search/typedefs_0.js +19 -19
  279. package/SVF-doxygen/html/search/typedefs_1.js +27 -27
  280. package/SVF-doxygen/html/search/typedefs_10.js +63 -63
  281. package/SVF-doxygen/html/search/typedefs_11.js +13 -13
  282. package/SVF-doxygen/html/search/typedefs_12.js +11 -11
  283. package/SVF-doxygen/html/search/typedefs_13.js +40 -40
  284. package/SVF-doxygen/html/search/typedefs_14.js +11 -11
  285. package/SVF-doxygen/html/search/typedefs_2.js +125 -125
  286. package/SVF-doxygen/html/search/typedefs_3.js +39 -39
  287. package/SVF-doxygen/html/search/typedefs_4.js +17 -17
  288. package/SVF-doxygen/html/search/typedefs_5.js +42 -42
  289. package/SVF-doxygen/html/search/typedefs_6.js +54 -54
  290. package/SVF-doxygen/html/search/typedefs_7.js +47 -47
  291. package/SVF-doxygen/html/search/typedefs_8.js +1 -1
  292. package/SVF-doxygen/html/search/typedefs_9.js +6 -6
  293. package/SVF-doxygen/html/search/typedefs_a.js +29 -29
  294. package/SVF-doxygen/html/search/typedefs_b.js +29 -29
  295. package/SVF-doxygen/html/search/typedefs_c.js +41 -41
  296. package/SVF-doxygen/html/search/typedefs_d.js +15 -15
  297. package/SVF-doxygen/html/search/typedefs_e.js +52 -52
  298. package/SVF-doxygen/html/search/typedefs_f.js +14 -14
  299. package/SVF-doxygen/html/search/variables_0.js +177 -177
  300. package/SVF-doxygen/html/search/variables_1.js +76 -76
  301. package/SVF-doxygen/html/search/variables_10.js +98 -98
  302. package/SVF-doxygen/html/search/variables_11.js +46 -46
  303. package/SVF-doxygen/html/search/variables_12.js +93 -93
  304. package/SVF-doxygen/html/search/variables_13.js +76 -76
  305. package/SVF-doxygen/html/search/variables_14.js +14 -14
  306. package/SVF-doxygen/html/search/variables_15.js +49 -49
  307. package/SVF-doxygen/html/search/variables_16.js +11 -11
  308. package/SVF-doxygen/html/search/variables_17.js +1 -1
  309. package/SVF-doxygen/html/search/variables_18.js +17 -17
  310. package/SVF-doxygen/html/search/variables_2.js +41 -41
  311. package/SVF-doxygen/html/search/variables_3.js +142 -142
  312. package/SVF-doxygen/html/search/variables_4.js +51 -51
  313. package/SVF-doxygen/html/search/variables_5.js +39 -39
  314. package/SVF-doxygen/html/search/variables_6.js +66 -66
  315. package/SVF-doxygen/html/search/variables_7.js +34 -34
  316. package/SVF-doxygen/html/search/variables_8.js +8 -8
  317. package/SVF-doxygen/html/search/variables_9.js +79 -79
  318. package/SVF-doxygen/html/search/variables_a.js +4 -4
  319. package/SVF-doxygen/html/search/variables_b.js +10 -10
  320. package/SVF-doxygen/html/search/variables_c.js +45 -45
  321. package/SVF-doxygen/html/search/variables_d.js +57 -57
  322. package/SVF-doxygen/html/search/variables_e.js +123 -123
  323. package/SVF-doxygen/html/search/variables_f.js +31 -31
  324. package/SVF-doxygen/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  325. package/SVF-doxygen/html/structSVF_1_1has__edgetype.html +1 -1
  326. package/SVF-doxygen/html/structSVF_1_1has__edgetype_3_01T_00_01std_1_1void__t_3_01typename_01T_1_1EdgeType_01_4_01_4.html +1 -1
  327. package/SVF-doxygen/html/structSVF_1_1has__nodetype.html +1 -1
  328. package/SVF-doxygen/html/structSVF_1_1has__nodetype_3_01T_00_01std_1_1void__t_3_01typename_01T_1_1NodeType_01_4_01_4.html +1 -1
  329. package/SVF-doxygen/html/svf-ex_8cpp.html +12 -12
  330. package/SVF-doxygen/html/svf-ex_8cpp_source.html +12 -12
  331. package/SVF-doxygen/html/svf_2include_2MTA_2MTAResultValidator_8h_source.html +1 -1
  332. package/package.json +1 -1
  333. package/svf/include/Graphs/WTO.h +1 -0
  334. package/svf/lib/AE/Svfexe/AbstractExecution.cpp +1 -0
  335. package/svf/lib/AE/Svfexe/BufOverflowChecker.cpp +1 -0
  336. package/svf/lib/AE/Svfexe/ICFGSimplification.cpp +1 -2
  337. package/svf/lib/AE/Svfexe/SVFIR2ItvExeState.cpp +1 -0
  338. package/svf/lib/MemoryModel/AccessPath.cpp +4 -1
  339. package/svf-llvm/include/SVF-LLVM/LLVMUtil.h +2 -0
  340. package/svf-llvm/lib/LLVMModule.cpp +3 -4
  341. package/svf-llvm/lib/LLVMUtil.cpp +29 -2
  342. package/svf-llvm/lib/SVFIRBuilder.cpp +1 -1
  343. package/svf-llvm/tools/AE/ae.cpp +1 -2
@@ -680,7 +680,7 @@ Additional Inherited Members</h2></td></tr>
680
680
  <div class="ttc" id="aclassSVF_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#l00180">GenericGraph.h:180</a></div></div>
681
681
  <div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
682
682
  <div class="ttc" id="aclassSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6">SVF::SVFVar::FIObjNode</a></div><div class="ttdeci">@ FIObjNode</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00071">SVFVariables.h:71</a></div></div>
683
- <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00904">LLVMUtil.cpp:904</a></div></div>
683
+ <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00931">LLVMUtil.cpp:931</a></div></div>
684
684
  <div class="ttc" id="aclassSVF_1_1SVFVar_html_aa72b0f34a0b646751a7b2003d6b9f11e"><div class="ttname"><a href="classSVF_1_1SVFVar.html#aa72b0f34a0b646751a7b2003d6b9f11e">SVF::SVFVar::value</a></div><div class="ttdeci">const SVFValue * value</div><div class="ttdoc">value of this SVFIR node</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00078">SVFVariables.h:78</a></div></div>
685
685
  <div class="ttc" id="aclassSVF_1_1ObjVar_html_a0678067a37d44e8655236454aee9eee0"><div class="ttname"><a href="classSVF_1_1ObjVar.html#a0678067a37d44e8655236454aee9eee0">SVF::ObjVar::ObjVar</a></div><div class="ttdeci">ObjVar(NodeID i, PNODEK ty=ObjNode)</div><div class="ttdoc">Constructor to create an empty ObjVar (for SVFIRReader/deserialization)</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00323">SVFVariables.h:323</a></div></div>
686
686
  <!-- start footer part -->
@@ -2622,7 +2622,7 @@ Private Attributes</h2></td></tr>
2622
2622
  <div class="ttc" id="aclassSVF_1_1TCT_html_ab4bc72ca330b315df06f2d4d2c1a7b4f"><div class="ttname"><a href="classSVF_1_1TCT.html#ab4bc72ca330b315df06f2d4d2c1a7b4f">SVF::TCT::getCxtOfCxtThread</a></div><div class="ttdeci">const CallStrCxt &amp; getCxtOfCxtThread(const CxtThread &amp;ct) const</div><div class="ttdoc">get the context of a thread at its spawning site (fork site)</div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00342">TCT.h:342</a></div></div>
2623
2623
  <div class="ttc" id="aclassSVF_1_1ForkJoinAnalysis_html_ac95b1600aa524c3e607eebcf9d50df0e"><div class="ttname"><a href="classSVF_1_1ForkJoinAnalysis.html#ac95b1600aa524c3e607eebcf9d50df0e">SVF::ForkJoinAnalysis::matchCxt</a></div><div class="ttdeci">bool matchCxt(CallStrCxt &amp;cxt, const SVFInstruction *call, const SVFFunction *callee)</div><div class="ttdoc">Match context.</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00479">MHP.h:479</a></div></div>
2624
2624
  <div class="ttc" id="aclassSVF_1_1TCT_html_a7b4ad0b052e1f8b6869733eef15f4e4d"><div class="ttname"><a href="classSVF_1_1TCT.html#a7b4ad0b052e1f8b6869733eef15f4e4d">SVF::TCT::getTCTNode</a></div><div class="ttdeci">TCTNode * getTCTNode(NodeID id) const</div><div class="ttdoc">Get TCT node.</div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00192">TCT.h:192</a></div></div>
2625
- <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00904">LLVMUtil.cpp:904</a></div></div>
2625
+ <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00931">LLVMUtil.cpp:931</a></div></div>
2626
2626
  <div class="ttc" id="aclassSVF_1_1ForkJoinAnalysis_html_a2be89ac78712da78c215a33b3157ecd1"><div class="ttname"><a href="classSVF_1_1ForkJoinAnalysis.html#a2be89ac78712da78c215a33b3157ecd1">SVF::ForkJoinAnalysis::addSymmetricLoopJoin</a></div><div class="ttdeci">void addSymmetricLoopJoin(const CxtStmt &amp;cs, LoopBBs &amp;lp)</div><div class="ttdoc">Add inloop join.</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00547">MHP.h:547</a></div></div>
2627
2627
  <div class="ttc" id="aclassSVF_1_1TCT_html_a4faeacaa7aa38cf5b61404278b93a91f"><div class="ttname"><a href="classSVF_1_1TCT.html#a4faeacaa7aa38cf5b61404278b93a91f">SVF::TCT::getJoinLoop</a></div><div class="ttdeci">LoopBBs &amp; getJoinLoop(const SVFInstruction *join)</div><div class="ttdoc">Get loop for join site.</div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00358">TCT.h:358</a></div></div>
2628
2628
  <div class="ttc" id="aclassSVF_1_1ForkJoinAnalysis_html_acccf53d174cac3275da0d79c89a73916"><div class="ttname"><a href="classSVF_1_1ForkJoinAnalysis.html#acccf53d174cac3275da0d79c89a73916">SVF::ForkJoinAnalysis::cxtStmtList</a></div><div class="ttdeci">CxtStmtWorkList cxtStmtList</div><div class="ttdoc">context-sensitive statement worklist</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00553">MHP.h:553</a></div></div>
@@ -885,7 +885,7 @@ Additional Inherited Members</h2></td></tr>
885
885
  <div class="ttc" id="aclassSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffaf3364b22f497146f06d1f4175a839f4f"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaf3364b22f497146f06d1f4175a839f4f">SVF::SVFVar::GepObjNode</a></div><div class="ttdeci">@ GepObjNode</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00070">SVFVariables.h:70</a></div></div>
886
886
  <div class="ttc" id="aclassSVF_1_1MemObj_html_a2f70e9c830b18f25c56b530722f106c4"><div class="ttname"><a href="classSVF_1_1MemObj.html#a2f70e9c830b18f25c56b530722f106c4">SVF::MemObj::getValue</a></div><div class="ttdeci">const SVFValue * getValue() const</div><div class="ttdoc">Get the reference value to this object.</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00406">SymbolTableInfo.h:406</a></div></div>
887
887
  <div class="ttc" id="aclassSVF_1_1SymbolTableInfo_html_a806ae865d29c4b05b69c499284758c6f"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a806ae865d29c4b05b69c499284758c6f">SVF::SymbolTableInfo::getFlatternedElemType</a></div><div class="ttdeci">const SVFType * getFlatternedElemType(const SVFType *baseType, u32_t flatten_idx)</div><div class="ttdoc">Return the type of a flattened element given a flattened index.</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00211">SymbolTableInfo.cpp:211</a></div></div>
888
- <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00904">LLVMUtil.cpp:904</a></div></div>
888
+ <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00931">LLVMUtil.cpp:931</a></div></div>
889
889
  <div class="ttc" id="aclassSVF_1_1SVFVar_html_aa72b0f34a0b646751a7b2003d6b9f11e"><div class="ttname"><a href="classSVF_1_1SVFVar.html#aa72b0f34a0b646751a7b2003d6b9f11e">SVF::SVFVar::value</a></div><div class="ttdeci">const SVFValue * value</div><div class="ttdoc">value of this SVFIR node</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00078">SVFVariables.h:78</a></div></div>
890
890
  <div class="ttc" id="aclassSVF_1_1ObjVar_html_a0678067a37d44e8655236454aee9eee0"><div class="ttname"><a href="classSVF_1_1ObjVar.html#a0678067a37d44e8655236454aee9eee0">SVF::ObjVar::ObjVar</a></div><div class="ttdeci">ObjVar(NodeID i, PNODEK ty=ObjNode)</div><div class="ttdoc">Constructor to create an empty ObjVar (for SVFIRReader/deserialization)</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00323">SVFVariables.h:323</a></div></div>
891
891
  <div class="ttc" id="aclassSVF_1_1GepObjVar_html_afb30992a958c591b6afcacdf35c552b5"><div class="ttname"><a href="classSVF_1_1GepObjVar.html#afb30992a958c591b6afcacdf35c552b5">SVF::GepObjVar::apOffset</a></div><div class="ttdeci">APOffset apOffset</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00454">SVFVariables.h:454</a></div></div>
@@ -915,11 +915,11 @@ Additional Inherited Members</h2></td></tr>
915
915
  <div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
916
916
  <div class="ttc" id="aclassSVF_1_1GepStmt_html_a6c74f234a6b40bc5292bb14874c2e600"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a6c74f234a6b40bc5292bb14874c2e600">SVF::GepStmt::getAccessPath</a></div><div class="ttdeci">const AccessPath &amp; getAccessPath() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00504">SVFStatements.h:504</a></div></div>
917
917
  <div class="ttc" id="aclassSVF_1_1AssignStmt_html_abc65520cc2b9608c97374829eb475c57"><div class="ttname"><a href="classSVF_1_1AssignStmt.html#abc65520cc2b9608c97374829eb475c57">SVF::AssignStmt::AssignStmt</a></div><div class="ttdeci">AssignStmt()</div><div class="ttdoc">place holder</div></div>
918
- <div class="ttc" id="aclassSVF_1_1AccessPath_html_ae746362c42da05a641ae062658e40651"><div class="ttname"><a href="classSVF_1_1AccessPath.html#ae746362c42da05a641ae062658e40651">SVF::AccessPath::computeConstantOffset</a></div><div class="ttdeci">APOffset computeConstantOffset() const</div><div class="ttdoc">For example,.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00209">AccessPath.cpp:209</a></div></div>
918
+ <div class="ttc" id="aclassSVF_1_1AccessPath_html_ae746362c42da05a641ae062658e40651"><div class="ttname"><a href="classSVF_1_1AccessPath.html#ae746362c42da05a641ae062658e40651">SVF::AccessPath::computeConstantOffset</a></div><div class="ttdeci">APOffset computeConstantOffset() const</div><div class="ttdoc">For example,.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00212">AccessPath.cpp:212</a></div></div>
919
919
  <div class="ttc" id="aclassSVF_1_1AccessPath_html_a586c71842e3e4487921aa3384ce9d025"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a586c71842e3e4487921aa3384ce9d025">SVF::AccessPath::getIdxOperandPairVec</a></div><div class="ttdeci">const IdxOperandPairs &amp; getIdxOperandPairVec() const</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8h_source.html#l00108">AccessPath.h:108</a></div></div>
920
920
  <div class="ttc" id="aclassSVF_1_1SVFStmt_html_abb784290c90d26f35897fa15bae277d2"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#abb784290c90d26f35897fa15bae277d2">SVF::SVFStmt::getValue</a></div><div class="ttdeci">const SVFValue * getValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00147">SVFStatements.h:147</a></div></div>
921
921
  <div class="ttc" id="aclassSVF_1_1AccessPath_html_a403312192a96a9fd5e7d071481592a7f"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a403312192a96a9fd5e7d071481592a7f">SVF::AccessPath::isConstantOffset</a></div><div class="ttdeci">bool isConstantOffset() const</div><div class="ttdoc">Return TRUE if this is a constant location set.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00049">AccessPath.cpp:49</a></div></div>
922
- <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00904">LLVMUtil.cpp:904</a></div></div>
922
+ <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00931">LLVMUtil.cpp:931</a></div></div>
923
923
  <div class="ttc" id="aclassSVF_1_1GepStmt_html_ad7cfa816936d38d1d022e2cfdb1c7c44"><div class="ttname"><a href="classSVF_1_1GepStmt.html#ad7cfa816936d38d1d022e2cfdb1c7c44">SVF::GepStmt::ap</a></div><div class="ttdeci">AccessPath ap</div><div class="ttdoc">Access path of the GEP edge.</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00485">SVFStatements.h:485</a></div></div>
924
924
  <div class="ttc" id="aclassSVF_1_1GepStmt_html_af8eefbd002ec36f36612b8e9ccdbc757"><div class="ttname"><a href="classSVF_1_1GepStmt.html#af8eefbd002ec36f36612b8e9ccdbc757">SVF::GepStmt::variantField</a></div><div class="ttdeci">bool variantField</div><div class="ttdoc">Gep statement with a variant field index (pointer arithmetic) for struct field access (e....</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00486">SVFStatements.h:486</a></div></div>
925
925
  <div class="ttc" id="aclassSVF_1_1AssignStmt_html_a98f731be7be9bc8e7fd09f5c2204c840"><div class="ttname"><a href="classSVF_1_1AssignStmt.html#a98f731be7be9bc8e7fd09f5c2204c840">SVF::AssignStmt::getLHSVarID</a></div><div class="ttdeci">NodeID getLHSVarID() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00302">SVFStatements.h:302</a></div></div>
@@ -793,7 +793,7 @@ Additional Inherited Members</h2></td></tr>
793
793
  <div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
794
794
  <div class="ttc" id="aclassSVF_1_1GepValVar_html_a4aa450bce36b4b9f65b769eae649771a"><div class="ttname"><a href="classSVF_1_1GepValVar.html#a4aa450bce36b4b9f65b769eae649771a">SVF::GepValVar::gepValType</a></div><div class="ttdeci">const SVFType * gepValType</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00387">SVFVariables.h:387</a></div></div>
795
795
  <div class="ttc" id="aclassSVF_1_1GepValVar_html_ada19ed60cb6623867b00b0f59cf0453a"><div class="ttname"><a href="classSVF_1_1GepValVar.html#ada19ed60cb6623867b00b0f59cf0453a">SVF::GepValVar::getConstantFieldIdx</a></div><div class="ttdeci">APOffset getConstantFieldIdx() const</div><div class="ttdoc">offset of the base value variable</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00421">SVFVariables.h:421</a></div></div>
796
- <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00904">LLVMUtil.cpp:904</a></div></div>
796
+ <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00931">LLVMUtil.cpp:931</a></div></div>
797
797
  <div class="ttc" id="aclassSVF_1_1SVFVar_html_aa72b0f34a0b646751a7b2003d6b9f11e"><div class="ttname"><a href="classSVF_1_1SVFVar.html#aa72b0f34a0b646751a7b2003d6b9f11e">SVF::SVFVar::value</a></div><div class="ttdeci">const SVFValue * value</div><div class="ttdoc">value of this SVFIR node</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00078">SVFVariables.h:78</a></div></div>
798
798
  <div class="ttc" id="aclassSVF_1_1GepValVar_html_a07b41362e4699c930af7bbe178e0b252"><div class="ttname"><a href="classSVF_1_1GepValVar.html#a07b41362e4699c930af7bbe178e0b252">SVF::GepValVar::ap</a></div><div class="ttdeci">AccessPath ap</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00386">SVFVariables.h:386</a></div></div>
799
799
  <div class="ttc" id="aclassSVF_1_1ValVar_html_a5c097c0686df4897325bbdbb4067d6e5"><div class="ttname"><a href="classSVF_1_1ValVar.html#a5c097c0686df4897325bbdbb4067d6e5">SVF::ValVar::ValVar</a></div><div class="ttdeci">ValVar(NodeID i, PNODEK ty=ValNode)</div><div class="ttdoc">Constructor to create an empty ValVar (for SVFIRReader/deserialization)</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00269">SVFVariables.h:269</a></div></div>
@@ -2836,7 +2836,7 @@ Additional Inherited Members</h2></td></tr>
2836
2836
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs()</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00050">SVFUtil.h:50</a></div></div>
2837
2837
  <div class="ttc" id="aclassSVF_1_1GenericGraph_html_a6885064afa211958af7b73f0233284e5"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a6885064afa211958af7b73f0233284e5">SVF::GenericGraph::hasGNode</a></div><div class="ttdeci">bool hasGNode(NodeID id) const</div><div class="ttdoc">Has a node.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00414">GenericGraph.h:414</a></div></div>
2838
2838
  <div class="ttc" id="aclassSVF_1_1ICFG_html_ac51c8f38efbd2576e150a9fc26a4a41b"><div class="ttname"><a href="classSVF_1_1ICFG.html#ac51c8f38efbd2576e150a9fc26a4a41b">SVF::ICFG::addCallBlock</a></div><div class="ttdeci">CallICFGNode * addCallBlock(const SVFInstruction *cs)</div><div class="ttdoc">Get/Add a call node.</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00315">ICFG.h:315</a></div></div>
2839
- <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00904">LLVMUtil.cpp:904</a></div></div>
2839
+ <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00931">LLVMUtil.cpp:931</a></div></div>
2840
2840
  <div class="ttc" id="aclassSVF_1_1FunExitICFGNode_html"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html">SVF::FunExitICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00324">ICFGNode.h:324</a></div></div>
2841
2841
  <div class="ttc" id="aclassSVF_1_1GraphPrinter_html_a014217fb0d05c8f2a2f1a6c5b19d3e10"><div class="ttname"><a href="classSVF_1_1GraphPrinter.html#a014217fb0d05c8f2a2f1a6c5b19d3e10">SVF::GraphPrinter::WriteGraphToFile</a></div><div class="ttdeci">static void WriteGraphToFile(SVF::OutStream &amp;O, const std::string &amp;GraphName, const GraphType &amp;GT, bool simple=false)</div><div class="ttdef"><b>Definition:</b> <a href="GraphPrinter_8h_source.html#l00056">GraphPrinter.h:56</a></div></div>
2842
2842
  <div class="ttc" id="aclassSVF_1_1ICFG_html_aa662baae5682ef6ec5084fa4147c9709"><div class="ttname"><a href="classSVF_1_1ICFG.html#aa662baae5682ef6ec5084fa4147c9709">SVF::ICFG::hasIntraICFGEdge</a></div><div class="ttdeci">ICFGEdge * hasIntraICFGEdge(ICFGNode *src, ICFGNode *dst, ICFGEdge::ICFGEdgeK kind)</div><div class="ttdoc">Whether we has a SVFG edge.</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00291">ICFG.cpp:291</a></div></div>
@@ -808,7 +808,7 @@ Private Attributes</h2></td></tr>
808
808
  <div class="ttc" id="aclassSVF_1_1FunExitICFGNode_html"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html">SVF::FunExitICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00324">ICFGNode.h:324</a></div></div>
809
809
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_a4550f2fb815882edfb666ac818792064"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a4550f2fb815882edfb666ac818792064">SVF::SVFUtil::pasMsg</a></div><div class="ttdeci">std::string pasMsg(const std::string &amp;msg)</div><div class="ttdoc">Print each pass/phase message by converting a string into blue string output.</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00099">SVFUtil.cpp:99</a></div></div>
810
810
  <div class="ttc" id="aSVFFileSystem_8cpp_html_ab25baccb41e3b67ef0bfdaa1336c9649"><div class="ttname"><a href="SVFFileSystem_8cpp.html#ab25baccb41e3b67ef0bfdaa1336c9649">F</a></div><div class="ttdeci">#define F(f)</div></div>
811
- <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_afdd77bc1fca91f70b2ec362f1dacd392"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#afdd77bc1fca91f70b2ec362f1dacd392">SVF::LLVMModuleSet::getSVFValue</a></div><div class="ttdeci">SVFValue * getSVFValue(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l01322">LLVMModule.cpp:1322</a></div></div>
811
+ <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_afdd77bc1fca91f70b2ec362f1dacd392"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#afdd77bc1fca91f70b2ec362f1dacd392">SVF::LLVMModuleSet::getSVFValue</a></div><div class="ttdeci">SVFValue * getSVFValue(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l01321">LLVMModule.cpp:1321</a></div></div>
812
812
  <div class="ttc" id="aclassSVF_1_1ICFGBuilder_html_af46638008b796fdb491624f32b31d8a3"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#af46638008b796fdb491624f32b31d8a3">SVF::ICFGBuilder::processFunExit</a></div><div class="ttdeci">void processFunExit(const Function *fun)</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8cpp_source.html#l00156">ICFGBuilder.cpp:156</a></div></div>
813
813
  <div class="ttc" id="aclassSVF_1_1ICFG_html_a8a5e7571e804702a2d0af7d420f21b33"><div class="ttname"><a href="classSVF_1_1ICFG.html#a8a5e7571e804702a2d0af7d420f21b33">SVF::ICFG::addRetEdge</a></div><div class="ttdeci">ICFGEdge * addRetEdge(ICFGNode *srcNode, ICFGNode *dstNode, const SVFInstruction *cs)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00424">ICFG.cpp:424</a></div></div>
814
814
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_afbd60d5443c7fa1448813d00bb5d0fa7"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#afbd60d5443c7fa1448813d00bb5d0fa7">SVF::LLVMUtil::getNextInsts</a></div><div class="ttdeci">void getNextInsts(const Instruction *curInst, std::vector&lt; const SVFInstruction * &gt; &amp;instList)</div><div class="ttdoc">Get the next instructions following control flow.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00302">LLVMUtil.cpp:302</a></div></div>
@@ -257,50 +257,49 @@ Static Public Member Functions</h2></td></tr>
257
257
  <div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="comment">// merge the following nodes, until the next subnode</span></div>
258
258
  <div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">while</span> (subNodes.find(<a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a>) == subNodes.end())</div>
259
259
  <div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; {</div>
260
- <div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; ICFGNode* rep_next = <span class="keyword">const_cast&lt;</span>ICFGNode*<span class="keyword">&gt;</span>(icfg-&gt;getRepNode(<a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a>));</div>
261
- <div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; assert(rep_next != head &amp;&amp; <span class="stringliteral">&quot;should not find a circle here&quot;</span>);</div>
262
- <div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; icfg-&gt;removeICFGEdge(*head-&gt;getOutEdges().begin());</div>
263
- <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; std::vector&lt;ICFGEdge*&gt; rm_edges;</div>
264
- <div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="comment">// Step 1: merge the out edges of next to head</span></div>
265
- <div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">for</span> (ICFGEdge* outEdge: <a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a>-&gt;getOutEdges())</div>
266
- <div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div>
267
- <div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; rm_edges.push_back(outEdge);</div>
268
- <div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; ICFGNode* post = outEdge-&gt;getDstNode();</div>
269
- <div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">if</span> (outEdge-&gt;isIntraCFGEdge())</div>
270
- <div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; {</div>
271
- <div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; IntraCFGEdge* intraEdge = SVFUtil::dyn_cast&lt;IntraCFGEdge&gt;(outEdge);</div>
272
- <div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">if</span> (intraEdge-&gt;getCondition())</div>
273
- <div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; {</div>
274
- <div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; icfg-&gt;addConditionalIntraEdge(head, post, intraEdge-&gt;getCondition(), intraEdge-&gt;getSuccessorCondValue());</div>
275
- <div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; }</div>
276
- <div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">else</span></div>
277
- <div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; {</div>
278
- <div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; icfg-&gt;addIntraEdge(head, post);</div>
279
- <div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }</div>
280
- <div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; }</div>
281
- <div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }</div>
282
- <div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="comment">// Step 2: update the sub node map and rep node map</span></div>
283
- <div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; icfg-&gt;updateSubAndRep(<a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a>, head);</div>
284
- <div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a>-&gt;getOutEdges().size() == 1)</div>
285
- <div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; {</div>
286
- <div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="comment">// Step 3: remove the edges from next to its next, since next has been merged to head</span></div>
287
- <div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="comment">// if only one out edge, we may continue to merge the next node if it is not a subnode</span></div>
288
- <div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a> = (*<a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a>-&gt;getOutEdges().begin())-&gt;getDstNode();</div>
289
- <div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">for</span> (ICFGEdge* edge: rm_edges)</div>
290
- <div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; icfg-&gt;removeICFGEdge(edge);</div>
291
- <div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; </div>
292
- <div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div>
293
- <div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">else</span></div>
294
- <div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; {</div>
295
- <div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="comment">// if more than one out edges, we don&#39;t merge any following nodes.</span></div>
296
- <div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">for</span> (ICFGEdge* edge: rm_edges)</div>
297
- <div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; icfg-&gt;removeICFGEdge(edge);</div>
298
- <div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">break</span>;</div>
299
- <div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; }</div>
300
- <div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; }</div>
301
- <div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div>
302
- <div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div>
303
- <div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;}</div>
260
+ <div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; assert(icfg-&gt;getRepNode(<a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a>) != head &amp;&amp; <span class="stringliteral">&quot;should not find a circle here&quot;</span>);</div>
261
+ <div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; icfg-&gt;removeICFGEdge(*head-&gt;getOutEdges().begin());</div>
262
+ <div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; std::vector&lt;ICFGEdge*&gt; rm_edges;</div>
263
+ <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="comment">// Step 1: merge the out edges of next to head</span></div>
264
+ <div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">for</span> (ICFGEdge* outEdge: <a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a>-&gt;getOutEdges())</div>
265
+ <div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; {</div>
266
+ <div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; rm_edges.push_back(outEdge);</div>
267
+ <div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; ICFGNode* post = outEdge-&gt;getDstNode();</div>
268
+ <div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">if</span> (outEdge-&gt;isIntraCFGEdge())</div>
269
+ <div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; {</div>
270
+ <div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; IntraCFGEdge* intraEdge = SVFUtil::dyn_cast&lt;IntraCFGEdge&gt;(outEdge);</div>
271
+ <div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">if</span> (intraEdge-&gt;getCondition())</div>
272
+ <div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; {</div>
273
+ <div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; icfg-&gt;addConditionalIntraEdge(head, post, intraEdge-&gt;getCondition(), intraEdge-&gt;getSuccessorCondValue());</div>
274
+ <div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; }</div>
275
+ <div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">else</span></div>
276
+ <div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; {</div>
277
+ <div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; icfg-&gt;addIntraEdge(head, post);</div>
278
+ <div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div>
279
+ <div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }</div>
280
+ <div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; }</div>
281
+ <div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="comment">// Step 2: update the sub node map and rep node map</span></div>
282
+ <div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; icfg-&gt;updateSubAndRep(<a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a>, head);</div>
283
+ <div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a>-&gt;getOutEdges().size() == 1)</div>
284
+ <div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; {</div>
285
+ <div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="comment">// Step 3: remove the edges from next to its next, since next has been merged to head</span></div>
286
+ <div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="comment">// if only one out edge, we may continue to merge the next node if it is not a subnode</span></div>
287
+ <div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a> = (*<a class="code" href="cJSON_8cpp.html#a2599f74bdbbc1b3fd1ba8db3789a0be7">next</a>-&gt;getOutEdges().begin())-&gt;getDstNode();</div>
288
+ <div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordflow">for</span> (ICFGEdge* edge: rm_edges)</div>
289
+ <div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; icfg-&gt;removeICFGEdge(edge);</div>
290
+ <div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; </div>
291
+ <div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; }</div>
292
+ <div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">else</span></div>
293
+ <div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; {</div>
294
+ <div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="comment">// if more than one out edges, we don&#39;t merge any following nodes.</span></div>
295
+ <div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">for</span> (ICFGEdge* edge: rm_edges)</div>
296
+ <div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; icfg-&gt;removeICFGEdge(edge);</div>
297
+ <div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">break</span>;</div>
298
+ <div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div>
299
+ <div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; }</div>
300
+ <div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; }</div>
301
+ <div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div>
302
+ <div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;}</div>
304
303
  </div><!-- fragment -->
305
304
  </div>
306
305
  </div>
@@ -809,7 +809,7 @@ Additional Inherited Members</h2></td></tr>
809
809
  <div class="ttc" id="aclassSVF_1_1InterMSSAPHISVFGNode_html_a47d870a6c0f515139b1950e8985dc2d1"><div class="ttname"><a href="classSVF_1_1InterMSSAPHISVFGNode.html#a47d870a6c0f515139b1950e8985dc2d1">SVF::InterMSSAPHISVFGNode::isFormalINPHI</a></div><div class="ttdeci">bool isFormalINPHI() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGNode_8h_source.html#l00413">SVFGNode.h:413</a></div></div>
810
810
  <div class="ttc" id="aclassSVF_1_1InterMSSAPHISVFGNode_html_aac74080dd5078d31d6f43edc2caf3c08"><div class="ttname"><a href="classSVF_1_1InterMSSAPHISVFGNode.html#aac74080dd5078d31d6f43edc2caf3c08">SVF::InterMSSAPHISVFGNode::callInst</a></div><div class="ttdeci">const CallICFGNode * callInst</div><div class="ttdef"><b>Definition:</b> <a href="SVFGNode_8h_source.html#l00463">SVFGNode.h:463</a></div></div>
811
811
  <div class="ttc" id="aclassSVF_1_1InterMSSAPHISVFGNode_html_a4fef6f5eaeed80f1555b4cdaa2af5301"><div class="ttname"><a href="classSVF_1_1InterMSSAPHISVFGNode.html#a4fef6f5eaeed80f1555b4cdaa2af5301">SVF::InterMSSAPHISVFGNode::isActualOUTPHI</a></div><div class="ttdeci">bool isActualOUTPHI() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGNode_8h_source.html#l00418">SVFGNode.h:418</a></div></div>
812
- <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00904">LLVMUtil.cpp:904</a></div></div>
812
+ <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00931">LLVMUtil.cpp:931</a></div></div>
813
813
  <div class="ttc" id="aclassSVF_1_1MSSAPHISVFGNode_html_aec8a372f9024af27a87c5b43e4dc633d"><div class="ttname"><a href="classSVF_1_1MSSAPHISVFGNode.html#aec8a372f9024af27a87c5b43e4dc633d">SVF::MSSAPHISVFGNode::MSSAPHISVFGNode</a></div><div class="ttdeci">MSSAPHISVFGNode(NodeID id, const MRVer *resVer, VFGNodeK k=MPhi)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="SVFGNode_8h_source.html#l00287">SVFGNode.h:287</a></div></div>
814
814
  <!-- start footer part -->
815
815
  <hr class="footer"/><address class="footer"><small>
@@ -753,7 +753,7 @@ Additional Inherited Members</h2></td></tr>
753
753
  <div class="ttc" id="aclassSVF_1_1InterPHIVFGNode_html_a6a8b370c8de218abf89cf00a72d3cd0c"><div class="ttname"><a href="classSVF_1_1InterPHIVFGNode.html#a6a8b370c8de218abf89cf00a72d3cd0c">SVF::InterPHIVFGNode::callInst</a></div><div class="ttdeci">const CallICFGNode * callInst</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l01146">VFGNode.h:1146</a></div></div>
754
754
  <div class="ttc" id="aclassSVF_1_1VFGNode_html_a99a54cf322b0eec3a1ef109ce5f2db75aa501e9891cbacea3950d80aa6071ec69"><div class="ttname"><a href="classSVF_1_1VFGNode.html#a99a54cf322b0eec3a1ef109ce5f2db75aa501e9891cbacea3950d80aa6071ec69">SVF::VFGNode::TInterPhi</a></div><div class="ttdeci">@ TInterPhi</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00054">VFGNode.h:54</a></div></div>
755
755
  <div class="ttc" id="aclassSVF_1_1InterPHIVFGNode_html_a5aa8e8a10a5c30f2f4669c9190e18740"><div class="ttname"><a href="classSVF_1_1InterPHIVFGNode.html#a5aa8e8a10a5c30f2f4669c9190e18740">SVF::InterPHIVFGNode::fun</a></div><div class="ttdeci">const SVFFunction * fun</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l01145">VFGNode.h:1145</a></div></div>
756
- <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00904">LLVMUtil.cpp:904</a></div></div>
756
+ <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00931">LLVMUtil.cpp:931</a></div></div>
757
757
  <div class="ttc" id="aclassSVF_1_1InterPHIVFGNode_html_aacfd7f1e99e246283191f41d44567ed4"><div class="ttname"><a href="classSVF_1_1InterPHIVFGNode.html#aacfd7f1e99e246283191f41d44567ed4">SVF::InterPHIVFGNode::isActualRetPHI</a></div><div class="ttdeci">bool isActualRetPHI() const</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l01105">VFGNode.h:1105</a></div></div>
758
758
  <!-- start footer part -->
759
759
  <hr class="footer"/><address class="footer"><small>
@@ -596,7 +596,7 @@ Additional Inherited Members</h2></td></tr>
596
596
  <div class="ttc" id="aclassSVF_1_1IntraCFGEdge_html_a2657751b285cb6db8084da38b00dcab9"><div class="ttname"><a href="classSVF_1_1IntraCFGEdge.html#a2657751b285cb6db8084da38b00dcab9">SVF::IntraCFGEdge::getCondition</a></div><div class="ttdeci">const SVFValue * getCondition() const</div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00140">ICFGEdge.h:140</a></div></div>
597
597
  <div class="ttc" id="aclassSVF_1_1IntraCFGEdge_html_a4c6975e82794958aecb2013c0941777d"><div class="ttname"><a href="classSVF_1_1IntraCFGEdge.html#a4c6975e82794958aecb2013c0941777d">SVF::IntraCFGEdge::conditionVar</a></div><div class="ttdeci">const SVFValue * conditionVar</div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00169">ICFGEdge.h:169</a></div></div>
598
598
  <div class="ttc" id="aclassSVF_1_1IntraCFGEdge_html_a8ba42f12f31c5f7ff633f60856f973b3"><div class="ttname"><a href="classSVF_1_1IntraCFGEdge.html#a8ba42f12f31c5f7ff633f60856f973b3">SVF::IntraCFGEdge::branchCondVal</a></div><div class="ttdeci">s64_t branchCondVal</div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00170">ICFGEdge.h:170</a></div></div>
599
- <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00904">LLVMUtil.cpp:904</a></div></div>
599
+ <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00931">LLVMUtil.cpp:931</a></div></div>
600
600
  <div class="ttc" id="aclassSVF_1_1IntraCFGEdge_html_a106513578790247f9d96e34c8385b3d8"><div class="ttname"><a href="classSVF_1_1IntraCFGEdge.html#a106513578790247f9d96e34c8385b3d8">SVF::IntraCFGEdge::getSuccessorCondValue</a></div><div class="ttdeci">s64_t getSuccessorCondValue() const</div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00145">ICFGEdge.h:145</a></div></div>
601
601
  <div class="ttc" id="aclassSVF_1_1ICFGEdge_html_a395c34788e98950bc43e8cb44313e429acb8fba7c61b08ec952f1b65643d7a84b"><div class="ttname"><a href="classSVF_1_1ICFGEdge.html#a395c34788e98950bc43e8cb44313e429acb8fba7c61b08ec952f1b65643d7a84b">SVF::ICFGEdge::IntraCF</a></div><div class="ttdeci">@ IntraCF</div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00055">ICFGEdge.h:55</a></div></div>
602
602
  <div class="ttc" id="aclassSVF_1_1ICFGEdge_html_a9b8f369727bd03106bafacd4eee3dd04"><div class="ttname"><a href="classSVF_1_1ICFGEdge.html#a9b8f369727bd03106bafacd4eee3dd04">SVF::ICFGEdge::ICFGEdge</a></div><div class="ttdeci">ICFGEdge(ICFGNode *s, ICFGNode *d, GEdgeFlag k)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00064">ICFGEdge.h:64</a></div></div>
@@ -599,7 +599,7 @@ Additional Inherited Members</h2></td></tr>
599
599
  <div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
600
600
  <div class="ttc" id="aclassSVF_1_1ICFGNode_html_ae526280cca2d6cbb2868c80461bc16da"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#ae526280cca2d6cbb2868c80461bc16da">SVF::ICFGNode::getFun</a></div><div class="ttdeci">virtual const SVFFunction * getFun() const</div><div class="ttdoc">Return the function of this ICFGNode.</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00086">ICFGNode.h:86</a></div></div>
601
601
  <div class="ttc" id="aclassSVF_1_1SVFStmt_html"><div class="ttname"><a href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00051">SVFStatements.h:51</a></div></div>
602
- <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00904">LLVMUtil.cpp:904</a></div></div>
602
+ <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00931">LLVMUtil.cpp:931</a></div></div>
603
603
  <div class="ttc" id="aclassSVF_1_1ICFGNode_html_a03587dbd558d8fffe25307b42e3195be"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#a03587dbd558d8fffe25307b42e3195be">SVF::ICFGNode::fun</a></div><div class="ttdeci">const SVFFunction * fun</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00138">ICFGNode.h:138</a></div></div>
604
604
  <div class="ttc" id="aclassSVF_1_1IntraICFGNode_html_aee81d1ab3eb9584b34efbe1f821371b7"><div class="ttname"><a href="classSVF_1_1IntraICFGNode.html#aee81d1ab3eb9584b34efbe1f821371b7">SVF::IntraICFGNode::getInst</a></div><div class="ttdeci">const SVFInstruction * getInst() const</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00197">ICFGNode.h:197</a></div></div>
605
605
  <div class="ttc" id="aclassSVF_1_1SVFInstruction_html_ae009f41cbf48d949d4325e08fe8d7198"><div class="ttname"><a href="classSVF_1_1SVFInstruction.html#ae009f41cbf48d949d4325e08fe8d7198">SVF::SVFInstruction::getParent</a></div><div class="ttdeci">const SVFBasicBlock * getParent() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00658">SVFValue.h:658</a></div></div>
@@ -667,7 +667,7 @@ Additional Inherited Members</h2></td></tr>
667
667
  <div class="ttc" id="aclassSVF_1_1PHIVFGNode_html_a513b2636967a86902f4243dc0d2e0e3f"><div class="ttname"><a href="classSVF_1_1PHIVFGNode.html#a513b2636967a86902f4243dc0d2e0e3f">SVF::PHIVFGNode::res</a></div><div class="ttdeci">const PAGNode * res</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00641">VFGNode.h:641</a></div></div>
668
668
  <div class="ttc" id="aclassSVF_1_1VFGNode_html_a99a54cf322b0eec3a1ef109ce5f2db75a3d97c6d57d8d2e7387715f4eb719f727"><div class="ttname"><a href="classSVF_1_1VFGNode.html#a99a54cf322b0eec3a1ef109ce5f2db75a3d97c6d57d8d2e7387715f4eb719f727">SVF::VFGNode::TIntraPhi</a></div><div class="ttdeci">@ TIntraPhi</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00054">VFGNode.h:54</a></div></div>
669
669
  <div class="ttc" id="aclassSVF_1_1PHIVFGNode_html_add18c60773871744123d12a037e78e20"><div class="ttname"><a href="classSVF_1_1PHIVFGNode.html#add18c60773871744123d12a037e78e20">SVF::PHIVFGNode::opVerEnd</a></div><div class="ttdeci">OPVers::const_iterator opVerEnd() const</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00678">VFGNode.h:678</a></div></div>
670
- <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00904">LLVMUtil.cpp:904</a></div></div>
670
+ <div class="ttc" id="aclassSVF_1_1SVFValue_html_a4a0cfe3a8f37d33ffcdca3d66026dcc3"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a4a0cfe3a8f37d33ffcdca3d66026dcc3">SVF::SVFValue::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Needs to be implemented by a SVF front end.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00931">LLVMUtil.cpp:931</a></div></div>
671
671
  <div class="ttc" id="aclassSVF_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>
672
672
  <div class="ttc" id="aclassSVF_1_1PHIVFGNode_html_a08ccd55d0fb6ce33f69959349008daca"><div class="ttname"><a href="classSVF_1_1PHIVFGNode.html#a08ccd55d0fb6ce33f69959349008daca">SVF::PHIVFGNode::opVers</a></div><div class="ttdeci">OPVers opVers</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00642">VFGNode.h:642</a></div></div>
673
673
  <!-- start footer part -->