svf-tools 1.0.613 → 1.0.615

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 (542) hide show
  1. package/CMakeLists.txt +13 -0
  2. package/SVF-doxygen/html/html/AndersenPWC_8h_source.html +1 -1
  3. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +2 -2
  4. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +7 -6
  5. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +15 -15
  6. package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +1 -1
  7. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +22 -22
  8. package/SVF-doxygen/html/html/Andersen_8h_source.html +16 -16
  9. package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +6 -6
  10. package/SVF-doxygen/html/html/CFLAlias_8h_source.html +7 -7
  11. package/SVF-doxygen/html/html/CFLBase_8cpp_source.html +6 -6
  12. package/SVF-doxygen/html/html/CFLGrammar_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/html/CFLGrammar_8h_source.html +1 -1
  14. package/SVF-doxygen/html/html/CFLGraphBuilder_8cpp_source.html +5 -5
  15. package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +11 -11
  16. package/SVF-doxygen/html/html/CFLGraph_8h_source.html +1 -1
  17. package/SVF-doxygen/html/html/CFLVF_8cpp_source.html +2 -2
  18. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +5 -5
  19. package/SVF-doxygen/html/html/CHG_8h_source.html +1 -1
  20. package/SVF-doxygen/html/html/CSC_8cpp_source.html +1 -1
  21. package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +14 -14
  22. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +1 -1
  23. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +3 -3
  24. package/SVF-doxygen/html/html/ConsG_8h_source.html +9 -9
  25. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +18 -18
  26. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +9 -9
  27. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +4 -4
  28. package/SVF-doxygen/html/html/DCHG_8h_source.html +1 -1
  29. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +8 -8
  30. package/SVF-doxygen/html/html/DDAClient_8h_source.html +1 -1
  31. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +4 -6
  32. package/SVF-doxygen/html/html/DDAPass_8h_source.html +3 -3
  33. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +9 -9
  34. package/SVF-doxygen/html/html/DDAStat_8h_source.html +1 -1
  35. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +22 -22
  36. package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +1 -1
  37. package/SVF-doxygen/html/html/DoubleFreeChecker_8h_source.html +1 -1
  38. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +1 -1
  39. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +21 -21
  40. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +3 -3
  41. package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
  42. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +10 -10
  43. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +7 -7
  44. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +13 -13
  45. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +27 -28
  46. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +65 -65
  47. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +2 -2
  48. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +2 -2
  49. package/SVF-doxygen/html/html/ICFG_8h_source.html +2 -2
  50. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +3 -3
  51. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +3 -3
  52. package/SVF-doxygen/html/html/IRGraph_8h_source.html +2 -2
  53. package/SVF-doxygen/html/html/LLVMLoopAnalysis_8cpp_source.html +6 -6
  54. package/SVF-doxygen/html/html/LLVMLoopAnalysis_8h_source.html +3 -3
  55. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +24 -29
  56. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +8 -8
  57. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +2 -2
  58. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +9 -9
  59. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +2 -2
  60. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +9 -9
  61. package/SVF-doxygen/html/html/LocationSet_8h_source.html +3 -3
  62. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +5 -5
  63. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +3 -3
  64. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +3 -3
  65. package/SVF-doxygen/html/html/MHP_8cpp_source.html +10 -10
  66. package/SVF-doxygen/html/html/MHP_8h_source.html +5 -5
  67. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +17 -17
  68. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +8 -8
  69. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +3 -3
  70. package/SVF-doxygen/html/html/MTA_8cpp_source.html +12 -17
  71. package/SVF-doxygen/html/html/MTA_8h_source.html +3 -4
  72. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +10 -10
  73. package/SVF-doxygen/html/html/MemPartition_8h_source.html +1 -1
  74. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +34 -34
  75. package/SVF-doxygen/html/html/MemRegion_8h_source.html +7 -7
  76. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +16 -15
  77. package/SVF-doxygen/html/html/MemSSA_8h_source.html +53 -52
  78. package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +7 -8
  79. package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +7 -7
  80. package/SVF-doxygen/html/html/Options_8cpp_source.html +52 -53
  81. package/SVF-doxygen/html/html/Options_8h_source.html +53 -54
  82. package/SVF-doxygen/html/html/PCG_8cpp_source.html +2 -2
  83. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +3 -3
  84. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +1 -1
  85. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +3 -3
  86. package/SVF-doxygen/html/html/PTAStat_8h_source.html +1 -1
  87. package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +33 -33
  88. package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +91 -95
  89. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +31 -39
  90. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +85 -92
  91. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +20 -20
  92. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +16 -16
  93. package/SVF-doxygen/html/html/PointsTo_8cpp.html +1 -0
  94. package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +51 -51
  95. package/SVF-doxygen/html/html/PointsTo_8h_source.html +38 -38
  96. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +6 -6
  97. package/SVF-doxygen/html/html/SCC_8h_source.html +4 -4
  98. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +11 -22
  99. package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +14 -17
  100. package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +1 -1
  101. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
  102. package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +7 -7
  103. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +21 -19
  104. package/SVF-doxygen/html/html/SVFGReadWrite_8cpp_source.html +5 -5
  105. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +18 -18
  106. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +49 -62
  107. package/SVF-doxygen/html/html/SVFG_8h_source.html +45 -45
  108. package/SVF-doxygen/html/html/SVFIR2ItvExeState_8cpp_source.html +12 -12
  109. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +8 -8
  110. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +3 -3
  111. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +10 -16
  112. package/SVF-doxygen/html/html/SVFIR_8h_source.html +83 -83
  113. package/SVF-doxygen/html/html/SVFStat_8cpp_source.html +19 -19
  114. package/SVF-doxygen/html/html/SVFType_8h.html +22 -22
  115. package/SVF-doxygen/html/html/SVFType_8h_source.html +76 -77
  116. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +5 -5
  117. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +11 -11
  118. package/SVF-doxygen/html/html/SVFValue_8cpp_source.html +5 -5
  119. package/SVF-doxygen/html/html/SVFValue_8h_source.html +6 -6
  120. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +1 -1
  121. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +3 -3
  122. package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +6 -6
  123. package/SVF-doxygen/html/html/SaberCondAllocator_8h_source.html +4 -4
  124. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +15 -15
  125. package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +2 -3
  126. package/SVF-doxygen/html/html/SparseBitVector_8h_source.html +69 -71
  127. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +13 -13
  128. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +39 -39
  129. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +1 -1
  130. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +7 -7
  131. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +49 -51
  132. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +13 -13
  133. package/SVF-doxygen/html/html/TCT_8cpp_source.html +4 -4
  134. package/SVF-doxygen/html/html/TCT_8h_source.html +4 -4
  135. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +8 -8
  136. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +3 -3
  137. package/SVF-doxygen/html/html/VFGNode_8h_source.html +1 -1
  138. package/SVF-doxygen/html/html/VFG_8cpp_source.html +17 -17
  139. package/SVF-doxygen/html/html/VFG_8h_source.html +5 -5
  140. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +8 -8
  141. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +33 -33
  142. package/SVF-doxygen/html/html/VersionedFlowSensitive_8h_source.html +4 -4
  143. package/SVF-doxygen/html/html/WPAFSSolver_8h_source.html +11 -11
  144. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +12 -12
  145. package/SVF-doxygen/html/html/WPAPass_8h_source.html +2 -2
  146. package/SVF-doxygen/html/html/WPASolver_8h_source.html +25 -25
  147. package/SVF-doxygen/html/html/Z3Expr_8cpp_source.html +1 -1
  148. package/SVF-doxygen/html/html/cfl_8cpp.html +1 -5
  149. package/SVF-doxygen/html/html/cfl_8cpp_source.html +1 -5
  150. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +2 -2
  151. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +2 -2
  152. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +2 -2
  153. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +2 -2
  154. package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +187 -188
  155. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +104 -107
  156. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +163 -164
  157. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +47 -50
  158. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +194 -195
  159. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +45 -48
  160. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +204 -205
  161. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +35 -38
  162. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +17 -17
  163. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +191 -192
  164. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +29 -32
  165. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl-members.html +122 -123
  166. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +158 -219
  167. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +2 -2
  168. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias-members.html +137 -138
  169. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +57 -49
  170. package/SVF-doxygen/html/html/classSVF_1_1CFLBase-members.html +138 -139
  171. package/SVF-doxygen/html/html/classSVF_1_1CFLBase.html +34 -34
  172. package/SVF-doxygen/html/html/classSVF_1_1CFLGraph.html +7 -7
  173. package/SVF-doxygen/html/html/classSVF_1_1CFLGraphBuilder.html +1 -1
  174. package/SVF-doxygen/html/html/classSVF_1_1CFLVF-members.html +140 -141
  175. package/SVF-doxygen/html/html/classSVF_1_1CFLVF.html +30 -30
  176. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +8 -8
  177. package/SVF-doxygen/html/html/classSVF_1_1CSC.html +2 -2
  178. package/SVF-doxygen/html/html/classSVF_1_1CallSite-members.html +1 -1
  179. package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +10 -10
  180. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +2 -2
  181. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +114 -114
  182. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +6 -6
  183. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +8 -8
  184. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +28 -28
  185. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +2 -2
  186. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +6 -6
  187. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +4 -4
  188. package/SVF-doxygen/html/html/classSVF_1_1DDAPass-members.html +1 -1
  189. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +17 -31
  190. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +10 -10
  191. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +40 -40
  192. package/SVF-doxygen/html/html/classSVF_1_1DFPTData.html +15 -15
  193. package/SVF-doxygen/html/html/classSVF_1_1DiffPTData.html +4 -4
  194. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +11 -11
  195. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker-members.html +5 -5
  196. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +16 -16
  197. package/SVF-doxygen/html/html/classSVF_1_1DummyVersionPropSVFGNode.html +2 -2
  198. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +1 -1
  199. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA-members.html +228 -229
  200. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +62 -65
  201. package/SVF-doxygen/html/html/classSVF_1_1FileChecker-members.html +5 -5
  202. package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +17 -17
  203. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA-members.html +194 -195
  204. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +55 -55
  205. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive-members.html +219 -220
  206. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +335 -342
  207. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +57 -57
  208. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +6 -6
  209. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +2 -2
  210. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +2 -2
  211. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +4 -4
  212. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +2 -2
  213. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +2 -2
  214. package/SVF-doxygen/html/html/classSVF_1_1ICFG-members.html +1 -1
  215. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +6 -6
  216. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +2 -2
  217. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +4 -4
  218. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +4 -4
  219. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +2 -2
  220. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +8 -8
  221. package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis-members.html +1 -1
  222. package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis.html +20 -14
  223. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet-members.html +4 -4
  224. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +108 -94
  225. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker-members.html +5 -5
  226. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +36 -36
  227. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +2 -2
  228. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +12 -12
  229. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +25 -25
  230. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +3 -3
  231. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +26 -26
  232. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +87 -87
  233. package/SVF-doxygen/html/html/classSVF_1_1MTA-members.html +2 -2
  234. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +27 -33
  235. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +21 -21
  236. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +14 -14
  237. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder-members.html +41 -43
  238. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +57 -80
  239. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +3 -3
  240. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +54 -54
  241. package/SVF-doxygen/html/html/classSVF_1_1MemRegion.html +4 -4
  242. package/SVF-doxygen/html/html/classSVF_1_1MemSSA-members.html +4 -3
  243. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +170 -143
  244. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +16 -16
  245. package/SVF-doxygen/html/html/classSVF_1_1MutableDFPTData.html +2 -2
  246. package/SVF-doxygen/html/html/classSVF_1_1MutableDiffPTData-members.html +3 -3
  247. package/SVF-doxygen/html/html/classSVF_1_1MutableDiffPTData.html +13 -15
  248. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +7 -7
  249. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +2 -2
  250. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +8 -8
  251. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
  252. package/SVF-doxygen/html/html/classSVF_1_1Options-members.html +17 -18
  253. package/SVF-doxygen/html/html/classSVF_1_1Options.html +53 -79
  254. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +2 -2
  255. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +2 -2
  256. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +2 -2
  257. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +3 -3
  258. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +3 -3
  259. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +4 -4
  260. package/SVF-doxygen/html/html/classSVF_1_1PTData.html +11 -11
  261. package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData-members.html +28 -28
  262. package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +174 -177
  263. package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData-members.html +17 -17
  264. package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +99 -102
  265. package/SVF-doxygen/html/html/classSVF_1_1PersistentIncDFPTData-members.html +30 -30
  266. package/SVF-doxygen/html/html/classSVF_1_1PersistentIncDFPTData.html +125 -127
  267. package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData-members.html +13 -13
  268. package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +83 -86
  269. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache-members.html +1 -1
  270. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +122 -122
  271. package/SVF-doxygen/html/html/classSVF_1_1PersistentVersionedPTData-members.html +22 -22
  272. package/SVF-doxygen/html/html/classSVF_1_1PersistentVersionedPTData.html +137 -140
  273. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +56 -56
  274. package/SVF-doxygen/html/html/classSVF_1_1PointsTo-members.html +16 -16
  275. package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +183 -178
  276. package/SVF-doxygen/html/html/classSVF_1_1PointsTo_1_1PointsToIterator-members.html +7 -7
  277. package/SVF-doxygen/html/html/classSVF_1_1PointsTo_1_1PointsToIterator.html +87 -65
  278. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +6 -6
  279. package/SVF-doxygen/html/html/classSVF_1_1SCCDetection.html +3 -3
  280. package/SVF-doxygen/html/html/classSVF_1_1SCCDetection_1_1GNodeSCCInfo.html +1 -1
  281. package/SVF-doxygen/html/html/classSVF_1_1SVFArgument-members.html +1 -1
  282. package/SVF-doxygen/html/html/classSVF_1_1SVFArgument.html +4 -4
  283. package/SVF-doxygen/html/html/classSVF_1_1SVFArrayType.html +6 -6
  284. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock-members.html +3 -3
  285. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +13 -16
  286. package/SVF-doxygen/html/html/classSVF_1_1SVFBlackHoleValue-members.html +1 -1
  287. package/SVF-doxygen/html/html/classSVF_1_1SVFBlackHoleValue.html +2 -2
  288. package/SVF-doxygen/html/html/classSVF_1_1SVFCallInst-members.html +1 -1
  289. package/SVF-doxygen/html/html/classSVF_1_1SVFCallInst.html +2 -2
  290. package/SVF-doxygen/html/html/classSVF_1_1SVFConstant-members.html +1 -1
  291. package/SVF-doxygen/html/html/classSVF_1_1SVFConstant.html +3 -3
  292. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantData-members.html +1 -1
  293. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantData.html +2 -2
  294. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantFP-members.html +1 -1
  295. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantFP.html +2 -2
  296. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantInt-members.html +1 -1
  297. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantInt.html +2 -2
  298. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantNullPtr-members.html +1 -1
  299. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantNullPtr.html +2 -2
  300. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction-members.html +1 -1
  301. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +5 -7
  302. package/SVF-doxygen/html/html/classSVF_1_1SVFFunctionType.html +9 -9
  303. package/SVF-doxygen/html/html/classSVF_1_1SVFG-members.html +2 -2
  304. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +211 -236
  305. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder-members.html +7 -9
  306. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +50 -138
  307. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT-members.html +9 -9
  308. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +82 -82
  309. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +5 -5
  310. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobalValue-members.html +1 -1
  311. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobalValue.html +2 -2
  312. package/SVF-doxygen/html/html/classSVF_1_1SVFIR-members.html +1 -1
  313. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +203 -215
  314. package/SVF-doxygen/html/html/classSVF_1_1SVFIR2ItvExeState.html +13 -13
  315. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +79 -79
  316. package/SVF-doxygen/html/html/classSVF_1_1SVFInstruction-members.html +1 -1
  317. package/SVF-doxygen/html/html/classSVF_1_1SVFInstruction.html +4 -4
  318. package/SVF-doxygen/html/html/classSVF_1_1SVFIntergerType.html +5 -5
  319. package/SVF-doxygen/html/html/classSVF_1_1SVFLoopAndDomInfo-members.html +1 -1
  320. package/SVF-doxygen/html/html/classSVF_1_1SVFLoopAndDomInfo.html +5 -5
  321. package/SVF-doxygen/html/html/classSVF_1_1SVFMetadataAsValue-members.html +1 -1
  322. package/SVF-doxygen/html/html/classSVF_1_1SVFMetadataAsValue.html +2 -2
  323. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +0 -4
  324. package/SVF-doxygen/html/html/classSVF_1_1SVFOtherType.html +5 -5
  325. package/SVF-doxygen/html/html/classSVF_1_1SVFOtherValue-members.html +1 -1
  326. package/SVF-doxygen/html/html/classSVF_1_1SVFOtherValue.html +3 -3
  327. package/SVF-doxygen/html/html/classSVF_1_1SVFPointerType.html +9 -9
  328. package/SVF-doxygen/html/html/classSVF_1_1SVFStat.html +19 -19
  329. package/SVF-doxygen/html/html/classSVF_1_1SVFStructType.html +5 -5
  330. package/SVF-doxygen/html/html/classSVF_1_1SVFType.html +38 -38
  331. package/SVF-doxygen/html/html/classSVF_1_1SVFValue-members.html +1 -1
  332. package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +4 -5
  333. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +1 -1
  334. package/SVF-doxygen/html/html/classSVF_1_1SVFVirtualCallInst-members.html +1 -1
  335. package/SVF-doxygen/html/html/classSVF_1_1SVFVirtualCallInst.html +2 -2
  336. package/SVF-doxygen/html/html/classSVF_1_1SaberCondAllocator.html +9 -9
  337. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder-members.html +12 -14
  338. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +42 -68
  339. package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector-members.html +1 -1
  340. package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector.html +108 -109
  341. package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector_1_1SparseBitVectorIterator-members.html +1 -1
  342. package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector_1_1SparseBitVectorIterator.html +50 -50
  343. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA-members.html +6 -6
  344. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +146 -146
  345. package/SVF-doxygen/html/html/classSVF_1_1StInfo-members.html +5 -5
  346. package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +48 -61
  347. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +178 -179
  348. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +35 -38
  349. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +1 -1
  350. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +20 -20
  351. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +42 -46
  352. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +10 -10
  353. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +8 -8
  354. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +169 -170
  355. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +31 -34
  356. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +2 -2
  357. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +28 -28
  358. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +263 -264
  359. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +112 -115
  360. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +41 -41
  361. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC.html +1 -1
  362. package/SVF-doxygen/html/html/classSVF_1_1VersionedPTData.html +9 -9
  363. package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver-members.html +2 -2
  364. package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver.html +9 -9
  365. package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver-members.html +2 -2
  366. package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver.html +15 -15
  367. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +25 -25
  368. package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver-members.html +2 -2
  369. package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver.html +17 -17
  370. package/SVF-doxygen/html/html/classSVF_1_1WPASolver-members.html +2 -2
  371. package/SVF-doxygen/html/html/classSVF_1_1WPASolver.html +76 -81
  372. package/SVF-doxygen/html/html/classSVF_1_1Z3Expr.html +2 -2
  373. package/SVF-doxygen/html/html/dda_8cpp.html +1 -1
  374. package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
  375. package/SVF-doxygen/html/html/functions.html +1 -1
  376. package/SVF-doxygen/html/html/functions_0x7e.html +16 -16
  377. package/SVF-doxygen/html/html/functions_a.html +7 -7
  378. package/SVF-doxygen/html/html/functions_b.html +6 -6
  379. package/SVF-doxygen/html/html/functions_c.html +27 -27
  380. package/SVF-doxygen/html/html/functions_d.html +10 -11
  381. package/SVF-doxygen/html/html/functions_e.html +2 -2
  382. package/SVF-doxygen/html/html/functions_f.html +6 -6
  383. package/SVF-doxygen/html/html/functions_func.html +6 -6
  384. package/SVF-doxygen/html/html/functions_func_0x7e.html +16 -16
  385. package/SVF-doxygen/html/html/functions_func_b.html +6 -6
  386. package/SVF-doxygen/html/html/functions_func_c.html +27 -27
  387. package/SVF-doxygen/html/html/functions_func_d.html +10 -11
  388. package/SVF-doxygen/html/html/functions_func_e.html +2 -2
  389. package/SVF-doxygen/html/html/functions_func_f.html +5 -5
  390. package/SVF-doxygen/html/html/functions_func_g.html +22 -22
  391. package/SVF-doxygen/html/html/functions_func_h.html +3 -3
  392. package/SVF-doxygen/html/html/functions_func_i.html +3 -3
  393. package/SVF-doxygen/html/html/functions_func_o.html +3 -3
  394. package/SVF-doxygen/html/html/functions_func_p.html +5 -5
  395. package/SVF-doxygen/html/html/functions_func_r.html +5 -8
  396. package/SVF-doxygen/html/html/functions_func_s.html +6 -6
  397. package/SVF-doxygen/html/html/functions_func_t.html +1 -1
  398. package/SVF-doxygen/html/html/functions_func_u.html +23 -23
  399. package/SVF-doxygen/html/html/functions_g.html +25 -28
  400. package/SVF-doxygen/html/html/functions_h.html +3 -3
  401. package/SVF-doxygen/html/html/functions_i.html +6 -6
  402. package/SVF-doxygen/html/html/functions_m.html +1 -1
  403. package/SVF-doxygen/html/html/functions_o.html +13 -13
  404. package/SVF-doxygen/html/html/functions_p.html +19 -19
  405. package/SVF-doxygen/html/html/functions_r.html +11 -12
  406. package/SVF-doxygen/html/html/functions_s.html +33 -36
  407. package/SVF-doxygen/html/html/functions_t.html +12 -12
  408. package/SVF-doxygen/html/html/functions_type_t.html +1 -1
  409. package/SVF-doxygen/html/html/functions_u.html +26 -23
  410. package/SVF-doxygen/html/html/functions_v.html +6 -6
  411. package/SVF-doxygen/html/html/functions_vars.html +1 -1
  412. package/SVF-doxygen/html/html/functions_vars_f.html +1 -1
  413. package/SVF-doxygen/html/html/functions_vars_g.html +0 -3
  414. package/SVF-doxygen/html/html/functions_vars_i.html +1 -1
  415. package/SVF-doxygen/html/html/functions_vars_m.html +1 -1
  416. package/SVF-doxygen/html/html/functions_vars_p.html +2 -2
  417. package/SVF-doxygen/html/html/functions_vars_s.html +5 -8
  418. package/SVF-doxygen/html/html/functions_vars_t.html +1 -1
  419. package/SVF-doxygen/html/html/functions_vars_u.html +3 -0
  420. package/SVF-doxygen/html/html/functions_w.html +3 -7
  421. package/SVF-doxygen/html/html/include_2MTA_2MTAResultValidator_8h_source.html +1 -1
  422. package/SVF-doxygen/html/html/mta_8cpp.html +1 -1
  423. package/SVF-doxygen/html/html/mta_8cpp_source.html +1 -1
  424. package/SVF-doxygen/html/html/namespaceSVF.html +35 -35
  425. package/SVF-doxygen/html/html/namespaceSVF_1_1LLVMUtil.html +2 -2
  426. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +4 -4
  427. package/SVF-doxygen/html/html/saber_8cpp.html +1 -5
  428. package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -5
  429. package/SVF-doxygen/html/html/search/all_0.js +1 -1
  430. package/SVF-doxygen/html/html/search/all_1.js +4 -4
  431. package/SVF-doxygen/html/html/search/all_10.js +15 -15
  432. package/SVF-doxygen/html/html/search/all_11.js +1 -2
  433. package/SVF-doxygen/html/html/search/all_12.js +20 -21
  434. package/SVF-doxygen/html/html/search/all_13.js +8 -8
  435. package/SVF-doxygen/html/html/search/all_14.js +13 -12
  436. package/SVF-doxygen/html/html/search/all_15.js +4 -4
  437. package/SVF-doxygen/html/html/search/all_16.js +2 -2
  438. package/SVF-doxygen/html/html/search/all_19.js +16 -16
  439. package/SVF-doxygen/html/html/search/all_2.js +6 -6
  440. package/SVF-doxygen/html/html/search/all_3.js +14 -14
  441. package/SVF-doxygen/html/html/search/all_4.js +5 -5
  442. package/SVF-doxygen/html/html/search/all_5.js +2 -2
  443. package/SVF-doxygen/html/html/search/all_6.js +5 -5
  444. package/SVF-doxygen/html/html/search/all_7.js +11 -12
  445. package/SVF-doxygen/html/html/search/all_8.js +3 -3
  446. package/SVF-doxygen/html/html/search/all_9.js +4 -4
  447. package/SVF-doxygen/html/html/search/all_b.js +1 -1
  448. package/SVF-doxygen/html/html/search/all_c.js +3 -3
  449. package/SVF-doxygen/html/html/search/all_d.js +3 -3
  450. package/SVF-doxygen/html/html/search/all_e.js +2 -2
  451. package/SVF-doxygen/html/html/search/all_f.js +5 -5
  452. package/SVF-doxygen/html/html/search/functions_0.js +4 -4
  453. package/SVF-doxygen/html/html/search/functions_1.js +6 -6
  454. package/SVF-doxygen/html/html/search/functions_10.js +1 -2
  455. package/SVF-doxygen/html/html/search/functions_11.js +11 -11
  456. package/SVF-doxygen/html/html/search/functions_12.js +1 -1
  457. package/SVF-doxygen/html/html/search/functions_13.js +12 -12
  458. package/SVF-doxygen/html/html/search/functions_17.js +16 -16
  459. package/SVF-doxygen/html/html/search/functions_2.js +14 -14
  460. package/SVF-doxygen/html/html/search/functions_3.js +5 -5
  461. package/SVF-doxygen/html/html/search/functions_4.js +2 -2
  462. package/SVF-doxygen/html/html/search/functions_5.js +4 -4
  463. package/SVF-doxygen/html/html/search/functions_6.js +11 -11
  464. package/SVF-doxygen/html/html/search/functions_7.js +3 -3
  465. package/SVF-doxygen/html/html/search/functions_8.js +3 -3
  466. package/SVF-doxygen/html/html/search/functions_d.js +1 -1
  467. package/SVF-doxygen/html/html/search/functions_e.js +3 -3
  468. package/SVF-doxygen/html/html/search/functions_f.js +5 -5
  469. package/SVF-doxygen/html/html/search/typedefs_11.js +1 -1
  470. package/SVF-doxygen/html/html/search/variables_0.js +1 -1
  471. package/SVF-doxygen/html/html/search/variables_10.js +2 -2
  472. package/SVF-doxygen/html/html/search/variables_12.js +5 -6
  473. package/SVF-doxygen/html/html/search/variables_13.js +3 -3
  474. package/SVF-doxygen/html/html/search/variables_14.js +1 -0
  475. package/SVF-doxygen/html/html/search/variables_6.js +1 -1
  476. package/SVF-doxygen/html/html/search/variables_7.js +0 -1
  477. package/SVF-doxygen/html/html/search/variables_9.js +1 -1
  478. package/SVF-doxygen/html/html/search/variables_d.js +1 -1
  479. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  480. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.html +14 -14
  481. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +2 -2
  482. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +1 -1
  483. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +1 -1
  484. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFG_01_5_01_4.html +2 -2
  485. package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01NodePair_01_4.html +3 -3
  486. package/SVF-doxygen/html/html/structSVF_1_1SparseBitVectorElement-members.html +1 -1
  487. package/SVF-doxygen/html/html/structSVF_1_1SparseBitVectorElement.html +47 -57
  488. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1NodePair_01_4.html +3 -3
  489. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1PointsTo_01_4.html +1 -1
  490. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SparseBitVector_3_01N_01_4_01_4.html +5 -5
  491. package/SVF-doxygen/html/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4.html +3 -3
  492. package/SVF-doxygen/html/html/svf-ex_8cpp.html +6 -7
  493. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +7 -7
  494. package/SVF-doxygen/html/html/tools_2MTA_2MTAResultValidator_8h_source.html +1 -1
  495. package/SVF-doxygen/html/html/wpa_8cpp.html +1 -1
  496. package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
  497. package/build.sh +2 -2
  498. package/include/DDA/DDAPass.h +1 -1
  499. package/include/DDA/FlowDDA.h +1 -1
  500. package/include/Graphs/ICFG.h +1 -1
  501. package/include/Graphs/SVFG.h +3 -4
  502. package/include/Graphs/SVFGOPT.h +7 -7
  503. package/include/MSSA/MemSSA.h +2 -0
  504. package/include/MSSA/SVFGBuilder.h +5 -14
  505. package/include/MTA/MTA.h +2 -2
  506. package/include/MemoryModel/MutablePointsToDS.h +3 -3
  507. package/include/MemoryModel/PersistentPointsToCache.h +7 -8
  508. package/include/MemoryModel/PersistentPointsToDS.h +93 -93
  509. package/include/MemoryModel/PointerAnalysisImpl.h +17 -28
  510. package/include/MemoryModel/PointsTo.h +24 -24
  511. package/include/SABER/SrcSnkDDA.h +10 -13
  512. package/include/SVF-LLVM/LLVMLoopAnalysis.h +2 -1
  513. package/include/SVF-LLVM/LLVMModule.h +6 -6
  514. package/include/SVFIR/SVFIR.h +3 -5
  515. package/include/SVFIR/SVFType.h +6 -8
  516. package/include/SVFIR/SVFValue.h +5 -5
  517. package/include/Util/Options.h +0 -1
  518. package/include/Util/SparseBitVector.h +6 -14
  519. package/include/WPA/FlowSensitive.h +13 -20
  520. package/include/WPA/WPASolver.h +5 -9
  521. package/lib/DDA/DDAPass.cpp +4 -4
  522. package/lib/Graphs/CFLGraph.cpp +3 -0
  523. package/lib/Graphs/SVFG.cpp +1 -1
  524. package/lib/MSSA/MemSSA.cpp +5 -3
  525. package/lib/MSSA/SVFGBuilder.cpp +9 -27
  526. package/lib/MTA/MTA.cpp +4 -4
  527. package/lib/MemoryModel/PointerAnalysisImpl.cpp +10 -10
  528. package/lib/MemoryModel/PointsTo.cpp +23 -19
  529. package/lib/SVF-LLVM/LLVMLoopAnalysis.cpp +3 -4
  530. package/lib/SVF-LLVM/LLVMModule.cpp +32 -21
  531. package/lib/SVFIR/SVFIR.cpp +1 -1
  532. package/lib/SVFIR/SymbolTableInfo.cpp +4 -15
  533. package/lib/Util/Options.cpp +0 -6
  534. package/lib/WPA/AndersenSFR.cpp +1 -1
  535. package/lib/WPA/FlowSensitive.cpp +1 -1
  536. package/package.json +1 -1
  537. package/tools/CFL/cfl.cpp +5 -4
  538. package/tools/DDA/dda.cpp +3 -2
  539. package/tools/Example/svf-ex.cpp +3 -2
  540. package/tools/MTA/mta.cpp +6 -4
  541. package/tools/SABER/saber.cpp +7 -5
  542. package/tools/WPA/wpa.cpp +3 -2
@@ -132,14 +132,14 @@ Public Member Functions</h2></td></tr>
132
132
  </table><table class="memberdecls">
133
133
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
134
134
  Private Member Functions</h2></td></tr>
135
- <tr class="memitem:a4ec765790960025d3468866c326ab87b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSVF_1_1SparseBitVectorElement.html#a4ec765790960025d3468866c326ab87b">SparseBitVectorElement</a> ()</td></tr>
136
- <tr class="separator:a4ec765790960025d3468866c326ab87b"><td class="memSeparator" colspan="2">&#160;</td></tr>
135
+ <tr class="memitem:a8097db31608c859c3cf8053e303821d3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSVF_1_1SparseBitVectorElement.html#a8097db31608c859c3cf8053e303821d3">SparseBitVectorElement</a> ()=default</td></tr>
136
+ <tr class="separator:a8097db31608c859c3cf8053e303821d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
137
137
  </table><table class="memberdecls">
138
138
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
139
139
  Private Attributes</h2></td></tr>
140
- <tr class="memitem:ae5c5ac3afef47499a4e852de0dc39c18"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">ElementIndex</a></td></tr>
140
+ <tr class="memitem:ae5c5ac3afef47499a4e852de0dc39c18"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">ElementIndex</a> = 0</td></tr>
141
141
  <tr class="separator:ae5c5ac3afef47499a4e852de0dc39c18"><td class="memSeparator" colspan="2">&#160;</td></tr>
142
- <tr class="memitem:a4b6a06a3a19f2241cec68e09d4feb526"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a> [<a class="el" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>]</td></tr>
142
+ <tr class="memitem:a4b6a06a3a19f2241cec68e09d4feb526"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a> [<a class="el" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>] = {0}</td></tr>
143
143
  <tr class="separator:a4b6a06a3a19f2241cec68e09d4feb526"><td class="memSeparator" colspan="2">&#160;</td></tr>
144
144
  </table>
145
145
  <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
@@ -215,8 +215,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
215
215
  </div>
216
216
  </div>
217
217
  <h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
218
- <a id="a4ec765790960025d3468866c326ab87b"></a>
219
- <h2 class="memtitle"><span class="permalink"><a href="#a4ec765790960025d3468866c326ab87b">&#9670;&nbsp;</a></span>SparseBitVectorElement() <span class="overload">[1/2]</span></h2>
218
+ <a id="a8097db31608c859c3cf8053e303821d3"></a>
219
+ <h2 class="memtitle"><span class="permalink"><a href="#a8097db31608c859c3cf8053e303821d3">&#9670;&nbsp;</a></span>SparseBitVectorElement() <span class="overload">[1/2]</span></h2>
220
220
 
221
221
  <div class="memitem">
222
222
  <div class="memproto">
@@ -235,17 +235,11 @@ template&lt;unsigned ElementSize = 128&gt; </div>
235
235
  </table>
236
236
  </td>
237
237
  <td class="mlabels-right">
238
- <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span> </td>
238
+ <span class="mlabels"><span class="mlabel">private</span><span class="mlabel">default</span></span> </td>
239
239
  </tr>
240
240
  </table>
241
241
  </div><div class="memdoc">
242
242
 
243
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00234">234</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
244
- <div class="fragment"><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; {</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">ElementIndex</a> = ~0U;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; memset(&amp;<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[0], 0, <span class="keyword">sizeof</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a>) * <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
245
- <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_af9014ab5077a2d9c1aed1e9b1460390d"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">SVF::SparseBitVectorElement::BitWord</a></div><div class="ttdeci">unsigned long BitWord</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00220">SparseBitVector.h:220</a></div></div>
246
- <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
247
- <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_ae5c5ac3afef47499a4e852de0dc39c18"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">SVF::SparseBitVectorElement::ElementIndex</a></div><div class="ttdeci">unsigned ElementIndex</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00231">SparseBitVector.h:231</a></div></div>
248
- </div><!-- fragment -->
249
243
  </div>
250
244
  </div>
251
245
  <a id="a75777b1461184d8fb2cfa4ec6e95c1c5"></a>
@@ -274,11 +268,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
274
268
  </table>
275
269
  </div><div class="memdoc">
276
270
 
277
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00241">241</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
278
- <div class="fragment"><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; {</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">ElementIndex</a> = Idx;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; memset(&amp;<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[0], 0, <span class="keyword">sizeof</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a>) * <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
279
- <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_af9014ab5077a2d9c1aed1e9b1460390d"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">SVF::SparseBitVectorElement::BitWord</a></div><div class="ttdeci">unsigned long BitWord</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00220">SparseBitVector.h:220</a></div></div>
280
- <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
281
- <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_ae5c5ac3afef47499a4e852de0dc39c18"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">SVF::SparseBitVectorElement::ElementIndex</a></div><div class="ttdeci">unsigned ElementIndex</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00231">SparseBitVector.h:231</a></div></div>
271
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00237">237</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
272
+ <div class="fragment"><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;: <a class="code" href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">ElementIndex</a>(Idx) {}</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_ae5c5ac3afef47499a4e852de0dc39c18"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">SVF::SparseBitVectorElement::ElementIndex</a></div><div class="ttdeci">unsigned ElementIndex</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00231">SparseBitVector.h:231</a></div></div>
282
273
  </div><!-- fragment -->
283
274
  </div>
284
275
  </div>
@@ -309,8 +300,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
309
300
  </table>
310
301
  </div><div class="memdoc">
311
302
 
312
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00309">309</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
313
- <div class="fragment"><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; {</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordtype">unsigned</span> NumBits = 0;</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; NumBits += <a class="code" href="namespaceSVF.html#ae86e9ecca38512426d0bade3a95d0a51">countPopulation</a>(<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i]);</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">return</span> NumBits;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; }</div><div class="ttc" id="namespaceSVF_html_ae86e9ecca38512426d0bade3a95d0a51"><div class="ttname"><a href="namespaceSVF.html#ae86e9ecca38512426d0bade3a95d0a51">SVF::countPopulation</a></div><div class="ttdeci">unsigned countPopulation(T Value)</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00197">SparseBitVector.h:197</a></div></div>
303
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00301">301</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
304
+ <div class="fragment"><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; {</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordtype">unsigned</span> NumBits = 0;</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; NumBits += <a class="code" href="namespaceSVF.html#ae86e9ecca38512426d0bade3a95d0a51">countPopulation</a>(<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i]);</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">return</span> NumBits;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; }</div><div class="ttc" id="namespaceSVF_html_ae86e9ecca38512426d0bade3a95d0a51"><div class="ttname"><a href="namespaceSVF.html#ae86e9ecca38512426d0bade3a95d0a51">SVF::countPopulation</a></div><div class="ttdeci">unsigned countPopulation(T Value)</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00197">SparseBitVector.h:197</a></div></div>
314
305
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
315
306
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
316
307
  </div><!-- fragment -->
@@ -342,8 +333,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
342
333
  </table>
343
334
  </div><div class="memdoc">
344
335
 
345
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00275">275</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
346
- <div class="fragment"><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; {</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i])</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
336
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00267">267</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
337
+ <div class="fragment"><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; {</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i])</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
347
338
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
348
339
  </div><!-- fragment -->
349
340
  </div>
@@ -362,7 +353,6 @@ template&lt;unsigned ElementSize = 128&gt; </div>
362
353
  <tr>
363
354
  <td class="memname">int <a class="el" href="structSVF_1_1SparseBitVectorElement.html">SVF::SparseBitVectorElement</a>&lt; ElementSize &gt;::find_first </td>
364
355
  <td>(</td>
365
- <td class="paramtype">void&#160;</td>
366
356
  <td class="paramname"></td><td>)</td>
367
357
  <td> const</td>
368
358
  </tr>
@@ -376,8 +366,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
376
366
 
377
367
  <p>find_first - Returns the index of the first set bit. </p>
378
368
 
379
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00318">318</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
380
- <div class="fragment"><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; {</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] != 0)</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">return</span> i * <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a> + <a class="code" href="namespaceSVF.html#a5cb5811bab8e04773dfa21ad919df461">countTrailingZeros</a>(<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i]);</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;SBV: find_first: SBV cannot be empty&quot;</span>);</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; abort();</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">SVF::SparseBitVectorElement::BITWORD_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00224">SparseBitVector.h:224</a></div></div>
369
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00310">310</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
370
+ <div class="fragment"><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; {</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] != 0)</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">return</span> i * <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a> + <a class="code" href="namespaceSVF.html#a5cb5811bab8e04773dfa21ad919df461">countTrailingZeros</a>(<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i]);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;SBV: find_first: SBV cannot be empty&quot;</span>);</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; abort();</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">SVF::SparseBitVectorElement::BITWORD_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00224">SparseBitVector.h:224</a></div></div>
381
371
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
382
372
  <div class="ttc" id="namespaceSVF_html_a5cb5811bab8e04773dfa21ad919df461"><div class="ttname"><a href="namespaceSVF.html#a5cb5811bab8e04773dfa21ad919df461">SVF::countTrailingZeros</a></div><div class="ttdeci">unsigned countTrailingZeros(T Val, ZeroBehavior ZB=ZB_Width)</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00077">SparseBitVector.h:77</a></div></div>
383
373
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
@@ -411,8 +401,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
411
401
 
412
402
  <p>find_last - Returns the index of the last set bit. </p>
413
403
 
414
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00328">328</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
415
- <div class="fragment"><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; {</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> I = 0; I &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++I)</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; {</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordtype">unsigned</span> Idx = BITWORDS_PER_ELEMENT - I - 1;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[Idx] != 0)</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">return</span> Idx * <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a> + <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a> -</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <a class="code" href="namespaceSVF.html#af897f6692f1f6aa13d897f89b3370d0d">countLeadingZeros</a>(<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[Idx]) - 1;</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; }</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;SBV: find_last: SBV cannot be empty&quot;</span>);</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; abort();</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">SVF::SparseBitVectorElement::BITWORD_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00224">SparseBitVector.h:224</a></div></div>
404
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00320">320</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
405
+ <div class="fragment"><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; {</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> I = 0; I &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++I)</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; {</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordtype">unsigned</span> Idx = BITWORDS_PER_ELEMENT - I - 1;</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[Idx] != 0)</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">return</span> Idx * <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a> + <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a> -</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <a class="code" href="namespaceSVF.html#af897f6692f1f6aa13d897f89b3370d0d">countLeadingZeros</a>(<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[Idx]) - 1;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; }</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;SBV: find_last: SBV cannot be empty&quot;</span>);</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; abort();</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">SVF::SparseBitVectorElement::BITWORD_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00224">SparseBitVector.h:224</a></div></div>
416
406
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
417
407
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
418
408
  <div class="ttc" id="namespaceSVF_html_af897f6692f1f6aa13d897f89b3370d0d"><div class="ttname"><a href="namespaceSVF.html#af897f6692f1f6aa13d897f89b3370d0d">SVF::countLeadingZeros</a></div><div class="ttdeci">unsigned countLeadingZeros(T Val, ZeroBehavior ZB=ZB_Width)</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00169">SparseBitVector.h:169</a></div></div>
@@ -446,8 +436,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
446
436
  </div><div class="memdoc">
447
437
  <p>find_next - Returns the index of the next set bit starting from the "Curr" bit. Returns -1 if the next set bit is not found. </p>
448
438
 
449
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00343">343</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
450
- <div class="fragment"><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; {</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">if</span> (Curr &gt;= <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0aeb226b2e0dea78fbdbf5b780c3745f6d">BITS_PER_ELEMENT</a>)</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordtype">unsigned</span> WordPos = Curr / <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordtype">unsigned</span> BitPos = Curr % <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>;</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a> Copy = <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[WordPos];</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; assert(WordPos &lt;= <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a></div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; &amp;&amp; <span class="stringliteral">&quot;Word Position outside of element&quot;</span>);</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="comment">// Mask off previous bits.</span></div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; Copy &amp;= ~0UL &lt;&lt; BitPos;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">if</span> (Copy != 0)</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">return</span> WordPos * <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a> + <a class="code" href="namespaceSVF.html#a5cb5811bab8e04773dfa21ad919df461">countTrailingZeros</a>(Copy);</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="comment">// Check subsequent words.</span></div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = WordPos+1; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] != 0)</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keywordflow">return</span> i * <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a> + <a class="code" href="namespaceSVF.html#a5cb5811bab8e04773dfa21ad919df461">countTrailingZeros</a>(<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i]);</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">SVF::SparseBitVectorElement::BITWORD_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00224">SparseBitVector.h:224</a></div></div>
439
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00335">335</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
440
+ <div class="fragment"><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; {</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">if</span> (Curr &gt;= <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0aeb226b2e0dea78fbdbf5b780c3745f6d">BITS_PER_ELEMENT</a>)</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordtype">unsigned</span> WordPos = Curr / <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordtype">unsigned</span> BitPos = Curr % <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a> Copy = <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[WordPos];</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; assert(WordPos &lt;= <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a></div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; &amp;&amp; <span class="stringliteral">&quot;Word Position outside of element&quot;</span>);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="comment">// Mask off previous bits.</span></div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; Copy &amp;= ~0UL &lt;&lt; BitPos;</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">if</span> (Copy != 0)</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">return</span> WordPos * <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a> + <a class="code" href="namespaceSVF.html#a5cb5811bab8e04773dfa21ad919df461">countTrailingZeros</a>(Copy);</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="comment">// Check subsequent words.</span></div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = WordPos+1; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] != 0)</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">return</span> i * <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a> + <a class="code" href="namespaceSVF.html#a5cb5811bab8e04773dfa21ad919df461">countTrailingZeros</a>(<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i]);</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">SVF::SparseBitVectorElement::BITWORD_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00224">SparseBitVector.h:224</a></div></div>
451
441
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0aeb226b2e0dea78fbdbf5b780c3745f6d"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0aeb226b2e0dea78fbdbf5b780c3745f6d">SVF::SparseBitVectorElement::BITS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00226">SparseBitVector.h:226</a></div></div>
452
442
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
453
443
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_af9014ab5077a2d9c1aed1e9b1460390d"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">SVF::SparseBitVectorElement::BitWord</a></div><div class="ttdeci">unsigned long BitWord</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00220">SparseBitVector.h:220</a></div></div>
@@ -481,8 +471,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
481
471
  </table>
482
472
  </div><div class="memdoc">
483
473
 
484
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00270">270</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
485
- <div class="fragment"><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; {</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">return</span> <a class="code" href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">ElementIndex</a>;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_ae5c5ac3afef47499a4e852de0dc39c18"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">SVF::SparseBitVectorElement::ElementIndex</a></div><div class="ttdeci">unsigned ElementIndex</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00231">SparseBitVector.h:231</a></div></div>
474
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00262">262</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
475
+ <div class="fragment"><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; {</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordflow">return</span> <a class="code" href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">ElementIndex</a>;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_ae5c5ac3afef47499a4e852de0dc39c18"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">SVF::SparseBitVectorElement::ElementIndex</a></div><div class="ttdeci">unsigned ElementIndex</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00231">SparseBitVector.h:231</a></div></div>
486
476
  </div><!-- fragment -->
487
477
  </div>
488
478
  </div>
@@ -512,8 +502,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
512
502
  </table>
513
503
  </div><div class="memdoc">
514
504
 
515
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00383">383</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
516
- <div class="fragment"><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; {</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; {</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">if</span> (RHS.Bits[i] &amp; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i])</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; }</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
505
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00375">375</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
506
+ <div class="fragment"><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; {</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; {</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">if</span> (RHS.Bits[i] &amp; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i])</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; }</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
517
507
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
518
508
  </div><!-- fragment -->
519
509
  </div>
@@ -554,8 +544,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
554
544
  </table>
555
545
  </div><div class="memdoc">
556
546
 
557
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00395">395</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
558
- <div class="fragment"><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; {</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordtype">bool</span> allzero = <span class="keyword">true</span>;</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160;</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; BecameZero = <span class="keyword">false</span>;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; {</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a> old = changed ? 0 : <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i];</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] &amp;= RHS.Bits[i];</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] != 0)</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; allzero = <span class="keyword">false</span>;</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordflow">if</span> (!changed &amp;&amp; old != <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i])</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; }</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; BecameZero = allzero;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">return</span> changed;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
547
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00387">387</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
548
+ <div class="fragment"><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; {</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordtype">bool</span> allzero = <span class="keyword">true</span>;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; BecameZero = <span class="keyword">false</span>;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; {</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a> old = changed ? 0 : <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i];</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] &amp;= RHS.Bits[i];</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] != 0)</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; allzero = <span class="keyword">false</span>;</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">if</span> (!changed &amp;&amp; old != <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i])</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; }</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; BecameZero = allzero;</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="keywordflow">return</span> changed;</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
559
549
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_af9014ab5077a2d9c1aed1e9b1460390d"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">SVF::SparseBitVectorElement::BitWord</a></div><div class="ttdeci">unsigned long BitWord</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00220">SparseBitVector.h:220</a></div></div>
560
550
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
561
551
  </div><!-- fragment -->
@@ -597,8 +587,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
597
587
  </table>
598
588
  </div><div class="memdoc">
599
589
 
600
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00420">420</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
601
- <div class="fragment"><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; {</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordtype">bool</span> allzero = <span class="keyword">true</span>;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160;</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; BecameZero = <span class="keyword">false</span>;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; {</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a> old = changed ? 0 : <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i];</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] &amp;= ~RHS.Bits[i];</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] != 0)</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; allzero = <span class="keyword">false</span>;</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160;</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="keywordflow">if</span> (!changed &amp;&amp; old != <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i])</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; }</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; BecameZero = allzero;</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">return</span> changed;</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
590
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00412">412</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
591
+ <div class="fragment"><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; {</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keywordtype">bool</span> allzero = <span class="keyword">true</span>;</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; BecameZero = <span class="keyword">false</span>;</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; {</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a> old = changed ? 0 : <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i];</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] &amp;= ~RHS.Bits[i];</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] != 0)</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; allzero = <span class="keyword">false</span>;</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">if</span> (!changed &amp;&amp; old != <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i])</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; }</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; BecameZero = allzero;</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keywordflow">return</span> changed;</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
602
592
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_af9014ab5077a2d9c1aed1e9b1460390d"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">SVF::SparseBitVectorElement::BitWord</a></div><div class="ttdeci">unsigned long BitWord</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00220">SparseBitVector.h:220</a></div></div>
603
593
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
604
594
  </div><!-- fragment -->
@@ -646,8 +636,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
646
636
  </table>
647
637
  </div><div class="memdoc">
648
638
 
649
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00444">444</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
650
- <div class="fragment"><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; {</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="keywordtype">bool</span> allzero = <span class="keyword">true</span>;</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; BecameZero = <span class="keyword">false</span>;</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; {</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] = RHS1.Bits[i] &amp; ~RHS2.Bits[i];</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] != 0)</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; allzero = <span class="keyword">false</span>;</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; }</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; BecameZero = allzero;</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
639
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00436">436</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
640
+ <div class="fragment"><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; {</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordtype">bool</span> allzero = <span class="keyword">true</span>;</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160;</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; BecameZero = <span class="keyword">false</span>;</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; {</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] = RHS1.Bits[i] &amp; ~RHS2.Bits[i];</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] != 0)</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; allzero = <span class="keyword">false</span>;</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; }</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; BecameZero = allzero;</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
651
641
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
652
642
  </div><!-- fragment -->
653
643
  </div>
@@ -678,8 +668,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
678
668
  </table>
679
669
  </div><div class="memdoc">
680
670
 
681
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00258">258</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
682
- <div class="fragment"><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; {</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == RHS);</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; }</div></div><!-- fragment -->
671
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00250">250</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
672
+ <div class="fragment"><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; {</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == RHS);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; }</div></div><!-- fragment -->
683
673
  </div>
684
674
  </div>
685
675
  <a id="a8484d923c29872843b0d0ffcebf4d112"></a>
@@ -708,8 +698,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
708
698
  </table>
709
699
  </div><div class="memdoc">
710
700
 
711
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00248">248</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
712
- <div class="fragment"><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; {</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">ElementIndex</a> != RHS.ElementIndex)</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] != RHS.Bits[i])</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
701
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00240">240</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
702
+ <div class="fragment"><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; {</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">ElementIndex</a> != RHS.ElementIndex)</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] != RHS.Bits[i])</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
713
703
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
714
704
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_ae5c5ac3afef47499a4e852de0dc39c18"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#ae5c5ac3afef47499a4e852de0dc39c18">SVF::SparseBitVectorElement::ElementIndex</a></div><div class="ttdeci">unsigned ElementIndex</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00231">SparseBitVector.h:231</a></div></div>
715
705
  </div><!-- fragment -->
@@ -741,8 +731,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
741
731
  </table>
742
732
  </div><div class="memdoc">
743
733
 
744
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00299">299</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
745
- <div class="fragment"><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; {</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[Idx / <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>] &amp;= ~(1L &lt;&lt; (Idx % <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>));</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">SVF::SparseBitVectorElement::BITWORD_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00224">SparseBitVector.h:224</a></div></div>
734
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00291">291</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
735
+ <div class="fragment"><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; {</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[Idx / <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>] &amp;= ~(1L &lt;&lt; (Idx % <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>));</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">SVF::SparseBitVectorElement::BITWORD_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00224">SparseBitVector.h:224</a></div></div>
746
736
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
747
737
  </div><!-- fragment -->
748
738
  </div>
@@ -773,8 +763,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
773
763
  </table>
774
764
  </div><div class="memdoc">
775
765
 
776
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00283">283</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
777
- <div class="fragment"><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; {</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[Idx / <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>] |= 1L &lt;&lt; (Idx % <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">SVF::SparseBitVectorElement::BITWORD_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00224">SparseBitVector.h:224</a></div></div>
766
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00275">275</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
767
+ <div class="fragment"><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; {</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[Idx / <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>] |= 1L &lt;&lt; (Idx % <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>);</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">SVF::SparseBitVectorElement::BITWORD_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00224">SparseBitVector.h:224</a></div></div>
778
768
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
779
769
  </div><!-- fragment -->
780
770
  </div>
@@ -805,8 +795,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
805
795
  </table>
806
796
  </div><div class="memdoc">
807
797
 
808
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00304">304</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
809
- <div class="fragment"><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">return</span> <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[Idx / <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>] &amp; (1L &lt;&lt; (Idx % <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>));</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">SVF::SparseBitVectorElement::BITWORD_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00224">SparseBitVector.h:224</a></div></div>
798
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00296">296</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
799
+ <div class="fragment"><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; {</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">return</span> <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[Idx / <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>] &amp; (1L &lt;&lt; (Idx % <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">BITWORD_SIZE</a>));</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3335c07a7225c80110e998246f96d6c4">SVF::SparseBitVectorElement::BITWORD_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00224">SparseBitVector.h:224</a></div></div>
810
800
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
811
801
  </div><!-- fragment -->
812
802
  </div>
@@ -837,8 +827,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
837
827
  </table>
838
828
  </div><div class="memdoc">
839
829
 
840
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00288">288</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
841
- <div class="fragment"><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; {</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordtype">bool</span> old = <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a465b415217533f1f0026bec837495fdd">test</a>(Idx);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">if</span> (!old)</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; {</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keyword">set</span>(Idx);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; }</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a465b415217533f1f0026bec837495fdd"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a465b415217533f1f0026bec837495fdd">SVF::SparseBitVectorElement::test</a></div><div class="ttdeci">bool test(unsigned Idx) const</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00304">SparseBitVector.h:304</a></div></div>
830
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00280">280</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
831
+ <div class="fragment"><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; {</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordtype">bool</span> old = <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a465b415217533f1f0026bec837495fdd">test</a>(Idx);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">if</span> (!old)</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; {</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keyword">set</span>(Idx);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; }</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a465b415217533f1f0026bec837495fdd"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a465b415217533f1f0026bec837495fdd">SVF::SparseBitVectorElement::test</a></div><div class="ttdeci">bool test(unsigned Idx) const</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00296">SparseBitVector.h:296</a></div></div>
842
832
  </div><!-- fragment -->
843
833
  </div>
844
834
  </div>
@@ -868,8 +858,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
868
858
  </table>
869
859
  </div><div class="memdoc">
870
860
 
871
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00368">368</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
872
- <div class="fragment"><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; {</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <span class="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; {</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a> old = changed ? 0 : <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i];</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] |= RHS.Bits[i];</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="keywordflow">if</span> (!changed &amp;&amp; old != <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i])</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; }</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">return</span> changed;</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
861
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00360">360</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
862
+ <div class="fragment"><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; {</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>; ++i)</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; {</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a> old = changed ? 0 : <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i];</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160;</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i] |= RHS.Bits[i];</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordflow">if</span> (!changed &amp;&amp; old != <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[i])</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; }</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">return</span> changed;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
873
863
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_af9014ab5077a2d9c1aed1e9b1460390d"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">SVF::SparseBitVectorElement::BitWord</a></div><div class="ttdeci">unsigned long BitWord</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00220">SparseBitVector.h:220</a></div></div>
874
864
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
875
865
  </div><!-- fragment -->
@@ -901,8 +891,8 @@ template&lt;unsigned ElementSize = 128&gt; </div>
901
891
  </table>
902
892
  </div><div class="memdoc">
903
893
 
904
- <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00264">264</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
905
- <div class="fragment"><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; {</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; assert(Idx &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">return</span> <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[Idx];</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
894
+ <p class="definition">Definition at line <a class="el" href="SparseBitVector_8h_source.html#l00256">256</a> of file <a class="el" href="SparseBitVector_8h_source.html">SparseBitVector.h</a>.</p>
895
+ <div class="fragment"><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; {</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; assert(Idx &lt; <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">return</span> <a class="code" href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">Bits</a>[Idx];</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; }</div><div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">SVF::SparseBitVectorElement::BITWORDS_PER_ELEMENT</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00225">SparseBitVector.h:225</a></div></div>
906
896
  <div class="ttc" id="structSVF_1_1SparseBitVectorElement_html_a4b6a06a3a19f2241cec68e09d4feb526"><div class="ttname"><a href="structSVF_1_1SparseBitVectorElement.html#a4b6a06a3a19f2241cec68e09d4feb526">SVF::SparseBitVectorElement::Bits</a></div><div class="ttdeci">BitWord Bits[BITWORDS_PER_ELEMENT]</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00232">SparseBitVector.h:232</a></div></div>
907
897
  </div><!-- fragment -->
908
898
  </div>
@@ -920,7 +910,7 @@ template&lt;unsigned ElementSize = 128&gt; </div>
920
910
  <td class="mlabels-left">
921
911
  <table class="memname">
922
912
  <tr>
923
- <td class="memname"><a class="el" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a> <a class="el" href="structSVF_1_1SparseBitVectorElement.html">SVF::SparseBitVectorElement</a>&lt; ElementSize &gt;::Bits[<a class="el" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>]</td>
913
+ <td class="memname"><a class="el" href="structSVF_1_1SparseBitVectorElement.html#af9014ab5077a2d9c1aed1e9b1460390d">BitWord</a> <a class="el" href="structSVF_1_1SparseBitVectorElement.html">SVF::SparseBitVectorElement</a>&lt; ElementSize &gt;::Bits[<a class="el" href="structSVF_1_1SparseBitVectorElement.html#a2dfc62db92b64481fe56fafaa923dce0a3dde12fdc7052a87d20741d2c31a65a3">BITWORDS_PER_ELEMENT</a>] = {0}</td>
924
914
  </tr>
925
915
  </table>
926
916
  </td>
@@ -946,7 +936,7 @@ template&lt;unsigned ElementSize = 128&gt; </div>
946
936
  <td class="mlabels-left">
947
937
  <table class="memname">
948
938
  <tr>
949
- <td class="memname">unsigned <a class="el" href="structSVF_1_1SparseBitVectorElement.html">SVF::SparseBitVectorElement</a>&lt; ElementSize &gt;::ElementIndex</td>
939
+ <td class="memname">unsigned <a class="el" href="structSVF_1_1SparseBitVectorElement.html">SVF::SparseBitVectorElement</a>&lt; ElementSize &gt;::ElementIndex = 0</td>
950
940
  </tr>
951
941
  </table>
952
942
  </td>