svf-tools 1.0.503 → 1.0.506

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 (533) hide show
  1. package/LICENSE.TXT +4 -2
  2. package/SVF-doxygen/html/html/AbstractPointsToDS_8h_source.html +1 -1
  3. package/SVF-doxygen/html/html/AndersenHCD_8cpp_source.html +4 -4
  4. package/SVF-doxygen/html/html/AndersenLCD_8cpp_source.html +4 -4
  5. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +5 -5
  6. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +8 -7
  7. package/SVF-doxygen/html/html/AndersenSFR_8h_source.html +7 -7
  8. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +12 -6
  9. package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +4 -4
  10. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +21 -17
  11. package/SVF-doxygen/html/html/Andersen_8h_source.html +10 -9
  12. package/SVF-doxygen/html/html/BDDExpr_8cpp_source.html +8 -4
  13. package/SVF-doxygen/html/html/BDDExpr_8h_source.html +5 -5
  14. package/SVF-doxygen/html/html/CFGNormalizer_8cpp_source.html +4 -4
  15. package/SVF-doxygen/html/html/CFGNormalizer_8h_source.html +2 -2
  16. package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +3 -3
  17. package/SVF-doxygen/html/html/CFLAlias_8h_source.html +6 -6
  18. package/SVF-doxygen/html/html/CFLGrammar_8cpp_source.html +5 -4
  19. package/SVF-doxygen/html/html/CFLGrammar_8h_source.html +7 -6
  20. package/SVF-doxygen/html/html/CFLGraphBuilder_8cpp_source.html +2 -2
  21. package/SVF-doxygen/html/html/CFLGraphBuilder_8h_source.html +1 -1
  22. package/SVF-doxygen/html/html/CFLGraph_8h_source.html +2 -1
  23. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +6 -6
  24. package/SVF-doxygen/html/html/CHG_8cpp.html +1 -1
  25. package/SVF-doxygen/html/html/CHG_8cpp_source.html +2 -2
  26. package/SVF-doxygen/html/html/CHG_8h_source.html +5 -4
  27. package/SVF-doxygen/html/html/CPPUtil_8cpp.html +2 -2
  28. package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +3 -3
  29. package/SVF-doxygen/html/html/CPPUtil_8h_source.html +1 -1
  30. package/SVF-doxygen/html/html/CSC_8cpp_source.html +5 -4
  31. package/SVF-doxygen/html/html/CSC_8h_source.html +4 -4
  32. package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +12 -10
  33. package/SVF-doxygen/html/html/ConsGEdge_8h_source.html +2 -2
  34. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +3 -3
  35. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +2 -2
  36. package/SVF-doxygen/html/html/ConsG_8h_source.html +5 -4
  37. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +10 -10
  38. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +8 -8
  39. package/SVF-doxygen/html/html/CoreBitVector_8cpp.html +1 -1
  40. package/SVF-doxygen/html/html/CoreBitVector_8cpp_source.html +4 -2
  41. package/SVF-doxygen/html/html/CoreBitVector_8h_source.html +2 -2
  42. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +1 -1
  43. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +8 -6
  44. package/SVF-doxygen/html/html/DCHG_8h_source.html +5 -5
  45. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +8 -8
  46. package/SVF-doxygen/html/html/DDAClient_8h_source.html +3 -3
  47. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +7 -7
  48. package/SVF-doxygen/html/html/DDAPass_8h_source.html +3 -3
  49. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +6 -4
  50. package/SVF-doxygen/html/html/DDAStat_8h_source.html +5 -5
  51. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +12 -8
  52. package/SVF-doxygen/html/html/DPItem_8h_source.html +4 -4
  53. package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +1 -1
  54. package/SVF-doxygen/html/html/ExeState_8cpp_source.html +2 -2
  55. package/SVF-doxygen/html/html/ExeState_8h_source.html +4 -4
  56. package/SVF-doxygen/html/html/ExtAPI_8cpp.html +1 -1
  57. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +3 -3
  58. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +2 -2
  59. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +17 -12
  60. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +6 -6
  61. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +10 -10
  62. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +4 -4
  63. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +12 -10
  64. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +19 -15
  65. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +6 -6
  66. package/SVF-doxygen/html/html/GenericGraph_8h_source.html +5 -5
  67. package/SVF-doxygen/html/html/GrammarBuilder_8h_source.html +1 -1
  68. package/SVF-doxygen/html/html/GraphPrinter_8h_source.html +1 -1
  69. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +2 -2
  70. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
  71. package/SVF-doxygen/html/html/ICFGEdge_8h_source.html +3 -3
  72. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +2 -2
  73. package/SVF-doxygen/html/html/ICFGStat_8h_source.html +1 -1
  74. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +6 -6
  75. package/SVF-doxygen/html/html/ICFG_8h_source.html +2 -2
  76. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +1 -1
  77. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +2 -2
  78. package/SVF-doxygen/html/html/IRGraph_8h_source.html +3 -3
  79. package/SVF-doxygen/html/html/LLVMLoopAnalysis_8cpp_source.html +3 -3
  80. package/SVF-doxygen/html/html/LLVMModule_8cpp.html +25 -7
  81. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +12 -7
  82. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +15 -14
  83. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +2 -2
  84. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +1 -1
  85. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +5 -3
  86. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +3 -3
  87. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +7 -4
  88. package/SVF-doxygen/html/html/LocationSet_8h_source.html +6 -5
  89. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +7 -7
  90. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +8 -8
  91. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +1 -1
  92. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +3 -3
  93. package/SVF-doxygen/html/html/MHP_8cpp.html +1 -1
  94. package/SVF-doxygen/html/html/MHP_8cpp_source.html +19 -13
  95. package/SVF-doxygen/html/html/MHP_8h_source.html +10 -6
  96. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +2 -2
  97. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +11 -8
  98. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +3 -3
  99. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +12 -6
  100. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +4 -4
  101. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +1 -1
  102. package/SVF-doxygen/html/html/MTAStat_8h_source.html +1 -1
  103. package/SVF-doxygen/html/html/MTA_8cpp_source.html +6 -6
  104. package/SVF-doxygen/html/html/MTA_8h_source.html +2 -2
  105. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +11 -2
  106. package/SVF-doxygen/html/html/MemPartition_8h_source.html +4 -4
  107. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +19 -11
  108. package/SVF-doxygen/html/html/MemRegion_8h_source.html +12 -7
  109. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +6 -6
  110. package/SVF-doxygen/html/html/MemSSA_8h_source.html +5 -5
  111. package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +8 -4
  112. package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +10 -10
  113. package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +4 -4
  114. package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +6 -2
  115. package/SVF-doxygen/html/html/OfflineConsG_8h_source.html +2 -2
  116. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +2 -2
  117. package/SVF-doxygen/html/html/PAGBuilderFromFile_8h_source.html +1 -1
  118. package/SVF-doxygen/html/html/PCG_8cpp_source.html +3 -3
  119. package/SVF-doxygen/html/html/PCG_8h_source.html +1 -1
  120. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +6 -4
  121. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +8 -7
  122. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +8 -6
  123. package/SVF-doxygen/html/html/PTAStat_8h_source.html +4 -4
  124. package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +7 -7
  125. package/SVF-doxygen/html/html/PathCondAllocator_8h_source.html +5 -5
  126. package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +3 -3
  127. package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +2 -2
  128. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +12 -10
  129. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +16 -13
  130. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +11 -11
  131. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +9 -9
  132. package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +36 -24
  133. package/SVF-doxygen/html/html/PointsTo_8h.html +1 -0
  134. package/SVF-doxygen/html/html/PointsTo_8h_source.html +34 -33
  135. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +8 -5
  136. package/SVF-doxygen/html/html/ProgSlice_8h_source.html +3 -3
  137. package/SVF-doxygen/html/html/SCC_8h_source.html +7 -4
  138. package/SVF-doxygen/html/html/SVFBasicTypes_8h.html +27 -29
  139. package/SVF-doxygen/html/html/SVFBasicTypes_8h_source.html +76 -73
  140. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +2 -2
  141. package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +4 -4
  142. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +5 -5
  143. package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +7 -5
  144. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +8 -5
  145. package/SVF-doxygen/html/html/SVFGReadWrite_8cpp_source.html +8 -6
  146. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +6 -5
  147. package/SVF-doxygen/html/html/SVFGStat_8h_source.html +4 -4
  148. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +11 -9
  149. package/SVF-doxygen/html/html/SVFG_8h_source.html +5 -5
  150. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +5 -5
  151. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +2 -2
  152. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +4 -3
  153. package/SVF-doxygen/html/html/SVFIR_8h_source.html +7 -7
  154. package/SVF-doxygen/html/html/SVFLoop_8h_source.html +2 -2
  155. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +2 -2
  156. package/SVF-doxygen/html/html/SVFModule_8h_source.html +1 -1
  157. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +2 -2
  158. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +6 -6
  159. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +8 -5
  160. package/SVF-doxygen/html/html/SVFUtil_8h.html +4 -4
  161. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +17 -11
  162. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +2 -2
  163. package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +1 -1
  164. package/SVF-doxygen/html/html/SaberAnnotator_8h_source.html +1 -1
  165. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +2 -2
  166. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +8 -8
  167. package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +3 -3
  168. package/SVF-doxygen/html/html/SparseBitVector_8h.html +201 -0
  169. package/SVF-doxygen/html/html/SparseBitVector_8h_source.html +179 -0
  170. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +10 -7
  171. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +4 -4
  172. package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +1 -1
  173. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +3 -3
  174. package/SVF-doxygen/html/html/SymState_8h_source.html +1 -1
  175. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +5 -5
  176. package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +1 -1
  177. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +6 -6
  178. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +5 -5
  179. package/SVF-doxygen/html/html/TCT_8cpp_source.html +8 -7
  180. package/SVF-doxygen/html/html/TCT_8h_source.html +10 -7
  181. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +1 -1
  182. package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +2 -2
  183. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +8 -5
  184. package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +4 -4
  185. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +1 -1
  186. package/SVF-doxygen/html/html/TypeAnalysis_8h_source.html +1 -1
  187. package/SVF-doxygen/html/html/Util_2BasicTypes_8h_source.html +7 -7
  188. package/SVF-doxygen/html/html/VFGEdge_8h_source.html +2 -2
  189. package/SVF-doxygen/html/html/VFGNode_8h_source.html +6 -6
  190. package/SVF-doxygen/html/html/VFG_8cpp_source.html +7 -5
  191. package/SVF-doxygen/html/html/VFG_8h_source.html +5 -5
  192. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +6 -6
  193. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +15 -10
  194. package/SVF-doxygen/html/html/VersionedFlowSensitive_8h_source.html +7 -7
  195. package/SVF-doxygen/html/html/WPAFSSolver_8h_source.html +6 -3
  196. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +6 -6
  197. package/SVF-doxygen/html/html/WPAPass_8h_source.html +3 -3
  198. package/SVF-doxygen/html/html/WPASolver_8h_source.html +3 -3
  199. package/SVF-doxygen/html/html/WPAStat_8h_source.html +1 -1
  200. package/SVF-doxygen/html/html/WorkList_8h_source.html +1 -1
  201. package/SVF-doxygen/html/html/Z3Expr_8h_source.html +1 -1
  202. package/SVF-doxygen/html/html/annotated.html +169 -162
  203. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +4 -4
  204. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +4 -4
  205. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +5 -4
  206. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +5 -4
  207. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +5 -4
  208. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +1 -1
  209. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +53 -41
  210. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +6 -6
  211. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +9 -9
  212. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD.html +5 -5
  213. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +9 -9
  214. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +16 -16
  215. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +19 -17
  216. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +16 -10
  217. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +11 -11
  218. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +1 -1
  219. package/SVF-doxygen/html/html/classSVF_1_1BDDExprManager.html +17 -10
  220. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +26 -22
  221. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +5 -4
  222. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +1 -1
  223. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +3 -3
  224. package/SVF-doxygen/html/html/classSVF_1_1CFGNormalizer.html +5 -5
  225. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +6 -6
  226. package/SVF-doxygen/html/html/classSVF_1_1CFLGraphBuilder.html +1 -1
  227. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +13 -13
  228. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +1 -1
  229. package/SVF-doxygen/html/html/classSVF_1_1CSC.html +8 -6
  230. package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +1 -1
  231. package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +2 -2
  232. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +5 -4
  233. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +8 -7
  234. package/SVF-doxygen/html/html/classSVF_1_1CondPointsToSet.html +2 -2
  235. package/SVF-doxygen/html/html/classSVF_1_1CondStdSet.html +1 -1
  236. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +14 -14
  237. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +12 -12
  238. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +25 -25
  239. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +5 -4
  240. package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +6 -5
  241. package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +1 -1
  242. package/SVF-doxygen/html/html/classSVF_1_1CxtThreadProc.html +1 -1
  243. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +18 -16
  244. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +4 -4
  245. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +7 -7
  246. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +12 -10
  247. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +36 -33
  248. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +50 -42
  249. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +2 -2
  250. package/SVF-doxygen/html/html/classSVF_1_1DummyVersionPropSVFGNode.html +4 -3
  251. package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +3 -3
  252. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +2 -2
  253. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +3 -3
  254. package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +2 -2
  255. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +20 -20
  256. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +64 -51
  257. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +18 -15
  258. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +23 -21
  259. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +4 -4
  260. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +4 -4
  261. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +6 -5
  262. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +6 -5
  263. package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +1 -1
  264. package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +1 -1
  265. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +3 -3
  266. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +5 -4
  267. package/SVF-doxygen/html/html/classSVF_1_1GrammarBase.html +3 -3
  268. package/SVF-doxygen/html/html/classSVF_1_1GrammarBase_1_1SymbolHash.html +1 -1
  269. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +4 -4
  270. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +2 -2
  271. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.html +1 -1
  272. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +1 -1
  273. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +2 -2
  274. package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +6 -6
  275. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +40 -39
  276. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +4 -4
  277. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  278. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +53 -48
  279. package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +1 -1
  280. package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +2 -2
  281. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +4 -4
  282. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
  283. package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis.html +3 -3
  284. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet-members.html +25 -24
  285. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +85 -45
  286. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +5 -5
  287. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +5 -4
  288. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +13 -9
  289. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +40 -40
  290. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +2 -2
  291. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +56 -43
  292. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +153 -125
  293. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +6 -6
  294. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +4 -4
  295. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +8 -8
  296. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +13 -10
  297. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +24 -15
  298. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +44 -36
  299. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +2 -2
  300. package/SVF-doxygen/html/html/classSVF_1_1MemRegion.html +12 -8
  301. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +23 -23
  302. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +3 -3
  303. package/SVF-doxygen/html/html/classSVF_1_1MutableDFPTData.html +4 -2
  304. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +11 -11
  305. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +5 -4
  306. package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +10 -7
  307. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +2 -2
  308. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +3 -3
  309. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +5 -4
  310. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +8 -6
  311. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +5 -3
  312. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +13 -10
  313. package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +15 -15
  314. package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +3 -3
  315. package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +3 -3
  316. package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +6 -6
  317. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +6 -6
  318. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +1 -1
  319. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +22 -22
  320. package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +214 -206
  321. package/SVF-doxygen/html/html/classSVF_1_1PointsTo_1_1PointsToIterator-members.html +1 -1
  322. package/SVF-doxygen/html/html/classSVF_1_1PointsTo_1_1PointsToIterator.html +83 -75
  323. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +13 -7
  324. package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +1 -1
  325. package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +2 -2
  326. package/SVF-doxygen/html/html/classSVF_1_1SCCDetection.html +11 -8
  327. package/SVF-doxygen/html/html/classSVF_1_1SCCDetection_1_1GNodeSCCInfo.html +8 -7
  328. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +2 -2
  329. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +4 -4
  330. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +49 -40
  331. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +4 -4
  332. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +34 -29
  333. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +11 -9
  334. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobal.html +2 -2
  335. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +11 -10
  336. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +46 -46
  337. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +2 -2
  338. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +3 -3
  339. package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +33 -33
  340. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +16 -16
  341. package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector-members.html +117 -0
  342. package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector.html +1358 -0
  343. package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector_1_1SparseBitVectorIterator-members.html +95 -0
  344. package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector_1_1SparseBitVectorIterator.html +594 -0
  345. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +13 -12
  346. package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +1 -1
  347. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +4 -4
  348. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +1 -1
  349. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +4 -4
  350. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +20 -20
  351. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +8 -8
  352. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +23 -23
  353. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +1 -1
  354. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +12 -9
  355. package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +2 -2
  356. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +4 -4
  357. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +5 -4
  358. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +6 -6
  359. package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +2 -2
  360. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +44 -39
  361. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +11 -10
  362. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC.html +2 -1
  363. package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver.html +4 -3
  364. package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver.html +14 -11
  365. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +7 -7
  366. package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver.html +4 -3
  367. package/SVF-doxygen/html/html/classSVF_1_1WPASolver.html +1 -1
  368. package/SVF-doxygen/html/html/classes.html +107 -106
  369. package/SVF-doxygen/html/html/dir_95e22971b5dbae2382075a3453e365b4.html +2 -0
  370. package/SVF-doxygen/html/html/files.html +8 -7
  371. package/SVF-doxygen/html/html/functions_a.html +12 -3
  372. package/SVF-doxygen/html/html/functions_b.html +27 -5
  373. package/SVF-doxygen/html/html/functions_c.html +25 -14
  374. package/SVF-doxygen/html/html/functions_e.html +20 -2
  375. package/SVF-doxygen/html/html/functions_eval_b.html +10 -0
  376. package/SVF-doxygen/html/html/functions_f.html +31 -13
  377. package/SVF-doxygen/html/html/functions_func.html +8 -2
  378. package/SVF-doxygen/html/html/functions_func_b.html +4 -3
  379. package/SVF-doxygen/html/html/functions_func_c.html +24 -16
  380. package/SVF-doxygen/html/html/functions_func_e.html +5 -2
  381. package/SVF-doxygen/html/html/functions_func_f.html +19 -1
  382. package/SVF-doxygen/html/html/functions_func_g.html +13 -10
  383. package/SVF-doxygen/html/html/functions_func_i.html +18 -8
  384. package/SVF-doxygen/html/html/functions_func_o.html +19 -8
  385. package/SVF-doxygen/html/html/functions_func_r.html +4 -2
  386. package/SVF-doxygen/html/html/functions_func_s.html +16 -5
  387. package/SVF-doxygen/html/html/functions_func_t.html +4 -0
  388. package/SVF-doxygen/html/html/functions_func_u.html +3 -0
  389. package/SVF-doxygen/html/html/functions_func_w.html +3 -0
  390. package/SVF-doxygen/html/html/functions_g.html +16 -13
  391. package/SVF-doxygen/html/html/functions_i.html +24 -12
  392. package/SVF-doxygen/html/html/functions_l.html +3 -3
  393. package/SVF-doxygen/html/html/functions_o.html +28 -17
  394. package/SVF-doxygen/html/html/functions_p.html +19 -17
  395. package/SVF-doxygen/html/html/functions_r.html +5 -5
  396. package/SVF-doxygen/html/html/functions_s.html +25 -11
  397. package/SVF-doxygen/html/html/functions_t.html +14 -8
  398. package/SVF-doxygen/html/html/functions_type_b.html +3 -0
  399. package/SVF-doxygen/html/html/functions_type_e.html +9 -0
  400. package/SVF-doxygen/html/html/functions_type_i.html +1 -0
  401. package/SVF-doxygen/html/html/functions_type_s.html +3 -0
  402. package/SVF-doxygen/html/html/functions_u.html +3 -0
  403. package/SVF-doxygen/html/html/functions_v.html +3 -3
  404. package/SVF-doxygen/html/html/functions_vars_a.html +3 -0
  405. package/SVF-doxygen/html/html/functions_vars_b.html +10 -0
  406. package/SVF-doxygen/html/html/functions_vars_c.html +3 -0
  407. package/SVF-doxygen/html/html/functions_vars_e.html +6 -0
  408. package/SVF-doxygen/html/html/functions_vars_i.html +3 -0
  409. package/SVF-doxygen/html/html/functions_vars_s.html +1 -1
  410. package/SVF-doxygen/html/html/functions_vars_w.html +3 -0
  411. package/SVF-doxygen/html/html/functions_w.html +11 -11
  412. package/SVF-doxygen/html/html/globals_defs_h.html +6 -0
  413. package/SVF-doxygen/html/html/globals_defs_s.html +5 -2
  414. package/SVF-doxygen/html/html/globals_h.html +8 -2
  415. package/SVF-doxygen/html/html/globals_s.html +14 -11
  416. package/SVF-doxygen/html/html/hierarchy.html +161 -154
  417. package/SVF-doxygen/html/html/menudata.js +2 -1
  418. package/SVF-doxygen/html/html/namespaceSVF.html +559 -70
  419. package/SVF-doxygen/html/html/namespaceSVF_1_1LLVMUtil.html +5 -5
  420. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +27 -23
  421. package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +3 -3
  422. package/SVF-doxygen/html/html/namespacemembers_c.html +9 -0
  423. package/SVF-doxygen/html/html/namespacemembers_d.html +4 -1
  424. package/SVF-doxygen/html/html/namespacemembers_enum.html +3 -0
  425. package/SVF-doxygen/html/html/namespacemembers_eval.html +9 -0
  426. package/SVF-doxygen/html/html/namespacemembers_func.html +20 -2
  427. package/SVF-doxygen/html/html/namespacemembers_n.html +1 -1
  428. package/SVF-doxygen/html/html/namespacemembers_o.html +7 -1
  429. package/SVF-doxygen/html/html/namespacemembers_s.html +0 -3
  430. package/SVF-doxygen/html/html/namespacemembers_type.html +1 -4
  431. package/SVF-doxygen/html/html/namespacemembers_z.html +85 -0
  432. package/SVF-doxygen/html/html/search/all_1.js +3 -1
  433. package/SVF-doxygen/html/html/search/all_10.js +10 -8
  434. package/SVF-doxygen/html/html/search/all_12.js +2 -2
  435. package/SVF-doxygen/html/html/search/all_13.js +16 -11
  436. package/SVF-doxygen/html/html/search/all_14.js +9 -8
  437. package/SVF-doxygen/html/html/search/all_15.js +2 -1
  438. package/SVF-doxygen/html/html/search/all_16.js +2 -2
  439. package/SVF-doxygen/html/html/search/all_17.js +3 -2
  440. package/SVF-doxygen/html/html/search/all_1a.js +4 -0
  441. package/SVF-doxygen/html/html/search/all_2.js +8 -3
  442. package/SVF-doxygen/html/html/search/all_3.js +7 -3
  443. package/SVF-doxygen/html/html/search/all_4.js +1 -1
  444. package/SVF-doxygen/html/html/search/all_5.js +7 -3
  445. package/SVF-doxygen/html/html/search/all_6.js +8 -3
  446. package/SVF-doxygen/html/html/search/all_7.js +1 -0
  447. package/SVF-doxygen/html/html/search/all_8.js +3 -1
  448. package/SVF-doxygen/html/html/search/all_9.js +8 -6
  449. package/SVF-doxygen/html/html/search/all_c.js +2 -1
  450. package/SVF-doxygen/html/html/search/all_d.js +2 -2
  451. package/SVF-doxygen/html/html/search/all_e.js +2 -2
  452. package/SVF-doxygen/html/html/search/all_f.js +15 -15
  453. package/SVF-doxygen/html/html/search/classes_10.js +1 -0
  454. package/SVF-doxygen/html/html/search/classes_7.js +1 -1
  455. package/SVF-doxygen/html/html/search/classes_9.js +1 -0
  456. package/SVF-doxygen/html/html/search/classes_d.js +2 -0
  457. package/SVF-doxygen/html/html/search/classes_f.js +3 -0
  458. package/SVF-doxygen/html/html/search/defines_6.js +2 -0
  459. package/SVF-doxygen/html/html/search/defines_f.js +2 -1
  460. package/SVF-doxygen/html/html/search/enums_d.html +26 -0
  461. package/SVF-doxygen/html/html/search/enums_d.js +4 -0
  462. package/SVF-doxygen/html/html/search/enumvalues_1.js +3 -0
  463. package/SVF-doxygen/html/html/search/enumvalues_14.js +3 -2
  464. package/SVF-doxygen/html/html/search/files_d.js +1 -0
  465. package/SVF-doxygen/html/html/search/functions_0.js +2 -0
  466. package/SVF-doxygen/html/html/search/functions_1.js +1 -1
  467. package/SVF-doxygen/html/html/search/functions_10.js +1 -1
  468. package/SVF-doxygen/html/html/search/functions_11.js +4 -1
  469. package/SVF-doxygen/html/html/search/functions_12.js +2 -2
  470. package/SVF-doxygen/html/html/search/functions_13.js +1 -0
  471. package/SVF-doxygen/html/html/search/functions_15.js +1 -0
  472. package/SVF-doxygen/html/html/search/functions_2.js +6 -3
  473. package/SVF-doxygen/html/html/search/functions_3.js +1 -1
  474. package/SVF-doxygen/html/html/search/functions_4.js +2 -2
  475. package/SVF-doxygen/html/html/search/functions_5.js +6 -1
  476. package/SVF-doxygen/html/html/search/functions_6.js +1 -0
  477. package/SVF-doxygen/html/html/search/functions_8.js +4 -2
  478. package/SVF-doxygen/html/html/search/functions_e.js +12 -12
  479. package/SVF-doxygen/html/html/search/searchdata.js +2 -2
  480. package/SVF-doxygen/html/html/search/typedefs_1.js +1 -0
  481. package/SVF-doxygen/html/html/search/typedefs_11.js +1 -1
  482. package/SVF-doxygen/html/html/search/typedefs_4.js +3 -0
  483. package/SVF-doxygen/html/html/search/typedefs_8.js +1 -1
  484. package/SVF-doxygen/html/html/search/typedefs_d.js +1 -1
  485. package/SVF-doxygen/html/html/search/variables_1.js +1 -1
  486. package/SVF-doxygen/html/html/search/variables_13.js +1 -1
  487. package/SVF-doxygen/html/html/search/variables_14.js +3 -3
  488. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  489. package/SVF-doxygen/html/html/search/variables_17.js +1 -0
  490. package/SVF-doxygen/html/html/search/variables_2.js +3 -1
  491. package/SVF-doxygen/html/html/search/variables_3.js +1 -0
  492. package/SVF-doxygen/html/html/search/variables_5.js +2 -1
  493. package/SVF-doxygen/html/html/search/variables_9.js +1 -0
  494. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  495. package/SVF-doxygen/html/html/structSVF_1_1GrammarBase_1_1Symbol.html +4 -4
  496. package/SVF-doxygen/html/html/structSVF_1_1Hash.html +3 -3
  497. package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01NodePair_01_4.html +3 -3
  498. package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01std_1_1pair_3_01S_00_01T_01_4_01_4.html +5 -5
  499. package/SVF-doxygen/html/html/structSVF_1_1LeadingZerosCounter-members.html +81 -0
  500. package/SVF-doxygen/html/html/structSVF_1_1LeadingZerosCounter.html +138 -0
  501. package/SVF-doxygen/html/html/structSVF_1_1PopulationCounter-members.html +81 -0
  502. package/SVF-doxygen/html/html/structSVF_1_1PopulationCounter.html +129 -0
  503. package/SVF-doxygen/html/html/structSVF_1_1PopulationCounter_3_01T_00_018_01_4-members.html +81 -0
  504. package/SVF-doxygen/html/html/structSVF_1_1PopulationCounter_3_01T_00_018_01_4.html +129 -0
  505. package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1equalNodeBS.html +3 -3
  506. package/SVF-doxygen/html/html/structSVF_1_1SparseBitVectorElement-members.html +107 -0
  507. package/SVF-doxygen/html/html/structSVF_1_1SparseBitVectorElement.html +981 -0
  508. package/SVF-doxygen/html/html/structSVF_1_1TrailingZerosCounter-members.html +81 -0
  509. package/SVF-doxygen/html/html/structSVF_1_1TrailingZerosCounter.html +138 -0
  510. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CondStdSet_3_01Element_01_4_01_4.html +1 -1
  511. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtDPItem_01_4.html +1 -1
  512. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtStmtDPItem_3_01LocCond_01_4_01_4.html +1 -1
  513. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1ExeState_01_4.html +1 -1
  514. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1LocationSet_01_4.html +1 -1
  515. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1NodePair_01_4.html +3 -3
  516. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1PointsTo_01_4.html +3 -3
  517. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SparseBitVector_3_01N_01_4_01_4-members.html +81 -0
  518. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SparseBitVector_3_01N_01_4_01_4.html +136 -0
  519. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1StmtDPItem_3_01LocCond_01_4_01_4.html +1 -1
  520. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SymState_01_4.html +1 -1
  521. package/SVF-doxygen/html/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4.html +3 -3
  522. package/SVF-doxygen/html/html/svf-ex_8cpp.html +6 -6
  523. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +6 -6
  524. package/include/MemoryModel/PointsTo.h +3 -2
  525. package/include/SVF-FE/LLVMModule.h +3 -0
  526. package/include/Util/SVFBasicTypes.h +6 -5
  527. package/include/Util/SparseBitVector.h +1208 -0
  528. package/lib/MemoryModel/PointsTo.cpp +12 -12
  529. package/lib/SVF-FE/LLVMModule.cpp +157 -18
  530. package/lib/Util/CoreBitVector.cpp +2 -2
  531. package/lib/WPA/Andersen.cpp +1 -1
  532. package/lib/WPA/FlowSensitive.cpp +1 -1
  533. package/package.json +1 -1
@@ -384,6 +384,8 @@ Classes</h2></td></tr>
384
384
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
385
385
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1IteratedDominanceFrontier.html">IteratedDominanceFrontier</a></td></tr>
386
386
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
387
+ <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSVF_1_1LeadingZerosCounter.html">LeadingZerosCounter</a></td></tr>
388
+ <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
387
389
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LeakChecker.html">LeakChecker</a></td></tr>
388
390
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
389
391
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1List.html">List</a></td></tr>
@@ -509,6 +511,10 @@ Classes</h2></td></tr>
509
511
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
510
512
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a></td></tr>
511
513
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
514
+ <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSVF_1_1PopulationCounter.html">PopulationCounter</a></td></tr>
515
+ <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
516
+ <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSVF_1_1PopulationCounter_3_01T_00_018_01_4.html">PopulationCounter&lt; T, 8 &gt;</a></td></tr>
517
+ <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
512
518
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ProgSlice.html">ProgSlice</a></td></tr>
513
519
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
514
520
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a></td></tr>
@@ -554,6 +560,10 @@ Classes</h2></td></tr>
554
560
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
555
561
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SelectStmt.html">SelectStmt</a></td></tr>
556
562
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
563
+ <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a></td></tr>
564
+ <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
565
+ <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSVF_1_1SparseBitVectorElement.html">SparseBitVectorElement</a></td></tr>
566
+ <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
557
567
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SrcSnkDDA.html">SrcSnkDDA</a></td></tr>
558
568
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
559
569
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SrcSnkSolver.html">SrcSnkSolver</a></td></tr>
@@ -632,6 +642,8 @@ Classes</h2></td></tr>
632
642
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
633
643
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ThreadMHPIndSVFGEdge.html">ThreadMHPIndSVFGEdge</a></td></tr>
634
644
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
645
+ <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSVF_1_1TrailingZerosCounter.html">TrailingZerosCounter</a></td></tr>
646
+ <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
635
647
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1TypeAnalysis.html">TypeAnalysis</a></td></tr>
636
648
  <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
637
649
  <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1UnaryOPStmt.html">UnaryOPStmt</a></td></tr>
@@ -875,10 +887,8 @@ Typedefs</h2></td></tr>
875
887
  <tr class="separator:a03d88a0302bcd253387690f13f693f64"><td class="memSeparator" colspan="2">&#160;</td></tr>
876
888
  <tr class="memitem:a10cddb090690c82a2aab31a480253d35"><td class="memItemLeft" align="right" valign="top">typedef unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#a10cddb090690c82a2aab31a480253d35">ThreadID</a></td></tr>
877
889
  <tr class="separator:a10cddb090690c82a2aab31a480253d35"><td class="memSeparator" colspan="2">&#160;</td></tr>
878
- <tr class="memitem:a740396763e377643790c8b803ab3e4ea"><td class="memItemLeft" align="right" valign="top">typedef llvm::SparseBitVector&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a></td></tr>
879
- <tr class="separator:a740396763e377643790c8b803ab3e4ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
880
- <tr class="memitem:ab6cf2115b54ef7135b031efc2f112b54"><td class="memItemLeft" align="right" valign="top">typedef llvm::SparseBitVector&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#ab6cf2115b54ef7135b031efc2f112b54">SparseBitVector</a></td></tr>
881
- <tr class="separator:ab6cf2115b54ef7135b031efc2f112b54"><td class="memSeparator" colspan="2">&#160;</td></tr>
890
+ <tr class="memitem:aa7b6a13e52671de8524b130738aeb564"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#aa7b6a13e52671de8524b130738aeb564">NodeBS</a></td></tr>
891
+ <tr class="separator:aa7b6a13e52671de8524b130738aeb564"><td class="memSeparator" colspan="2">&#160;</td></tr>
882
892
  <tr class="memitem:a2b2887cf75225bc9127338b4cf30aa85"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#a2b2887cf75225bc9127338b4cf30aa85">AliasSet</a></td></tr>
883
893
  <tr class="separator:a2b2887cf75225bc9127338b4cf30aa85"><td class="memSeparator" colspan="2">&#160;</td></tr>
884
894
  <tr class="memitem:ae545a88267bd2246de827cf590675aca"><td class="memItemLeft" align="right" valign="top">typedef unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#ae545a88267bd2246de827cf590675aca">PointsToID</a></td></tr>
@@ -938,6 +948,12 @@ Typedefs</h2></td></tr>
938
948
  </table><table class="memberdecls">
939
949
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
940
950
  Enumerations</h2></td></tr>
951
+ <tr class="memitem:af5b6ec9770091c42227a45491b00b349"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349">ZeroBehavior</a> { <a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349a5cbe6f40e9b49a24bc2d2e4bf6f12d54">ZB_Undefined</a>,
952
+ <a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349aac378e728f7d53b2d96be1d33c63afb1">ZB_Max</a>,
953
+ <a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349afdacc59903d2677ef91777d78c7b80a7">ZB_Width</a>
954
+ }<tr class="memdesc:af5b6ec9770091c42227a45491b00b349"><td class="mdescLeft">&#160;</td><td class="mdescRight">The behavior an operation has on an input of 0. <a href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349">More...</a><br /></td></tr>
955
+ </td></tr>
956
+ <tr class="separator:af5b6ec9770091c42227a45491b00b349"><td class="memSeparator" colspan="2">&#160;</td></tr>
941
957
  <tr class="memitem:a3e2b6638b0fbca37846e953142bcc844"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844">ModRefInfo</a> { <a class="el" href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a7f99364c041329bd5758261c8c440b30">ModRef</a>,
942
958
  <a class="el" href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a068332f7018e0e4ff96fd22e7db1ca76">Ref</a>,
943
959
  <a class="el" href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844aea8604a04fd5c658e0ca8b9177316ba0">Mod</a>,
@@ -967,6 +983,39 @@ Functions</h2></td></tr>
967
983
  <tr class="memitem:af83f5c5c68cdb80576cdc1d62c01b207"><td class="memTemplParams" colspan="2">template&lt;typename F , typename S &gt; </td></tr>
968
984
  <tr class="memitem:af83f5c5c68cdb80576cdc1d62c01b207"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8bd74fdcb0e58d0249003df9c3fb8b31">OutStream</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#af83f5c5c68cdb80576cdc1d62c01b207">operator&lt;&lt;</a> (<a class="el" href="namespaceSVF.html#a8bd74fdcb0e58d0249003df9c3fb8b31">OutStream</a> &amp;o, const std::pair&lt; <a class="el" href="CFLGrammar_8txt.html#a00967427d1c110ffcc82ea2a966f4564">F</a>, S &gt; &amp;var)</td></tr>
969
985
  <tr class="separator:af83f5c5c68cdb80576cdc1d62c01b207"><td class="memSeparator" colspan="2">&#160;</td></tr>
986
+ <tr class="memitem:a5cb5811bab8e04773dfa21ad919df461"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
987
+ <tr class="memitem:a5cb5811bab8e04773dfa21ad919df461"><td class="memTemplItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#a5cb5811bab8e04773dfa21ad919df461">countTrailingZeros</a> (T Val, <a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349">ZeroBehavior</a> ZB=<a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349afdacc59903d2677ef91777d78c7b80a7">ZB_Width</a>)</td></tr>
988
+ <tr class="separator:a5cb5811bab8e04773dfa21ad919df461"><td class="memSeparator" colspan="2">&#160;</td></tr>
989
+ <tr class="memitem:af897f6692f1f6aa13d897f89b3370d0d"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
990
+ <tr class="memitem:af897f6692f1f6aa13d897f89b3370d0d"><td class="memTemplItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#af897f6692f1f6aa13d897f89b3370d0d">countLeadingZeros</a> (T Val, <a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349">ZeroBehavior</a> ZB=<a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349afdacc59903d2677ef91777d78c7b80a7">ZB_Width</a>)</td></tr>
991
+ <tr class="separator:af897f6692f1f6aa13d897f89b3370d0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
992
+ <tr class="memitem:ae86e9ecca38512426d0bade3a95d0a51"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
993
+ <tr class="memitem:ae86e9ecca38512426d0bade3a95d0a51"><td class="memTemplItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#ae86e9ecca38512426d0bade3a95d0a51">countPopulation</a> (T <a class="el" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>)</td></tr>
994
+ <tr class="separator:ae86e9ecca38512426d0bade3a95d0a51"><td class="memSeparator" colspan="2">&#160;</td></tr>
995
+ <tr class="memitem:a97ff28f5dfd5c31e6ef351de3cdad85d"><td class="memTemplParams" colspan="2">template&lt;unsigned ElementSize&gt; </td></tr>
996
+ <tr class="memitem:a97ff28f5dfd5c31e6ef351de3cdad85d"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#a97ff28f5dfd5c31e6ef351de3cdad85d">operator|=</a> (<a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;LHS, const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; *RHS)</td></tr>
997
+ <tr class="separator:a97ff28f5dfd5c31e6ef351de3cdad85d"><td class="memSeparator" colspan="2">&#160;</td></tr>
998
+ <tr class="memitem:a7554dead3b2d1bcdfcb36c213e6735b6"><td class="memTemplParams" colspan="2">template&lt;unsigned ElementSize&gt; </td></tr>
999
+ <tr class="memitem:a7554dead3b2d1bcdfcb36c213e6735b6"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#a7554dead3b2d1bcdfcb36c213e6735b6">operator|=</a> (<a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; *LHS, const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;RHS)</td></tr>
1000
+ <tr class="separator:a7554dead3b2d1bcdfcb36c213e6735b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
1001
+ <tr class="memitem:a9d6c986a34096a3552a6385ccbb724e4"><td class="memTemplParams" colspan="2">template&lt;unsigned ElementSize&gt; </td></tr>
1002
+ <tr class="memitem:a9d6c986a34096a3552a6385ccbb724e4"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#a9d6c986a34096a3552a6385ccbb724e4">operator&amp;=</a> (<a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; *LHS, const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;RHS)</td></tr>
1003
+ <tr class="separator:a9d6c986a34096a3552a6385ccbb724e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
1004
+ <tr class="memitem:a5df68020aca621b053acbe3f917f0809"><td class="memTemplParams" colspan="2">template&lt;unsigned ElementSize&gt; </td></tr>
1005
+ <tr class="memitem:a5df68020aca621b053acbe3f917f0809"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#a5df68020aca621b053acbe3f917f0809">operator&amp;=</a> (<a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;LHS, const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; *RHS)</td></tr>
1006
+ <tr class="separator:a5df68020aca621b053acbe3f917f0809"><td class="memSeparator" colspan="2">&#160;</td></tr>
1007
+ <tr class="memitem:ad16a5803e8f1fa06266223aeb8366df1"><td class="memTemplParams" colspan="2">template&lt;unsigned ElementSize&gt; </td></tr>
1008
+ <tr class="memitem:ad16a5803e8f1fa06266223aeb8366df1"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#ad16a5803e8f1fa06266223aeb8366df1">operator|</a> (const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;LHS, const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;RHS)</td></tr>
1009
+ <tr class="separator:ad16a5803e8f1fa06266223aeb8366df1"><td class="memSeparator" colspan="2">&#160;</td></tr>
1010
+ <tr class="memitem:a47b11c4e305a8a1e2dc387c2f9d4617e"><td class="memTemplParams" colspan="2">template&lt;unsigned ElementSize&gt; </td></tr>
1011
+ <tr class="memitem:a47b11c4e305a8a1e2dc387c2f9d4617e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#a47b11c4e305a8a1e2dc387c2f9d4617e">operator &amp;</a> (const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;LHS, const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;RHS)</td></tr>
1012
+ <tr class="separator:a47b11c4e305a8a1e2dc387c2f9d4617e"><td class="memSeparator" colspan="2">&#160;</td></tr>
1013
+ <tr class="memitem:a1b6662f895cfd942996ac4d578960eed"><td class="memTemplParams" colspan="2">template&lt;unsigned ElementSize&gt; </td></tr>
1014
+ <tr class="memitem:a1b6662f895cfd942996ac4d578960eed"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#a1b6662f895cfd942996ac4d578960eed">operator-</a> (const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;LHS, const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;RHS)</td></tr>
1015
+ <tr class="separator:a1b6662f895cfd942996ac4d578960eed"><td class="memSeparator" colspan="2">&#160;</td></tr>
1016
+ <tr class="memitem:aae350f79ebcb9efd22ec9efa6678cd13"><td class="memTemplParams" colspan="2">template&lt;unsigned ElementSize&gt; </td></tr>
1017
+ <tr class="memitem:aae350f79ebcb9efd22ec9efa6678cd13"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#aae350f79ebcb9efd22ec9efa6678cd13">dump</a> (const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;LHS, std::ostream &amp;out)</td></tr>
1018
+ <tr class="separator:aae350f79ebcb9efd22ec9efa6678cd13"><td class="memSeparator" colspan="2">&#160;</td></tr>
970
1019
  <tr class="memitem:aaa21ff095e66a18937f29246e213f69d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#aaa21ff095e66a18937f29246e213f69d">operator &amp;</a> (const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;lhs, const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;rhs)</td></tr>
971
1020
  <tr class="memdesc:aaa21ff095e66a18937f29246e213f69d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a new lhs &amp; rhs. <a href="#aaa21ff095e66a18937f29246e213f69d">More...</a><br /></td></tr>
972
1021
  <tr class="separator:aaa21ff095e66a18937f29246e213f69d"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -1042,7 +1091,7 @@ Functions</h2></td></tr>
1042
1091
  </table>
1043
1092
  </div><div class="memdoc">
1044
1093
 
1045
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00098">98</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
1094
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00099">99</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
1046
1095
 
1047
1096
  </div>
1048
1097
  </div>
@@ -1142,7 +1191,7 @@ Functions</h2></td></tr>
1142
1191
  </table>
1143
1192
  </div><div class="memdoc">
1144
1193
 
1145
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00092">92</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
1194
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00093">93</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
1146
1195
 
1147
1196
  </div>
1148
1197
  </div>
@@ -1158,7 +1207,7 @@ Functions</h2></td></tr>
1158
1207
  </table>
1159
1208
  </div><div class="memdoc">
1160
1209
 
1161
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00130">130</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
1210
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00131">131</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
1162
1211
 
1163
1212
  </div>
1164
1213
  </div>
@@ -1386,7 +1435,7 @@ Functions</h2></td></tr>
1386
1435
  </table>
1387
1436
  </div><div class="memdoc">
1388
1437
 
1389
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00090">90</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
1438
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00091">91</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
1390
1439
 
1391
1440
  </div>
1392
1441
  </div>
@@ -1402,7 +1451,7 @@ Functions</h2></td></tr>
1402
1451
  </table>
1403
1452
  </div><div class="memdoc">
1404
1453
 
1405
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00129">129</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
1454
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00130">130</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
1406
1455
 
1407
1456
  </div>
1408
1457
  </div>
@@ -1418,7 +1467,7 @@ Functions</h2></td></tr>
1418
1467
  </table>
1419
1468
  </div><div class="memdoc">
1420
1469
 
1421
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00125">125</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
1470
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00126">126</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
1422
1471
 
1423
1472
  </div>
1424
1473
  </div>
@@ -2090,7 +2139,7 @@ template&lt;typename Key , typename Value , typename Hash = Hash&lt;Key&gt;, ty
2090
2139
  </table>
2091
2140
  </div><div class="memdoc">
2092
2141
 
2093
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00109">109</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2142
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00110">110</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2094
2143
 
2095
2144
  </div>
2096
2145
  </div>
@@ -2192,19 +2241,19 @@ template&lt;typename Key , typename Value , typename Hash = Hash&lt;Key&gt;, ty
2192
2241
 
2193
2242
  </div>
2194
2243
  </div>
2195
- <a id="a740396763e377643790c8b803ab3e4ea"></a>
2196
- <h2 class="memtitle"><span class="permalink"><a href="#a740396763e377643790c8b803ab3e4ea">&#9670;&nbsp;</a></span>NodeBS</h2>
2244
+ <a id="aa7b6a13e52671de8524b130738aeb564"></a>
2245
+ <h2 class="memtitle"><span class="permalink"><a href="#aa7b6a13e52671de8524b130738aeb564">&#9670;&nbsp;</a></span>NodeBS</h2>
2197
2246
 
2198
2247
  <div class="memitem">
2199
2248
  <div class="memproto">
2200
2249
  <table class="memname">
2201
2250
  <tr>
2202
- <td class="memname">typedef llvm::SparseBitVector <a class="el" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></td>
2251
+ <td class="memname">typedef <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a> <a class="el" href="namespaceSVF.html#aa7b6a13e52671de8524b130738aeb564">SVF::NodeBS</a></td>
2203
2252
  </tr>
2204
2253
  </table>
2205
2254
  </div><div class="memdoc">
2206
2255
 
2207
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00095">95</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2256
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00096">96</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2208
2257
 
2209
2258
  </div>
2210
2259
  </div>
@@ -2220,7 +2269,7 @@ template&lt;typename Key , typename Value , typename Hash = Hash&lt;Key&gt;, ty
2220
2269
  </table>
2221
2270
  </div><div class="memdoc">
2222
2271
 
2223
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00128">128</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2272
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00129">129</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2224
2273
 
2225
2274
  </div>
2226
2275
  </div>
@@ -2252,7 +2301,7 @@ template&lt;typename Key , typename Value , typename Hash = Hash&lt;Key&gt;, ty
2252
2301
  </table>
2253
2302
  </div><div class="memdoc">
2254
2303
 
2255
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00127">127</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2304
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00128">128</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2256
2305
 
2257
2306
  </div>
2258
2307
  </div>
@@ -2268,7 +2317,7 @@ template&lt;typename Key , typename Value , typename Hash = Hash&lt;Key&gt;, ty
2268
2317
  </table>
2269
2318
  </div><div class="memdoc">
2270
2319
 
2271
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00119">119</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2320
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00120">120</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2272
2321
 
2273
2322
  </div>
2274
2323
  </div>
@@ -2284,7 +2333,7 @@ template&lt;typename Key , typename Value , typename Hash = Hash&lt;Key&gt;, ty
2284
2333
  </table>
2285
2334
  </div><div class="memdoc">
2286
2335
 
2287
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00123">123</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2336
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00124">124</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2288
2337
 
2289
2338
  </div>
2290
2339
  </div>
@@ -2300,7 +2349,7 @@ template&lt;typename Key , typename Value , typename Hash = Hash&lt;Key&gt;, ty
2300
2349
  </table>
2301
2350
  </div><div class="memdoc">
2302
2351
 
2303
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00122">122</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2352
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00123">123</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2304
2353
 
2305
2354
  </div>
2306
2355
  </div>
@@ -2316,7 +2365,7 @@ template&lt;typename Key , typename Value , typename Hash = Hash&lt;Key&gt;, ty
2316
2365
  </table>
2317
2366
  </div><div class="memdoc">
2318
2367
 
2319
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00121">121</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2368
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00122">122</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2320
2369
 
2321
2370
  </div>
2322
2371
  </div>
@@ -2332,7 +2381,7 @@ template&lt;typename Key , typename Value , typename Hash = Hash&lt;Key&gt;, ty
2332
2381
  </table>
2333
2382
  </div><div class="memdoc">
2334
2383
 
2335
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00126">126</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2384
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00127">127</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2336
2385
 
2337
2386
  </div>
2338
2387
  </div>
@@ -2348,7 +2397,7 @@ template&lt;typename Key , typename Value , typename Hash = Hash&lt;Key&gt;, ty
2348
2397
  </table>
2349
2398
  </div><div class="memdoc">
2350
2399
 
2351
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00124">124</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2400
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00125">125</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2352
2401
 
2353
2402
  </div>
2354
2403
  </div>
@@ -2382,7 +2431,7 @@ template&lt;typename Key , typename Value , typename Compare = std::less&lt;Key
2382
2431
  </table>
2383
2432
  </div><div class="memdoc">
2384
2433
 
2385
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00116">116</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2434
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00117">117</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2386
2435
 
2387
2436
  </div>
2388
2437
  </div>
@@ -2398,7 +2447,7 @@ template&lt;typename Key , typename Value , typename Compare = std::less&lt;Key
2398
2447
  </table>
2399
2448
  </div><div class="memdoc">
2400
2449
 
2401
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00120">120</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2450
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00121">121</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2402
2451
 
2403
2452
  </div>
2404
2453
  </div>
@@ -2416,7 +2465,7 @@ template&lt;typename Key , typename Compare = std::less&lt;Key&gt;, typename Al
2416
2465
  </table>
2417
2466
  </div><div class="memdoc">
2418
2467
 
2419
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00112">112</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2468
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00113">113</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2420
2469
 
2421
2470
  </div>
2422
2471
  </div>
@@ -2432,7 +2481,7 @@ template&lt;typename Key , typename Compare = std::less&lt;Key&gt;, typename Al
2432
2481
  </table>
2433
2482
  </div><div class="memdoc">
2434
2483
 
2435
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00082">82</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2484
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00083">83</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2436
2485
 
2437
2486
  </div>
2438
2487
  </div>
@@ -2528,7 +2577,7 @@ template&lt;typename Key , typename Compare = std::less&lt;Key&gt;, typename Al
2528
2577
  </table>
2529
2578
  </div><div class="memdoc">
2530
2579
 
2531
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00100">100</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2580
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00101">101</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2532
2581
 
2533
2582
  </div>
2534
2583
  </div>
@@ -2594,7 +2643,7 @@ template&lt;typename Key , typename Compare = std::less&lt;Key&gt;, typename Al
2594
2643
  </table>
2595
2644
  </div><div class="memdoc">
2596
2645
 
2597
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00085">85</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2646
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00086">86</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2598
2647
 
2599
2648
  </div>
2600
2649
  </div>
@@ -2610,7 +2659,7 @@ template&lt;typename Key , typename Compare = std::less&lt;Key&gt;, typename Al
2610
2659
  </table>
2611
2660
  </div><div class="memdoc">
2612
2661
 
2613
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00087">87</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2662
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00088">88</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2614
2663
 
2615
2664
  </div>
2616
2665
  </div>
@@ -2628,7 +2677,7 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
2628
2677
  </table>
2629
2678
  </div><div class="memdoc">
2630
2679
 
2631
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00104">104</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2680
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00105">105</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2632
2681
 
2633
2682
  </div>
2634
2683
  </div>
@@ -2644,23 +2693,7 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
2644
2693
  </table>
2645
2694
  </div><div class="memdoc">
2646
2695
 
2647
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00118">118</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2648
-
2649
- </div>
2650
- </div>
2651
- <a id="ab6cf2115b54ef7135b031efc2f112b54"></a>
2652
- <h2 class="memtitle"><span class="permalink"><a href="#ab6cf2115b54ef7135b031efc2f112b54">&#9670;&nbsp;</a></span>SparseBitVector</h2>
2653
-
2654
- <div class="memitem">
2655
- <div class="memproto">
2656
- <table class="memname">
2657
- <tr>
2658
- <td class="memname">typedef llvm::SparseBitVector <a class="el" href="namespaceSVF.html#ab6cf2115b54ef7135b031efc2f112b54">SVF::SparseBitVector</a></td>
2659
- </tr>
2660
- </table>
2661
- </div><div class="memdoc">
2662
-
2663
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00096">96</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2696
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00119">119</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2664
2697
 
2665
2698
  </div>
2666
2699
  </div>
@@ -2792,7 +2825,7 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
2792
2825
  </table>
2793
2826
  </div><div class="memdoc">
2794
2827
 
2795
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00091">91</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2828
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00092">92</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2796
2829
 
2797
2830
  </div>
2798
2831
  </div>
@@ -2808,7 +2841,7 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
2808
2841
  </table>
2809
2842
  </div><div class="memdoc">
2810
2843
 
2811
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00093">93</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2844
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00094">94</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2812
2845
 
2813
2846
  </div>
2814
2847
  </div>
@@ -2842,7 +2875,7 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
2842
2875
  </table>
2843
2876
  </div><div class="memdoc">
2844
2877
 
2845
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00084">84</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2878
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00085">85</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2846
2879
 
2847
2880
  </div>
2848
2881
  </div>
@@ -2858,7 +2891,7 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
2858
2891
  </table>
2859
2892
  </div><div class="memdoc">
2860
2893
 
2861
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00086">86</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2894
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00087">87</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2862
2895
 
2863
2896
  </div>
2864
2897
  </div>
@@ -2906,7 +2939,7 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
2906
2939
  </table>
2907
2940
  </div><div class="memdoc">
2908
2941
 
2909
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00132">132</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2942
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00133">133</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2910
2943
 
2911
2944
  </div>
2912
2945
  </div>
@@ -2922,7 +2955,7 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
2922
2955
  </table>
2923
2956
  </div><div class="memdoc">
2924
2957
 
2925
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00134">134</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2958
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00135">135</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2926
2959
 
2927
2960
  </div>
2928
2961
  </div>
@@ -2938,7 +2971,7 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
2938
2971
  </table>
2939
2972
  </div><div class="memdoc">
2940
2973
 
2941
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00135">135</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2974
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00136">136</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2942
2975
 
2943
2976
  </div>
2944
2977
  </div>
@@ -2954,7 +2987,7 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
2954
2987
  </table>
2955
2988
  </div><div class="memdoc">
2956
2989
 
2957
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00133">133</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2990
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00134">134</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
2958
2991
 
2959
2992
  </div>
2960
2993
  </div>
@@ -3044,11 +3077,11 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
3044
3077
  <tr><td class="fieldname"><a id="a61c01e2e687ab3a001fb806737583943aa03eb20fd81629154d6c346763ea64d6"></a>PartialAlias&#160;</td><td class="fielddoc"></td></tr>
3045
3078
  </table>
3046
3079
 
3047
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00195">195</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
3048
- <div class="fragment"><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;{</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239">NoAlias</a>,</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f">MayAlias</a>,</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2">MustAlias</a>,</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aa03eb20fd81629154d6c346763ea64d6">PartialAlias</a>,</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;};</div><div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f">SVF::MayAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00198">SVFBasicTypes.h:198</a></div></div>
3049
- <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943aa03eb20fd81629154d6c346763ea64d6"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aa03eb20fd81629154d6c346763ea64d6">SVF::PartialAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00200">SVFBasicTypes.h:200</a></div></div>
3050
- <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239">SVF::NoAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00197">SVFBasicTypes.h:197</a></div></div>
3051
- <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2">SVF::MustAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00199">SVFBasicTypes.h:199</a></div></div>
3080
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00196">196</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
3081
+ <div class="fragment"><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;{</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239">NoAlias</a>,</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f">MayAlias</a>,</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2">MustAlias</a>,</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aa03eb20fd81629154d6c346763ea64d6">PartialAlias</a>,</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;};</div><div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f">SVF::MayAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00199">SVFBasicTypes.h:199</a></div></div>
3082
+ <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943aa03eb20fd81629154d6c346763ea64d6"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aa03eb20fd81629154d6c346763ea64d6">SVF::PartialAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00201">SVFBasicTypes.h:201</a></div></div>
3083
+ <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239">SVF::NoAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00198">SVFBasicTypes.h:198</a></div></div>
3084
+ <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2">SVF::MustAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00200">SVFBasicTypes.h:200</a></div></div>
3052
3085
  </div><!-- fragment -->
3053
3086
  </div>
3054
3087
  </div>
@@ -3070,17 +3103,193 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
3070
3103
  <tr><td class="fieldname"><a id="a3e2b6638b0fbca37846e953142bcc844a4756baeb9dbb8b8c737941d67ca99d4f"></a>NoModRef&#160;</td><td class="fielddoc"></td></tr>
3071
3104
  </table>
3072
3105
 
3073
- <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00187">187</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
3074
- <div class="fragment"><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;{</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a7f99364c041329bd5758261c8c440b30">ModRef</a>,</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a068332f7018e0e4ff96fd22e7db1ca76">Ref</a>,</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <a class="code" href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844aea8604a04fd5c658e0ca8b9177316ba0">Mod</a>,</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a4756baeb9dbb8b8c737941d67ca99d4f">NoModRef</a>,</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;};</div><div class="ttc" id="namespaceSVF_html_a3e2b6638b0fbca37846e953142bcc844a068332f7018e0e4ff96fd22e7db1ca76"><div class="ttname"><a href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a068332f7018e0e4ff96fd22e7db1ca76">SVF::Ref</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00190">SVFBasicTypes.h:190</a></div></div>
3075
- <div class="ttc" id="namespaceSVF_html_a3e2b6638b0fbca37846e953142bcc844a4756baeb9dbb8b8c737941d67ca99d4f"><div class="ttname"><a href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a4756baeb9dbb8b8c737941d67ca99d4f">SVF::NoModRef</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00192">SVFBasicTypes.h:192</a></div></div>
3076
- <div class="ttc" id="namespaceSVF_html_a3e2b6638b0fbca37846e953142bcc844a7f99364c041329bd5758261c8c440b30"><div class="ttname"><a href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a7f99364c041329bd5758261c8c440b30">SVF::ModRef</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00189">SVFBasicTypes.h:189</a></div></div>
3077
- <div class="ttc" id="namespaceSVF_html_a3e2b6638b0fbca37846e953142bcc844aea8604a04fd5c658e0ca8b9177316ba0"><div class="ttname"><a href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844aea8604a04fd5c658e0ca8b9177316ba0">SVF::Mod</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00191">SVFBasicTypes.h:191</a></div></div>
3106
+ <p class="definition">Definition at line <a class="el" href="SVFBasicTypes_8h_source.html#l00188">188</a> of file <a class="el" href="SVFBasicTypes_8h_source.html">SVFBasicTypes.h</a>.</p>
3107
+ <div class="fragment"><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;{</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a7f99364c041329bd5758261c8c440b30">ModRef</a>,</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <a class="code" href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a068332f7018e0e4ff96fd22e7db1ca76">Ref</a>,</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844aea8604a04fd5c658e0ca8b9177316ba0">Mod</a>,</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a4756baeb9dbb8b8c737941d67ca99d4f">NoModRef</a>,</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;};</div><div class="ttc" id="namespaceSVF_html_a3e2b6638b0fbca37846e953142bcc844a068332f7018e0e4ff96fd22e7db1ca76"><div class="ttname"><a href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a068332f7018e0e4ff96fd22e7db1ca76">SVF::Ref</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00191">SVFBasicTypes.h:191</a></div></div>
3108
+ <div class="ttc" id="namespaceSVF_html_a3e2b6638b0fbca37846e953142bcc844a4756baeb9dbb8b8c737941d67ca99d4f"><div class="ttname"><a href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a4756baeb9dbb8b8c737941d67ca99d4f">SVF::NoModRef</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00193">SVFBasicTypes.h:193</a></div></div>
3109
+ <div class="ttc" id="namespaceSVF_html_a3e2b6638b0fbca37846e953142bcc844a7f99364c041329bd5758261c8c440b30"><div class="ttname"><a href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844a7f99364c041329bd5758261c8c440b30">SVF::ModRef</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00190">SVFBasicTypes.h:190</a></div></div>
3110
+ <div class="ttc" id="namespaceSVF_html_a3e2b6638b0fbca37846e953142bcc844aea8604a04fd5c658e0ca8b9177316ba0"><div class="ttname"><a href="namespaceSVF.html#a3e2b6638b0fbca37846e953142bcc844aea8604a04fd5c658e0ca8b9177316ba0">SVF::Mod</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00192">SVFBasicTypes.h:192</a></div></div>
3111
+ </div><!-- fragment -->
3112
+ </div>
3113
+ </div>
3114
+ <a id="af5b6ec9770091c42227a45491b00b349"></a>
3115
+ <h2 class="memtitle"><span class="permalink"><a href="#af5b6ec9770091c42227a45491b00b349">&#9670;&nbsp;</a></span>ZeroBehavior</h2>
3116
+
3117
+ <div class="memitem">
3118
+ <div class="memproto">
3119
+ <table class="memname">
3120
+ <tr>
3121
+ <td class="memname">enum <a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349">SVF::ZeroBehavior</a></td>
3122
+ </tr>
3123
+ </table>
3124
+ </div><div class="memdoc">
3125
+
3126
+ <p>The behavior an operation has on an input of 0. </p>
3127
+ <table class="fieldtable">
3128
+ <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="af5b6ec9770091c42227a45491b00b349a5cbe6f40e9b49a24bc2d2e4bf6f12d54"></a>ZB_Undefined&#160;</td><td class="fielddoc"><p>The returned value is undefined. </p>
3129
+ </td></tr>
3130
+ <tr><td class="fieldname"><a id="af5b6ec9770091c42227a45491b00b349aac378e728f7d53b2d96be1d33c63afb1"></a>ZB_Max&#160;</td><td class="fielddoc"><p>The returned value is numeric_limits&lt;T&gt;::max() </p>
3131
+ </td></tr>
3132
+ <tr><td class="fieldname"><a id="af5b6ec9770091c42227a45491b00b349afdacc59903d2677ef91777d78c7b80a7"></a>ZB_Width&#160;</td><td class="fielddoc"><p>The returned value is numeric_limits&lt;T&gt;::digits. </p>
3133
+ </td></tr>
3134
+ </table>
3135
+
3136
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00032">32</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
3137
+ <div class="fragment"><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;{</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <a class="code" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349a5cbe6f40e9b49a24bc2d2e4bf6f12d54">ZB_Undefined</a>,</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="code" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349aac378e728f7d53b2d96be1d33c63afb1">ZB_Max</a>,</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <a class="code" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349afdacc59903d2677ef91777d78c7b80a7">ZB_Width</a></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;};</div><div class="ttc" id="namespaceSVF_html_af5b6ec9770091c42227a45491b00b349aac378e728f7d53b2d96be1d33c63afb1"><div class="ttname"><a href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349aac378e728f7d53b2d96be1d33c63afb1">SVF::ZB_Max</a></div><div class="ttdoc">The returned value is numeric_limits&lt;T&gt;::max() </div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00037">SparseBitVector.h:37</a></div></div>
3138
+ <div class="ttc" id="namespaceSVF_html_af5b6ec9770091c42227a45491b00b349a5cbe6f40e9b49a24bc2d2e4bf6f12d54"><div class="ttname"><a href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349a5cbe6f40e9b49a24bc2d2e4bf6f12d54">SVF::ZB_Undefined</a></div><div class="ttdoc">The returned value is undefined. </div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00035">SparseBitVector.h:35</a></div></div>
3139
+ <div class="ttc" id="namespaceSVF_html_af5b6ec9770091c42227a45491b00b349afdacc59903d2677ef91777d78c7b80a7"><div class="ttname"><a href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349afdacc59903d2677ef91777d78c7b80a7">SVF::ZB_Width</a></div><div class="ttdoc">The returned value is numeric_limits&lt;T&gt;::digits. </div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00039">SparseBitVector.h:39</a></div></div>
3078
3140
  </div><!-- fragment -->
3079
3141
  </div>
3080
3142
  </div>
3081
3143
  <h2 class="groupheader">Function Documentation</h2>
3144
+ <a id="af897f6692f1f6aa13d897f89b3370d0d"></a>
3145
+ <h2 class="memtitle"><span class="permalink"><a href="#af897f6692f1f6aa13d897f89b3370d0d">&#9670;&nbsp;</a></span>countLeadingZeros()</h2>
3146
+
3147
+ <div class="memitem">
3148
+ <div class="memproto">
3149
+ <div class="memtemplate">
3150
+ template&lt;typename T &gt; </div>
3151
+ <table class="memname">
3152
+ <tr>
3153
+ <td class="memname">unsigned SVF::countLeadingZeros </td>
3154
+ <td>(</td>
3155
+ <td class="paramtype">T&#160;</td>
3156
+ <td class="paramname"><em>Val</em>, </td>
3157
+ </tr>
3158
+ <tr>
3159
+ <td class="paramkey"></td>
3160
+ <td></td>
3161
+ <td class="paramtype"><a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349">ZeroBehavior</a>&#160;</td>
3162
+ <td class="paramname"><em>ZB</em> = <code><a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349afdacc59903d2677ef91777d78c7b80a7">ZB_Width</a></code>&#160;</td>
3163
+ </tr>
3164
+ <tr>
3165
+ <td></td>
3166
+ <td>)</td>
3167
+ <td></td><td></td>
3168
+ </tr>
3169
+ </table>
3170
+ </div><div class="memdoc">
3171
+ <p>Count number of 0's from the most significant bit to the least stopping at the first 1.</p>
3172
+ <p>Only unsigned integral types are allowed.</p>
3173
+ <dl class="params"><dt>Parameters</dt><dd>
3174
+ <table class="params">
3175
+ <tr><td class="paramname">ZB</td><td>the behavior on an input of 0. Only ZB_Width and ZB_Undefined are valid arguments. </td></tr>
3176
+ </table>
3177
+ </dd>
3178
+ </dl>
3179
+
3180
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00169">169</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
3181
+ <div class="fragment"><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;{</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; static_assert(std::numeric_limits&lt;T&gt;::is_integer &amp;&amp;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; !std::numeric_limits&lt;T&gt;::is_signed,</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="stringliteral">&quot;Only unsigned integral types are allowed.&quot;</span>);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">return</span> <a class="code" href="cJSON_8h.html#ad43c3812e6d13e0518d9f8b8f463ffcf">LeadingZerosCounter&lt;T, sizeof(T)&gt;::count</a>(Val, ZB);</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;}</div><div class="ttc" id="cJSON_8h_html_ad43c3812e6d13e0518d9f8b8f463ffcf"><div class="ttname"><a href="cJSON_8h.html#ad43c3812e6d13e0518d9f8b8f463ffcf">count</a></div><div class="ttdeci">int count</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00216">cJSON.h:216</a></div></div>
3182
+ </div><!-- fragment -->
3183
+ </div>
3184
+ </div>
3185
+ <a id="ae86e9ecca38512426d0bade3a95d0a51"></a>
3186
+ <h2 class="memtitle"><span class="permalink"><a href="#ae86e9ecca38512426d0bade3a95d0a51">&#9670;&nbsp;</a></span>countPopulation()</h2>
3187
+
3188
+ <div class="memitem">
3189
+ <div class="memproto">
3190
+ <div class="memtemplate">
3191
+ template&lt;typename T &gt; </div>
3192
+ <table class="mlabels">
3193
+ <tr>
3194
+ <td class="mlabels-left">
3195
+ <table class="memname">
3196
+ <tr>
3197
+ <td class="memname">unsigned SVF::countPopulation </td>
3198
+ <td>(</td>
3199
+ <td class="paramtype">T&#160;</td>
3200
+ <td class="paramname"><em>Value</em></td><td>)</td>
3201
+ <td></td>
3202
+ </tr>
3203
+ </table>
3204
+ </td>
3205
+ <td class="mlabels-right">
3206
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
3207
+ </tr>
3208
+ </table>
3209
+ </div><div class="memdoc">
3210
+ <p>Count the number of set bits in a value. Ex. countPopulation(0xF000F000) = 8 Returns 0 if the word is zero. </p>
3211
+
3212
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00197">197</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
3213
+ <div class="fragment"><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;{</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; static_assert(std::numeric_limits&lt;T&gt;::is_integer &amp;&amp;</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; !std::numeric_limits&lt;T&gt;::is_signed,</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="stringliteral">&quot;Only unsigned integral types are allowed.&quot;</span>);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">return</span> <a class="code" href="cJSON_8h.html#ad43c3812e6d13e0518d9f8b8f463ffcf">PopulationCounter&lt;T, sizeof(T)&gt;::count</a>(<a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;}</div><div class="ttc" id="cJSON_8h_html_ad43c3812e6d13e0518d9f8b8f463ffcf"><div class="ttname"><a href="cJSON_8h.html#ad43c3812e6d13e0518d9f8b8f463ffcf">count</a></div><div class="ttdeci">int count</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00216">cJSON.h:216</a></div></div>
3214
+ <div class="ttc" id="namespaceSVF_html_a90b263fd2f541eca78135078114cabda"><div class="ttname"><a href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">SVF::Value</a></div><div class="ttdeci">llvm::Value Value</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00072">BasicTypes.h:72</a></div></div>
3215
+ </div><!-- fragment -->
3216
+ </div>
3217
+ </div>
3218
+ <a id="a5cb5811bab8e04773dfa21ad919df461"></a>
3219
+ <h2 class="memtitle"><span class="permalink"><a href="#a5cb5811bab8e04773dfa21ad919df461">&#9670;&nbsp;</a></span>countTrailingZeros()</h2>
3220
+
3221
+ <div class="memitem">
3222
+ <div class="memproto">
3223
+ <div class="memtemplate">
3224
+ template&lt;typename T &gt; </div>
3225
+ <table class="memname">
3226
+ <tr>
3227
+ <td class="memname">unsigned SVF::countTrailingZeros </td>
3228
+ <td>(</td>
3229
+ <td class="paramtype">T&#160;</td>
3230
+ <td class="paramname"><em>Val</em>, </td>
3231
+ </tr>
3232
+ <tr>
3233
+ <td class="paramkey"></td>
3234
+ <td></td>
3235
+ <td class="paramtype"><a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349">ZeroBehavior</a>&#160;</td>
3236
+ <td class="paramname"><em>ZB</em> = <code><a class="el" href="namespaceSVF.html#af5b6ec9770091c42227a45491b00b349afdacc59903d2677ef91777d78c7b80a7">ZB_Width</a></code>&#160;</td>
3237
+ </tr>
3238
+ <tr>
3239
+ <td></td>
3240
+ <td>)</td>
3241
+ <td></td><td></td>
3242
+ </tr>
3243
+ </table>
3244
+ </div><div class="memdoc">
3245
+ <p>Count number of 0's from the least significant bit to the most stopping at the first 1.</p>
3246
+ <p>Only unsigned integral types are allowed.</p>
3247
+ <dl class="params"><dt>Parameters</dt><dd>
3248
+ <table class="params">
3249
+ <tr><td class="paramname">ZB</td><td>the behavior on an input of 0. Only ZB_Width and ZB_Undefined are valid arguments. </td></tr>
3250
+ </table>
3251
+ </dd>
3252
+ </dl>
3253
+
3254
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00077">77</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
3255
+ <div class="fragment"><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;{</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; static_assert(std::numeric_limits&lt;T&gt;::is_integer &amp;&amp;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; !std::numeric_limits&lt;T&gt;::is_signed,</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="stringliteral">&quot;Only unsigned integral types are allowed.&quot;</span>);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">return</span> <a class="code" href="cJSON_8h.html#ad43c3812e6d13e0518d9f8b8f463ffcf">TrailingZerosCounter&lt;T, sizeof(T)&gt;::count</a>(Val, ZB);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;}</div><div class="ttc" id="cJSON_8h_html_ad43c3812e6d13e0518d9f8b8f463ffcf"><div class="ttname"><a href="cJSON_8h.html#ad43c3812e6d13e0518d9f8b8f463ffcf">count</a></div><div class="ttdeci">int count</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00216">cJSON.h:216</a></div></div>
3256
+ </div><!-- fragment -->
3257
+ </div>
3258
+ </div>
3259
+ <a id="aae350f79ebcb9efd22ec9efa6678cd13"></a>
3260
+ <h2 class="memtitle"><span class="permalink"><a href="#aae350f79ebcb9efd22ec9efa6678cd13">&#9670;&nbsp;</a></span>dump()</h2>
3261
+
3262
+ <div class="memitem">
3263
+ <div class="memproto">
3264
+ <div class="memtemplate">
3265
+ template&lt;unsigned ElementSize&gt; </div>
3266
+ <table class="memname">
3267
+ <tr>
3268
+ <td class="memname">void SVF::dump </td>
3269
+ <td>(</td>
3270
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;&#160;</td>
3271
+ <td class="paramname"><em>LHS</em>, </td>
3272
+ </tr>
3273
+ <tr>
3274
+ <td class="paramkey"></td>
3275
+ <td></td>
3276
+ <td class="paramtype">std::ostream &amp;&#160;</td>
3277
+ <td class="paramname"><em>out</em>&#160;</td>
3278
+ </tr>
3279
+ <tr>
3280
+ <td></td>
3281
+ <td>)</td>
3282
+ <td></td><td></td>
3283
+ </tr>
3284
+ </table>
3285
+ </div><div class="memdoc">
3286
+
3287
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l01189">1189</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
3288
+ <div class="fragment"><div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160;{</div><div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160; out &lt;&lt; <span class="stringliteral">&quot;[&quot;</span>;</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; <span class="keyword">typename</span> SparseBitVector&lt;ElementSize&gt;::iterator bi = LHS.begin(),</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160; be = LHS.end();</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; <span class="keywordflow">if</span> (bi != be)</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160; {</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160; out &lt;&lt; *bi;</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; <span class="keywordflow">for</span> (++bi; bi != be; ++bi)</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160; {</div><div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160; out &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; *bi;</div><div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160; }</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160; }</div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160; out &lt;&lt; <span class="stringliteral">&quot;]\n&quot;</span>;</div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160;}</div></div><!-- fragment -->
3289
+ </div>
3290
+ </div>
3082
3291
  <a id="aaa21ff095e66a18937f29246e213f69d"></a>
3083
- <h2 class="memtitle"><span class="permalink"><a href="#aaa21ff095e66a18937f29246e213f69d">&#9670;&nbsp;</a></span>operator &() <span class="overload">[1/2]</span></h2>
3292
+ <h2 class="memtitle"><span class="permalink"><a href="#aaa21ff095e66a18937f29246e213f69d">&#9670;&nbsp;</a></span>operator &() <span class="overload">[1/3]</span></h2>
3084
3293
 
3085
3294
  <div class="memitem">
3086
3295
  <div class="memproto">
@@ -3113,7 +3322,7 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
3113
3322
  </div>
3114
3323
  </div>
3115
3324
  <a id="aaa21ff095e66a18937f29246e213f69d"></a>
3116
- <h2 class="memtitle"><span class="permalink"><a href="#aaa21ff095e66a18937f29246e213f69d">&#9670;&nbsp;</a></span>operator &() <span class="overload">[2/2]</span></h2>
3325
+ <h2 class="memtitle"><span class="permalink"><a href="#aaa21ff095e66a18937f29246e213f69d">&#9670;&nbsp;</a></span>operator &() <span class="overload">[2/3]</span></h2>
3117
3326
 
3118
3327
  <div class="memitem">
3119
3328
  <div class="memproto">
@@ -3145,8 +3354,128 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
3145
3354
  </div><!-- fragment -->
3146
3355
  </div>
3147
3356
  </div>
3357
+ <a id="a47b11c4e305a8a1e2dc387c2f9d4617e"></a>
3358
+ <h2 class="memtitle"><span class="permalink"><a href="#a47b11c4e305a8a1e2dc387c2f9d4617e">&#9670;&nbsp;</a></span>operator &() <span class="overload">[3/3]</span></h2>
3359
+
3360
+ <div class="memitem">
3361
+ <div class="memproto">
3362
+ <div class="memtemplate">
3363
+ template&lt;unsigned ElementSize&gt; </div>
3364
+ <table class="mlabels">
3365
+ <tr>
3366
+ <td class="mlabels-left">
3367
+ <table class="memname">
3368
+ <tr>
3369
+ <td class="memname"><a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt;ElementSize&gt; SVF::operator&amp; </td>
3370
+ <td>(</td>
3371
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;&#160;</td>
3372
+ <td class="paramname"><em>LHS</em>, </td>
3373
+ </tr>
3374
+ <tr>
3375
+ <td class="paramkey"></td>
3376
+ <td></td>
3377
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;&#160;</td>
3378
+ <td class="paramname"><em>RHS</em>&#160;</td>
3379
+ </tr>
3380
+ <tr>
3381
+ <td></td>
3382
+ <td>)</td>
3383
+ <td></td><td></td>
3384
+ </tr>
3385
+ </table>
3386
+ </td>
3387
+ <td class="mlabels-right">
3388
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
3389
+ </tr>
3390
+ </table>
3391
+ </div><div class="memdoc">
3392
+
3393
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l01169">1169</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
3394
+ <div class="fragment"><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160;{</div><div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160; SparseBitVector&lt;ElementSize&gt; Result(LHS);</div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160; Result &amp;= RHS;</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; <span class="keywordflow">return</span> Result;</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160;}</div></div><!-- fragment -->
3395
+ </div>
3396
+ </div>
3397
+ <a id="a9d6c986a34096a3552a6385ccbb724e4"></a>
3398
+ <h2 class="memtitle"><span class="permalink"><a href="#a9d6c986a34096a3552a6385ccbb724e4">&#9670;&nbsp;</a></span>operator&=() <span class="overload">[1/2]</span></h2>
3399
+
3400
+ <div class="memitem">
3401
+ <div class="memproto">
3402
+ <div class="memtemplate">
3403
+ template&lt;unsigned ElementSize&gt; </div>
3404
+ <table class="mlabels">
3405
+ <tr>
3406
+ <td class="mlabels-left">
3407
+ <table class="memname">
3408
+ <tr>
3409
+ <td class="memname">bool SVF::operator &amp;= </td>
3410
+ <td>(</td>
3411
+ <td class="paramtype"><a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; *&#160;</td>
3412
+ <td class="paramname"><em>LHS</em>, </td>
3413
+ </tr>
3414
+ <tr>
3415
+ <td class="paramkey"></td>
3416
+ <td></td>
3417
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;&#160;</td>
3418
+ <td class="paramname"><em>RHS</em>&#160;</td>
3419
+ </tr>
3420
+ <tr>
3421
+ <td></td>
3422
+ <td>)</td>
3423
+ <td></td><td></td>
3424
+ </tr>
3425
+ </table>
3426
+ </td>
3427
+ <td class="mlabels-right">
3428
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
3429
+ </tr>
3430
+ </table>
3431
+ </div><div class="memdoc">
3432
+
3433
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l01142">1142</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
3434
+ <div class="fragment"><div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160;{</div><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160; <span class="keywordflow">return</span> LHS-&gt;operator&amp;=(RHS);</div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160;}</div></div><!-- fragment -->
3435
+ </div>
3436
+ </div>
3437
+ <a id="a5df68020aca621b053acbe3f917f0809"></a>
3438
+ <h2 class="memtitle"><span class="permalink"><a href="#a5df68020aca621b053acbe3f917f0809">&#9670;&nbsp;</a></span>operator&=() <span class="overload">[2/2]</span></h2>
3439
+
3440
+ <div class="memitem">
3441
+ <div class="memproto">
3442
+ <div class="memtemplate">
3443
+ template&lt;unsigned ElementSize&gt; </div>
3444
+ <table class="mlabels">
3445
+ <tr>
3446
+ <td class="mlabels-left">
3447
+ <table class="memname">
3448
+ <tr>
3449
+ <td class="memname">bool SVF::operator &amp;= </td>
3450
+ <td>(</td>
3451
+ <td class="paramtype"><a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;&#160;</td>
3452
+ <td class="paramname"><em>LHS</em>, </td>
3453
+ </tr>
3454
+ <tr>
3455
+ <td class="paramkey"></td>
3456
+ <td></td>
3457
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; *&#160;</td>
3458
+ <td class="paramname"><em>RHS</em>&#160;</td>
3459
+ </tr>
3460
+ <tr>
3461
+ <td></td>
3462
+ <td>)</td>
3463
+ <td></td><td></td>
3464
+ </tr>
3465
+ </table>
3466
+ </td>
3467
+ <td class="mlabels-right">
3468
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
3469
+ </tr>
3470
+ </table>
3471
+ </div><div class="memdoc">
3472
+
3473
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l01149">1149</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
3474
+ <div class="fragment"><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;{</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160; <span class="keywordflow">return</span> LHS &amp;= *RHS;</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160;}</div></div><!-- fragment -->
3475
+ </div>
3476
+ </div>
3148
3477
  <a id="a6c2f7ce4908d39a17b29830a2e4bd781"></a>
3149
- <h2 class="memtitle"><span class="permalink"><a href="#a6c2f7ce4908d39a17b29830a2e4bd781">&#9670;&nbsp;</a></span>operator-()</h2>
3478
+ <h2 class="memtitle"><span class="permalink"><a href="#a6c2f7ce4908d39a17b29830a2e4bd781">&#9670;&nbsp;</a></span>operator-() <span class="overload">[1/2]</span></h2>
3150
3479
 
3151
3480
  <div class="memitem">
3152
3481
  <div class="memproto">
@@ -3178,6 +3507,46 @@ template&lt;typename Key , typename Hash = Hash&lt;Key&gt;, typename KeyEqual
3178
3507
  </div><!-- fragment -->
3179
3508
  </div>
3180
3509
  </div>
3510
+ <a id="a1b6662f895cfd942996ac4d578960eed"></a>
3511
+ <h2 class="memtitle"><span class="permalink"><a href="#a1b6662f895cfd942996ac4d578960eed">&#9670;&nbsp;</a></span>operator-() <span class="overload">[2/2]</span></h2>
3512
+
3513
+ <div class="memitem">
3514
+ <div class="memproto">
3515
+ <div class="memtemplate">
3516
+ template&lt;unsigned ElementSize&gt; </div>
3517
+ <table class="mlabels">
3518
+ <tr>
3519
+ <td class="mlabels-left">
3520
+ <table class="memname">
3521
+ <tr>
3522
+ <td class="memname"><a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt;ElementSize&gt; SVF::operator- </td>
3523
+ <td>(</td>
3524
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;&#160;</td>
3525
+ <td class="paramname"><em>LHS</em>, </td>
3526
+ </tr>
3527
+ <tr>
3528
+ <td class="paramkey"></td>
3529
+ <td></td>
3530
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;&#160;</td>
3531
+ <td class="paramname"><em>RHS</em>&#160;</td>
3532
+ </tr>
3533
+ <tr>
3534
+ <td></td>
3535
+ <td>)</td>
3536
+ <td></td><td></td>
3537
+ </tr>
3538
+ </table>
3539
+ </td>
3540
+ <td class="mlabels-right">
3541
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
3542
+ </tr>
3543
+ </table>
3544
+ </div><div class="memdoc">
3545
+
3546
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l01179">1179</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
3547
+ <div class="fragment"><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160;{</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160; SparseBitVector&lt;ElementSize&gt; Result;</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; Result.intersectWithComplement(LHS, RHS);</div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160; <span class="keywordflow">return</span> Result;</div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160;}</div></div><!-- fragment -->
3548
+ </div>
3549
+ </div>
3181
3550
  <a id="af83f5c5c68cdb80576cdc1d62c01b207"></a>
3182
3551
  <h2 class="memtitle"><span class="permalink"><a href="#af83f5c5c68cdb80576cdc1d62c01b207">&#9670;&nbsp;</a></span>operator<<() <span class="overload">[1/2]</span></h2>
3183
3552
 
@@ -3248,7 +3617,7 @@ template&lt;typename F , typename S &gt; </div>
3248
3617
  </div>
3249
3618
  </div>
3250
3619
  <a id="aa01b96d5bc6c3930b0bfca789acf75c4"></a>
3251
- <h2 class="memtitle"><span class="permalink"><a href="#aa01b96d5bc6c3930b0bfca789acf75c4">&#9670;&nbsp;</a></span>operator|()</h2>
3620
+ <h2 class="memtitle"><span class="permalink"><a href="#aa01b96d5bc6c3930b0bfca789acf75c4">&#9670;&nbsp;</a></span>operator|() <span class="overload">[1/2]</span></h2>
3252
3621
 
3253
3622
  <div class="memitem">
3254
3623
  <div class="memproto">
@@ -3280,6 +3649,126 @@ template&lt;typename F , typename S &gt; </div>
3280
3649
  </div><!-- fragment -->
3281
3650
  </div>
3282
3651
  </div>
3652
+ <a id="ad16a5803e8f1fa06266223aeb8366df1"></a>
3653
+ <h2 class="memtitle"><span class="permalink"><a href="#ad16a5803e8f1fa06266223aeb8366df1">&#9670;&nbsp;</a></span>operator|() <span class="overload">[2/2]</span></h2>
3654
+
3655
+ <div class="memitem">
3656
+ <div class="memproto">
3657
+ <div class="memtemplate">
3658
+ template&lt;unsigned ElementSize&gt; </div>
3659
+ <table class="mlabels">
3660
+ <tr>
3661
+ <td class="mlabels-left">
3662
+ <table class="memname">
3663
+ <tr>
3664
+ <td class="memname"><a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt;ElementSize&gt; SVF::operator| </td>
3665
+ <td>(</td>
3666
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;&#160;</td>
3667
+ <td class="paramname"><em>LHS</em>, </td>
3668
+ </tr>
3669
+ <tr>
3670
+ <td class="paramkey"></td>
3671
+ <td></td>
3672
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;&#160;</td>
3673
+ <td class="paramname"><em>RHS</em>&#160;</td>
3674
+ </tr>
3675
+ <tr>
3676
+ <td></td>
3677
+ <td>)</td>
3678
+ <td></td><td></td>
3679
+ </tr>
3680
+ </table>
3681
+ </td>
3682
+ <td class="mlabels-right">
3683
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
3684
+ </tr>
3685
+ </table>
3686
+ </div><div class="memdoc">
3687
+
3688
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l01159">1159</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
3689
+ <div class="fragment"><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160;{</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160; SparseBitVector&lt;ElementSize&gt; Result(LHS);</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160; Result |= RHS;</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160; <span class="keywordflow">return</span> Result;</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;}</div></div><!-- fragment -->
3690
+ </div>
3691
+ </div>
3692
+ <a id="a97ff28f5dfd5c31e6ef351de3cdad85d"></a>
3693
+ <h2 class="memtitle"><span class="permalink"><a href="#a97ff28f5dfd5c31e6ef351de3cdad85d">&#9670;&nbsp;</a></span>operator|=() <span class="overload">[1/2]</span></h2>
3694
+
3695
+ <div class="memitem">
3696
+ <div class="memproto">
3697
+ <div class="memtemplate">
3698
+ template&lt;unsigned ElementSize&gt; </div>
3699
+ <table class="mlabels">
3700
+ <tr>
3701
+ <td class="mlabels-left">
3702
+ <table class="memname">
3703
+ <tr>
3704
+ <td class="memname">bool SVF::operator|= </td>
3705
+ <td>(</td>
3706
+ <td class="paramtype"><a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;&#160;</td>
3707
+ <td class="paramname"><em>LHS</em>, </td>
3708
+ </tr>
3709
+ <tr>
3710
+ <td class="paramkey"></td>
3711
+ <td></td>
3712
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; *&#160;</td>
3713
+ <td class="paramname"><em>RHS</em>&#160;</td>
3714
+ </tr>
3715
+ <tr>
3716
+ <td></td>
3717
+ <td>)</td>
3718
+ <td></td><td></td>
3719
+ </tr>
3720
+ </table>
3721
+ </td>
3722
+ <td class="mlabels-right">
3723
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
3724
+ </tr>
3725
+ </table>
3726
+ </div><div class="memdoc">
3727
+
3728
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l01128">1128</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
3729
+ <div class="fragment"><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160;{</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160; <span class="keywordflow">return</span> LHS |= *RHS;</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160;}</div></div><!-- fragment -->
3730
+ </div>
3731
+ </div>
3732
+ <a id="a7554dead3b2d1bcdfcb36c213e6735b6"></a>
3733
+ <h2 class="memtitle"><span class="permalink"><a href="#a7554dead3b2d1bcdfcb36c213e6735b6">&#9670;&nbsp;</a></span>operator|=() <span class="overload">[2/2]</span></h2>
3734
+
3735
+ <div class="memitem">
3736
+ <div class="memproto">
3737
+ <div class="memtemplate">
3738
+ template&lt;unsigned ElementSize&gt; </div>
3739
+ <table class="mlabels">
3740
+ <tr>
3741
+ <td class="mlabels-left">
3742
+ <table class="memname">
3743
+ <tr>
3744
+ <td class="memname">bool SVF::operator|= </td>
3745
+ <td>(</td>
3746
+ <td class="paramtype"><a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; *&#160;</td>
3747
+ <td class="paramname"><em>LHS</em>, </td>
3748
+ </tr>
3749
+ <tr>
3750
+ <td class="paramkey"></td>
3751
+ <td></td>
3752
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SparseBitVector.html">SparseBitVector</a>&lt; ElementSize &gt; &amp;&#160;</td>
3753
+ <td class="paramname"><em>RHS</em>&#160;</td>
3754
+ </tr>
3755
+ <tr>
3756
+ <td></td>
3757
+ <td>)</td>
3758
+ <td></td><td></td>
3759
+ </tr>
3760
+ </table>
3761
+ </td>
3762
+ <td class="mlabels-right">
3763
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
3764
+ </tr>
3765
+ </table>
3766
+ </div><div class="memdoc">
3767
+
3768
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l01135">1135</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
3769
+ <div class="fragment"><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160;{</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160; <span class="keywordflow">return</span> LHS-&gt;operator|=(RHS);</div><div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160;}</div></div><!-- fragment -->
3770
+ </div>
3771
+ </div>
3283
3772
  </div><!-- contents -->
3284
3773
  <!-- start footer part -->
3285
3774
  <hr class="footer"/><address class="footer"><small>