svf-tools 1.0.618 → 1.0.620

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 (385) hide show
  1. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +2 -2
  2. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +8 -8
  3. package/SVF-doxygen/html/html/Andersen_8h_source.html +4 -3
  4. package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +3 -3
  5. package/SVF-doxygen/html/html/CFLBase_8cpp_source.html +4 -4
  6. package/SVF-doxygen/html/html/CFLGraphBuilder_8cpp_source.html +2 -2
  7. package/SVF-doxygen/html/html/CFLVF_8cpp_source.html +3 -3
  8. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +2 -2
  9. package/SVF-doxygen/html/html/CommandLine_8h.html +129 -0
  10. package/SVF-doxygen/html/html/CommandLine_8h_source.html +132 -0
  11. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +5 -5
  12. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +4 -4
  13. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +2 -2
  14. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +2 -2
  15. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +20 -19
  16. package/SVF-doxygen/html/html/DDAPass_8h_source.html +9 -9
  17. package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +2 -2
  18. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +6 -6
  19. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +1 -1
  20. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +7 -7
  21. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +1 -1
  22. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +2 -2
  23. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +2 -2
  24. package/SVF-doxygen/html/html/LLVMLoopAnalysis_8cpp_source.html +2 -2
  25. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +21 -20
  26. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +17 -17
  27. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +2 -2
  28. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
  29. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +2 -2
  30. package/SVF-doxygen/html/html/MHP_8cpp_source.html +2 -2
  31. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +3 -3
  32. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +2 -2
  33. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +2 -2
  34. package/SVF-doxygen/html/html/MTA_8cpp_source.html +1 -1
  35. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +2 -2
  36. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +3 -3
  37. package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +6 -6
  38. package/SVF-doxygen/html/html/Options_8cpp.html +1 -0
  39. package/SVF-doxygen/html/html/Options_8cpp_source.html +123 -119
  40. package/SVF-doxygen/html/html/Options_8h.html +1 -1
  41. package/SVF-doxygen/html/html/Options_8h_source.html +124 -120
  42. package/SVF-doxygen/html/html/PCG_8cpp.html +2 -1
  43. package/SVF-doxygen/html/html/PCG_8cpp_source.html +13 -12
  44. package/SVF-doxygen/html/html/PCG_8h_source.html +12 -12
  45. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +4 -4
  46. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +13 -13
  47. package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +1 -1
  48. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +5 -5
  49. package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +5 -5
  50. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +4 -4
  51. package/SVF-doxygen/html/html/SVFIR2ItvExeState_8cpp_source.html +2 -2
  52. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +4 -3
  53. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +1 -1
  54. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +5 -4
  55. package/SVF-doxygen/html/html/SVFStat_8cpp_source.html +3 -3
  56. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +2 -2
  57. package/SVF-doxygen/html/html/SVFType_8h.html +2 -2
  58. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +2 -2
  59. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +2 -2
  60. package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +2 -2
  61. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +5 -5
  62. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +7 -7
  63. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +4 -4
  64. package/SVF-doxygen/html/html/TCT_8cpp_source.html +2 -2
  65. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
  66. package/SVF-doxygen/html/html/VFG_8cpp_source.html +2 -2
  67. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +4 -4
  68. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +10 -9
  69. package/SVF-doxygen/html/html/WPAPass_8h_source.html +4 -4
  70. package/SVF-doxygen/html/html/Z3Expr_8cpp_source.html +2 -2
  71. package/SVF-doxygen/html/html/annotated.html +6 -2
  72. package/SVF-doxygen/html/html/cfl_8cpp.html +3 -85
  73. package/SVF-doxygen/html/html/cfl_8cpp_source.html +3 -5
  74. package/SVF-doxygen/html/html/classOption-members.html +99 -0
  75. package/SVF-doxygen/html/html/classOption.html +567 -0
  76. package/SVF-doxygen/html/html/classOption.png +0 -0
  77. package/SVF-doxygen/html/html/classOptionBase-members.html +95 -0
  78. package/SVF-doxygen/html/html/classOptionBase.html +823 -0
  79. package/SVF-doxygen/html/html/classOptionBase.png +0 -0
  80. package/SVF-doxygen/html/html/classOptionMap-members.html +97 -0
  81. package/SVF-doxygen/html/html/classOptionMap.html +428 -0
  82. package/SVF-doxygen/html/html/classOptionMap.png +0 -0
  83. package/SVF-doxygen/html/html/classOptionMultiple-members.html +97 -0
  84. package/SVF-doxygen/html/html/classOptionMultiple.html +460 -0
  85. package/SVF-doxygen/html/html/classOptionMultiple.png +0 -0
  86. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +2 -2
  87. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +16 -15
  88. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +9 -9
  89. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +6 -6
  90. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +6 -6
  91. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +2 -2
  92. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +2 -2
  93. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +6 -6
  94. package/SVF-doxygen/html/html/classSVF_1_1CFLBase.html +7 -7
  95. package/SVF-doxygen/html/html/classSVF_1_1CFLGraphBuilder.html +2 -2
  96. package/SVF-doxygen/html/html/classSVF_1_1CFLNode.html +4 -4
  97. package/SVF-doxygen/html/html/classSVF_1_1CFLVF.html +5 -5
  98. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +2 -2
  99. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +2 -2
  100. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +2 -2
  101. package/SVF-doxygen/html/html/classSVF_1_1CondStdSet.html +2 -2
  102. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode-members.html +26 -26
  103. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +72 -72
  104. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +2 -2
  105. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +2 -2
  106. package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +8 -8
  107. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +2 -2
  108. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +36 -35
  109. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +2 -2
  110. package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +4 -4
  111. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +2 -2
  112. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +2 -2
  113. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +11 -11
  114. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +22 -8
  115. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
  116. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +2 -2
  117. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +2 -2
  118. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +2 -2
  119. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +2 -2
  120. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +1 -1
  121. package/SVF-doxygen/html/html/classSVF_1_1IntervalExeState.html +8 -8
  122. package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis.html +2 -2
  123. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +73 -72
  124. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +2 -2
  125. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +2 -2
  126. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +2 -2
  127. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +2 -2
  128. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +2 -2
  129. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +1 -1
  130. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +10 -10
  131. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +6 -6
  132. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +12 -12
  133. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +2 -2
  134. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +4 -4
  135. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator.html +2 -2
  136. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +8 -8
  137. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +2 -2
  138. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +2 -2
  139. package/SVF-doxygen/html/html/classSVF_1_1Options-members.html +120 -120
  140. package/SVF-doxygen/html/html/classSVF_1_1Options.html +613 -613
  141. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +28 -28
  142. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +2 -2
  143. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +18 -18
  144. package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +2 -2
  145. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +2 -2
  146. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +2 -2
  147. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +3 -3
  148. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +7 -7
  149. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +9 -9
  150. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +9 -8
  151. package/SVF-doxygen/html/html/classSVF_1_1SVFIR2ItvExeState.html +2 -2
  152. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +18 -18
  153. package/SVF-doxygen/html/html/classSVF_1_1SVFStat.html +6 -6
  154. package/SVF-doxygen/html/html/classSVF_1_1SVFType.html +1 -1
  155. package/SVF-doxygen/html/html/classSVF_1_1SaberCondAllocator.html +3 -3
  156. package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +2 -2
  157. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +9 -9
  158. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +2 -2
  159. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +11 -11
  160. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +10 -10
  161. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +4 -4
  162. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +2 -2
  163. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +2 -2
  164. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
  165. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +2 -2
  166. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +8 -8
  167. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +2 -2
  168. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +6 -6
  169. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +27 -26
  170. package/SVF-doxygen/html/html/classSVF_1_1Z3Expr.html +6 -6
  171. package/SVF-doxygen/html/html/classes.html +113 -112
  172. package/SVF-doxygen/html/html/dda_8cpp.html +51 -248
  173. package/SVF-doxygen/html/html/dda_8cpp_source.html +9 -10
  174. package/SVF-doxygen/html/html/dir_95e22971b5dbae2382075a3453e365b4.html +2 -0
  175. package/SVF-doxygen/html/html/files.html +18 -17
  176. package/SVF-doxygen/html/html/functions_a.html +7 -7
  177. package/SVF-doxygen/html/html/functions_b.html +9 -6
  178. package/SVF-doxygen/html/html/functions_c.html +48 -46
  179. package/SVF-doxygen/html/html/functions_d.html +20 -17
  180. package/SVF-doxygen/html/html/functions_e.html +6 -3
  181. package/SVF-doxygen/html/html/functions_f.html +19 -16
  182. package/SVF-doxygen/html/html/functions_func_b.html +5 -2
  183. package/SVF-doxygen/html/html/functions_func_c.html +36 -30
  184. package/SVF-doxygen/html/html/functions_func_e.html +5 -2
  185. package/SVF-doxygen/html/html/functions_func_f.html +4 -1
  186. package/SVF-doxygen/html/html/functions_func_g.html +12 -6
  187. package/SVF-doxygen/html/html/functions_func_i.html +18 -7
  188. package/SVF-doxygen/html/html/functions_func_n.html +4 -1
  189. package/SVF-doxygen/html/html/functions_func_o.html +28 -13
  190. package/SVF-doxygen/html/html/functions_func_p.html +13 -4
  191. package/SVF-doxygen/html/html/functions_func_s.html +20 -19
  192. package/SVF-doxygen/html/html/functions_func_u.html +3 -0
  193. package/SVF-doxygen/html/html/functions_g.html +16 -10
  194. package/SVF-doxygen/html/html/functions_h.html +1 -1
  195. package/SVF-doxygen/html/html/functions_i.html +38 -23
  196. package/SVF-doxygen/html/html/functions_k.html +1 -1
  197. package/SVF-doxygen/html/html/functions_l.html +7 -7
  198. package/SVF-doxygen/html/html/functions_m.html +12 -12
  199. package/SVF-doxygen/html/html/functions_n.html +6 -2
  200. package/SVF-doxygen/html/html/functions_o.html +46 -25
  201. package/SVF-doxygen/html/html/functions_p.html +55 -33
  202. package/SVF-doxygen/html/html/functions_r.html +6 -6
  203. package/SVF-doxygen/html/html/functions_s.html +30 -29
  204. package/SVF-doxygen/html/html/functions_t.html +4 -4
  205. package/SVF-doxygen/html/html/functions_type_o.html +7 -0
  206. package/SVF-doxygen/html/html/functions_type_p.html +6 -0
  207. package/SVF-doxygen/html/html/functions_u.html +6 -3
  208. package/SVF-doxygen/html/html/functions_v.html +10 -8
  209. package/SVF-doxygen/html/html/functions_vars_a.html +7 -7
  210. package/SVF-doxygen/html/html/functions_vars_b.html +1 -1
  211. package/SVF-doxygen/html/html/functions_vars_c.html +12 -12
  212. package/SVF-doxygen/html/html/functions_vars_d.html +18 -15
  213. package/SVF-doxygen/html/html/functions_vars_e.html +2 -2
  214. package/SVF-doxygen/html/html/functions_vars_f.html +6 -6
  215. package/SVF-doxygen/html/html/functions_vars_g.html +2 -2
  216. package/SVF-doxygen/html/html/functions_vars_h.html +1 -1
  217. package/SVF-doxygen/html/html/functions_vars_i.html +10 -6
  218. package/SVF-doxygen/html/html/functions_vars_k.html +1 -1
  219. package/SVF-doxygen/html/html/functions_vars_l.html +4 -4
  220. package/SVF-doxygen/html/html/functions_vars_m.html +11 -11
  221. package/SVF-doxygen/html/html/functions_vars_n.html +3 -2
  222. package/SVF-doxygen/html/html/functions_vars_o.html +5 -2
  223. package/SVF-doxygen/html/html/functions_vars_p.html +28 -21
  224. package/SVF-doxygen/html/html/functions_vars_r.html +5 -5
  225. package/SVF-doxygen/html/html/functions_vars_s.html +10 -10
  226. package/SVF-doxygen/html/html/functions_vars_t.html +4 -4
  227. package/SVF-doxygen/html/html/functions_vars_u.html +3 -3
  228. package/SVF-doxygen/html/html/functions_vars_v.html +6 -4
  229. package/SVF-doxygen/html/html/functions_vars_w.html +3 -3
  230. package/SVF-doxygen/html/html/functions_w.html +11 -7
  231. package/SVF-doxygen/html/html/globals_d.html +4 -4
  232. package/SVF-doxygen/html/html/globals_e.html +6 -6
  233. package/SVF-doxygen/html/html/globals_f.html +2 -2
  234. package/SVF-doxygen/html/html/globals_func.html +6 -58
  235. package/SVF-doxygen/html/html/globals_i.html +4 -12
  236. package/SVF-doxygen/html/html/globals_l.html +2 -2
  237. package/SVF-doxygen/html/html/globals_r.html +4 -4
  238. package/SVF-doxygen/html/html/globals_s.html +0 -4
  239. package/SVF-doxygen/html/html/globals_type.html +3 -0
  240. package/SVF-doxygen/html/html/globals_u.html +3 -0
  241. package/SVF-doxygen/html/html/globals_vars.html +43 -12
  242. package/SVF-doxygen/html/html/hierarchy.html +197 -182
  243. package/SVF-doxygen/html/html/include_2MTA_2MTAResultValidator_8h_source.html +1 -1
  244. package/SVF-doxygen/html/html/menudata.js +1 -2
  245. package/SVF-doxygen/html/html/mta_8cpp.html +4 -47
  246. package/SVF-doxygen/html/html/mta_8cpp_source.html +4 -4
  247. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +1 -1
  248. package/SVF-doxygen/html/html/saber_8cpp.html +38 -136
  249. package/SVF-doxygen/html/html/saber_8cpp_source.html +8 -7
  250. package/SVF-doxygen/html/html/search/all_1.js +7 -7
  251. package/SVF-doxygen/html/html/search/all_10.js +31 -26
  252. package/SVF-doxygen/html/html/search/all_11.js +8 -8
  253. package/SVF-doxygen/html/html/search/all_12.js +19 -20
  254. package/SVF-doxygen/html/html/search/all_13.js +7 -7
  255. package/SVF-doxygen/html/html/search/all_14.js +5 -4
  256. package/SVF-doxygen/html/html/search/all_15.js +6 -6
  257. package/SVF-doxygen/html/html/search/all_16.js +4 -4
  258. package/SVF-doxygen/html/html/search/all_2.js +2 -1
  259. package/SVF-doxygen/html/html/search/all_3.js +16 -14
  260. package/SVF-doxygen/html/html/search/all_4.js +18 -17
  261. package/SVF-doxygen/html/html/search/all_5.js +6 -5
  262. package/SVF-doxygen/html/html/search/all_6.js +9 -8
  263. package/SVF-doxygen/html/html/search/all_7.js +4 -2
  264. package/SVF-doxygen/html/html/search/all_8.js +1 -1
  265. package/SVF-doxygen/html/html/search/all_9.js +12 -9
  266. package/SVF-doxygen/html/html/search/all_b.js +2 -2
  267. package/SVF-doxygen/html/html/search/all_c.js +7 -7
  268. package/SVF-doxygen/html/html/search/all_d.js +12 -12
  269. package/SVF-doxygen/html/html/search/all_e.js +4 -3
  270. package/SVF-doxygen/html/html/search/all_f.js +24 -6
  271. package/SVF-doxygen/html/html/search/classes_c.js +15 -0
  272. package/SVF-doxygen/html/html/search/files_2.js +1 -0
  273. package/SVF-doxygen/html/html/search/functions_1.js +1 -0
  274. package/SVF-doxygen/html/html/search/functions_10.js +0 -2
  275. package/SVF-doxygen/html/html/search/functions_11.js +1 -2
  276. package/SVF-doxygen/html/html/search/functions_13.js +1 -0
  277. package/SVF-doxygen/html/html/search/functions_2.js +1 -0
  278. package/SVF-doxygen/html/html/search/functions_3.js +0 -2
  279. package/SVF-doxygen/html/html/search/functions_4.js +1 -3
  280. package/SVF-doxygen/html/html/search/functions_5.js +2 -1
  281. package/SVF-doxygen/html/html/search/functions_6.js +2 -0
  282. package/SVF-doxygen/html/html/search/functions_8.js +3 -1
  283. package/SVF-doxygen/html/html/search/functions_b.js +1 -1
  284. package/SVF-doxygen/html/html/search/functions_d.js +1 -0
  285. package/SVF-doxygen/html/html/search/functions_e.js +5 -1
  286. package/SVF-doxygen/html/html/search/functions_f.js +2 -0
  287. package/SVF-doxygen/html/html/search/typedefs_12.js +1 -1
  288. package/SVF-doxygen/html/html/search/typedefs_7.js +1 -1
  289. package/SVF-doxygen/html/html/search/typedefs_d.js +2 -0
  290. package/SVF-doxygen/html/html/search/typedefs_e.js +2 -0
  291. package/SVF-doxygen/html/html/search/variables_1.js +7 -7
  292. package/SVF-doxygen/html/html/search/variables_10.js +23 -21
  293. package/SVF-doxygen/html/html/search/variables_11.js +7 -5
  294. package/SVF-doxygen/html/html/search/variables_12.js +10 -10
  295. package/SVF-doxygen/html/html/search/variables_13.js +7 -7
  296. package/SVF-doxygen/html/html/search/variables_14.js +3 -3
  297. package/SVF-doxygen/html/html/search/variables_15.js +4 -4
  298. package/SVF-doxygen/html/html/search/variables_16.js +3 -3
  299. package/SVF-doxygen/html/html/search/variables_2.js +1 -1
  300. package/SVF-doxygen/html/html/search/variables_3.js +12 -12
  301. package/SVF-doxygen/html/html/search/variables_4.js +18 -15
  302. package/SVF-doxygen/html/html/search/variables_5.js +5 -2
  303. package/SVF-doxygen/html/html/search/variables_6.js +7 -6
  304. package/SVF-doxygen/html/html/search/variables_7.js +2 -2
  305. package/SVF-doxygen/html/html/search/variables_8.js +1 -1
  306. package/SVF-doxygen/html/html/search/variables_9.js +7 -6
  307. package/SVF-doxygen/html/html/search/variables_b.js +1 -1
  308. package/SVF-doxygen/html/html/search/variables_c.js +5 -4
  309. package/SVF-doxygen/html/html/search/variables_d.js +11 -11
  310. package/SVF-doxygen/html/html/search/variables_e.js +3 -3
  311. package/SVF-doxygen/html/html/search/variables_f.js +3 -2
  312. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +4 -4
  313. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +1 -1
  314. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +2 -2
  315. package/SVF-doxygen/html/html/structSVF_1_1GrammarBase_1_1Symbol.html +4 -4
  316. package/SVF-doxygen/html/html/svf-ex_8cpp.html +12 -55
  317. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +8 -8
  318. package/SVF-doxygen/html/html/tools_2MTA_2MTAResultValidator_8h_source.html +1 -1
  319. package/SVF-doxygen/html/html/wpa_8cpp.html +4 -47
  320. package/SVF-doxygen/html/html/wpa_8cpp_source.html +4 -4
  321. package/include/Util/CommandLine.h +527 -0
  322. package/include/Util/Options.h +124 -124
  323. package/include/WPA/Andersen.h +5 -5
  324. package/lib/AbstractExecution/SVFIR2ItvExeState.cpp +2 -2
  325. package/lib/CFL/CFLAlias.cpp +5 -5
  326. package/lib/CFL/CFLBase.cpp +4 -4
  327. package/lib/CFL/CFLGraphBuilder.cpp +2 -2
  328. package/lib/CFL/CFLVF.cpp +5 -5
  329. package/lib/CMakeLists.txt +8 -4
  330. package/lib/DDA/ContextDDA.cpp +1 -1
  331. package/lib/DDA/DDAPass.cpp +14 -13
  332. package/lib/DDA/FlowDDA.cpp +1 -1
  333. package/lib/Graphs/ConsG.cpp +10 -10
  334. package/lib/Graphs/ICFG.cpp +1 -1
  335. package/lib/Graphs/IRGraph.cpp +2 -2
  336. package/lib/Graphs/SVFG.cpp +5 -5
  337. package/lib/Graphs/SVFGOPT.cpp +5 -5
  338. package/lib/Graphs/VFG.cpp +1 -1
  339. package/lib/MSSA/MemRegion.cpp +2 -2
  340. package/lib/MSSA/MemSSA.cpp +4 -4
  341. package/lib/MSSA/SVFGBuilder.cpp +4 -4
  342. package/lib/MTA/FSMPTA.cpp +13 -13
  343. package/lib/MTA/MHP.cpp +1 -1
  344. package/lib/MTA/MTA.cpp +2 -2
  345. package/lib/MTA/MTAStat.cpp +1 -1
  346. package/lib/MTA/PCG.cpp +8 -2
  347. package/lib/MTA/TCT.cpp +2 -2
  348. package/lib/MemoryModel/PointerAnalysis.cpp +13 -13
  349. package/lib/MemoryModel/PointerAnalysisImpl.cpp +13 -13
  350. package/lib/MemoryModel/PointsTo.cpp +1 -1
  351. package/lib/SABER/DoubleFreeChecker.cpp +1 -1
  352. package/lib/SABER/LeakChecker.cpp +1 -1
  353. package/lib/SABER/SaberCondAllocator.cpp +1 -1
  354. package/lib/SABER/SrcSnkDDA.cpp +5 -5
  355. package/lib/SVF-LLVM/CHGBuilder.cpp +1 -1
  356. package/lib/SVF-LLVM/DCHG.cpp +1 -1
  357. package/lib/SVF-LLVM/LLVMLoopAnalysis.cpp +2 -2
  358. package/lib/SVF-LLVM/LLVMModule.cpp +10 -4
  359. package/lib/SVF-LLVM/SVFIRBuilder.cpp +8 -8
  360. package/lib/SVF-LLVM/SymbolTableBuilder.cpp +5 -5
  361. package/lib/SVFIR/SVFIR.cpp +4 -4
  362. package/lib/SVFIR/SVFStatements.cpp +16 -16
  363. package/lib/SVFIR/SVFVariables.cpp +5 -5
  364. package/lib/SVFIR/SymbolTableInfo.cpp +6 -6
  365. package/lib/Util/NodeIDAllocator.cpp +9 -9
  366. package/lib/Util/Options.cpp +426 -412
  367. package/lib/Util/SVFStat.cpp +5 -5
  368. package/lib/Util/SVFUtil.cpp +1 -1
  369. package/lib/Util/Z3Expr.cpp +2 -2
  370. package/lib/WPA/Andersen.cpp +13 -13
  371. package/lib/WPA/AndersenSCD.cpp +3 -3
  372. package/lib/WPA/FlowSensitive.cpp +8 -8
  373. package/lib/WPA/TypeAnalysis.cpp +1 -1
  374. package/lib/WPA/VersionedFlowSensitive.cpp +4 -4
  375. package/lib/WPA/WPAPass.cpp +10 -9
  376. package/package.json +1 -1
  377. package/tools/CFL/cfl.cpp +6 -14
  378. package/tools/DDA/dda.cpp +39 -29
  379. package/tools/Example/svf-ex.cpp +5 -8
  380. package/tools/MTA/LockResultValidator.cpp +2 -2
  381. package/tools/MTA/MTAAnnotator.cpp +5 -5
  382. package/tools/MTA/MTAResultValidator.cpp +8 -8
  383. package/tools/MTA/mta.cpp +5 -8
  384. package/tools/SABER/saber.cpp +23 -17
  385. package/tools/WPA/wpa.cpp +6 -9
@@ -66,143 +66,147 @@ $(function() {
66
66
  <div class="title">Options.cpp</div> </div>
67
67
  </div><!--header-->
68
68
  <div class="contents">
69
- <a href="Options_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">//===- Options.cpp -- Command line options ------------------------//</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="Options_8h.html">Util/Options.h</a>&quot;</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceSVF.html">SVF</a></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;{</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;enum PTAStat::ClockType&gt; <a class="code" href="classSVF_1_1Options.html#a6a62b34de8ec23899a8024e0450c43df">Options::ClockType</a>(</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160; <span class="stringliteral">&quot;clock-type&quot;</span>,</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160; llvm::cl::init(PTAStat::ClockType::CPU),</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;how time should be measured&quot;</span>),</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160; llvm::cl::values(</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160; clEnumValN(PTAStat::ClockType::Wall, <span class="stringliteral">&quot;wall&quot;</span>, <span class="stringliteral">&quot;use wall time&quot;</span>),</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160; clEnumValN(PTAStat::ClockType::CPU, <span class="stringliteral">&quot;cpu&quot;</span>, <span class="stringliteral">&quot;use CPU time&quot;</span>)</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; )</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;);</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a5cfcf1ddc44ff175c4766f88bf204c03">Options::MarkedClocksOnly</a>(</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; <span class="stringliteral">&quot;marked-clocks-only&quot;</span>,</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Only measure times where explicitly marked&quot;</span>));</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;NodeIDAllocator::Strategy&gt; <a class="code" href="classSVF_1_1Options.html#a2537be131132830c63d408133619a065">Options::NodeAllocStrat</a>(</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; <span class="stringliteral">&quot;node-alloc-strat&quot;</span>,</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; llvm::cl::init(NodeIDAllocator::Strategy::SEQ),</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Method of allocating (LLVM) values and memory objects as node IDs&quot;</span>),</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; llvm::cl::values(</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; clEnumValN(NodeIDAllocator::Strategy::DENSE, <span class="stringliteral">&quot;dense&quot;</span>, <span class="stringliteral">&quot;allocate objects together [0-n] and values together [m-MAX], separately&quot;</span>),</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; clEnumValN(NodeIDAllocator::Strategy::REVERSE_DENSE, <span class="stringliteral">&quot;reverse-dense&quot;</span>, <span class="stringliteral">&quot;like dense but flipped, objects are [m-MAX], values are [0-n]&quot;</span>),</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; clEnumValN(NodeIDAllocator::Strategy::SEQ, <span class="stringliteral">&quot;seq&quot;</span>, <span class="stringliteral">&quot;allocate values and objects sequentially, intermixed (default)&quot;</span>),</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; clEnumValN(NodeIDAllocator::Strategy::DEBUG, <span class="stringliteral">&quot;debug&quot;</span>, <span class="stringliteral">&quot;allocate value and objects sequentially, intermixed, except GEP objects as offsets&quot;</span>)));</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned&gt; <a class="code" href="classSVF_1_1Options.html#adfc1a5c6098d3867e29fc65ca9ffa1cc">Options::MaxFieldLimit</a>(</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="stringliteral">&quot;field-limit&quot;</span>,</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; llvm::cl::init(512),</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Maximum number of fields for field sensitive analysis&quot;</span>));</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;BVDataPTAImpl::PTBackingType&gt; <a class="code" href="classSVF_1_1Options.html#a9ec1d22e20b655e364fea03ba7d923a2">Options::ptDataBacking</a>(</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="stringliteral">&quot;ptd&quot;</span>,</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; llvm::cl::init(BVDataPTAImpl::PTBackingType::Persistent),</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Overarching points-to data structure&quot;</span>),</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; llvm::cl::values(</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; clEnumValN(BVDataPTAImpl::PTBackingType::Mutable, <span class="stringliteral">&quot;mutable&quot;</span>, <span class="stringliteral">&quot;points-to set per pointer&quot;</span>),</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; clEnumValN(BVDataPTAImpl::PTBackingType::Persistent, <span class="stringliteral">&quot;persistent&quot;</span>, <span class="stringliteral">&quot;points-to set ID per pointer, operations hash-consed&quot;</span>)));</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned&gt; <a class="code" href="classSVF_1_1Options.html#ad03c4697dd4da2b6adde112e3ee1884b">Options::FsTimeLimit</a>(</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="stringliteral">&quot;fs-time-limit&quot;</span>,</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; llvm::cl::init(0),</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;time limit for main phase of flow-sensitive analyses&quot;</span>)</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned&gt; <a class="code" href="classSVF_1_1Options.html#adba18ce8f1496fe2e57a934f11c2dfd9">Options::VersioningThreads</a>(</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="stringliteral">&quot;versioning-threads&quot;</span>,</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; llvm::cl::init(1),</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;number of threads to use in the versioning phase of versioned flow-sensitive analysis&quot;</span>)</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned&gt; <a class="code" href="classSVF_1_1Options.html#a620fe156ba70f997eace0ccb0d2c9f67">Options::AnderTimeLimit</a>(</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="stringliteral">&quot;ander-time-limit&quot;</span>,</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; llvm::cl::init(0),</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;time limit for Andersen&#39;s analyses (ignored when -fs-time-limit set)&quot;</span>)</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment">// ContextDDA.cpp</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned long long&gt; <a class="code" href="classSVF_1_1Options.html#a7b9af13feccc116377aeb107640ae874">Options::CxtBudget</a>(</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="stringliteral">&quot;cxt-bg&quot;</span>,</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; llvm::cl::init(10000),</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Maximum step budget of context-sensitive traversing&quot;</span>)</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">// DDAClient.cpp</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a57564c82a2b90b7de837151f65b276f3">Options::SingleLoad</a>(</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="stringliteral">&quot;single-load&quot;</span>,</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Count load pointer with same source operand as one query&quot;</span>)</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a2ef679d4177438655577e7fef7c0cc90">Options::DumpFree</a>(</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="stringliteral">&quot;dump-free&quot;</span>,</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump use after free locations&quot;</span>)</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#aaf05b444fd7f087e5d7fda3883f29dc5">Options::DumpUninitVar</a>(</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="stringliteral">&quot;dump-uninit-var&quot;</span>,</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump uninitialised variables&quot;</span>)</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a2f671b5844b2c167a2c44b90061bfd73">Options::DumpUninitPtr</a>(</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="stringliteral">&quot;dump-uninit-ptr&quot;</span>,</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump uninitialised pointers&quot;</span>)</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#ac2e5aab778f266c5de58cb6eb1939095">Options::DumpSUPts</a>(</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="stringliteral">&quot;dump-su-pts&quot;</span>,</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump strong updates store&quot;</span>)</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#aa24f52782c835452daf82138d0d69412">Options::DumpSUStore</a>(</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="stringliteral">&quot;dump-su-store&quot;</span>,</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump strong updates store&quot;</span>)</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a30abe362add49b0b7083f34530aa446c">Options::MallocOnly</a>(</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="stringliteral">&quot;malloc-only&quot;</span>,</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Only add tainted objects for malloc&quot;</span>)</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a40080aa0a7c926c6f2797e3d7856c03e">Options::TaintUninitHeap</a>(</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="stringliteral">&quot;uninit-heap&quot;</span>,</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;detect uninitialized heap variables&quot;</span>)</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#aa1d9db53dbb6e1364662a8297a744bbc">Options::TaintUninitStack</a>(</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="stringliteral">&quot;uninit-stack&quot;</span>,</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;detect uninitialized stack variables&quot;</span>)</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment">// DDAPass.cpp</span></div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned&gt; <a class="code" href="classSVF_1_1Options.html#a32ef95b3bd06b50337b3129b74ffb45c">Options::MaxPathLen</a>(</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="stringliteral">&quot;max-path&quot;</span>,</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; llvm::cl::init(100000),</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Maximum path limit for DDA&quot;</span>)</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned&gt; <a class="code" href="classSVF_1_1Options.html#a2e53156bd075d7802d390672f129c6a8">Options::MaxContextLen</a>(</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="stringliteral">&quot;max-cxt&quot;</span>,</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; llvm::cl::init(3),</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Maximum context limit for DDA&quot;</span>)</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned&gt; <a class="code" href="classSVF_1_1Options.html#a0b82f16ee0c7e6566a6ae20662525e84">Options::MaxStepInWrapper</a>(</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="stringliteral">&quot;max-step&quot;</span>,</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; llvm::cl::init(10),</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Maximum steps when traversing on SVFG to identify a memory allocation wrapper&quot;</span>)</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;std::string&gt; <a class="code" href="classSVF_1_1Options.html#a3c3d704c209c4e6eed1a771caf8214ce">Options::UserInputQuery</a>(</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="stringliteral">&quot;query&quot;</span>,</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; llvm::cl::init(<span class="stringliteral">&quot;all&quot;</span>),</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Please specify queries by inputing their pointer ids&quot;</span>)</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#aa1a3b9293dffeef1bb16a2a7b3a007dd">Options::InsenRecur</a>(</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="stringliteral">&quot;in-recur&quot;</span>,</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Mark context insensitive SVFG edges due to function recursions&quot;</span>)</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a35cfe6add81dc82983e0c53c36c6e667">Options::InsenCycle</a>(</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="stringliteral">&quot;in-cycle&quot;</span>,</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Mark context insensitive SVFG edges due to value-flow cycles&quot;</span>)</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;);</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#aee5e47ee3ca9bacb514f9dfbcb3abf24">Options::PrintCPts</a>(</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="stringliteral">&quot;cpts&quot;</span>,</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump conditional points-to set &quot;</span>)</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#aabfcfcd67df527cdf587aff5ecc26a10">Options::PrintQueryPts</a>(</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="stringliteral">&quot;print-query-pts&quot;</span>,</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump queries&#39; conditional points-to set &quot;</span>)</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a0865038c4738fcc8f47106faad03d98a">Options::WPANum</a>(</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="stringliteral">&quot;wpa-num&quot;</span>,</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;collect WPA FS number only &quot;</span>)</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="comment">//static RegisterAnalysisGroup&lt;AliasAnalysis&gt; AA_GROUP(DDAPA);</span></div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;llvm::cl::bits&lt;PointerAnalysis::PTATY&gt; <a class="code" href="classSVF_1_1Options.html#a2203f622ab539b3a38488575c9eec33b">Options::DDASelected</a>(</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Select pointer analysis&quot;</span>),</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; llvm::cl::values(</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; clEnumValN(<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18">PointerAnalysis::FlowS_DDA</a>, <span class="stringliteral">&quot;dfs&quot;</span>, <span class="stringliteral">&quot;Demand-driven flow sensitive analysis&quot;</span>),</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; clEnumValN(<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8">PointerAnalysis::Cxt_DDA</a>, <span class="stringliteral">&quot;cxt&quot;</span>, <span class="stringliteral">&quot;Demand-driven context- flow- sensitive analysis&quot;</span>)</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; ));</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="comment">// FlowDDA.cpp</span></div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned long long&gt; <a class="code" href="classSVF_1_1Options.html#a53b1a1ec4e5bbd9696ed9b680aa0c3c7">Options::FlowBudget</a>(</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="stringliteral">&quot;flow-bg&quot;</span>,</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; llvm::cl::init(10000),</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Maximum step budget of flow-sensitive traversing&quot;</span>)</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="comment">// Offline constraint graph (OfflineConsG.cpp)</span></div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a2780c16611375631cd48bf9487f9e0bf">Options::OCGDotGraph</a>(</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="stringliteral">&quot;dump-ocg&quot;</span>,</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump dot graph of Offline Constraint Graph&quot;</span>)</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="comment">// Program Assignment Graph for pointer analysis (SVFIR.cpp)</span></div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#ad2d3db3e407a53956a5a59cc24eb8d40">Options::HandBlackHole</a>(</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="stringliteral">&quot;blk&quot;</span>,</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Hanle blackhole edge&quot;</span>)</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a8dc477d83a142a62b63207f6f240f224">Options::FirstFieldEqBase</a>(</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="stringliteral">&quot;ff-eq-base&quot;</span>,</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Treat base objects as their first fields&quot;</span>)</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;);</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="comment">// SVFG optimizer (SVFGOPT.cpp)</span></div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#ac3ad7d0cf734e867b91a081aad1faff2">Options::ContextInsensitive</a>(</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="stringliteral">&quot;ci-svfg&quot;</span>,</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Reduce SVFG into a context-insensitive one&quot;</span>)</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#acd687c31bb6662940ab8a1c3d17dc1ef">Options::KeepAOFI</a>(</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="stringliteral">&quot;keep-aofi&quot;</span>,</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Keep formal-in and actual-out parameters&quot;</span>)</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;std::string&gt; <a class="code" href="classSVF_1_1Options.html#a3ed96242ac56a05d057ebd11b23cf053">Options::SelfCycle</a>(</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="stringliteral">&quot;keep-self-cycle&quot;</span>,</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; llvm::cl::value_desc(<span class="stringliteral">&quot;keep self cycle&quot;</span>),</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;How to handle self cycle edges: all, context, none&quot;</span>)</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="comment">// Sparse value-flow graph (VFG.cpp)</span></div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a3061c75f7491dd737222b1b877721070">Options::DumpVFG</a>(</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="stringliteral">&quot;dump-vfg&quot;</span>,</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump dot graph of VFG&quot;</span>)</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="comment">// Location set for modeling abstract memory object (LocationSet.cpp)</span></div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#aa734ee7b55809934b441cf5e5818e015">Options::SingleStride</a>(</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="stringliteral">&quot;stride-only&quot;</span>,</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Only use single stride in LocMemoryModel&quot;</span>)</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;<span class="comment">// Base class of pointer analyses (PointerAnalysis.cpp)</span></div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#affd0cb6e0cb91e096537a3d3198bf4e5">Options::TypePrint</a>(</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="stringliteral">&quot;print-type&quot;</span>,</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print type&quot;</span>)</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a14ceeb5d7de81a0946389159986e4955">Options::FuncPointerPrint</a>(</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="stringliteral">&quot;print-fp&quot;</span>,</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print targets of indirect call site&quot;</span>)</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;);</div><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="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#ace0fa364337374ce75a58a9e2f229e24">Options::PTSPrint</a>(</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="stringliteral">&quot;print-pts&quot;</span>,</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print points-to set of top-level pointers&quot;</span>)</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a113ee30422ef08b6790eed9a83277b9c">Options::PTSAllPrint</a>(</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="stringliteral">&quot;print-all-pts&quot;</span>,</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print all points-to set of both top-level and address-taken variables&quot;</span>)</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a498a1a05a08be1ffd845aefeb0672bcb">Options::PStat</a>(</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="stringliteral">&quot;stat&quot;</span>,</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Statistic for Pointer analysis&quot;</span>)</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned&gt; <a class="code" href="classSVF_1_1Options.html#abae23cb06d932f93900f627813b9f4a4">Options::StatBudget</a>(</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="stringliteral">&quot;stat-limit&quot;</span>,</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; llvm::cl::init(20),</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Iteration budget for On-the-fly statistics&quot;</span>)</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;);</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">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a3a20311c732fb391332ae0ee1cb450a0">Options::PAGDotGraph</a>(</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="stringliteral">&quot;dump-pag&quot;</span>,</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump dot graph of SVFIR&quot;</span>)</div><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;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a63c2ff1420867ea4ef0a94d28b3f0558">Options::ShowSVFIRValue</a>(</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="stringliteral">&quot;show-ir-value&quot;</span>,</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Show values of SVFIR (e.g., when generating dot graph)&quot;</span>)</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;);</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#aea29a835c54fab800117e57de00e0b1e">Options::DumpICFG</a>(</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="stringliteral">&quot;dump-icfg&quot;</span>,</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump dot graph of ICFG&quot;</span>)</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;);</div><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="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a61c9d525088cc044f8937a39bb96aa93">Options::CallGraphDotGraph</a>(</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="stringliteral">&quot;dump-callgraph&quot;</span>,</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump dot graph of Call Graph&quot;</span>)</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;);</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a98df022c5da54ea30b3f0ce008d3ca80">Options::PAGPrint</a>(</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="stringliteral">&quot;print-pag&quot;</span>,</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print SVFIR to command line&quot;</span>)</div><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;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned&gt; <a class="code" href="classSVF_1_1Options.html#ad6c29b05188c9e06aa89623c61865ed8">Options::IndirectCallLimit</a>(</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="stringliteral">&quot;ind-call-limit&quot;</span>,</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; llvm::cl::init(50000),</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Indirect solved call edge limit&quot;</span>)</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;);</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;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#afb6fabc25c0d7f9e9d1708ce648797fc">Options::UsePreCompFieldSensitive</a>(</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="stringliteral">&quot;pre-field-sensitive&quot;</span>,</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Use pre-computed field-sensitivity for later analysis&quot;</span>)</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a4da18281b973b9ffb5068dd53060524c">Options::EnableAliasCheck</a>(</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="stringliteral">&quot;alias-check&quot;</span>,</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Enable alias check functions&quot;</span>)</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;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a153d42a480ef1763ad59fd7258ac3ac5">Options::EnableThreadCallGraph</a>(</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="stringliteral">&quot;enable-tcg&quot;</span>,</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Enable pointer analysis to use thread call graph&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;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a485ec0be47c5e78bac4511d00687aee1">Options::ConnectVCallOnCHA</a>(</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="stringliteral">&quot;v-call-cha&quot;</span>,</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;connect virtual calls using cha&quot;</span>)</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;</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">// PointerAnalysisImpl.cpp</span></div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a5896e2aaf59305441a74ede0dfb85845">Options::INCDFPTData</a>(</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="stringliteral">&quot;inc-data&quot;</span>,</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Enable incremental DFPTData for flow-sensitive analysis&quot;</span>)</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;</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a8459d43a21bcf8a50fc55d14fcf5a81e">Options::ClusterAnder</a>(</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="stringliteral">&quot;cluster-ander&quot;</span>,</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Stage Andersen&#39;s with Steensgard&#39;s and cluster based on that&quot;</span>)</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;);</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;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a9dc372635fc6f5ea2d902fc5c49fca8a">Options::ClusterFs</a>(</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="stringliteral">&quot;cluster-fs&quot;</span>,</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Cluster for FS/VFS with auxiliary Andersen&#39;s&quot;</span>)</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;);</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;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a75a38fff97f7f18f3945c953cabc168b">Options::PlainMappingFs</a>(</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="stringliteral">&quot;plain-mapping-fs&quot;</span>,</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Use an explicitly (not null) plain mapping for FS&quot;</span>)</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;);</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="keyword">const</span> llvm::cl::opt&lt;PointsTo::Type&gt; <a class="code" href="classSVF_1_1Options.html#abc02c7dc5e6cb3613856e0f774c6d304">Options::PtType</a>(</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="stringliteral">&quot;pt-type&quot;</span>,</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; llvm::cl::init(PointsTo::Type::SBV),</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;points-to set data structure to use in all analyses&quot;</span>),</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; llvm::cl::values(</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; clEnumValN(PointsTo::Type::SBV, <span class="stringliteral">&quot;sbv&quot;</span>, <span class="stringliteral">&quot;sparse bit-vector&quot;</span>),</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; clEnumValN(PointsTo::Type::CBV, <span class="stringliteral">&quot;cbv&quot;</span>, <span class="stringliteral">&quot;core bit-vector (dynamic bit-vector without leading and trailing 0s)&quot;</span>),</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; clEnumValN(PointsTo::Type::BV, <span class="stringliteral">&quot;bv&quot;</span>, <span class="stringliteral">&quot;bit-vector (dynamic bit-vector without trailing 0s)&quot;</span>)</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; )</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;);</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="keyword">const</span> llvm::cl::opt&lt;enum hclust_fast_methods&gt; <a class="code" href="classSVF_1_1Options.html#a8e0538a7f2e3c5bece69bc69f7074819">Options::ClusterMethod</a>(</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="stringliteral">&quot;cluster-method&quot;</span>,</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; llvm::cl::init(<a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda66ab3fde95842ef6da0dae1f702a9618">HCLUST_METHOD_SVF_BEST</a>),</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;hierarchical clustering method for objects&quot;</span>),</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="comment">// TODO: maybe add descriptions.</span></div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; llvm::cl::values(</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; clEnumValN(<a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddad16cc6362447cc32292c4af4c6fe8024">HCLUST_METHOD_SINGLE</a>, <span class="stringliteral">&quot;single&quot;</span>, <span class="stringliteral">&quot;single linkage; minimum spanning tree algorithm&quot;</span>),</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; clEnumValN(<a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda44ce22fdfc560f27242e9b8f8e7009f4">HCLUST_METHOD_COMPLETE</a>, <span class="stringliteral">&quot;complete&quot;</span>, <span class="stringliteral">&quot;complete linkage; nearest-neighbour-chain algorithm&quot;</span>),</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; clEnumValN(<a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda3ab72664fc61704a1ba46bddbc347115">HCLUST_METHOD_AVERAGE</a>, <span class="stringliteral">&quot;average&quot;</span>, <span class="stringliteral">&quot;unweighted average linkage; nearest-neighbour-chain algorithm&quot;</span>),</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; clEnumValN(<a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda66ab3fde95842ef6da0dae1f702a9618">HCLUST_METHOD_SVF_BEST</a>, <span class="stringliteral">&quot;best&quot;</span>, <span class="stringliteral">&quot;try all linkage criteria; choose best&quot;</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;);</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#ab6115b28808af348e1f6a6b58b4cd84f">Options::RegionedClustering</a>(</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="comment">// Use cluster to &quot;gather&quot; the options closer together, even if it sounds a little worse.</span></div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="stringliteral">&quot;cluster-regioned&quot;</span>,</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;cluster regions separately&quot;</span>)</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;);</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="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a88550ed8c4ec2ccc5d5e40869499787b">Options::RegionAlign</a>(</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="stringliteral">&quot;cluster-region-aligned&quot;</span>,</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;align each region&#39;s identifiers to the native word size&quot;</span>)</div><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;</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#af34d8a738db4f40addc1de930e79654f">Options::PredictPtOcc</a>(</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="stringliteral">&quot;cluster-predict-occ&quot;</span>,</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;try to predict which points-to sets are more important in staged analysis&quot;</span>)</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;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;<span class="comment">// Memory region (MemRegion.cpp)</span></div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a50182faec95c6c4635df65a55148b040">Options::IgnoreDeadFun</a>(</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="stringliteral">&quot;mssa-ignore-dead-fun&quot;</span>,</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Don&#39;t construct memory SSA for deadfunction&quot;</span>)</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;);</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;</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;<span class="comment">// Base class of pointer analyses (MemSSA.cpp)</span></div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a097255cb1373feaaaf2fe60c998862d5">Options::DumpMSSA</a>(</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="stringliteral">&quot;dump-mssa&quot;</span>,</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump memory SSA&quot;</span>)</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160;);</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;std::string&gt; <a class="code" href="classSVF_1_1Options.html#a4ac0e6b77fc9ccc18b269268b3cd046d">Options::MSSAFun</a>(</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="stringliteral">&quot;mssa-fun&quot;</span>,</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; llvm::cl::init(<span class="stringliteral">&quot;&quot;</span>),</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Please specify which function needs to be dumped&quot;</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;</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;MemSSA::MemPartition&gt; <a class="code" href="classSVF_1_1Options.html#a74b821736a04f89adb79d6fd5369cdc3">Options::MemPar</a>(</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="stringliteral">&quot;mem-par&quot;</span>,</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; llvm::cl::init(MemSSA::MemPartition::IntraDisjoint),</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Memory region partiion strategies (e.g., for SVFG construction)&quot;</span>),</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; llvm::cl::values(</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; clEnumValN(MemSSA::MemPartition::Distinct, <span class="stringliteral">&quot;distinct&quot;</span>, <span class="stringliteral">&quot;memory region per each object&quot;</span>),</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; clEnumValN(MemSSA::MemPartition::IntraDisjoint, <span class="stringliteral">&quot;intra-disjoint&quot;</span>, <span class="stringliteral">&quot;memory regions partioned based on each function&quot;</span>),</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; clEnumValN(MemSSA::MemPartition::InterDisjoint, <span class="stringliteral">&quot;inter-disjoint&quot;</span>, <span class="stringliteral">&quot;memory regions partioned across functions&quot;</span>))</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;);</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;</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;<span class="comment">// SVFG builder (SVFGBuilder.cpp)</span></div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a982b4cd71ccafd07d94f10a0a2e953c2">Options::SVFGWithIndirectCall</a>(</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <span class="stringliteral">&quot;svfg-with-ind-call&quot;</span>,</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Update Indirect Calls for SVFG using pre-analysis&quot;</span>)</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;);</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a7704ff30e6fc5043313adf5c655bcd4a">Options::OPTSVFG</a>(</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <span class="stringliteral">&quot;opt-svfg&quot;</span>,</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Optimize SVFG to eliminate formal-in and actual-out&quot;</span>)</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160;);</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;std::string&gt; <a class="code" href="classSVF_1_1Options.html#a4a9e039ba28cc7cdadf9d9d4fa64ab11">Options::WriteSVFG</a>(</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <span class="stringliteral">&quot;write-svfg&quot;</span>,</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; llvm::cl::init(<span class="stringliteral">&quot;&quot;</span>),</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Write SVFG&#39;s analysis results to a file&quot;</span>)</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;);</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;std::string&gt; <a class="code" href="classSVF_1_1Options.html#a1608ded89f829a780d67cb82e1e62944">Options::ReadSVFG</a>(</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="stringliteral">&quot;read-svfg&quot;</span>,</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; llvm::cl::init(<span class="stringliteral">&quot;&quot;</span>),</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Read SVFG&#39;s analysis results from a file&quot;</span>)</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;);</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;<span class="comment">// FSMPTA.cpp</span></div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#af2f66307e1d51947676f622c98ef0762">Options::UsePCG</a>(</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <span class="stringliteral">&quot;pcg-td-edge&quot;</span>,</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Use PCG lock for non-sparsely adding SVFG edges&quot;</span>)</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;);</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160;</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a1bc10a5947bf3912c6f22e094ccac464">Options::IntraLock</a>(</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="stringliteral">&quot;intra-lock-td-edge&quot;</span>,</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Use simple intra-procedual lock for adding SVFG edges&quot;</span>)</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160;);</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a6bec8aed8673d10d65cc3df9fad3383b">Options::ReadPrecisionTDEdge</a>(</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <span class="stringliteral">&quot;rp-td-edge&quot;</span>,</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;perform read precision to refine SVFG edges&quot;</span>)</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;);</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160;</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;u32_t&gt; <a class="code" href="classSVF_1_1Options.html#af129d2ff94af3f6830c0678cb4b72371">Options::AddModelFlag</a>(</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <span class="stringliteral">&quot;add-td-edge&quot;</span>,</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; llvm::cl::init(0),</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Add thread SVFG edges with models: 0 Non Add Edge; 1 NonSparse; 2 All Optimisation; 3 No MHP; 4 No Alias; 5 No Lock; 6 No Read Precision.&quot;</span>)</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;);</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160;</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;<span class="comment">// LockAnalysis.cpp</span></div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#ab8a9641b660197b4421fbd6141858c58">Options::PrintLockSpan</a>(</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <span class="stringliteral">&quot;print-lock&quot;</span>,</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print Thread Interleaving Results&quot;</span>)</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;<span class="comment">// MHP.cpp</span></div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#aa3e6c78eb346a52bbaaac2610573604a">Options::PrintInterLev</a>(</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <span class="stringliteral">&quot;print-interlev&quot;</span>,</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print Thread Interleaving Results&quot;</span>)</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160;);</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a036b9eb8b265a8abd54680d45758e7c6">Options::DoLockAnalysis</a>(</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; <span class="stringliteral">&quot;lock-analysis&quot;</span>,</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Run Lock Analysis&quot;</span>)</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160;);</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160;</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160;</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160;<span class="comment">// MTA.cpp</span></div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#aa4849115111e0ec81670c725027da6be">Options::AndersenAnno</a>(</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <span class="stringliteral">&quot;tsan-ander&quot;</span>,</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Add TSan annotation according to Andersen&quot;</span>)</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#ae444f90ff3b6a3cfec1c08e6ca6f263a">Options::FSAnno</a>(</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; <span class="stringliteral">&quot;tsan-fs&quot;</span>,</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Add TSan annotation according to flow-sensitive analysis&quot;</span>)</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;);</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160;</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;<span class="comment">// MTAAnnotator.cpp</span></div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;u32_t&gt; <a class="code" href="classSVF_1_1Options.html#ae1dadbd4c213f1bd5b8957b5c747bebd">Options::AnnoFlag</a>(</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <span class="stringliteral">&quot;anno&quot;</span>,</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; llvm::cl::init(0),</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;prune annotated instructions: 0001 Thread Local; 0002 Alias; 0004 MHP.&quot;</span>)</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;);</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160;<span class="comment">// MTAResultValidator.cpp</span></div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#ac609142ee5a0caaf3ac51238ec421c2e">Options::PrintValidRes</a>(</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; <span class="stringliteral">&quot;mhp-validation&quot;</span>,</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print MHP Validation Results&quot;</span>)</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;);</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;<span class="comment">// LockResultValidator.cpp</span></div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a78b3b44f2c0dc94dc1363ca57ee76d66">Options::LockValid</a>(</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; <span class="stringliteral">&quot;lock-validation&quot;</span>,</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print Lock Validation Results&quot;</span>)</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;);</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;<span class="comment">// MTAStat.cpp</span></div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#aa78f442ee8d7272e98396fd86dea4993">Options::AllPairMHP</a>(</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; <span class="stringliteral">&quot;all-pair-mhp&quot;</span>,</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;All pair MHP computation&quot;</span>)</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;);</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;<span class="comment">// PCG.cpp</span></div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;<span class="comment">//const llvm::cl::opt&lt;bool&gt; TDPrint(</span></div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160;<span class="comment">// &quot;print-td&quot;,</span></div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160;<span class="comment">// llvm::cl::init(true),</span></div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;<span class="comment">// llvm::cl::desc(&quot;Print Thread Analysis Results&quot;));</span></div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160;</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160;<span class="comment">// TCT.cpp</span></div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a19758db674de8af8a1c80734a1c0fac8">Options::TCTDotGraph</a>(</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; <span class="stringliteral">&quot;dump-tct&quot;</span>,</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump dot graph of Call Graph&quot;</span>)</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160;);</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160;</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160;</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160;<span class="comment">// LeakChecker.cpp</span></div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#aec491143ded97649da1ed61b8fda796c">Options::ValidateTests</a>(</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="stringliteral">&quot;valid-tests&quot;</span>,</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Validate memory leak tests&quot;</span>)</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160;);</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160;</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160;</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160;<span class="comment">// Source-sink analyzer (SrcSnkDDA.cpp)</span></div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#ace1f2368a0a466f98c9e53def47db3ab">Options::DumpSlice</a>(</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; <span class="stringliteral">&quot;dump-slice&quot;</span>,</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump dot graph of Saber Slices&quot;</span>)</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160;);</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160;</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned&gt; <a class="code" href="classSVF_1_1Options.html#a21cbaab292e9f5bd39109f774fcc88d4">Options::CxtLimit</a>(</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; <span class="stringliteral">&quot;cxt-limit&quot;</span>,</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; llvm::cl::init(3),</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Source-Sink Analysis Contexts Limit&quot;</span>)</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160;);</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160;</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160;<span class="comment">// CHG.cpp</span></div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#ab13a47f6dd4eedfaa607d36448a1d456">Options::DumpCHA</a>(</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; <span class="stringliteral">&quot;dump-cha&quot;</span>,</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;dump the class hierarchy graph&quot;</span>)</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160;);</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160;</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160;</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160;<span class="comment">// DCHG.cpp</span></div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#adf6c289ef9f2d0196984dd4024ea4316">Options::PrintDCHG</a>(</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <span class="stringliteral">&quot;print-dchg&quot;</span>,</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;print the DCHG if debug information is available&quot;</span>)</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160;);</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160;<span class="comment">// LLVMModule.cpp</span></div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;std::string&gt; <a class="code" href="classSVF_1_1Options.html#aa5c4bc8e55a056adcd7a6f8946ad5f38">Options::Graphtxt</a>(</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="stringliteral">&quot;graph-txt&quot;</span>,</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; llvm::cl::value_desc(<span class="stringliteral">&quot;filename&quot;</span>),</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;graph txt file to build SVFIR&quot;</span>)</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160;);</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a868fa5069b01b7a7dfbc5fb99cb76385">Options::SVFMain</a>(</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; <span class="stringliteral">&quot;svf-main&quot;</span>,</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;add svf.main()&quot;</span>)</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160;);</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160;</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a5c051cf6a93a87a07aa1d31e302a2877">Options::ModelConsts</a>(</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; <span class="stringliteral">&quot;model-consts&quot;</span>,</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Modeling individual constant objects&quot;</span>)</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160;);</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a170426acc0f9d99470fd1bde40d273e2">Options::ModelArrays</a>(</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; <span class="stringliteral">&quot;model-arrays&quot;</span>,</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Modeling Gep offsets for array accesses&quot;</span>)</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160;);</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160;</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#abbfd1d7e985483c486394d8db85b6a85">Options::SymTabPrint</a>(</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; <span class="stringliteral">&quot;print-symbol-table&quot;</span>, llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print Symbol Table to command line&quot;</span>)</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;);</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160;</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;<span class="comment">// Conditions.cpp</span></div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned&gt; <a class="code" href="classSVF_1_1Options.html#a389c1868083100ad8ebfbf935a85a1e1">Options::MaxZ3Size</a>(</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; <span class="stringliteral">&quot;max-z3-size&quot;</span>,</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; llvm::cl::init(30),</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Maximum size limit for Z3 expression&quot;</span>)</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160;);</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160;</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160;</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160;<span class="comment">// SaberCondAllocator.cpp</span></div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#ae6b763ff293381ed5da9b07c2e8ae496">Options::PrintPathCond</a>(</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; <span class="stringliteral">&quot;print-pc&quot;</span>,</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print out path condition&quot;</span>)</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;);</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;<span class="comment">// SVFUtil.cpp</span></div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#ab4206ecb79fdcd2d5211bfbd2537cacb">Options::DisableWarn</a>(</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <span class="stringliteral">&quot;dwarn&quot;</span>,</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Disable warning&quot;</span>)</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160;);</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160;</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;<span class="comment">// Andersen.cpp</span></div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a69a7d0431c0ddfefed1cb97f3571303a">Options::ConsCGDotGraph</a>(</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; <span class="stringliteral">&quot;dump-constraint-graph&quot;</span>,</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump dot graph of Constraint Graph&quot;</span>)</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160;);</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160;</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a82370c2b8c9cd62b5767ceeaeeaa7177">Options::BriefConsCGDotGraph</a>(</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; <span class="stringliteral">&quot;brief-constraint-graph&quot;</span>,</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Dump dot graph of Constraint Graph&quot;</span>)</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160;);</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160;</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a87516daebb3d1b5fee9037068d60e268">Options::PrintCGGraph</a>(</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="stringliteral">&quot;print-constraint-graph&quot;</span>,</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print Constraint Graph to Terminal&quot;</span>)</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160;);</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160;</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;std::string&gt; <a class="code" href="classSVF_1_1Options.html#a4c7eb57066c80c62ef394d644833214a">Options::WriteAnder</a>(</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="stringliteral">&quot;write-ander&quot;</span>,</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; llvm::cl::init(<span class="stringliteral">&quot;&quot;</span>),</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;-write-ander=ir_annotator (Annotated IR with Andersen&#39;s results) or write Andersen&#39;s analysis results to a user-specified text file&quot;</span>)</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160;);</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160;</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;std::string&gt; <a class="code" href="classSVF_1_1Options.html#a98a521e5c99c5248eae8f8234453b116">Options::ReadAnder</a>(</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; <span class="stringliteral">&quot;read-ander&quot;</span>,</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; llvm::cl::init(<span class="stringliteral">&quot;&quot;</span>),</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;-read-ander=ir_annotator (Read Andersen&#39;s analysis results from the annotated IR, e.g., *.pre.bc) or from a text file&quot;</span>)</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;);</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160;</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a3e311bdcdaf0e39fd7d8566dc7866a44">Options::DiffPts</a>(</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; <span class="stringliteral">&quot;diff&quot;</span>,</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Enable differential point-to set&quot;</span>)</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;);</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160;</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160;llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a1d299e736ee653759d340508fd30c6ab">Options::DetectPWC</a>(</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; <span class="stringliteral">&quot;merge-pwc&quot;</span>,</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Enable PWC detection&quot;</span>)</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;);</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160;</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160;<span class="comment">//SVFIRBuilder.cpp</span></div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a2a9fe90fae25f3de780f91b7e296b49a">Options::VtableInSVFIR</a>(</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; <span class="stringliteral">&quot;vt-in-ir&quot;</span>,</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Handle vtable in ConstantArray/ConstantStruct in SVFIRBuilder (already handled in CHA?)&quot;</span>)</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;);</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160;</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160;</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160;<span class="comment">//WPAPass.cpp</span></div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a30cbb0b3633c769c92f4625680ec17e3">Options::AnderSVFG</a>(</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; <span class="stringliteral">&quot;svfg&quot;</span>,</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Generate SVFG after Andersen&#39;s Analysis&quot;</span>)</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160;);</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160;</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a5fb7733fd66ecad30eea8ced3839e590">Options::SABERFULLSVFG</a>(</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; <span class="stringliteral">&quot;saber-full-svfg&quot;</span>,</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;When using SABER for bug detection pass, enable full svfg on top of the pointer-only one&quot;</span>)</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160;);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a1b1d1ad6b3a6c48a9fa07161b582c7fe">Options::PrintAliases</a>(</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; <span class="stringliteral">&quot;print-aliases&quot;</span>,</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print results for all pair aliases&quot;</span>)</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160;);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160;</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160;llvm::cl::bits&lt;PointerAnalysis::PTATY&gt; <a class="code" href="classSVF_1_1Options.html#a1211da4c36f1fcc65235891f31d87038">Options::PASelected</a>(</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Select pointer analysis&quot;</span>),</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; llvm::cl::values(</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; clEnumValN(<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6">PointerAnalysis::Andersen_WPA</a>, <span class="stringliteral">&quot;nander&quot;</span>, <span class="stringliteral">&quot;Standard inclusion-based analysis&quot;</span>),</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; clEnumValN(<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1">PointerAnalysis::AndersenSCD_WPA</a>, <span class="stringliteral">&quot;sander&quot;</span>, <span class="stringliteral">&quot;Selective cycle detection inclusion-based analysis&quot;</span>),</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; clEnumValN(<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b">PointerAnalysis::AndersenSFR_WPA</a>, <span class="stringliteral">&quot;sfrander&quot;</span>, <span class="stringliteral">&quot;Stride-based field representation includion-based analysis&quot;</span>),</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; clEnumValN(<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2">PointerAnalysis::AndersenWaveDiff_WPA</a>, <span class="stringliteral">&quot;ander&quot;</span>, <span class="stringliteral">&quot;Diff wave propagation inclusion-based analysis&quot;</span>),</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; clEnumValN(<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a">PointerAnalysis::Steensgaard_WPA</a>, <span class="stringliteral">&quot;steens&quot;</span>, <span class="stringliteral">&quot;Steensgaard&#39;s pointer analysis&quot;</span>),</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; <span class="comment">// Disabled till further work is done.</span></div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; clEnumValN(<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78">PointerAnalysis::FSSPARSE_WPA</a>, <span class="stringliteral">&quot;fspta&quot;</span>, <span class="stringliteral">&quot;Sparse flow sensitive pointer analysis&quot;</span>),</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; clEnumValN(<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9">PointerAnalysis::VFS_WPA</a>, <span class="stringliteral">&quot;vfspta&quot;</span>, <span class="stringliteral">&quot;Versioned sparse flow-sensitive points-to analysis&quot;</span>),</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; clEnumValN(<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3">PointerAnalysis::TypeCPP_WPA</a>, <span class="stringliteral">&quot;type&quot;</span>, <span class="stringliteral">&quot;Type-based fast analysis for Callgraph, SVFIR and CHA&quot;</span>)</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; ));</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160;</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160;</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160;llvm::cl::bits&lt;WPAPass::AliasCheckRule&gt; <a class="code" href="classSVF_1_1Options.html#ab9db3ae038f26a350afc964952907bd7">Options::AliasRule</a>(llvm::cl::desc(<span class="stringliteral">&quot;Select alias check rule&quot;</span>),</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; llvm::cl::values(</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; clEnumValN(<a class="code" href="classSVF_1_1WPAPass.html#a4505a1882956feda3cf83c788149394da498ba80d25733b291f391a94500dd4c7">WPAPass::Conservative</a>, <span class="stringliteral">&quot;conservative&quot;</span>, <span class="stringliteral">&quot;return MayAlias if any pta says alias&quot;</span>),</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; clEnumValN(<a class="code" href="classSVF_1_1WPAPass.html#a4505a1882956feda3cf83c788149394dabb45a604558e2ebff460adb77b4a5d7c">WPAPass::Veto</a>, <span class="stringliteral">&quot;veto&quot;</span>, <span class="stringliteral">&quot;return NoAlias if any pta says no alias&quot;</span>)</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; ));</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160;</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#adec2012e10130f664fe0ea3acf39f78b">Options::ShowHiddenNode</a>(</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; <span class="stringliteral">&quot;show-hidden-nodes&quot;</span>,</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Show hidden nodes on DOT Graphs (e.g., isolated node on a graph)&quot;</span>)</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160;);</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160;</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;std::string&gt; <a class="code" href="classSVF_1_1Options.html#aa929e2ae2c0a78181c3a1311bfe73596">Options::GrammarFilename</a>(</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; <span class="stringliteral">&quot;grammar&quot;</span>,</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; llvm::cl::init(<span class="stringliteral">&quot;&quot;</span>),</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;&lt;Grammar textfile&gt;&quot;</span>)</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160;);</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160;</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;std::string&gt; <a class="code" href="classSVF_1_1Options.html#a87b63f1f8f4f65cdf6647f9f056ffc53">Options::CFLGraph</a>(</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; <span class="stringliteral">&quot;cflgraph&quot;</span>,</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; llvm::cl::init(<span class="stringliteral">&quot;&quot;</span>),</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;&lt;Dot file as the CFLGraph input&gt;&quot;</span>)</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160;);</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160;</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a0beb2da0f9ab691c0b7729bb42f8354c">Options::PrintCFL</a>(</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; <span class="stringliteral">&quot;print-cfl&quot;</span>,</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Print ir, grammar and cflgraph for debug.&quot;</span>)</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160;);</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160;</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a79dff5235e82e1313fa4b053f866f357">Options::FlexSymMap</a>(</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; <span class="stringliteral">&quot;flex-symmap&quot;</span>,</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Extend exist sym map while read graph from dot if sym not in map.&quot;</span>)</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160;);</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160;</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a7d566af0280a0c2457947fd426c81c81">Options::PEGTransfer</a>(</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; <span class="stringliteral">&quot;peg-transfer&quot;</span>,</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;When explicit to true, cfl graph builder will transfer PAG load and store edges to copy and addr.&quot;</span>)</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160;);</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160;</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a13ff50def26bcf8f79d3222c6948cbfe">Options::CFLSVFG</a>(</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; <span class="stringliteral">&quot;cflsvfg&quot;</span>,</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;When explicit to true, cfl graph builder will transfer SVFG to CFL Reachability.&quot;</span>)</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160;);</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160;</div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160;</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;bool&gt; <a class="code" href="classSVF_1_1Options.html#a420e6656b02fd900430d51b8b4a5c6c1">Options::LoopAnalysis</a>(</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; <span class="stringliteral">&quot;loop-analysis&quot;</span>,</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; llvm::cl::init(<span class="keyword">true</span>),</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Analyze every func and get loop info and loop bounds.&quot;</span>)</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160;);</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160;<span class="keyword">const</span> llvm::cl::opt&lt;unsigned&gt; <a class="code" href="classSVF_1_1Options.html#ab7161ca7a809792af82e5aabdfcc3bfb">Options::LoopBound</a>(</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; <span class="stringliteral">&quot;loop-bound&quot;</span>,</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; llvm::cl::init(1),</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; llvm::cl::desc(<span class="stringliteral">&quot;Maximum number of loop&quot;</span>));</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160;</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160;} <span class="comment">// namespace SVF.</span></div><div class="ttc" id="classSVF_1_1Options_html_ab9db3ae038f26a350afc964952907bd7"><div class="ttname"><a href="classSVF_1_1Options.html#ab9db3ae038f26a350afc964952907bd7">SVF::Options::AliasRule</a></div><div class="ttdeci">static llvm::cl::bits&lt; WPAPass::AliasCheckRule &gt; AliasRule</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00246">Options.h:246</a></div></div>
70
- <div class="ttc" id="classSVF_1_1Options_html_abae23cb06d932f93900f627813b9f4a4"><div class="ttname"><a href="classSVF_1_1Options.html#abae23cb06d932f93900f627813b9f4a4">SVF::Options::StatBudget</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; StatBudget</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00133">Options.h:133</a></div></div>
71
- <div class="ttc" id="classSVF_1_1Options_html_affd0cb6e0cb91e096537a3d3198bf4e5"><div class="ttname"><a href="classSVF_1_1Options.html#affd0cb6e0cb91e096537a3d3198bf4e5">SVF::Options::TypePrint</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; TypePrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00128">Options.h:128</a></div></div>
72
- <div class="ttc" id="classSVF_1_1Options_html_a2f671b5844b2c167a2c44b90061bfd73"><div class="ttname"><a href="classSVF_1_1Options.html#a2f671b5844b2c167a2c44b90061bfd73">SVF::Options::DumpUninitPtr</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpUninitPtr</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00087">Options.h:87</a></div></div>
73
- <div class="ttc" id="classSVF_1_1Options_html_aa5c4bc8e55a056adcd7a6f8946ad5f38"><div class="ttname"><a href="classSVF_1_1Options.html#aa5c4bc8e55a056adcd7a6f8946ad5f38">SVF::Options::Graphtxt</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std::string &gt; Graphtxt</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00211">Options.h:211</a></div></div>
74
- <div class="ttc" id="classSVF_1_1Options_html_ad03c4697dd4da2b6adde112e3ee1884b"><div class="ttname"><a href="classSVF_1_1Options.html#ad03c4697dd4da2b6adde112e3ee1884b">SVF::Options::FsTimeLimit</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; FsTimeLimit</div><div class="ttdoc">Time limit for the main phase (i.e., the actual solving) of FS analyses. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00072">Options.h:72</a></div></div>
75
- <div class="ttc" id="classSVF_1_1Options_html_abbfd1d7e985483c486394d8db85b6a85"><div class="ttname"><a href="classSVF_1_1Options.html#abbfd1d7e985483c486394d8db85b6a85">SVF::Options::SymTabPrint</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; SymTabPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00218">Options.h:218</a></div></div>
76
- <div class="ttc" id="classSVF_1_1Options_html_a113ee30422ef08b6790eed9a83277b9c"><div class="ttname"><a href="classSVF_1_1Options.html#a113ee30422ef08b6790eed9a83277b9c">SVF::Options::PTSAllPrint</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PTSAllPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00131">Options.h:131</a></div></div>
77
- <div class="ttc" id="classSVF_1_1Options_html_ace0fa364337374ce75a58a9e2f229e24"><div class="ttname"><a href="classSVF_1_1Options.html#ace0fa364337374ce75a58a9e2f229e24">SVF::Options::PTSPrint</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PTSPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00130">Options.h:130</a></div></div>
78
- <div class="ttc" id="classSVF_1_1Options_html_a2a9fe90fae25f3de780f91b7e296b49a"><div class="ttname"><a href="classSVF_1_1Options.html#a2a9fe90fae25f3de780f91b7e296b49a">SVF::Options::VtableInSVFIR</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; VtableInSVFIR</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00239">Options.h:239</a></div></div>
79
- <div class="ttc" id="classSVF_1_1Options_html_a9dc372635fc6f5ea2d902fc5c49fca8a"><div class="ttname"><a href="classSVF_1_1Options.html#a9dc372635fc6f5ea2d902fc5c49fca8a">SVF::Options::ClusterFs</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ClusterFs</div><div class="ttdoc">Whether to cluster FS or VFS with the auxiliary Andersen&amp;#39;s. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00044">Options.h:44</a></div></div>
80
- <div class="ttc" id="classSVF_1_1Options_html_a2e53156bd075d7802d390672f129c6a8"><div class="ttname"><a href="classSVF_1_1Options.html#a2e53156bd075d7802d390672f129c6a8">SVF::Options::MaxContextLen</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; MaxContextLen</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00096">Options.h:96</a></div></div>
81
- <div class="ttc" id="classSVF_1_1Options_html_a32ef95b3bd06b50337b3129b74ffb45c"><div class="ttname"><a href="classSVF_1_1Options.html#a32ef95b3bd06b50337b3129b74ffb45c">SVF::Options::MaxPathLen</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; MaxPathLen</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00095">Options.h:95</a></div></div>
82
- <div class="ttc" id="classSVF_1_1Options_html_a5c051cf6a93a87a07aa1d31e302a2877"><div class="ttname"><a href="classSVF_1_1Options.html#a5c051cf6a93a87a07aa1d31e302a2877">SVF::Options::ModelConsts</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ModelConsts</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00216">Options.h:216</a></div></div>
83
- <div class="ttc" id="classSVF_1_1Options_html_ab4206ecb79fdcd2d5211bfbd2537cacb"><div class="ttname"><a href="classSVF_1_1Options.html#ab4206ecb79fdcd2d5211bfbd2537cacb">SVF::Options::DisableWarn</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DisableWarn</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00227">Options.h:227</a></div></div>
84
- <div class="ttc" id="classSVF_1_1Options_html_a79dff5235e82e1313fa4b053f866f357"><div class="ttname"><a href="classSVF_1_1Options.html#a79dff5235e82e1313fa4b053f866f357">SVF::Options::FlexSymMap</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; FlexSymMap</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00255">Options.h:255</a></div></div>
85
- <div class="ttc" id="classSVF_1_1Options_html_a498a1a05a08be1ffd845aefeb0672bcb"><div class="ttname"><a href="classSVF_1_1Options.html#a498a1a05a08be1ffd845aefeb0672bcb">SVF::Options::PStat</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PStat</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00132">Options.h:132</a></div></div>
86
- <div class="ttc" id="classSVF_1_1Options_html_ae1dadbd4c213f1bd5b8957b5c747bebd"><div class="ttname"><a href="classSVF_1_1Options.html#ae1dadbd4c213f1bd5b8957b5c747bebd">SVF::Options::AnnoFlag</a></div><div class="ttdeci">static const llvm::cl::opt&lt; u32_t &gt; AnnoFlag</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00182">Options.h:182</a></div></div>
87
- <div class="ttc" id="classSVF_1_1Options_html_a9ec1d22e20b655e364fea03ba7d923a2"><div class="ttname"><a href="classSVF_1_1Options.html#a9ec1d22e20b655e364fea03ba7d923a2">SVF::Options::ptDataBacking</a></div><div class="ttdeci">static const llvm::cl::opt&lt; BVDataPTAImpl::PTBackingType &gt; ptDataBacking</div><div class="ttdoc">PTData type. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00069">Options.h:69</a></div></div>
88
- <div class="ttc" id="classSVF_1_1Options_html_a2780c16611375631cd48bf9487f9e0bf"><div class="ttname"><a href="classSVF_1_1Options.html#a2780c16611375631cd48bf9487f9e0bf">SVF::Options::OCGDotGraph</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; OCGDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00110">Options.h:110</a></div></div>
89
- <div class="ttc" id="classSVF_1_1Options_html_a7b9af13feccc116377aeb107640ae874"><div class="ttname"><a href="classSVF_1_1Options.html#a7b9af13feccc116377aeb107640ae874">SVF::Options::CxtBudget</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned long long &gt; CxtBudget</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00081">Options.h:81</a></div></div>
90
- <div class="ttc" id="classSVF_1_1Options_html_a2537be131132830c63d408133619a065"><div class="ttname"><a href="classSVF_1_1Options.html#a2537be131132830c63d408133619a065">SVF::Options::NodeAllocStrat</a></div><div class="ttdeci">static const llvm::cl::opt&lt; SVF::NodeIDAllocator::Strategy &gt; NodeAllocStrat</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00035">Options.h:35</a></div></div>
91
- <div class="ttc" id="classSVF_1_1Options_html_aa734ee7b55809934b441cf5e5818e015"><div class="ttname"><a href="classSVF_1_1Options.html#aa734ee7b55809934b441cf5e5818e015">SVF::Options::SingleStride</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; SingleStride</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00125">Options.h:125</a></div></div>
92
- <div class="ttc" id="classSVF_1_1Options_html_a1608ded89f829a780d67cb82e1e62944"><div class="ttname"><a href="classSVF_1_1Options.html#a1608ded89f829a780d67cb82e1e62944">SVF::Options::ReadSVFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std ::string &gt; ReadSVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00162">Options.h:162</a></div></div>
93
- <div class="ttc" id="classSVF_1_1Options_html_a5fb7733fd66ecad30eea8ced3839e590"><div class="ttname"><a href="classSVF_1_1Options.html#a5fb7733fd66ecad30eea8ced3839e590">SVF::Options::SABERFULLSVFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; SABERFULLSVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00243">Options.h:243</a></div></div>
94
- <div class="ttc" id="classSVF_1_1Options_html_a153d42a480ef1763ad59fd7258ac3ac5"><div class="ttname"><a href="classSVF_1_1Options.html#a153d42a480ef1763ad59fd7258ac3ac5">SVF::Options::EnableThreadCallGraph</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; EnableThreadCallGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00142">Options.h:142</a></div></div>
95
- <div class="ttc" id="classSVF_1_1Options_html_a2ef679d4177438655577e7fef7c0cc90"><div class="ttname"><a href="classSVF_1_1Options.html#a2ef679d4177438655577e7fef7c0cc90">SVF::Options::DumpFree</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpFree</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00085">Options.h:85</a></div></div>
96
- <div class="ttc" id="classSVF_1_1Options_html_a30abe362add49b0b7083f34530aa446c"><div class="ttname"><a href="classSVF_1_1Options.html#a30abe362add49b0b7083f34530aa446c">SVF::Options::MallocOnly</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; MallocOnly</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00090">Options.h:90</a></div></div>
97
- <div class="ttc" id="classSVF_1_1Options_html_ac2e5aab778f266c5de58cb6eb1939095"><div class="ttname"><a href="classSVF_1_1Options.html#ac2e5aab778f266c5de58cb6eb1939095">SVF::Options::DumpSUPts</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpSUPts</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00088">Options.h:88</a></div></div>
98
- <div class="ttc" id="classSVF_1_1Options_html_a7d566af0280a0c2457947fd426c81c81"><div class="ttname"><a href="classSVF_1_1Options.html#a7d566af0280a0c2457947fd426c81c81">SVF::Options::PEGTransfer</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PEGTransfer</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00256">Options.h:256</a></div></div>
99
- <div class="ttc" id="classSVF_1_1Options_html_ad6c29b05188c9e06aa89623c61865ed8"><div class="ttname"><a href="classSVF_1_1Options.html#ad6c29b05188c9e06aa89623c61865ed8">SVF::Options::IndirectCallLimit</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; IndirectCallLimit</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00139">Options.h:139</a></div></div>
100
- <div class="ttc" id="classSVF_1_1Options_html_a4a9e039ba28cc7cdadf9d9d4fa64ab11"><div class="ttname"><a href="classSVF_1_1Options.html#a4a9e039ba28cc7cdadf9d9d4fa64ab11">SVF::Options::WriteSVFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std ::string &gt; WriteSVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00161">Options.h:161</a></div></div>
101
- <div class="ttc" id="classSVF_1_1Options_html_a78b3b44f2c0dc94dc1363ca57ee76d66"><div class="ttname"><a href="classSVF_1_1Options.html#a78b3b44f2c0dc94dc1363ca57ee76d66">SVF::Options::LockValid</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; LockValid</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00187">Options.h:187</a></div></div>
102
- <div class="ttc" id="classSVF_1_1Options_html_adfc1a5c6098d3867e29fc65ca9ffa1cc"><div class="ttname"><a href="classSVF_1_1Options.html#adfc1a5c6098d3867e29fc65ca9ffa1cc">SVF::Options::MaxFieldLimit</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; MaxFieldLimit</div><div class="ttdoc">Maximum number of field derivations for an object. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00038">Options.h:38</a></div></div>
103
- <div class="ttc" id="classSVF_1_1Options_html_a3a20311c732fb391332ae0ee1cb450a0"><div class="ttname"><a href="classSVF_1_1Options.html#a3a20311c732fb391332ae0ee1cb450a0">SVF::Options::PAGDotGraph</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PAGDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00134">Options.h:134</a></div></div>
104
- <div class="ttc" id="classSVF_1_1Options_html_af34d8a738db4f40addc1de930e79654f"><div class="ttname"><a href="classSVF_1_1Options.html#af34d8a738db4f40addc1de930e79654f">SVF::Options::PredictPtOcc</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PredictPtOcc</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00066">Options.h:66</a></div></div>
105
- <div class="ttc" id="classSVF_1_1Options_html_a4ac0e6b77fc9ccc18b269268b3cd046d"><div class="ttname"><a href="classSVF_1_1Options.html#a4ac0e6b77fc9ccc18b269268b3cd046d">SVF::Options::MSSAFun</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std ::string &gt; MSSAFun</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00153">Options.h:153</a></div></div>
106
- <div class="ttc" id="classSVF_1_1Options_html_af129d2ff94af3f6830c0678cb4b72371"><div class="ttname"><a href="classSVF_1_1Options.html#af129d2ff94af3f6830c0678cb4b72371">SVF::Options::AddModelFlag</a></div><div class="ttdeci">static const llvm::cl::opt&lt; u32_t &gt; AddModelFlag</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00168">Options.h:168</a></div></div>
107
- <div class="ttc" id="classSVF_1_1Options_html_abc02c7dc5e6cb3613856e0f774c6d304"><div class="ttname"><a href="classSVF_1_1Options.html#abc02c7dc5e6cb3613856e0f774c6d304">SVF::Options::PtType</a></div><div class="ttdeci">static const llvm::cl::opt&lt; PointsTo::Type &gt; PtType</div><div class="ttdoc">Type of points-to set to use for all analyses. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00050">Options.h:50</a></div></div>
108
- <div class="ttc" id="classSVF_1_1Options_html_a3ed96242ac56a05d057ebd11b23cf053"><div class="ttname"><a href="classSVF_1_1Options.html#a3ed96242ac56a05d057ebd11b23cf053">SVF::Options::SelfCycle</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std::string &gt; SelfCycle</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00119">Options.h:119</a></div></div>
109
- <div class="ttc" id="classSVF_1_1Options_html_adf6c289ef9f2d0196984dd4024ea4316"><div class="ttname"><a href="classSVF_1_1Options.html#adf6c289ef9f2d0196984dd4024ea4316">SVF::Options::PrintDCHG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PrintDCHG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00208">Options.h:208</a></div></div>
110
- <div class="ttc" id="classSVF_1_1Options_html_a50182faec95c6c4635df65a55148b040"><div class="ttname"><a href="classSVF_1_1Options.html#a50182faec95c6c4635df65a55148b040">SVF::Options::IgnoreDeadFun</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; IgnoreDeadFun</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00149">Options.h:149</a></div></div>
111
- <div class="ttc" id="classSVF_1_1Options_html_a0865038c4738fcc8f47106faad03d98a"><div class="ttname"><a href="classSVF_1_1Options.html#a0865038c4738fcc8f47106faad03d98a">SVF::Options::WPANum</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; WPANum</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00103">Options.h:103</a></div></div>
69
+ <a href="Options_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">//===- Options.cpp -- Command line options ------------------------//</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="Options_8h.html">Util/Options.h</a>&quot;</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="CommandLine_8h.html">Util/CommandLine.h</a>&quot;</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceSVF.html">SVF</a></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;{</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="keyword">const</span> <a class="code" href="classOptionMap.html">OptionMap&lt;enum PTAStat::ClockType&gt;</a> <a class="code" href="classSVF_1_1Options.html#a28af43961cb29a7dea50be2ab332cc75">Options::ClockType</a>(</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160; <span class="stringliteral">&quot;clock-type&quot;</span>,</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160; <span class="stringliteral">&quot;how time should be measured&quot;</span>,</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160; PTAStat::ClockType::CPU,</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;{</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160; {PTAStat::ClockType::Wall, <span class="stringliteral">&quot;wall&quot;</span>, <span class="stringliteral">&quot;use wall time&quot;</span>},</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; {PTAStat::ClockType::CPU, <span class="stringliteral">&quot;cpu&quot;</span>, <span class="stringliteral">&quot;use CPU time&quot;</span>},</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;}</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;);</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#abcb6796d45722562546f33b2745a0418">Options::MarkedClocksOnly</a>(</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; <span class="stringliteral">&quot;marked-clocks-only&quot;</span>,</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; <span class="stringliteral">&quot;Only measure times where explicitly marked&quot;</span>,</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;);</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="keyword">const</span> <a class="code" href="classOptionMap.html">OptionMap&lt;NodeIDAllocator::Strategy&gt;</a> <a class="code" href="classSVF_1_1Options.html#a38107576f4f242191cdbfb1ca51f93cd">Options::NodeAllocStrat</a>(</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <span class="stringliteral">&quot;node-alloc-strat&quot;</span>,</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="stringliteral">&quot;Method of allocating (LLVM) values and memory objects as node IDs&quot;</span>,</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; NodeIDAllocator::Strategy::SEQ,</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;{</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; {NodeIDAllocator::Strategy::DENSE, <span class="stringliteral">&quot;dense&quot;</span>, <span class="stringliteral">&quot;allocate objects together [0-n] and values together [m-MAX], separately&quot;</span>},</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; {NodeIDAllocator::Strategy::REVERSE_DENSE, <span class="stringliteral">&quot;reverse-dense&quot;</span>, <span class="stringliteral">&quot;like dense but flipped, objects are [m-MAX], values are [0-n]&quot;</span>},</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; {NodeIDAllocator::Strategy::SEQ, <span class="stringliteral">&quot;seq&quot;</span>, <span class="stringliteral">&quot;allocate values and objects sequentially, intermixed (default)&quot;</span>},</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; {NodeIDAllocator::Strategy::DEBUG, <span class="stringliteral">&quot;debug&quot;</span>, <span class="stringliteral">&quot;allocate value and objects sequentially, intermixed, except GEP objects as offsets&quot;</span>},</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;}</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;);</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#aaab923c093730b1670a54f09340b1bd5">Options::MaxFieldLimit</a>(</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="stringliteral">&quot;field-limit&quot;</span>,</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="stringliteral">&quot;Maximum number of fields for field sensitive analysis&quot;</span>,</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; 512</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">const</span> <a class="code" href="classOptionMap.html">OptionMap&lt;BVDataPTAImpl::PTBackingType&gt;</a> <a class="code" href="classSVF_1_1Options.html#ae3c3cc703ef35987a32aa808038a1307">Options::ptDataBacking</a>(</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="stringliteral">&quot;ptd&quot;</span>,</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="stringliteral">&quot;Overarching points-to data structure&quot;</span>,</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; BVDataPTAImpl::PTBackingType::Persistent,</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;{</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; {BVDataPTAImpl::PTBackingType::Mutable, <span class="stringliteral">&quot;mutable&quot;</span>, <span class="stringliteral">&quot;points-to set per pointer&quot;</span>},</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; {BVDataPTAImpl::PTBackingType::Persistent, <span class="stringliteral">&quot;persistent&quot;</span>, <span class="stringliteral">&quot;points-to set ID per pointer, operations hash-consed&quot;</span>},</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;}</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#a6ebad0decdd6e93c661b72d80f5dbcef">Options::FsTimeLimit</a>(</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="stringliteral">&quot;fs-time-limit&quot;</span>,</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="stringliteral">&quot;time limit for main phase of flow-sensitive analyses&quot;</span>,</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; 0</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#afd31760e868bfa4d15e434e21fe4d665">Options::VersioningThreads</a>(</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="stringliteral">&quot;versioning-threads&quot;</span>,</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="stringliteral">&quot;number of threads to use in the versioning phase of versioned flow-sensitive analysis&quot;</span>,</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; 1</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#a36db0fdd38ff9093d2e6bb30581b25e1">Options::AnderTimeLimit</a>(</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="stringliteral">&quot;ander-time-limit&quot;</span>,</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="stringliteral">&quot;time limit for Andersen&#39;s analyses (ignored when -fs-time-limit set)&quot;</span>,</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; 0</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment">// ContextDDA.cpp</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#a3bbd106de519cb8d00f33e82f14d279b">Options::CxtBudget</a>(</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="stringliteral">&quot;cxt-bg&quot;</span>,</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="stringliteral">&quot;Maximum step budget of context-sensitive traversing&quot;</span>,</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; 10000</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment">// DDAClient.cpp</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a5fe0e29e325a6d53ccf16f8fe725821e">Options::SingleLoad</a>(</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="stringliteral">&quot;single-load&quot;</span>,</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="stringliteral">&quot;Count load pointer with same source operand as one query&quot;</span>,</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a03cd671379712e6b3fa8ac4ec9b4d1d4">Options::DumpFree</a>(</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="stringliteral">&quot;dump-free&quot;</span>,</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="stringliteral">&quot;Dump use after free locations&quot;</span>,</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ab8075fe929f99b640d5c0a0530297025">Options::DumpUninitVar</a>(</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="stringliteral">&quot;dump-uninit-var&quot;</span>,</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="stringliteral">&quot;Dump uninitialised variables&quot;</span>,</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a296e4a2187d14828cb0baf859f48d716">Options::DumpUninitPtr</a>(</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="stringliteral">&quot;dump-uninit-ptr&quot;</span>,</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="stringliteral">&quot;Dump uninitialised pointers&quot;</span>,</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a6d45d7ba6852a986b53b31f60f967b01">Options::DumpSUPts</a>(</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="stringliteral">&quot;dump-su-pts&quot;</span>,</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="stringliteral">&quot;Dump strong updates store&quot;</span>,</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ab64401bdde8b0c846a78f21423e5cfb6">Options::DumpSUStore</a>(</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="stringliteral">&quot;dump-su-store&quot;</span>,</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="stringliteral">&quot;Dump strong updates store&quot;</span>,</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a9711cdc976786b3949ac6b26f95b59b0">Options::MallocOnly</a>(</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="stringliteral">&quot;malloc-only&quot;</span>,</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="stringliteral">&quot;Only add tainted objects for malloc&quot;</span>,</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ad6f51870a3cabccbec4898d572dba74f">Options::TaintUninitHeap</a>(</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="stringliteral">&quot;uninit-heap&quot;</span>,</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="stringliteral">&quot;detect uninitialized heap variables&quot;</span>,</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a787f95c7ac87e04f2e6d55cf5d665a34">Options::TaintUninitStack</a>(</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="stringliteral">&quot;uninit-stack&quot;</span>,</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="stringliteral">&quot;detect uninitialized stack variables&quot;</span>,</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="comment">// DDAPass.cpp</span></div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#a63121666a96f6cd2ae56d868c9576a53">Options::MaxPathLen</a>(</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="stringliteral">&quot;max-path&quot;</span>,</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="stringliteral">&quot;Maximum path limit for DDA&quot;</span>,</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; 100000</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#a6237da3f4e264fa8b63c11d621f39e71">Options::MaxContextLen</a>(</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="stringliteral">&quot;max-cxt&quot;</span>,</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="stringliteral">&quot;Maximum context limit for DDA&quot;</span>,</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; 3</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#aab0131558d9da9b0fe888387217ba919">Options::MaxStepInWrapper</a>(</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="stringliteral">&quot;max-step&quot;</span>,</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="stringliteral">&quot;Maximum steps when traversing on SVFG to identify a memory allocation wrapper&quot;</span>,</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; 10</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1Options.html#a5d14e81336dbfefa14146bf610989e6b">Options::UserInputQuery</a>(</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="stringliteral">&quot;query&quot;</span>,</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="stringliteral">&quot;Please specify queries by inputing their pointer ids&quot;</span>,</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="stringliteral">&quot;all&quot;</span></div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#aeab702f641fd13ee1d0f89837097e43b">Options::InsenRecur</a>(</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="stringliteral">&quot;in-recur&quot;</span>,</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="stringliteral">&quot;Mark context insensitive SVFG edges due to function recursions&quot;</span>,</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a0c5d08f13bd41095afb3b60c7ffad0e0">Options::InsenCycle</a>(</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="stringliteral">&quot;in-cycle&quot;</span>,</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="stringliteral">&quot;Mark context insensitive SVFG edges due to value-flow cycles&quot;</span>,</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#abe3087eb48a10bb600d1fd24308c019b">Options::PrintCPts</a>(</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="stringliteral">&quot;cpts&quot;</span>,</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="stringliteral">&quot;Dump conditional points-to set &quot;</span>,</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;);</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ae88c0813d02dcb5632cd721a61a15014">Options::PrintQueryPts</a>(</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="stringliteral">&quot;print-query-pts&quot;</span>,</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="stringliteral">&quot;Dump queries&#39; conditional points-to set &quot;</span>,</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;);</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a782d52d7e8d423c2bef27b34d518ffd9">Options::WPANum</a>(</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="stringliteral">&quot;wpa-num&quot;</span>,</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="stringliteral">&quot;collect WPA FS number only &quot;</span>,</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="comment">//static RegisterAnalysisGroup&lt;AliasAnalysis&gt; AA_GROUP(DDAPA);</span></div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<a class="code" href="classOptionMultiple.html">OptionMultiple&lt;PointerAnalysis::PTATY&gt;</a> <a class="code" href="classSVF_1_1Options.html#afa6c98d477db41a457ac83cfbfd4a580">Options::DDASelected</a>(</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="stringliteral">&quot;Select pointer analysis&quot;</span>,</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;{</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; {<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18">PointerAnalysis::FlowS_DDA</a>, <span class="stringliteral">&quot;dfs&quot;</span>, <span class="stringliteral">&quot;Demand-driven flow sensitive analysis&quot;</span>},</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; {<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8">PointerAnalysis::Cxt_DDA</a>, <span class="stringliteral">&quot;cxt&quot;</span>, <span class="stringliteral">&quot;Demand-driven context- flow- sensitive analysis&quot;</span>},</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;}</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="comment">// FlowDDA.cpp</span></div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#a8c02af98e908c48cef1de0085ed10ce4">Options::FlowBudget</a>(</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="stringliteral">&quot;flow-bg&quot;</span>,</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="stringliteral">&quot;Maximum step budget of flow-sensitive traversing&quot;</span>,</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; 10000</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="comment">// Offline constraint graph (OfflineConsG.cpp)</span></div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ad6c9b07d4dc8af20fbe2b93711cc2101">Options::OCGDotGraph</a>(</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="stringliteral">&quot;dump-ocg&quot;</span>,</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="stringliteral">&quot;Dump dot graph of Offline Constraint Graph&quot;</span>,</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="comment">// Program Assignment Graph for pointer analysis (SVFIR.cpp)</span></div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a51b28b2e973911fb8e2c23c6127e9a63">Options::HandBlackHole</a>(</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="stringliteral">&quot;blk&quot;</span>,</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="stringliteral">&quot;Hanle blackhole edge&quot;</span>,</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;);</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a12e88ce4ba3d39017203ec4cd3ccccea">Options::FirstFieldEqBase</a>(</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="stringliteral">&quot;ff-eq-base&quot;</span>,</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="stringliteral">&quot;Treat base objects as their first fields&quot;</span>,</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="comment">// SVFG optimizer (SVFGOPT.cpp)</span></div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ae60822a71ee1cd389413d98dfb35e302">Options::ContextInsensitive</a>(</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="stringliteral">&quot;ci-svfg&quot;</span>,</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="stringliteral">&quot;Reduce SVFG into a context-insensitive one&quot;</span>,</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a09005e749b1030347ac5dcc015053a37">Options::KeepAOFI</a>(</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="stringliteral">&quot;keep-aofi&quot;</span>,</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="stringliteral">&quot;Keep formal-in and actual-out parameters&quot;</span>,</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1Options.html#a9ef14f68939b7678ddff83d544e024cc">Options::SelfCycle</a>(</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="stringliteral">&quot;keep-self-cycle&quot;</span>,</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="stringliteral">&quot;How to handle self cycle edges: all, context, none&quot;</span>,</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="stringliteral">&quot;&quot;</span></div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="comment">// Sparse value-flow graph (VFG.cpp)</span></div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ae3ad3003a8d3df2f1e3463248bb5ad51">Options::DumpVFG</a>(</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="stringliteral">&quot;dump-vfg&quot;</span>,</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="stringliteral">&quot;Dump dot graph of VFG&quot;</span>,</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;<span class="comment">// Location set for modeling abstract memory object (LocationSet.cpp)</span></div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ae5af5a2b3854b4d234197ab1a389aac2">Options::SingleStride</a>(</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="stringliteral">&quot;stride-only&quot;</span>,</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="stringliteral">&quot;Only use single stride in LocMemoryModel&quot;</span>,</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;</div><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="comment">// Base class of pointer analyses (PointerAnalysis.cpp)</span></div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a83103f0d5f166e0bb062aa7d7b393ddd">Options::TypePrint</a>(</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="stringliteral">&quot;print-type&quot;</span>,</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="stringliteral">&quot;Print type&quot;</span>,</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#abb91435e1e06b07548c539e7f7761563">Options::FuncPointerPrint</a>(</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="stringliteral">&quot;print-fp&quot;</span>,</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="stringliteral">&quot;Print targets of indirect call site&quot;</span>,</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;);</div><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="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a428e892b31dcb783be36a35e878a0337">Options::PTSPrint</a>(</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="stringliteral">&quot;print-pts&quot;</span>,</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="stringliteral">&quot;Print points-to set of top-level pointers&quot;</span>,</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keyword">false</span></div><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;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a737f3501a93f954790fe93d36c43fb00">Options::PTSAllPrint</a>(</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="stringliteral">&quot;print-all-pts&quot;</span>,</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="stringliteral">&quot;Print all points-to set of both top-level and address-taken variables&quot;</span>,</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keyword">false</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;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ac9d18f2d6853f45548f4f85fa2f661c4">Options::PStat</a>(</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="stringliteral">&quot;stat&quot;</span>,</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="stringliteral">&quot;Statistic for Pointer analysis&quot;</span>,</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#ad2f3ffd1b8d579ebe4c19a015cd599e2">Options::StatBudget</a>(</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="stringliteral">&quot;stat-limit&quot;</span>,</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="stringliteral">&quot;Iteration budget for On-the-fly statistics&quot;</span>,</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; 20</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;);</div><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;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a1dd9ad3f11454be49b4c5099503db8e8">Options::PAGDotGraph</a>(</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="stringliteral">&quot;dump-pag&quot;</span>,</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="stringliteral">&quot;Dump dot graph of SVFIR&quot;</span>,</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keyword">false</span></div><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;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a424a44f39a43b22434dbdce26007a353">Options::ShowSVFIRValue</a>(</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="stringliteral">&quot;show-ir-value&quot;</span>,</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="stringliteral">&quot;Show values of SVFIR (e.g., when generating dot graph)&quot;</span>,</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keyword">true</span></div><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;</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ae7ccfb3d1308e205e5014849dcc43d9a">Options::DumpICFG</a>(</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="stringliteral">&quot;dump-icfg&quot;</span>,</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="stringliteral">&quot;Dump dot graph of ICFG&quot;</span>,</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;);</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a0a998c2e1d701b2052985691babc4567">Options::CallGraphDotGraph</a>(</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="stringliteral">&quot;dump-callgraph&quot;</span>,</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="stringliteral">&quot;Dump dot graph of Call Graph&quot;</span>,</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keyword">false</span></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;</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a7c6053f2341a500a8caca61607303b6e">Options::PAGPrint</a>(</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="stringliteral">&quot;print-pag&quot;</span>,</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="stringliteral">&quot;Print SVFIR to command line&quot;</span>,</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keyword">false</span></div><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;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#aa5bae1db07c401517c1c0f8fd9f2deef">Options::IndirectCallLimit</a>(</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="stringliteral">&quot;ind-call-limit&quot;</span>,</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="stringliteral">&quot;Indirect solved call edge limit&quot;</span>,</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; 50000</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;);</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;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a742a42d855c5b96fb7c70a2d0ab64021">Options::UsePreCompFieldSensitive</a>(</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="stringliteral">&quot;pre-field-sensitive&quot;</span>,</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="stringliteral">&quot;Use pre-computed field-sensitivity for later analysis&quot;</span>,</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;);</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a5f07ff361307017b35fb6b9a97919a73">Options::EnableAliasCheck</a>(</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="stringliteral">&quot;alias-check&quot;</span>,</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="stringliteral">&quot;Enable alias check functions&quot;</span>,</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keyword">true</span></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;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a1daf36a755523519187c3a8e9a19b58d">Options::EnableThreadCallGraph</a>(</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="stringliteral">&quot;enable-tcg&quot;</span>,</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="stringliteral">&quot;Enable pointer analysis to use thread call graph&quot;</span>,</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keyword">true</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;</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#abf71061d93d4a3b32246f19dc71e5127">Options::ConnectVCallOnCHA</a>(</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="stringliteral">&quot;v-call-cha&quot;</span>,</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="stringliteral">&quot;connect virtual calls using cha&quot;</span>,</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keyword">false</span></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;</div><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="comment">// PointerAnalysisImpl.cpp</span></div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a1743b8a1ab2d71c35206c7befa725d90">Options::INCDFPTData</a>(</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="stringliteral">&quot;inc-data&quot;</span>,</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="stringliteral">&quot;Enable incremental DFPTData for flow-sensitive analysis&quot;</span>,</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160;);</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a46743284466ff803f52a82b094186d16">Options::ClusterAnder</a>(</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <span class="stringliteral">&quot;cluster-ander&quot;</span>,</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="stringliteral">&quot;Stage Andersen&#39;s with Steensgard&#39;s and cluster based on that&quot;</span>,</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;);</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;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a853caba808dc7d17cba4ad4214b56b6f">Options::ClusterFs</a>(</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="stringliteral">&quot;cluster-fs&quot;</span>,</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="stringliteral">&quot;Cluster for FS/VFS with auxiliary Andersen&#39;s&quot;</span>,</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;);</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a0123986b466dae50b2f12c71295c54f9">Options::PlainMappingFs</a>(</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="stringliteral">&quot;plain-mapping-fs&quot;</span>,</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="stringliteral">&quot;Use an explicitly (not null) plain mapping for FS&quot;</span>,</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;);</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="keyword">const</span> <a class="code" href="classOptionMap.html">OptionMap&lt;PointsTo::Type&gt;</a> <a class="code" href="classSVF_1_1Options.html#a595a98babd7d51af6dacd935bd27d1f0">Options::PtType</a>(</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="stringliteral">&quot;pt-type&quot;</span>,</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="stringliteral">&quot;points-to set data structure to use in all analyses&quot;</span>,</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; PointsTo::Type::SBV,</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;{</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; {PointsTo::Type::SBV, <span class="stringliteral">&quot;sbv&quot;</span>, <span class="stringliteral">&quot;sparse bit-vector&quot;</span>},</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; {PointsTo::Type::CBV, <span class="stringliteral">&quot;cbv&quot;</span>, <span class="stringliteral">&quot;core bit-vector (dynamic bit-vector without leading and trailing 0s)&quot;</span>},</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; {PointsTo::Type::BV, <span class="stringliteral">&quot;bv&quot;</span>, <span class="stringliteral">&quot;bit-vector (dynamic bit-vector without trailing 0s)&quot;</span>},</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;);</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;<span class="keyword">const</span> <a class="code" href="classOptionMap.html">OptionMap&lt;enum hclust_fast_methods&gt;</a> <a class="code" href="classSVF_1_1Options.html#ac17ce6d75293dcd0baf366cbeb0cb6d6">Options::ClusterMethod</a>(</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="stringliteral">&quot;cluster-method&quot;</span>,</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="stringliteral">&quot;hierarchical clustering method for objects&quot;</span>,</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda66ab3fde95842ef6da0dae1f702a9618">HCLUST_METHOD_SVF_BEST</a>,</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;{</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; {<a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddad16cc6362447cc32292c4af4c6fe8024">HCLUST_METHOD_SINGLE</a>, <span class="stringliteral">&quot;single&quot;</span>, <span class="stringliteral">&quot;single linkage; minimum spanning tree algorithm&quot;</span>},</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; {<a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda44ce22fdfc560f27242e9b8f8e7009f4">HCLUST_METHOD_COMPLETE</a>, <span class="stringliteral">&quot;complete&quot;</span>, <span class="stringliteral">&quot;complete linkage; nearest-neighbour-chain algorithm&quot;</span>},</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; {<a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda3ab72664fc61704a1ba46bddbc347115">HCLUST_METHOD_AVERAGE</a>, <span class="stringliteral">&quot;average&quot;</span>, <span class="stringliteral">&quot;unweighted average linkage; nearest-neighbour-chain algorithm&quot;</span>},</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; {<a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda66ab3fde95842ef6da0dae1f702a9618">HCLUST_METHOD_SVF_BEST</a>, <span class="stringliteral">&quot;best&quot;</span>, <span class="stringliteral">&quot;try all linkage criteria; choose best&quot;</span>},</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;}</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;);</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="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a8cc5b2a363724b558f4932277a87c0f6">Options::RegionedClustering</a>(</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="comment">// Use cluster to &quot;gather&quot; the options closer together, even if it sounds a little worse.</span></div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="stringliteral">&quot;cluster-regioned&quot;</span>,</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="stringliteral">&quot;cluster regions separately&quot;</span>,</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a5a70a23e30df8dea3fcaf0e80479fe88">Options::RegionAlign</a>(</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="stringliteral">&quot;cluster-region-aligned&quot;</span>,</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="stringliteral">&quot;align each region&#39;s identifiers to the native word size&quot;</span>,</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;);</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;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#aed7bdea17fad08ceb0453b23f2f908bb">Options::PredictPtOcc</a>(</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="stringliteral">&quot;cluster-predict-occ&quot;</span>,</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="stringliteral">&quot;try to predict which points-to sets are more important in staged analysis&quot;</span>,</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;);</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;<span class="comment">// Memory region (MemRegion.cpp)</span></div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a00f3c4c53e6ade73f7667231c394c5d7">Options::IgnoreDeadFun</a>(</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="stringliteral">&quot;mssa-ignore-dead-fun&quot;</span>,</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="stringliteral">&quot;Don&#39;t construct memory SSA for deadfunction&quot;</span>,</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <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;</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;<span class="comment">// Base class of pointer analyses (MemSSA.cpp)</span></div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a0bb4bfd677e2e45cc8c24bfc190edfaa">Options::DumpMSSA</a>(</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="stringliteral">&quot;dump-mssa&quot;</span>,</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="stringliteral">&quot;Dump memory SSA&quot;</span>,</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;);</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160;</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1Options.html#aa8818e8138233838af224d4214de9e8f">Options::MSSAFun</a>(</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="stringliteral">&quot;mssa-fun&quot;</span>,</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <span class="stringliteral">&quot;Please specify which function needs to be dumped&quot;</span>,</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="stringliteral">&quot;&quot;</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;</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160;<span class="keyword">const</span> <a class="code" href="classOptionMap.html">OptionMap&lt;MemSSA::MemPartition&gt;</a> <a class="code" href="classSVF_1_1Options.html#aa127a32b03e381343c624e53adc4ef2e">Options::MemPar</a>(</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="stringliteral">&quot;mem-par&quot;</span>,</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="stringliteral">&quot;Memory region partiion strategies (e.g., for SVFG construction)&quot;</span>,</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; MemSSA::MemPartition::IntraDisjoint,</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;{</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; {MemSSA::MemPartition::Distinct, <span class="stringliteral">&quot;distinct&quot;</span>, <span class="stringliteral">&quot;memory region per each object&quot;</span>},</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; {MemSSA::MemPartition::IntraDisjoint, <span class="stringliteral">&quot;intra-disjoint&quot;</span>, <span class="stringliteral">&quot;memory regions partioned based on each function&quot;</span>},</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; {MemSSA::MemPartition::InterDisjoint, <span class="stringliteral">&quot;inter-disjoint&quot;</span>, <span class="stringliteral">&quot;memory regions partioned across functions&quot;</span>},</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;}</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;);</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;<span class="comment">// SVFG builder (SVFGBuilder.cpp)</span></div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a06eea18ba4cdf509255126a9b58e8eb0">Options::SVFGWithIndirectCall</a>(</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="stringliteral">&quot;svfg-with-ind-call&quot;</span>,</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="stringliteral">&quot;Update Indirect Calls for SVFG using pre-analysis&quot;</span>,</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;);</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;<a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ab7741246d969021c9afc448b084699af">Options::OPTSVFG</a>(</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="stringliteral">&quot;opt-svfg&quot;</span>,</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="stringliteral">&quot;Optimize SVFG to eliminate formal-in and actual-out&quot;</span>,</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;);</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1Options.html#a26711c33c9247a296f6dfaaf36d38e47">Options::WriteSVFG</a>(</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <span class="stringliteral">&quot;write-svfg&quot;</span>,</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <span class="stringliteral">&quot;Write SVFG&#39;s analysis results to a file&quot;</span>,</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <span class="stringliteral">&quot;&quot;</span></div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;);</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160;</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1Options.html#a034a83cdac580c1f8b10805e29ca50e4">Options::ReadSVFG</a>(</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="stringliteral">&quot;read-svfg&quot;</span>,</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <span class="stringliteral">&quot;Read SVFG&#39;s analysis results from a file&quot;</span>,</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; <span class="stringliteral">&quot;&quot;</span></div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160;);</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;<span class="comment">// FSMPTA.cpp</span></div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#aaa7ca76c841dd19d67796d09c94a9746">Options::UsePCG</a>(</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <span class="stringliteral">&quot;pcg-td-edge&quot;</span>,</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="stringliteral">&quot;Use PCG lock for non-sparsely adding SVFG edges&quot;</span>,</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;);</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#af6d92cd4372cd952e6d955cfc9be0ccb">Options::IntraLock</a>(</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <span class="stringliteral">&quot;intra-lock-td-edge&quot;</span>,</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <span class="stringliteral">&quot;Use simple intra-procedual lock for adding SVFG edges&quot;</span>,</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;);</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a3b6146824333f0da957d37b199978916">Options::ReadPrecisionTDEdge</a>(</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <span class="stringliteral">&quot;rp-td-edge&quot;</span>,</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <span class="stringliteral">&quot;perform read precision to refine SVFG edges&quot;</span>,</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;);</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#aac637c9746749320a4ebd6af36212c56">Options::AddModelFlag</a>(</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <span class="stringliteral">&quot;add-td-edge&quot;</span>,</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <span class="stringliteral">&quot;Add thread SVFG edges with models: 0 Non Add Edge; 1 NonSparse; 2 All Optimisation; 3 No MHP; 4 No Alias; 5 No Lock; 6 No Read Precision.&quot;</span>,</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; 0</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;<span class="comment">// LockAnalysis.cpp</span></div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a34e1093189fc8c150a9f2961557aa844">Options::PrintLockSpan</a>(</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <span class="stringliteral">&quot;print-lock&quot;</span>,</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <span class="stringliteral">&quot;Print Thread Interleaving Results&quot;</span>,</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160;);</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160;</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160;<span class="comment">// MHP.cpp</span></div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a1c6e39ebc266c754de4d78a31cc021ba">Options::PrintInterLev</a>(</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <span class="stringliteral">&quot;print-interlev&quot;</span>,</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <span class="stringliteral">&quot;Print Thread Interleaving Results&quot;</span>,</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160;);</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160;</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ae2c4fe298a27f50c749b75f0801f9666">Options::DoLockAnalysis</a>(</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <span class="stringliteral">&quot;lock-analysis&quot;</span>,</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <span class="stringliteral">&quot;Run Lock Analysis&quot;</span>,</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;<span class="comment">// MTA.cpp</span></div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ae639e80aa18a56bd1c6bcf41ce281930">Options::AndersenAnno</a>(</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <span class="stringliteral">&quot;tsan-ander&quot;</span>,</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <span class="stringliteral">&quot;Add TSan annotation according to Andersen&quot;</span>,</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;);</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a4f022e2f997d25ec50842b4248147336">Options::FSAnno</a>(</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <span class="stringliteral">&quot;tsan-fs&quot;</span>,</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <span class="stringliteral">&quot;Add TSan annotation according to flow-sensitive analysis&quot;</span>,</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;);</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160;<span class="comment">// MTAAnnotator.cpp</span></div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#a279f634c0ba3b01beed6a55b01d6eae7">Options::AnnoFlag</a>(</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; <span class="stringliteral">&quot;anno&quot;</span>,</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <span class="stringliteral">&quot;prune annotated instructions: 0001 Thread Local; 0002 Alias; 0004 MHP.&quot;</span>,</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; 0</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;);</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;<span class="comment">// MTAResultValidator.cpp</span></div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a944aee270c78d42c998691da283165f1">Options::PrintValidRes</a>(</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; <span class="stringliteral">&quot;mhp-validation&quot;</span>,</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; <span class="stringliteral">&quot;Print MHP Validation Results&quot;</span>,</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;);</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;<span class="comment">// LockResultValidator.cpp</span></div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a6c0afceb5db81504930dc6f673bc41ec">Options::LockValid</a>(</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; <span class="stringliteral">&quot;lock-validation&quot;</span>,</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <span class="stringliteral">&quot;Print Lock Validation Results&quot;</span>,</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;);</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;<span class="comment">// MTAStat.cpp</span></div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#aaa27474452c68545e883d02a334cab70">Options::AllPairMHP</a>(</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <span class="stringliteral">&quot;all-pair-mhp&quot;</span>,</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; <span class="stringliteral">&quot;All pair MHP computation&quot;</span>,</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160;);</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160;</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160;</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160;<span class="comment">// PCG.cpp</span></div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160;<span class="comment">//const Option&lt;bool&gt; TDPrint(</span></div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160;<span class="comment">// &quot;print-td&quot;,</span></div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160;<span class="comment">// &quot;Print Thread Analysis Results&quot;,</span></div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160;<span class="comment">// true</span></div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160;<span class="comment">//);</span></div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160;</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160;</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160;<span class="comment">// TCT.cpp</span></div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#adceab9fa76c438b8e5e83dd6042523ce">Options::TCTDotGraph</a>(</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <span class="stringliteral">&quot;dump-tct&quot;</span>,</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; <span class="stringliteral">&quot;Dump dot graph of Call Graph&quot;</span>,</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160;);</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160;</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160;</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160;<span class="comment">// LeakChecker.cpp</span></div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#aceaa5cc22c7f362e4c4d66531ec27bf1">Options::ValidateTests</a>(</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; <span class="stringliteral">&quot;valid-tests&quot;</span>,</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; <span class="stringliteral">&quot;Validate memory leak tests&quot;</span>,</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160;);</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160;</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160;</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160;<span class="comment">// Source-sink analyzer (SrcSnkDDA.cpp)</span></div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ab9443e23bdcb60f118a7aab835f974db">Options::DumpSlice</a>(</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; <span class="stringliteral">&quot;dump-slice&quot;</span>,</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; <span class="stringliteral">&quot;Dump dot graph of Saber Slices&quot;</span>,</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160;);</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#a3fd9cce83729bc62cd2fb568b0d53db5">Options::CxtLimit</a>(</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; <span class="stringliteral">&quot;cxt-limit&quot;</span>,</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="stringliteral">&quot;Source-Sink Analysis Contexts Limit&quot;</span>,</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; 3</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160;);</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160;</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160;</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160;<span class="comment">// CHG.cpp</span></div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#afcef86c88bb86198a3579aef82b5e270">Options::DumpCHA</a>(</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <span class="stringliteral">&quot;dump-cha&quot;</span>,</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; <span class="stringliteral">&quot;dump the class hierarchy graph&quot;</span>,</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160;);</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160;</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160;<span class="comment">// DCHG.cpp</span></div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#aab85f2c2ceb235b1291301f33154d182">Options::PrintDCHG</a>(</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; <span class="stringliteral">&quot;print-dchg&quot;</span>,</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="stringliteral">&quot;print the DCHG if debug information is available&quot;</span>,</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;);</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160;</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160;</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160;<span class="comment">// LLVMModule.cpp</span></div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1Options.html#a53f783c80f368bcdca6c7620229d6f8e">Options::Graphtxt</a>(</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <span class="stringliteral">&quot;graph-txt&quot;</span>,</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <span class="stringliteral">&quot;graph txt file to build SVFIR&quot;</span>,</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; <span class="stringliteral">&quot;&quot;</span></div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160;);</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160;</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a3a718b0a27c2d13878c0718af97ad73d">Options::SVFMain</a>(</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; <span class="stringliteral">&quot;svf-main&quot;</span>,</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; <span class="stringliteral">&quot;add svf.main()&quot;</span>,</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160;);</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160;</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a18dd95e01a50aa82165c46a3801053c5">Options::ModelConsts</a>(</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; <span class="stringliteral">&quot;model-consts&quot;</span>,</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; <span class="stringliteral">&quot;Modeling individual constant objects&quot;</span>,</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160;);</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160;</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a429c3000ee2ac45119b8c241aa06762c">Options::ModelArrays</a>(</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; <span class="stringliteral">&quot;model-arrays&quot;</span>,</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <span class="stringliteral">&quot;Modeling Gep offsets for array accesses&quot;</span>,</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;);</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160;</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a52c06ea1c5dd347079f192f0cba3dcd3">Options::SymTabPrint</a>(</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; <span class="stringliteral">&quot;print-symbol-table&quot;</span>,</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; <span class="stringliteral">&quot;Print Symbol Table to command line&quot;</span>,</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160;);</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160;</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160;</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160;</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160;<span class="comment">// Conditions.cpp</span></div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#a86f982d9716181bca93a350b5a11a1dc">Options::MaxZ3Size</a>(</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; <span class="stringliteral">&quot;max-z3-size&quot;</span>,</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="stringliteral">&quot;Maximum size limit for Z3 expression&quot;</span>,</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; 30</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;);</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160;</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160;<span class="comment">// SaberCondAllocator.cpp</span></div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a61986f02577051d98962c6680ac7c4f9">Options::PrintPathCond</a>(</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; <span class="stringliteral">&quot;print-pc&quot;</span>,</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; <span class="stringliteral">&quot;Print out path condition&quot;</span>,</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;);</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160;</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160;<span class="comment">// SVFUtil.cpp</span></div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a1721ff576ad641d862f29b038f31db28">Options::DisableWarn</a>(</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; <span class="stringliteral">&quot;dwarn&quot;</span>,</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; <span class="stringliteral">&quot;Disable warning&quot;</span>,</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160;);</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160;</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160;<span class="comment">// Andersen.cpp</span></div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ad80f77349205dac9e74aa41ea1ecbf95">Options::ConsCGDotGraph</a>(</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <span class="stringliteral">&quot;dump-constraint-graph&quot;</span>,</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <span class="stringliteral">&quot;Dump dot graph of Constraint Graph&quot;</span>,</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160;);</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160;</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a25a3db9daa81a127a8dad86888adea6c">Options::BriefConsCGDotGraph</a>(</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; <span class="stringliteral">&quot;brief-constraint-graph&quot;</span>,</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <span class="stringliteral">&quot;Dump dot graph of Constraint Graph&quot;</span>,</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160;);</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160;</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a9e5f361015b558d3d4e7e033868f9c83">Options::PrintCGGraph</a>(</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; <span class="stringliteral">&quot;print-constraint-graph&quot;</span>,</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; <span class="stringliteral">&quot;Print Constraint Graph to Terminal&quot;</span>,</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160;);</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160;</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1Options.html#aabeb232a46547fd35ddc96244fdaf1b9">Options::WriteAnder</a>(</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; <span class="stringliteral">&quot;write-ander&quot;</span>,</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <span class="stringliteral">&quot;-write-ander=ir_annotator (Annotated IR with Andersen&#39;s results) or write Andersen&#39;s analysis results to a user-specified text file&quot;</span>,</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; <span class="stringliteral">&quot;&quot;</span></div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;);</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160;</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1Options.html#a453571cd0205f14ead205b3a54477475">Options::ReadAnder</a>(</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; <span class="stringliteral">&quot;read-ander&quot;</span>,</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <span class="stringliteral">&quot;-read-ander=ir_annotator (Read Andersen&#39;s analysis results from the annotated IR, e.g., *.pre.bc) or from a text file&quot;</span>,</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; <span class="stringliteral">&quot;&quot;</span></div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;);</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160;</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ae782f25eaee9ac363c733b6ac609fbce">Options::DiffPts</a>(</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; <span class="stringliteral">&quot;diff&quot;</span>,</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <span class="stringliteral">&quot;Enable differential point-to set&quot;</span>,</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160;</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160;<a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a3fc22d0a45be551110d1e326380f3202">Options::DetectPWC</a>(</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; <span class="stringliteral">&quot;merge-pwc&quot;</span>,</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; <span class="stringliteral">&quot;Enable PWC detection&quot;</span>,</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160;);</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160;</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160;<span class="comment">//SVFIRBuilder.cpp</span></div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a88bb706e03a3dd04546b4ce62af7b140">Options::VtableInSVFIR</a>(</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <span class="stringliteral">&quot;vt-in-ir&quot;</span>,</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <span class="stringliteral">&quot;Handle vtable in ConstantArray/ConstantStruct in SVFIRBuilder (already handled in CHA?)&quot;</span>,</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160;);</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160;</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160;</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;<span class="comment">//WPAPass.cpp</span></div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#aea9e5e0cc5de48f3b959fa25d6ef5e1f">Options::AnderSVFG</a>(</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; <span class="stringliteral">&quot;svfg&quot;</span>,</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; <span class="stringliteral">&quot;Generate SVFG after Andersen&#39;s Analysis&quot;</span>,</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160;);</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160;</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a93970b0b5e0a6148a86ab192a812f34b">Options::SABERFULLSVFG</a>(</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; <span class="stringliteral">&quot;saber-full-svfg&quot;</span>,</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; <span class="stringliteral">&quot;When using SABER for bug detection pass, enable full svfg on top of the pointer-only one&quot;</span>,</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160;);</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160;</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#ac5b56390226cbed64c8fbd8ab8dee671">Options::PrintAliases</a>(</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; <span class="stringliteral">&quot;print-aliases&quot;</span>,</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; <span class="stringliteral">&quot;Print results for all pair aliases&quot;</span>,</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160;);</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160;</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160;<a class="code" href="classOptionMultiple.html">OptionMultiple&lt;PointerAnalysis::PTATY&gt;</a> <a class="code" href="classSVF_1_1Options.html#a4837cf00e58d0b561f420f4b3b533ebd">Options::PASelected</a>(</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; <span class="stringliteral">&quot;Select pointer analysis&quot;</span>,</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160;{</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; {<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6">PointerAnalysis::Andersen_WPA</a>, <span class="stringliteral">&quot;nander&quot;</span>, <span class="stringliteral">&quot;Standard inclusion-based analysis&quot;</span>},</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; {<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1">PointerAnalysis::AndersenSCD_WPA</a>, <span class="stringliteral">&quot;sander&quot;</span>, <span class="stringliteral">&quot;Selective cycle detection inclusion-based analysis&quot;</span>},</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; {<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b">PointerAnalysis::AndersenSFR_WPA</a>, <span class="stringliteral">&quot;sfrander&quot;</span>, <span class="stringliteral">&quot;Stride-based field representation includion-based analysis&quot;</span>},</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; {<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2">PointerAnalysis::AndersenWaveDiff_WPA</a>, <span class="stringliteral">&quot;ander&quot;</span>, <span class="stringliteral">&quot;Diff wave propagation inclusion-based analysis&quot;</span>},</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; {<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a">PointerAnalysis::Steensgaard_WPA</a>, <span class="stringliteral">&quot;steens&quot;</span>, <span class="stringliteral">&quot;Steensgaard&#39;s pointer analysis&quot;</span>},</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; <span class="comment">// Disabled till further work is done.</span></div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; {<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78">PointerAnalysis::FSSPARSE_WPA</a>, <span class="stringliteral">&quot;fspta&quot;</span>, <span class="stringliteral">&quot;Sparse flow sensitive pointer analysis&quot;</span>},</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; {<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9">PointerAnalysis::VFS_WPA</a>, <span class="stringliteral">&quot;vfspta&quot;</span>, <span class="stringliteral">&quot;Versioned sparse flow-sensitive points-to analysis&quot;</span>},</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; {<a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3">PointerAnalysis::TypeCPP_WPA</a>, <span class="stringliteral">&quot;type&quot;</span>, <span class="stringliteral">&quot;Type-based fast analysis for Callgraph, SVFIR and CHA&quot;</span>},</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160;}</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160;);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160;</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160;</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160;<a class="code" href="classOptionMultiple.html">OptionMultiple&lt;WPAPass::AliasCheckRule&gt;</a> <a class="code" href="classSVF_1_1Options.html#a2960fcb679f8dfee7d8822fcf9609f4a">Options::AliasRule</a>(</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; <span class="stringliteral">&quot;Select alias check rule&quot;</span>,</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160;{</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; {<a class="code" href="classSVF_1_1WPAPass.html#a4505a1882956feda3cf83c788149394da498ba80d25733b291f391a94500dd4c7">WPAPass::Conservative</a>, <span class="stringliteral">&quot;conservative&quot;</span>, <span class="stringliteral">&quot;return MayAlias if any pta says alias&quot;</span>},</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; {<a class="code" href="classSVF_1_1WPAPass.html#a4505a1882956feda3cf83c788149394dabb45a604558e2ebff460adb77b4a5d7c">WPAPass::Veto</a>, <span class="stringliteral">&quot;veto&quot;</span>, <span class="stringliteral">&quot;return NoAlias if any pta says no alias&quot;</span>},</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160;}</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160;);</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160;</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#adee65a3773fbb98532538c938230e1d3">Options::ShowHiddenNode</a>(</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <span class="stringliteral">&quot;show-hidden-nodes&quot;</span>,</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; <span class="stringliteral">&quot;Show hidden nodes on DOT Graphs (e.g., isolated node on a graph)&quot;</span>,</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160;);</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160;</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1Options.html#ad09017ae2e1010fbba5c086a4772750f">Options::GrammarFilename</a>(</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; <span class="stringliteral">&quot;grammar&quot;</span>,</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; <span class="stringliteral">&quot;&lt;Grammar textfile&gt;&quot;</span>,</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; <span class="stringliteral">&quot;&quot;</span></div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160;);</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160;</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1Options.html#a81dbd12b5141c4a2758d6f2d3321f1ac">Options::CFLGraph</a>(</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; <span class="stringliteral">&quot;cflgraph&quot;</span>,</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; <span class="stringliteral">&quot;&lt;Dot file as the CFLGraph input&gt;&quot;</span>,</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; <span class="stringliteral">&quot;&quot;</span></div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160;);</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160;</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a9ff12bf51a475c90c35e3351c5501f0f">Options::PrintCFL</a>(</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; <span class="stringliteral">&quot;print-cfl&quot;</span>,</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; <span class="stringliteral">&quot;Print ir, grammar and cflgraph for debug.&quot;</span>,</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160;);</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160;</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a8e22c3bca5ee0e4e7d90e857a5ea8031">Options::FlexSymMap</a>(</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; <span class="stringliteral">&quot;flex-symmap&quot;</span>,</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; <span class="stringliteral">&quot;Extend exist sym map while read graph from dot if sym not in map.&quot;</span>,</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160;);</div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160;</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a4854dd8b167e468e698606254b31bf26">Options::PEGTransfer</a>(</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; <span class="stringliteral">&quot;peg-transfer&quot;</span>,</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; <span class="stringliteral">&quot;When explicit to true, cfl graph builder will transfer PAG load and store edges to copy and addr.&quot;</span>,</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160;);</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#a7ef3e2cd417646e9d06e0da16ff6c516">Options::CFLSVFG</a>(</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; <span class="stringliteral">&quot;cflsvfg&quot;</span>,</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; <span class="stringliteral">&quot;When explicit to true, cfl graph builder will transfer SVFG to CFL Reachability.&quot;</span>,</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; <span class="keyword">false</span></div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160;);</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160;</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160;</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;bool&gt;</a> <a class="code" href="classSVF_1_1Options.html#abfd13c7d998333290b39354178739f2c">Options::LoopAnalysis</a>(</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; <span class="stringliteral">&quot;loop-analysis&quot;</span>,</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; <span class="stringliteral">&quot;Analyze every func and get loop info and loop bounds.&quot;</span>,</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; <span class="keyword">true</span></div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160;);</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160;</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160;<span class="keyword">const</span> <a class="code" href="classOption.html">Option&lt;u32_t&gt;</a> <a class="code" href="classSVF_1_1Options.html#a17f11eb3e9a3178395e8574a027b181e">Options::LoopBound</a>(</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; <span class="stringliteral">&quot;loop-bound&quot;</span>,</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; <span class="stringliteral">&quot;Maximum number of loop&quot;</span>,</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; 1</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160;);</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160;</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160;} <span class="comment">// namespace SVF.</span></div><div class="ttc" id="classSVF_1_1Options_html_a0bb4bfd677e2e45cc8c24bfc190edfaa"><div class="ttname"><a href="classSVF_1_1Options.html#a0bb4bfd677e2e45cc8c24bfc190edfaa">SVF::Options::DumpMSSA</a></div><div class="ttdeci">static const Option&lt; bool &gt; DumpMSSA</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00152">Options.h:152</a></div></div>
70
+ <div class="ttc" id="classSVF_1_1Options_html_aabeb232a46547fd35ddc96244fdaf1b9"><div class="ttname"><a href="classSVF_1_1Options.html#aabeb232a46547fd35ddc96244fdaf1b9">SVF::Options::WriteAnder</a></div><div class="ttdeci">static const Option&lt; std::string &gt; WriteAnder</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00234">Options.h:234</a></div></div>
71
+ <div class="ttc" id="classSVF_1_1Options_html_ae782f25eaee9ac363c733b6ac609fbce"><div class="ttname"><a href="classSVF_1_1Options.html#ae782f25eaee9ac363c733b6ac609fbce">SVF::Options::DiffPts</a></div><div class="ttdeci">static const Option&lt; bool &gt; DiffPts</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00237">Options.h:237</a></div></div>
72
+ <div class="ttc" id="classSVF_1_1Options_html_a18dd95e01a50aa82165c46a3801053c5"><div class="ttname"><a href="classSVF_1_1Options.html#a18dd95e01a50aa82165c46a3801053c5">SVF::Options::ModelConsts</a></div><div class="ttdeci">static const Option&lt; bool &gt; ModelConsts</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00216">Options.h:216</a></div></div>
73
+ <div class="ttc" id="classOption_html"><div class="ttname"><a href="classOption.html">Option&lt; bool &gt;</a></div></div>
74
+ <div class="ttc" id="classSVF_1_1Options_html_a38107576f4f242191cdbfb1ca51f93cd"><div class="ttname"><a href="classSVF_1_1Options.html#a38107576f4f242191cdbfb1ca51f93cd">SVF::Options::NodeAllocStrat</a></div><div class="ttdeci">static const OptionMap&lt; SVF::NodeIDAllocator::Strategy &gt; NodeAllocStrat</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00035">Options.h:35</a></div></div>
75
+ <div class="ttc" id="classSVF_1_1Options_html_a5d14e81336dbfefa14146bf610989e6b"><div class="ttname"><a href="classSVF_1_1Options.html#a5d14e81336dbfefa14146bf610989e6b">SVF::Options::UserInputQuery</a></div><div class="ttdeci">static const Option&lt; std::string &gt; UserInputQuery</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00098">Options.h:98</a></div></div>
76
+ <div class="ttc" id="classSVF_1_1Options_html_a1c6e39ebc266c754de4d78a31cc021ba"><div class="ttname"><a href="classSVF_1_1Options.html#a1c6e39ebc266c754de4d78a31cc021ba">SVF::Options::PrintInterLev</a></div><div class="ttdeci">static const Option&lt; bool &gt; PrintInterLev</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00174">Options.h:174</a></div></div>
77
+ <div class="ttc" id="classSVF_1_1Options_html_a00f3c4c53e6ade73f7667231c394c5d7"><div class="ttname"><a href="classSVF_1_1Options.html#a00f3c4c53e6ade73f7667231c394c5d7">SVF::Options::IgnoreDeadFun</a></div><div class="ttdeci">static const Option&lt; bool &gt; IgnoreDeadFun</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00149">Options.h:149</a></div></div>
78
+ <div class="ttc" id="classSVF_1_1Options_html_a742a42d855c5b96fb7c70a2d0ab64021"><div class="ttname"><a href="classSVF_1_1Options.html#a742a42d855c5b96fb7c70a2d0ab64021">SVF::Options::UsePreCompFieldSensitive</a></div><div class="ttdeci">static const Option&lt; bool &gt; UsePreCompFieldSensitive</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00140">Options.h:140</a></div></div>
79
+ <div class="ttc" id="classSVF_1_1Options_html_a1dd9ad3f11454be49b4c5099503db8e8"><div class="ttname"><a href="classSVF_1_1Options.html#a1dd9ad3f11454be49b4c5099503db8e8">SVF::Options::PAGDotGraph</a></div><div class="ttdeci">static const Option&lt; bool &gt; PAGDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00134">Options.h:134</a></div></div>
80
+ <div class="ttc" id="classSVF_1_1Options_html_abcb6796d45722562546f33b2745a0418"><div class="ttname"><a href="classSVF_1_1Options.html#abcb6796d45722562546f33b2745a0418">SVF::Options::MarkedClocksOnly</a></div><div class="ttdeci">static const Option&lt; bool &gt; MarkedClocksOnly</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00031">Options.h:31</a></div></div>
81
+ <div class="ttc" id="classSVF_1_1Options_html_a1721ff576ad641d862f29b038f31db28"><div class="ttname"><a href="classSVF_1_1Options.html#a1721ff576ad641d862f29b038f31db28">SVF::Options::DisableWarn</a></div><div class="ttdeci">static const Option&lt; bool &gt; DisableWarn</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00227">Options.h:227</a></div></div>
82
+ <div class="ttc" id="classSVF_1_1Options_html_ae639e80aa18a56bd1c6bcf41ce281930"><div class="ttname"><a href="classSVF_1_1Options.html#ae639e80aa18a56bd1c6bcf41ce281930">SVF::Options::AndersenAnno</a></div><div class="ttdeci">static const Option&lt; bool &gt; AndersenAnno</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00178">Options.h:178</a></div></div>
83
+ <div class="ttc" id="classSVF_1_1Options_html_a4f022e2f997d25ec50842b4248147336"><div class="ttname"><a href="classSVF_1_1Options.html#a4f022e2f997d25ec50842b4248147336">SVF::Options::FSAnno</a></div><div class="ttdeci">static const Option&lt; bool &gt; FSAnno</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00179">Options.h:179</a></div></div>
84
+ <div class="ttc" id="classSVF_1_1Options_html_abb91435e1e06b07548c539e7f7761563"><div class="ttname"><a href="classSVF_1_1Options.html#abb91435e1e06b07548c539e7f7761563">SVF::Options::FuncPointerPrint</a></div><div class="ttdeci">static const Option&lt; bool &gt; FuncPointerPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00129">Options.h:129</a></div></div>
85
+ <div class="ttc" id="classSVF_1_1Options_html_a4854dd8b167e468e698606254b31bf26"><div class="ttname"><a href="classSVF_1_1Options.html#a4854dd8b167e468e698606254b31bf26">SVF::Options::PEGTransfer</a></div><div class="ttdeci">static const Option&lt; bool &gt; PEGTransfer</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00256">Options.h:256</a></div></div>
86
+ <div class="ttc" id="classSVF_1_1Options_html_a853caba808dc7d17cba4ad4214b56b6f"><div class="ttname"><a href="classSVF_1_1Options.html#a853caba808dc7d17cba4ad4214b56b6f">SVF::Options::ClusterFs</a></div><div class="ttdeci">static const Option&lt; bool &gt; ClusterFs</div><div class="ttdoc">Whether to cluster FS or VFS with the auxiliary Andersen&amp;#39;s. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00044">Options.h:44</a></div></div>
87
+ <div class="ttc" id="classSVF_1_1Options_html_ac9d18f2d6853f45548f4f85fa2f661c4"><div class="ttname"><a href="classSVF_1_1Options.html#ac9d18f2d6853f45548f4f85fa2f661c4">SVF::Options::PStat</a></div><div class="ttdeci">static const Option&lt; bool &gt; PStat</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00132">Options.h:132</a></div></div>
88
+ <div class="ttc" id="classSVF_1_1Options_html_a81dbd12b5141c4a2758d6f2d3321f1ac"><div class="ttname"><a href="classSVF_1_1Options.html#a81dbd12b5141c4a2758d6f2d3321f1ac">SVF::Options::CFLGraph</a></div><div class="ttdeci">static const Option&lt; std::string &gt; CFLGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00253">Options.h:253</a></div></div>
89
+ <div class="ttc" id="classSVF_1_1Options_html_a8c02af98e908c48cef1de0085ed10ce4"><div class="ttname"><a href="classSVF_1_1Options.html#a8c02af98e908c48cef1de0085ed10ce4">SVF::Options::FlowBudget</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; FlowBudget</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00107">Options.h:107</a></div></div>
90
+ <div class="ttc" id="classSVF_1_1Options_html_a5a70a23e30df8dea3fcaf0e80479fe88"><div class="ttname"><a href="classSVF_1_1Options.html#a5a70a23e30df8dea3fcaf0e80479fe88">SVF::Options::RegionAlign</a></div><div class="ttdeci">static const Option&lt; bool &gt; RegionAlign</div><div class="ttdoc">Align identifiers in each region to a word. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00062">Options.h:62</a></div></div>
91
+ <div class="ttc" id="classSVF_1_1Options_html_a5fe0e29e325a6d53ccf16f8fe725821e"><div class="ttname"><a href="classSVF_1_1Options.html#a5fe0e29e325a6d53ccf16f8fe725821e">SVF::Options::SingleLoad</a></div><div class="ttdeci">static const Option&lt; bool &gt; SingleLoad</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00084">Options.h:84</a></div></div>
92
+ <div class="ttc" id="classSVF_1_1Options_html_a06eea18ba4cdf509255126a9b58e8eb0"><div class="ttname"><a href="classSVF_1_1Options.html#a06eea18ba4cdf509255126a9b58e8eb0">SVF::Options::SVFGWithIndirectCall</a></div><div class="ttdeci">static const Option&lt; bool &gt; SVFGWithIndirectCall</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00158">Options.h:158</a></div></div>
93
+ <div class="ttc" id="classSVF_1_1Options_html_a9711cdc976786b3949ac6b26f95b59b0"><div class="ttname"><a href="classSVF_1_1Options.html#a9711cdc976786b3949ac6b26f95b59b0">SVF::Options::MallocOnly</a></div><div class="ttdeci">static const Option&lt; bool &gt; MallocOnly</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00090">Options.h:90</a></div></div>
94
+ <div class="ttc" id="classSVF_1_1Options_html_a3bbd106de519cb8d00f33e82f14d279b"><div class="ttname"><a href="classSVF_1_1Options.html#a3bbd106de519cb8d00f33e82f14d279b">SVF::Options::CxtBudget</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; CxtBudget</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00081">Options.h:81</a></div></div>
95
+ <div class="ttc" id="classSVF_1_1Options_html_a6d45d7ba6852a986b53b31f60f967b01"><div class="ttname"><a href="classSVF_1_1Options.html#a6d45d7ba6852a986b53b31f60f967b01">SVF::Options::DumpSUPts</a></div><div class="ttdeci">static const Option&lt; bool &gt; DumpSUPts</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00088">Options.h:88</a></div></div>
96
+ <div class="ttc" id="classSVF_1_1Options_html_a46743284466ff803f52a82b094186d16"><div class="ttname"><a href="classSVF_1_1Options.html#a46743284466ff803f52a82b094186d16">SVF::Options::ClusterAnder</a></div><div class="ttdeci">static const Option&lt; bool &gt; ClusterAnder</div><div class="ttdoc">Whether to stage Andersen&amp;#39;s with Steensgaard and cluster based on that data. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00041">Options.h:41</a></div></div>
97
+ <div class="ttc" id="classSVF_1_1Options_html_ab64401bdde8b0c846a78f21423e5cfb6"><div class="ttname"><a href="classSVF_1_1Options.html#ab64401bdde8b0c846a78f21423e5cfb6">SVF::Options::DumpSUStore</a></div><div class="ttdeci">static const Option&lt; bool &gt; DumpSUStore</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00089">Options.h:89</a></div></div>
98
+ <div class="ttc" id="classSVF_1_1Options_html_aceaa5cc22c7f362e4c4d66531ec27bf1"><div class="ttname"><a href="classSVF_1_1Options.html#aceaa5cc22c7f362e4c4d66531ec27bf1">SVF::Options::ValidateTests</a></div><div class="ttdeci">static const Option&lt; bool &gt; ValidateTests</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00198">Options.h:198</a></div></div>
99
+ <div class="ttc" id="classSVF_1_1Options_html_ab8075fe929f99b640d5c0a0530297025"><div class="ttname"><a href="classSVF_1_1Options.html#ab8075fe929f99b640d5c0a0530297025">SVF::Options::DumpUninitVar</a></div><div class="ttdeci">static const Option&lt; bool &gt; DumpUninitVar</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00086">Options.h:86</a></div></div>
100
+ <div class="ttc" id="classSVF_1_1Options_html_aea9e5e0cc5de48f3b959fa25d6ef5e1f"><div class="ttname"><a href="classSVF_1_1Options.html#aea9e5e0cc5de48f3b959fa25d6ef5e1f">SVF::Options::AnderSVFG</a></div><div class="ttdeci">static const Option&lt; bool &gt; AnderSVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00242">Options.h:242</a></div></div>
101
+ <div class="ttc" id="classSVF_1_1Options_html_a63121666a96f6cd2ae56d868c9576a53"><div class="ttname"><a href="classSVF_1_1Options.html#a63121666a96f6cd2ae56d868c9576a53">SVF::Options::MaxPathLen</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; MaxPathLen</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00095">Options.h:95</a></div></div>
102
+ <div class="ttc" id="classSVF_1_1Options_html_afcef86c88bb86198a3579aef82b5e270"><div class="ttname"><a href="classSVF_1_1Options.html#afcef86c88bb86198a3579aef82b5e270">SVF::Options::DumpCHA</a></div><div class="ttdeci">static const Option&lt; bool &gt; DumpCHA</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00205">Options.h:205</a></div></div>
103
+ <div class="ttc" id="classSVF_1_1Options_html_a9ef14f68939b7678ddff83d544e024cc"><div class="ttname"><a href="classSVF_1_1Options.html#a9ef14f68939b7678ddff83d544e024cc">SVF::Options::SelfCycle</a></div><div class="ttdeci">static const Option&lt; std::string &gt; SelfCycle</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00119">Options.h:119</a></div></div>
104
+ <div class="ttc" id="classSVF_1_1Options_html_a3b6146824333f0da957d37b199978916"><div class="ttname"><a href="classSVF_1_1Options.html#a3b6146824333f0da957d37b199978916">SVF::Options::ReadPrecisionTDEdge</a></div><div class="ttdeci">static const Option&lt; bool &gt; ReadPrecisionTDEdge</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00167">Options.h:167</a></div></div>
105
+ <div class="ttc" id="classSVF_1_1Options_html_a595a98babd7d51af6dacd935bd27d1f0"><div class="ttname"><a href="classSVF_1_1Options.html#a595a98babd7d51af6dacd935bd27d1f0">SVF::Options::PtType</a></div><div class="ttdeci">static const OptionMap&lt; PointsTo::Type &gt; PtType</div><div class="ttdoc">Type of points-to set to use for all analyses. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00050">Options.h:50</a></div></div>
106
+ <div class="ttc" id="classSVF_1_1Options_html_a25a3db9daa81a127a8dad86888adea6c"><div class="ttname"><a href="classSVF_1_1Options.html#a25a3db9daa81a127a8dad86888adea6c">SVF::Options::BriefConsCGDotGraph</a></div><div class="ttdeci">static const Option&lt; bool &gt; BriefConsCGDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00231">Options.h:231</a></div></div>
107
+ <div class="ttc" id="classSVF_1_1Options_html_aaab923c093730b1670a54f09340b1bd5"><div class="ttname"><a href="classSVF_1_1Options.html#aaab923c093730b1670a54f09340b1bd5">SVF::Options::MaxFieldLimit</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; MaxFieldLimit</div><div class="ttdoc">Maximum number of field derivations for an object. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00038">Options.h:38</a></div></div>
108
+ <div class="ttc" id="classSVF_1_1Options_html_adee65a3773fbb98532538c938230e1d3"><div class="ttname"><a href="classSVF_1_1Options.html#adee65a3773fbb98532538c938230e1d3">SVF::Options::ShowHiddenNode</a></div><div class="ttdeci">static const Option&lt; bool &gt; ShowHiddenNode</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00249">Options.h:249</a></div></div>
112
109
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9">SVF::PointerAnalysis::VFS_WPA</a></div><div class="ttdoc">Versioned sparse flow-sensitive WPA. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00076">PointerAnalysis.h:76</a></div></div>
113
- <div class="ttc" id="classSVF_1_1Options_html_a0b82f16ee0c7e6566a6ae20662525e84"><div class="ttname"><a href="classSVF_1_1Options.html#a0b82f16ee0c7e6566a6ae20662525e84">SVF::Options::MaxStepInWrapper</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; MaxStepInWrapper</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00097">Options.h:97</a></div></div>
114
110
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8">SVF::PointerAnalysis::Cxt_DDA</a></div><div class="ttdoc">context sensitive DDA </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00087">PointerAnalysis.h:87</a></div></div>
115
111
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a">SVF::PointerAnalysis::Steensgaard_WPA</a></div><div class="ttdoc">Steensgaard PTA. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00071">PointerAnalysis.h:71</a></div></div>
116
- <div class="ttc" id="classSVF_1_1Options_html_a2203f622ab539b3a38488575c9eec33b"><div class="ttname"><a href="classSVF_1_1Options.html#a2203f622ab539b3a38488575c9eec33b">SVF::Options::DDASelected</a></div><div class="ttdeci">static llvm::cl::bits&lt; PointerAnalysis::PTATY &gt; DDASelected</div><div class="ttdoc">register this into alias analysis group </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00104">Options.h:104</a></div></div>
117
- <div class="ttc" id="classSVF_1_1Options_html_adec2012e10130f664fe0ea3acf39f78b"><div class="ttname"><a href="classSVF_1_1Options.html#adec2012e10130f664fe0ea3acf39f78b">SVF::Options::ShowHiddenNode</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ShowHiddenNode</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00249">Options.h:249</a></div></div>
118
- <div class="ttc" id="classSVF_1_1Options_html_aa1d9db53dbb6e1364662a8297a744bbc"><div class="ttname"><a href="classSVF_1_1Options.html#aa1d9db53dbb6e1364662a8297a744bbc">SVF::Options::TaintUninitStack</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; TaintUninitStack</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00092">Options.h:92</a></div></div>
119
- <div class="ttc" id="classSVF_1_1Options_html_a88550ed8c4ec2ccc5d5e40869499787b"><div class="ttname"><a href="classSVF_1_1Options.html#a88550ed8c4ec2ccc5d5e40869499787b">SVF::Options::RegionAlign</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; RegionAlign</div><div class="ttdoc">Align identifiers in each region to a word. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00062">Options.h:62</a></div></div>
112
+ <div class="ttc" id="classSVF_1_1Options_html_aed7bdea17fad08ceb0453b23f2f908bb"><div class="ttname"><a href="classSVF_1_1Options.html#aed7bdea17fad08ceb0453b23f2f908bb">SVF::Options::PredictPtOcc</a></div><div class="ttdeci">static const Option&lt; bool &gt; PredictPtOcc</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00066">Options.h:66</a></div></div>
113
+ <div class="ttc" id="classSVF_1_1Options_html_a88bb706e03a3dd04546b4ce62af7b140"><div class="ttname"><a href="classSVF_1_1Options.html#a88bb706e03a3dd04546b4ce62af7b140">SVF::Options::VtableInSVFIR</a></div><div class="ttdeci">static const Option&lt; bool &gt; VtableInSVFIR</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00239">Options.h:239</a></div></div>
114
+ <div class="ttc" id="classSVF_1_1Options_html_a61986f02577051d98962c6680ac7c4f9"><div class="ttname"><a href="classSVF_1_1Options.html#a61986f02577051d98962c6680ac7c4f9">SVF::Options::PrintPathCond</a></div><div class="ttdeci">static const Option&lt; bool &gt; PrintPathCond</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00224">Options.h:224</a></div></div>
115
+ <div class="ttc" id="classSVF_1_1Options_html_aaa7ca76c841dd19d67796d09c94a9746"><div class="ttname"><a href="classSVF_1_1Options.html#aaa7ca76c841dd19d67796d09c94a9746">SVF::Options::UsePCG</a></div><div class="ttdeci">static const Option&lt; bool &gt; UsePCG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00165">Options.h:165</a></div></div>
116
+ <div class="ttc" id="classSVF_1_1Options_html_afd31760e868bfa4d15e434e21fe4d665"><div class="ttname"><a href="classSVF_1_1Options.html#afd31760e868bfa4d15e434e21fe4d665">SVF::Options::VersioningThreads</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; VersioningThreads</div><div class="ttdoc">Number of threads for the versioning phase. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00078">Options.h:78</a></div></div>
117
+ <div class="ttc" id="classSVF_1_1Options_html_a8e22c3bca5ee0e4e7d90e857a5ea8031"><div class="ttname"><a href="classSVF_1_1Options.html#a8e22c3bca5ee0e4e7d90e857a5ea8031">SVF::Options::FlexSymMap</a></div><div class="ttdeci">static const Option&lt; bool &gt; FlexSymMap</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00255">Options.h:255</a></div></div>
118
+ <div class="ttc" id="classSVF_1_1Options_html_a1743b8a1ab2d71c35206c7befa725d90"><div class="ttname"><a href="classSVF_1_1Options.html#a1743b8a1ab2d71c35206c7befa725d90">SVF::Options::INCDFPTData</a></div><div class="ttdeci">static const Option&lt; bool &gt; INCDFPTData</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00146">Options.h:146</a></div></div>
120
119
  <div class="ttc" id="fastcluster_8h_html_a4205a14ad66b3320d2e94c61d74913dda44ce22fdfc560f27242e9b8f8e7009f4"><div class="ttname"><a href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda44ce22fdfc560f27242e9b8f8e7009f4">HCLUST_METHOD_COMPLETE</a></div><div class="ttdef"><b>Definition:</b> <a href="fastcluster_8h_source.html#l00070">fastcluster.h:70</a></div></div>
121
- <div class="ttc" id="classSVF_1_1Options_html_a69a7d0431c0ddfefed1cb97f3571303a"><div class="ttname"><a href="classSVF_1_1Options.html#a69a7d0431c0ddfefed1cb97f3571303a">SVF::Options::ConsCGDotGraph</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ConsCGDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00230">Options.h:230</a></div></div>
122
- <div class="ttc" id="classSVF_1_1Options_html_a21cbaab292e9f5bd39109f774fcc88d4"><div class="ttname"><a href="classSVF_1_1Options.html#a21cbaab292e9f5bd39109f774fcc88d4">SVF::Options::CxtLimit</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; CxtLimit</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00202">Options.h:202</a></div></div>
123
- <div class="ttc" id="classSVF_1_1Options_html_ace1f2368a0a466f98c9e53def47db3ab"><div class="ttname"><a href="classSVF_1_1Options.html#ace1f2368a0a466f98c9e53def47db3ab">SVF::Options::DumpSlice</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpSlice</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00201">Options.h:201</a></div></div>
124
- <div class="ttc" id="classSVF_1_1Options_html_a1211da4c36f1fcc65235891f31d87038"><div class="ttname"><a href="classSVF_1_1Options.html#a1211da4c36f1fcc65235891f31d87038">SVF::Options::PASelected</a></div><div class="ttdeci">static llvm::cl::bits&lt; PointerAnalysis::PTATY &gt; PASelected</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00245">Options.h:245</a></div></div>
125
- <div class="ttc" id="classSVF_1_1Options_html_a5896e2aaf59305441a74ede0dfb85845"><div class="ttname"><a href="classSVF_1_1Options.html#a5896e2aaf59305441a74ede0dfb85845">SVF::Options::INCDFPTData</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; INCDFPTData</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00146">Options.h:146</a></div></div>
126
- <div class="ttc" id="classSVF_1_1Options_html_a1d299e736ee653759d340508fd30c6ab"><div class="ttname"><a href="classSVF_1_1Options.html#a1d299e736ee653759d340508fd30c6ab">SVF::Options::DetectPWC</a></div><div class="ttdeci">static llvm::cl::opt&lt; bool &gt; DetectPWC</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00238">Options.h:238</a></div></div>
127
- <div class="ttc" id="classSVF_1_1Options_html_a82370c2b8c9cd62b5767ceeaeeaa7177"><div class="ttname"><a href="classSVF_1_1Options.html#a82370c2b8c9cd62b5767ceeaeeaa7177">SVF::Options::BriefConsCGDotGraph</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; BriefConsCGDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00231">Options.h:231</a></div></div>
120
+ <div class="ttc" id="classSVF_1_1Options_html_a53f783c80f368bcdca6c7620229d6f8e"><div class="ttname"><a href="classSVF_1_1Options.html#a53f783c80f368bcdca6c7620229d6f8e">SVF::Options::Graphtxt</a></div><div class="ttdeci">static const Option&lt; std::string &gt; Graphtxt</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00211">Options.h:211</a></div></div>
121
+ <div class="ttc" id="classSVF_1_1Options_html_ab7741246d969021c9afc448b084699af"><div class="ttname"><a href="classSVF_1_1Options.html#ab7741246d969021c9afc448b084699af">SVF::Options::OPTSVFG</a></div><div class="ttdeci">static Option&lt; bool &gt; OPTSVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00159">Options.h:159</a></div></div>
122
+ <div class="ttc" id="classSVF_1_1Options_html_a03cd671379712e6b3fa8ac4ec9b4d1d4"><div class="ttname"><a href="classSVF_1_1Options.html#a03cd671379712e6b3fa8ac4ec9b4d1d4">SVF::Options::DumpFree</a></div><div class="ttdeci">static const Option&lt; bool &gt; DumpFree</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00085">Options.h:85</a></div></div>
123
+ <div class="ttc" id="classSVF_1_1Options_html_a1daf36a755523519187c3a8e9a19b58d"><div class="ttname"><a href="classSVF_1_1Options.html#a1daf36a755523519187c3a8e9a19b58d">SVF::Options::EnableThreadCallGraph</a></div><div class="ttdeci">static const Option&lt; bool &gt; EnableThreadCallGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00142">Options.h:142</a></div></div>
124
+ <div class="ttc" id="classSVF_1_1Options_html_a51b28b2e973911fb8e2c23c6127e9a63"><div class="ttname"><a href="classSVF_1_1Options.html#a51b28b2e973911fb8e2c23c6127e9a63">SVF::Options::HandBlackHole</a></div><div class="ttdeci">static Option&lt; bool &gt; HandBlackHole</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00113">Options.h:113</a></div></div>
125
+ <div class="ttc" id="classSVF_1_1Options_html_a0a998c2e1d701b2052985691babc4567"><div class="ttname"><a href="classSVF_1_1Options.html#a0a998c2e1d701b2052985691babc4567">SVF::Options::CallGraphDotGraph</a></div><div class="ttdeci">static const Option&lt; bool &gt; CallGraphDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00137">Options.h:137</a></div></div>
126
+ <div class="ttc" id="classSVF_1_1Options_html_a52c06ea1c5dd347079f192f0cba3dcd3"><div class="ttname"><a href="classSVF_1_1Options.html#a52c06ea1c5dd347079f192f0cba3dcd3">SVF::Options::SymTabPrint</a></div><div class="ttdeci">static const Option&lt; bool &gt; SymTabPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00218">Options.h:218</a></div></div>
127
+ <div class="ttc" id="classSVF_1_1Options_html_a12e88ce4ba3d39017203ec4cd3ccccea"><div class="ttname"><a href="classSVF_1_1Options.html#a12e88ce4ba3d39017203ec4cd3ccccea">SVF::Options::FirstFieldEqBase</a></div><div class="ttdeci">static const Option&lt; bool &gt; FirstFieldEqBase</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00114">Options.h:114</a></div></div>
128
+ <div class="ttc" id="CommandLine_8h_html"><div class="ttname"><a href="CommandLine_8h.html">CommandLine.h</a></div></div>
129
+ <div class="ttc" id="classSVF_1_1Options_html_aab0131558d9da9b0fe888387217ba919"><div class="ttname"><a href="classSVF_1_1Options.html#aab0131558d9da9b0fe888387217ba919">SVF::Options::MaxStepInWrapper</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; MaxStepInWrapper</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00097">Options.h:97</a></div></div>
128
130
  <div class="ttc" id="fastcluster_8h_html_a4205a14ad66b3320d2e94c61d74913dda66ab3fde95842ef6da0dae1f702a9618"><div class="ttname"><a href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda66ab3fde95842ef6da0dae1f702a9618">HCLUST_METHOD_SVF_BEST</a></div><div class="ttdef"><b>Definition:</b> <a href="fastcluster_8h_source.html#l00076">fastcluster.h:76</a></div></div>
129
- <div class="ttc" id="classSVF_1_1Options_html_aabfcfcd67df527cdf587aff5ecc26a10"><div class="ttname"><a href="classSVF_1_1Options.html#aabfcfcd67df527cdf587aff5ecc26a10">SVF::Options::PrintQueryPts</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PrintQueryPts</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00102">Options.h:102</a></div></div>
130
- <div class="ttc" id="classSVF_1_1Options_html_a40080aa0a7c926c6f2797e3d7856c03e"><div class="ttname"><a href="classSVF_1_1Options.html#a40080aa0a7c926c6f2797e3d7856c03e">SVF::Options::TaintUninitHeap</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; TaintUninitHeap</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00091">Options.h:91</a></div></div>
131
- <div class="ttc" id="classSVF_1_1Options_html_a982b4cd71ccafd07d94f10a0a2e953c2"><div class="ttname"><a href="classSVF_1_1Options.html#a982b4cd71ccafd07d94f10a0a2e953c2">SVF::Options::SVFGWithIndirectCall</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; SVFGWithIndirectCall</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00158">Options.h:158</a></div></div>
132
- <div class="ttc" id="classSVF_1_1Options_html_a30cbb0b3633c769c92f4625680ec17e3"><div class="ttname"><a href="classSVF_1_1Options.html#a30cbb0b3633c769c92f4625680ec17e3">SVF::Options::AnderSVFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; AnderSVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00242">Options.h:242</a></div></div>
133
- <div class="ttc" id="classSVF_1_1Options_html_a389c1868083100ad8ebfbf935a85a1e1"><div class="ttname"><a href="classSVF_1_1Options.html#a389c1868083100ad8ebfbf935a85a1e1">SVF::Options::MaxZ3Size</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; MaxZ3Size</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00221">Options.h:221</a></div></div>
134
- <div class="ttc" id="classSVF_1_1Options_html_a036b9eb8b265a8abd54680d45758e7c6"><div class="ttname"><a href="classSVF_1_1Options.html#a036b9eb8b265a8abd54680d45758e7c6">SVF::Options::DoLockAnalysis</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DoLockAnalysis</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00175">Options.h:175</a></div></div>
135
- <div class="ttc" id="classSVF_1_1Options_html_a1b1d1ad6b3a6c48a9fa07161b582c7fe"><div class="ttname"><a href="classSVF_1_1Options.html#a1b1d1ad6b3a6c48a9fa07161b582c7fe">SVF::Options::PrintAliases</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PrintAliases</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00244">Options.h:244</a></div></div>
136
- <div class="ttc" id="classSVF_1_1Options_html_ae444f90ff3b6a3cfec1c08e6ca6f263a"><div class="ttname"><a href="classSVF_1_1Options.html#ae444f90ff3b6a3cfec1c08e6ca6f263a">SVF::Options::FSAnno</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; FSAnno</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00179">Options.h:179</a></div></div>
137
- <div class="ttc" id="classSVF_1_1Options_html_a8e0538a7f2e3c5bece69bc69f7074819"><div class="ttname"><a href="classSVF_1_1Options.html#a8e0538a7f2e3c5bece69bc69f7074819">SVF::Options::ClusterMethod</a></div><div class="ttdeci">static const llvm::cl::opt&lt; enum hclust_fast_methods &gt; ClusterMethod</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00056">Options.h:56</a></div></div>
138
- <div class="ttc" id="classSVF_1_1Options_html_a87b63f1f8f4f65cdf6647f9f056ffc53"><div class="ttname"><a href="classSVF_1_1Options.html#a87b63f1f8f4f65cdf6647f9f056ffc53">SVF::Options::CFLGraph</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std::string &gt; CFLGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00253">Options.h:253</a></div></div>
139
- <div class="ttc" id="classSVF_1_1Options_html_aee5e47ee3ca9bacb514f9dfbcb3abf24"><div class="ttname"><a href="classSVF_1_1Options.html#aee5e47ee3ca9bacb514f9dfbcb3abf24">SVF::Options::PrintCPts</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PrintCPts</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00101">Options.h:101</a></div></div>
140
- <div class="ttc" id="classSVF_1_1Options_html_ac609142ee5a0caaf3ac51238ec421c2e"><div class="ttname"><a href="classSVF_1_1Options.html#ac609142ee5a0caaf3ac51238ec421c2e">SVF::Options::PrintValidRes</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PrintValidRes</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00185">Options.h:185</a></div></div>
141
- <div class="ttc" id="classSVF_1_1Options_html_a57564c82a2b90b7de837151f65b276f3"><div class="ttname"><a href="classSVF_1_1Options.html#a57564c82a2b90b7de837151f65b276f3">SVF::Options::SingleLoad</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; SingleLoad</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00084">Options.h:84</a></div></div>
142
- <div class="ttc" id="classSVF_1_1Options_html_a3061c75f7491dd737222b1b877721070"><div class="ttname"><a href="classSVF_1_1Options.html#a3061c75f7491dd737222b1b877721070">SVF::Options::DumpVFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00122">Options.h:122</a></div></div>
143
- <div class="ttc" id="classSVF_1_1Options_html_a74b821736a04f89adb79d6fd5369cdc3"><div class="ttname"><a href="classSVF_1_1Options.html#a74b821736a04f89adb79d6fd5369cdc3">SVF::Options::MemPar</a></div><div class="ttdeci">static const llvm::cl::opt&lt; MemSSA::MemPartition &gt; MemPar</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00155">Options.h:155</a></div></div>
144
- <div class="ttc" id="classSVF_1_1Options_html_aa3e6c78eb346a52bbaaac2610573604a"><div class="ttname"><a href="classSVF_1_1Options.html#aa3e6c78eb346a52bbaaac2610573604a">SVF::Options::PrintInterLev</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PrintInterLev</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00174">Options.h:174</a></div></div>
145
- <div class="ttc" id="classSVF_1_1Options_html_a4da18281b973b9ffb5068dd53060524c"><div class="ttname"><a href="classSVF_1_1Options.html#a4da18281b973b9ffb5068dd53060524c">SVF::Options::EnableAliasCheck</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; EnableAliasCheck</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00141">Options.h:141</a></div></div>
146
- <div class="ttc" id="classSVF_1_1Options_html_a7704ff30e6fc5043313adf5c655bcd4a"><div class="ttname"><a href="classSVF_1_1Options.html#a7704ff30e6fc5043313adf5c655bcd4a">SVF::Options::OPTSVFG</a></div><div class="ttdeci">static llvm::cl::opt&lt; bool &gt; OPTSVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00159">Options.h:159</a></div></div>
147
- <div class="ttc" id="classSVF_1_1Options_html_a98a521e5c99c5248eae8f8234453b116"><div class="ttname"><a href="classSVF_1_1Options.html#a98a521e5c99c5248eae8f8234453b116">SVF::Options::ReadAnder</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std ::string &gt; ReadAnder</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00236">Options.h:236</a></div></div>
148
- <div class="ttc" id="classSVF_1_1Options_html_a3c3d704c209c4e6eed1a771caf8214ce"><div class="ttname"><a href="classSVF_1_1Options.html#a3c3d704c209c4e6eed1a771caf8214ce">SVF::Options::UserInputQuery</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std ::string &gt; UserInputQuery</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00098">Options.h:98</a></div></div>
149
- <div class="ttc" id="classSVF_1_1Options_html_a0beb2da0f9ab691c0b7729bb42f8354c"><div class="ttname"><a href="classSVF_1_1Options.html#a0beb2da0f9ab691c0b7729bb42f8354c">SVF::Options::PrintCFL</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PrintCFL</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00254">Options.h:254</a></div></div>
150
- <div class="ttc" id="classSVF_1_1Options_html_a868fa5069b01b7a7dfbc5fb99cb76385"><div class="ttname"><a href="classSVF_1_1Options.html#a868fa5069b01b7a7dfbc5fb99cb76385">SVF::Options::SVFMain</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; SVFMain</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00212">Options.h:212</a></div></div>
151
- <div class="ttc" id="classSVF_1_1Options_html_a61c9d525088cc044f8937a39bb96aa93"><div class="ttname"><a href="classSVF_1_1Options.html#a61c9d525088cc044f8937a39bb96aa93">SVF::Options::CallGraphDotGraph</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; CallGraphDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00137">Options.h:137</a></div></div>
152
- <div class="ttc" id="classSVF_1_1Options_html_a097255cb1373feaaaf2fe60c998862d5"><div class="ttname"><a href="classSVF_1_1Options.html#a097255cb1373feaaaf2fe60c998862d5">SVF::Options::DumpMSSA</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpMSSA</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00152">Options.h:152</a></div></div>
131
+ <div class="ttc" id="classSVF_1_1Options_html_ac5b56390226cbed64c8fbd8ab8dee671"><div class="ttname"><a href="classSVF_1_1Options.html#ac5b56390226cbed64c8fbd8ab8dee671">SVF::Options::PrintAliases</a></div><div class="ttdeci">static const Option&lt; bool &gt; PrintAliases</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00244">Options.h:244</a></div></div>
132
+ <div class="ttc" id="classSVF_1_1Options_html_ad6c9b07d4dc8af20fbe2b93711cc2101"><div class="ttname"><a href="classSVF_1_1Options.html#ad6c9b07d4dc8af20fbe2b93711cc2101">SVF::Options::OCGDotGraph</a></div><div class="ttdeci">static const Option&lt; bool &gt; OCGDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00110">Options.h:110</a></div></div>
133
+ <div class="ttc" id="classSVF_1_1Options_html_a279f634c0ba3b01beed6a55b01d6eae7"><div class="ttname"><a href="classSVF_1_1Options.html#a279f634c0ba3b01beed6a55b01d6eae7">SVF::Options::AnnoFlag</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; AnnoFlag</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00182">Options.h:182</a></div></div>
134
+ <div class="ttc" id="classSVF_1_1Options_html_ae5af5a2b3854b4d234197ab1a389aac2"><div class="ttname"><a href="classSVF_1_1Options.html#ae5af5a2b3854b4d234197ab1a389aac2">SVF::Options::SingleStride</a></div><div class="ttdeci">static const Option&lt; bool &gt; SingleStride</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00125">Options.h:125</a></div></div>
135
+ <div class="ttc" id="classSVF_1_1Options_html_a0123986b466dae50b2f12c71295c54f9"><div class="ttname"><a href="classSVF_1_1Options.html#a0123986b466dae50b2f12c71295c54f9">SVF::Options::PlainMappingFs</a></div><div class="ttdeci">static const Option&lt; bool &gt; PlainMappingFs</div><div class="ttdoc">Use an explicitly plain mapping with flow-sensitive (not null). </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00047">Options.h:47</a></div></div>
136
+ <div class="ttc" id="classSVF_1_1Options_html_a453571cd0205f14ead205b3a54477475"><div class="ttname"><a href="classSVF_1_1Options.html#a453571cd0205f14ead205b3a54477475">SVF::Options::ReadAnder</a></div><div class="ttdeci">static const Option&lt; std::string &gt; ReadAnder</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00236">Options.h:236</a></div></div>
137
+ <div class="ttc" id="classSVF_1_1Options_html_a6c0afceb5db81504930dc6f673bc41ec"><div class="ttname"><a href="classSVF_1_1Options.html#a6c0afceb5db81504930dc6f673bc41ec">SVF::Options::LockValid</a></div><div class="ttdeci">static const Option&lt; bool &gt; LockValid</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00187">Options.h:187</a></div></div>
138
+ <div class="ttc" id="classOptionMap_html"><div class="ttname"><a href="classOptionMap.html">OptionMap&lt; enum PTAStat::ClockType &gt;</a></div></div>
139
+ <div class="ttc" id="classSVF_1_1Options_html_a737f3501a93f954790fe93d36c43fb00"><div class="ttname"><a href="classSVF_1_1Options.html#a737f3501a93f954790fe93d36c43fb00">SVF::Options::PTSAllPrint</a></div><div class="ttdeci">static const Option&lt; bool &gt; PTSAllPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00131">Options.h:131</a></div></div>
140
+ <div class="ttc" id="classSVF_1_1Options_html_abf71061d93d4a3b32246f19dc71e5127"><div class="ttname"><a href="classSVF_1_1Options.html#abf71061d93d4a3b32246f19dc71e5127">SVF::Options::ConnectVCallOnCHA</a></div><div class="ttdeci">static const Option&lt; bool &gt; ConnectVCallOnCHA</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00143">Options.h:143</a></div></div>
141
+ <div class="ttc" id="classSVF_1_1Options_html_a86f982d9716181bca93a350b5a11a1dc"><div class="ttname"><a href="classSVF_1_1Options.html#a86f982d9716181bca93a350b5a11a1dc">SVF::Options::MaxZ3Size</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; MaxZ3Size</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00221">Options.h:221</a></div></div>
142
+ <div class="ttc" id="classSVF_1_1Options_html_a17f11eb3e9a3178395e8574a027b181e"><div class="ttname"><a href="classSVF_1_1Options.html#a17f11eb3e9a3178395e8574a027b181e">SVF::Options::LoopBound</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; LoopBound</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00261">Options.h:261</a></div></div>
143
+ <div class="ttc" id="classSVF_1_1Options_html_a34e1093189fc8c150a9f2961557aa844"><div class="ttname"><a href="classSVF_1_1Options.html#a34e1093189fc8c150a9f2961557aa844">SVF::Options::PrintLockSpan</a></div><div class="ttdeci">static const Option&lt; bool &gt; PrintLockSpan</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00171">Options.h:171</a></div></div>
144
+ <div class="ttc" id="classSVF_1_1Options_html_ae88c0813d02dcb5632cd721a61a15014"><div class="ttname"><a href="classSVF_1_1Options.html#ae88c0813d02dcb5632cd721a61a15014">SVF::Options::PrintQueryPts</a></div><div class="ttdeci">static const Option&lt; bool &gt; PrintQueryPts</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00102">Options.h:102</a></div></div>
145
+ <div class="ttc" id="classSVF_1_1Options_html_aac637c9746749320a4ebd6af36212c56"><div class="ttname"><a href="classSVF_1_1Options.html#aac637c9746749320a4ebd6af36212c56">SVF::Options::AddModelFlag</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; AddModelFlag</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00168">Options.h:168</a></div></div>
146
+ <div class="ttc" id="classSVF_1_1Options_html_a0c5d08f13bd41095afb3b60c7ffad0e0"><div class="ttname"><a href="classSVF_1_1Options.html#a0c5d08f13bd41095afb3b60c7ffad0e0">SVF::Options::InsenCycle</a></div><div class="ttdeci">static const Option&lt; bool &gt; InsenCycle</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00100">Options.h:100</a></div></div>
147
+ <div class="ttc" id="classSVF_1_1Options_html_a429c3000ee2ac45119b8c241aa06762c"><div class="ttname"><a href="classSVF_1_1Options.html#a429c3000ee2ac45119b8c241aa06762c">SVF::Options::ModelArrays</a></div><div class="ttdeci">static const Option&lt; bool &gt; ModelArrays</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00217">Options.h:217</a></div></div>
148
+ <div class="ttc" id="classSVF_1_1Options_html_a36db0fdd38ff9093d2e6bb30581b25e1"><div class="ttname"><a href="classSVF_1_1Options.html#a36db0fdd38ff9093d2e6bb30581b25e1">SVF::Options::AnderTimeLimit</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; AnderTimeLimit</div><div class="ttdoc">Time limit for the Andersen&amp;#39;s analyses. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00075">Options.h:75</a></div></div>
149
+ <div class="ttc" id="classSVF_1_1Options_html_ad6f51870a3cabccbec4898d572dba74f"><div class="ttname"><a href="classSVF_1_1Options.html#ad6f51870a3cabccbec4898d572dba74f">SVF::Options::TaintUninitHeap</a></div><div class="ttdeci">static const Option&lt; bool &gt; TaintUninitHeap</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00091">Options.h:91</a></div></div>
150
+ <div class="ttc" id="classSVF_1_1Options_html_a7c6053f2341a500a8caca61607303b6e"><div class="ttname"><a href="classSVF_1_1Options.html#a7c6053f2341a500a8caca61607303b6e">SVF::Options::PAGPrint</a></div><div class="ttdeci">static const Option&lt; bool &gt; PAGPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00138">Options.h:138</a></div></div>
151
+ <div class="ttc" id="classSVF_1_1Options_html_a3fc22d0a45be551110d1e326380f3202"><div class="ttname"><a href="classSVF_1_1Options.html#a3fc22d0a45be551110d1e326380f3202">SVF::Options::DetectPWC</a></div><div class="ttdeci">static Option&lt; bool &gt; DetectPWC</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00238">Options.h:238</a></div></div>
152
+ <div class="ttc" id="classSVF_1_1Options_html_ae3ad3003a8d3df2f1e3463248bb5ad51"><div class="ttname"><a href="classSVF_1_1Options.html#ae3ad3003a8d3df2f1e3463248bb5ad51">SVF::Options::DumpVFG</a></div><div class="ttdeci">static const Option&lt; bool &gt; DumpVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00122">Options.h:122</a></div></div>
153
+ <div class="ttc" id="classSVF_1_1Options_html_a4837cf00e58d0b561f420f4b3b533ebd"><div class="ttname"><a href="classSVF_1_1Options.html#a4837cf00e58d0b561f420f4b3b533ebd">SVF::Options::PASelected</a></div><div class="ttdeci">static OptionMultiple&lt; PointerAnalysis::PTATY &gt; PASelected</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00245">Options.h:245</a></div></div>
154
+ <div class="ttc" id="classSVF_1_1Options_html_aa127a32b03e381343c624e53adc4ef2e"><div class="ttname"><a href="classSVF_1_1Options.html#aa127a32b03e381343c624e53adc4ef2e">SVF::Options::MemPar</a></div><div class="ttdeci">static const OptionMap&lt; MemSSA::MemPartition &gt; MemPar</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00155">Options.h:155</a></div></div>
153
155
  <div class="ttc" id="fastcluster_8h_html_a4205a14ad66b3320d2e94c61d74913ddad16cc6362447cc32292c4af4c6fe8024"><div class="ttname"><a href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddad16cc6362447cc32292c4af4c6fe8024">HCLUST_METHOD_SINGLE</a></div><div class="ttdef"><b>Definition:</b> <a href="fastcluster_8h_source.html#l00068">fastcluster.h:68</a></div></div>
154
- <div class="ttc" id="classSVF_1_1Options_html_a75a38fff97f7f18f3945c953cabc168b"><div class="ttname"><a href="classSVF_1_1Options.html#a75a38fff97f7f18f3945c953cabc168b">SVF::Options::PlainMappingFs</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PlainMappingFs</div><div class="ttdoc">Use an explicitly plain mapping with flow-sensitive (not null). </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00047">Options.h:47</a></div></div>
155
- <div class="ttc" id="classSVF_1_1Options_html_aec491143ded97649da1ed61b8fda796c"><div class="ttname"><a href="classSVF_1_1Options.html#aec491143ded97649da1ed61b8fda796c">SVF::Options::ValidateTests</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ValidateTests</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00198">Options.h:198</a></div></div>
156
- <div class="ttc" id="classSVF_1_1Options_html_a3e311bdcdaf0e39fd7d8566dc7866a44"><div class="ttname"><a href="classSVF_1_1Options.html#a3e311bdcdaf0e39fd7d8566dc7866a44">SVF::Options::DiffPts</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DiffPts</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00237">Options.h:237</a></div></div>
156
+ <div class="ttc" id="classSVF_1_1Options_html_a83103f0d5f166e0bb062aa7d7b393ddd"><div class="ttname"><a href="classSVF_1_1Options.html#a83103f0d5f166e0bb062aa7d7b393ddd">SVF::Options::TypePrint</a></div><div class="ttdeci">static const Option&lt; bool &gt; TypePrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00128">Options.h:128</a></div></div>
157
+ <div class="ttc" id="classSVF_1_1Options_html_a6237da3f4e264fa8b63c11d621f39e71"><div class="ttname"><a href="classSVF_1_1Options.html#a6237da3f4e264fa8b63c11d621f39e71">SVF::Options::MaxContextLen</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; MaxContextLen</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00096">Options.h:96</a></div></div>
157
158
  <div class="ttc" id="classSVF_1_1WPAPass_html_a4505a1882956feda3cf83c788149394dabb45a604558e2ebff460adb77b4a5d7c"><div class="ttname"><a href="classSVF_1_1WPAPass.html#a4505a1882956feda3cf83c788149394dabb45a604558e2ebff460adb77b4a5d7c">SVF::WPAPass::Veto</a></div><div class="ttdoc">return NoAlias if any pta says no alias </div><div class="ttdef"><b>Definition:</b> <a href="WPAPass_8h_source.html#l00065">WPAPass.h:65</a></div></div>
159
+ <div class="ttc" id="classSVF_1_1Options_html_ae7ccfb3d1308e205e5014849dcc43d9a"><div class="ttname"><a href="classSVF_1_1Options.html#ae7ccfb3d1308e205e5014849dcc43d9a">SVF::Options::DumpICFG</a></div><div class="ttdeci">static const Option&lt; bool &gt; DumpICFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00136">Options.h:136</a></div></div>
158
160
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2">SVF::PointerAnalysis::AndersenWaveDiff_WPA</a></div><div class="ttdoc">Diff wave propagation andersen-style WPA. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00070">PointerAnalysis.h:70</a></div></div>
159
- <div class="ttc" id="classSVF_1_1Options_html_acd687c31bb6662940ab8a1c3d17dc1ef"><div class="ttname"><a href="classSVF_1_1Options.html#acd687c31bb6662940ab8a1c3d17dc1ef">SVF::Options::KeepAOFI</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; KeepAOFI</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00118">Options.h:118</a></div></div>
160
- <div class="ttc" id="classSVF_1_1Options_html_aa4849115111e0ec81670c725027da6be"><div class="ttname"><a href="classSVF_1_1Options.html#aa4849115111e0ec81670c725027da6be">SVF::Options::AndersenAnno</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; AndersenAnno</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00178">Options.h:178</a></div></div>
161
- <div class="ttc" id="classSVF_1_1Options_html_a53b1a1ec4e5bbd9696ed9b680aa0c3c7"><div class="ttname"><a href="classSVF_1_1Options.html#a53b1a1ec4e5bbd9696ed9b680aa0c3c7">SVF::Options::FlowBudget</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned long long &gt; FlowBudget</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00107">Options.h:107</a></div></div>
162
- <div class="ttc" id="classSVF_1_1Options_html_a4c7eb57066c80c62ef394d644833214a"><div class="ttname"><a href="classSVF_1_1Options.html#a4c7eb57066c80c62ef394d644833214a">SVF::Options::WriteAnder</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std ::string &gt; WriteAnder</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00234">Options.h:234</a></div></div>
161
+ <div class="ttc" id="classSVF_1_1Options_html_a782d52d7e8d423c2bef27b34d518ffd9"><div class="ttname"><a href="classSVF_1_1Options.html#a782d52d7e8d423c2bef27b34d518ffd9">SVF::Options::WPANum</a></div><div class="ttdeci">static const Option&lt; bool &gt; WPANum</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00103">Options.h:103</a></div></div>
162
+ <div class="ttc" id="classSVF_1_1Options_html_adceab9fa76c438b8e5e83dd6042523ce"><div class="ttname"><a href="classSVF_1_1Options.html#adceab9fa76c438b8e5e83dd6042523ce">SVF::Options::TCTDotGraph</a></div><div class="ttdeci">static const Option&lt; bool &gt; TCTDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00195">Options.h:195</a></div></div>
163
+ <div class="ttc" id="classSVF_1_1Options_html_aeab702f641fd13ee1d0f89837097e43b"><div class="ttname"><a href="classSVF_1_1Options.html#aeab702f641fd13ee1d0f89837097e43b">SVF::Options::InsenRecur</a></div><div class="ttdeci">static const Option&lt; bool &gt; InsenRecur</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00099">Options.h:99</a></div></div>
164
+ <div class="ttc" id="classSVF_1_1Options_html_ad09017ae2e1010fbba5c086a4772750f"><div class="ttname"><a href="classSVF_1_1Options.html#ad09017ae2e1010fbba5c086a4772750f">SVF::Options::GrammarFilename</a></div><div class="ttdeci">static const Option&lt; std::string &gt; GrammarFilename</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00252">Options.h:252</a></div></div>
163
165
  <div class="ttc" id="Options_8h_html"><div class="ttname"><a href="Options_8h.html">Options.h</a></div></div>
164
- <div class="ttc" id="classSVF_1_1Options_html_aa929e2ae2c0a78181c3a1311bfe73596"><div class="ttname"><a href="classSVF_1_1Options.html#aa929e2ae2c0a78181c3a1311bfe73596">SVF::Options::GrammarFilename</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std::string &gt; GrammarFilename</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00252">Options.h:252</a></div></div>
165
- <div class="ttc" id="classSVF_1_1Options_html_a8dc477d83a142a62b63207f6f240f224"><div class="ttname"><a href="classSVF_1_1Options.html#a8dc477d83a142a62b63207f6f240f224">SVF::Options::FirstFieldEqBase</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; FirstFieldEqBase</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00114">Options.h:114</a></div></div>
166
- <div class="ttc" id="classSVF_1_1Options_html_ab6115b28808af348e1f6a6b58b4cd84f"><div class="ttname"><a href="classSVF_1_1Options.html#ab6115b28808af348e1f6a6b58b4cd84f">SVF::Options::RegionedClustering</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; RegionedClustering</div><div class="ttdoc">Cluster partitions separately. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00059">Options.h:59</a></div></div>
166
+ <div class="ttc" id="classSVF_1_1Options_html_aa8818e8138233838af224d4214de9e8f"><div class="ttname"><a href="classSVF_1_1Options.html#aa8818e8138233838af224d4214de9e8f">SVF::Options::MSSAFun</a></div><div class="ttdeci">static const Option&lt; std::string &gt; MSSAFun</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00153">Options.h:153</a></div></div>
167
+ <div class="ttc" id="classSVF_1_1Options_html_a09005e749b1030347ac5dcc015053a37"><div class="ttname"><a href="classSVF_1_1Options.html#a09005e749b1030347ac5dcc015053a37">SVF::Options::KeepAOFI</a></div><div class="ttdeci">static const Option&lt; bool &gt; KeepAOFI</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00118">Options.h:118</a></div></div>
168
+ <div class="ttc" id="classSVF_1_1Options_html_ae60822a71ee1cd389413d98dfb35e302"><div class="ttname"><a href="classSVF_1_1Options.html#ae60822a71ee1cd389413d98dfb35e302">SVF::Options::ContextInsensitive</a></div><div class="ttdeci">static const Option&lt; bool &gt; ContextInsensitive</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00117">Options.h:117</a></div></div>
169
+ <div class="ttc" id="classSVF_1_1Options_html_a6ebad0decdd6e93c661b72d80f5dbcef"><div class="ttname"><a href="classSVF_1_1Options.html#a6ebad0decdd6e93c661b72d80f5dbcef">SVF::Options::FsTimeLimit</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; FsTimeLimit</div><div class="ttdoc">Time limit for the main phase (i.e., the actual solving) of FS analyses. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00072">Options.h:72</a></div></div>
170
+ <div class="ttc" id="classSVF_1_1Options_html_ad80f77349205dac9e74aa41ea1ecbf95"><div class="ttname"><a href="classSVF_1_1Options.html#ad80f77349205dac9e74aa41ea1ecbf95">SVF::Options::ConsCGDotGraph</a></div><div class="ttdeci">static const Option&lt; bool &gt; ConsCGDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00230">Options.h:230</a></div></div>
171
+ <div class="ttc" id="classSVF_1_1Options_html_a296e4a2187d14828cb0baf859f48d716"><div class="ttname"><a href="classSVF_1_1Options.html#a296e4a2187d14828cb0baf859f48d716">SVF::Options::DumpUninitPtr</a></div><div class="ttdeci">static const Option&lt; bool &gt; DumpUninitPtr</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00087">Options.h:87</a></div></div>
172
+ <div class="ttc" id="classSVF_1_1Options_html_a944aee270c78d42c998691da283165f1"><div class="ttname"><a href="classSVF_1_1Options.html#a944aee270c78d42c998691da283165f1">SVF::Options::PrintValidRes</a></div><div class="ttdeci">static const Option&lt; bool &gt; PrintValidRes</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00185">Options.h:185</a></div></div>
173
+ <div class="ttc" id="classSVF_1_1Options_html_ab9443e23bdcb60f118a7aab835f974db"><div class="ttname"><a href="classSVF_1_1Options.html#ab9443e23bdcb60f118a7aab835f974db">SVF::Options::DumpSlice</a></div><div class="ttdeci">static const Option&lt; bool &gt; DumpSlice</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00201">Options.h:201</a></div></div>
174
+ <div class="ttc" id="classSVF_1_1Options_html_a8cc5b2a363724b558f4932277a87c0f6"><div class="ttname"><a href="classSVF_1_1Options.html#a8cc5b2a363724b558f4932277a87c0f6">SVF::Options::RegionedClustering</a></div><div class="ttdeci">static const Option&lt; bool &gt; RegionedClustering</div><div class="ttdoc">Cluster partitions separately. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00059">Options.h:59</a></div></div>
167
175
  <div class="ttc" id="classSVF_1_1WPAPass_html_a4505a1882956feda3cf83c788149394da498ba80d25733b291f391a94500dd4c7"><div class="ttname"><a href="classSVF_1_1WPAPass.html#a4505a1882956feda3cf83c788149394da498ba80d25733b291f391a94500dd4c7">SVF::WPAPass::Conservative</a></div><div class="ttdoc">return MayAlias if any pta says alias </div><div class="ttdef"><b>Definition:</b> <a href="WPAPass_8h_source.html#l00064">WPAPass.h:64</a></div></div>
168
- <div class="ttc" id="classSVF_1_1Options_html_a6a62b34de8ec23899a8024e0450c43df"><div class="ttname"><a href="classSVF_1_1Options.html#a6a62b34de8ec23899a8024e0450c43df">SVF::Options::ClockType</a></div><div class="ttdeci">static const llvm::cl::opt&lt; enum PTAStat::ClockType &gt; ClockType</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00024">Options.h:24</a></div></div>
169
- <div class="ttc" id="classSVF_1_1Options_html_a420e6656b02fd900430d51b8b4a5c6c1"><div class="ttname"><a href="classSVF_1_1Options.html#a420e6656b02fd900430d51b8b4a5c6c1">SVF::Options::LoopAnalysis</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; LoopAnalysis</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00260">Options.h:260</a></div></div>
176
+ <div class="ttc" id="classSVF_1_1Options_html_ac17ce6d75293dcd0baf366cbeb0cb6d6"><div class="ttname"><a href="classSVF_1_1Options.html#ac17ce6d75293dcd0baf366cbeb0cb6d6">SVF::Options::ClusterMethod</a></div><div class="ttdeci">static const OptionMap&lt; enum hclust_fast_methods &gt; ClusterMethod</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00056">Options.h:56</a></div></div>
177
+ <div class="ttc" id="classSVF_1_1Options_html_afa6c98d477db41a457ac83cfbfd4a580"><div class="ttname"><a href="classSVF_1_1Options.html#afa6c98d477db41a457ac83cfbfd4a580">SVF::Options::DDASelected</a></div><div class="ttdeci">static OptionMultiple&lt; PointerAnalysis::PTATY &gt; DDASelected</div><div class="ttdoc">register this into alias analysis group </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00104">Options.h:104</a></div></div>
170
178
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6">SVF::PointerAnalysis::Andersen_WPA</a></div><div class="ttdoc">Andersen PTA. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00067">PointerAnalysis.h:67</a></div></div>
171
- <div class="ttc" id="classSVF_1_1Options_html_a14ceeb5d7de81a0946389159986e4955"><div class="ttname"><a href="classSVF_1_1Options.html#a14ceeb5d7de81a0946389159986e4955">SVF::Options::FuncPointerPrint</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; FuncPointerPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00129">Options.h:129</a></div></div>
172
179
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b">SVF::PointerAnalysis::AndersenSFR_WPA</a></div><div class="ttdoc">Stride-based field representation. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00069">PointerAnalysis.h:69</a></div></div>
173
180
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78">SVF::PointerAnalysis::FSSPARSE_WPA</a></div><div class="ttdoc">Sparse flow sensitive WPA. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00075">PointerAnalysis.h:75</a></div></div>
174
- <div class="ttc" id="classSVF_1_1Options_html_a485ec0be47c5e78bac4511d00687aee1"><div class="ttname"><a href="classSVF_1_1Options.html#a485ec0be47c5e78bac4511d00687aee1">SVF::Options::ConnectVCallOnCHA</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ConnectVCallOnCHA</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00143">Options.h:143</a></div></div>
175
- <div class="ttc" id="classSVF_1_1Options_html_af2f66307e1d51947676f622c98ef0762"><div class="ttname"><a href="classSVF_1_1Options.html#af2f66307e1d51947676f622c98ef0762">SVF::Options::UsePCG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; UsePCG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00165">Options.h:165</a></div></div>
176
- <div class="ttc" id="classSVF_1_1Options_html_aea29a835c54fab800117e57de00e0b1e"><div class="ttname"><a href="classSVF_1_1Options.html#aea29a835c54fab800117e57de00e0b1e">SVF::Options::DumpICFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpICFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00136">Options.h:136</a></div></div>
177
- <div class="ttc" id="classSVF_1_1Options_html_ad2d3db3e407a53956a5a59cc24eb8d40"><div class="ttname"><a href="classSVF_1_1Options.html#ad2d3db3e407a53956a5a59cc24eb8d40">SVF::Options::HandBlackHole</a></div><div class="ttdeci">static llvm::cl::opt&lt; bool &gt; HandBlackHole</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00113">Options.h:113</a></div></div>
178
- <div class="ttc" id="classSVF_1_1Options_html_a35cfe6add81dc82983e0c53c36c6e667"><div class="ttname"><a href="classSVF_1_1Options.html#a35cfe6add81dc82983e0c53c36c6e667">SVF::Options::InsenCycle</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; InsenCycle</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00100">Options.h:100</a></div></div>
181
+ <div class="ttc" id="classSVF_1_1Options_html_abfd13c7d998333290b39354178739f2c"><div class="ttname"><a href="classSVF_1_1Options.html#abfd13c7d998333290b39354178739f2c">SVF::Options::LoopAnalysis</a></div><div class="ttdeci">static const Option&lt; bool &gt; LoopAnalysis</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00260">Options.h:260</a></div></div>
182
+ <div class="ttc" id="classSVF_1_1Options_html_a7ef3e2cd417646e9d06e0da16ff6c516"><div class="ttname"><a href="classSVF_1_1Options.html#a7ef3e2cd417646e9d06e0da16ff6c516">SVF::Options::CFLSVFG</a></div><div class="ttdeci">static const Option&lt; bool &gt; CFLSVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00257">Options.h:257</a></div></div>
183
+ <div class="ttc" id="classOptionMultiple_html"><div class="ttname"><a href="classOptionMultiple.html">OptionMultiple&lt; PointerAnalysis::PTATY &gt;</a></div></div>
184
+ <div class="ttc" id="classSVF_1_1Options_html_a3fd9cce83729bc62cd2fb568b0d53db5"><div class="ttname"><a href="classSVF_1_1Options.html#a3fd9cce83729bc62cd2fb568b0d53db5">SVF::Options::CxtLimit</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; CxtLimit</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00202">Options.h:202</a></div></div>
179
185
  <div class="ttc" id="fastcluster_8h_html_a4205a14ad66b3320d2e94c61d74913dda3ab72664fc61704a1ba46bddbc347115"><div class="ttname"><a href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda3ab72664fc61704a1ba46bddbc347115">HCLUST_METHOD_AVERAGE</a></div><div class="ttdef"><b>Definition:</b> <a href="fastcluster_8h_source.html#l00072">fastcluster.h:72</a></div></div>
180
186
  <div class="ttc" id="namespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode </div><div class="ttdef"><b>Definition:</b> <a href="AbstractValue_8h_source.html#l00037">AbstractValue.h:37</a></div></div>
181
- <div class="ttc" id="classSVF_1_1Options_html_a8459d43a21bcf8a50fc55d14fcf5a81e"><div class="ttname"><a href="classSVF_1_1Options.html#a8459d43a21bcf8a50fc55d14fcf5a81e">SVF::Options::ClusterAnder</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ClusterAnder</div><div class="ttdoc">Whether to stage Andersen&amp;#39;s with Steensgaard and cluster based on that data. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00041">Options.h:41</a></div></div>
182
- <div class="ttc" id="classSVF_1_1Options_html_a98df022c5da54ea30b3f0ce008d3ca80"><div class="ttname"><a href="classSVF_1_1Options.html#a98df022c5da54ea30b3f0ce008d3ca80">SVF::Options::PAGPrint</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PAGPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00138">Options.h:138</a></div></div>
183
- <div class="ttc" id="classSVF_1_1Options_html_aa78f442ee8d7272e98396fd86dea4993"><div class="ttname"><a href="classSVF_1_1Options.html#aa78f442ee8d7272e98396fd86dea4993">SVF::Options::AllPairMHP</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; AllPairMHP</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00189">Options.h:189</a></div></div>
184
- <div class="ttc" id="classSVF_1_1Options_html_ac3ad7d0cf734e867b91a081aad1faff2"><div class="ttname"><a href="classSVF_1_1Options.html#ac3ad7d0cf734e867b91a081aad1faff2">SVF::Options::ContextInsensitive</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ContextInsensitive</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00117">Options.h:117</a></div></div>
185
- <div class="ttc" id="classSVF_1_1Options_html_aaf05b444fd7f087e5d7fda3883f29dc5"><div class="ttname"><a href="classSVF_1_1Options.html#aaf05b444fd7f087e5d7fda3883f29dc5">SVF::Options::DumpUninitVar</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpUninitVar</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00086">Options.h:86</a></div></div>
186
- <div class="ttc" id="classSVF_1_1Options_html_ab8a9641b660197b4421fbd6141858c58"><div class="ttname"><a href="classSVF_1_1Options.html#ab8a9641b660197b4421fbd6141858c58">SVF::Options::PrintLockSpan</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PrintLockSpan</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00171">Options.h:171</a></div></div>
187
- <div class="ttc" id="classSVF_1_1Options_html_a5cfcf1ddc44ff175c4766f88bf204c03"><div class="ttname"><a href="classSVF_1_1Options.html#a5cfcf1ddc44ff175c4766f88bf204c03">SVF::Options::MarkedClocksOnly</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; MarkedClocksOnly</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00031">Options.h:31</a></div></div>
188
- <div class="ttc" id="classSVF_1_1Options_html_a63c2ff1420867ea4ef0a94d28b3f0558"><div class="ttname"><a href="classSVF_1_1Options.html#a63c2ff1420867ea4ef0a94d28b3f0558">SVF::Options::ShowSVFIRValue</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ShowSVFIRValue</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00135">Options.h:135</a></div></div>
189
- <div class="ttc" id="classSVF_1_1Options_html_aa24f52782c835452daf82138d0d69412"><div class="ttname"><a href="classSVF_1_1Options.html#aa24f52782c835452daf82138d0d69412">SVF::Options::DumpSUStore</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpSUStore</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00089">Options.h:89</a></div></div>
190
- <div class="ttc" id="classSVF_1_1Options_html_a620fe156ba70f997eace0ccb0d2c9f67"><div class="ttname"><a href="classSVF_1_1Options.html#a620fe156ba70f997eace0ccb0d2c9f67">SVF::Options::AnderTimeLimit</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; AnderTimeLimit</div><div class="ttdoc">Time limit for the Andersen&amp;#39;s analyses. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00075">Options.h:75</a></div></div>
191
- <div class="ttc" id="classSVF_1_1Options_html_ab7161ca7a809792af82e5aabdfcc3bfb"><div class="ttname"><a href="classSVF_1_1Options.html#ab7161ca7a809792af82e5aabdfcc3bfb">SVF::Options::LoopBound</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; LoopBound</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00261">Options.h:261</a></div></div>
192
- <div class="ttc" id="classSVF_1_1Options_html_a13ff50def26bcf8f79d3222c6948cbfe"><div class="ttname"><a href="classSVF_1_1Options.html#a13ff50def26bcf8f79d3222c6948cbfe">SVF::Options::CFLSVFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; CFLSVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00257">Options.h:257</a></div></div>
193
- <div class="ttc" id="classSVF_1_1Options_html_adba18ce8f1496fe2e57a934f11c2dfd9"><div class="ttname"><a href="classSVF_1_1Options.html#adba18ce8f1496fe2e57a934f11c2dfd9">SVF::Options::VersioningThreads</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; VersioningThreads</div><div class="ttdoc">Number of threads for the versioning phase. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00078">Options.h:78</a></div></div>
194
- <div class="ttc" id="classSVF_1_1Options_html_ab13a47f6dd4eedfaa607d36448a1d456"><div class="ttname"><a href="classSVF_1_1Options.html#ab13a47f6dd4eedfaa607d36448a1d456">SVF::Options::DumpCHA</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpCHA</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00205">Options.h:205</a></div></div>
195
- <div class="ttc" id="classSVF_1_1Options_html_a19758db674de8af8a1c80734a1c0fac8"><div class="ttname"><a href="classSVF_1_1Options.html#a19758db674de8af8a1c80734a1c0fac8">SVF::Options::TCTDotGraph</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; TCTDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00195">Options.h:195</a></div></div>
196
- <div class="ttc" id="classSVF_1_1Options_html_afb6fabc25c0d7f9e9d1708ce648797fc"><div class="ttname"><a href="classSVF_1_1Options.html#afb6fabc25c0d7f9e9d1708ce648797fc">SVF::Options::UsePreCompFieldSensitive</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; UsePreCompFieldSensitive</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00140">Options.h:140</a></div></div>
187
+ <div class="ttc" id="classSVF_1_1Options_html_a93970b0b5e0a6148a86ab192a812f34b"><div class="ttname"><a href="classSVF_1_1Options.html#a93970b0b5e0a6148a86ab192a812f34b">SVF::Options::SABERFULLSVFG</a></div><div class="ttdeci">static const Option&lt; bool &gt; SABERFULLSVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00243">Options.h:243</a></div></div>
188
+ <div class="ttc" id="classSVF_1_1Options_html_a787f95c7ac87e04f2e6d55cf5d665a34"><div class="ttname"><a href="classSVF_1_1Options.html#a787f95c7ac87e04f2e6d55cf5d665a34">SVF::Options::TaintUninitStack</a></div><div class="ttdeci">static const Option&lt; bool &gt; TaintUninitStack</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00092">Options.h:92</a></div></div>
189
+ <div class="ttc" id="classSVF_1_1Options_html_a28af43961cb29a7dea50be2ab332cc75"><div class="ttname"><a href="classSVF_1_1Options.html#a28af43961cb29a7dea50be2ab332cc75">SVF::Options::ClockType</a></div><div class="ttdeci">static const OptionMap&lt; enum PTAStat::ClockType &gt; ClockType</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00024">Options.h:24</a></div></div>
190
+ <div class="ttc" id="classSVF_1_1Options_html_a5f07ff361307017b35fb6b9a97919a73"><div class="ttname"><a href="classSVF_1_1Options.html#a5f07ff361307017b35fb6b9a97919a73">SVF::Options::EnableAliasCheck</a></div><div class="ttdeci">static const Option&lt; bool &gt; EnableAliasCheck</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00141">Options.h:141</a></div></div>
191
+ <div class="ttc" id="classSVF_1_1Options_html_aa5bae1db07c401517c1c0f8fd9f2deef"><div class="ttname"><a href="classSVF_1_1Options.html#aa5bae1db07c401517c1c0f8fd9f2deef">SVF::Options::IndirectCallLimit</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; IndirectCallLimit</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00139">Options.h:139</a></div></div>
192
+ <div class="ttc" id="classSVF_1_1Options_html_a034a83cdac580c1f8b10805e29ca50e4"><div class="ttname"><a href="classSVF_1_1Options.html#a034a83cdac580c1f8b10805e29ca50e4">SVF::Options::ReadSVFG</a></div><div class="ttdeci">static const Option&lt; std::string &gt; ReadSVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00162">Options.h:162</a></div></div>
197
193
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18">SVF::PointerAnalysis::FlowS_DDA</a></div><div class="ttdoc">Flow sensitive DDA. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00085">PointerAnalysis.h:85</a></div></div>
198
- <div class="ttc" id="classSVF_1_1Options_html_a6bec8aed8673d10d65cc3df9fad3383b"><div class="ttname"><a href="classSVF_1_1Options.html#a6bec8aed8673d10d65cc3df9fad3383b">SVF::Options::ReadPrecisionTDEdge</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ReadPrecisionTDEdge</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00167">Options.h:167</a></div></div>
194
+ <div class="ttc" id="classSVF_1_1Options_html_a428e892b31dcb783be36a35e878a0337"><div class="ttname"><a href="classSVF_1_1Options.html#a428e892b31dcb783be36a35e878a0337">SVF::Options::PTSPrint</a></div><div class="ttdeci">static const Option&lt; bool &gt; PTSPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00130">Options.h:130</a></div></div>
195
+ <div class="ttc" id="classSVF_1_1Options_html_a26711c33c9247a296f6dfaaf36d38e47"><div class="ttname"><a href="classSVF_1_1Options.html#a26711c33c9247a296f6dfaaf36d38e47">SVF::Options::WriteSVFG</a></div><div class="ttdeci">static const Option&lt; std::string &gt; WriteSVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00161">Options.h:161</a></div></div>
196
+ <div class="ttc" id="classSVF_1_1Options_html_a3a718b0a27c2d13878c0718af97ad73d"><div class="ttname"><a href="classSVF_1_1Options.html#a3a718b0a27c2d13878c0718af97ad73d">SVF::Options::SVFMain</a></div><div class="ttdeci">static const Option&lt; bool &gt; SVFMain</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00212">Options.h:212</a></div></div>
199
197
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1">SVF::PointerAnalysis::AndersenSCD_WPA</a></div><div class="ttdoc">Selective cycle detection andersen-style WPA. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00068">PointerAnalysis.h:68</a></div></div>
200
- <div class="ttc" id="classSVF_1_1Options_html_a87516daebb3d1b5fee9037068d60e268"><div class="ttname"><a href="classSVF_1_1Options.html#a87516daebb3d1b5fee9037068d60e268">SVF::Options::PrintCGGraph</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PrintCGGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00232">Options.h:232</a></div></div>
201
- <div class="ttc" id="classSVF_1_1Options_html_a1bc10a5947bf3912c6f22e094ccac464"><div class="ttname"><a href="classSVF_1_1Options.html#a1bc10a5947bf3912c6f22e094ccac464">SVF::Options::IntraLock</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; IntraLock</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00166">Options.h:166</a></div></div>
198
+ <div class="ttc" id="classSVF_1_1Options_html_abe3087eb48a10bb600d1fd24308c019b"><div class="ttname"><a href="classSVF_1_1Options.html#abe3087eb48a10bb600d1fd24308c019b">SVF::Options::PrintCPts</a></div><div class="ttdeci">static const Option&lt; bool &gt; PrintCPts</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00101">Options.h:101</a></div></div>
199
+ <div class="ttc" id="classSVF_1_1Options_html_af6d92cd4372cd952e6d955cfc9be0ccb"><div class="ttname"><a href="classSVF_1_1Options.html#af6d92cd4372cd952e6d955cfc9be0ccb">SVF::Options::IntraLock</a></div><div class="ttdeci">static const Option&lt; bool &gt; IntraLock</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00166">Options.h:166</a></div></div>
202
200
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3">SVF::PointerAnalysis::TypeCPP_WPA</a></div><div class="ttdoc">Type-based analysis for C++. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00081">PointerAnalysis.h:81</a></div></div>
203
- <div class="ttc" id="classSVF_1_1Options_html_aa1a3b9293dffeef1bb16a2a7b3a007dd"><div class="ttname"><a href="classSVF_1_1Options.html#aa1a3b9293dffeef1bb16a2a7b3a007dd">SVF::Options::InsenRecur</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; InsenRecur</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00099">Options.h:99</a></div></div>
204
- <div class="ttc" id="classSVF_1_1Options_html_a170426acc0f9d99470fd1bde40d273e2"><div class="ttname"><a href="classSVF_1_1Options.html#a170426acc0f9d99470fd1bde40d273e2">SVF::Options::ModelArrays</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ModelArrays</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00217">Options.h:217</a></div></div>
205
- <div class="ttc" id="classSVF_1_1Options_html_ae6b763ff293381ed5da9b07c2e8ae496"><div class="ttname"><a href="classSVF_1_1Options.html#ae6b763ff293381ed5da9b07c2e8ae496">SVF::Options::PrintPathCond</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PrintPathCond</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00224">Options.h:224</a></div></div>
201
+ <div class="ttc" id="classSVF_1_1Options_html_ad2f3ffd1b8d579ebe4c19a015cd599e2"><div class="ttname"><a href="classSVF_1_1Options.html#ad2f3ffd1b8d579ebe4c19a015cd599e2">SVF::Options::StatBudget</a></div><div class="ttdeci">static const Option&lt; u32_t &gt; StatBudget</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00133">Options.h:133</a></div></div>
202
+ <div class="ttc" id="classSVF_1_1Options_html_aab85f2c2ceb235b1291301f33154d182"><div class="ttname"><a href="classSVF_1_1Options.html#aab85f2c2ceb235b1291301f33154d182">SVF::Options::PrintDCHG</a></div><div class="ttdeci">static const Option&lt; bool &gt; PrintDCHG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00208">Options.h:208</a></div></div>
203
+ <div class="ttc" id="classSVF_1_1Options_html_a2960fcb679f8dfee7d8822fcf9609f4a"><div class="ttname"><a href="classSVF_1_1Options.html#a2960fcb679f8dfee7d8822fcf9609f4a">SVF::Options::AliasRule</a></div><div class="ttdeci">static OptionMultiple&lt; WPAPass::AliasCheckRule &gt; AliasRule</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00246">Options.h:246</a></div></div>
204
+ <div class="ttc" id="classSVF_1_1Options_html_aaa27474452c68545e883d02a334cab70"><div class="ttname"><a href="classSVF_1_1Options.html#aaa27474452c68545e883d02a334cab70">SVF::Options::AllPairMHP</a></div><div class="ttdeci">static const Option&lt; bool &gt; AllPairMHP</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00189">Options.h:189</a></div></div>
205
+ <div class="ttc" id="classSVF_1_1Options_html_a9e5f361015b558d3d4e7e033868f9c83"><div class="ttname"><a href="classSVF_1_1Options.html#a9e5f361015b558d3d4e7e033868f9c83">SVF::Options::PrintCGGraph</a></div><div class="ttdeci">static const Option&lt; bool &gt; PrintCGGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00232">Options.h:232</a></div></div>
206
+ <div class="ttc" id="classSVF_1_1Options_html_a424a44f39a43b22434dbdce26007a353"><div class="ttname"><a href="classSVF_1_1Options.html#a424a44f39a43b22434dbdce26007a353">SVF::Options::ShowSVFIRValue</a></div><div class="ttdeci">static const Option&lt; bool &gt; ShowSVFIRValue</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00135">Options.h:135</a></div></div>
207
+ <div class="ttc" id="classSVF_1_1Options_html_a9ff12bf51a475c90c35e3351c5501f0f"><div class="ttname"><a href="classSVF_1_1Options.html#a9ff12bf51a475c90c35e3351c5501f0f">SVF::Options::PrintCFL</a></div><div class="ttdeci">static const Option&lt; bool &gt; PrintCFL</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00254">Options.h:254</a></div></div>
208
+ <div class="ttc" id="classSVF_1_1Options_html_ae3c3cc703ef35987a32aa808038a1307"><div class="ttname"><a href="classSVF_1_1Options.html#ae3c3cc703ef35987a32aa808038a1307">SVF::Options::ptDataBacking</a></div><div class="ttdeci">static const OptionMap&lt; BVDataPTAImpl::PTBackingType &gt; ptDataBacking</div><div class="ttdoc">PTData type. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00069">Options.h:69</a></div></div>
209
+ <div class="ttc" id="classSVF_1_1Options_html_ae2c4fe298a27f50c749b75f0801f9666"><div class="ttname"><a href="classSVF_1_1Options.html#ae2c4fe298a27f50c749b75f0801f9666">SVF::Options::DoLockAnalysis</a></div><div class="ttdeci">static const Option&lt; bool &gt; DoLockAnalysis</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00175">Options.h:175</a></div></div>
206
210
  </div><!-- fragment --></div><!-- contents -->
207
211
  <!-- start footer part -->
208
212
  <hr class="footer"/><address class="footer"><small>