svf-tools 1.0.301 → 1.0.305

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 (453) hide show
  1. package/SVF-doxygen/html/html/AbstractPointsToDS_8h_source.html +1 -1
  2. package/SVF-doxygen/html/html/AndersenLCD_8cpp_source.html +3 -3
  3. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +4 -4
  4. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +3 -3
  5. package/SVF-doxygen/html/html/AndersenSFR_8h_source.html +4 -4
  6. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +12 -12
  7. package/SVF-doxygen/html/html/AndersenWaveDiffWithType_8cpp_source.html +4 -4
  8. package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +2 -2
  9. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +20 -20
  10. package/SVF-doxygen/html/html/Andersen_8h_source.html +15 -15
  11. package/SVF-doxygen/html/html/BasicTypes_8h_source.html +6 -6
  12. package/SVF-doxygen/html/html/CHG_8cpp.html +7 -6
  13. package/SVF-doxygen/html/html/CHG_8cpp_source.html +42 -41
  14. package/SVF-doxygen/html/html/CHG_8h_source.html +2 -2
  15. package/SVF-doxygen/html/html/CSC_8cpp_source.html +2 -2
  16. package/SVF-doxygen/html/html/CSC_8h_source.html +3 -3
  17. package/SVF-doxygen/html/html/CommonCHG_8h_source.html +1 -1
  18. package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +2 -2
  19. package/SVF-doxygen/html/html/Conditions_8cpp_source.html +2 -2
  20. package/SVF-doxygen/html/html/Conditions_8h_source.html +2 -2
  21. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +1 -1
  22. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +2 -2
  23. package/SVF-doxygen/html/html/ConsG_8h_source.html +2 -2
  24. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +9 -9
  25. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +3 -3
  26. package/SVF-doxygen/html/html/CoreBitVector_8h.html +2 -0
  27. package/SVF-doxygen/html/html/CoreBitVector_8h_source.html +3 -1
  28. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +1 -1
  29. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +5 -5
  30. package/SVF-doxygen/html/html/DCHG_8h_source.html +4 -4
  31. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +5 -5
  32. package/SVF-doxygen/html/html/DDAClient_8h_source.html +3 -3
  33. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +11 -11
  34. package/SVF-doxygen/html/html/DDAPass_8h_source.html +1 -1
  35. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +8 -8
  36. package/SVF-doxygen/html/html/DDAStat_8h_source.html +2 -2
  37. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +8 -8
  38. package/SVF-doxygen/html/html/DPItem_8h_source.html +1 -1
  39. package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +1 -1
  40. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +2 -2
  41. package/SVF-doxygen/html/html/ExternalPAG_8cpp_source.html +3 -3
  42. package/SVF-doxygen/html/html/ExternalPAG_8h_source.html +3 -3
  43. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +8 -8
  44. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +3 -3
  45. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +5 -5
  46. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +2 -2
  47. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +5 -5
  48. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +8 -8
  49. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +3 -3
  50. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +16 -16
  51. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +4 -4
  52. package/SVF-doxygen/html/html/GenericGraph_8h_source.html +2 -2
  53. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
  54. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +1 -1
  55. package/SVF-doxygen/html/html/ICFGStat_8h_source.html +2 -2
  56. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +3 -3
  57. package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
  58. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +3 -3
  59. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +1 -1
  60. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +1 -1
  61. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +1 -1
  62. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
  63. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +2 -2
  64. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +3 -3
  65. package/SVF-doxygen/html/html/LocationSet_8h_source.html +2 -2
  66. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +8 -8
  67. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +6 -6
  68. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +2 -2
  69. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +3 -3
  70. package/SVF-doxygen/html/html/MHP_8cpp_source.html +12 -12
  71. package/SVF-doxygen/html/html/MHP_8h_source.html +4 -4
  72. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +1 -1
  73. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +4 -4
  74. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +1 -1
  75. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +5 -5
  76. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +3 -3
  77. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +5 -5
  78. package/SVF-doxygen/html/html/MTAStat_8h_source.html +1 -1
  79. package/SVF-doxygen/html/html/MTA_8cpp_source.html +7 -7
  80. package/SVF-doxygen/html/html/MTA_8h_source.html +2 -2
  81. package/SVF-doxygen/html/html/MemModel_8h_source.html +1 -1
  82. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
  83. package/SVF-doxygen/html/html/MemPartition_8h_source.html +3 -3
  84. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +5 -5
  85. package/SVF-doxygen/html/html/MemRegion_8h_source.html +4 -4
  86. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +7 -7
  87. package/SVF-doxygen/html/html/MemSSA_8h_source.html +2 -2
  88. package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +2 -2
  89. package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +11 -11
  90. package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +2 -2
  91. package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +2 -2
  92. package/SVF-doxygen/html/html/OfflineConsG_8h_source.html +2 -2
  93. package/SVF-doxygen/html/html/Options_8cpp_source.html +112 -110
  94. package/SVF-doxygen/html/html/Options_8h.html +1 -0
  95. package/SVF-doxygen/html/html/Options_8h_source.html +114 -111
  96. package/SVF-doxygen/html/html/PAGBuilder_8cpp_source.html +3 -3
  97. package/SVF-doxygen/html/html/PAGEdge_8h_source.html +1 -1
  98. package/SVF-doxygen/html/html/PAG_8cpp_source.html +6 -6
  99. package/SVF-doxygen/html/html/PAG_8h_source.html +5 -5
  100. package/SVF-doxygen/html/html/PCG_8cpp_source.html +3 -3
  101. package/SVF-doxygen/html/html/PCG_8h_source.html +1 -1
  102. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +2 -2
  103. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +3 -3
  104. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +20 -18
  105. package/SVF-doxygen/html/html/PTAStat_8h_source.html +19 -17
  106. package/SVF-doxygen/html/html/PTAType_8h_source.html +4 -4
  107. package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +5 -5
  108. package/SVF-doxygen/html/html/PathCondAllocator_8h_source.html +3 -3
  109. package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +2 -2
  110. package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +2 -2
  111. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +5 -5
  112. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +4 -4
  113. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +19 -19
  114. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +5 -5
  115. package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +4 -5
  116. package/SVF-doxygen/html/html/PointsTo_8h_source.html +2 -2
  117. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +4 -4
  118. package/SVF-doxygen/html/html/ProgSlice_8h_source.html +2 -2
  119. package/SVF-doxygen/html/html/SCC_8h_source.html +3 -3
  120. package/SVF-doxygen/html/html/SVFBasicTypes_8h.html +32 -26
  121. package/SVF-doxygen/html/html/SVFBasicTypes_8h_source.html +52 -49
  122. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +6 -6
  123. package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +2 -2
  124. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +3 -3
  125. package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +7 -7
  126. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +3 -3
  127. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +11 -11
  128. package/SVF-doxygen/html/html/SVFGStat_8h_source.html +5 -5
  129. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +4 -4
  130. package/SVF-doxygen/html/html/SVFG_8h_source.html +2 -2
  131. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +2 -2
  132. package/SVF-doxygen/html/html/SVFModule_8h_source.html +1 -1
  133. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +2 -2
  134. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +3 -3
  135. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
  136. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +4 -4
  137. package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +2 -2
  138. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +8 -8
  139. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +3 -3
  140. package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +1 -1
  141. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +2 -2
  142. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +4 -4
  143. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +2 -2
  144. package/SVF-doxygen/html/html/TCT_8cpp_source.html +5 -5
  145. package/SVF-doxygen/html/html/TCT_8h_source.html +4 -4
  146. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +1 -1
  147. package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +1 -1
  148. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +3 -3
  149. package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +2 -2
  150. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +1 -1
  151. package/SVF-doxygen/html/html/TypeAnalysis_8h_source.html +1 -1
  152. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +2 -2
  153. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +2 -2
  154. package/SVF-doxygen/html/html/VFGNode_8h_source.html +2 -2
  155. package/SVF-doxygen/html/html/VFG_8cpp_source.html +3 -3
  156. package/SVF-doxygen/html/html/VFG_8h_source.html +3 -3
  157. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +10 -8
  158. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp.html +3 -0
  159. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +79 -67
  160. package/SVF-doxygen/html/html/VersionedFlowSensitive_8h.html +3 -2
  161. package/SVF-doxygen/html/html/VersionedFlowSensitive_8h_source.html +78 -69
  162. package/SVF-doxygen/html/html/WPAFSSolver_8h_source.html +8 -8
  163. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +5 -5
  164. package/SVF-doxygen/html/html/WPASolver_8h_source.html +24 -24
  165. package/SVF-doxygen/html/html/WPAStat_8h_source.html +1 -1
  166. package/SVF-doxygen/html/html/WorkList_8h_source.html +1 -1
  167. package/SVF-doxygen/html/html/annotated.html +189 -186
  168. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +1 -1
  169. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
  170. package/SVF-doxygen/html/html/classSVF_1_1AddrPE.html +1 -1
  171. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +33 -33
  172. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +14 -14
  173. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +3 -3
  174. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +8 -8
  175. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +19 -19
  176. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +5 -5
  177. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat-members.html +10 -7
  178. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +19 -15
  179. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +10 -10
  180. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiffWithType.html +4 -4
  181. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +7 -7
  182. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPPE.html +1 -1
  183. package/SVF-doxygen/html/html/classSVF_1_1BranchCondManager.html +4 -4
  184. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +91 -91
  185. package/SVF-doxygen/html/html/classSVF_1_1CHNode.html +2 -2
  186. package/SVF-doxygen/html/html/classSVF_1_1CSC.html +3 -3
  187. package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode.html +1 -1
  188. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
  189. package/SVF-doxygen/html/html/classSVF_1_1CmpPE.html +1 -1
  190. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +1 -1
  191. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +17 -17
  192. package/SVF-doxygen/html/html/classSVF_1_1CopyPE.html +1 -1
  193. package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +1 -1
  194. package/SVF-doxygen/html/html/classSVF_1_1CxtThreadProc.html +1 -1
  195. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +7 -7
  196. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +3 -3
  197. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +11 -11
  198. package/SVF-doxygen/html/html/classSVF_1_1DDAStat-members.html +5 -2
  199. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +14 -10
  200. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +27 -27
  201. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +3 -3
  202. package/SVF-doxygen/html/html/classSVF_1_1ExternalPAG.html +4 -4
  203. package/SVF-doxygen/html/html/classSVF_1_1FIObjPN.html +1 -1
  204. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +14 -14
  205. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +53 -53
  206. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat-members.html +5 -2
  207. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +17 -13
  208. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +24 -24
  209. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +13 -13
  210. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +1 -1
  211. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +1 -1
  212. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +1 -1
  213. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +1 -1
  214. package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode.html +1 -1
  215. package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode.html +1 -1
  216. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +1 -1
  217. package/SVF-doxygen/html/html/classSVF_1_1GepObjPN.html +1 -1
  218. package/SVF-doxygen/html/html/classSVF_1_1GepPE.html +1 -1
  219. package/SVF-doxygen/html/html/classSVF_1_1GepValPN.html +1 -1
  220. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +2 -2
  221. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat-members.html +5 -2
  222. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.html +7 -3
  223. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +1 -1
  224. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
  225. package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode.html +1 -1
  226. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +3 -3
  227. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +1 -1
  228. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +8 -8
  229. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +3 -3
  230. package/SVF-doxygen/html/html/classSVF_1_1LoadPE.html +1 -1
  231. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +3 -3
  232. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +36 -36
  233. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +3 -3
  234. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +31 -31
  235. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +20 -20
  236. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +1 -1
  237. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +9 -9
  238. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +9 -9
  239. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +12 -12
  240. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +18 -18
  241. package/SVF-doxygen/html/html/classSVF_1_1MTAStat-members.html +6 -3
  242. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +17 -13
  243. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +2 -2
  244. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +19 -19
  245. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat-members.html +5 -2
  246. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +12 -8
  247. package/SVF-doxygen/html/html/classSVF_1_1MutableDFPTData.html +1 -1
  248. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator.html +1 -1
  249. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +17 -17
  250. package/SVF-doxygen/html/html/classSVF_1_1NormalGepPE.html +1 -1
  251. package/SVF-doxygen/html/html/classSVF_1_1ObjPN.html +1 -1
  252. package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +2 -2
  253. package/SVF-doxygen/html/html/classSVF_1_1Options-members.html +102 -100
  254. package/SVF-doxygen/html/html/classSVF_1_1Options.html +166 -111
  255. package/SVF-doxygen/html/html/classSVF_1_1PAG.html +6 -6
  256. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilder.html +29 -29
  257. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +3 -3
  258. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +2 -2
  259. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +2 -2
  260. package/SVF-doxygen/html/html/classSVF_1_1PTAStat-members.html +6 -3
  261. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +87 -56
  262. package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +8 -8
  263. package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +3 -3
  264. package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +3 -3
  265. package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +6 -6
  266. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +6 -6
  267. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +23 -23
  268. package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +7 -7
  269. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +5 -5
  270. package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode.html +1 -1
  271. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
  272. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +2 -2
  273. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +4 -4
  274. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +6 -6
  275. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +8 -8
  276. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +12 -12
  277. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat-members.html +11 -8
  278. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +40 -36
  279. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobal.html +2 -2
  280. package/SVF-doxygen/html/html/classSVF_1_1SVFInstruction.html +2 -2
  281. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +2 -2
  282. package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +33 -33
  283. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +4 -4
  284. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +14 -14
  285. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +5 -5
  286. package/SVF-doxygen/html/html/classSVF_1_1StorePE.html +1 -1
  287. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +17 -17
  288. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +16 -16
  289. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
  290. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
  291. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +1 -1
  292. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +3 -3
  293. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
  294. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +5 -5
  295. package/SVF-doxygen/html/html/classSVF_1_1TypeSystem.html +1 -1
  296. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPPE.html +1 -1
  297. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +3 -3
  298. package/SVF-doxygen/html/html/classSVF_1_1ValPN.html +1 -1
  299. package/SVF-doxygen/html/html/classSVF_1_1VariantGepPE.html +1 -1
  300. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +161 -162
  301. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +576 -539
  302. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat-members.html +7 -4
  303. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +32 -29
  304. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC-members.html +83 -0
  305. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC.html +297 -0
  306. package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver.html +2 -2
  307. package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver.html +7 -7
  308. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +12 -12
  309. package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver.html +9 -9
  310. package/SVF-doxygen/html/html/classSVF_1_1WPASolver.html +60 -60
  311. package/SVF-doxygen/html/html/classes.html +96 -95
  312. package/SVF-doxygen/html/html/functions_b.html +11 -5
  313. package/SVF-doxygen/html/html/functions_c.html +24 -18
  314. package/SVF-doxygen/html/html/functions_d.html +13 -4
  315. package/SVF-doxygen/html/html/functions_e.html +3 -0
  316. package/SVF-doxygen/html/html/functions_enum.html +3 -0
  317. package/SVF-doxygen/html/html/functions_eval_c.html +3 -0
  318. package/SVF-doxygen/html/html/functions_eval_w.html +76 -0
  319. package/SVF-doxygen/html/html/functions_f.html +14 -14
  320. package/SVF-doxygen/html/html/functions_func_b.html +6 -0
  321. package/SVF-doxygen/html/html/functions_func_d.html +7 -4
  322. package/SVF-doxygen/html/html/functions_func_g.html +15 -9
  323. package/SVF-doxygen/html/html/functions_func_i.html +11 -11
  324. package/SVF-doxygen/html/html/functions_func_m.html +0 -3
  325. package/SVF-doxygen/html/html/functions_func_n.html +1 -4
  326. package/SVF-doxygen/html/html/functions_func_o.html +6 -4
  327. package/SVF-doxygen/html/html/functions_func_r.html +4 -1
  328. package/SVF-doxygen/html/html/functions_func_s.html +1 -1
  329. package/SVF-doxygen/html/html/functions_func_v.html +2 -1
  330. package/SVF-doxygen/html/html/functions_g.html +15 -9
  331. package/SVF-doxygen/html/html/functions_i.html +23 -16
  332. package/SVF-doxygen/html/html/functions_l.html +12 -15
  333. package/SVF-doxygen/html/html/functions_m.html +1 -16
  334. package/SVF-doxygen/html/html/functions_n.html +3 -3
  335. package/SVF-doxygen/html/html/functions_o.html +17 -16
  336. package/SVF-doxygen/html/html/functions_p.html +16 -13
  337. package/SVF-doxygen/html/html/functions_r.html +6 -8
  338. package/SVF-doxygen/html/html/functions_s.html +14 -16
  339. package/SVF-doxygen/html/html/functions_t.html +9 -9
  340. package/SVF-doxygen/html/html/functions_type_l.html +1 -4
  341. package/SVF-doxygen/html/html/functions_type_m.html +1 -1
  342. package/SVF-doxygen/html/html/functions_type_n.html +3 -0
  343. package/SVF-doxygen/html/html/functions_type_o.html +0 -3
  344. package/SVF-doxygen/html/html/functions_type_v.html +0 -3
  345. package/SVF-doxygen/html/html/functions_u.html +3 -3
  346. package/SVF-doxygen/html/html/functions_v.html +8 -10
  347. package/SVF-doxygen/html/html/functions_vars_c.html +3 -3
  348. package/SVF-doxygen/html/html/functions_vars_d.html +6 -0
  349. package/SVF-doxygen/html/html/functions_vars_e.html +3 -0
  350. package/SVF-doxygen/html/html/functions_vars_i.html +7 -0
  351. package/SVF-doxygen/html/html/functions_vars_l.html +3 -3
  352. package/SVF-doxygen/html/html/functions_vars_m.html +0 -12
  353. package/SVF-doxygen/html/html/functions_vars_o.html +3 -3
  354. package/SVF-doxygen/html/html/functions_vars_p.html +3 -0
  355. package/SVF-doxygen/html/html/functions_vars_r.html +0 -3
  356. package/SVF-doxygen/html/html/functions_vars_v.html +3 -3
  357. package/SVF-doxygen/html/html/functions_vars_y.html +0 -3
  358. package/SVF-doxygen/html/html/functions_w.html +5 -6
  359. package/SVF-doxygen/html/html/functions_y.html +0 -3
  360. package/SVF-doxygen/html/html/globals_f.html +3 -3
  361. package/SVF-doxygen/html/html/globals_r.html +3 -3
  362. package/SVF-doxygen/html/html/globals_s.html +6 -6
  363. package/SVF-doxygen/html/html/hierarchy.html +176 -173
  364. package/SVF-doxygen/html/html/menudata.js +2 -1
  365. package/SVF-doxygen/html/html/namespaceSVF.html +68 -30
  366. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +3 -3
  367. package/SVF-doxygen/html/html/namespacemembers_type_v.html +6 -0
  368. package/SVF-doxygen/html/html/namespacemembers_v.html +6 -0
  369. package/SVF-doxygen/html/html/search/all_10.js +4 -3
  370. package/SVF-doxygen/html/html/search/all_12.js +4 -4
  371. package/SVF-doxygen/html/html/search/all_13.js +12 -12
  372. package/SVF-doxygen/html/html/search/all_14.js +6 -6
  373. package/SVF-doxygen/html/html/search/all_15.js +2 -2
  374. package/SVF-doxygen/html/html/search/all_16.js +5 -4
  375. package/SVF-doxygen/html/html/search/all_17.js +2 -1
  376. package/SVF-doxygen/html/html/search/all_19.js +0 -1
  377. package/SVF-doxygen/html/html/search/all_2.js +2 -0
  378. package/SVF-doxygen/html/html/search/all_3.js +2 -1
  379. package/SVF-doxygen/html/html/search/all_4.js +5 -2
  380. package/SVF-doxygen/html/html/search/all_5.js +1 -0
  381. package/SVF-doxygen/html/html/search/all_6.js +6 -6
  382. package/SVF-doxygen/html/html/search/all_7.js +5 -3
  383. package/SVF-doxygen/html/html/search/all_8.js +2 -0
  384. package/SVF-doxygen/html/html/search/all_9.js +5 -3
  385. package/SVF-doxygen/html/html/search/all_c.js +4 -5
  386. package/SVF-doxygen/html/html/search/all_d.js +1 -6
  387. package/SVF-doxygen/html/html/search/all_e.js +5 -5
  388. package/SVF-doxygen/html/html/search/all_f.js +2 -3
  389. package/SVF-doxygen/html/html/search/classes_12.js +0 -1
  390. package/SVF-doxygen/html/html/search/classes_7.js +2 -0
  391. package/SVF-doxygen/html/html/search/classes_b.js +1 -0
  392. package/SVF-doxygen/html/html/search/classes_f.js +1 -0
  393. package/SVF-doxygen/html/html/search/enums_1.js +1 -0
  394. package/SVF-doxygen/html/html/search/enumvalues_13.js +1 -1
  395. package/SVF-doxygen/html/html/search/enumvalues_2.js +1 -0
  396. package/SVF-doxygen/html/html/search/functions_1.js +2 -0
  397. package/SVF-doxygen/html/html/search/functions_10.js +2 -2
  398. package/SVF-doxygen/html/html/search/functions_13.js +1 -1
  399. package/SVF-doxygen/html/html/search/functions_3.js +3 -2
  400. package/SVF-doxygen/html/html/search/functions_6.js +5 -3
  401. package/SVF-doxygen/html/html/search/functions_8.js +2 -2
  402. package/SVF-doxygen/html/html/search/functions_b.js +0 -1
  403. package/SVF-doxygen/html/html/search/functions_c.js +0 -1
  404. package/SVF-doxygen/html/html/search/functions_d.js +1 -1
  405. package/SVF-doxygen/html/html/search/functions_f.js +1 -0
  406. package/SVF-doxygen/html/html/search/searchdata.js +1 -1
  407. package/SVF-doxygen/html/html/search/typedefs_14.js +2 -1
  408. package/SVF-doxygen/html/html/search/typedefs_b.js +1 -2
  409. package/SVF-doxygen/html/html/search/typedefs_c.js +1 -1
  410. package/SVF-doxygen/html/html/search/typedefs_d.js +1 -0
  411. package/SVF-doxygen/html/html/search/typedefs_e.js +0 -1
  412. package/SVF-doxygen/html/html/search/variables_10.js +1 -0
  413. package/SVF-doxygen/html/html/search/variables_12.js +0 -1
  414. package/SVF-doxygen/html/html/search/variables_14.js +2 -2
  415. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  416. package/SVF-doxygen/html/html/search/variables_16.js +1 -1
  417. package/SVF-doxygen/html/html/search/variables_19.js +0 -1
  418. package/SVF-doxygen/html/html/search/variables_3.js +1 -1
  419. package/SVF-doxygen/html/html/search/variables_4.js +2 -0
  420. package/SVF-doxygen/html/html/search/variables_5.js +1 -0
  421. package/SVF-doxygen/html/html/search/variables_6.js +1 -1
  422. package/SVF-doxygen/html/html/search/variables_9.js +3 -1
  423. package/SVF-doxygen/html/html/search/variables_c.js +1 -1
  424. package/SVF-doxygen/html/html/search/variables_d.js +0 -4
  425. package/SVF-doxygen/html/html/search/variables_e.js +2 -2
  426. package/SVF-doxygen/html/html/search/variables_f.js +1 -1
  427. package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01CoreBitVector_01_4-members.html +81 -0
  428. package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01CoreBitVector_01_4.html +126 -0
  429. package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01NodePair_01_4.html +3 -3
  430. package/SVF-doxygen/html/html/structSVF_1_1VersionedFlowSensitive_1_1SCC_1_1NodeData-members.html +83 -0
  431. package/SVF-doxygen/html/html/structSVF_1_1VersionedFlowSensitive_1_1SCC_1_1NodeData.html +145 -0
  432. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CHGraph_01_5_01_4.html +12 -12
  433. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1NodePair_01_4.html +3 -3
  434. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SmallVector_3_01T_00_01N_01_4_01_4.html +3 -3
  435. package/SVF-doxygen/html/html/structstd_1_1hash_3_01llvm_1_1SparseBitVector_3_01N_01_4_01_4.html +3 -3
  436. package/SVF-doxygen/html/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4-members.html +81 -0
  437. package/SVF-doxygen/html/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4.html +129 -0
  438. package/SVF-doxygen/html/html/svf-ex_8cpp.html +2 -2
  439. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  440. package/include/Graphs/SVFGStat.h +10 -10
  441. package/include/MemoryModel/PTAStat.h +8 -2
  442. package/include/Util/CoreBitVector.h +8 -0
  443. package/include/Util/Options.h +6 -0
  444. package/include/Util/SVFBasicTypes.h +22 -2
  445. package/include/WPA/VersionedFlowSensitive.h +96 -65
  446. package/include/WPA/WPASolver.h +1 -2
  447. package/lib/SABER/SrcSnkDDA.cpp +1 -1
  448. package/lib/SVF-FE/CHG.cpp +3 -2
  449. package/lib/Util/Options.cpp +16 -0
  450. package/lib/Util/PTAStat.cpp +17 -2
  451. package/lib/WPA/VersionedFlowSensitive.cpp +501 -229
  452. package/lib/WPA/VersionedFlowSensitiveStat.cpp +23 -38
  453. package/package.json +1 -1
@@ -90,7 +90,7 @@ $(function() {
90
90
  <div class="ttc" id="classSVF_1_1PointsTo_1_1PointsToIterator_html"><div class="ttname"><a href="classSVF_1_1PointsTo_1_1PointsToIterator.html">SVF::PointsTo::PointsToIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00174">PointsTo.h:174</a></div></div>
91
91
  <div class="ttc" id="classSVF_1_1GenericEdge_html_ae6792506a0150a9400d635eceab7f9e7"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">SVF::GenericEdge::getSrcID</a></div><div class="ttdeci">NodeID getSrcID() const</div><div class="ttdoc">get methods of the components </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00073">GenericGraph.h:73</a></div></div>
92
92
  <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00233">BasicTypes.h:233</a></div></div>
93
- <div class="ttc" id="classSVF_1_1Options_html_a7b9af13feccc116377aeb107640ae874"><div class="ttname"><a href="classSVF_1_1Options.html#a7b9af13feccc116377aeb107640ae874">SVF::Options::CxtBudget</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned long long &gt; CxtBudget</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00074">Options.h:74</a></div></div>
93
+ <div class="ttc" id="classSVF_1_1Options_html_a7b9af13feccc116377aeb107640ae874"><div class="ttname"><a href="classSVF_1_1Options.html#a7b9af13feccc116377aeb107640ae874">SVF::Options::CxtBudget</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned long long &gt; CxtBudget</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00080">Options.h:80</a></div></div>
94
94
  <div class="ttc" id="classSVF_1_1CxtStmtDPItem_html_a3bb07147466d6ccb397616e1c09fc60b"><div class="ttname"><a href="classSVF_1_1CxtStmtDPItem.html#a3bb07147466d6ccb397616e1c09fc60b">SVF::CxtStmtDPItem::pushContext</a></div><div class="ttdeci">bool pushContext(NodeID cxt)</div><div class="ttdoc">Push context. </div><div class="ttdef"><b>Definition:</b> <a href="DPItem_8h_source.html#l00400">DPItem.h:400</a></div></div>
95
95
  <div class="ttc" id="classSVF_1_1ContextDDA_html_a337eb89cc5f31741ad8d840d9f284ca5"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#a337eb89cc5f31741ad8d840d9f284ca5">SVF::ContextDDA::computeDDAPts</a></div><div class="ttdeci">virtual void computeDDAPts(NodeID id) override</div><div class="ttdoc">Compute points-to set for an unconditional pointer. </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8cpp_source.html#l00083">ContextDDA.cpp:83</a></div></div>
96
96
  <div class="ttc" id="classSVF_1_1CondStdSet_html_adf095111734d81b6ad1908a7f795b038"><div class="ttname"><a href="classSVF_1_1CondStdSet.html#adf095111734d81b6ad1908a7f795b038">SVF::CondStdSet::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="ConditionalPT_8h_source.html#l00192">ConditionalPT.h:192</a></div></div>
@@ -121,7 +121,7 @@ $(function() {
121
121
  <div class="ttc" id="classSVF_1_1ContextDDA_html_adb9f21a86daeb2dd79537f3939c393cf"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#adb9f21a86daeb2dd79537f3939c393cf">SVF::ContextDDA::initialize</a></div><div class="ttdeci">virtual void initialize() override</div><div class="ttdoc">Initialization of the analysis. </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8cpp_source.html#l00040">ContextDDA.cpp:40</a></div></div>
122
122
  <div class="ttc" id="classSVF_1_1PTACallGraph_html_afb2daec804e81f0beb72fbc805d1c82a"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#afb2daec804e81f0beb72fbc805d1c82a">SVF::PTACallGraph::getCallSiteID</a></div><div class="ttdeci">CallSiteID getCallSiteID(const CallBlockNode *cs, const SVFFunction *callee) const</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00344">PTACallGraph.h:344</a></div></div>
123
123
  <div class="ttc" id="classSVF_1_1DPItem_html_a687ef8944ccb55b826508c47ea5b9240"><div class="ttname"><a href="classSVF_1_1DPItem.html#a687ef8944ccb55b826508c47ea5b9240">SVF::DPItem::setMaxBudget</a></div><div class="ttdeci">static void setMaxBudget(u32_t max)</div><div class="ttdoc">set max step budge per query </div><div class="ttdef"><b>Definition:</b> <a href="DPItem_8h_source.html#l00074">DPItem.h:74</a></div></div>
124
- <div class="ttc" id="SVFBasicTypes_8h_html_a40845b3027a1237076aa8297ca39e730"><div class="ttname"><a href="SVFBasicTypes_8h.html#a40845b3027a1237076aa8297ca39e730">DDDA</a></div><div class="ttdeci">#define DDDA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00155">SVFBasicTypes.h:155</a></div></div>
124
+ <div class="ttc" id="SVFBasicTypes_8h_html_a40845b3027a1237076aa8297ca39e730"><div class="ttname"><a href="SVFBasicTypes_8h.html#a40845b3027a1237076aa8297ca39e730">DDDA</a></div><div class="ttdeci">#define DDDA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00158">SVFBasicTypes.h:158</a></div></div>
125
125
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00178">PointerAnalysis.h:178</a></div></div>
126
126
  <div class="ttc" id="classSVF_1_1PointsTo_html_aa53962e561399bf493d1f2b9137356f6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">SVF::PointsTo::begin</a></div><div class="ttdeci">const_iterator begin(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00127">PointsTo.h:127</a></div></div>
127
127
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0bddf297a2d8cd59ce9a232f0229f248"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0bddf297a2d8cd59ce9a232f0229f248">SVF::PointerAnalysis::getCallGraphSCC</a></div><div class="ttdeci">CallGraphSCC * getCallGraphSCC() const</div><div class="ttdoc">Return call graph SCC. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00183">PointerAnalysis.h:183</a></div></div>
@@ -135,7 +135,7 @@ $(function() {
135
135
  <div class="ttc" id="classSVF_1_1PTACFInfoBuilder_html_a418e6009760a7c9a048d2ffd9cd29956"><div class="ttname"><a href="classSVF_1_1PTACFInfoBuilder.html#a418e6009760a7c9a048d2ffd9cd29956">SVF::PTACFInfoBuilder::getLoopInfo</a></div><div class="ttdeci">LoopInfo * getLoopInfo(const Function *f)</div><div class="ttdoc">Get loop info of a function. </div><div class="ttdef"><b>Definition:</b> <a href="DataFlowUtil_8cpp_source.html#l00074">DataFlowUtil.cpp:74</a></div></div>
136
136
  <div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_aee289e298e421448caaa604b7eb34fcb"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">SVF::BVDataPTAImpl::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00098">PointerAnalysisImpl.h:98</a></div></div>
137
137
  <div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
138
- <div class="ttc" id="SVFBasicTypes_8h_html_a6c9e2209a2c38607a9e3b7fab242886a"><div class="ttname"><a href="SVFBasicTypes_8h.html#a6c9e2209a2c38607a9e3b7fab242886a">DOSTAT</a></div><div class="ttdeci">#define DOSTAT(X)</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00145">SVFBasicTypes.h:145</a></div></div>
138
+ <div class="ttc" id="SVFBasicTypes_8h_html_a6c9e2209a2c38607a9e3b7fab242886a"><div class="ttname"><a href="SVFBasicTypes_8h.html#a6c9e2209a2c38607a9e3b7fab242886a">DOSTAT</a></div><div class="ttdeci">#define DOSTAT(X)</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00148">SVFBasicTypes.h:148</a></div></div>
139
139
  <div class="ttc" id="classSVF_1_1DDAVFSolver_html_ad7d92fad8606d5512786a7b7a08930e2"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#ad7d92fad8606d5512786a7b7a08930e2">SVF::DDAVFSolver&lt; CxtVar, CxtPtSet, CxtLocDPItem &gt;::getDPIm</a></div><div class="ttdeci">virtual CxtLocDPItem getDPIm(const CxtVar &amp;var, const SVFGNode *loc) const</div><div class="ttdoc">Given CVar and location (SVFGNode) return a new DPItem. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00074">DDAVFSolver.h:74</a></div></div>
140
140
  <div class="ttc" id="classSVF_1_1NormalGepPE_html"><div class="ttname"><a href="classSVF_1_1NormalGepPE.html">SVF::NormalGepPE</a></div><div class="ttdef"><b>Definition:</b> <a href="PAGEdge_8h_source.html#l00472">PAGEdge.h:472</a></div></div>
141
141
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac5683fe2e24b393ccc5cb6d8bc92cf2b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac5683fe2e24b393ccc5cb6d8bc92cf2b">SVF::PointerAnalysis::setObjFieldInsensitive</a></div><div class="ttdeci">void setObjFieldInsensitive(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00365">PointerAnalysis.h:365</a></div></div>
@@ -159,7 +159,7 @@ $(function() {
159
159
  <div class="ttc" id="classSVF_1_1ContextDDA_html_a7687f36ad3f27bb16069975f00a1a202"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#a7687f36ad3f27bb16069975f00a1a202">SVF::ContextDDA::getCSIDAtRet</a></div><div class="ttdeci">CallSiteID getCSIDAtRet(CxtLocDPItem &amp;dpm, const SVFGEdge *edge)</div><div class="ttdoc">get callsite id from return, return 0 if it is a spurious return edge </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8cpp_source.html#l00212">ContextDDA.cpp:212</a></div></div>
160
160
  <div class="ttc" id="classSVF_1_1ContextDDA_html_a1b9bfe46777c8a57781452a05635fb02"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#a1b9bfe46777c8a57781452a05635fb02">SVF::ContextDDA::handleOutOfBudgetDpm</a></div><div class="ttdeci">void handleOutOfBudgetDpm(const CxtLocDPItem &amp;dpm)</div><div class="ttdoc">Handle out-of-budget dpm. </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8cpp_source.html#l00093">ContextDDA.cpp:93</a></div></div>
161
161
  <div class="ttc" id="classSVF_1_1ContextCond_html"><div class="ttname"><a href="classSVF_1_1ContextCond.html">SVF::ContextCond</a></div><div class="ttdef"><b>Definition:</b> <a href="DPItem_8h_source.html#l00194">DPItem.h:194</a></div></div>
162
- <div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
162
+ <div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00152">SVFBasicTypes.h:152</a></div></div>
163
163
  <div class="ttc" id="classSVF_1_1DPItem_html_a03a90eca842c0e83d874902103f6fdb2"><div class="ttname"><a href="classSVF_1_1DPItem.html#a03a90eca842c0e83d874902103f6fdb2">SVF::DPItem::getCurNodeID</a></div><div class="ttdeci">NodeID getCurNodeID() const</div><div class="ttdef"><b>Definition:</b> <a href="DPItem_8h_source.html#l00065">DPItem.h:65</a></div></div>
164
164
  <div class="ttc" id="classSVF_1_1ContextDDA_html_aa8a7b6e99b92abfa5c2404515b703a2d"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#aa8a7b6e99b92abfa5c2404515b703a2d">SVF::ContextDDA::handleBKCondition</a></div><div class="ttdeci">virtual bool handleBKCondition(CxtLocDPItem &amp;dpm, const SVFGEdge *edge) override</div><div class="ttdoc">Handle condition for context or path analysis (backward analysis) </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8cpp_source.html#l00234">ContextDDA.cpp:234</a></div></div>
165
165
  <div class="ttc" id="classSVF_1_1CxtStmtDPItem_html"><div class="ttname"><a href="classSVF_1_1CxtStmtDPItem.html">SVF::CxtStmtDPItem</a></div><div class="ttdef"><b>Definition:</b> <a href="DPItem_8h_source.html#l00365">DPItem.h:365</a></div></div>
@@ -170,7 +170,7 @@ $(function() {
170
170
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acf40310917909e4234282c0695a43160"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">SVF::LLVMModuleSet::getLLVMModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * getLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00069">LLVMModule.h:69</a></div></div>
171
171
  <div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00249">BasicTypes.h:249</a></div></div>
172
172
  <div class="ttc" id="classSVF_1_1DDAStat_html_a2b788792447d4bccceff2426b45a21b2"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a2b788792447d4bccceff2426b45a21b2">SVF::DDAStat::_AnaTimePerQuery</a></div><div class="ttdeci">double _AnaTimePerQuery</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00039">DDAStat.h:39</a></div></div>
173
- <div class="ttc" id="classSVF_1_1PTAStat_html_adef061d4454a1b1fb46efa4013d9a956"><div class="ttname"><a href="classSVF_1_1PTAStat.html#adef061d4454a1b1fb46efa4013d9a956">SVF::PTAStat::performStatPerQuery</a></div><div class="ttdeci">virtual void performStatPerQuery(NodeID)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00153">PTAStat.h:153</a></div></div>
173
+ <div class="ttc" id="classSVF_1_1PTAStat_html_adef061d4454a1b1fb46efa4013d9a956"><div class="ttname"><a href="classSVF_1_1PTAStat.html#adef061d4454a1b1fb46efa4013d9a956">SVF::PTAStat::performStatPerQuery</a></div><div class="ttdeci">virtual void performStatPerQuery(NodeID)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00159">PTAStat.h:159</a></div></div>
174
174
  <div class="ttc" id="namespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8h_source.html#l00016">ContextDDA.h:16</a></div></div>
175
175
  <div class="ttc" id="classSVF_1_1ContextDDA_html_ac3e622d810ee69917b7bef08a882117c"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#ac3e622d810ee69917b7bef08a882117c">SVF::ContextDDA::dumpContexts</a></div><div class="ttdeci">virtual void dumpContexts(const ContextCond &amp;cxts)</div><div class="ttdoc">dump context call strings </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8h_source.html#l00184">ContextDDA.h:184</a></div></div>
176
176
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_aa725a0c9426e8615cbc078c88561f66a"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aa725a0c9426e8615cbc078c88561f66a">SVF::PointerAnalysis::isInRecursion</a></div><div class="ttdeci">bool isInRecursion(const SVFFunction *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00432">PointerAnalysis.h:432</a></div></div>
@@ -181,7 +181,7 @@ $(function() {
181
181
  <div class="ttc" id="classSVF_1_1DDAVFSolver_html_aa1d1b6e8cc23f0a6d3935cbe4f02cbdf"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#aa1d1b6e8cc23f0a6d3935cbe4f02cbdf">SVF::DDAVFSolver&lt; CxtVar, CxtPtSet, CxtLocDPItem &gt;::_ander</a></div><div class="ttdeci">AndersenWaveDiff * _ander</div><div class="ttdoc">Andersen&amp;#39;s analysis. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00755">DDAVFSolver.h:755</a></div></div>
182
182
  <div class="ttc" id="classSVF_1_1FlowDDA_html_a113faa56ee75eff39da19fd4b47a47e0"><div class="ttname"><a href="classSVF_1_1FlowDDA.html#a113faa56ee75eff39da19fd4b47a47e0">SVF::FlowDDA::computeDDAPts</a></div><div class="ttdeci">void computeDDAPts(NodeID id) override</div><div class="ttdoc">Compute points-to set for all top variable. </div><div class="ttdef"><b>Definition:</b> <a href="FlowDDA_8cpp_source.html#l00021">FlowDDA.cpp:21</a></div></div>
183
183
  <div class="ttc" id="classSVF_1_1DDAVFSolver_html_ae1e77060ac22d465b5cc9430962e280c"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#ae1e77060ac22d465b5cc9430962e280c">SVF::DDAVFSolver&lt; CxtVar, CxtPtSet, CxtLocDPItem &gt;::addOutOfBudgetDpm</a></div><div class="ttdeci">void addOutOfBudgetDpm(const CxtLocDPItem &amp;dpm)</div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00715">DDAVFSolver.h:715</a></div></div>
184
- <div class="ttc" id="classSVF_1_1PTAStat_html_a7ce0630cfe41448bec002f03a176175d"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a7ce0630cfe41448bec002f03a176175d">SVF::PTAStat::printStatPerQuery</a></div><div class="ttdeci">virtual void printStatPerQuery(NodeID, const PointsTo &amp;)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00155">PTAStat.h:155</a></div></div>
184
+ <div class="ttc" id="classSVF_1_1PTAStat_html_a7ce0630cfe41448bec002f03a176175d"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a7ce0630cfe41448bec002f03a176175d">SVF::PTAStat::printStatPerQuery</a></div><div class="ttdeci">virtual void printStatPerQuery(NodeID, const PointsTo &amp;)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00161">PTAStat.h:161</a></div></div>
185
185
  <div class="ttc" id="classSVF_1_1ContextDDA_html_a525949d1743136466d33bf4dc26ba423"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#a525949d1743136466d33bf4dc26ba423">SVF::ContextDDA::isEdgeInRecursion</a></div><div class="ttdeci">virtual bool isEdgeInRecursion(CallSiteID csId)</div><div class="ttdoc">Whether call/return inside recursion. </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8h_source.html#l00106">ContextDDA.h:106</a></div></div>
186
186
  <div class="ttc" id="classSVF_1_1CallBlockNode_html"><div class="ttname"><a href="classSVF_1_1CallBlockNode.html">SVF::CallBlockNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00364">ICFGNode.h:364</a></div></div>
187
187
  <div class="ttc" id="classSVF_1_1CondStdSet_html_ae11deddad534be115d29daad08c90599"><div class="ttname"><a href="classSVF_1_1CondStdSet.html#ae11deddad534be115d29daad08c90599">SVF::CondStdSet::set</a></div><div class="ttdeci">void set(const Element &amp;var)</div><div class="ttdoc">Add the element into set. </div><div class="ttdef"><b>Definition:</b> <a href="ConditionalPT_8h_source.html#l00158">ConditionalPT.h:158</a></div></div>
@@ -190,19 +190,19 @@ $(function() {
190
190
  <div class="ttc" id="classSVF_1_1ContextDDA_html_a2ce589a1d63a5126e178fc47527e0f92"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#a2ce589a1d63a5126e178fc47527e0f92">SVF::ContextDDA::getCSIDAtCall</a></div><div class="ttdeci">CallSiteID getCSIDAtCall(CxtLocDPItem &amp;dpm, const SVFGEdge *edge)</div><div class="ttdoc">get callsite id from call, return 0 if it is a spurious call edge </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8cpp_source.html#l00188">ContextDDA.cpp:188</a></div></div>
191
191
  <div class="ttc" id="classSVF_1_1DDAVFSolver_html_af2a0732401e5904ebf81878d3ffe0675"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#af2a0732401e5904ebf81878d3ffe0675">SVF::DDAVFSolver&lt; CxtVar, CxtPtSet, CxtLocDPItem &gt;::buildSVFG</a></div><div class="ttdeci">virtual void buildSVFG(PAG *pag)</div><div class="ttdoc">Build SVFG. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00290">DDAVFSolver.h:290</a></div></div>
192
192
  <div class="ttc" id="classSVF_1_1MemObj_html_af8f4f85cfbcb09615fb04ca63d634138"><div class="ttname"><a href="classSVF_1_1MemObj.html#af8f4f85cfbcb09615fb04ca63d634138">SVF::MemObj::isHeap</a></div><div class="ttdeci">bool isHeap() const</div><div class="ttdef"><b>Definition:</b> <a href="MemModel_8h_source.html#l00372">MemModel.h:372</a></div></div>
193
- <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00144">SVFBasicTypes.h:144</a></div></div>
193
+ <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
194
194
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a431ec4f85eb0f029e5740b92fd9ceb32"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">SVF::PointerAnalysis::initialize</a></div><div class="ttdeci">virtual void initialize()</div><div class="ttdoc">Initialization of a pointer analysis, including building symbol table and PAG etc. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00116">PointerAnalysis.cpp:116</a></div></div>
195
195
  <div class="ttc" id="classSVF_1_1CxtStmtDPItem_html_ace41c90e66f6a85f12ff67540ad9d594"><div class="ttname"><a href="classSVF_1_1CxtStmtDPItem.html#ace41c90e66f6a85f12ff67540ad9d594">SVF::CxtStmtDPItem::getCond</a></div><div class="ttdeci">const ContextCond &amp; getCond() const</div><div class="ttdoc">Get context. </div><div class="ttdef"><b>Definition:</b> <a href="DPItem_8h_source.html#l00390">DPItem.h:390</a></div></div>
196
196
  <div class="ttc" id="classSVF_1_1PointsTo_html_a8f741cdffbf3c5fe0f602cdca677dee6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a8f741cdffbf3c5fe0f602cdca677dee6">SVF::PointsTo::end</a></div><div class="ttdeci">const_iterator end(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00128">PointsTo.h:128</a></div></div>
197
197
  <div class="ttc" id="classSVF_1_1ContextDDA_html_afb57381096ffc49b2065de6d9bf00895"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#afb57381096ffc49b2065de6d9bf00895">SVF::ContextDDA::loopInfoBuilder</a></div><div class="ttdeci">PTACFInfoBuilder loopInfoBuilder</div><div class="ttdoc">LoopInfo. </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8h_source.html#l00198">ContextDDA.h:198</a></div></div>
198
- <div class="ttc" id="SVFBasicTypes_8h_html_ab6f41e9db3675dc689c5492418885041"><div class="ttname"><a href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a></div><div class="ttdeci">#define DOTIMESTAT(X)</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00146">SVFBasicTypes.h:146</a></div></div>
198
+ <div class="ttc" id="SVFBasicTypes_8h_html_ab6f41e9db3675dc689c5492418885041"><div class="ttname"><a href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a></div><div class="ttdeci">#define DOTIMESTAT(X)</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
199
199
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a547b3bc62de65b9dbfc6dee55c063dd7"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a547b3bc62de65b9dbfc6dee55c063dd7">SVF::LLVMModuleSet::getSVFFunction</a></div><div class="ttdeci">const SVFFunction * getSVFFunction(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00112">LLVMModule.h:112</a></div></div>
200
200
  <div class="ttc" id="classSVF_1_1DDAVFSolver_html_af08857f907caa32c090eed2c1b404729"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#af08857f907caa32c090eed2c1b404729">SVF::DDAVFSolver&lt; CxtVar, CxtPtSet, CxtLocDPItem &gt;::_pag</a></div><div class="ttdeci">PAG * _pag</div><div class="ttdoc">PAG. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00753">DDAVFSolver.h:753</a></div></div>
201
201
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a8771956f7595b66d825b3dc459d1ae49"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a8771956f7595b66d825b3dc459d1ae49">SVF::PointerAnalysis::pag</a></div><div class="ttdeci">static PAG * pag</div><div class="ttdoc">PAG. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00147">PointerAnalysis.h:147</a></div></div>
202
202
  <div class="ttc" id="classSVF_1_1RetDirSVFGEdge_html"><div class="ttname"><a href="classSVF_1_1RetDirSVFGEdge.html">SVF::RetDirSVFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00254">VFGEdge.h:254</a></div></div>
203
203
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00057">PointerAnalysis.h:57</a></div></div>
204
204
  <div class="ttc" id="classSVF_1_1PAG_html_ae4bfb3e30a81cd8ece36f59a60f0f0ca"><div class="ttname"><a href="classSVF_1_1PAG.html#ae4bfb3e30a81cd8ece36f59a60f0f0ca">SVF::PAG::getFunPtr</a></div><div class="ttdeci">NodeID getFunPtr(const CallBlockNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="PAG_8h_source.html#l00494">PAG.h:494</a></div></div>
205
- <div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00113">PTAStat.cpp:113</a></div></div>
205
+ <div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00114">PTAStat.cpp:114</a></div></div>
206
206
  <div class="ttc" id="classSVF_1_1CondPTAImpl_html"><div class="ttname"><a href="classSVF_1_1CondPTAImpl.html">SVF::CondPTAImpl</a></div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00254">PointerAnalysisImpl.h:254</a></div></div>
207
207
  </div><!-- fragment --></div><!-- contents -->
208
208
  <!-- start footer part -->
@@ -101,7 +101,7 @@ $(function() {
101
101
  <div class="ttc" id="namespaceSVF_html_aa612d67dfa9b0c2999eeef980ca6c893"><div class="ttname"><a href="namespaceSVF.html#aa612d67dfa9b0c2999eeef980ca6c893">SVF::CxtLocDPItem</a></div><div class="ttdeci">CxtStmtDPItem&lt; SVFGNode &gt; CxtLocDPItem</div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8h_source.html#l00020">ContextDDA.h:20</a></div></div>
102
102
  <div class="ttc" id="classSVF_1_1CondVar_html"><div class="ttname"><a href="classSVF_1_1CondVar.html">SVF::CondVar</a></div><div class="ttdef"><b>Definition:</b> <a href="ConditionalPT_8h_source.html#l00046">ConditionalPT.h:46</a></div></div>
103
103
  <div class="ttc" id="classSVF_1_1ContextDDA_html_adb9f21a86daeb2dd79537f3939c393cf"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#adb9f21a86daeb2dd79537f3939c393cf">SVF::ContextDDA::initialize</a></div><div class="ttdeci">virtual void initialize() override</div><div class="ttdoc">Initialization of the analysis. </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8cpp_source.html#l00040">ContextDDA.cpp:40</a></div></div>
104
- <div class="ttc" id="SVFBasicTypes_8h_html_a40845b3027a1237076aa8297ca39e730"><div class="ttname"><a href="SVFBasicTypes_8h.html#a40845b3027a1237076aa8297ca39e730">DDDA</a></div><div class="ttdeci">#define DDDA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00155">SVFBasicTypes.h:155</a></div></div>
104
+ <div class="ttc" id="SVFBasicTypes_8h_html_a40845b3027a1237076aa8297ca39e730"><div class="ttname"><a href="SVFBasicTypes_8h.html#a40845b3027a1237076aa8297ca39e730">DDDA</a></div><div class="ttdeci">#define DDDA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00158">SVFBasicTypes.h:158</a></div></div>
105
105
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00178">PointerAnalysis.h:178</a></div></div>
106
106
  <div class="ttc" id="classSVF_1_1PointsTo_html_aa53962e561399bf493d1f2b9137356f6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">SVF::PointsTo::begin</a></div><div class="ttdeci">const_iterator begin(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00127">PointsTo.h:127</a></div></div>
107
107
  <div class="ttc" id="classSVF_1_1ContextCond_html_ac80892cbef7a5d2c949e5f07682bc885"><div class="ttname"><a href="classSVF_1_1ContextCond.html#ac80892cbef7a5d2c949e5f07682bc885">SVF::ContextCond::setNonConcreteCxt</a></div><div class="ttdeci">void setNonConcreteCxt()</div><div class="ttdoc">Whether it is an concrete context. </div><div class="ttdef"><b>Definition:</b> <a href="DPItem_8h_source.html#l00226">DPItem.h:226</a></div></div>
@@ -116,7 +116,7 @@ $(function() {
116
116
  <div class="ttc" id="classSVF_1_1ContextDDA_html_a0d407903c4b0d976da30538ff0c5fc41"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#a0d407903c4b0d976da30538ff0c5fc41">SVF::ContextDDA::getInsensitiveEdgeSet</a></div><div class="ttdeci">ConstSVFGEdgeSet &amp; getInsensitiveEdgeSet()</div><div class="ttdoc">Return insensitive edge set. </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8h_source.html#l00179">ContextDDA.h:179</a></div></div>
117
117
  <div class="ttc" id="classSVF_1_1ContextDDA_html_a26031c81d3eba5b3ff3ebd51d89510ae"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#a26031c81d3eba5b3ff3ebd51d89510ae">SVF::ContextDDA::handleAddr</a></div><div class="ttdeci">virtual void handleAddr(CxtPtSet &amp;pts, const CxtLocDPItem &amp;dpm, const AddrSVFGNode *addr) override</div><div class="ttdoc">Handle Address SVFGNode to add proper conditional points-to. </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8h_source.html#l00149">ContextDDA.h:149</a></div></div>
118
118
  <div class="ttc" id="classSVF_1_1ContextDDA_html_a57d309971de00db9bd8c6bfaf237cbff"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#a57d309971de00db9bd8c6bfaf237cbff">SVF::ContextDDA::isCondCompatible</a></div><div class="ttdeci">virtual bool isCondCompatible(const ContextCond &amp;cxt1, const ContextCond &amp;cxt2, bool singleton) const override</div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8cpp_source.html#l00114">ContextDDA.cpp:114</a></div></div>
119
- <div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00127">SVFBasicTypes.h:127</a></div></div>
119
+ <div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00125">SVFBasicTypes.h:125</a></div></div>
120
120
  <div class="ttc" id="classSVF_1_1ContextDDA_html_a45d7a381fec0692b4d2f7d0eec47ccf1"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#a45d7a381fec0692b4d2f7d0eec47ccf1">SVF::ContextDDA::propagateViaObj</a></div><div class="ttdeci">virtual bool propagateViaObj(const CxtVar &amp;storeObj, const CxtVar &amp;loadObj) override</div><div class="ttdoc">Propagate along indirect value-flow if two objects of load and store are same. </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8h_source.html#l00163">ContextDDA.h:163</a></div></div>
121
121
  <div class="ttc" id="classSVF_1_1DDAVFSolver_html"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html">SVF::DDAVFSolver</a></div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00025">DDAVFSolver.h:25</a></div></div>
122
122
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ae58c2b25494ec51e714c83c6cfd5dd67"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae58c2b25494ec51e714c83c6cfd5dd67">SVF::PointerAnalysis::inSameCallGraphSCC</a></div><div class="ttdeci">bool inSameCallGraphSCC(const SVFFunction *fun1, const SVFFunction *fun2)</div><div class="ttdoc">Return TRUE if this edge is inside a CallGraph SCC, i.e., src node and dst node are in the same SCC o...</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00426">PointerAnalysis.h:426</a></div></div>
@@ -156,7 +156,7 @@ $(function() {
156
156
  <div class="ttc" id="classSVF_1_1CondStdSet_html_ae11deddad534be115d29daad08c90599"><div class="ttname"><a href="classSVF_1_1CondStdSet.html#ae11deddad534be115d29daad08c90599">SVF::CondStdSet::set</a></div><div class="ttdeci">void set(const Element &amp;var)</div><div class="ttdoc">Add the element into set. </div><div class="ttdef"><b>Definition:</b> <a href="ConditionalPT_8h_source.html#l00158">ConditionalPT.h:158</a></div></div>
157
157
  <div class="ttc" id="classSVF_1_1PointsTo_html"><div class="ttname"><a href="classSVF_1_1PointsTo.html">SVF::PointsTo</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00027">PointsTo.h:27</a></div></div>
158
158
  <div class="ttc" id="classSVF_1_1ContextDDA_html_a2ce589a1d63a5126e178fc47527e0f92"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#a2ce589a1d63a5126e178fc47527e0f92">SVF::ContextDDA::getCSIDAtCall</a></div><div class="ttdeci">CallSiteID getCSIDAtCall(CxtLocDPItem &amp;dpm, const SVFGEdge *edge)</div><div class="ttdoc">get callsite id from call, return 0 if it is a spurious call edge </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8cpp_source.html#l00188">ContextDDA.cpp:188</a></div></div>
159
- <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00144">SVFBasicTypes.h:144</a></div></div>
159
+ <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
160
160
  <div class="ttc" id="classSVF_1_1CxtStmtDPItem_html_ace41c90e66f6a85f12ff67540ad9d594"><div class="ttname"><a href="classSVF_1_1CxtStmtDPItem.html#ace41c90e66f6a85f12ff67540ad9d594">SVF::CxtStmtDPItem::getCond</a></div><div class="ttdeci">const ContextCond &amp; getCond() const</div><div class="ttdoc">Get context. </div><div class="ttdef"><b>Definition:</b> <a href="DPItem_8h_source.html#l00390">DPItem.h:390</a></div></div>
161
161
  <div class="ttc" id="classSVF_1_1PointsTo_html_a8f741cdffbf3c5fe0f602cdca677dee6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a8f741cdffbf3c5fe0f602cdca677dee6">SVF::PointsTo::end</a></div><div class="ttdeci">const_iterator end(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00128">PointsTo.h:128</a></div></div>
162
162
  <div class="ttc" id="classSVF_1_1ContextDDA_html_afb57381096ffc49b2065de6d9bf00895"><div class="ttname"><a href="classSVF_1_1ContextDDA.html#afb57381096ffc49b2065de6d9bf00895">SVF::ContextDDA::loopInfoBuilder</a></div><div class="ttdeci">PTACFInfoBuilder loopInfoBuilder</div><div class="ttdoc">LoopInfo. </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8h_source.html#l00198">ContextDDA.h:198</a></div></div>
@@ -81,6 +81,8 @@ Classes</h2></td></tr>
81
81
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
82
82
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">SVF::CoreBitVector::CoreBitVectorIterator</a></td></tr>
83
83
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
84
+ <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSVF_1_1Hash_3_01CoreBitVector_01_4.html">SVF::Hash&lt; CoreBitVector &gt;</a></td></tr>
85
+ <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
84
86
  </table><table class="memberdecls">
85
87
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
86
88
  Namespaces</h2></td></tr>
@@ -66,7 +66,7 @@ $(function() {
66
66
  <div class="title">CoreBitVector.h</div> </div>
67
67
  </div><!--header-->
68
68
  <div class="contents">
69
- <a href="CoreBitVector_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">//===- CoreBitVector.h -- Dynamically sized bit vector data structure ------------//</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * CoreBitVector.h</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Contiguous bit vector which resizes as required by common operations.</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * Created on: Jan 31, 2021</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * Author: Mohamad Barbar</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#ifndef COREBITVECTOR_H_</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#define COREBITVECTOR_H_</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="preprocessor">#include &lt;assert.h&gt;</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="SVFBasicTypes_8h.html">Util/SVFBasicTypes.h</a>&quot;</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceSVF.html">SVF</a></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;{</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html"> 30</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;{</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html#aaee26ffc13d05cd57f0fd7e4c2ea875c"> 33</a></span>&#160; <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> <a class="code" href="classSVF_1_1CoreBitVector.html#aaee26ffc13d05cd57f0fd7e4c2ea875c">Word</a>;</div><div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html#a63f5e4a36359ae62401e5f8dfecb86a3"> 34</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a63f5e4a36359ae62401e5f8dfecb86a3">WordSize</a>;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html#a45a3bf8465e63f723c0a551f0b0f37ff"> 36</a></span>&#160; <span class="keyword">class </span><a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a>;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keyword">typedef</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> <a class="code" href="classSVF_1_1CoreBitVector.html#a45a3bf8465e63f723c0a551f0b0f37ff">const_iterator</a>;</div><div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html#a624ebc80d138fbf2b015bf557d2891a6"> 38</a></span>&#160; <span class="keyword">typedef</span> const_iterator <a class="code" href="classSVF_1_1CoreBitVector.html#a624ebc80d138fbf2b015bf557d2891a6">iterator</a>;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector.html#adb5b13df8bc76f00ceb145711cfb77e1">CoreBitVector</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector.html#adb5b13df8bc76f00ceb145711cfb77e1">CoreBitVector</a>(<span class="keywordtype">size_t</span> n);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector.html#adb5b13df8bc76f00ceb145711cfb77e1">CoreBitVector</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;cbv);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector.html#adb5b13df8bc76f00ceb145711cfb77e1">CoreBitVector</a>(<a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;&amp;cbv);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector.html#a3594d997fba0aa6201855199a884d98d">operator=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector.html#a3594d997fba0aa6201855199a884d98d">operator=</a>(<a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;&amp;rhs);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a98b9795b4fdc74d9d2efa9a3f2ecb62f">empty</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1CoreBitVector.html#abfed2e7daf2407e11cade625ac19a6ce">count</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a1e523bab1013a9f3e9eaea56e53afa58">clear</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a7b20ffd3cd4a0ffc48a1348f657deaa0">test</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit) <span class="keyword">const</span>;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a3299b296d20d2b76c6538ba51a684972">test_and_set</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordtype">void</span> <span class="keyword">set</span>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a42fc777d574db4ef23b02308b944a85b">reset</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#af08c16aed45dfa65472f0b5ae518add2">contains</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a15be4ce7e9a07d9b01da0c60d51b22de">intersects</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a0ddd7fc5e043d36f3c62c2fb93b22684">operator==</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#af142d3bb07e77c28bba6ece5b5b13f51">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#af8e63360242a49fb63c3ef3d7071503d">operator|=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#ae84257a1544b94c9abf5c8d0f6cfaec9">operator&amp;=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a5b87ae9d4a713483522666c893d7eac9">operator-=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a8ba857b68282055e485c441892e39b9b">intersectWithComplement</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a8ba857b68282055e485c441892e39b9b">intersectWithComplement</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classSVF_1_1CoreBitVector.html#af979ecb48d3d5296bce5bd0b4676e359">hash</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; const_iterator <a class="code" href="classSVF_1_1CoreBitVector.html#a835bf11a1f698942db8e6bdadbbfd1f3">begin</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; const_iterator <a class="code" href="classSVF_1_1CoreBitVector.html#a93cdd9890522cc9fee2451567e0b1f0d">end</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CoreBitVector.html#ab6d789e3c68390a9026fd4f8c4cf344a">extendBackward</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a5d3f1eb85bc388cb76c588b8d8b3c181">extendForward</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit);</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a73e5b15854f4f56f50992ed0d0cc7349">extendTo</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classSVF_1_1CoreBitVector.html#ad73fca28bd4882eaa70817023a632d35">indexForBit</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit) <span class="keyword">const</span>;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a3c85fd2084e52df869cb8fcf2dab6486">canHold</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit) <span class="keyword">const</span>;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1CoreBitVector.html#a8825e54f584be8aa0ff627335064244e">finalBit</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1CoreBitVector.html#a1ca118240e4c7f678d52a6ca4b3e6b2f">firstCommonBit</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a087f69adea5e9e83bd908a1ab0ee1383">nextSetIndex</a>(<span class="keyword">const</span> <span class="keywordtype">size_t</span> start) <span class="keyword">const</span>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html"> 147</a></span>&#160; <span class="keyword">class </span><a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a></div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; {</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a3b33f7857169d26e1b90fbaa593e79ef"> 150</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a3b33f7857169d26e1b90fbaa593e79ef">iterator_category</a> = std::forward_iterator_tag;</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a6a59f0e97fc9cf278ed22b0a4c109ae1"> 151</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a6a59f0e97fc9cf278ed22b0a4c109ae1">value_type</a> = <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>;</div><div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#aeabc3acd9ce15b8beff0db8a49d8781f"> 152</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#aeabc3acd9ce15b8beff0db8a49d8781f">difference_type</a> = std::ptrdiff_t;</div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a6d8d22b1c8b4405a8e3caddacae6f8f5"> 153</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a6d8d22b1c8b4405a8e3caddacae6f8f5">pointer</a> = <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> *;</div><div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a65313b9702cf6767d2936852e09f04c5"> 154</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a65313b9702cf6767d2936852e09f04c5">reference</a> = <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> &amp;;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#abe0289ad45158397b6950afc920f34ef">CoreBitVectorIterator</a>(<span class="keywordtype">void</span>) = <span class="keyword">delete</span>;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#abe0289ad45158397b6950afc920f34ef">CoreBitVectorIterator</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> *<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>, <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a93cdd9890522cc9fee2451567e0b1f0d">end</a>=<span class="keyword">false</span>);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#abe0289ad45158397b6950afc920f34ef">CoreBitVectorIterator</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>) = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#abe0289ad45158397b6950afc920f34ef">CoreBitVectorIterator</a>(<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;&amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>) = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#adb5a17e5916052f49390d6e99ff47b22">operator=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>) = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#adb5a17e5916052f49390d6e99ff47b22">operator=</a>(<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;&amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>) = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0afff5162af357634e7213e85b5371c7">operator++</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0afff5162af357634e7213e85b5371c7">operator++</a>(<span class="keywordtype">int</span>);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a86bc0a10874af0d43c23cc073d65da07">operator*</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a7278c27a0ab2096b29a537a8afe0be5e">operator==</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#aebdb5ddb9b50704f83dc924b7bfac74c">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#ad3af46dcfb0e2846587eb5a71f38161f">atEnd</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590"> 188</a></span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> *<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>;</div><div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a1afa1cb9e8377d3dab767aa4bfc713dc"> 190</a></span>&#160; std::vector&lt;Word&gt;::const_iterator <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a1afa1cb9e8377d3dab767aa4bfc713dc">wordIt</a>;</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a853b685cf022839c183df46f1cafe638"> 193</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a853b685cf022839c183df46f1cafe638">bit</a>;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; };</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html#a79dfa9f4c2efb6a0a2de18c6359c41bd"> 198</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1CoreBitVector.html#a79dfa9f4c2efb6a0a2de18c6359c41bd">offset</a>;</div><div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html#a807283a917e845ef19c4962b1744e98b"> 200</a></span>&#160; std::vector&lt;Word&gt; <a class="code" href="classSVF_1_1CoreBitVector.html#a807283a917e845ef19c4962b1744e98b">words</a>;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;};</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;};</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="preprocessor">#endif // COREBITVECTOR_H_</span></div><div class="ttc" id="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator_html_a853b685cf022839c183df46f1cafe638"><div class="ttname"><a href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a853b685cf022839c183df46f1cafe638">SVF::CoreBitVector::CoreBitVectorIterator::bit</a></div><div class="ttdeci">u32_t bit</div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8h_source.html#l00193">CoreBitVector.h:193</a></div></div>
69
+ <a href="CoreBitVector_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">//===- CoreBitVector.h -- Dynamically sized bit vector data structure ------------//</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * CoreBitVector.h</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Contiguous bit vector which resizes as required by common operations.</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * Created on: Jan 31, 2021</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * Author: Mohamad Barbar</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#ifndef COREBITVECTOR_H_</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#define COREBITVECTOR_H_</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="preprocessor">#include &lt;assert.h&gt;</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="SVFBasicTypes_8h.html">Util/SVFBasicTypes.h</a>&quot;</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceSVF.html">SVF</a></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;{</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html"> 30</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;{</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html#aaee26ffc13d05cd57f0fd7e4c2ea875c"> 33</a></span>&#160; <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> <a class="code" href="classSVF_1_1CoreBitVector.html#aaee26ffc13d05cd57f0fd7e4c2ea875c">Word</a>;</div><div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html#a63f5e4a36359ae62401e5f8dfecb86a3"> 34</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a63f5e4a36359ae62401e5f8dfecb86a3">WordSize</a>;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html#a45a3bf8465e63f723c0a551f0b0f37ff"> 36</a></span>&#160; <span class="keyword">class </span><a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a>;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keyword">typedef</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> <a class="code" href="classSVF_1_1CoreBitVector.html#a45a3bf8465e63f723c0a551f0b0f37ff">const_iterator</a>;</div><div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html#a624ebc80d138fbf2b015bf557d2891a6"> 38</a></span>&#160; <span class="keyword">typedef</span> const_iterator <a class="code" href="classSVF_1_1CoreBitVector.html#a624ebc80d138fbf2b015bf557d2891a6">iterator</a>;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector.html#adb5b13df8bc76f00ceb145711cfb77e1">CoreBitVector</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector.html#adb5b13df8bc76f00ceb145711cfb77e1">CoreBitVector</a>(<span class="keywordtype">size_t</span> n);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector.html#adb5b13df8bc76f00ceb145711cfb77e1">CoreBitVector</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;cbv);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector.html#adb5b13df8bc76f00ceb145711cfb77e1">CoreBitVector</a>(<a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;&amp;cbv);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector.html#a3594d997fba0aa6201855199a884d98d">operator=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector.html#a3594d997fba0aa6201855199a884d98d">operator=</a>(<a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;&amp;rhs);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a98b9795b4fdc74d9d2efa9a3f2ecb62f">empty</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1CoreBitVector.html#abfed2e7daf2407e11cade625ac19a6ce">count</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a1e523bab1013a9f3e9eaea56e53afa58">clear</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a7b20ffd3cd4a0ffc48a1348f657deaa0">test</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit) <span class="keyword">const</span>;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a3299b296d20d2b76c6538ba51a684972">test_and_set</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordtype">void</span> <span class="keyword">set</span>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a42fc777d574db4ef23b02308b944a85b">reset</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#af08c16aed45dfa65472f0b5ae518add2">contains</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a15be4ce7e9a07d9b01da0c60d51b22de">intersects</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a0ddd7fc5e043d36f3c62c2fb93b22684">operator==</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#af142d3bb07e77c28bba6ece5b5b13f51">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#af8e63360242a49fb63c3ef3d7071503d">operator|=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#ae84257a1544b94c9abf5c8d0f6cfaec9">operator&amp;=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a5b87ae9d4a713483522666c893d7eac9">operator-=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a8ba857b68282055e485c441892e39b9b">intersectWithComplement</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a8ba857b68282055e485c441892e39b9b">intersectWithComplement</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classSVF_1_1CoreBitVector.html#af979ecb48d3d5296bce5bd0b4676e359">hash</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; const_iterator <a class="code" href="classSVF_1_1CoreBitVector.html#a835bf11a1f698942db8e6bdadbbfd1f3">begin</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; const_iterator <a class="code" href="classSVF_1_1CoreBitVector.html#a93cdd9890522cc9fee2451567e0b1f0d">end</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CoreBitVector.html#ab6d789e3c68390a9026fd4f8c4cf344a">extendBackward</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a5d3f1eb85bc388cb76c588b8d8b3c181">extendForward</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit);</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a73e5b15854f4f56f50992ed0d0cc7349">extendTo</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classSVF_1_1CoreBitVector.html#ad73fca28bd4882eaa70817023a632d35">indexForBit</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit) <span class="keyword">const</span>;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a3c85fd2084e52df869cb8fcf2dab6486">canHold</a>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> bit) <span class="keyword">const</span>;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1CoreBitVector.html#a8825e54f584be8aa0ff627335064244e">finalBit</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1CoreBitVector.html#a1ca118240e4c7f678d52a6ca4b3e6b2f">firstCommonBit</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a087f69adea5e9e83bd908a1ab0ee1383">nextSetIndex</a>(<span class="keyword">const</span> <span class="keywordtype">size_t</span> start) <span class="keyword">const</span>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html"> 147</a></span>&#160; <span class="keyword">class </span><a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a></div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; {</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a3b33f7857169d26e1b90fbaa593e79ef"> 150</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a3b33f7857169d26e1b90fbaa593e79ef">iterator_category</a> = std::forward_iterator_tag;</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a6a59f0e97fc9cf278ed22b0a4c109ae1"> 151</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a6a59f0e97fc9cf278ed22b0a4c109ae1">value_type</a> = <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>;</div><div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#aeabc3acd9ce15b8beff0db8a49d8781f"> 152</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#aeabc3acd9ce15b8beff0db8a49d8781f">difference_type</a> = std::ptrdiff_t;</div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a6d8d22b1c8b4405a8e3caddacae6f8f5"> 153</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a6d8d22b1c8b4405a8e3caddacae6f8f5">pointer</a> = <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> *;</div><div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a65313b9702cf6767d2936852e09f04c5"> 154</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a65313b9702cf6767d2936852e09f04c5">reference</a> = <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> &amp;;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#abe0289ad45158397b6950afc920f34ef">CoreBitVectorIterator</a>(<span class="keywordtype">void</span>) = <span class="keyword">delete</span>;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#abe0289ad45158397b6950afc920f34ef">CoreBitVectorIterator</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> *<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>, <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector.html#a93cdd9890522cc9fee2451567e0b1f0d">end</a>=<span class="keyword">false</span>);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#abe0289ad45158397b6950afc920f34ef">CoreBitVectorIterator</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>) = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#abe0289ad45158397b6950afc920f34ef">CoreBitVectorIterator</a>(<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;&amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>) = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#adb5a17e5916052f49390d6e99ff47b22">operator=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>) = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#adb5a17e5916052f49390d6e99ff47b22">operator=</a>(<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;&amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>) = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0afff5162af357634e7213e85b5371c7">operator++</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0afff5162af357634e7213e85b5371c7">operator++</a>(<span class="keywordtype">int</span>);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a86bc0a10874af0d43c23cc073d65da07">operator*</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a7278c27a0ab2096b29a537a8afe0be5e">operator==</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#aebdb5ddb9b50704f83dc924b7bfac74c">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">CoreBitVectorIterator</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#ad3af46dcfb0e2846587eb5a71f38161f">atEnd</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590"> 188</a></span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> *<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>;</div><div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a1afa1cb9e8377d3dab767aa4bfc713dc"> 190</a></span>&#160; std::vector&lt;Word&gt;::const_iterator <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a1afa1cb9e8377d3dab767aa4bfc713dc">wordIt</a>;</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a853b685cf022839c183df46f1cafe638"> 193</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a853b685cf022839c183df46f1cafe638">bit</a>;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; };</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html#a79dfa9f4c2efb6a0a2de18c6359c41bd"> 198</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1CoreBitVector.html#a79dfa9f4c2efb6a0a2de18c6359c41bd">offset</a>;</div><div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="classSVF_1_1CoreBitVector.html#a807283a917e845ef19c4962b1744e98b"> 200</a></span>&#160; std::vector&lt;Word&gt; <a class="code" href="classSVF_1_1CoreBitVector.html#a807283a917e845ef19c4962b1744e98b">words</a>;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;};</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="keyword">template</span> &lt;&gt;</div><div class="line"><a name="l00204"></a><span class="lineno"><a class="line" href="structSVF_1_1Hash_3_01CoreBitVector_01_4.html"> 204</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structSVF_1_1Hash.html">Hash</a>&lt;<a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a>&gt;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;{</div><div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="structSVF_1_1Hash_3_01CoreBitVector_01_4.html#ad54ea05fd0e03af862a5d72f8c4db411"> 206</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structSVF_1_1Hash_3_01CoreBitVector_01_4.html#ad54ea05fd0e03af862a5d72f8c4db411">operator()</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CoreBitVector.html">CoreBitVector</a> &amp;<a class="code" href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a0cba79551b56ed83dc45ab63619dc590">cbv</a>)<span class="keyword"> const </span>{</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">return</span> cbv.<a class="code" href="classSVF_1_1CoreBitVector.html#af979ecb48d3d5296bce5bd0b4676e359">hash</a>();</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; }</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;};</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;};</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="preprocessor">#endif // COREBITVECTOR_H_</span></div><div class="ttc" id="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator_html_a853b685cf022839c183df46f1cafe638"><div class="ttname"><a href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a853b685cf022839c183df46f1cafe638">SVF::CoreBitVector::CoreBitVectorIterator::bit</a></div><div class="ttdeci">u32_t bit</div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8h_source.html#l00193">CoreBitVector.h:193</a></div></div>
70
70
  <div class="ttc" id="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator_html_aeabc3acd9ce15b8beff0db8a49d8781f"><div class="ttname"><a href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#aeabc3acd9ce15b8beff0db8a49d8781f">SVF::CoreBitVector::CoreBitVectorIterator::difference_type</a></div><div class="ttdeci">std::ptrdiff_t difference_type</div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8h_source.html#l00152">CoreBitVector.h:152</a></div></div>
71
71
  <div class="ttc" id="classSVF_1_1CoreBitVector_html_a5b87ae9d4a713483522666c893d7eac9"><div class="ttname"><a href="classSVF_1_1CoreBitVector.html#a5b87ae9d4a713483522666c893d7eac9">SVF::CoreBitVector::operator-=</a></div><div class="ttdeci">bool operator-=(const CoreBitVector &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8cpp_source.html#l00261">CoreBitVector.cpp:261</a></div></div>
72
72
  <div class="ttc" id="classSVF_1_1CoreBitVector_html_a42fc777d574db4ef23b02308b944a85b"><div class="ttname"><a href="classSVF_1_1CoreBitVector.html#a42fc777d574db4ef23b02308b944a85b">SVF::CoreBitVector::reset</a></div><div class="ttdeci">void reset(u32_t bit)</div><div class="ttdoc">Resets bit in the CBV. </div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8cpp_source.html#l00095">CoreBitVector.cpp:95</a></div></div>
@@ -77,6 +77,7 @@ $(function() {
77
77
  <div class="ttc" id="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator_html_aebdb5ddb9b50704f83dc924b7bfac74c"><div class="ttname"><a href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#aebdb5ddb9b50704f83dc924b7bfac74c">SVF::CoreBitVector::CoreBitVectorIterator::operator!=</a></div><div class="ttdeci">bool operator!=(const CoreBitVectorIterator &amp;rhs) const</div><div class="ttdoc">Inequality: *this != rhs. </div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8cpp_source.html#l00444">CoreBitVector.cpp:444</a></div></div>
78
78
  <div class="ttc" id="classSVF_1_1CoreBitVector_html_a835bf11a1f698942db8e6bdadbbfd1f3"><div class="ttname"><a href="classSVF_1_1CoreBitVector.html#a835bf11a1f698942db8e6bdadbbfd1f3">SVF::CoreBitVector::begin</a></div><div class="ttdeci">const_iterator begin(void) const</div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8cpp_source.html#l00313">CoreBitVector.cpp:313</a></div></div>
79
79
  <div class="ttc" id="classSVF_1_1CoreBitVector_html_ad73fca28bd4882eaa70817023a632d35"><div class="ttname"><a href="classSVF_1_1CoreBitVector.html#ad73fca28bd4882eaa70817023a632d35">SVF::CoreBitVector::indexForBit</a></div><div class="ttdeci">size_t indexForBit(u32_t bit) const</div><div class="ttdoc">Returns the index into words which would hold bit. </div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8cpp_source.html#l00356">CoreBitVector.cpp:356</a></div></div>
80
+ <div class="ttc" id="structSVF_1_1Hash_html"><div class="ttname"><a href="structSVF_1_1Hash.html">SVF::Hash</a></div><div class="ttdoc">provide extra hash function for std::pair handling </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00052">SVFBasicTypes.h:52</a></div></div>
80
81
  <div class="ttc" id="classSVF_1_1CoreBitVector_html_a1ca118240e4c7f678d52a6ca4b3e6b2f"><div class="ttname"><a href="classSVF_1_1CoreBitVector.html#a1ca118240e4c7f678d52a6ca4b3e6b2f">SVF::CoreBitVector::firstCommonBit</a></div><div class="ttdeci">u32_t firstCommonBit(const CoreBitVector &amp;rhs) const</div><div class="ttdoc">Returns the first bit position that both this CBV and rhs can hold. </div></div>
81
82
  <div class="ttc" id="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator_html"><div class="ttname"><a href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html">SVF::CoreBitVector::CoreBitVectorIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8h_source.html#l00147">CoreBitVector.h:147</a></div></div>
82
83
  <div class="ttc" id="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator_html_a3b33f7857169d26e1b90fbaa593e79ef"><div class="ttname"><a href="classSVF_1_1CoreBitVector_1_1CoreBitVectorIterator.html#a3b33f7857169d26e1b90fbaa593e79ef">SVF::CoreBitVector::CoreBitVectorIterator::iterator_category</a></div><div class="ttdeci">std::forward_iterator_tag iterator_category</div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8h_source.html#l00150">CoreBitVector.h:150</a></div></div>
@@ -104,6 +105,7 @@ $(function() {
104
105
  <div class="ttc" id="classSVF_1_1CoreBitVector_html_a73e5b15854f4f56f50992ed0d0cc7349"><div class="ttname"><a href="classSVF_1_1CoreBitVector.html#a73e5b15854f4f56f50992ed0d0cc7349">SVF::CoreBitVector::extendTo</a></div><div class="ttdeci">void extendTo(u32_t bit)</div><div class="ttdoc">Add enough words (append xor prepend) to be able to include bit. </div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8cpp_source.html#l00345">CoreBitVector.cpp:345</a></div></div>
105
106
  <div class="ttc" id="classSVF_1_1CoreBitVector_html_a3299b296d20d2b76c6538ba51a684972"><div class="ttname"><a href="classSVF_1_1CoreBitVector.html#a3299b296d20d2b76c6538ba51a684972">SVF::CoreBitVector::test_and_set</a></div><div class="ttdeci">bool test_and_set(u32_t bit)</div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8cpp_source.html#l00078">CoreBitVector.cpp:78</a></div></div>
106
107
  <div class="ttc" id="classSVF_1_1CoreBitVector_html_a79dfa9f4c2efb6a0a2de18c6359c41bd"><div class="ttname"><a href="classSVF_1_1CoreBitVector.html#a79dfa9f4c2efb6a0a2de18c6359c41bd">SVF::CoreBitVector::offset</a></div><div class="ttdeci">u32_t offset</div><div class="ttdoc">The first bit of the first word. </div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8h_source.html#l00198">CoreBitVector.h:198</a></div></div>
108
+ <div class="ttc" id="structSVF_1_1Hash_3_01CoreBitVector_01_4_html_ad54ea05fd0e03af862a5d72f8c4db411"><div class="ttname"><a href="structSVF_1_1Hash_3_01CoreBitVector_01_4.html#ad54ea05fd0e03af862a5d72f8c4db411">SVF::Hash&lt; CoreBitVector &gt;::operator()</a></div><div class="ttdeci">size_t operator()(const CoreBitVector &amp;cbv) const</div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8h_source.html#l00206">CoreBitVector.h:206</a></div></div>
107
109
  <div class="ttc" id="classSVF_1_1CoreBitVector_html_a1e523bab1013a9f3e9eaea56e53afa58"><div class="ttname"><a href="classSVF_1_1CoreBitVector.html#a1e523bab1013a9f3e9eaea56e53afa58">SVF::CoreBitVector::clear</a></div><div class="ttdeci">void clear(void)</div><div class="ttdoc">Empty the CBV. </div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8cpp_source.html#l00063">CoreBitVector.cpp:63</a></div></div>
108
110
  <div class="ttc" id="classSVF_1_1CoreBitVector_html_a0ddd7fc5e043d36f3c62c2fb93b22684"><div class="ttname"><a href="classSVF_1_1CoreBitVector.html#a0ddd7fc5e043d36f3c62c2fb93b22684">SVF::CoreBitVector::operator==</a></div><div class="ttdeci">bool operator==(const CoreBitVector &amp;rhs) const</div><div class="ttdoc">Returns true if this CBV and rhs have the same bits set. </div><div class="ttdef"><b>Definition:</b> <a href="CoreBitVector_8cpp_source.html#l00139">CoreBitVector.cpp:139</a></div></div>
109
111
  <div class="ttc" id="namespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode </div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8h_source.html#l00016">ContextDDA.h:16</a></div></div>
@@ -98,7 +98,7 @@ $(function() {
98
98
  <div class="ttc" id="structstd_1_1hash_3_01SVF_1_1CxtThreadProc_01_4_html_aa88f8da2c709601e69e309604a384863"><div class="ttname"><a href="structstd_1_1hash_3_01SVF_1_1CxtThreadProc_01_4.html#aa88f8da2c709601e69e309604a384863">std::hash&lt; SVF::CxtThreadProc &gt;::operator()</a></div><div class="ttdeci">size_t operator()(const SVF::CxtThreadProc &amp;ctp) const</div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00461">CxtStmt.h:461</a></div></div>
99
99
  <div class="ttc" id="classSVF_1_1CxtStmt_html_a4f431c7b6f3434eff34b4cea6853066b"><div class="ttname"><a href="classSVF_1_1CxtStmt.html#a4f431c7b6f3434eff34b4cea6853066b">SVF::CxtStmt::operator=</a></div><div class="ttdeci">CxtStmt &amp; operator=(const CxtStmt &amp;rhs)</div><div class="ttdoc">Overloading operator=. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00076">CxtStmt.h:76</a></div></div>
100
100
  <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00100">BasicTypes.h:100</a></div></div>
101
- <div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00127">SVFBasicTypes.h:127</a></div></div>
101
+ <div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00125">SVFBasicTypes.h:125</a></div></div>
102
102
  <div class="ttc" id="classSVF_1_1CxtThread_html_a39230596cd1c927353eaaee071eb16c6"><div class="ttname"><a href="classSVF_1_1CxtThread.html#a39230596cd1c927353eaaee071eb16c6">SVF::CxtThread::isInloop</a></div><div class="ttdeci">bool isInloop() const</div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00263">CxtStmt.h:263</a></div></div>
103
103
  <div class="ttc" id="classSVF_1_1CxtThreadProc_html_a61d950c7469f4bb9d2152b0e7d892ebf"><div class="ttname"><a href="classSVF_1_1CxtThreadProc.html#a61d950c7469f4bb9d2152b0e7d892ebf">SVF::CxtThreadProc::getTid</a></div><div class="ttdeci">NodeID getTid() const</div><div class="ttdoc">Return current thread id. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00406">CxtStmt.h:406</a></div></div>
104
104
  <div class="ttc" id="classSVF_1_1CxtThread_html_a7f842879cad19328575f33220491352a"><div class="ttname"><a href="classSVF_1_1CxtThread.html#a7f842879cad19328575f33220491352a">SVF::CxtThread::CxtThread</a></div><div class="ttdeci">CxtThread(const CallStrCxt &amp;c, const CallInst *fork)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00192">CxtStmt.h:192</a></div></div>