svf-tools 1.0.758 → 1.0.760

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 (666) hide show
  1. package/CMakeLists.txt +7 -0
  2. package/SVF-doxygen/html/html/AccessPath_8cpp_source.html +2 -2
  3. package/SVF-doxygen/html/html/AddressValue_8h_source.html +1 -1
  4. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +1 -1
  5. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +5 -5
  6. package/SVF-doxygen/html/html/Andersen_8h_source.html +2 -2
  7. package/SVF-doxygen/html/html/CFBasicBlockG_8cpp_source.html +4 -4
  8. package/SVF-doxygen/html/html/CFBasicBlockG_8h_source.html +2 -2
  9. package/SVF-doxygen/html/html/CFGrammar_8cpp_source.html +11 -8
  10. package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +7 -7
  11. package/SVF-doxygen/html/html/CFLAlias_8h_source.html +1 -1
  12. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +17 -17
  13. package/SVF-doxygen/html/html/CHG_8cpp.html +2 -2
  14. package/SVF-doxygen/html/html/CHG_8cpp_source.html +7 -7
  15. package/SVF-doxygen/html/html/CHG_8h_source.html +3 -3
  16. package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +6 -6
  17. package/SVF-doxygen/html/html/CallGraphBuilder_8h_source.html +1 -1
  18. package/SVF-doxygen/html/html/CommandLine_8h_source.html +2 -1
  19. package/SVF-doxygen/html/html/ConsExeState_8cpp_source.html +1 -1
  20. package/SVF-doxygen/html/html/ConsExeState_8h_source.html +1 -1
  21. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +2 -2
  22. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +1 -1
  23. package/SVF-doxygen/html/html/CoreBitVector_8cpp_source.html +1 -1
  24. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +2 -2
  25. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +11 -11
  26. package/SVF-doxygen/html/html/DCHG_8h_source.html +3 -3
  27. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +3 -3
  28. package/SVF-doxygen/html/html/DDAClient_8h_source.html +1 -1
  29. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +1 -1
  30. package/SVF-doxygen/html/html/DDAPass_8h_source.html +1 -1
  31. package/SVF-doxygen/html/html/DPItem_8h_source.html +1 -1
  32. package/SVF-doxygen/html/html/ExeState_8h_source.html +1 -1
  33. package/SVF-doxygen/html/html/ExtAPI_8cpp.html +0 -196
  34. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +121 -786
  35. package/SVF-doxygen/html/html/ExtAPI_8h.html +2 -67
  36. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +69 -654
  37. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +2 -2
  38. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +1 -1
  39. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +1 -1
  40. package/SVF-doxygen/html/html/GenericGraph_8h_source.html +1 -1
  41. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +11 -11
  42. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +2 -2
  43. package/SVF-doxygen/html/html/ICFGEdge_8h_source.html +1 -1
  44. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +4 -4
  45. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +7 -7
  46. package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
  47. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +1 -1
  48. package/SVF-doxygen/html/html/IntervalExeState_8h_source.html +1 -1
  49. package/SVF-doxygen/html/html/IntervalValue_8h_source.html +1 -1
  50. package/SVF-doxygen/html/html/LLVMLoopAnalysis_8cpp_source.html +6 -6
  51. package/SVF-doxygen/html/html/LLVMLoopAnalysis_8h_source.html +1 -1
  52. package/SVF-doxygen/html/html/LLVMModule_8cpp.html +3 -4
  53. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +1408 -1289
  54. package/SVF-doxygen/html/html/LLVMModule_8h.html +1 -0
  55. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +418 -400
  56. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +744 -616
  57. package/SVF-doxygen/html/html/LLVMUtil_8h.html +9 -1
  58. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +485 -472
  59. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
  60. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +14 -14
  61. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +2 -2
  62. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +8 -8
  63. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +5 -5
  64. package/SVF-doxygen/html/html/MHP_8cpp_source.html +14 -14
  65. package/SVF-doxygen/html/html/MHP_8h_source.html +3 -3
  66. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +2 -2
  67. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +5 -5
  68. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +4 -4
  69. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +5 -5
  70. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +7 -7
  71. package/SVF-doxygen/html/html/MTA_8cpp_source.html +4 -4
  72. package/SVF-doxygen/html/html/MTA_8h_source.html +1 -1
  73. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +13 -13
  74. package/SVF-doxygen/html/html/MemRegion_8h_source.html +1 -1
  75. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +20 -20
  76. package/SVF-doxygen/html/html/MemSSA_8h_source.html +1 -1
  77. package/SVF-doxygen/html/html/NumericLiteral_8h_source.html +1 -1
  78. package/SVF-doxygen/html/html/Options_8cpp_source.html +2 -1
  79. package/SVF-doxygen/html/html/PCG_8cpp_source.html +13 -13
  80. package/SVF-doxygen/html/html/PCG_8h_source.html +3 -3
  81. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +2 -2
  82. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +1 -1
  83. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +3 -3
  84. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +12 -12
  85. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +1 -1
  86. package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +1 -1
  87. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +2 -2
  88. package/SVF-doxygen/html/html/ProgSlice_8h_source.html +1 -1
  89. package/SVF-doxygen/html/html/RelExeState_8h_source.html +1 -1
  90. package/SVF-doxygen/html/html/SVFBugReport_8cpp_source.html +362 -365
  91. package/SVF-doxygen/html/html/SVFBugReport_8h_source.html +24 -24
  92. package/SVF-doxygen/html/html/SVFFileSystem_8cpp_source.html +2087 -2084
  93. package/SVF-doxygen/html/html/SVFFileSystem_8h.html +1 -1
  94. package/SVF-doxygen/html/html/SVFFileSystem_8h_source.html +60 -60
  95. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +5 -5
  96. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +2 -2
  97. package/SVF-doxygen/html/html/SVFGReadWrite_8cpp_source.html +1 -1
  98. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +5 -5
  99. package/SVF-doxygen/html/html/SVFIR2ConsExeState_8cpp_source.html +4 -4
  100. package/SVF-doxygen/html/html/SVFIR2ItvExeState_8cpp_source.html +4 -4
  101. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +454 -527
  102. package/SVF-doxygen/html/html/SVFIRBuilder_8h.html +1 -1
  103. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +211 -233
  104. package/SVF-doxygen/html/html/SVFIRExtAPI_8cpp.html +2 -0
  105. package/SVF-doxygen/html/html/SVFIRExtAPI_8cpp_source.html +286 -682
  106. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +2 -2
  107. package/SVF-doxygen/html/html/SVFIR_8h_source.html +1 -1
  108. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +9 -9
  109. package/SVF-doxygen/html/html/SVFModule_8h.html +0 -1
  110. package/SVF-doxygen/html/html/SVFModule_8h_source.html +258 -260
  111. package/SVF-doxygen/html/html/SVFStat_8cpp_source.html +8 -8
  112. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
  113. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +2 -2
  114. package/SVF-doxygen/html/html/SVFType_8h_source.html +1 -1
  115. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +7 -6
  116. package/SVF-doxygen/html/html/SVFUtil_8h.html +4 -9
  117. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +392 -405
  118. package/SVF-doxygen/html/html/SVFValue_8cpp_source.html +11 -10
  119. package/SVF-doxygen/html/html/SVFValue_8h_source.html +1038 -1030
  120. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +1 -1
  121. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
  122. package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +14 -14
  123. package/SVF-doxygen/html/html/SaberCondAllocator_8h_source.html +6 -6
  124. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +1 -1
  125. package/SVF-doxygen/html/html/SparseBitVector_8h_source.html +1 -1
  126. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +1 -1
  127. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
  128. package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +5 -5
  129. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +1 -1
  130. package/SVF-doxygen/html/html/SymState_8cpp_source.html +1 -1
  131. package/SVF-doxygen/html/html/SymState_8h_source.html +1 -1
  132. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +28 -28
  133. package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +1 -1
  134. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +1 -1
  135. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +2 -2
  136. package/SVF-doxygen/html/html/TCT_8cpp_source.html +15 -15
  137. package/SVF-doxygen/html/html/TCT_8h_source.html +7 -7
  138. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +14 -14
  139. package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +5 -5
  140. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +1 -1
  141. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +3 -3
  142. package/SVF-doxygen/html/html/VFGNode_8h_source.html +1 -1
  143. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +2 -2
  144. package/SVF-doxygen/html/html/WPAPass_8h_source.html +1 -1
  145. package/SVF-doxygen/html/html/WTO_8h_source.html +1 -1
  146. package/SVF-doxygen/html/html/annotated.html +1 -4
  147. package/SVF-doxygen/html/html/cJSON_8cpp.html +2 -1
  148. package/SVF-doxygen/html/html/cJSON_8cpp_source.html +2 -1
  149. package/SVF-doxygen/html/html/cfl_8cpp.html +2 -2
  150. package/SVF-doxygen/html/html/cfl_8cpp_source.html +2 -2
  151. package/SVF-doxygen/html/html/classOption.html +2 -1
  152. package/SVF-doxygen/html/html/classSVF_1_1AccessPath.html +2 -2
  153. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +1 -1
  154. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
  155. package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge.html +1 -1
  156. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +1 -1
  157. package/SVF-doxygen/html/html/classSVF_1_1AddressValue.html +1 -1
  158. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +1 -1
  159. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +5 -5
  160. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +1 -1
  161. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +3 -3
  162. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +1 -1
  163. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
  164. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +1 -1
  165. package/SVF-doxygen/html/html/classSVF_1_1BufferOverflowBug.html +50 -50
  166. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockGWTO.html +1 -1
  167. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockGWTOCycle.html +1 -1
  168. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockNode.html +1 -1
  169. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +7 -7
  170. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +18 -18
  171. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +5 -5
  172. package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +1 -1
  173. package/SVF-doxygen/html/html/classSVF_1_1CallCHI.html +1 -1
  174. package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +6 -6
  175. package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +2 -2
  176. package/SVF-doxygen/html/html/classSVF_1_1CallMU.html +1 -1
  177. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
  178. package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +95 -95
  179. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +1 -1
  180. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +1 -1
  181. package/SVF-doxygen/html/html/classSVF_1_1ConsExeState.html +1 -1
  182. package/SVF-doxygen/html/html/classSVF_1_1ContextCond.html +1 -1
  183. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +1 -1
  184. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +1 -1
  185. package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +1 -1
  186. package/SVF-doxygen/html/html/classSVF_1_1CxtDPItem.html +1 -1
  187. package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +1 -1
  188. package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +1 -1
  189. package/SVF-doxygen/html/html/classSVF_1_1CxtThreadStmt.html +1 -1
  190. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +9 -9
  191. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeBug.html +35 -35
  192. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +2 -2
  193. package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +1 -1
  194. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI-members.html +8 -77
  195. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +130 -1337
  196. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +1 -1
  197. package/SVF-doxygen/html/html/classSVF_1_1FileNeverCloseBug.html +10 -10
  198. package/SVF-doxygen/html/html/classSVF_1_1FilePartialCloseBug.html +35 -35
  199. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +12 -12
  200. package/SVF-doxygen/html/html/classSVF_1_1FullNullPtrDereferenceBug.html +10 -10
  201. package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +3 -3
  202. package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +4 -4
  203. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +2 -2
  204. package/SVF-doxygen/html/html/classSVF_1_1GenericBug.html +9 -13
  205. package/SVF-doxygen/html/html/classSVF_1_1GenericGraphReader.html +1 -1
  206. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +1 -1
  207. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +1 -1
  208. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +1 -1
  209. package/SVF-doxygen/html/html/classSVF_1_1GrammarBase.html +11 -8
  210. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +2 -2
  211. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +11 -11
  212. package/SVF-doxygen/html/html/classSVF_1_1ICFGWriter.html +11 -11
  213. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
  214. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  215. package/SVF-doxygen/html/html/classSVF_1_1IntervalExeState.html +1 -1
  216. package/SVF-doxygen/html/html/classSVF_1_1IntervalValue.html +1 -1
  217. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +1 -1
  218. package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +3 -3
  219. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
  220. package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis.html +5 -5
  221. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet-members.html +42 -40
  222. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +1583 -1452
  223. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +4 -4
  224. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +1 -1
  225. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +14 -14
  226. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +8 -8
  227. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +14 -14
  228. package/SVF-doxygen/html/html/classSVF_1_1MHPValidator.html +3 -3
  229. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +13 -13
  230. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +1 -1
  231. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +4 -4
  232. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +6 -6
  233. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +1 -1
  234. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +7 -7
  235. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
  236. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +21 -21
  237. package/SVF-doxygen/html/html/classSVF_1_1NeverFreeBug.html +10 -10
  238. package/SVF-doxygen/html/html/classSVF_1_1NumericLiteral.html +1 -1
  239. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
  240. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +14 -14
  241. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +1 -1
  242. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +1 -1
  243. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +1 -1
  244. package/SVF-doxygen/html/html/classSVF_1_1PartialLeakBug.html +34 -34
  245. package/SVF-doxygen/html/html/classSVF_1_1PartialNullPtrDereferenceBug.html +10 -10
  246. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +1 -1
  247. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +11 -11
  248. package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +1 -1
  249. package/SVF-doxygen/html/html/classSVF_1_1PointsTo_1_1PointsToIterator.html +1 -1
  250. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +2 -2
  251. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +7 -7
  252. package/SVF-doxygen/html/html/classSVF_1_1RaceValidator.html +3 -3
  253. package/SVF-doxygen/html/html/classSVF_1_1ReaderIDToObjMap.html +2 -2
  254. package/SVF-doxygen/html/html/classSVF_1_1ReaderPtrPool.html +2 -2
  255. package/SVF-doxygen/html/html/classSVF_1_1RelExeState.html +1 -1
  256. package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +1 -1
  257. package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +2 -2
  258. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
  259. package/SVF-doxygen/html/html/classSVF_1_1SVFArgument.html +30 -30
  260. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +73 -73
  261. package/SVF-doxygen/html/html/classSVF_1_1SVFBlackHoleValue.html +15 -15
  262. package/SVF-doxygen/html/html/classSVF_1_1SVFBugEvent.html +50 -50
  263. package/SVF-doxygen/html/html/classSVF_1_1SVFBugReport.html +87 -87
  264. package/SVF-doxygen/html/html/classSVF_1_1SVFCallInst.html +67 -67
  265. package/SVF-doxygen/html/html/classSVF_1_1SVFConstant.html +17 -17
  266. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantData.html +23 -23
  267. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantFP.html +21 -21
  268. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantInt.html +27 -27
  269. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantNullPtr.html +15 -15
  270. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction-members.html +15 -13
  271. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +222 -153
  272. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +5 -5
  273. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +5 -5
  274. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +1 -1
  275. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobalValue.html +34 -34
  276. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +2 -2
  277. package/SVF-doxygen/html/html/classSVF_1_1SVFIR2ConsExeState.html +3 -3
  278. package/SVF-doxygen/html/html/classSVF_1_1SVFIR2ItvExeState.html +4 -4
  279. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +64 -73
  280. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +905 -1767
  281. package/SVF-doxygen/html/html/classSVF_1_1SVFIRReader.html +1126 -1124
  282. package/SVF-doxygen/html/html/classSVF_1_1SVFIRWriter.html +547 -546
  283. package/SVF-doxygen/html/html/classSVF_1_1SVFInstruction.html +53 -53
  284. package/SVF-doxygen/html/html/classSVF_1_1SVFLoopAndDomInfo.html +2 -2
  285. package/SVF-doxygen/html/html/classSVF_1_1SVFMetadataAsValue.html +15 -15
  286. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +173 -173
  287. package/SVF-doxygen/html/html/classSVF_1_1SVFModuleReader.html +1 -1
  288. package/SVF-doxygen/html/html/classSVF_1_1SVFModuleWriter.html +23 -23
  289. package/SVF-doxygen/html/html/classSVF_1_1SVFOtherType.html +1 -1
  290. package/SVF-doxygen/html/html/classSVF_1_1SVFOtherValue.html +11 -11
  291. package/SVF-doxygen/html/html/classSVF_1_1SVFStat.html +8 -8
  292. package/SVF-doxygen/html/html/classSVF_1_1SVFStructType.html +1 -1
  293. package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +27 -27
  294. package/SVF-doxygen/html/html/classSVF_1_1SVFVirtualCallInst.html +53 -53
  295. package/SVF-doxygen/html/html/classSVF_1_1SaberCondAllocator.html +13 -13
  296. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +1 -1
  297. package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +1 -1
  298. package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector.html +1 -1
  299. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +5 -5
  300. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +1 -1
  301. package/SVF-doxygen/html/html/classSVF_1_1SymState.html +1 -1
  302. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +27 -27
  303. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfoReader.html +1 -1
  304. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +15 -15
  305. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
  306. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
  307. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +8 -8
  308. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +1 -1
  309. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +5 -5
  310. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +3 -3
  311. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +1 -1
  312. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
  313. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +1 -1
  314. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +1 -1
  315. package/SVF-doxygen/html/html/classSVF_1_1iter__adaptor__base.html +1 -1
  316. package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base_1_1ReferenceProxy.html +1 -1
  317. package/SVF-doxygen/html/html/classSVF_1_1iter__range.html +1 -1
  318. package/SVF-doxygen/html/html/classSVF_1_1mapped__iter.html +1 -1
  319. package/SVF-doxygen/html/html/classSVF_1_1pointer__iterator.html +1 -1
  320. package/SVF-doxygen/html/html/classes.html +335 -338
  321. package/SVF-doxygen/html/html/dda_8cpp.html +1 -1
  322. package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
  323. package/SVF-doxygen/html/html/dir_3bbf4ce25bc1411b817b5643b794c8fb.html +2 -0
  324. package/SVF-doxygen/html/html/extapi_8c.html +1950 -0
  325. package/SVF-doxygen/html/html/extapi_8c_source.html +1488 -0
  326. package/SVF-doxygen/html/html/files.html +29 -28
  327. package/SVF-doxygen/html/html/functions_a.html +17 -27
  328. package/SVF-doxygen/html/html/functions_b.html +9 -12
  329. package/SVF-doxygen/html/html/functions_c.html +26 -70
  330. package/SVF-doxygen/html/html/functions_d.html +3 -7
  331. package/SVF-doxygen/html/html/functions_e.html +4 -121
  332. package/SVF-doxygen/html/html/functions_enum.html +0 -6
  333. package/SVF-doxygen/html/html/functions_eval.html +0 -1
  334. package/SVF-doxygen/html/html/functions_eval_c.html +1 -15
  335. package/SVF-doxygen/html/html/functions_eval_e.html +0 -96
  336. package/SVF-doxygen/html/html/functions_eval_g.html +1 -2
  337. package/SVF-doxygen/html/html/functions_eval_l.html +0 -1
  338. package/SVF-doxygen/html/html/functions_eval_m.html +0 -6
  339. package/SVF-doxygen/html/html/functions_eval_o.html +0 -3
  340. package/SVF-doxygen/html/html/functions_eval_r.html +0 -6
  341. package/SVF-doxygen/html/html/functions_eval_s.html +0 -1
  342. package/SVF-doxygen/html/html/functions_f.html +16 -19
  343. package/SVF-doxygen/html/html/functions_func.html +6 -18
  344. package/SVF-doxygen/html/html/functions_func_e.html +1 -13
  345. package/SVF-doxygen/html/html/functions_func_g.html +24 -91
  346. package/SVF-doxygen/html/html/functions_func_h.html +9 -12
  347. package/SVF-doxygen/html/html/functions_func_i.html +16 -28
  348. package/SVF-doxygen/html/html/functions_func_n.html +0 -3
  349. package/SVF-doxygen/html/html/functions_func_p.html +3 -12
  350. package/SVF-doxygen/html/html/functions_func_s.html +20 -83
  351. package/SVF-doxygen/html/html/functions_g.html +32 -100
  352. package/SVF-doxygen/html/html/functions_h.html +6 -9
  353. package/SVF-doxygen/html/html/functions_i.html +16 -28
  354. package/SVF-doxygen/html/html/functions_l.html +0 -1
  355. package/SVF-doxygen/html/html/functions_m.html +1 -7
  356. package/SVF-doxygen/html/html/functions_n.html +4 -7
  357. package/SVF-doxygen/html/html/functions_o.html +31 -44
  358. package/SVF-doxygen/html/html/functions_p.html +18 -29
  359. package/SVF-doxygen/html/html/functions_r.html +9 -16
  360. package/SVF-doxygen/html/html/functions_s.html +16 -84
  361. package/SVF-doxygen/html/html/functions_t.html +4 -10
  362. package/SVF-doxygen/html/html/functions_v.html +3 -3
  363. package/SVF-doxygen/html/html/functions_vars_a.html +3 -0
  364. package/SVF-doxygen/html/html/functions_vars_b.html +0 -3
  365. package/SVF-doxygen/html/html/functions_vars_c.html +1 -23
  366. package/SVF-doxygen/html/html/functions_vars_d.html +1 -5
  367. package/SVF-doxygen/html/html/functions_vars_e.html +2 -8
  368. package/SVF-doxygen/html/html/functions_vars_f.html +0 -3
  369. package/SVF-doxygen/html/html/functions_vars_o.html +0 -9
  370. package/SVF-doxygen/html/html/functions_vars_r.html +1 -2
  371. package/SVF-doxygen/html/html/functions_vars_s.html +1 -5
  372. package/SVF-doxygen/html/html/functions_vars_t.html +0 -6
  373. package/SVF-doxygen/html/html/globals.html +22 -4
  374. package/SVF-doxygen/html/html/globals_a.html +3 -0
  375. package/SVF-doxygen/html/html/globals_b.html +3 -0
  376. package/SVF-doxygen/html/html/globals_defs.html +3 -9
  377. package/SVF-doxygen/html/html/globals_e.html +0 -3
  378. package/SVF-doxygen/html/html/globals_f.html +11 -2
  379. package/SVF-doxygen/html/html/globals_func.html +159 -15
  380. package/SVF-doxygen/html/html/globals_g.html +13 -4
  381. package/SVF-doxygen/html/html/globals_i.html +41 -2
  382. package/SVF-doxygen/html/html/globals_j.html +3 -6
  383. package/SVF-doxygen/html/html/globals_l.html +3 -0
  384. package/SVF-doxygen/html/html/globals_m.html +8 -2
  385. package/SVF-doxygen/html/html/globals_n.html +2 -1
  386. package/SVF-doxygen/html/html/globals_p.html +1 -4
  387. package/SVF-doxygen/html/html/globals_r.html +12 -6
  388. package/SVF-doxygen/html/html/globals_s.html +33 -0
  389. package/SVF-doxygen/html/html/globals_t.html +3 -0
  390. package/SVF-doxygen/html/html/hierarchy.html +526 -529
  391. package/SVF-doxygen/html/html/iterator_8h_source.html +1 -1
  392. package/SVF-doxygen/html/html/iterator__range_8h_source.html +1 -1
  393. package/SVF-doxygen/html/html/llvm2svf_8cpp.html +1 -1
  394. package/SVF-doxygen/html/html/llvm2svf_8cpp_source.html +1 -1
  395. package/SVF-doxygen/html/html/menudata.js +3 -0
  396. package/SVF-doxygen/html/html/mta_8cpp.html +1 -1
  397. package/SVF-doxygen/html/html/mta_8cpp_source.html +1 -1
  398. package/SVF-doxygen/html/html/namespaceSVF.html +152 -151
  399. package/SVF-doxygen/html/html/namespaceSVF_1_1LLVMUtil.html +1003 -776
  400. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +298 -368
  401. package/SVF-doxygen/html/html/namespacemembers_func_g.html +11 -5
  402. package/SVF-doxygen/html/html/namespacemembers_func_i.html +11 -14
  403. package/SVF-doxygen/html/html/namespacemembers_func_r.html +6 -0
  404. package/SVF-doxygen/html/html/namespacemembers_g.html +11 -5
  405. package/SVF-doxygen/html/html/namespacemembers_i.html +8 -11
  406. package/SVF-doxygen/html/html/namespacemembers_r.html +6 -0
  407. package/SVF-doxygen/html/html/saber_8cpp.html +1 -1
  408. package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -1
  409. package/SVF-doxygen/html/html/search/all_0.js +153 -147
  410. package/SVF-doxygen/html/html/search/all_1.js +476 -478
  411. package/SVF-doxygen/html/html/search/all_10.js +323 -327
  412. package/SVF-doxygen/html/html/search/all_11.js +212 -209
  413. package/SVF-doxygen/html/html/search/all_12.js +536 -547
  414. package/SVF-doxygen/html/html/search/all_13.js +188 -189
  415. package/SVF-doxygen/html/html/search/all_14.js +66 -66
  416. package/SVF-doxygen/html/html/search/all_15.js +170 -170
  417. package/SVF-doxygen/html/html/search/all_16.js +60 -60
  418. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  419. package/SVF-doxygen/html/html/search/all_18.js +1 -1
  420. package/SVF-doxygen/html/html/search/all_19.js +10 -10
  421. package/SVF-doxygen/html/html/search/all_1a.js +169 -169
  422. package/SVF-doxygen/html/html/search/all_2.js +159 -159
  423. package/SVF-doxygen/html/html/search/all_3.js +597 -608
  424. package/SVF-doxygen/html/html/search/all_4.js +226 -227
  425. package/SVF-doxygen/html/html/search/all_5.js +116 -156
  426. package/SVF-doxygen/html/html/search/all_6.js +225 -223
  427. package/SVF-doxygen/html/html/search/all_7.js +996 -1012
  428. package/SVF-doxygen/html/html/search/all_8.js +191 -192
  429. package/SVF-doxygen/html/html/search/all_9.js +605 -597
  430. package/SVF-doxygen/html/html/search/all_a.js +46 -47
  431. package/SVF-doxygen/html/html/search/all_b.js +26 -26
  432. package/SVF-doxygen/html/html/search/all_c.js +114 -113
  433. package/SVF-doxygen/html/html/search/all_d.js +196 -196
  434. package/SVF-doxygen/html/html/search/all_e.js +205 -206
  435. package/SVF-doxygen/html/html/search/all_f.js +116 -122
  436. package/SVF-doxygen/html/html/search/classes_0.js +26 -26
  437. package/SVF-doxygen/html/html/search/classes_1.js +9 -9
  438. package/SVF-doxygen/html/html/search/classes_10.js +73 -73
  439. package/SVF-doxygen/html/html/search/classes_11.js +15 -15
  440. package/SVF-doxygen/html/html/search/classes_12.js +2 -2
  441. package/SVF-doxygen/html/html/search/classes_13.js +10 -10
  442. package/SVF-doxygen/html/html/search/classes_14.js +14 -14
  443. package/SVF-doxygen/html/html/search/classes_15.js +1 -1
  444. package/SVF-doxygen/html/html/search/classes_2.js +76 -76
  445. package/SVF-doxygen/html/html/search/classes_3.js +35 -35
  446. package/SVF-doxygen/html/html/search/classes_4.js +8 -10
  447. package/SVF-doxygen/html/html/search/classes_5.js +28 -28
  448. package/SVF-doxygen/html/html/search/classes_6.js +98 -98
  449. package/SVF-doxygen/html/html/search/classes_7.js +33 -33
  450. package/SVF-doxygen/html/html/search/classes_8.js +56 -56
  451. package/SVF-doxygen/html/html/search/classes_9.js +1 -1
  452. package/SVF-doxygen/html/html/search/classes_a.js +12 -12
  453. package/SVF-doxygen/html/html/search/classes_b.js +29 -29
  454. package/SVF-doxygen/html/html/search/classes_c.js +6 -6
  455. package/SVF-doxygen/html/html/search/classes_d.js +18 -19
  456. package/SVF-doxygen/html/html/search/classes_e.js +36 -36
  457. package/SVF-doxygen/html/html/search/classes_f.js +25 -25
  458. package/SVF-doxygen/html/html/search/defines_0.js +3 -3
  459. package/SVF-doxygen/html/html/search/defines_1.js +2 -2
  460. package/SVF-doxygen/html/html/search/defines_2.js +30 -30
  461. package/SVF-doxygen/html/html/search/defines_3.js +20 -20
  462. package/SVF-doxygen/html/html/search/defines_4.js +2 -3
  463. package/SVF-doxygen/html/html/search/defines_5.js +4 -4
  464. package/SVF-doxygen/html/html/search/defines_6.js +2 -2
  465. package/SVF-doxygen/html/html/search/defines_7.js +5 -5
  466. package/SVF-doxygen/html/html/search/defines_8.js +11 -13
  467. package/SVF-doxygen/html/html/search/defines_9.js +9 -9
  468. package/SVF-doxygen/html/html/search/defines_a.js +2 -2
  469. package/SVF-doxygen/html/html/search/defines_b.js +1 -1
  470. package/SVF-doxygen/html/html/search/defines_c.js +3 -2
  471. package/SVF-doxygen/html/html/search/defines_d.js +2 -2
  472. package/SVF-doxygen/html/html/search/defines_e.js +6 -6
  473. package/SVF-doxygen/html/html/search/defines_f.js +3 -3
  474. package/SVF-doxygen/html/html/search/enums_0.js +3 -3
  475. package/SVF-doxygen/html/html/search/enums_1.js +2 -2
  476. package/SVF-doxygen/html/html/search/enums_10.js +1 -1
  477. package/SVF-doxygen/html/html/search/enums_11.js +1 -1
  478. package/SVF-doxygen/html/html/search/enums_2.js +8 -8
  479. package/SVF-doxygen/html/html/search/enums_3.js +1 -1
  480. package/SVF-doxygen/html/html/search/enums_4.js +3 -4
  481. package/SVF-doxygen/html/html/search/enums_5.js +1 -1
  482. package/SVF-doxygen/html/html/search/enums_6.js +2 -2
  483. package/SVF-doxygen/html/html/search/enums_7.js +2 -2
  484. package/SVF-doxygen/html/html/search/enums_8.js +4 -4
  485. package/SVF-doxygen/html/html/search/enums_9.js +1 -1
  486. package/SVF-doxygen/html/html/search/enums_a.js +1 -2
  487. package/SVF-doxygen/html/html/search/enums_b.js +7 -7
  488. package/SVF-doxygen/html/html/search/enums_c.js +1 -1
  489. package/SVF-doxygen/html/html/search/enums_d.js +4 -4
  490. package/SVF-doxygen/html/html/search/enums_e.js +2 -2
  491. package/SVF-doxygen/html/html/search/enums_f.js +4 -4
  492. package/SVF-doxygen/html/html/search/enumvalues_0.js +14 -14
  493. package/SVF-doxygen/html/html/search/enumvalues_1.js +14 -14
  494. package/SVF-doxygen/html/html/search/enumvalues_10.js +35 -35
  495. package/SVF-doxygen/html/html/search/enumvalues_11.js +3 -3
  496. package/SVF-doxygen/html/html/search/enumvalues_12.js +10 -10
  497. package/SVF-doxygen/html/html/search/enumvalues_13.js +1 -1
  498. package/SVF-doxygen/html/html/search/enumvalues_14.js +1 -1
  499. package/SVF-doxygen/html/html/search/enumvalues_15.js +3 -3
  500. package/SVF-doxygen/html/html/search/enumvalues_2.js +36 -40
  501. package/SVF-doxygen/html/html/search/enumvalues_3.js +13 -13
  502. package/SVF-doxygen/html/html/search/enumvalues_4.js +2 -34
  503. package/SVF-doxygen/html/html/search/enumvalues_5.js +48 -48
  504. package/SVF-doxygen/html/html/search/enumvalues_6.js +6 -6
  505. package/SVF-doxygen/html/html/search/enumvalues_7.js +9 -9
  506. package/SVF-doxygen/html/html/search/enumvalues_8.js +23 -23
  507. package/SVF-doxygen/html/html/search/enumvalues_9.js +6 -6
  508. package/SVF-doxygen/html/html/search/enumvalues_a.js +15 -17
  509. package/SVF-doxygen/html/html/search/enumvalues_b.js +11 -11
  510. package/SVF-doxygen/html/html/search/enumvalues_c.js +5 -6
  511. package/SVF-doxygen/html/html/search/enumvalues_d.js +18 -18
  512. package/SVF-doxygen/html/html/search/enumvalues_e.js +9 -11
  513. package/SVF-doxygen/html/html/search/enumvalues_f.js +45 -45
  514. package/SVF-doxygen/html/html/search/files_0.js +13 -13
  515. package/SVF-doxygen/html/html/search/files_1.js +7 -7
  516. package/SVF-doxygen/html/html/search/files_10.js +8 -8
  517. package/SVF-doxygen/html/html/search/files_11.js +8 -8
  518. package/SVF-doxygen/html/html/search/files_12.js +2 -2
  519. package/SVF-doxygen/html/html/search/files_2.js +49 -49
  520. package/SVF-doxygen/html/html/search/files_3.js +14 -14
  521. package/SVF-doxygen/html/html/search/files_4.js +5 -4
  522. package/SVF-doxygen/html/html/search/files_5.js +13 -13
  523. package/SVF-doxygen/html/html/search/files_6.js +9 -9
  524. package/SVF-doxygen/html/html/search/files_7.js +14 -14
  525. package/SVF-doxygen/html/html/search/files_8.js +13 -13
  526. package/SVF-doxygen/html/html/search/files_9.js +18 -18
  527. package/SVF-doxygen/html/html/search/files_a.js +3 -3
  528. package/SVF-doxygen/html/html/search/files_b.js +2 -2
  529. package/SVF-doxygen/html/html/search/files_c.js +20 -20
  530. package/SVF-doxygen/html/html/search/files_d.js +4 -4
  531. package/SVF-doxygen/html/html/search/files_e.js +62 -62
  532. package/SVF-doxygen/html/html/search/files_f.js +8 -8
  533. package/SVF-doxygen/html/html/search/functions_0.js +6 -351
  534. package/SVF-doxygen/html/html/search/functions_1.js +348 -81
  535. package/SVF-doxygen/html/html/search/functions_10.js +139 -122
  536. package/SVF-doxygen/html/html/search/functions_11.js +126 -283
  537. package/SVF-doxygen/html/html/search/functions_12.js +273 -55
  538. package/SVF-doxygen/html/html/search/functions_13.js +56 -38
  539. package/SVF-doxygen/html/html/search/functions_14.js +38 -71
  540. package/SVF-doxygen/html/html/search/functions_15.js +71 -29
  541. package/SVF-doxygen/html/html/search/functions_16.js +29 -2
  542. package/SVF-doxygen/html/html/search/functions_17.js +2 -169
  543. package/SVF-doxygen/html/html/search/functions_18.html +30 -0
  544. package/SVF-doxygen/html/html/search/functions_18.js +172 -0
  545. package/SVF-doxygen/html/html/search/functions_2.js +82 -251
  546. package/SVF-doxygen/html/html/search/functions_3.js +251 -71
  547. package/SVF-doxygen/html/html/search/functions_4.js +71 -55
  548. package/SVF-doxygen/html/html/search/functions_5.js +51 -55
  549. package/SVF-doxygen/html/html/search/functions_6.js +58 -832
  550. package/SVF-doxygen/html/html/search/functions_7.js +816 -144
  551. package/SVF-doxygen/html/html/search/functions_8.js +143 -417
  552. package/SVF-doxygen/html/html/search/functions_9.js +425 -29
  553. package/SVF-doxygen/html/html/search/functions_a.js +30 -2
  554. package/SVF-doxygen/html/html/search/functions_b.js +2 -23
  555. package/SVF-doxygen/html/html/search/functions_c.js +24 -75
  556. package/SVF-doxygen/html/html/search/functions_d.js +77 -35
  557. package/SVF-doxygen/html/html/search/functions_e.js +34 -56
  558. package/SVF-doxygen/html/html/search/functions_f.js +56 -143
  559. package/SVF-doxygen/html/html/search/namespaces_0.js +1 -1
  560. package/SVF-doxygen/html/html/search/namespaces_1.js +7 -7
  561. package/SVF-doxygen/html/html/search/related_0.js +2 -2
  562. package/SVF-doxygen/html/html/search/related_1.js +1 -1
  563. package/SVF-doxygen/html/html/search/related_2.js +2 -2
  564. package/SVF-doxygen/html/html/search/related_3.js +2 -2
  565. package/SVF-doxygen/html/html/search/related_4.js +2 -2
  566. package/SVF-doxygen/html/html/search/related_5.js +1 -1
  567. package/SVF-doxygen/html/html/search/related_6.js +2 -2
  568. package/SVF-doxygen/html/html/search/related_7.js +4 -4
  569. package/SVF-doxygen/html/html/search/related_8.js +2 -2
  570. package/SVF-doxygen/html/html/search/related_9.js +4 -4
  571. package/SVF-doxygen/html/html/search/related_a.js +19 -19
  572. package/SVF-doxygen/html/html/search/related_b.js +4 -4
  573. package/SVF-doxygen/html/html/search/related_c.js +1 -1
  574. package/SVF-doxygen/html/html/search/related_d.js +11 -11
  575. package/SVF-doxygen/html/html/search/related_e.js +2 -2
  576. package/SVF-doxygen/html/html/search/related_f.js +2 -2
  577. package/SVF-doxygen/html/html/search/searchdata.js +1 -1
  578. package/SVF-doxygen/html/html/search/typedefs_0.js +18 -18
  579. package/SVF-doxygen/html/html/search/typedefs_1.js +25 -25
  580. package/SVF-doxygen/html/html/search/typedefs_10.js +60 -60
  581. package/SVF-doxygen/html/html/search/typedefs_11.js +13 -13
  582. package/SVF-doxygen/html/html/search/typedefs_12.js +11 -11
  583. package/SVF-doxygen/html/html/search/typedefs_13.js +35 -35
  584. package/SVF-doxygen/html/html/search/typedefs_14.js +8 -8
  585. package/SVF-doxygen/html/html/search/typedefs_2.js +126 -126
  586. package/SVF-doxygen/html/html/search/typedefs_3.js +39 -39
  587. package/SVF-doxygen/html/html/search/typedefs_4.js +16 -16
  588. package/SVF-doxygen/html/html/search/typedefs_5.js +41 -41
  589. package/SVF-doxygen/html/html/search/typedefs_6.js +52 -52
  590. package/SVF-doxygen/html/html/search/typedefs_7.js +40 -40
  591. package/SVF-doxygen/html/html/search/typedefs_8.js +1 -1
  592. package/SVF-doxygen/html/html/search/typedefs_9.js +6 -6
  593. package/SVF-doxygen/html/html/search/typedefs_a.js +29 -29
  594. package/SVF-doxygen/html/html/search/typedefs_b.js +29 -29
  595. package/SVF-doxygen/html/html/search/typedefs_c.js +40 -40
  596. package/SVF-doxygen/html/html/search/typedefs_d.js +15 -15
  597. package/SVF-doxygen/html/html/search/typedefs_e.js +52 -52
  598. package/SVF-doxygen/html/html/search/typedefs_f.js +14 -14
  599. package/SVF-doxygen/html/html/search/variables_0.js +147 -147
  600. package/SVF-doxygen/html/html/search/variables_1.js +75 -74
  601. package/SVF-doxygen/html/html/search/variables_10.js +97 -97
  602. package/SVF-doxygen/html/html/search/variables_11.js +46 -46
  603. package/SVF-doxygen/html/html/search/variables_12.js +92 -93
  604. package/SVF-doxygen/html/html/search/variables_13.js +75 -77
  605. package/SVF-doxygen/html/html/search/variables_14.js +14 -14
  606. package/SVF-doxygen/html/html/search/variables_15.js +48 -48
  607. package/SVF-doxygen/html/html/search/variables_16.js +9 -9
  608. package/SVF-doxygen/html/html/search/variables_17.js +1 -1
  609. package/SVF-doxygen/html/html/search/variables_18.js +2 -2
  610. package/SVF-doxygen/html/html/search/variables_2.js +34 -35
  611. package/SVF-doxygen/html/html/search/variables_3.js +141 -148
  612. package/SVF-doxygen/html/html/search/variables_4.js +55 -56
  613. package/SVF-doxygen/html/html/search/variables_5.js +38 -40
  614. package/SVF-doxygen/html/html/search/variables_6.js +66 -67
  615. package/SVF-doxygen/html/html/search/variables_7.js +33 -33
  616. package/SVF-doxygen/html/html/search/variables_8.js +7 -7
  617. package/SVF-doxygen/html/html/search/variables_9.js +77 -77
  618. package/SVF-doxygen/html/html/search/variables_a.js +4 -4
  619. package/SVF-doxygen/html/html/search/variables_b.js +10 -10
  620. package/SVF-doxygen/html/html/search/variables_c.js +45 -45
  621. package/SVF-doxygen/html/html/search/variables_d.js +56 -56
  622. package/SVF-doxygen/html/html/search/variables_e.js +123 -123
  623. package/SVF-doxygen/html/html/search/variables_f.js +30 -33
  624. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  625. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +1 -1
  626. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__iterable.html +1 -1
  627. 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
  628. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__map.html +1 -1
  629. 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
  630. 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
  631. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__sequence__container.html +1 -1
  632. 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
  633. 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
  634. 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
  635. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1is__set.html +1 -1
  636. 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
  637. 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
  638. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1make__void.html +2 -2
  639. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CallSite_01_4.html +7 -7
  640. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtStmt_01_4.html +1 -1
  641. package/SVF-doxygen/html/html/svf-ex_8cpp.html +3 -3
  642. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +4 -4
  643. package/SVF-doxygen/html/html/svf-llvm_2tools_2MTA_2MTAResultValidator_8h_source.html +9 -9
  644. package/SVF-doxygen/html/html/svf_2include_2MTA_2MTAResultValidator_8h_source.html +9 -9
  645. package/SVF-doxygen/html/html/wpa_8cpp.html +1 -1
  646. package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
  647. package/build.sh +1 -1
  648. package/package.json +1 -1
  649. package/svf/include/SVFIR/SVFModule.h +0 -1
  650. package/svf/include/SVFIR/SVFValue.h +7 -1
  651. package/svf/include/Util/ExtAPI.h +11 -457
  652. package/svf/include/Util/SVFUtil.h +7 -22
  653. package/svf/lib/SVFIR/SVFFileSystem.cpp +3 -1
  654. package/svf/lib/SVFIR/SVFValue.cpp +2 -2
  655. package/svf/lib/Util/ExtAPI.cpp +36 -595
  656. package/svf/lib/Util/Options.cpp +1 -1
  657. package/svf/lib/Util/SVFBugReport.cpp +0 -2
  658. package/svf-llvm/include/SVF-LLVM/LLVMModule.h +17 -0
  659. package/svf-llvm/include/SVF-LLVM/LLVMUtil.h +14 -1
  660. package/svf-llvm/include/SVF-LLVM/SVFIRBuilder.h +5 -14
  661. package/svf-llvm/lib/LLVMModule.cpp +157 -43
  662. package/svf-llvm/lib/LLVMUtil.cpp +121 -0
  663. package/svf-llvm/lib/SVFIRBuilder.cpp +7 -76
  664. package/svf-llvm/lib/SVFIRExtAPI.cpp +161 -536
  665. package/svf-llvm/lib/extapi.c +1348 -0
  666. package/svf/include/Util/ExtAPI.json +0 -5853
@@ -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>
@@ -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>