svf-tools 1.0.757 → 1.0.759

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 (844) hide show
  1. package/CMakeLists.txt +7 -0
  2. package/README.md +2 -2
  3. package/SVF-doxygen/html/html/AccessPath_8cpp_source.html +4 -4
  4. package/SVF-doxygen/html/html/AddressValue_8h_source.html +1 -1
  5. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +1 -1
  6. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +1 -1
  7. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +8 -8
  8. package/SVF-doxygen/html/html/Andersen_8h_source.html +3 -3
  9. package/SVF-doxygen/html/html/BreakConstantExpr_8cpp_source.html +1 -1
  10. package/SVF-doxygen/html/html/CFBasicBlockG_8cpp_source.html +4 -4
  11. package/SVF-doxygen/html/html/CFBasicBlockG_8h_source.html +2 -2
  12. package/SVF-doxygen/html/html/CFGrammar_8cpp_source.html +11 -8
  13. package/SVF-doxygen/html/html/CFGrammar_8h_source.html +1 -1
  14. package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +9 -9
  15. package/SVF-doxygen/html/html/CFLAlias_8h_source.html +1 -1
  16. package/SVF-doxygen/html/html/CFLVF_8cpp_source.html +1 -1
  17. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +17 -17
  18. package/SVF-doxygen/html/html/CHG_8cpp.html +2 -2
  19. package/SVF-doxygen/html/html/CHG_8cpp_source.html +7 -7
  20. package/SVF-doxygen/html/html/CHG_8h_source.html +4 -4
  21. package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +6 -6
  22. package/SVF-doxygen/html/html/CallGraphBuilder_8h_source.html +1 -1
  23. package/SVF-doxygen/html/html/Casting_8h_source.html +1 -1
  24. package/SVF-doxygen/html/html/CommandLine_8h_source.html +2 -1
  25. package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +1 -1
  26. package/SVF-doxygen/html/html/ConsExeState_8cpp_source.html +1 -1
  27. package/SVF-doxygen/html/html/ConsExeState_8h_source.html +1 -1
  28. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +3 -3
  29. package/SVF-doxygen/html/html/ConsG_8h_source.html +2 -2
  30. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +2 -2
  31. package/SVF-doxygen/html/html/CoreBitVector_8cpp_source.html +1 -1
  32. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +2 -2
  33. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +11 -11
  34. package/SVF-doxygen/html/html/DCHG_8h_source.html +3 -3
  35. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +3 -3
  36. package/SVF-doxygen/html/html/DDAClient_8h_source.html +1 -1
  37. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +1 -1
  38. package/SVF-doxygen/html/html/DDAPass_8h_source.html +1 -1
  39. package/SVF-doxygen/html/html/DPItem_8h_source.html +1 -1
  40. package/SVF-doxygen/html/html/ExeState_8h_source.html +1 -1
  41. package/SVF-doxygen/html/html/ExtAPI_8cpp.html +0 -196
  42. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +121 -786
  43. package/SVF-doxygen/html/html/ExtAPI_8h.html +2 -67
  44. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +69 -654
  45. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +2 -2
  46. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +2 -2
  47. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +2 -2
  48. package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +1 -1
  49. package/SVF-doxygen/html/html/GenericGraph_8h_source.html +3 -3
  50. package/SVF-doxygen/html/html/GraphTraits_8h_source.html +1 -1
  51. package/SVF-doxygen/html/html/GraphWriter_8h_source.html +1 -1
  52. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +13 -13
  53. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +2 -2
  54. package/SVF-doxygen/html/html/ICFGEdge_8h_source.html +1 -1
  55. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +4 -4
  56. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +7 -7
  57. package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
  58. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +2 -2
  59. package/SVF-doxygen/html/html/IRGraph_8h_source.html +1 -1
  60. package/SVF-doxygen/html/html/IntervalExeState_8h_source.html +2 -2
  61. package/SVF-doxygen/html/html/IntervalValue_8h.html +1 -1
  62. package/SVF-doxygen/html/html/IntervalValue_8h_source.html +2 -2
  63. package/SVF-doxygen/html/html/LLVMLoopAnalysis_8cpp_source.html +6 -6
  64. package/SVF-doxygen/html/html/LLVMLoopAnalysis_8h_source.html +1 -1
  65. package/SVF-doxygen/html/html/LLVMModule_8cpp.html +3 -4
  66. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +1411 -1292
  67. package/SVF-doxygen/html/html/LLVMModule_8h.html +1 -0
  68. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +418 -400
  69. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +744 -616
  70. package/SVF-doxygen/html/html/LLVMUtil_8h.html +9 -1
  71. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +485 -472
  72. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
  73. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +14 -14
  74. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +2 -2
  75. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +8 -8
  76. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +5 -5
  77. package/SVF-doxygen/html/html/MHP_8cpp_source.html +15 -15
  78. package/SVF-doxygen/html/html/MHP_8h_source.html +4 -4
  79. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +4 -4
  80. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +5 -5
  81. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +4 -4
  82. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +7 -7
  83. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +7 -7
  84. package/SVF-doxygen/html/html/MTA_8cpp_source.html +4 -4
  85. package/SVF-doxygen/html/html/MTA_8h_source.html +1 -1
  86. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +13 -13
  87. package/SVF-doxygen/html/html/MemRegion_8h_source.html +1 -1
  88. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +21 -21
  89. package/SVF-doxygen/html/html/MemSSA_8h_source.html +2 -2
  90. package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +2 -2
  91. package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +2 -2
  92. package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +1 -1
  93. package/SVF-doxygen/html/html/NumericLiteral_8h_source.html +1 -1
  94. package/SVF-doxygen/html/html/Options_8cpp_source.html +9 -8
  95. package/SVF-doxygen/html/html/PCG_8cpp_source.html +13 -13
  96. package/SVF-doxygen/html/html/PCG_8h_source.html +3 -3
  97. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +3 -3
  98. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +2 -2
  99. package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +1 -1
  100. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +3 -3
  101. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +12 -12
  102. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +1 -1
  103. package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +2 -2
  104. package/SVF-doxygen/html/html/PointsTo_8h_source.html +1 -1
  105. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +2 -2
  106. package/SVF-doxygen/html/html/ProgSlice_8h_source.html +1 -1
  107. package/SVF-doxygen/html/html/RelExeState_8h_source.html +1 -1
  108. package/SVF-doxygen/html/html/SVFBugReport_8cpp_source.html +362 -365
  109. package/SVF-doxygen/html/html/SVFBugReport_8h_source.html +25 -25
  110. package/SVF-doxygen/html/html/SVFFileSystem_8cpp_source.html +2087 -2084
  111. package/SVF-doxygen/html/html/SVFFileSystem_8h.html +1 -1
  112. package/SVF-doxygen/html/html/SVFFileSystem_8h_source.html +62 -62
  113. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +5 -5
  114. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +2 -2
  115. package/SVF-doxygen/html/html/SVFGReadWrite_8cpp_source.html +1 -1
  116. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +5 -5
  117. package/SVF-doxygen/html/html/SVFIR2ConsExeState_8cpp_source.html +6 -6
  118. package/SVF-doxygen/html/html/SVFIR2ItvExeState_8cpp_source.html +5 -5
  119. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +458 -531
  120. package/SVF-doxygen/html/html/SVFIRBuilder_8h.html +1 -1
  121. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +211 -233
  122. package/SVF-doxygen/html/html/SVFIRExtAPI_8cpp.html +2 -0
  123. package/SVF-doxygen/html/html/SVFIRExtAPI_8cpp_source.html +286 -682
  124. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +4 -4
  125. package/SVF-doxygen/html/html/SVFIR_8h_source.html +3 -3
  126. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +9 -9
  127. package/SVF-doxygen/html/html/SVFModule_8h.html +0 -1
  128. package/SVF-doxygen/html/html/SVFModule_8h_source.html +258 -260
  129. package/SVF-doxygen/html/html/SVFStat_8cpp_source.html +8 -8
  130. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +5 -5
  131. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +18 -18
  132. package/SVF-doxygen/html/html/SVFType_8h_source.html +6 -6
  133. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +8 -7
  134. package/SVF-doxygen/html/html/SVFUtil_8h.html +6 -11
  135. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +392 -405
  136. package/SVF-doxygen/html/html/SVFValue_8cpp_source.html +14 -13
  137. package/SVF-doxygen/html/html/SVFValue_8h_source.html +1038 -1030
  138. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +2 -2
  139. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +1 -1
  140. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
  141. package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +14 -14
  142. package/SVF-doxygen/html/html/SaberCondAllocator_8h_source.html +6 -6
  143. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +1 -1
  144. package/SVF-doxygen/html/html/SparseBitVector_8h_source.html +2 -2
  145. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +2 -2
  146. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +2 -2
  147. package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +5 -5
  148. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +1 -1
  149. package/SVF-doxygen/html/html/SymState_8cpp_source.html +1 -1
  150. package/SVF-doxygen/html/html/SymState_8h_source.html +2 -2
  151. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +30 -30
  152. package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +2 -2
  153. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +6 -6
  154. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +5 -5
  155. package/SVF-doxygen/html/html/TCT_8cpp_source.html +16 -16
  156. package/SVF-doxygen/html/html/TCT_8h_source.html +8 -8
  157. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +14 -14
  158. package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +5 -5
  159. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +2 -2
  160. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +3 -3
  161. package/SVF-doxygen/html/html/VFGNode_8h_source.html +2 -2
  162. package/SVF-doxygen/html/html/VFG_8cpp_source.html +2 -2
  163. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +2 -2
  164. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +2 -2
  165. package/SVF-doxygen/html/html/WPAPass_8h_source.html +1 -1
  166. package/SVF-doxygen/html/html/WPASolver_8h_source.html +1 -1
  167. package/SVF-doxygen/html/html/WTO_8h_source.html +1 -1
  168. package/SVF-doxygen/html/html/annotated.html +2 -5
  169. package/SVF-doxygen/html/html/cJSON_8cpp.html +2 -1
  170. package/SVF-doxygen/html/html/cJSON_8cpp_source.html +2 -1
  171. package/SVF-doxygen/html/html/cJSON_8h_source.html +1 -1
  172. package/SVF-doxygen/html/html/cfl_8cpp.html +2 -2
  173. package/SVF-doxygen/html/html/cfl_8cpp_source.html +2 -2
  174. package/SVF-doxygen/html/html/classOption.html +2 -1
  175. package/SVF-doxygen/html/html/classSVF_1_1AccessPath.html +6 -6
  176. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +2 -2
  177. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +2 -2
  178. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +1 -1
  179. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +2 -2
  180. package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge.html +1 -1
  181. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +4 -4
  182. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +1 -1
  183. package/SVF-doxygen/html/html/classSVF_1_1AddressValue.html +1 -1
  184. package/SVF-doxygen/html/html/classSVF_1_1AliasCFLGraphBuilder.html +1 -1
  185. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +1 -1
  186. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +13 -13
  187. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +3 -3
  188. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +4 -4
  189. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +3 -3
  190. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +1 -1
  191. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +3 -3
  192. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +1 -1
  193. package/SVF-doxygen/html/html/classSVF_1_1AssignStmt.html +2 -2
  194. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +3 -3
  195. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +5 -5
  196. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +2 -2
  197. package/SVF-doxygen/html/html/classSVF_1_1BitVector.html +1 -1
  198. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +3 -3
  199. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +1 -1
  200. package/SVF-doxygen/html/html/classSVF_1_1BreakConstantGEPs.html +1 -1
  201. package/SVF-doxygen/html/html/classSVF_1_1BufferOverflowBug.html +50 -50
  202. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockGWTO.html +1 -1
  203. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockGWTOCycle.html +1 -1
  204. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockNode.html +2 -2
  205. package/SVF-doxygen/html/html/classSVF_1_1CFGNormalizer.html +2 -2
  206. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +9 -9
  207. package/SVF-doxygen/html/html/classSVF_1_1CFLNode.html +1 -1
  208. package/SVF-doxygen/html/html/classSVF_1_1CFLVF.html +1 -1
  209. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +18 -18
  210. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +5 -5
  211. package/SVF-doxygen/html/html/classSVF_1_1CHNode.html +1 -1
  212. package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +1 -1
  213. package/SVF-doxygen/html/html/classSVF_1_1CallCHI.html +3 -3
  214. package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +6 -6
  215. package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +3 -3
  216. package/SVF-doxygen/html/html/classSVF_1_1CallMU.html +1 -1
  217. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +3 -3
  218. package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +95 -95
  219. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +5 -5
  220. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +2 -2
  221. package/SVF-doxygen/html/html/classSVF_1_1CondPointsToSet.html +3 -3
  222. package/SVF-doxygen/html/html/classSVF_1_1ConsExeState.html +2 -2
  223. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +7 -7
  224. package/SVF-doxygen/html/html/classSVF_1_1ContextCond.html +1 -1
  225. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +2 -2
  226. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +4 -4
  227. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +1 -1
  228. package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +4 -4
  229. package/SVF-doxygen/html/html/classSVF_1_1CxtDPItem.html +1 -1
  230. package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +1 -1
  231. package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +1 -1
  232. package/SVF-doxygen/html/html/classSVF_1_1CxtThreadStmt.html +1 -1
  233. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +9 -9
  234. package/SVF-doxygen/html/html/classSVF_1_1DCHNode.html +1 -1
  235. package/SVF-doxygen/html/html/classSVF_1_1DPItem.html +1 -1
  236. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeBug.html +35 -35
  237. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +3 -3
  238. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +2 -2
  239. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +2 -2
  240. package/SVF-doxygen/html/html/classSVF_1_1DummyVersionPropSVFGNode.html +1 -1
  241. package/SVF-doxygen/html/html/classSVF_1_1EntryCHI.html +2 -2
  242. package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +1 -1
  243. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI-members.html +8 -77
  244. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +130 -1337
  245. package/SVF-doxygen/html/html/classSVF_1_1FILOWorkList.html +1 -1
  246. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +3 -3
  247. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +4 -4
  248. package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +1 -1
  249. package/SVF-doxygen/html/html/classSVF_1_1FileNeverCloseBug.html +10 -10
  250. package/SVF-doxygen/html/html/classSVF_1_1FilePartialCloseBug.html +35 -35
  251. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +4 -4
  252. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +1 -1
  253. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +12 -12
  254. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +1 -1
  255. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +1 -1
  256. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +1 -1
  257. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +1 -1
  258. package/SVF-doxygen/html/html/classSVF_1_1FullNullPtrDereferenceBug.html +10 -10
  259. package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +4 -4
  260. package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +5 -5
  261. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +2 -2
  262. package/SVF-doxygen/html/html/classSVF_1_1GenericBug.html +9 -13
  263. package/SVF-doxygen/html/html/classSVF_1_1GenericGraphReader.html +1 -1
  264. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +2 -2
  265. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +3 -3
  266. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +4 -4
  267. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +1 -1
  268. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +3 -3
  269. package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode.html +1 -1
  270. package/SVF-doxygen/html/html/classSVF_1_1GrammarBase.html +11 -8
  271. package/SVF-doxygen/html/html/classSVF_1_1GrammarBuilder.html +2 -2
  272. package/SVF-doxygen/html/html/classSVF_1_1GraphWriter.html +1 -1
  273. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +2 -2
  274. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +13 -13
  275. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +1 -1
  276. package/SVF-doxygen/html/html/classSVF_1_1ICFGWriter.html +11 -11
  277. package/SVF-doxygen/html/html/classSVF_1_1InterICFGNode.html +1 -1
  278. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +2 -2
  279. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +2 -2
  280. package/SVF-doxygen/html/html/classSVF_1_1IntervalExeState.html +3 -3
  281. package/SVF-doxygen/html/html/classSVF_1_1IntervalValue.html +1 -1
  282. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +1 -1
  283. package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +4 -4
  284. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +1 -1
  285. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +2 -2
  286. package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis.html +5 -5
  287. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet-members.html +42 -40
  288. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +1586 -1455
  289. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +5 -5
  290. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +4 -4
  291. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +1 -1
  292. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +15 -15
  293. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +8 -8
  294. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +18 -18
  295. package/SVF-doxygen/html/html/classSVF_1_1MHPValidator.html +3 -3
  296. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +14 -14
  297. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +1 -1
  298. package/SVF-doxygen/html/html/classSVF_1_1MSSACHI.html +4 -4
  299. package/SVF-doxygen/html/html/classSVF_1_1MSSADEF.html +2 -2
  300. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHI.html +2 -2
  301. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +2 -2
  302. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +4 -4
  303. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +8 -8
  304. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +2 -2
  305. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +7 -7
  306. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
  307. package/SVF-doxygen/html/html/classSVF_1_1MemRegion.html +1 -1
  308. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +24 -24
  309. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +4 -4
  310. package/SVF-doxygen/html/html/classSVF_1_1MutableIncDFPTData.html +6 -6
  311. package/SVF-doxygen/html/html/classSVF_1_1NeverFreeBug.html +10 -10
  312. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +2 -2
  313. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +1 -1
  314. package/SVF-doxygen/html/html/classSVF_1_1NumericLiteral.html +1 -1
  315. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +3 -3
  316. package/SVF-doxygen/html/html/classSVF_1_1Options.html +1 -1
  317. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +14 -14
  318. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +2 -2
  319. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +3 -3
  320. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +1 -1
  321. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +2 -2
  322. package/SVF-doxygen/html/html/classSVF_1_1PartialLeakBug.html +34 -34
  323. package/SVF-doxygen/html/html/classSVF_1_1PartialNullPtrDereferenceBug.html +10 -10
  324. package/SVF-doxygen/html/html/classSVF_1_1PersistentIncDFPTData.html +3 -3
  325. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +5 -5
  326. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +11 -11
  327. package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +3 -3
  328. package/SVF-doxygen/html/html/classSVF_1_1PointsTo_1_1PointsToIterator.html +1 -1
  329. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +3 -3
  330. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +7 -7
  331. package/SVF-doxygen/html/html/classSVF_1_1RaceValidator.html +3 -3
  332. package/SVF-doxygen/html/html/classSVF_1_1ReaderIDToObjMap.html +2 -2
  333. package/SVF-doxygen/html/html/classSVF_1_1ReaderPtrPool.html +2 -2
  334. package/SVF-doxygen/html/html/classSVF_1_1RelExeState.html +1 -1
  335. package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +1 -1
  336. package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +3 -3
  337. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +3 -3
  338. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +2 -2
  339. package/SVF-doxygen/html/html/classSVF_1_1SVFArgument.html +30 -30
  340. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +75 -75
  341. package/SVF-doxygen/html/html/classSVF_1_1SVFBlackHoleValue.html +15 -15
  342. package/SVF-doxygen/html/html/classSVF_1_1SVFBugEvent.html +50 -50
  343. package/SVF-doxygen/html/html/classSVF_1_1SVFBugReport.html +88 -88
  344. package/SVF-doxygen/html/html/classSVF_1_1SVFCallInst.html +67 -67
  345. package/SVF-doxygen/html/html/classSVF_1_1SVFConstant.html +17 -17
  346. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantData.html +23 -23
  347. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantFP.html +21 -21
  348. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantInt.html +27 -27
  349. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantNullPtr.html +15 -15
  350. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction-members.html +15 -13
  351. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +222 -153
  352. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +5 -5
  353. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +5 -5
  354. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +3 -3
  355. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobalValue.html +34 -34
  356. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +7 -7
  357. package/SVF-doxygen/html/html/classSVF_1_1SVFIR2ConsExeState.html +5 -5
  358. package/SVF-doxygen/html/html/classSVF_1_1SVFIR2ItvExeState.html +5 -5
  359. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +64 -73
  360. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +915 -1777
  361. package/SVF-doxygen/html/html/classSVF_1_1SVFIRReader.html +1128 -1126
  362. package/SVF-doxygen/html/html/classSVF_1_1SVFIRWriter.html +548 -547
  363. package/SVF-doxygen/html/html/classSVF_1_1SVFInstruction.html +53 -53
  364. package/SVF-doxygen/html/html/classSVF_1_1SVFLoopAndDomInfo.html +3 -3
  365. package/SVF-doxygen/html/html/classSVF_1_1SVFMetadataAsValue.html +15 -15
  366. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +173 -173
  367. package/SVF-doxygen/html/html/classSVF_1_1SVFModuleReader.html +1 -1
  368. package/SVF-doxygen/html/html/classSVF_1_1SVFModuleWriter.html +23 -23
  369. package/SVF-doxygen/html/html/classSVF_1_1SVFOtherType.html +1 -1
  370. package/SVF-doxygen/html/html/classSVF_1_1SVFOtherValue.html +11 -11
  371. package/SVF-doxygen/html/html/classSVF_1_1SVFStat.html +8 -8
  372. package/SVF-doxygen/html/html/classSVF_1_1SVFStructType.html +1 -1
  373. package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +27 -27
  374. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +4 -4
  375. package/SVF-doxygen/html/html/classSVF_1_1SVFVirtualCallInst.html +53 -53
  376. package/SVF-doxygen/html/html/classSVF_1_1SaberCondAllocator.html +15 -15
  377. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +1 -1
  378. package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +5 -5
  379. package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector.html +1 -1
  380. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +3 -3
  381. package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +12 -12
  382. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +6 -6
  383. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +1 -1
  384. package/SVF-doxygen/html/html/classSVF_1_1StoreCHI.html +2 -2
  385. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +4 -4
  386. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +1 -1
  387. package/SVF-doxygen/html/html/classSVF_1_1SymState.html +3 -3
  388. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +34 -34
  389. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +11 -11
  390. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfoReader.html +1 -1
  391. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +18 -18
  392. package/SVF-doxygen/html/html/classSVF_1_1TCTNode.html +1 -1
  393. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +4 -4
  394. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +4 -4
  395. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +8 -8
  396. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +3 -3
  397. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +5 -5
  398. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +4 -4
  399. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +3 -3
  400. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +2 -2
  401. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +2 -2
  402. package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +1 -1
  403. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +3 -3
  404. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +2 -2
  405. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +4 -4
  406. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +1 -1
  407. package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver.html +1 -1
  408. package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver.html +1 -1
  409. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +1 -1
  410. package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver.html +1 -1
  411. package/SVF-doxygen/html/html/classSVF_1_1WPASolver.html +3 -3
  412. package/SVF-doxygen/html/html/classSVF_1_1iter__adaptor__base.html +1 -1
  413. package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base_1_1ReferenceProxy.html +1 -1
  414. package/SVF-doxygen/html/html/classSVF_1_1iter__range.html +1 -1
  415. package/SVF-doxygen/html/html/classSVF_1_1mapped__iter.html +1 -1
  416. package/SVF-doxygen/html/html/classSVF_1_1pointer__iterator.html +1 -1
  417. package/SVF-doxygen/html/html/classes.html +335 -338
  418. package/SVF-doxygen/html/html/dda_8cpp.html +1 -1
  419. package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
  420. package/SVF-doxygen/html/html/dir_fee120689dee99ef16f8bfcaa7a76083.html +2 -0
  421. package/SVF-doxygen/html/html/extapi_8c.html +1950 -0
  422. package/SVF-doxygen/html/html/extapi_8c_source.html +1488 -0
  423. package/SVF-doxygen/html/html/fastcluster_8cpp.html +1 -1
  424. package/SVF-doxygen/html/html/fastcluster_8cpp_source.html +3 -3
  425. package/SVF-doxygen/html/html/fastcluster_8h.html +2 -2
  426. package/SVF-doxygen/html/html/fastcluster_8h_source.html +4 -4
  427. package/SVF-doxygen/html/html/files.html +10 -9
  428. package/SVF-doxygen/html/html/functions_a.html +17 -27
  429. package/SVF-doxygen/html/html/functions_b.html +9 -12
  430. package/SVF-doxygen/html/html/functions_c.html +26 -70
  431. package/SVF-doxygen/html/html/functions_d.html +3 -7
  432. package/SVF-doxygen/html/html/functions_e.html +4 -121
  433. package/SVF-doxygen/html/html/functions_enum.html +0 -6
  434. package/SVF-doxygen/html/html/functions_eval.html +0 -1
  435. package/SVF-doxygen/html/html/functions_eval_c.html +1 -15
  436. package/SVF-doxygen/html/html/functions_eval_e.html +0 -96
  437. package/SVF-doxygen/html/html/functions_eval_g.html +1 -2
  438. package/SVF-doxygen/html/html/functions_eval_l.html +0 -1
  439. package/SVF-doxygen/html/html/functions_eval_m.html +0 -6
  440. package/SVF-doxygen/html/html/functions_eval_o.html +0 -3
  441. package/SVF-doxygen/html/html/functions_eval_r.html +0 -6
  442. package/SVF-doxygen/html/html/functions_eval_s.html +0 -1
  443. package/SVF-doxygen/html/html/functions_f.html +16 -19
  444. package/SVF-doxygen/html/html/functions_func.html +6 -18
  445. package/SVF-doxygen/html/html/functions_func_e.html +1 -13
  446. package/SVF-doxygen/html/html/functions_func_g.html +24 -91
  447. package/SVF-doxygen/html/html/functions_func_h.html +9 -12
  448. package/SVF-doxygen/html/html/functions_func_i.html +16 -28
  449. package/SVF-doxygen/html/html/functions_func_n.html +0 -3
  450. package/SVF-doxygen/html/html/functions_func_p.html +3 -12
  451. package/SVF-doxygen/html/html/functions_func_s.html +20 -83
  452. package/SVF-doxygen/html/html/functions_g.html +32 -100
  453. package/SVF-doxygen/html/html/functions_h.html +6 -9
  454. package/SVF-doxygen/html/html/functions_i.html +16 -28
  455. package/SVF-doxygen/html/html/functions_l.html +0 -1
  456. package/SVF-doxygen/html/html/functions_m.html +1 -7
  457. package/SVF-doxygen/html/html/functions_n.html +4 -7
  458. package/SVF-doxygen/html/html/functions_o.html +31 -44
  459. package/SVF-doxygen/html/html/functions_p.html +18 -29
  460. package/SVF-doxygen/html/html/functions_r.html +9 -16
  461. package/SVF-doxygen/html/html/functions_s.html +16 -84
  462. package/SVF-doxygen/html/html/functions_t.html +4 -10
  463. package/SVF-doxygen/html/html/functions_v.html +3 -3
  464. package/SVF-doxygen/html/html/functions_vars_a.html +3 -0
  465. package/SVF-doxygen/html/html/functions_vars_b.html +0 -3
  466. package/SVF-doxygen/html/html/functions_vars_c.html +1 -23
  467. package/SVF-doxygen/html/html/functions_vars_d.html +1 -5
  468. package/SVF-doxygen/html/html/functions_vars_e.html +2 -8
  469. package/SVF-doxygen/html/html/functions_vars_f.html +0 -3
  470. package/SVF-doxygen/html/html/functions_vars_o.html +0 -9
  471. package/SVF-doxygen/html/html/functions_vars_r.html +1 -2
  472. package/SVF-doxygen/html/html/functions_vars_s.html +1 -5
  473. package/SVF-doxygen/html/html/functions_vars_t.html +0 -6
  474. package/SVF-doxygen/html/html/globals.html +22 -4
  475. package/SVF-doxygen/html/html/globals_a.html +3 -0
  476. package/SVF-doxygen/html/html/globals_b.html +3 -0
  477. package/SVF-doxygen/html/html/globals_defs.html +3 -9
  478. package/SVF-doxygen/html/html/globals_e.html +0 -3
  479. package/SVF-doxygen/html/html/globals_f.html +11 -2
  480. package/SVF-doxygen/html/html/globals_func.html +159 -15
  481. package/SVF-doxygen/html/html/globals_g.html +13 -4
  482. package/SVF-doxygen/html/html/globals_i.html +41 -2
  483. package/SVF-doxygen/html/html/globals_j.html +3 -6
  484. package/SVF-doxygen/html/html/globals_l.html +3 -0
  485. package/SVF-doxygen/html/html/globals_m.html +8 -2
  486. package/SVF-doxygen/html/html/globals_n.html +2 -1
  487. package/SVF-doxygen/html/html/globals_p.html +1 -4
  488. package/SVF-doxygen/html/html/globals_r.html +12 -6
  489. package/SVF-doxygen/html/html/globals_s.html +33 -0
  490. package/SVF-doxygen/html/html/globals_t.html +3 -0
  491. package/SVF-doxygen/html/html/hierarchy.html +526 -529
  492. package/SVF-doxygen/html/html/iterator_8h_source.html +1 -1
  493. package/SVF-doxygen/html/html/iterator__range_8h_source.html +1 -1
  494. package/SVF-doxygen/html/html/llvm2svf_8cpp.html +1 -1
  495. package/SVF-doxygen/html/html/llvm2svf_8cpp_source.html +1 -1
  496. package/SVF-doxygen/html/html/menudata.js +3 -0
  497. package/SVF-doxygen/html/html/mta_8cpp.html +1 -1
  498. package/SVF-doxygen/html/html/mta_8cpp_source.html +1 -1
  499. package/SVF-doxygen/html/html/namespaceSVF.html +154 -153
  500. package/SVF-doxygen/html/html/namespaceSVF_1_1LLVMUtil.html +1003 -776
  501. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +305 -375
  502. package/SVF-doxygen/html/html/namespacemembers_func_g.html +11 -5
  503. package/SVF-doxygen/html/html/namespacemembers_func_i.html +11 -14
  504. package/SVF-doxygen/html/html/namespacemembers_func_r.html +6 -0
  505. package/SVF-doxygen/html/html/namespacemembers_g.html +11 -5
  506. package/SVF-doxygen/html/html/namespacemembers_i.html +8 -11
  507. package/SVF-doxygen/html/html/namespacemembers_r.html +6 -0
  508. package/SVF-doxygen/html/html/saber_8cpp.html +1 -1
  509. package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -1
  510. package/SVF-doxygen/html/html/search/all_0.js +153 -147
  511. package/SVF-doxygen/html/html/search/all_1.js +476 -478
  512. package/SVF-doxygen/html/html/search/all_10.js +323 -327
  513. package/SVF-doxygen/html/html/search/all_11.js +212 -209
  514. package/SVF-doxygen/html/html/search/all_12.js +536 -547
  515. package/SVF-doxygen/html/html/search/all_13.js +188 -189
  516. package/SVF-doxygen/html/html/search/all_14.js +66 -66
  517. package/SVF-doxygen/html/html/search/all_15.js +170 -170
  518. package/SVF-doxygen/html/html/search/all_16.js +60 -60
  519. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  520. package/SVF-doxygen/html/html/search/all_18.js +1 -1
  521. package/SVF-doxygen/html/html/search/all_19.js +10 -10
  522. package/SVF-doxygen/html/html/search/all_1a.js +169 -169
  523. package/SVF-doxygen/html/html/search/all_2.js +159 -159
  524. package/SVF-doxygen/html/html/search/all_3.js +597 -608
  525. package/SVF-doxygen/html/html/search/all_4.js +226 -227
  526. package/SVF-doxygen/html/html/search/all_5.js +116 -156
  527. package/SVF-doxygen/html/html/search/all_6.js +225 -223
  528. package/SVF-doxygen/html/html/search/all_7.js +996 -1012
  529. package/SVF-doxygen/html/html/search/all_8.js +191 -192
  530. package/SVF-doxygen/html/html/search/all_9.js +605 -597
  531. package/SVF-doxygen/html/html/search/all_a.js +46 -47
  532. package/SVF-doxygen/html/html/search/all_b.js +26 -26
  533. package/SVF-doxygen/html/html/search/all_c.js +114 -113
  534. package/SVF-doxygen/html/html/search/all_d.js +196 -196
  535. package/SVF-doxygen/html/html/search/all_e.js +205 -206
  536. package/SVF-doxygen/html/html/search/all_f.js +116 -122
  537. package/SVF-doxygen/html/html/search/classes_0.js +26 -26
  538. package/SVF-doxygen/html/html/search/classes_1.js +9 -9
  539. package/SVF-doxygen/html/html/search/classes_10.js +73 -73
  540. package/SVF-doxygen/html/html/search/classes_11.js +15 -15
  541. package/SVF-doxygen/html/html/search/classes_12.js +2 -2
  542. package/SVF-doxygen/html/html/search/classes_13.js +10 -10
  543. package/SVF-doxygen/html/html/search/classes_14.js +14 -14
  544. package/SVF-doxygen/html/html/search/classes_15.js +1 -1
  545. package/SVF-doxygen/html/html/search/classes_2.js +76 -76
  546. package/SVF-doxygen/html/html/search/classes_3.js +35 -35
  547. package/SVF-doxygen/html/html/search/classes_4.js +8 -10
  548. package/SVF-doxygen/html/html/search/classes_5.js +28 -28
  549. package/SVF-doxygen/html/html/search/classes_6.js +98 -98
  550. package/SVF-doxygen/html/html/search/classes_7.js +33 -33
  551. package/SVF-doxygen/html/html/search/classes_8.js +56 -56
  552. package/SVF-doxygen/html/html/search/classes_9.js +1 -1
  553. package/SVF-doxygen/html/html/search/classes_a.js +12 -12
  554. package/SVF-doxygen/html/html/search/classes_b.js +29 -29
  555. package/SVF-doxygen/html/html/search/classes_c.js +6 -6
  556. package/SVF-doxygen/html/html/search/classes_d.js +18 -19
  557. package/SVF-doxygen/html/html/search/classes_e.js +36 -36
  558. package/SVF-doxygen/html/html/search/classes_f.js +25 -25
  559. package/SVF-doxygen/html/html/search/defines_0.js +3 -3
  560. package/SVF-doxygen/html/html/search/defines_1.js +2 -2
  561. package/SVF-doxygen/html/html/search/defines_2.js +30 -30
  562. package/SVF-doxygen/html/html/search/defines_3.js +20 -20
  563. package/SVF-doxygen/html/html/search/defines_4.js +2 -3
  564. package/SVF-doxygen/html/html/search/defines_5.js +4 -4
  565. package/SVF-doxygen/html/html/search/defines_6.js +2 -2
  566. package/SVF-doxygen/html/html/search/defines_7.js +5 -5
  567. package/SVF-doxygen/html/html/search/defines_8.js +11 -13
  568. package/SVF-doxygen/html/html/search/defines_9.js +9 -9
  569. package/SVF-doxygen/html/html/search/defines_a.js +2 -2
  570. package/SVF-doxygen/html/html/search/defines_b.js +1 -1
  571. package/SVF-doxygen/html/html/search/defines_c.js +3 -2
  572. package/SVF-doxygen/html/html/search/defines_d.js +2 -2
  573. package/SVF-doxygen/html/html/search/defines_e.js +6 -6
  574. package/SVF-doxygen/html/html/search/defines_f.js +3 -3
  575. package/SVF-doxygen/html/html/search/enums_0.js +3 -3
  576. package/SVF-doxygen/html/html/search/enums_1.js +2 -2
  577. package/SVF-doxygen/html/html/search/enums_10.js +1 -1
  578. package/SVF-doxygen/html/html/search/enums_11.js +1 -1
  579. package/SVF-doxygen/html/html/search/enums_2.js +8 -8
  580. package/SVF-doxygen/html/html/search/enums_3.js +1 -1
  581. package/SVF-doxygen/html/html/search/enums_4.js +3 -4
  582. package/SVF-doxygen/html/html/search/enums_5.js +1 -1
  583. package/SVF-doxygen/html/html/search/enums_6.js +2 -2
  584. package/SVF-doxygen/html/html/search/enums_7.js +2 -2
  585. package/SVF-doxygen/html/html/search/enums_8.js +4 -4
  586. package/SVF-doxygen/html/html/search/enums_9.js +1 -1
  587. package/SVF-doxygen/html/html/search/enums_a.js +1 -2
  588. package/SVF-doxygen/html/html/search/enums_b.js +7 -7
  589. package/SVF-doxygen/html/html/search/enums_c.js +1 -1
  590. package/SVF-doxygen/html/html/search/enums_d.js +4 -4
  591. package/SVF-doxygen/html/html/search/enums_e.js +2 -2
  592. package/SVF-doxygen/html/html/search/enums_f.js +4 -4
  593. package/SVF-doxygen/html/html/search/enumvalues_0.js +14 -14
  594. package/SVF-doxygen/html/html/search/enumvalues_1.js +14 -14
  595. package/SVF-doxygen/html/html/search/enumvalues_10.js +35 -35
  596. package/SVF-doxygen/html/html/search/enumvalues_11.js +3 -3
  597. package/SVF-doxygen/html/html/search/enumvalues_12.js +10 -10
  598. package/SVF-doxygen/html/html/search/enumvalues_13.js +1 -1
  599. package/SVF-doxygen/html/html/search/enumvalues_14.js +1 -1
  600. package/SVF-doxygen/html/html/search/enumvalues_15.js +3 -3
  601. package/SVF-doxygen/html/html/search/enumvalues_2.js +36 -40
  602. package/SVF-doxygen/html/html/search/enumvalues_3.js +13 -13
  603. package/SVF-doxygen/html/html/search/enumvalues_4.js +2 -34
  604. package/SVF-doxygen/html/html/search/enumvalues_5.js +48 -48
  605. package/SVF-doxygen/html/html/search/enumvalues_6.js +6 -6
  606. package/SVF-doxygen/html/html/search/enumvalues_7.js +9 -9
  607. package/SVF-doxygen/html/html/search/enumvalues_8.js +23 -23
  608. package/SVF-doxygen/html/html/search/enumvalues_9.js +6 -6
  609. package/SVF-doxygen/html/html/search/enumvalues_a.js +15 -17
  610. package/SVF-doxygen/html/html/search/enumvalues_b.js +11 -11
  611. package/SVF-doxygen/html/html/search/enumvalues_c.js +5 -6
  612. package/SVF-doxygen/html/html/search/enumvalues_d.js +18 -18
  613. package/SVF-doxygen/html/html/search/enumvalues_e.js +9 -11
  614. package/SVF-doxygen/html/html/search/enumvalues_f.js +45 -45
  615. package/SVF-doxygen/html/html/search/files_0.js +13 -13
  616. package/SVF-doxygen/html/html/search/files_1.js +7 -7
  617. package/SVF-doxygen/html/html/search/files_10.js +8 -8
  618. package/SVF-doxygen/html/html/search/files_11.js +8 -8
  619. package/SVF-doxygen/html/html/search/files_12.js +2 -2
  620. package/SVF-doxygen/html/html/search/files_2.js +49 -49
  621. package/SVF-doxygen/html/html/search/files_3.js +14 -14
  622. package/SVF-doxygen/html/html/search/files_4.js +5 -4
  623. package/SVF-doxygen/html/html/search/files_5.js +13 -13
  624. package/SVF-doxygen/html/html/search/files_6.js +9 -9
  625. package/SVF-doxygen/html/html/search/files_7.js +14 -14
  626. package/SVF-doxygen/html/html/search/files_8.js +13 -13
  627. package/SVF-doxygen/html/html/search/files_9.js +18 -18
  628. package/SVF-doxygen/html/html/search/files_a.js +3 -3
  629. package/SVF-doxygen/html/html/search/files_b.js +2 -2
  630. package/SVF-doxygen/html/html/search/files_c.js +20 -20
  631. package/SVF-doxygen/html/html/search/files_d.js +4 -4
  632. package/SVF-doxygen/html/html/search/files_e.js +62 -62
  633. package/SVF-doxygen/html/html/search/files_f.js +8 -8
  634. package/SVF-doxygen/html/html/search/functions_0.js +6 -351
  635. package/SVF-doxygen/html/html/search/functions_1.js +348 -81
  636. package/SVF-doxygen/html/html/search/functions_10.js +139 -122
  637. package/SVF-doxygen/html/html/search/functions_11.js +126 -283
  638. package/SVF-doxygen/html/html/search/functions_12.js +273 -55
  639. package/SVF-doxygen/html/html/search/functions_13.js +56 -38
  640. package/SVF-doxygen/html/html/search/functions_14.js +38 -71
  641. package/SVF-doxygen/html/html/search/functions_15.js +71 -29
  642. package/SVF-doxygen/html/html/search/functions_16.js +29 -2
  643. package/SVF-doxygen/html/html/search/functions_17.js +2 -169
  644. package/SVF-doxygen/html/html/search/functions_18.html +30 -0
  645. package/SVF-doxygen/html/html/search/functions_18.js +172 -0
  646. package/SVF-doxygen/html/html/search/functions_2.js +82 -251
  647. package/SVF-doxygen/html/html/search/functions_3.js +251 -71
  648. package/SVF-doxygen/html/html/search/functions_4.js +71 -55
  649. package/SVF-doxygen/html/html/search/functions_5.js +51 -55
  650. package/SVF-doxygen/html/html/search/functions_6.js +58 -832
  651. package/SVF-doxygen/html/html/search/functions_7.js +816 -144
  652. package/SVF-doxygen/html/html/search/functions_8.js +143 -417
  653. package/SVF-doxygen/html/html/search/functions_9.js +425 -29
  654. package/SVF-doxygen/html/html/search/functions_a.js +30 -2
  655. package/SVF-doxygen/html/html/search/functions_b.js +2 -23
  656. package/SVF-doxygen/html/html/search/functions_c.js +24 -75
  657. package/SVF-doxygen/html/html/search/functions_d.js +77 -35
  658. package/SVF-doxygen/html/html/search/functions_e.js +34 -56
  659. package/SVF-doxygen/html/html/search/functions_f.js +56 -143
  660. package/SVF-doxygen/html/html/search/namespaces_0.js +1 -1
  661. package/SVF-doxygen/html/html/search/namespaces_1.js +7 -7
  662. package/SVF-doxygen/html/html/search/related_0.js +2 -2
  663. package/SVF-doxygen/html/html/search/related_1.js +1 -1
  664. package/SVF-doxygen/html/html/search/related_2.js +2 -2
  665. package/SVF-doxygen/html/html/search/related_3.js +2 -2
  666. package/SVF-doxygen/html/html/search/related_4.js +2 -2
  667. package/SVF-doxygen/html/html/search/related_5.js +1 -1
  668. package/SVF-doxygen/html/html/search/related_6.js +2 -2
  669. package/SVF-doxygen/html/html/search/related_7.js +4 -4
  670. package/SVF-doxygen/html/html/search/related_8.js +2 -2
  671. package/SVF-doxygen/html/html/search/related_9.js +4 -4
  672. package/SVF-doxygen/html/html/search/related_a.js +19 -19
  673. package/SVF-doxygen/html/html/search/related_b.js +4 -4
  674. package/SVF-doxygen/html/html/search/related_c.js +1 -1
  675. package/SVF-doxygen/html/html/search/related_d.js +11 -11
  676. package/SVF-doxygen/html/html/search/related_e.js +2 -2
  677. package/SVF-doxygen/html/html/search/related_f.js +2 -2
  678. package/SVF-doxygen/html/html/search/searchdata.js +1 -1
  679. package/SVF-doxygen/html/html/search/typedefs_0.js +18 -18
  680. package/SVF-doxygen/html/html/search/typedefs_1.js +25 -25
  681. package/SVF-doxygen/html/html/search/typedefs_10.js +60 -60
  682. package/SVF-doxygen/html/html/search/typedefs_11.js +13 -13
  683. package/SVF-doxygen/html/html/search/typedefs_12.js +11 -11
  684. package/SVF-doxygen/html/html/search/typedefs_13.js +35 -35
  685. package/SVF-doxygen/html/html/search/typedefs_14.js +8 -8
  686. package/SVF-doxygen/html/html/search/typedefs_2.js +126 -126
  687. package/SVF-doxygen/html/html/search/typedefs_3.js +39 -39
  688. package/SVF-doxygen/html/html/search/typedefs_4.js +16 -16
  689. package/SVF-doxygen/html/html/search/typedefs_5.js +41 -41
  690. package/SVF-doxygen/html/html/search/typedefs_6.js +52 -52
  691. package/SVF-doxygen/html/html/search/typedefs_7.js +40 -40
  692. package/SVF-doxygen/html/html/search/typedefs_8.js +1 -1
  693. package/SVF-doxygen/html/html/search/typedefs_9.js +6 -6
  694. package/SVF-doxygen/html/html/search/typedefs_a.js +29 -29
  695. package/SVF-doxygen/html/html/search/typedefs_b.js +29 -29
  696. package/SVF-doxygen/html/html/search/typedefs_c.js +40 -40
  697. package/SVF-doxygen/html/html/search/typedefs_d.js +15 -15
  698. package/SVF-doxygen/html/html/search/typedefs_e.js +52 -52
  699. package/SVF-doxygen/html/html/search/typedefs_f.js +14 -14
  700. package/SVF-doxygen/html/html/search/variables_0.js +147 -147
  701. package/SVF-doxygen/html/html/search/variables_1.js +75 -74
  702. package/SVF-doxygen/html/html/search/variables_10.js +97 -97
  703. package/SVF-doxygen/html/html/search/variables_11.js +46 -46
  704. package/SVF-doxygen/html/html/search/variables_12.js +92 -93
  705. package/SVF-doxygen/html/html/search/variables_13.js +75 -77
  706. package/SVF-doxygen/html/html/search/variables_14.js +14 -14
  707. package/SVF-doxygen/html/html/search/variables_15.js +48 -48
  708. package/SVF-doxygen/html/html/search/variables_16.js +9 -9
  709. package/SVF-doxygen/html/html/search/variables_17.js +1 -1
  710. package/SVF-doxygen/html/html/search/variables_18.js +2 -2
  711. package/SVF-doxygen/html/html/search/variables_2.js +34 -35
  712. package/SVF-doxygen/html/html/search/variables_3.js +141 -148
  713. package/SVF-doxygen/html/html/search/variables_4.js +55 -56
  714. package/SVF-doxygen/html/html/search/variables_5.js +38 -40
  715. package/SVF-doxygen/html/html/search/variables_6.js +66 -67
  716. package/SVF-doxygen/html/html/search/variables_7.js +33 -33
  717. package/SVF-doxygen/html/html/search/variables_8.js +7 -7
  718. package/SVF-doxygen/html/html/search/variables_9.js +77 -77
  719. package/SVF-doxygen/html/html/search/variables_a.js +4 -4
  720. package/SVF-doxygen/html/html/search/variables_b.js +10 -10
  721. package/SVF-doxygen/html/html/search/variables_c.js +45 -45
  722. package/SVF-doxygen/html/html/search/variables_d.js +56 -56
  723. package/SVF-doxygen/html/html/search/variables_e.js +123 -123
  724. package/SVF-doxygen/html/html/search/variables_f.js +30 -33
  725. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  726. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +2 -2
  727. package/SVF-doxygen/html/html/structSVF_1_1GrammarBase_1_1Symbol.html +2 -2
  728. package/SVF-doxygen/html/html/structSVF_1_1MemRegion_1_1equalMemRegion.html +1 -1
  729. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__iterable.html +1 -1
  730. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__iterable_3_01T_00_01void__t_3_01decltype_07std_1_1begin_07std_1_1dec794949348c8e1e00603fd8633b6dd1f3.html +1 -1
  731. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__map.html +1 -1
  732. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__map_3_01std_1_1map_3_01Ts_8_8_8_01_4_01_4.html +1 -1
  733. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__map_3_01std_1_1unordered__map_3_01Ts_8_8_8_01_4_01_4.html +1 -1
  734. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__sequence__container.html +1 -1
  735. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__sequence__container_3_01std_1_1deque_3_01Ts_8_8_8_01_4_01_4.html +1 -1
  736. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__sequence__container_3_01std_1_1list_3_01Ts_8_8_8_01_4_01_4.html +1 -1
  737. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__sequence__container_3_01std_1_1vector_3_01Ts_8_8_8_01_4_01_4.html +1 -1
  738. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__set.html +1 -1
  739. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__set_3_01std_1_1set_3_01Ts_8_8_8_01_4_01_4.html +1 -1
  740. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__set_3_01std_1_1unordered__set_3_01Ts_8_8_8_01_4_01_4.html +1 -1
  741. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1make__void.html +4 -4
  742. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CallSite_01_4.html +7 -7
  743. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtStmt_01_4.html +1 -1
  744. package/SVF-doxygen/html/html/svf-ex_8cpp.html +3 -3
  745. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +4 -4
  746. package/SVF-doxygen/html/html/svf-llvm_2tools_2MTA_2MTAResultValidator_8h_source.html +9 -9
  747. package/SVF-doxygen/html/html/svf_2include_2MTA_2MTAResultValidator_8h_source.html +9 -9
  748. package/SVF-doxygen/html/html/wpa_8cpp.html +1 -1
  749. package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
  750. package/build.sh +1 -1
  751. package/package.json +1 -1
  752. package/svf/include/AbstractExecution/ConsExeState.h +1 -1
  753. package/svf/include/AbstractExecution/IntervalExeState.h +1 -1
  754. package/svf/include/AbstractExecution/IntervalValue.h +1 -1
  755. package/svf/include/AbstractExecution/SymState.h +1 -1
  756. package/svf/include/CFL/CFGrammar.h +1 -1
  757. package/svf/include/CFL/GrammarBuilder.h +3 -3
  758. package/svf/include/FastCluster/fastcluster.h +4 -4
  759. package/svf/include/Graphs/CHG.h +1 -1
  760. package/svf/include/Graphs/ConsG.h +3 -3
  761. package/svf/include/Graphs/GenericGraph.h +2 -2
  762. package/svf/include/Graphs/GraphTraits.h +1 -1
  763. package/svf/include/Graphs/GraphWriter.h +1 -1
  764. package/svf/include/Graphs/IRGraph.h +1 -1
  765. package/svf/include/Graphs/PTACallGraph.h +1 -1
  766. package/svf/include/Graphs/VFGNode.h +2 -2
  767. package/svf/include/MSSA/MSSAMuChi.h +2 -2
  768. package/svf/include/MSSA/MemRegion.h +1 -1
  769. package/svf/include/MSSA/MemSSA.h +1 -1
  770. package/svf/include/MTA/FSMPTA.h +1 -1
  771. package/svf/include/MTA/MHP.h +1 -1
  772. package/svf/include/MTA/TCT.h +1 -1
  773. package/svf/include/MemoryModel/ConditionalPT.h +1 -1
  774. package/svf/include/MemoryModel/MutablePointsToDS.h +2 -2
  775. package/svf/include/MemoryModel/PersistentPointsToDS.h +1 -1
  776. package/svf/include/MemoryModel/PointerAnalysis.h +1 -1
  777. package/svf/include/MemoryModel/PointsTo.h +1 -1
  778. package/svf/include/SABER/SaberCondAllocator.h +1 -1
  779. package/svf/include/SABER/SrcSnkDDA.h +1 -1
  780. package/svf/include/SVFIR/SVFFileSystem.h +3 -3
  781. package/svf/include/SVFIR/SVFIR.h +1 -1
  782. package/svf/include/SVFIR/SVFModule.h +0 -1
  783. package/svf/include/SVFIR/SVFStatements.h +19 -19
  784. package/svf/include/SVFIR/SVFType.h +5 -5
  785. package/svf/include/SVFIR/SVFValue.h +8 -2
  786. package/svf/include/SVFIR/SVFVariables.h +3 -3
  787. package/svf/include/SVFIR/SymbolTableInfo.h +3 -3
  788. package/svf/include/Util/Casting.h +1 -1
  789. package/svf/include/Util/CoreBitVector.h +2 -2
  790. package/svf/include/Util/DPItem.h +1 -1
  791. package/svf/include/Util/ExtAPI.h +11 -457
  792. package/svf/include/Util/NodeIDAllocator.h +1 -1
  793. package/svf/include/Util/Options.h +1 -1
  794. package/svf/include/Util/SVFBugReport.h +1 -1
  795. package/svf/include/Util/SVFUtil.h +11 -26
  796. package/svf/include/Util/WorkList.h +1 -1
  797. package/svf/include/Util/cJSON.h +1 -1
  798. package/svf/include/WPA/Andersen.h +1 -1
  799. package/svf/include/WPA/FlowSensitive.h +1 -1
  800. package/svf/include/WPA/WPASolver.h +1 -1
  801. package/svf/lib/AbstractExecution/SVFIR2ConsExeState.cpp +1 -1
  802. package/svf/lib/CFL/CFGNormalizer.cpp +2 -2
  803. package/svf/lib/CFL/CFLAlias.cpp +2 -2
  804. package/svf/lib/CFL/CFLGraphBuilder.cpp +2 -2
  805. package/svf/lib/CFL/CFLVF.cpp +1 -1
  806. package/svf/lib/DDA/ContextDDA.cpp +1 -1
  807. package/svf/lib/FastCluster/fastcluster.cpp +3 -3
  808. package/svf/lib/Graphs/ConsG.cpp +1 -1
  809. package/svf/lib/Graphs/SVFGOPT.cpp +2 -2
  810. package/svf/lib/Graphs/VFG.cpp +2 -2
  811. package/svf/lib/MSSA/MemRegion.cpp +1 -1
  812. package/svf/lib/MTA/FSMPTA.cpp +1 -1
  813. package/svf/lib/MTA/LockAnalysis.cpp +1 -1
  814. package/svf/lib/MTA/MHP.cpp +1 -1
  815. package/svf/lib/MemoryModel/AccessPath.cpp +2 -2
  816. package/svf/lib/SABER/ProgSlice.cpp +1 -1
  817. package/svf/lib/SABER/SaberCondAllocator.cpp +1 -1
  818. package/svf/lib/SVFIR/SVFFileSystem.cpp +3 -1
  819. package/svf/lib/SVFIR/SVFIR.cpp +3 -3
  820. package/svf/lib/SVFIR/SVFValue.cpp +5 -5
  821. package/svf/lib/SVFIR/SymbolTableInfo.cpp +2 -2
  822. package/svf/lib/Util/ExtAPI.cpp +36 -595
  823. package/svf/lib/Util/NodeIDAllocator.cpp +2 -2
  824. package/svf/lib/Util/Options.cpp +8 -8
  825. package/svf/lib/Util/SVFBugReport.cpp +0 -2
  826. package/svf/lib/Util/SVFUtil.cpp +2 -2
  827. package/svf/lib/Util/extapi.c +1348 -0
  828. package/svf/lib/WPA/Andersen.cpp +6 -6
  829. package/svf/lib/WPA/VersionedFlowSensitive.cpp +2 -2
  830. package/svf-llvm/CMakeLists.txt +1 -1
  831. package/svf-llvm/include/SVF-LLVM/GEPTypeBridgeIterator.h +1 -1
  832. package/svf-llvm/include/SVF-LLVM/LLVMModule.h +17 -0
  833. package/svf-llvm/include/SVF-LLVM/LLVMUtil.h +14 -1
  834. package/svf-llvm/include/SVF-LLVM/SVFIRBuilder.h +5 -14
  835. package/svf-llvm/include/SVF-LLVM/SymbolTableBuilder.h +1 -1
  836. package/svf-llvm/lib/BreakConstantExpr.cpp +1 -1
  837. package/svf-llvm/lib/ICFGBuilder.cpp +2 -2
  838. package/svf-llvm/lib/LLVMModule.cpp +160 -46
  839. package/svf-llvm/lib/LLVMUtil.cpp +121 -0
  840. package/svf-llvm/lib/SVFIRBuilder.cpp +12 -81
  841. package/svf-llvm/lib/SVFIRExtAPI.cpp +161 -536
  842. package/svf-llvm/lib/SymbolTableBuilder.cpp +2 -2
  843. package/svf-llvm/tools/MTA/MTAResultValidator.cpp +1 -1
  844. package/svf/include/Util/ExtAPI.json +0 -5853
@@ -206,7 +206,7 @@ Additional Inherited Members</h2></td></tr>
206
206
  </table>
207
207
  <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
208
208
  <div class="textblock">
209
- <p class="definition">Definition at line <a class="el" href="SVFValue_8h_source.html#l01005">1005</a> of file <a class="el" href="SVFValue_8h_source.html">SVFValue.h</a>.</p>
209
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8h_source.html#l01011">1011</a> of file <a class="el" href="SVFValue_8h_source.html">SVFValue.h</a>.</p>
210
210
  </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
211
211
  <a id="ac057a29cad0944d1b359e6cd23adcec2"></a>
212
212
  <h2 class="memtitle"><span class="permalink"><a href="#ac057a29cad0944d1b359e6cd23adcec2">&#9670;&nbsp;</a></span>SVFBlackHoleValue() <span class="overload">[1/2]</span></h2>
@@ -232,10 +232,10 @@ Additional Inherited Members</h2></td></tr>
232
232
  </table>
233
233
  </div><div class="memdoc">
234
234
 
235
- <p class="definition">Definition at line <a class="el" href="SVFValue_8h_source.html#l01011">1011</a> of file <a class="el" href="SVFValue_8h_source.html">SVFValue.h</a>.</p>
236
- <div class="fragment"><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160; : <a class="code" href="classSVF_1_1SVFConstantData.html#a057d3aebc842d72d2b89f661d18b6e34">SVFConstantData</a>(ty, <a class="code" href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860eabd75e113e24174dece49fed343d362fa">SVFValue::SVFBlackHole</a>)</div>
237
- <div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160; {</div>
238
- <div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160; }</div>
235
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8h_source.html#l01017">1017</a> of file <a class="el" href="SVFValue_8h_source.html">SVFValue.h</a>.</p>
236
+ <div class="fragment"><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160; : <a class="code" href="classSVF_1_1SVFConstantData.html#a057d3aebc842d72d2b89f661d18b6e34">SVFConstantData</a>(ty, <a class="code" href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860eabd75e113e24174dece49fed343d362fa">SVFValue::SVFBlackHole</a>)</div>
237
+ <div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160; {</div>
238
+ <div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160; }</div>
239
239
  </div><!-- fragment -->
240
240
  </div>
241
241
  </div>
@@ -289,10 +289,10 @@ Additional Inherited Members</h2></td></tr>
289
289
  </table>
290
290
  </div><div class="memdoc">
291
291
 
292
- <p class="definition">Definition at line <a class="el" href="SVFValue_8h_source.html#l01021">1021</a> of file <a class="el" href="SVFValue_8h_source.html">SVFValue.h</a>.</p>
293
- <div class="fragment"><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160; {</div>
294
- <div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160; <span class="keywordflow">return</span> node-&gt;getKind() == <a class="code" href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860eabd75e113e24174dece49fed343d362fa">SVFBlackHole</a>;</div>
295
- <div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160; }</div>
292
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8h_source.html#l01027">1027</a> of file <a class="el" href="SVFValue_8h_source.html">SVFValue.h</a>.</p>
293
+ <div class="fragment"><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160; {</div>
294
+ <div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160; <span class="keywordflow">return</span> node-&gt;getKind() == <a class="code" href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860eabd75e113e24174dece49fed343d362fa">SVFBlackHole</a>;</div>
295
+ <div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; }</div>
296
296
  </div><!-- fragment -->
297
297
  </div>
298
298
  </div>
@@ -320,10 +320,10 @@ Additional Inherited Members</h2></td></tr>
320
320
  </table>
321
321
  </div><div class="memdoc">
322
322
 
323
- <p class="definition">Definition at line <a class="el" href="SVFValue_8h_source.html#l01017">1017</a> of file <a class="el" href="SVFValue_8h_source.html">SVFValue.h</a>.</p>
324
- <div class="fragment"><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160; {</div>
325
- <div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160; <span class="keywordflow">return</span> node-&gt;getKind() == <a class="code" href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860eabd75e113e24174dece49fed343d362fa">SVFBlackHole</a>;</div>
326
- <div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160; }</div>
323
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8h_source.html#l01023">1023</a> of file <a class="el" href="SVFValue_8h_source.html">SVFValue.h</a>.</p>
324
+ <div class="fragment"><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160; {</div>
325
+ <div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160; <span class="keywordflow">return</span> node-&gt;getKind() == <a class="code" href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860eabd75e113e24174dece49fed343d362fa">SVFBlackHole</a>;</div>
326
+ <div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; }</div>
327
327
  </div><!-- fragment -->
328
328
  </div>
329
329
  </div>
@@ -348,7 +348,7 @@ Additional Inherited Members</h2></td></tr>
348
348
  </table>
349
349
  </div><div class="memdoc">
350
350
 
351
- <p class="definition">Definition at line <a class="el" href="SVFValue_8h_source.html#l01008">1008</a> of file <a class="el" href="SVFValue_8h_source.html">SVFValue.h</a>.</p>
351
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8h_source.html#l01014">1014</a> of file <a class="el" href="SVFValue_8h_source.html">SVFValue.h</a>.</p>
352
352
 
353
353
  </div>
354
354
  </div>
@@ -372,7 +372,7 @@ Additional Inherited Members</h2></td></tr>
372
372
  </table>
373
373
  </div><div class="memdoc">
374
374
 
375
- <p class="definition">Definition at line <a class="el" href="SVFValue_8h_source.html#l01007">1007</a> of file <a class="el" href="SVFValue_8h_source.html">SVFValue.h</a>.</p>
375
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8h_source.html#l01013">1013</a> of file <a class="el" href="SVFValue_8h_source.html">SVFValue.h</a>.</p>
376
376
 
377
377
  </div>
378
378
  </div>
@@ -236,48 +236,48 @@ Protected Attributes</h2></td></tr>
236
236
  </table>
237
237
  </div><div class="memdoc">
238
238
 
239
- <p class="definition">Definition at line <a class="el" href="SVFBugReport_8cpp_source.html#l00289">289</a> of file <a class="el" href="SVFBugReport_8cpp_source.html">SVFBugReport.cpp</a>.</p>
240
- <div class="fragment"><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;{</div>
241
- <div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">switch</span>(<a class="code" href="classSVF_1_1SVFBugEvent.html#a7ded0022f3852a08a05c67aeae77162f">getEventType</a>())</div>
239
+ <p class="definition">Definition at line <a class="el" href="SVFBugReport_8cpp_source.html#l00287">287</a> of file <a class="el" href="SVFBugReport_8cpp_source.html">SVFBugReport.cpp</a>.</p>
240
+ <div class="fragment"><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;{</div>
241
+ <div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">switch</span>(<a class="code" href="classSVF_1_1SVFBugEvent.html#a7ded0022f3852a08a05c67aeae77162f">getEventType</a>())</div>
242
+ <div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; {</div>
243
+ <div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3a070acf2c72c74cba55b5acea3db9c854">SVFBugEvent::Branch</a>:</div>
242
244
  <div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; {</div>
243
- <div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3a070acf2c72c74cba55b5acea3db9c854">SVFBugEvent::Branch</a>:</div>
244
- <div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; {</div>
245
- <div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFBugEvent.html#a33496918c5f2adaf48a64f39d9c49567">typeAndInfoFlag</a> &amp; <a class="code" href="SVFBugReport_8h.html#a6c7cd1f1c2372251f51de3a8392faeec">BRANCHFLAGMASK</a>)</div>
246
- <div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; {</div>
247
- <div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;True&quot;</span>;</div>
248
- <div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; }</div>
249
- <div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">else</span></div>
250
- <div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; {</div>
251
- <div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;False&quot;</span>;</div>
252
- <div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; }</div>
253
- <div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">break</span>;</div>
254
- <div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; }</div>
255
- <div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3aa16d1c3d5b68a356288ba49f4aee1629">SVFBugEvent::CallSite</a>:</div>
256
- <div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; {</div>
257
- <div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> description(<span class="stringliteral">&quot;calls &quot;</span>);</div>
258
- <div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *callee = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">SVFUtil::getCallee</a>(<a class="code" href="classSVF_1_1SVFBugEvent.html#ac550e02b8d1d7713c53a29dab5a78c6d">eventInst</a>);</div>
259
- <div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">if</span>(callee == <span class="keyword">nullptr</span>)</div>
260
- <div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; {</div>
261
- <div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; description += <span class="stringliteral">&quot;&lt;unknown&gt;&quot;</span>;</div>
262
- <div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; }</div>
263
- <div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">else</span></div>
264
- <div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; {</div>
265
- <div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; description += callee-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a2401b022638769f59f86ab424a189b6e">getName</a>();</div>
266
- <div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; }</div>
267
- <div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">return</span> description;</div>
268
- <div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">break</span>;</div>
269
- <div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; }</div>
270
- <div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3ace4540f37504bfbfab8451b8823fe999">SVFBugEvent::SourceInst</a>:</div>
271
- <div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; {</div>
272
- <div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;None&quot;</span>;</div>
273
- <div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; }</div>
274
- <div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordflow">default</span>:</div>
275
- <div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; {</div>
276
- <div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;No such type of event!&quot;</span>);</div>
277
- <div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; abort();</div>
278
- <div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; }</div>
279
- <div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; }</div>
280
- <div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;}</div>
245
+ <div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFBugEvent.html#a33496918c5f2adaf48a64f39d9c49567">typeAndInfoFlag</a> &amp; <a class="code" href="SVFBugReport_8h.html#a6c7cd1f1c2372251f51de3a8392faeec">BRANCHFLAGMASK</a>)</div>
246
+ <div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; {</div>
247
+ <div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;True&quot;</span>;</div>
248
+ <div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; }</div>
249
+ <div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">else</span></div>
250
+ <div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; {</div>
251
+ <div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;False&quot;</span>;</div>
252
+ <div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; }</div>
253
+ <div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordflow">break</span>;</div>
254
+ <div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; }</div>
255
+ <div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3aa16d1c3d5b68a356288ba49f4aee1629">SVFBugEvent::CallSite</a>:</div>
256
+ <div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; {</div>
257
+ <div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> description(<span class="stringliteral">&quot;calls &quot;</span>);</div>
258
+ <div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *callee = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">SVFUtil::getCallee</a>(<a class="code" href="classSVF_1_1SVFBugEvent.html#ac550e02b8d1d7713c53a29dab5a78c6d">eventInst</a>);</div>
259
+ <div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">if</span>(callee == <span class="keyword">nullptr</span>)</div>
260
+ <div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; {</div>
261
+ <div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; description += <span class="stringliteral">&quot;&lt;unknown&gt;&quot;</span>;</div>
262
+ <div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; }</div>
263
+ <div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">else</span></div>
264
+ <div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; {</div>
265
+ <div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; description += callee-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a2401b022638769f59f86ab424a189b6e">getName</a>();</div>
266
+ <div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; }</div>
267
+ <div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">return</span> description;</div>
268
+ <div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">break</span>;</div>
269
+ <div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; }</div>
270
+ <div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3ace4540f37504bfbfab8451b8823fe999">SVFBugEvent::SourceInst</a>:</div>
271
+ <div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; {</div>
272
+ <div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;None&quot;</span>;</div>
273
+ <div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; }</div>
274
+ <div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">default</span>:</div>
275
+ <div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; {</div>
276
+ <div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;No such type of event!&quot;</span>);</div>
277
+ <div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; abort();</div>
278
+ <div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; }</div>
279
+ <div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; }</div>
280
+ <div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;}</div>
281
281
  </div><!-- fragment -->
282
282
  </div>
283
283
  </div>
@@ -304,10 +304,10 @@ Protected Attributes</h2></td></tr>
304
304
  </table>
305
305
  </div><div class="memdoc">
306
306
 
307
- <p class="definition">Definition at line <a class="el" href="SVFBugReport_8cpp_source.html#l00284">284</a> of file <a class="el" href="SVFBugReport_8cpp_source.html">SVFBugReport.cpp</a>.</p>
308
- <div class="fragment"><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;{</div>
309
- <div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFBugEvent.html#ac550e02b8d1d7713c53a29dab5a78c6d">eventInst</a>-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a7effb0f37f486745e0cdc3ae5e9c732b">getSourceLoc</a>();</div>
310
- <div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;}</div>
307
+ <p class="definition">Definition at line <a class="el" href="SVFBugReport_8cpp_source.html#l00282">282</a> of file <a class="el" href="SVFBugReport_8cpp_source.html">SVFBugReport.cpp</a>.</p>
308
+ <div class="fragment"><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;{</div>
309
+ <div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFBugEvent.html#ac550e02b8d1d7713c53a29dab5a78c6d">eventInst</a>-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a7effb0f37f486745e0cdc3ae5e9c732b">getSourceLoc</a>();</div>
310
+ <div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;}</div>
311
311
  </div><!-- fragment -->
312
312
  </div>
313
313
  </div>
@@ -364,10 +364,10 @@ Protected Attributes</h2></td></tr>
364
364
  </table>
365
365
  </div><div class="memdoc">
366
366
 
367
- <p class="definition">Definition at line <a class="el" href="SVFBugReport_8cpp_source.html#l00279">279</a> of file <a class="el" href="SVFBugReport_8cpp_source.html">SVFBugReport.cpp</a>.</p>
368
- <div class="fragment"><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;{</div>
369
- <div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFBugEvent.html#ac550e02b8d1d7713c53a29dab5a78c6d">eventInst</a>-&gt;<a class="code" href="classSVF_1_1SVFInstruction.html#aef7ad257ea809101df33779463907f3e">getFunction</a>()-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a2401b022638769f59f86ab424a189b6e">getName</a>();</div>
370
- <div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;}</div>
367
+ <p class="definition">Definition at line <a class="el" href="SVFBugReport_8cpp_source.html#l00277">277</a> of file <a class="el" href="SVFBugReport_8cpp_source.html">SVFBugReport.cpp</a>.</p>
368
+ <div class="fragment"><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;{</div>
369
+ <div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFBugEvent.html#ac550e02b8d1d7713c53a29dab5a78c6d">eventInst</a>-&gt;<a class="code" href="classSVF_1_1SVFInstruction.html#aef7ad257ea809101df33779463907f3e">getFunction</a>()-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a2401b022638769f59f86ab424a189b6e">getName</a>();</div>
370
+ <div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;}</div>
371
371
  </div><!-- fragment -->
372
372
  </div>
373
373
  </div>
@@ -429,7 +429,7 @@ Protected Attributes</h2></td></tr>
429
429
  <div class="ttc" id="aclassSVF_1_1SVFBugEvent_html_ac550e02b8d1d7713c53a29dab5a78c6d"><div class="ttname"><a href="classSVF_1_1SVFBugEvent.html#ac550e02b8d1d7713c53a29dab5a78c6d">SVF::SVFBugEvent::eventInst</a></div><div class="ttdeci">const SVFInstruction * eventInst</div><div class="ttdef"><b>Definition:</b> <a href="SVFBugReport_8h_source.html#l00065">SVFBugReport.h:65</a></div></div>
430
430
  <div class="ttc" id="aclassSVF_1_1SVFBugEvent_html_a33496918c5f2adaf48a64f39d9c49567"><div class="ttname"><a href="classSVF_1_1SVFBugEvent.html#a33496918c5f2adaf48a64f39d9c49567">SVF::SVFBugEvent::typeAndInfoFlag</a></div><div class="ttdeci">u32_t typeAndInfoFlag</div><div class="ttdef"><b>Definition:</b> <a href="SVFBugReport_8h_source.html#l00064">SVFBugReport.h:64</a></div></div>
431
431
  <div class="ttc" id="aclassSVF_1_1SVFBugEvent_html_a4d0c0744525bc445a64176c3808377f3ace4540f37504bfbfab8451b8823fe999"><div class="ttname"><a href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3ace4540f37504bfbfab8451b8823fe999">SVF::SVFBugEvent::SourceInst</a></div><div class="ttdeci">@ SourceInst</div><div class="ttdef"><b>Definition:</b> <a href="SVFBugReport_8h_source.html#l00060">SVFBugReport.h:60</a></div></div>
432
- <div class="ttc" id="aclassSVF_1_1SVFInstruction_html_aef7ad257ea809101df33779463907f3e"><div class="ttname"><a href="classSVF_1_1SVFInstruction.html#aef7ad257ea809101df33779463907f3e">SVF::SVFInstruction::getFunction</a></div><div class="ttdeci">const SVFFunction * getFunction() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00639">SVFValue.h:639</a></div></div>
432
+ <div class="ttc" id="aclassSVF_1_1SVFInstruction_html_aef7ad257ea809101df33779463907f3e"><div class="ttname"><a href="classSVF_1_1SVFInstruction.html#aef7ad257ea809101df33779463907f3e">SVF::SVFInstruction::getFunction</a></div><div class="ttdeci">const SVFFunction * getFunction() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00645">SVFValue.h:645</a></div></div>
433
433
  <div class="ttc" id="aclassSVF_1_1SVFBugEvent_html_a4d0c0744525bc445a64176c3808377f3aa6d697ba9fc671288636733b8f4678a7"><div class="ttname"><a href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3aa6d697ba9fc671288636733b8f4678a7">SVF::SVFBugEvent::Loop</a></div><div class="ttdeci">@ Loop</div><div class="ttdef"><b>Definition:</b> <a href="SVFBugReport_8h_source.html#l00059">SVFBugReport.h:59</a></div></div>
434
434
  <div class="ttc" id="aclassSVF_1_1SVFBugEvent_html_a4d0c0744525bc445a64176c3808377f3af8ef890358aa9e45bc09407fc8cd36b6"><div class="ttname"><a href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3af8ef890358aa9e45bc09407fc8cd36b6">SVF::SVFBugEvent::Caller</a></div><div class="ttdeci">@ Caller</div><div class="ttdef"><b>Definition:</b> <a href="SVFBugReport_8h_source.html#l00057">SVFBugReport.h:57</a></div></div>
435
435
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_a145abbd2958629718fbca41d25c3124d"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">SVF::SVFUtil::getCallee</a></div><div class="ttdeci">const SVFFunction * getCallee(const CallSite cs)</div><div class="ttdoc">Return callee of a callsite. Return null if this is an indirect call.</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00241">SVFUtil.h:241</a></div></div>
@@ -163,13 +163,13 @@ Protected Attributes</h2></td></tr>
163
163
  </table>
164
164
  </div><div class="memdoc">
165
165
 
166
- <p class="definition">Definition at line <a class="el" href="SVFBugReport_8cpp_source.html#l00332">332</a> of file <a class="el" href="SVFBugReport_8cpp_source.html">SVFBugReport.cpp</a>.</p>
167
- <div class="fragment"><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;{</div>
168
- <div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">auto</span> bugIt: <a class="code" href="classSVF_1_1SVFBugReport.html#acacf8d5aa4aab95be34a5a1cb21838b3">bugSet</a>)</div>
169
- <div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; {</div>
170
- <div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keyword">delete</span> bugIt;</div>
171
- <div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; }</div>
172
- <div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;}</div>
166
+ <p class="definition">Definition at line <a class="el" href="SVFBugReport_8cpp_source.html#l00330">330</a> of file <a class="el" href="SVFBugReport_8cpp_source.html">SVFBugReport.cpp</a>.</p>
167
+ <div class="fragment"><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;{</div>
168
+ <div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">auto</span> bugIt: <a class="code" href="classSVF_1_1SVFBugReport.html#acacf8d5aa4aab95be34a5a1cb21838b3">bugSet</a>)</div>
169
+ <div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; {</div>
170
+ <div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keyword">delete</span> bugIt;</div>
171
+ <div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; }</div>
172
+ <div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;}</div>
173
173
  </div><!-- fragment -->
174
174
  </div>
175
175
  </div>
@@ -264,7 +264,7 @@ Protected Attributes</h2></td></tr>
264
264
  <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; }</div>
265
265
  <div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">default</span>:</div>
266
266
  <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; {</div>
267
- <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;Abstract Execution does NOT hava his bug type!&quot;</span>);</div>
267
+ <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;Abstract Execution does NOT have this bug type!&quot;</span>);</div>
268
268
  <div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">break</span>;</div>
269
269
  <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; }</div>
270
270
  <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; }</div>
@@ -378,89 +378,89 @@ Protected Attributes</h2></td></tr>
378
378
  <p>dump single bug to json str and write to file</p>
379
379
  <p>destroy the <a class="el" href="structcJSON.html">cJSON</a> object</p>
380
380
 
381
- <p class="definition">Definition at line <a class="el" href="SVFBugReport_8cpp_source.html#l00340">340</a> of file <a class="el" href="SVFBugReport_8cpp_source.html">SVFBugReport.cpp</a>.</p>
382
- <div class="fragment"><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;{</div>
383
- <div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; std::map&lt;u32_t, std::string&gt; eventType2Str =</div>
384
- <div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; {</div>
385
- <div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; {<a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3aa16d1c3d5b68a356288ba49f4aee1629">SVFBugEvent::CallSite</a>, <span class="stringliteral">&quot;call site&quot;</span>},</div>
386
- <div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; {<a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3af8ef890358aa9e45bc09407fc8cd36b6">SVFBugEvent::Caller</a>, <span class="stringliteral">&quot;caller&quot;</span>},</div>
387
- <div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; {<a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3aa6d697ba9fc671288636733b8f4678a7">SVFBugEvent::Loop</a>, <span class="stringliteral">&quot;loop&quot;</span>},</div>
388
- <div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; {<a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3a070acf2c72c74cba55b5acea3db9c854">SVFBugEvent::Branch</a>, <span class="stringliteral">&quot;branch&quot;</span>}</div>
389
- <div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; };</div>
381
+ <p class="definition">Definition at line <a class="el" href="SVFBugReport_8cpp_source.html#l00338">338</a> of file <a class="el" href="SVFBugReport_8cpp_source.html">SVFBugReport.cpp</a>.</p>
382
+ <div class="fragment"><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;{</div>
383
+ <div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; std::map&lt;u32_t, std::string&gt; eventType2Str =</div>
384
+ <div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; {</div>
385
+ <div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; {<a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3aa16d1c3d5b68a356288ba49f4aee1629">SVFBugEvent::CallSite</a>, <span class="stringliteral">&quot;call site&quot;</span>},</div>
386
+ <div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; {<a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3af8ef890358aa9e45bc09407fc8cd36b6">SVFBugEvent::Caller</a>, <span class="stringliteral">&quot;caller&quot;</span>},</div>
387
+ <div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; {<a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3aa6d697ba9fc671288636733b8f4678a7">SVFBugEvent::Loop</a>, <span class="stringliteral">&quot;loop&quot;</span>},</div>
388
+ <div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; {<a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3a070acf2c72c74cba55b5acea3db9c854">SVFBugEvent::Branch</a>, <span class="stringliteral">&quot;branch&quot;</span>}</div>
389
+ <div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; };</div>
390
+ <div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; </div>
391
+ <div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; ofstream jsonFile(filePath, ios::out);</div>
390
392
  <div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; </div>
391
- <div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; ofstream jsonFile(filePath, ios::out);</div>
393
+ <div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; jsonFile &lt;&lt; <span class="stringliteral">&quot;[&quot;</span>;</div>
392
394
  <div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; </div>
393
- <div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; jsonFile &lt;&lt; <span class="stringliteral">&quot;[&quot;</span>;</div>
394
- <div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; </div>
395
- <div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="keywordtype">size_t</span> commaCounter = <a class="code" href="classSVF_1_1SVFBugReport.html#acacf8d5aa4aab95be34a5a1cb21838b3">bugSet</a>.size() - 1; <span class="comment">// comma num needed</span></div>
396
- <div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">auto</span> bugPtr : <a class="code" href="classSVF_1_1SVFBugReport.html#acacf8d5aa4aab95be34a5a1cb21838b3">bugSet</a>)</div>
397
- <div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; {</div>
398
- <div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *singleBug = cJSON_CreateObject();</div>
399
- <div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; </div>
400
- <div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *bugType = cJSON_CreateString(<a class="code" href="classSVF_1_1GenericBug.html#a5cfadd60fc90ea6cb7b51aa1f292b6a3">GenericBug::BugType2Str</a>.at(bugPtr-&gt;getBugType()).c_str());</div>
401
- <div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; cJSON_AddItemToObject(singleBug, <span class="stringliteral">&quot;DefectType&quot;</span>, bugType);</div>
402
- <div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; </div>
403
- <div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *bugLoc = cJSON_Parse(bugPtr-&gt;getLoc().c_str());</div>
404
- <div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keywordflow">if</span>(bugLoc == <span class="keyword">nullptr</span>)</div>
405
- <div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; {</div>
406
- <div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; bugLoc = cJSON_CreateObject();</div>
407
- <div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; }</div>
408
- <div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; cJSON_AddItemToObject(singleBug, <span class="stringliteral">&quot;Location&quot;</span>, bugLoc);</div>
409
- <div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; </div>
410
- <div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *bugFunction = cJSON_CreateString(bugPtr-&gt;getFuncName().c_str());</div>
411
- <div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; cJSON_AddItemToObject(singleBug, <span class="stringliteral">&quot;Function&quot;</span>, bugFunction);</div>
395
+ <div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordtype">size_t</span> commaCounter = <a class="code" href="classSVF_1_1SVFBugReport.html#acacf8d5aa4aab95be34a5a1cb21838b3">bugSet</a>.size() - 1; <span class="comment">// comma num needed</span></div>
396
+ <div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">auto</span> bugPtr : <a class="code" href="classSVF_1_1SVFBugReport.html#acacf8d5aa4aab95be34a5a1cb21838b3">bugSet</a>)</div>
397
+ <div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; {</div>
398
+ <div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *singleBug = cJSON_CreateObject();</div>
399
+ <div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; </div>
400
+ <div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *bugType = cJSON_CreateString(<a class="code" href="classSVF_1_1GenericBug.html#a5cfadd60fc90ea6cb7b51aa1f292b6a3">GenericBug::BugType2Str</a>.at(bugPtr-&gt;getBugType()).c_str());</div>
401
+ <div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; cJSON_AddItemToObject(singleBug, <span class="stringliteral">&quot;DefectType&quot;</span>, bugType);</div>
402
+ <div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; </div>
403
+ <div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *bugLoc = cJSON_Parse(bugPtr-&gt;getLoc().c_str());</div>
404
+ <div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">if</span>(bugLoc == <span class="keyword">nullptr</span>)</div>
405
+ <div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; {</div>
406
+ <div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; bugLoc = cJSON_CreateObject();</div>
407
+ <div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; }</div>
408
+ <div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; cJSON_AddItemToObject(singleBug, <span class="stringliteral">&quot;Location&quot;</span>, bugLoc);</div>
409
+ <div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; </div>
410
+ <div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *bugFunction = cJSON_CreateString(bugPtr-&gt;getFuncName().c_str());</div>
411
+ <div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; cJSON_AddItemToObject(singleBug, <span class="stringliteral">&quot;Function&quot;</span>, bugFunction);</div>
412
+ <div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; </div>
413
+ <div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; cJSON_AddItemToObject(singleBug, <span class="stringliteral">&quot;Description&quot;</span>, bugPtr-&gt;getBugDescription());</div>
412
414
  <div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; </div>
413
- <div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; cJSON_AddItemToObject(singleBug, <span class="stringliteral">&quot;Description&quot;</span>, bugPtr-&gt;getBugDescription());</div>
414
- <div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; </div>
415
- <div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *eventList = cJSON_CreateArray();</div>
416
- <div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1GenericBug.html#acc65b033bfd61257d5b6fdbf932dfafe">GenericBug::EventStack</a> &amp;bugEventStack = bugPtr-&gt;getEventStack();</div>
417
- <div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1BufferOverflowBug.html#a236e3cf3e81ec4248547b3011323e45f">BufferOverflowBug::classof</a>(bugPtr))</div>
418
- <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; {</div>
419
- <div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="comment">// add only when bug is context sensitive</span></div>
420
- <div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFBugEvent.html">SVFBugEvent</a>&amp;event : bugEventStack)</div>
421
- <div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; {</div>
422
- <div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">if</span> (event.getEventType() == <a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3ace4540f37504bfbfab8451b8823fe999">SVFBugEvent::SourceInst</a>)</div>
423
- <div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; {</div>
424
- <div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">continue</span>;</div>
425
- <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; }</div>
426
- <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; </div>
427
- <div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *singleEvent = cJSON_CreateObject();</div>
428
- <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="comment">//event type</span></div>
429
- <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *eventType = cJSON_CreateString(eventType2Str[event.getEventType()].c_str());</div>
430
- <div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; cJSON_AddItemToObject(singleEvent, <span class="stringliteral">&quot;EventType&quot;</span>, eventType);</div>
431
- <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="comment">//function name</span></div>
432
- <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *eventFunc = cJSON_CreateString(event.getFuncName().c_str());</div>
433
- <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; cJSON_AddItemToObject(singleEvent, <span class="stringliteral">&quot;Function&quot;</span>, eventFunc);</div>
434
- <div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="comment">//event loc</span></div>
435
- <div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *eventLoc = cJSON_Parse(event.getEventLoc().c_str());</div>
436
- <div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">if</span>(eventLoc == <span class="keyword">nullptr</span>)</div>
437
- <div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; {</div>
438
- <div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; eventLoc = cJSON_CreateObject();</div>
439
- <div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; }</div>
440
- <div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; cJSON_AddItemToObject(singleEvent, <span class="stringliteral">&quot;Location&quot;</span>, eventLoc);</div>
441
- <div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="comment">//event description</span></div>
442
- <div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *eventDescription = cJSON_CreateString(event.getEventDescription().c_str());</div>
443
- <div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; cJSON_AddItemToObject(singleEvent, <span class="stringliteral">&quot;Description&quot;</span>, eventDescription);</div>
444
- <div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; </div>
445
- <div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; cJSON_AddItemToArray(eventList, singleEvent);</div>
446
- <div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; }</div>
447
- <div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; }</div>
448
- <div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; cJSON_AddItemToObject(singleBug, <span class="stringliteral">&quot;Events&quot;</span>, eventList);</div>
449
- <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; </div>
450
- <div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordtype">char</span> *singleBugStr = cJSON_Print(singleBug);</div>
451
- <div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; jsonFile &lt;&lt; singleBugStr;</div>
452
- <div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">if</span> (commaCounter != 0)</div>
453
- <div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; {</div>
454
- <div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; jsonFile &lt;&lt; <span class="stringliteral">&quot;,\n&quot;</span>;</div>
455
- <div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; }</div>
456
- <div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; commaCounter --;</div>
457
- <div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; </div>
458
- <div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <a class="code" href="cJSON_8cpp.html#afde5c619f31577b3d821b56b23953c85">cJSON_Delete</a>(singleBug);</div>
459
- <div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; }</div>
460
- <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; </div>
461
- <div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; jsonFile &lt;&lt; <span class="stringliteral">&quot;]&quot;</span>;</div>
462
- <div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; jsonFile.close();</div>
463
- <div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160;}</div>
415
+ <div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *eventList = cJSON_CreateArray();</div>
416
+ <div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1GenericBug.html#acc65b033bfd61257d5b6fdbf932dfafe">GenericBug::EventStack</a> &amp;bugEventStack = bugPtr-&gt;getEventStack();</div>
417
+ <div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1BufferOverflowBug.html#a236e3cf3e81ec4248547b3011323e45f">BufferOverflowBug::classof</a>(bugPtr))</div>
418
+ <div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; {</div>
419
+ <div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="comment">// add only when bug is context sensitive</span></div>
420
+ <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFBugEvent.html">SVFBugEvent</a>&amp;event : bugEventStack)</div>
421
+ <div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; {</div>
422
+ <div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">if</span> (event.getEventType() == <a class="code" href="classSVF_1_1SVFBugEvent.html#a4d0c0744525bc445a64176c3808377f3ace4540f37504bfbfab8451b8823fe999">SVFBugEvent::SourceInst</a>)</div>
423
+ <div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; {</div>
424
+ <div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">continue</span>;</div>
425
+ <div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; }</div>
426
+ <div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; </div>
427
+ <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *singleEvent = cJSON_CreateObject();</div>
428
+ <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="comment">//event type</span></div>
429
+ <div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *eventType = cJSON_CreateString(eventType2Str[event.getEventType()].c_str());</div>
430
+ <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; cJSON_AddItemToObject(singleEvent, <span class="stringliteral">&quot;EventType&quot;</span>, eventType);</div>
431
+ <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="comment">//function name</span></div>
432
+ <div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *eventFunc = cJSON_CreateString(event.getFuncName().c_str());</div>
433
+ <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; cJSON_AddItemToObject(singleEvent, <span class="stringliteral">&quot;Function&quot;</span>, eventFunc);</div>
434
+ <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="comment">//event loc</span></div>
435
+ <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *eventLoc = cJSON_Parse(event.getEventLoc().c_str());</div>
436
+ <div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordflow">if</span>(eventLoc == <span class="keyword">nullptr</span>)</div>
437
+ <div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; {</div>
438
+ <div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; eventLoc = cJSON_CreateObject();</div>
439
+ <div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; }</div>
440
+ <div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; cJSON_AddItemToObject(singleEvent, <span class="stringliteral">&quot;Location&quot;</span>, eventLoc);</div>
441
+ <div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="comment">//event description</span></div>
442
+ <div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <a class="code" href="structcJSON.html">cJSON</a> *eventDescription = cJSON_CreateString(event.getEventDescription().c_str());</div>
443
+ <div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; cJSON_AddItemToObject(singleEvent, <span class="stringliteral">&quot;Description&quot;</span>, eventDescription);</div>
444
+ <div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; </div>
445
+ <div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; cJSON_AddItemToArray(eventList, singleEvent);</div>
446
+ <div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; }</div>
447
+ <div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; }</div>
448
+ <div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; cJSON_AddItemToObject(singleBug, <span class="stringliteral">&quot;Events&quot;</span>, eventList);</div>
449
+ <div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; </div>
450
+ <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordtype">char</span> *singleBugStr = cJSON_Print(singleBug);</div>
451
+ <div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; jsonFile &lt;&lt; singleBugStr;</div>
452
+ <div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">if</span> (commaCounter != 0)</div>
453
+ <div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; {</div>
454
+ <div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; jsonFile &lt;&lt; <span class="stringliteral">&quot;,\n&quot;</span>;</div>
455
+ <div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; }</div>
456
+ <div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; commaCounter --;</div>
457
+ <div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; </div>
458
+ <div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <a class="code" href="cJSON_8cpp.html#afde5c619f31577b3d821b56b23953c85">cJSON_Delete</a>(singleBug);</div>
459
+ <div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; }</div>
460
+ <div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; </div>
461
+ <div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; jsonFile &lt;&lt; <span class="stringliteral">&quot;]&quot;</span>;</div>
462
+ <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; jsonFile.close();</div>
463
+ <div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160;}</div>
464
464
  </div><!-- fragment -->
465
465
  </div>
466
466
  </div>