svf-tools 1.0.774 → 1.0.776

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 (313) hide show
  1. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +1 -1
  2. package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +1 -1
  3. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +9 -9
  4. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +1 -1
  5. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +1 -1
  6. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +2 -2
  7. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +1 -1
  8. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +1 -1
  9. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +1 -1
  10. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +585 -576
  11. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +147 -164
  12. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +706 -633
  13. package/SVF-doxygen/html/html/LLVMUtil_8h.html +7 -2
  14. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +172 -174
  15. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +1 -1
  16. package/SVF-doxygen/html/html/MHP_8cpp_source.html +1 -1
  17. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +1 -1
  18. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +1 -1
  19. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +1 -1
  20. package/SVF-doxygen/html/html/SVFIR2ConsExeState_8cpp_source.html +1 -1
  21. package/SVF-doxygen/html/html/SVFIR2ItvExeState_8cpp_source.html +1 -1
  22. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +6 -6
  23. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +2 -2
  24. package/SVF-doxygen/html/html/SVFIRExtAPI_8cpp_source.html +2 -2
  25. package/SVF-doxygen/html/html/SVFLoop_8h_source.html +3 -3
  26. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
  27. package/SVF-doxygen/html/html/SVFValue_8h_source.html +1 -1
  28. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +1 -1
  29. package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +1 -1
  30. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +7 -7
  31. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +1 -1
  32. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +1 -1
  33. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
  34. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +1 -1
  35. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +1 -1
  36. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +1 -1
  37. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +1 -1
  38. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
  39. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +1 -1
  40. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +1 -1
  41. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +9 -9
  42. package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +1 -1
  43. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
  44. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +1 -1
  45. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +1 -1
  46. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +1 -1
  47. package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +1 -1
  48. package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +1 -1
  49. package/SVF-doxygen/html/html/classSVF_1_1CxtThreadStmt.html +1 -1
  50. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +2 -2
  51. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +1 -1
  52. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +1 -1
  53. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +1 -1
  54. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +1 -1
  55. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +1 -1
  56. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +1 -1
  57. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +1 -1
  58. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +1 -1
  59. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
  60. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  61. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +1 -1
  62. package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +1 -1
  63. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
  64. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +658 -665
  65. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +1 -1
  66. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +1 -1
  67. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +1 -1
  68. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +1 -1
  69. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +1 -1
  70. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +1 -1
  71. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
  72. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +1 -1
  73. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
  74. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +1 -1
  75. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +1 -1
  76. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +1 -1
  77. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +1 -1
  78. package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +1 -1
  79. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
  80. package/SVF-doxygen/html/html/classSVF_1_1SVFIR2ItvExeState.html +1 -1
  81. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +9 -9
  82. package/SVF-doxygen/html/html/classSVF_1_1SVFLoop.html +3 -3
  83. package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +23 -23
  84. package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +1 -1
  85. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +1 -1
  86. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +1 -1
  87. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +7 -7
  88. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +1 -1
  89. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
  90. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
  91. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +1 -1
  92. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
  93. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +1 -1
  94. package/SVF-doxygen/html/html/namespaceSVF_1_1LLVMUtil.html +717 -617
  95. package/SVF-doxygen/html/html/namespacemembers_func_i.html +4 -1
  96. package/SVF-doxygen/html/html/namespacemembers_func_r.html +6 -3
  97. package/SVF-doxygen/html/html/namespacemembers_i.html +6 -3
  98. package/SVF-doxygen/html/html/namespacemembers_r.html +5 -2
  99. package/SVF-doxygen/html/html/search/all_10.js +324 -324
  100. package/SVF-doxygen/html/html/search/all_11.js +218 -217
  101. package/SVF-doxygen/html/html/search/all_12.js +541 -541
  102. package/SVF-doxygen/html/html/search/all_13.js +190 -190
  103. package/SVF-doxygen/html/html/search/all_14.js +66 -66
  104. package/SVF-doxygen/html/html/search/all_15.js +170 -170
  105. package/SVF-doxygen/html/html/search/all_16.js +63 -63
  106. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  107. package/SVF-doxygen/html/html/search/all_18.js +1 -1
  108. package/SVF-doxygen/html/html/search/all_19.js +11 -11
  109. package/SVF-doxygen/html/html/search/all_1a.js +169 -169
  110. package/SVF-doxygen/html/html/search/all_9.js +34 -33
  111. package/SVF-doxygen/html/html/search/all_a.js +46 -46
  112. package/SVF-doxygen/html/html/search/all_b.js +26 -26
  113. package/SVF-doxygen/html/html/search/all_c.js +116 -116
  114. package/SVF-doxygen/html/html/search/all_d.js +196 -196
  115. package/SVF-doxygen/html/html/search/all_e.js +206 -206
  116. package/SVF-doxygen/html/html/search/all_f.js +116 -116
  117. package/SVF-doxygen/html/html/search/classes_0.js +26 -26
  118. package/SVF-doxygen/html/html/search/classes_1.js +9 -9
  119. package/SVF-doxygen/html/html/search/classes_10.js +73 -73
  120. package/SVF-doxygen/html/html/search/classes_11.js +15 -15
  121. package/SVF-doxygen/html/html/search/classes_12.js +2 -2
  122. package/SVF-doxygen/html/html/search/classes_13.js +10 -10
  123. package/SVF-doxygen/html/html/search/classes_14.js +14 -14
  124. package/SVF-doxygen/html/html/search/classes_15.js +1 -1
  125. package/SVF-doxygen/html/html/search/classes_2.js +76 -76
  126. package/SVF-doxygen/html/html/search/classes_3.js +35 -35
  127. package/SVF-doxygen/html/html/search/classes_4.js +8 -8
  128. package/SVF-doxygen/html/html/search/classes_5.js +28 -28
  129. package/SVF-doxygen/html/html/search/classes_6.js +98 -98
  130. package/SVF-doxygen/html/html/search/classes_7.js +33 -33
  131. package/SVF-doxygen/html/html/search/classes_8.js +56 -56
  132. package/SVF-doxygen/html/html/search/classes_9.js +1 -1
  133. package/SVF-doxygen/html/html/search/classes_a.js +12 -12
  134. package/SVF-doxygen/html/html/search/classes_b.js +29 -29
  135. package/SVF-doxygen/html/html/search/classes_c.js +6 -6
  136. package/SVF-doxygen/html/html/search/classes_d.js +18 -18
  137. package/SVF-doxygen/html/html/search/classes_e.js +36 -36
  138. package/SVF-doxygen/html/html/search/classes_f.js +25 -25
  139. package/SVF-doxygen/html/html/search/defines_0.js +3 -3
  140. package/SVF-doxygen/html/html/search/defines_1.js +2 -2
  141. package/SVF-doxygen/html/html/search/defines_2.js +30 -30
  142. package/SVF-doxygen/html/html/search/defines_3.js +20 -20
  143. package/SVF-doxygen/html/html/search/defines_4.js +3 -3
  144. package/SVF-doxygen/html/html/search/defines_5.js +4 -4
  145. package/SVF-doxygen/html/html/search/defines_6.js +2 -2
  146. package/SVF-doxygen/html/html/search/defines_7.js +5 -5
  147. package/SVF-doxygen/html/html/search/defines_8.js +11 -11
  148. package/SVF-doxygen/html/html/search/defines_9.js +9 -9
  149. package/SVF-doxygen/html/html/search/defines_a.js +2 -2
  150. package/SVF-doxygen/html/html/search/defines_b.js +1 -1
  151. package/SVF-doxygen/html/html/search/defines_c.js +3 -3
  152. package/SVF-doxygen/html/html/search/defines_d.js +2 -2
  153. package/SVF-doxygen/html/html/search/defines_e.js +7 -7
  154. package/SVF-doxygen/html/html/search/defines_f.js +3 -3
  155. package/SVF-doxygen/html/html/search/enums_0.js +3 -3
  156. package/SVF-doxygen/html/html/search/enums_1.js +2 -2
  157. package/SVF-doxygen/html/html/search/enums_10.js +1 -1
  158. package/SVF-doxygen/html/html/search/enums_11.js +1 -1
  159. package/SVF-doxygen/html/html/search/enums_2.js +8 -8
  160. package/SVF-doxygen/html/html/search/enums_3.js +1 -1
  161. package/SVF-doxygen/html/html/search/enums_4.js +3 -3
  162. package/SVF-doxygen/html/html/search/enums_5.js +1 -1
  163. package/SVF-doxygen/html/html/search/enums_6.js +2 -2
  164. package/SVF-doxygen/html/html/search/enums_7.js +2 -2
  165. package/SVF-doxygen/html/html/search/enums_8.js +4 -4
  166. package/SVF-doxygen/html/html/search/enums_9.js +1 -1
  167. package/SVF-doxygen/html/html/search/enums_a.js +1 -1
  168. package/SVF-doxygen/html/html/search/enums_b.js +7 -7
  169. package/SVF-doxygen/html/html/search/enums_c.js +1 -1
  170. package/SVF-doxygen/html/html/search/enums_d.js +4 -4
  171. package/SVF-doxygen/html/html/search/enums_e.js +2 -2
  172. package/SVF-doxygen/html/html/search/enums_f.js +4 -4
  173. package/SVF-doxygen/html/html/search/enumvalues_0.js +14 -14
  174. package/SVF-doxygen/html/html/search/enumvalues_1.js +14 -14
  175. package/SVF-doxygen/html/html/search/enumvalues_10.js +35 -35
  176. package/SVF-doxygen/html/html/search/enumvalues_11.js +3 -3
  177. package/SVF-doxygen/html/html/search/enumvalues_12.js +10 -10
  178. package/SVF-doxygen/html/html/search/enumvalues_13.js +1 -1
  179. package/SVF-doxygen/html/html/search/enumvalues_14.js +1 -1
  180. package/SVF-doxygen/html/html/search/enumvalues_15.js +3 -3
  181. package/SVF-doxygen/html/html/search/enumvalues_2.js +36 -36
  182. package/SVF-doxygen/html/html/search/enumvalues_3.js +13 -13
  183. package/SVF-doxygen/html/html/search/enumvalues_4.js +2 -2
  184. package/SVF-doxygen/html/html/search/enumvalues_5.js +47 -47
  185. package/SVF-doxygen/html/html/search/enumvalues_6.js +6 -6
  186. package/SVF-doxygen/html/html/search/enumvalues_7.js +9 -9
  187. package/SVF-doxygen/html/html/search/enumvalues_8.js +23 -23
  188. package/SVF-doxygen/html/html/search/enumvalues_9.js +6 -6
  189. package/SVF-doxygen/html/html/search/enumvalues_a.js +15 -15
  190. package/SVF-doxygen/html/html/search/enumvalues_b.js +11 -11
  191. package/SVF-doxygen/html/html/search/enumvalues_c.js +5 -5
  192. package/SVF-doxygen/html/html/search/enumvalues_d.js +18 -18
  193. package/SVF-doxygen/html/html/search/enumvalues_e.js +9 -9
  194. package/SVF-doxygen/html/html/search/enumvalues_f.js +45 -45
  195. package/SVF-doxygen/html/html/search/files_0.js +13 -13
  196. package/SVF-doxygen/html/html/search/files_1.js +7 -7
  197. package/SVF-doxygen/html/html/search/files_10.js +8 -8
  198. package/SVF-doxygen/html/html/search/files_11.js +8 -8
  199. package/SVF-doxygen/html/html/search/files_12.js +2 -2
  200. package/SVF-doxygen/html/html/search/files_2.js +49 -49
  201. package/SVF-doxygen/html/html/search/files_3.js +14 -14
  202. package/SVF-doxygen/html/html/search/files_4.js +5 -5
  203. package/SVF-doxygen/html/html/search/files_5.js +13 -13
  204. package/SVF-doxygen/html/html/search/files_6.js +9 -9
  205. package/SVF-doxygen/html/html/search/files_7.js +14 -14
  206. package/SVF-doxygen/html/html/search/files_8.js +13 -13
  207. package/SVF-doxygen/html/html/search/files_9.js +18 -18
  208. package/SVF-doxygen/html/html/search/files_a.js +3 -3
  209. package/SVF-doxygen/html/html/search/files_b.js +2 -2
  210. package/SVF-doxygen/html/html/search/files_c.js +20 -20
  211. package/SVF-doxygen/html/html/search/files_d.js +4 -4
  212. package/SVF-doxygen/html/html/search/files_e.js +62 -62
  213. package/SVF-doxygen/html/html/search/files_f.js +8 -8
  214. package/SVF-doxygen/html/html/search/functions_0.js +12 -12
  215. package/SVF-doxygen/html/html/search/functions_1.js +350 -350
  216. package/SVF-doxygen/html/html/search/functions_10.js +140 -140
  217. package/SVF-doxygen/html/html/search/functions_11.js +132 -131
  218. package/SVF-doxygen/html/html/search/functions_12.js +275 -275
  219. package/SVF-doxygen/html/html/search/functions_13.js +58 -58
  220. package/SVF-doxygen/html/html/search/functions_14.js +38 -38
  221. package/SVF-doxygen/html/html/search/functions_15.js +71 -71
  222. package/SVF-doxygen/html/html/search/functions_16.js +32 -32
  223. package/SVF-doxygen/html/html/search/functions_17.js +3 -3
  224. package/SVF-doxygen/html/html/search/functions_18.js +169 -169
  225. package/SVF-doxygen/html/html/search/functions_2.js +84 -84
  226. package/SVF-doxygen/html/html/search/functions_3.js +253 -253
  227. package/SVF-doxygen/html/html/search/functions_4.js +74 -74
  228. package/SVF-doxygen/html/html/search/functions_5.js +51 -51
  229. package/SVF-doxygen/html/html/search/functions_6.js +58 -58
  230. package/SVF-doxygen/html/html/search/functions_7.js +842 -842
  231. package/SVF-doxygen/html/html/search/functions_8.js +143 -143
  232. package/SVF-doxygen/html/html/search/functions_9.js +424 -423
  233. package/SVF-doxygen/html/html/search/functions_a.js +30 -30
  234. package/SVF-doxygen/html/html/search/functions_b.js +2 -2
  235. package/SVF-doxygen/html/html/search/functions_c.js +26 -26
  236. package/SVF-doxygen/html/html/search/functions_d.js +77 -77
  237. package/SVF-doxygen/html/html/search/functions_e.js +35 -35
  238. package/SVF-doxygen/html/html/search/functions_f.js +56 -56
  239. package/SVF-doxygen/html/html/search/namespaces_0.js +1 -1
  240. package/SVF-doxygen/html/html/search/namespaces_1.js +7 -7
  241. package/SVF-doxygen/html/html/search/related_0.js +2 -2
  242. package/SVF-doxygen/html/html/search/related_1.js +2 -2
  243. package/SVF-doxygen/html/html/search/related_2.js +2 -2
  244. package/SVF-doxygen/html/html/search/related_3.js +2 -2
  245. package/SVF-doxygen/html/html/search/related_4.js +2 -2
  246. package/SVF-doxygen/html/html/search/related_5.js +1 -1
  247. package/SVF-doxygen/html/html/search/related_6.js +2 -2
  248. package/SVF-doxygen/html/html/search/related_7.js +4 -4
  249. package/SVF-doxygen/html/html/search/related_8.js +2 -2
  250. package/SVF-doxygen/html/html/search/related_9.js +4 -4
  251. package/SVF-doxygen/html/html/search/related_a.js +19 -19
  252. package/SVF-doxygen/html/html/search/related_b.js +4 -4
  253. package/SVF-doxygen/html/html/search/related_c.js +1 -1
  254. package/SVF-doxygen/html/html/search/related_d.js +11 -11
  255. package/SVF-doxygen/html/html/search/related_e.js +2 -2
  256. package/SVF-doxygen/html/html/search/related_f.js +2 -2
  257. package/SVF-doxygen/html/html/search/typedefs_0.js +18 -18
  258. package/SVF-doxygen/html/html/search/typedefs_1.js +25 -25
  259. package/SVF-doxygen/html/html/search/typedefs_10.js +62 -62
  260. package/SVF-doxygen/html/html/search/typedefs_11.js +13 -13
  261. package/SVF-doxygen/html/html/search/typedefs_12.js +11 -11
  262. package/SVF-doxygen/html/html/search/typedefs_13.js +35 -35
  263. package/SVF-doxygen/html/html/search/typedefs_14.js +8 -8
  264. package/SVF-doxygen/html/html/search/typedefs_2.js +126 -126
  265. package/SVF-doxygen/html/html/search/typedefs_3.js +39 -39
  266. package/SVF-doxygen/html/html/search/typedefs_4.js +16 -16
  267. package/SVF-doxygen/html/html/search/typedefs_5.js +41 -41
  268. package/SVF-doxygen/html/html/search/typedefs_6.js +52 -52
  269. package/SVF-doxygen/html/html/search/typedefs_7.js +40 -40
  270. package/SVF-doxygen/html/html/search/typedefs_8.js +1 -1
  271. package/SVF-doxygen/html/html/search/typedefs_9.js +6 -6
  272. package/SVF-doxygen/html/html/search/typedefs_a.js +29 -29
  273. package/SVF-doxygen/html/html/search/typedefs_b.js +29 -29
  274. package/SVF-doxygen/html/html/search/typedefs_c.js +40 -40
  275. package/SVF-doxygen/html/html/search/typedefs_d.js +15 -15
  276. package/SVF-doxygen/html/html/search/typedefs_e.js +52 -52
  277. package/SVF-doxygen/html/html/search/typedefs_f.js +14 -14
  278. package/SVF-doxygen/html/html/search/variables_0.js +147 -147
  279. package/SVF-doxygen/html/html/search/variables_1.js +75 -75
  280. package/SVF-doxygen/html/html/search/variables_10.js +97 -97
  281. package/SVF-doxygen/html/html/search/variables_11.js +46 -46
  282. package/SVF-doxygen/html/html/search/variables_12.js +92 -92
  283. package/SVF-doxygen/html/html/search/variables_13.js +75 -75
  284. package/SVF-doxygen/html/html/search/variables_14.js +14 -14
  285. package/SVF-doxygen/html/html/search/variables_15.js +48 -48
  286. package/SVF-doxygen/html/html/search/variables_16.js +9 -9
  287. package/SVF-doxygen/html/html/search/variables_17.js +1 -1
  288. package/SVF-doxygen/html/html/search/variables_18.js +2 -2
  289. package/SVF-doxygen/html/html/search/variables_2.js +34 -34
  290. package/SVF-doxygen/html/html/search/variables_3.js +141 -141
  291. package/SVF-doxygen/html/html/search/variables_4.js +55 -55
  292. package/SVF-doxygen/html/html/search/variables_5.js +38 -38
  293. package/SVF-doxygen/html/html/search/variables_6.js +66 -66
  294. package/SVF-doxygen/html/html/search/variables_7.js +33 -33
  295. package/SVF-doxygen/html/html/search/variables_8.js +7 -7
  296. package/SVF-doxygen/html/html/search/variables_9.js +77 -77
  297. package/SVF-doxygen/html/html/search/variables_a.js +4 -4
  298. package/SVF-doxygen/html/html/search/variables_b.js +10 -10
  299. package/SVF-doxygen/html/html/search/variables_c.js +45 -45
  300. package/SVF-doxygen/html/html/search/variables_d.js +56 -56
  301. package/SVF-doxygen/html/html/search/variables_e.js +123 -123
  302. package/SVF-doxygen/html/html/search/variables_f.js +30 -30
  303. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  304. package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
  305. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  306. package/SVF-doxygen/html/html/svf-llvm_2tools_2MTA_2MTAResultValidator_8h_source.html +1 -1
  307. package/SVF-doxygen/html/html/svf_2include_2MTA_2MTAResultValidator_8h_source.html +1 -1
  308. package/package.json +1 -1
  309. package/svf/include/MemoryModel/SVFLoop.h +3 -3
  310. package/svf-llvm/include/SVF-LLVM/LLVMModule.h +0 -16
  311. package/svf-llvm/include/SVF-LLVM/LLVMUtil.h +4 -9
  312. package/svf-llvm/lib/LLVMModule.cpp +14 -4
  313. package/svf-llvm/lib/LLVMUtil.cpp +78 -1
@@ -402,154 +402,150 @@ $(function() {
402
402
  <div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;std::vector&lt;const Function *&gt; <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a47d2af43ff12d9e1014fa19256619466">getCalledFunctions</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *<a class="code" href="SVFFileSystem_8cpp.html#ab25baccb41e3b67ef0bfdaa1336c9649">F</a>);</div>
403
403
  <div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;std::vector&lt;std::string&gt; <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a8cd4d6410017b9e5f47f2f88450b78d8">getFunAnnotations</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* fun);</div>
404
404
  <div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a523a8c3f9bfaea178733822ac598d552">removeFunAnnotations</a>(std::vector&lt;Function*&gt;&amp; removedFuncList);</div>
405
- <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; </div>
406
- <div class="line"><a name="l00380"></a><span class="lineno"><a class="line" href="namespaceSVF_1_1LLVMUtil.html#a276a85b292038a197a525e08e9252c92"> 380</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a276a85b292038a197a525e08e9252c92">SVFType2ByteSize</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFType.html">SVFType</a>* <a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a>)</div>
407
- <div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;{</div>
408
- <div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">llvm::Type</a>* llvm_rhs = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a610a7777a48132caadec167c8109f044">getLLVMType</a>(<a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a>);</div>
409
- <div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> llvm_rhs_size = <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a09683d4d88a50fa621809c734465f94d">LLVMUtil::getTypeSizeInBytes</a>(llvm_rhs-&gt;getPointerElementType());</div>
410
- <div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> llvm_elem_size = -1;</div>
411
- <div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">if</span> (llvm_rhs-&gt;getPointerElementType()-&gt;isArrayTy() &amp;&amp; llvm_rhs_size &gt; 0)</div>
412
- <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; {</div>
413
- <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordtype">size_t</span> array_len = llvm_rhs-&gt;getPointerElementType()-&gt;getArrayNumElements();</div>
414
- <div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; llvm_elem_size = llvm_rhs_size / array_len;</div>
415
- <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; }</div>
416
- <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">else</span></div>
417
- <div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; {</div>
418
- <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; llvm_elem_size =llvm_rhs_size;</div>
405
+ <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#acee7c2fb08e111eda4d91ce5479de05e">isUnusedGlobalVariable</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a>&amp; global);</div>
406
+ <div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#ae2b444bb3e7a27d77386f588a78af8e2">removeUnusedGlobalVariables</a>(<a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a>* module);</div>
407
+ <div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a0ecff33105811b1e5ebc83afee76da27">removeUnusedFuncsAndAnnotationsAndGlobalVariables</a>(std::vector&lt;Function*&gt; removedFuncList);</div>
408
+ <div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; </div>
409
+ <div class="line"><a name="l00384"></a><span class="lineno"><a class="line" href="namespaceSVF_1_1LLVMUtil.html#a276a85b292038a197a525e08e9252c92"> 384</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a276a85b292038a197a525e08e9252c92">SVFType2ByteSize</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFType.html">SVFType</a>* <a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a>)</div>
410
+ <div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;{</div>
411
+ <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">llvm::Type</a>* llvm_rhs = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a610a7777a48132caadec167c8109f044">getLLVMType</a>(<a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a>);</div>
412
+ <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> llvm_rhs_size = <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a09683d4d88a50fa621809c734465f94d">LLVMUtil::getTypeSizeInBytes</a>(llvm_rhs-&gt;getPointerElementType());</div>
413
+ <div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> llvm_elem_size = -1;</div>
414
+ <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">if</span> (llvm_rhs-&gt;getPointerElementType()-&gt;isArrayTy() &amp;&amp; llvm_rhs_size &gt; 0)</div>
415
+ <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; {</div>
416
+ <div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordtype">size_t</span> array_len = llvm_rhs-&gt;getPointerElementType()-&gt;getArrayNumElements();</div>
417
+ <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; llvm_elem_size = llvm_rhs_size / array_len;</div>
419
418
  <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; }</div>
420
- <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">return</span> llvm_elem_size;</div>
421
- <div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;}</div>
422
- <div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; </div>
423
- <div class="line"><a name="l00397"></a><span class="lineno"><a class="line" href="namespaceSVF_1_1LLVMUtil.html#a74ed17168bf5946cfb3f17495ec6db99"> 397</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a74ed17168bf5946cfb3f17495ec6db99">removeUnusedFuncsAndAnnotations</a>(std::vector&lt;Function*&gt; removedFuncList)</div>
424
- <div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;{</div>
425
- <div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a523a8c3f9bfaea178733822ac598d552">LLVMUtil::removeFunAnnotations</a>(removedFuncList);</div>
426
- <div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* func : removedFuncList)</div>
427
- <div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; func-&gt;eraseFromParent();</div>
428
- <div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;}</div>
429
- <div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; </div>
430
- <div class="line"><a name="l00407"></a><span class="lineno"><a class="line" href="namespaceSVF_1_1LLVMUtil.html#a63222955897ba34e921b9cfd8a2a3619"> 407</a></span>&#160;<span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a63222955897ba34e921b9cfd8a2a3619">getFunction</a>(<span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a>&amp; <a class="code" href="cJSON_8h.html#a25d22ecc7e656d2c59332072684e8766">name</a>)</div>
431
- <div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;{</div>
432
- <div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a50fc24901350df9db890ba16a9b87e33">getSVFFunction</a>(<a class="code" href="cJSON_8h.html#a25d22ecc7e656d2c59332072684e8766">name</a>);</div>
433
- <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;}</div>
434
- <div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; </div>
435
- <div class="line"><a name="l00413"></a><span class="lineno"><a class="line" href="namespaceSVF_1_1LLVMUtil.html#a8a77403306e97ab4cb31a56d38bba5be"> 413</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a8a77403306e97ab4cb31a56d38bba5be">isConstDataOrAggData</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* val)</div>
436
- <div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;{</div>
437
- <div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1SVFUtil.html#a5c8cbc986cccb9d84f87aae162df3737">SVFUtil::isa</a>&lt;<a class="code" href="namespaceSVF.html#a7332f8059ea95472dcc231de884a5768">ConstantData</a>, <a class="code" href="namespaceSVF.html#a7cbe1c6567039e72958fd70e423d3597">ConstantAggregate</a>,</div>
438
- <div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <a class="code" href="namespaceSVF.html#a773900ea3c75022657aac1abf59fa51b">MetadataAsValue</a>, <a class="code" href="namespaceSVF.html#a956458a8554bf734db1194f320fd4b4c">BlockAddress</a>&gt;(val);</div>
439
- <div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;}</div>
440
- <div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; </div>
441
- <div class="line"><a name="l00420"></a><span class="lineno"><a class="line" href="namespaceSVF_1_1LLVMUtil.html#a9e0c786488dfdc4605d4cbcf9943c85a"> 420</a></span>&#160;<span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a9e0c786488dfdc4605d4cbcf9943c85a">getGlobalRep</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* val)</div>
442
- <div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;{</div>
443
- <div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a>* gvar = SVFUtil::dyn_cast&lt;GlobalVariable&gt;(val))</div>
444
- <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; {</div>
445
- <div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;hasGlobalRep(gvar))</div>
446
- <div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; val = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a757bf149437cce22163c764ea9993e12">getGlobalRep</a>(gvar);</div>
447
- <div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; }</div>
448
- <div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">return</span> val;</div>
449
- <div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;}</div>
450
- <div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; </div>
451
- <div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#ad8ee8de153df3f1bbdebb67185a2731c">isConstantObjSym</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* val);</div>
452
- <div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; </div>
453
- <div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#ad8ee8de153df3f1bbdebb67185a2731c">isConstantObjSym</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* val);</div>
454
- <div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; </div>
455
- <div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160;<span class="comment">// Dump Control Flow Graph of llvm function, with instructions</span></div>
456
- <div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#abc9c437b7da5cfe3d988dadfcbd0635f">viewCFG</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* fun);</div>
457
- <div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; </div>
458
- <div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160;<span class="comment">// Dump Control Flow Graph of llvm function, without instructions</span></div>
459
- <div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a2abbe4ed46b2031a981d93b3ba9d3fbd">viewCFGOnly</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* fun);</div>
460
- <div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; </div>
461
- <div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;<span class="comment">/*</span></div>
462
- <div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160;<span class="comment"> * Get the vtable struct of a class.</span></div>
463
- <div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;<span class="comment"> *</span></div>
464
- <div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160;<span class="comment"> * Given the class:</span></div>
419
+ <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">else</span></div>
420
+ <div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; {</div>
421
+ <div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; llvm_elem_size =llvm_rhs_size;</div>
422
+ <div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; }</div>
423
+ <div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">return</span> llvm_elem_size;</div>
424
+ <div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;}</div>
425
+ <div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; </div>
426
+ <div class="line"><a name="l00402"></a><span class="lineno"><a class="line" href="namespaceSVF_1_1LLVMUtil.html#a63222955897ba34e921b9cfd8a2a3619"> 402</a></span>&#160;<span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a63222955897ba34e921b9cfd8a2a3619">getFunction</a>(<span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a>&amp; <a class="code" href="cJSON_8h.html#a25d22ecc7e656d2c59332072684e8766">name</a>)</div>
427
+ <div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;{</div>
428
+ <div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a50fc24901350df9db890ba16a9b87e33">getSVFFunction</a>(<a class="code" href="cJSON_8h.html#a25d22ecc7e656d2c59332072684e8766">name</a>);</div>
429
+ <div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;}</div>
430
+ <div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; </div>
431
+ <div class="line"><a name="l00408"></a><span class="lineno"><a class="line" href="namespaceSVF_1_1LLVMUtil.html#a8a77403306e97ab4cb31a56d38bba5be"> 408</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a8a77403306e97ab4cb31a56d38bba5be">isConstDataOrAggData</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* val)</div>
432
+ <div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;{</div>
433
+ <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1SVFUtil.html#a5c8cbc986cccb9d84f87aae162df3737">SVFUtil::isa</a>&lt;<a class="code" href="namespaceSVF.html#a7332f8059ea95472dcc231de884a5768">ConstantData</a>, <a class="code" href="namespaceSVF.html#a7cbe1c6567039e72958fd70e423d3597">ConstantAggregate</a>,</div>
434
+ <div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <a class="code" href="namespaceSVF.html#a773900ea3c75022657aac1abf59fa51b">MetadataAsValue</a>, <a class="code" href="namespaceSVF.html#a956458a8554bf734db1194f320fd4b4c">BlockAddress</a>&gt;(val);</div>
435
+ <div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;}</div>
436
+ <div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; </div>
437
+ <div class="line"><a name="l00415"></a><span class="lineno"><a class="line" href="namespaceSVF_1_1LLVMUtil.html#a9e0c786488dfdc4605d4cbcf9943c85a"> 415</a></span>&#160;<span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a9e0c786488dfdc4605d4cbcf9943c85a">getGlobalRep</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* val)</div>
438
+ <div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;{</div>
439
+ <div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a>* gvar = SVFUtil::dyn_cast&lt;GlobalVariable&gt;(val))</div>
440
+ <div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; {</div>
441
+ <div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;hasGlobalRep(gvar))</div>
442
+ <div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; val = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a757bf149437cce22163c764ea9993e12">getGlobalRep</a>(gvar);</div>
443
+ <div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; }</div>
444
+ <div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">return</span> val;</div>
445
+ <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;}</div>
446
+ <div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; </div>
447
+ <div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#ad8ee8de153df3f1bbdebb67185a2731c">isConstantObjSym</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* val);</div>
448
+ <div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; </div>
449
+ <div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#ad8ee8de153df3f1bbdebb67185a2731c">isConstantObjSym</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* val);</div>
450
+ <div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; </div>
451
+ <div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;<span class="comment">// Dump Control Flow Graph of llvm function, with instructions</span></div>
452
+ <div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#abc9c437b7da5cfe3d988dadfcbd0635f">viewCFG</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* fun);</div>
453
+ <div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; </div>
454
+ <div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160;<span class="comment">// Dump Control Flow Graph of llvm function, without instructions</span></div>
455
+ <div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a2abbe4ed46b2031a981d93b3ba9d3fbd">viewCFGOnly</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* fun);</div>
456
+ <div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; </div>
457
+ <div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;<span class="comment">/*</span></div>
458
+ <div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160;<span class="comment"> * Get the vtable struct of a class.</span></div>
459
+ <div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160;<span class="comment"> *</span></div>
460
+ <div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;<span class="comment"> * Given the class:</span></div>
461
+ <div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160;<span class="comment"> *</span></div>
462
+ <div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;<span class="comment"> * class A {</span></div>
463
+ <div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160;<span class="comment"> * virtual ~A();</span></div>
464
+ <div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;<span class="comment"> * };</span></div>
465
+ <div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160;<span class="comment"> * A::~A() = default;</span></div>
465
466
  <div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;<span class="comment"> *</span></div>
466
- <div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;<span class="comment"> * class A {</span></div>
467
- <div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;<span class="comment"> * virtual ~A();</span></div>
468
- <div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;<span class="comment"> * };</span></div>
469
- <div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160;<span class="comment"> * A::~A() = default;</span></div>
470
- <div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;<span class="comment"> *</span></div>
471
- <div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;<span class="comment"> * The corresponding vtable @_ZTV1A is of type:</span></div>
467
+ <div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;<span class="comment"> * The corresponding vtable @_ZTV1A is of type:</span></div>
468
+ <div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;<span class="comment"> *</span></div>
469
+ <div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;<span class="comment"> * { [4 x i8*] }</span></div>
470
+ <div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160;<span class="comment"> *</span></div>
471
+ <div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;<span class="comment"> * If the program has been compiled with AddressSanitizer,</span></div>
472
+ <div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;<span class="comment"> * the vtable will have redzones and appear as:</span></div>
472
473
  <div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160;<span class="comment"> *</span></div>
473
- <div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;<span class="comment"> * { [4 x i8*] }</span></div>
474
+ <div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;<span class="comment"> * { { [4 x i8*] }, [32 x i8] }</span></div>
474
475
  <div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160;<span class="comment"> *</span></div>
475
- <div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;<span class="comment"> * If the program has been compiled with AddressSanitizer,</span></div>
476
- <div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;<span class="comment"> * the vtable will have redzones and appear as:</span></div>
477
- <div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;<span class="comment"> *</span></div>
478
- <div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;<span class="comment"> * { { [4 x i8*] }, [32 x i8] }</span></div>
479
- <div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;<span class="comment"> *</span></div>
480
- <div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;<span class="comment"> * See https://github.com/SVF-tools/SVF/issues/1114 for more.</span></div>
481
- <div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;<span class="comment"> */</span></div>
482
- <div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a2b28f48dde0a9a91d251e654ce1f9477">ConstantStruct</a> *<a class="code" href="namespaceSVF_1_1LLVMUtil.html#a4f803756f0a73e8564d9544ce27be1c9">getVtblStruct</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a67f3f86344f028cacfbeb08caaf7bb0f">GlobalValue</a> *vtbl);</div>
483
- <div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; </div>
484
- <div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a08fbef6fe3e2af96a49f79ce23accb01">isValVtbl</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* val);</div>
485
- <div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a45da980cb7c085942bb8e6010db9d84f">isLoadVtblInst</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5a6e8ab900d5cd17ef72661006a7fbe0">LoadInst</a>* loadInst);</div>
486
- <div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#ab1b4c565ae6be788b934defc21a5cfaf">isVirtualCallSite</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
487
- <div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a6dd1590b82d2bd86766886bd21bc2b72">isConstructor</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* <a class="code" href="SVFFileSystem_8cpp.html#ab25baccb41e3b67ef0bfdaa1336c9649">F</a>);</div>
488
- <div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a206973624fcc58e6044c884dba23a754">isDestructor</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* <a class="code" href="SVFFileSystem_8cpp.html#ab25baccb41e3b67ef0bfdaa1336c9649">F</a>);</div>
489
- <div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a47bbc0527ced570d576ccc2f9df409cb">isCPPThunkFunction</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* <a class="code" href="SVFFileSystem_8cpp.html#ab25baccb41e3b67ef0bfdaa1336c9649">F</a>);</div>
490
- <div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* <a class="code" href="namespaceSVF_1_1LLVMUtil.html#aab1cb59036d181e20a477bf1eebd81ff">getThunkTarget</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* <a class="code" href="SVFFileSystem_8cpp.html#ab25baccb41e3b67ef0bfdaa1336c9649">F</a>);</div>
491
- <div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; </div>
492
- <div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;<span class="comment">/*</span></div>
493
- <div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;<span class="comment"> * VtableA = {&amp;A::foo}</span></div>
494
- <div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;<span class="comment"> * A::A(this){</span></div>
495
- <div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;<span class="comment"> * *this = &amp;VtableA;</span></div>
496
- <div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;<span class="comment"> * }</span></div>
497
- <div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;<span class="comment"> *</span></div>
498
- <div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;<span class="comment"> *</span></div>
499
- <div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160;<span class="comment"> * A* p = new A;</span></div>
500
- <div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;<span class="comment"> * cs: p-&gt;foo(...)</span></div>
501
- <div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;<span class="comment"> * ==&gt;</span></div>
502
- <div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160;<span class="comment"> * vtptr = *p;</span></div>
503
- <div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;<span class="comment"> * vfn = &amp;vtptr[i]</span></div>
504
- <div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160;<span class="comment"> * %funp = *vfn</span></div>
505
- <div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;<span class="comment"> * call %funp(p,...)</span></div>
506
- <div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;<span class="comment"> * getConstructorThisPtr(A) return &quot;this&quot; pointer</span></div>
507
- <div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;<span class="comment"> * getVCallThisPtr(cs) return p (this pointer)</span></div>
508
- <div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;<span class="comment"> * getVCallVtblPtr(cs) return vtptr</span></div>
509
- <div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160;<span class="comment"> * getVCallIdx(cs) return i</span></div>
510
- <div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;<span class="comment"> * getClassNameFromVtblObj(VtableA) return</span></div>
511
- <div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;<span class="comment"> * getClassNameFromType(type of p) return type A</span></div>
512
- <div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;<span class="comment"> */</span></div>
513
- <div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a58cdfbc4160cae08745b67844ac29801">Argument</a>* <a class="code" href="namespaceSVF_1_1LLVMUtil.html#addcfb0135655706a86f6cc628475fccf">getConstructorThisPtr</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* fun);</div>
514
- <div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160;<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a68e7bad8eb537039559d8ddc851032e0">getVCallThisPtr</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
515
- <div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a3a23aa54459a068e16c96e5b5eb72f77">getVCallVtblPtr</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
516
- <div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160;<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a718c8ec79f36cef5df2f4530541f2770">getVCallIdx</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
517
- <div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a416bcb6da0650f546cb7d83e6be850b6">getClassNameFromType</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">Type</a>* ty);</div>
518
- <div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#aa841a295ec803b6a1f2bd248f63f863f">getClassNameOfThisPtr</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
519
- <div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a41e64f3318e2bf368eebe9a104ef6ad9">getFunNameOfVCallSite</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
520
- <div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a898e9c2ed163b618f2e86bc251131d8b">VCallInCtorOrDtor</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
521
- <div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; </div>
522
- <div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160;<span class="comment">/*</span></div>
523
- <div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;<span class="comment"> * A(A* this){</span></div>
524
- <div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;<span class="comment"> * store this this.addr;</span></div>
525
- <div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160;<span class="comment"> * tmp = load this.addr;</span></div>
526
- <div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160;<span class="comment"> * this1 = bitcast(tmp);</span></div>
527
- <div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;<span class="comment"> * B(this1);</span></div>
528
- <div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160;<span class="comment"> * }</span></div>
529
- <div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;<span class="comment"> * this and this1 are the same thisPtr in the constructor</span></div>
530
- <div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;<span class="comment"> */</span></div>
531
- <div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a8873eb1cce9496f9699eab22c4a6d3ce">isSameThisPtrInConstructor</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a58cdfbc4160cae08745b67844ac29801">Argument</a>* thisPtr1,</div>
532
- <div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* thisPtr2);</div>
533
- <div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; </div>
534
- <div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
535
- <div class="line"><a name="l00516"></a><span class="lineno"><a class="line" href="namespaceSVF_1_1LLVMUtil.html#a7b8b93fec1dc8c63c0a5837a85b99129"> 516</a></span>&#160;<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a7b8b93fec1dc8c63c0a5837a85b99129">llvmToString</a>(<span class="keyword">const</span> T&amp; val)</div>
536
- <div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160;{</div>
537
- <div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div>
538
- <div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; llvm::raw_string_ostream(str) &lt;&lt; val;</div>
539
- <div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; <span class="keywordflow">return</span> str;</div>
540
- <div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160;}</div>
541
- <div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; </div>
542
- <div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a9001722dd27bf487351725c3d7b65f2f">getSuccBBandCondValPairVec</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a412280b134578905248ce0122c5db7c9">SwitchInst</a> &amp;switchInst, <a class="code" href="namespaceSVF.html#a8de26e1810ea0c3b1e8ad62f1c8a864d">SuccBBAndCondValPairVec</a> &amp;vec);</div>
476
+ <div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;<span class="comment"> * See https://github.com/SVF-tools/SVF/issues/1114 for more.</span></div>
477
+ <div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;<span class="comment"> */</span></div>
478
+ <div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a2b28f48dde0a9a91d251e654ce1f9477">ConstantStruct</a> *<a class="code" href="namespaceSVF_1_1LLVMUtil.html#a4f803756f0a73e8564d9544ce27be1c9">getVtblStruct</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a67f3f86344f028cacfbeb08caaf7bb0f">GlobalValue</a> *vtbl);</div>
479
+ <div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; </div>
480
+ <div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a08fbef6fe3e2af96a49f79ce23accb01">isValVtbl</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* val);</div>
481
+ <div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a45da980cb7c085942bb8e6010db9d84f">isLoadVtblInst</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5a6e8ab900d5cd17ef72661006a7fbe0">LoadInst</a>* loadInst);</div>
482
+ <div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#ab1b4c565ae6be788b934defc21a5cfaf">isVirtualCallSite</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
483
+ <div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a6dd1590b82d2bd86766886bd21bc2b72">isConstructor</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* <a class="code" href="SVFFileSystem_8cpp.html#ab25baccb41e3b67ef0bfdaa1336c9649">F</a>);</div>
484
+ <div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a206973624fcc58e6044c884dba23a754">isDestructor</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* <a class="code" href="SVFFileSystem_8cpp.html#ab25baccb41e3b67ef0bfdaa1336c9649">F</a>);</div>
485
+ <div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a47bbc0527ced570d576ccc2f9df409cb">isCPPThunkFunction</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* <a class="code" href="SVFFileSystem_8cpp.html#ab25baccb41e3b67ef0bfdaa1336c9649">F</a>);</div>
486
+ <div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* <a class="code" href="namespaceSVF_1_1LLVMUtil.html#aab1cb59036d181e20a477bf1eebd81ff">getThunkTarget</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* <a class="code" href="SVFFileSystem_8cpp.html#ab25baccb41e3b67ef0bfdaa1336c9649">F</a>);</div>
487
+ <div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; </div>
488
+ <div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;<span class="comment">/*</span></div>
489
+ <div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;<span class="comment"> * VtableA = {&amp;A::foo}</span></div>
490
+ <div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;<span class="comment"> * A::A(this){</span></div>
491
+ <div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;<span class="comment"> * *this = &amp;VtableA;</span></div>
492
+ <div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;<span class="comment"> * }</span></div>
493
+ <div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;<span class="comment"> *</span></div>
494
+ <div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;<span class="comment"> *</span></div>
495
+ <div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;<span class="comment"> * A* p = new A;</span></div>
496
+ <div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;<span class="comment"> * cs: p-&gt;foo(...)</span></div>
497
+ <div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;<span class="comment"> * ==&gt;</span></div>
498
+ <div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;<span class="comment"> * vtptr = *p;</span></div>
499
+ <div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;<span class="comment"> * vfn = &amp;vtptr[i]</span></div>
500
+ <div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160;<span class="comment"> * %funp = *vfn</span></div>
501
+ <div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;<span class="comment"> * call %funp(p,...)</span></div>
502
+ <div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;<span class="comment"> * getConstructorThisPtr(A) return &quot;this&quot; pointer</span></div>
503
+ <div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160;<span class="comment"> * getVCallThisPtr(cs) return p (this pointer)</span></div>
504
+ <div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;<span class="comment"> * getVCallVtblPtr(cs) return vtptr</span></div>
505
+ <div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160;<span class="comment"> * getVCallIdx(cs) return i</span></div>
506
+ <div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;<span class="comment"> * getClassNameFromVtblObj(VtableA) return</span></div>
507
+ <div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;<span class="comment"> * getClassNameFromType(type of p) return type A</span></div>
508
+ <div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;<span class="comment"> */</span></div>
509
+ <div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a58cdfbc4160cae08745b67844ac29801">Argument</a>* <a class="code" href="namespaceSVF_1_1LLVMUtil.html#addcfb0135655706a86f6cc628475fccf">getConstructorThisPtr</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* fun);</div>
510
+ <div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160;<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a68e7bad8eb537039559d8ddc851032e0">getVCallThisPtr</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
511
+ <div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a3a23aa54459a068e16c96e5b5eb72f77">getVCallVtblPtr</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
512
+ <div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a718c8ec79f36cef5df2f4530541f2770">getVCallIdx</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
513
+ <div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a416bcb6da0650f546cb7d83e6be850b6">getClassNameFromType</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">Type</a>* ty);</div>
514
+ <div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#aa841a295ec803b6a1f2bd248f63f863f">getClassNameOfThisPtr</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
515
+ <div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160;<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a41e64f3318e2bf368eebe9a104ef6ad9">getFunNameOfVCallSite</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
516
+ <div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a898e9c2ed163b618f2e86bc251131d8b">VCallInCtorOrDtor</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">CallBase</a>* cs);</div>
517
+ <div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; </div>
518
+ <div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;<span class="comment">/*</span></div>
519
+ <div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;<span class="comment"> * A(A* this){</span></div>
520
+ <div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;<span class="comment"> * store this this.addr;</span></div>
521
+ <div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160;<span class="comment"> * tmp = load this.addr;</span></div>
522
+ <div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;<span class="comment"> * this1 = bitcast(tmp);</span></div>
523
+ <div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160;<span class="comment"> * B(this1);</span></div>
524
+ <div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;<span class="comment"> * }</span></div>
525
+ <div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;<span class="comment"> * this and this1 are the same thisPtr in the constructor</span></div>
526
+ <div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160;<span class="comment"> */</span></div>
527
+ <div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a8873eb1cce9496f9699eab22c4a6d3ce">isSameThisPtrInConstructor</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a58cdfbc4160cae08745b67844ac29801">Argument</a>* thisPtr1,</div>
528
+ <div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* thisPtr2);</div>
529
+ <div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; </div>
530
+ <div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
531
+ <div class="line"><a name="l00511"></a><span class="lineno"><a class="line" href="namespaceSVF_1_1LLVMUtil.html#a7b8b93fec1dc8c63c0a5837a85b99129"> 511</a></span>&#160;<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a7b8b93fec1dc8c63c0a5837a85b99129">llvmToString</a>(<span class="keyword">const</span> T&amp; val)</div>
532
+ <div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;{</div>
533
+ <div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div>
534
+ <div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; llvm::raw_string_ostream(str) &lt;&lt; val;</div>
535
+ <div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <span class="keywordflow">return</span> str;</div>
536
+ <div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160;}</div>
537
+ <div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; </div>
538
+ <div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a9001722dd27bf487351725c3d7b65f2f">getSuccBBandCondValPairVec</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a412280b134578905248ce0122c5db7c9">SwitchInst</a> &amp;switchInst, <a class="code" href="namespaceSVF.html#a8de26e1810ea0c3b1e8ad62f1c8a864d">SuccBBAndCondValPairVec</a> &amp;vec);</div>
539
+ <div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; </div>
540
+ <div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;<a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a33e8378ae1a911169394e545a4ba2220">getCaseValue</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a412280b134578905248ce0122c5db7c9">SwitchInst</a> &amp;switchInst, <a class="code" href="namespaceSVF.html#a255efa5be786996cbdd0c1f3d98b8400">SuccBBAndCondValPair</a> &amp;succBB2CondVal);</div>
543
541
  <div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; </div>
544
- <div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;<a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> <a class="code" href="namespaceSVF_1_1LLVMUtil.html#a33e8378ae1a911169394e545a4ba2220">getCaseValue</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a412280b134578905248ce0122c5db7c9">SwitchInst</a> &amp;switchInst, <a class="code" href="namespaceSVF.html#a255efa5be786996cbdd0c1f3d98b8400">SuccBBAndCondValPair</a> &amp;succBB2CondVal);</div>
545
- <div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; </div>
546
- <div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;} <span class="comment">// End namespace LLVMUtil</span></div>
547
- <div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; </div>
548
- <div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160;} <span class="comment">// End namespace SVF</span></div>
549
- <div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; </div>
550
- <div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* INCLUDE_SVF_FE_LLVMUTIL_H_ */</span><span class="preprocessor"></span></div>
542
+ <div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;} <span class="comment">// End namespace LLVMUtil</span></div>
543
+ <div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; </div>
544
+ <div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;} <span class="comment">// End namespace SVF</span></div>
545
+ <div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; </div>
546
+ <div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* INCLUDE_SVF_FE_LLVMUTIL_H_ */</span><span class="preprocessor"></span></div>
551
547
  </div><!-- fragment --></div><!-- contents -->
552
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a8e4add30bd0ce00d3f2aa2e31c64fef8"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a8e4add30bd0ce00d3f2aa2e31c64fef8">SVF::LLVMUtil::getSourceLoc</a></div><div class="ttdeci">const std::string getSourceLoc(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00590">LLVMUtil.cpp:590</a></div></div>
548
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a8e4add30bd0ce00d3f2aa2e31c64fef8"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a8e4add30bd0ce00d3f2aa2e31c64fef8">SVF::LLVMUtil::getSourceLoc</a></div><div class="ttdeci">const std::string getSourceLoc(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00667">LLVMUtil.cpp:667</a></div></div>
553
549
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a38ce45ae5f017c90115ce444b44d478c"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a38ce45ae5f017c90115ce444b44d478c">SVF::LLVMUtil::stripAllCasts</a></div><div class="ttdeci">const Value * stripAllCasts(const Value *val)</div><div class="ttdoc">Strip off the all casts.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00251">LLVMUtil.cpp:251</a></div></div>
554
550
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_abc9c437b7da5cfe3d988dadfcbd0635f"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#abc9c437b7da5cfe3d988dadfcbd0635f">SVF::LLVMUtil::viewCFG</a></div><div class="ttdeci">void viewCFG(const Function *fun)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00232">LLVMUtil.cpp:232</a></div></div>
555
551
  <div class="ttc" id="anamespaceSVF_html_a8de26e1810ea0c3b1e8ad62f1c8a864d"><div class="ttname"><a href="namespaceSVF.html#a8de26e1810ea0c3b1e8ad62f1c8a864d">SVF::SuccBBAndCondValPairVec</a></div><div class="ttdeci">std::vector&lt; SuccBBAndCondValPair &gt; SuccBBAndCondValPairVec</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00183">BasicTypes.h:183</a></div></div>
@@ -557,49 +553,51 @@ $(function() {
557
553
  <div class="ttc" id="anamespaceSVF_html_a773900ea3c75022657aac1abf59fa51b"><div class="ttname"><a href="namespaceSVF.html#a773900ea3c75022657aac1abf59fa51b">SVF::MetadataAsValue</a></div><div class="ttdeci">llvm::MetadataAsValue MetadataAsValue</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00100">BasicTypes.h:100</a></div></div>
558
554
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_aca11801ed6ef6ff8d2a1e85bc0fc5794"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#aca11801ed6ef6ff8d2a1e85bc0fc5794">SVF::LLVMUtil::isObject</a></div><div class="ttdeci">bool isObject(const Value *ref)</div><div class="ttdoc">Return true if this value refers to a object.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00054">LLVMUtil.cpp:54</a></div></div>
559
555
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a35b36394af726c679fe2c1b6051db7c4"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a35b36394af726c679fe2c1b6051db7c4">SVF::LLVMUtil::isBinaryConstantExpr</a></div><div class="ttdeci">const ConstantExpr * isBinaryConstantExpr(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00306">LLVMUtil.h:306</a></div></div>
560
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a08fbef6fe3e2af96a49f79ce23accb01"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a08fbef6fe3e2af96a49f79ce23accb01">SVF::LLVMUtil::isValVtbl</a></div><div class="ttdeci">bool isValVtbl(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00813">LLVMUtil.cpp:813</a></div></div>
556
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a08fbef6fe3e2af96a49f79ce23accb01"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a08fbef6fe3e2af96a49f79ce23accb01">SVF::LLVMUtil::isValVtbl</a></div><div class="ttdeci">bool isValVtbl(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00890">LLVMUtil.cpp:890</a></div></div>
561
557
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_accdd44093d6d145dc92edeaaff3f5732"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#accdd44093d6d145dc92edeaaff3f5732">SVF::LLVMUtil::processArguments</a></div><div class="ttdeci">void processArguments(int argc, char **argv, int &amp;arg_num, char **arg_value, std::vector&lt; std::string &gt; &amp;moduleNameVec)</div><div class="ttdoc">Parse argument for multi-module analysis.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00417">LLVMUtil.cpp:417</a></div></div>
562
558
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_adad59a953dd81e213db71babbbc9df2f"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#adad59a953dd81e213db71babbbc9df2f">SVF::LLVMUtil::ArgInProgEntryFunction</a></div><div class="ttdeci">bool ArgInProgEntryFunction(const Value *val)</div><div class="ttdoc">Return true if this is an argument of a program entry function (e.g. main)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00180">LLVMUtil.h:180</a></div></div>
563
- <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_a6e670254385050b9a5e612f881b07b9c"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a6e670254385050b9a5e612f881b07b9c">SVF::LLVMModuleSet::getDefinition</a></div><div class="ttdeci">const Function * getDefinition(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00292">LLVMModule.h:292</a></div></div>
559
+ <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_a6e670254385050b9a5e612f881b07b9c"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a6e670254385050b9a5e612f881b07b9c">SVF::LLVMModuleSet::getDefinition</a></div><div class="ttdeci">const Function * getDefinition(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00276">LLVMModule.h:276</a></div></div>
564
560
  <div class="ttc" id="anamespaceSVF_html_a23bf614858f168b6ad76e0233cec9965"><div class="ttname"><a href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">SVF::BasicBlock</a></div><div class="ttdeci">llvm::BasicBlock BasicBlock</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00084">BasicTypes.h:84</a></div></div>
565
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a9001722dd27bf487351725c3d7b65f2f"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a9001722dd27bf487351725c3d7b65f2f">SVF::LLVMUtil::getSuccBBandCondValPairVec</a></div><div class="ttdeci">void getSuccBBandCondValPairVec(const SwitchInst &amp;switchInst, SuccBBAndCondValPairVec &amp;vec)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01155">LLVMUtil.cpp:1155</a></div></div>
561
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a9001722dd27bf487351725c3d7b65f2f"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a9001722dd27bf487351725c3d7b65f2f">SVF::LLVMUtil::getSuccBBandCondValPairVec</a></div><div class="ttdeci">void getSuccBBandCondValPairVec(const SwitchInst &amp;switchInst, SuccBBAndCondValPairVec &amp;vec)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01232">LLVMUtil.cpp:1232</a></div></div>
566
562
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_ad56c48be3ba6ebb95416623256524097"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#ad56c48be3ba6ebb95416623256524097">SVF::LLVMUtil::getCallee</a></div><div class="ttdeci">const Function * getCallee(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00074">LLVMUtil.h:74</a></div></div>
567
563
  <div class="ttc" id="anamespaceSVF_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="BasicTypes_8h_source.html#l00065">BasicTypes.h:65</a></div></div>
568
564
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_af629cd4994be83b34a3a38464783f54e"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#af629cd4994be83b34a3a38464783f54e">SVF::LLVMUtil::getLLVMFunction</a></div><div class="ttdeci">const Function * getLLVMFunction(const Value *val)</div><div class="ttdoc">Return LLVM function if this value is.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00082">LLVMUtil.h:82</a></div></div>
569
565
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_a9815a5b31ac7dc21239d08e5b9f61106"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a9815a5b31ac7dc21239d08e5b9f61106">SVF::SVFUtil::getSVFCallSite</a></div><div class="ttdeci">CallSite getSVFCallSite(const SVFInstruction *inst)</div><div class="ttdoc">Return LLVM callsite given an instruction.</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00196">SVFUtil.h:196</a></div></div>
570
566
  <div class="ttc" id="anamespaceSVF_html_aa962cc1d782cc46553251e96b64a754b"><div class="ttname"><a href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">SVF::PointerType</a></div><div class="ttdeci">llvm::PointerType PointerType</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00094">BasicTypes.h:94</a></div></div>
571
567
  <div class="ttc" id="anamespaceSVF_html_a03db82b8a7914367024723dba4d6ca3c"><div class="ttname"><a href="namespaceSVF.html#a03db82b8a7914367024723dba4d6ca3c">SVF::DataLayout</a></div><div class="ttdeci">llvm::DataLayout DataLayout</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00106">BasicTypes.h:106</a></div></div>
572
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a898e9c2ed163b618f2e86bc251131d8b"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a898e9c2ed163b618f2e86bc251131d8b">SVF::LLVMUtil::VCallInCtorOrDtor</a></div><div class="ttdeci">bool VCallInCtorOrDtor(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01057">LLVMUtil.cpp:1057</a></div></div>
568
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a898e9c2ed163b618f2e86bc251131d8b"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a898e9c2ed163b618f2e86bc251131d8b">SVF::LLVMUtil::VCallInCtorOrDtor</a></div><div class="ttdeci">bool VCallInCtorOrDtor(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01134">LLVMUtil.cpp:1134</a></div></div>
573
569
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a07bd47ccfd02c5a2a6db26b537b2184f"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a07bd47ccfd02c5a2a6db26b537b2184f">SVF::LLVMUtil::stripConstantCasts</a></div><div class="ttdeci">const Value * stripConstantCasts(const Value *val)</div><div class="ttdoc">Strip off the constant casts.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00220">LLVMUtil.cpp:220</a></div></div>
574
570
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a2c61d741afbcfa853b505cd391f29f9b"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a2c61d741afbcfa853b505cd391f29f9b">SVF::LLVMUtil::isUncalledFunction</a></div><div class="ttdeci">bool isUncalledFunction(const Function *fun)</div><div class="ttdoc">whether this is a function without any possible caller?</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00142">LLVMUtil.cpp:142</a></div></div>
575
571
  <div class="ttc" id="anamespaceSVF_html_a412280b134578905248ce0122c5db7c9"><div class="ttname"><a href="namespaceSVF.html#a412280b134578905248ce0122c5db7c9">SVF::SwitchInst</a></div><div class="ttdeci">llvm::SwitchInst SwitchInst</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00153">BasicTypes.h:153</a></div></div>
576
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_ad8ee8de153df3f1bbdebb67185a2731c"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#ad8ee8de153df3f1bbdebb67185a2731c">SVF::LLVMUtil::isConstantObjSym</a></div><div class="ttdeci">bool isConstantObjSym(const SVFValue *val)</div><div class="ttdoc">Check whether this value points-to a constant object.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00764">LLVMUtil.cpp:764</a></div></div>
572
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_ad8ee8de153df3f1bbdebb67185a2731c"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#ad8ee8de153df3f1bbdebb67185a2731c">SVF::LLVMUtil::isConstantObjSym</a></div><div class="ttdeci">bool isConstantObjSym(const SVFValue *val)</div><div class="ttdoc">Check whether this value points-to a constant object.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00841">LLVMUtil.cpp:841</a></div></div>
577
573
  <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_a50fc24901350df9db890ba16a9b87e33"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a50fc24901350df9db890ba16a9b87e33">SVF::LLVMModuleSet::getSVFFunction</a></div><div class="ttdeci">SVFFunction * getSVFFunction(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00198">LLVMModule.h:198</a></div></div>
574
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_ae2b444bb3e7a27d77386f588a78af8e2"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#ae2b444bb3e7a27d77386f588a78af8e2">SVF::LLVMUtil::removeUnusedGlobalVariables</a></div><div class="ttdeci">void removeUnusedGlobalVariables(Module *module)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00581">LLVMUtil.cpp:581</a></div></div>
578
575
  <div class="ttc" id="anamespaceSVF_html_a90b263fd2f541eca78135078114cabda"><div class="ttname"><a href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">SVF::Value</a></div><div class="ttdeci">llvm::Value Value</div><div class="ttdoc">LLVM Basic classes.</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00080">BasicTypes.h:80</a></div></div>
579
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a41e64f3318e2bf368eebe9a104ef6ad9"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a41e64f3318e2bf368eebe9a104ef6ad9">SVF::LLVMUtil::getFunNameOfVCallSite</a></div><div class="ttdeci">std::string getFunNameOfVCallSite(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01121">LLVMUtil.cpp:1121</a></div></div>
576
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a41e64f3318e2bf368eebe9a104ef6ad9"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a41e64f3318e2bf368eebe9a104ef6ad9">SVF::LLVMUtil::getFunNameOfVCallSite</a></div><div class="ttdeci">std::string getFunNameOfVCallSite(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01198">LLVMUtil.cpp:1198</a></div></div>
580
577
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_ab2064cb70c76f399ce115f2621adea35"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#ab2064cb70c76f399ce115f2621adea35">SVF::SVFUtil::isHeapAllocExtCallViaRet</a></div><div class="ttdeci">bool isHeapAllocExtCallViaRet(const CallSite cs)</div><div class="ttdoc">interfaces to be used externally</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00442">SVFUtil.h:442</a></div></div>
581
578
  <div class="ttc" id="anamespaceSVF_html_a7cbe1c6567039e72958fd70e423d3597"><div class="ttname"><a href="namespaceSVF.html#a7cbe1c6567039e72958fd70e423d3597">SVF::ConstantAggregate</a></div><div class="ttdeci">llvm::ConstantAggregate ConstantAggregate</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00115">BasicTypes.h:115</a></div></div>
582
579
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a651b6a1cf3665277d2241220bb145aed"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a651b6a1cf3665277d2241220bb145aed">SVF::LLVMUtil::functionDoesNotRet</a></div><div class="ttdeci">bool functionDoesNotRet(const Function *fun)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00104">LLVMUtil.cpp:104</a></div></div>
583
580
  <div class="ttc" id="acJSON_8h_html_a25d22ecc7e656d2c59332072684e8766"><div class="ttname"><a href="cJSON_8h.html#a25d22ecc7e656d2c59332072684e8766">name</a></div><div class="ttdeci">const char *const name</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00264">cJSON.h:264</a></div></div>
584
581
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a47d2af43ff12d9e1014fa19256619466"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a47d2af43ff12d9e1014fa19256619466">SVF::LLVMUtil::getCalledFunctions</a></div><div class="ttdeci">std::vector&lt; const Function * &gt; getCalledFunctions(const Function *F)</div><div class="ttdoc">Get all called funcions in a parent function.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00547">LLVMUtil.cpp:547</a></div></div>
582
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a0ecff33105811b1e5ebc83afee76da27"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a0ecff33105811b1e5ebc83afee76da27">SVF::LLVMUtil::removeUnusedFuncsAndAnnotationsAndGlobalVariables</a></div><div class="ttdeci">void removeUnusedFuncsAndAnnotationsAndGlobalVariables(std::vector&lt; Function * &gt; removedFuncList)</div><div class="ttdoc">Delete unused functions, annotations and global variables in extapi.bc.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00596">LLVMUtil.cpp:596</a></div></div>
585
583
  <div class="ttc" id="anamespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00083">BasicTypes.h:83</a></div></div>
586
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a4f803756f0a73e8564d9544ce27be1c9"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a4f803756f0a73e8564d9544ce27be1c9">SVF::LLVMUtil::getVtblStruct</a></div><div class="ttdeci">const ConstantStruct * getVtblStruct(const GlobalValue *vtbl)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00800">LLVMUtil.cpp:800</a></div></div>
584
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a4f803756f0a73e8564d9544ce27be1c9"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a4f803756f0a73e8564d9544ce27be1c9">SVF::LLVMUtil::getVtblStruct</a></div><div class="ttdeci">const ConstantStruct * getVtblStruct(const GlobalValue *vtbl)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00877">LLVMUtil.cpp:877</a></div></div>
587
585
  <div class="ttc" id="anamespaceSVF_html_a1f4624771922dc8c2447ad7433588c73"><div class="ttname"><a href="namespaceSVF.html#a1f4624771922dc8c2447ad7433588c73">SVF::CallBase</a></div><div class="ttdeci">llvm::CallBase CallBase</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00144">BasicTypes.h:144</a></div></div>
588
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a33e8378ae1a911169394e545a4ba2220"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a33e8378ae1a911169394e545a4ba2220">SVF::LLVMUtil::getCaseValue</a></div><div class="ttdeci">s64_t getCaseValue(const SwitchInst &amp;switchInst, SuccBBAndCondValPair &amp;succBB2CondVal)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01165">LLVMUtil.cpp:1165</a></div></div>
586
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a33e8378ae1a911169394e545a4ba2220"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a33e8378ae1a911169394e545a4ba2220">SVF::LLVMUtil::getCaseValue</a></div><div class="ttdeci">s64_t getCaseValue(const SwitchInst &amp;switchInst, SuccBBAndCondValPair &amp;succBB2CondVal)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01242">LLVMUtil.cpp:1242</a></div></div>
589
587
  <div class="ttc" id="anamespaceSVF_html_a1d008c0666c145622b81d427be64c52d"><div class="ttname"><a href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">SVF::Type</a></div><div class="ttdeci">llvm::Type Type</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00081">BasicTypes.h:81</a></div></div>
590
588
  <div class="ttc" id="aThreadAPI_8h_html"><div class="ttname"><a href="ThreadAPI_8h.html">ThreadAPI.h</a></div></div>
591
589
  <div class="ttc" id="anamespaceSVF_html_a5a6e8ab900d5cd17ef72661006a7fbe0"><div class="ttname"><a href="namespaceSVF.html#a5a6e8ab900d5cd17ef72661006a7fbe0">SVF::LoadInst</a></div><div class="ttdeci">llvm::LoadInst LoadInst</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00147">BasicTypes.h:147</a></div></div>
592
590
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_af983b0e1fbd371d8672e8f03f63084fc"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#af983b0e1fbd371d8672e8f03f63084fc">SVF::LLVMUtil::isCastConstantExpr</a></div><div class="ttdeci">const ConstantExpr * isCastConstantExpr(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00261">LLVMUtil.h:261</a></div></div>
593
591
  <div class="ttc" id="anamespaceSVF_html_a956458a8554bf734db1194f320fd4b4c"><div class="ttname"><a href="namespaceSVF.html#a956458a8554bf734db1194f320fd4b4c">SVF::BlockAddress</a></div><div class="ttdeci">llvm::BlockAddress BlockAddress</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00089">BasicTypes.h:89</a></div></div>
594
592
  <div class="ttc" id="anamespaceSVF_html_a09f5fa3bc44bf53612a085e3a611cc4e"><div class="ttname"><a href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">SVF::GlobalVariable</a></div><div class="ttdeci">llvm::GlobalVariable GlobalVariable</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00128">BasicTypes.h:128</a></div></div>
595
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a63222955897ba34e921b9cfd8a2a3619"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a63222955897ba34e921b9cfd8a2a3619">SVF::LLVMUtil::getFunction</a></div><div class="ttdeci">const SVFFunction * getFunction(const std::string &amp;name)</div><div class="ttdoc">Get the corresponding Function based on its name.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00407">LLVMUtil.h:407</a></div></div>
593
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a63222955897ba34e921b9cfd8a2a3619"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a63222955897ba34e921b9cfd8a2a3619">SVF::LLVMUtil::getFunction</a></div><div class="ttdeci">const SVFFunction * getFunction(const std::string &amp;name)</div><div class="ttdoc">Get the corresponding Function based on its name.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00402">LLVMUtil.h:402</a></div></div>
596
594
  <div class="ttc" id="aSVFUtil_8h_html"><div class="ttname"><a href="SVFUtil_8h.html">SVFUtil.h</a></div></div>
597
595
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a837d19c740902c419206287bdb21273b"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a837d19c740902c419206287bdb21273b">SVF::LLVMUtil::getUniqueUseViaCastInst</a></div><div class="ttdeci">const Value * getUniqueUseViaCastInst(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00337">LLVMUtil.cpp:337</a></div></div>
598
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_addcfb0135655706a86f6cc628475fccf"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#addcfb0135655706a86f6cc628475fccf">SVF::LLVMUtil::getConstructorThisPtr</a></div><div class="ttdeci">const Argument * getConstructorThisPtr(const Function *fun)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00962">LLVMUtil.cpp:962</a></div></div>
599
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a68e7bad8eb537039559d8ddc851032e0"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a68e7bad8eb537039559d8ddc851032e0">SVF::LLVMUtil::getVCallThisPtr</a></div><div class="ttdeci">const Value * getVCallThisPtr(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00912">LLVMUtil.cpp:912</a></div></div>
596
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_addcfb0135655706a86f6cc628475fccf"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#addcfb0135655706a86f6cc628475fccf">SVF::LLVMUtil::getConstructorThisPtr</a></div><div class="ttdeci">const Argument * getConstructorThisPtr(const Function *fun)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01039">LLVMUtil.cpp:1039</a></div></div>
597
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a68e7bad8eb537039559d8ddc851032e0"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a68e7bad8eb537039559d8ddc851032e0">SVF::LLVMUtil::getVCallThisPtr</a></div><div class="ttdeci">const Value * getVCallThisPtr(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00989">LLVMUtil.cpp:989</a></div></div>
600
598
  <div class="ttc" id="aclassSVF_1_1SVFValue_html"><div class="ttname"><a href="classSVF_1_1SVFValue.html">SVF::SVFValue</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00150">SVFValue.h:150</a></div></div>
601
599
  <div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
602
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a8873eb1cce9496f9699eab22c4a6d3ce"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a8873eb1cce9496f9699eab22c4a6d3ce">SVF::LLVMUtil::isSameThisPtrInConstructor</a></div><div class="ttdeci">bool isSameThisPtrInConstructor(const Argument *thisPtr1, const Value *thisPtr2)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00938">LLVMUtil.cpp:938</a></div></div>
600
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a8873eb1cce9496f9699eab22c4a6d3ce"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a8873eb1cce9496f9699eab22c4a6d3ce">SVF::LLVMUtil::isSameThisPtrInConstructor</a></div><div class="ttdeci">bool isSameThisPtrInConstructor(const Argument *thisPtr1, const Value *thisPtr2)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01015">LLVMUtil.cpp:1015</a></div></div>
603
601
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a07c785d931cef3c61e3dab4c615770be"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a07c785d931cef3c61e3dab4c615770be">SVF::LLVMUtil::isPtrInUncalledFunction</a></div><div class="ttdeci">bool isPtrInUncalledFunction(const Value *value)</div><div class="ttdoc">Return true if this is value in a dead function (function without any caller)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00175">LLVMUtil.cpp:175</a></div></div>
604
602
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_ac9d6aff1a5e778e45c51b4f3b6d787e0"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#ac9d6aff1a5e778e45c51b4f3b6d787e0">SVF::LLVMUtil::isProgEntryFunction</a></div><div class="ttdeci">bool isProgEntryFunction(const Function *fun)</div><div class="ttdoc">Check whether a function is an entry function (i.e., main)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00102">LLVMUtil.h:102</a></div></div>
605
603
  <div class="ttc" id="acJSON_8cpp_html_a3f9a0d3265a6254722587175dac3e4dc"><div class="ttname"><a href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a></div><div class="ttdeci">newitem type</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l02739">cJSON.cpp:2739</a></div></div>
@@ -607,9 +605,9 @@ $(function() {
607
605
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_aedfa6e9216c6c788c26aef1967689b76"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aedfa6e9216c6c788c26aef1967689b76">SVF::SVFUtil::isHeapAllocExtCallViaArg</a></div><div class="ttdeci">bool isHeapAllocExtCallViaArg(const CallSite cs)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00431">SVFUtil.h:431</a></div></div>
608
606
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a76b0d0ac69c170838cfc8ee26f4518a0"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a76b0d0ac69c170838cfc8ee26f4518a0">SVF::LLVMUtil::getProgFunction</a></div><div class="ttdeci">const Function * getProgFunction(const std::string &amp;funName)</div><div class="ttdoc">Get program entry function from module.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00088">LLVMUtil.h:88</a></div></div>
609
607
  <div class="ttc" id="anamespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00085">BasicTypes.h:85</a></div></div>
610
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a3a23aa54459a068e16c96e5b5eb72f77"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a3a23aa54459a068e16c96e5b5eb72f77">SVF::LLVMUtil::getVCallVtblPtr</a></div><div class="ttdeci">const Value * getVCallVtblPtr(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01041">LLVMUtil.cpp:1041</a></div></div>
608
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a3a23aa54459a068e16c96e5b5eb72f77"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a3a23aa54459a068e16c96e5b5eb72f77">SVF::LLVMUtil::getVCallVtblPtr</a></div><div class="ttdeci">const Value * getVCallVtblPtr(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01118">LLVMUtil.cpp:1118</a></div></div>
611
609
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a946a2b51b848c45c6c52f03581ee05b8"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a946a2b51b848c45c6c52f03581ee05b8">SVF::LLVMUtil::isTruncConstantExpr</a></div><div class="ttdeci">const ConstantExpr * isTruncConstantExpr(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00281">LLVMUtil.h:281</a></div></div>
612
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a8a77403306e97ab4cb31a56d38bba5be"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a8a77403306e97ab4cb31a56d38bba5be">SVF::LLVMUtil::isConstDataOrAggData</a></div><div class="ttdeci">bool isConstDataOrAggData(const Value *val)</div><div class="ttdoc">Return true if the value refers to constant data, e.g., i32 0.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00413">LLVMUtil.h:413</a></div></div>
610
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a8a77403306e97ab4cb31a56d38bba5be"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a8a77403306e97ab4cb31a56d38bba5be">SVF::LLVMUtil::isConstDataOrAggData</a></div><div class="ttdeci">bool isConstDataOrAggData(const Value *val)</div><div class="ttdoc">Return true if the value refers to constant data, e.g., i32 0.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00408">LLVMUtil.h:408</a></div></div>
613
611
  <div class="ttc" id="anamespaceSVF_html_a2bf58575ac7d068e0f1a4cf953b9e6cb"><div class="ttname"><a href="namespaceSVF.html#a2bf58575ac7d068e0f1a4cf953b9e6cb">SVF::StructType</a></div><div class="ttdeci">llvm::StructType StructType</div><div class="ttdoc">LLVM types.</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00092">BasicTypes.h:92</a></div></div>
614
612
  <div class="ttc" id="anamespaceSVF_html_a2b28f48dde0a9a91d251e654ce1f9477"><div class="ttname"><a href="namespaceSVF.html#a2b28f48dde0a9a91d251e654ce1f9477">SVF::ConstantStruct</a></div><div class="ttdeci">llvm::ConstantStruct ConstantStruct</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00104">BasicTypes.h:104</a></div></div>
615
613
  <div class="ttc" id="aclassSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00270">SVFValue.h:270</a></div></div>
@@ -617,40 +615,40 @@ $(function() {
617
615
  <div class="ttc" id="aBasicTypes_8h_html"><div class="ttname"><a href="BasicTypes_8h.html">BasicTypes.h</a></div></div>
618
616
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_ae59b0dc7f29dbd2018e819f77465f66e"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#ae59b0dc7f29dbd2018e819f77465f66e">SVF::LLVMUtil::isSelectConstantExpr</a></div><div class="ttdeci">const ConstantExpr * isSelectConstantExpr(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00271">LLVMUtil.h:271</a></div></div>
619
617
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a523a8c3f9bfaea178733822ac598d552"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a523a8c3f9bfaea178733822ac598d552">SVF::LLVMUtil::removeFunAnnotations</a></div><div class="ttdeci">void removeFunAnnotations(std::vector&lt; Function * &gt; &amp;removedFuncList)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00485">LLVMUtil.cpp:485</a></div></div>
620
- <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_a32558da64f03452c502ec57d1e106427"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">SVF::LLVMModuleSet::hasDefinition</a></div><div class="ttdeci">bool hasDefinition(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00285">LLVMModule.h:285</a></div></div>
621
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a206973624fcc58e6044c884dba23a754"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a206973624fcc58e6044c884dba23a754">SVF::LLVMUtil::isDestructor</a></div><div class="ttdeci">bool isDestructor(const Function *F)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01002">LLVMUtil.cpp:1002</a></div></div>
618
+ <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_a32558da64f03452c502ec57d1e106427"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">SVF::LLVMModuleSet::hasDefinition</a></div><div class="ttdeci">bool hasDefinition(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00269">LLVMModule.h:269</a></div></div>
619
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a206973624fcc58e6044c884dba23a754"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a206973624fcc58e6044c884dba23a754">SVF::LLVMUtil::isDestructor</a></div><div class="ttdeci">bool isDestructor(const Function *F)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01079">LLVMUtil.cpp:1079</a></div></div>
622
620
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a151fd7fb2b2ebe72af7c417defbb4f4d"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a151fd7fb2b2ebe72af7c417defbb4f4d">SVF::LLVMUtil::getDataLayout</a></div><div class="ttdeci">static DataLayout * getDataLayout(Module *mod)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00329">LLVMUtil.h:329</a></div></div>
623
621
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_adfa4a4e6d13004d14137d9168bd32463"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#adfa4a4e6d13004d14137d9168bd32463">SVF::LLVMUtil::isInt2PtrConstantExpr</a></div><div class="ttdeci">const ConstantExpr * isInt2PtrConstantExpr(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00241">LLVMUtil.h:241</a></div></div>
624
622
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a2834d135a2385efff783e6e22d2eff1f"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a2834d135a2385efff783e6e22d2eff1f">SVF::LLVMUtil::isPtr2IntConstantExpr</a></div><div class="ttdeci">const ConstantExpr * isPtr2IntConstantExpr(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00251">LLVMUtil.h:251</a></div></div>
625
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a9e0c786488dfdc4605d4cbcf9943c85a"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a9e0c786488dfdc4605d4cbcf9943c85a">SVF::LLVMUtil::getGlobalRep</a></div><div class="ttdeci">const Value * getGlobalRep(const Value *val)</div><div class="ttdoc">find the unique defined global across multiple modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00420">LLVMUtil.h:420</a></div></div>
623
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a9e0c786488dfdc4605d4cbcf9943c85a"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a9e0c786488dfdc4605d4cbcf9943c85a">SVF::LLVMUtil::getGlobalRep</a></div><div class="ttdeci">const Value * getGlobalRep(const Value *val)</div><div class="ttdoc">find the unique defined global across multiple modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00415">LLVMUtil.h:415</a></div></div>
626
624
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a0095d23a9c9d5d62ec4a23c56824b5f0"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a0095d23a9c9d5d62ec4a23c56824b5f0">SVF::LLVMUtil::getLLVMCallSite</a></div><div class="ttdeci">const CallBase * getLLVMCallSite(const Value *value)</div><div class="ttdoc">Return LLVM callsite given a value.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00068">LLVMUtil.h:68</a></div></div>
627
625
  <div class="ttc" id="anamespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
628
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_ab1b4c565ae6be788b934defc21a5cfaf"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#ab1b4c565ae6be788b934defc21a5cfaf">SVF::LLVMUtil::isVirtualCallSite</a></div><div class="ttdeci">bool isVirtualCallSite(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00853">LLVMUtil.cpp:853</a></div></div>
626
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_ab1b4c565ae6be788b934defc21a5cfaf"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#ab1b4c565ae6be788b934defc21a5cfaf">SVF::LLVMUtil::isVirtualCallSite</a></div><div class="ttdeci">bool isVirtualCallSite(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00930">LLVMUtil.cpp:930</a></div></div>
629
627
  <div class="ttc" id="anamespaceSVF_html_a9b707002523ece2ac54ca893ee9a2d4e"><div class="ttname"><a href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">SVF::s32_t</a></div><div class="ttdeci">signed s32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00052">SVFType.h:52</a></div></div>
630
628
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a428bd75b33fab60988d8758090712f29"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a428bd75b33fab60988d8758090712f29">SVF::LLVMUtil::isArgOfUncalledFunction</a></div><div class="ttdeci">bool isArgOfUncalledFunction(const Value *val)</div><div class="ttdoc">Return true if the argument in a function does not have a caller.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00201">LLVMUtil.h:201</a></div></div>
631
629
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_a73215bac62f1340a58f6c7f2ba9b0e7b"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a73215bac62f1340a58f6c7f2ba9b0e7b">SVF::SVFUtil::getHeapAllocHoldingArgPosition</a></div><div class="ttdeci">int getHeapAllocHoldingArgPosition(const SVFFunction *fun)</div><div class="ttdoc">Get the position of argument that holds an allocated heap object.</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00340">SVFUtil.h:340</a></div></div>
632
630
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_a5c8cbc986cccb9d84f87aae162df3737"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a5c8cbc986cccb9d84f87aae162df3737">SVF::SVFUtil::isa</a></div><div class="ttdeci">LLVM_NODISCARD bool isa(const Y &amp;Val)</div><div class="ttdef"><b>Definition:</b> <a href="Casting_8h_source.html#l00241">Casting.h:241</a></div></div>
633
- <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_a610a7777a48132caadec167c8109f044"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a610a7777a48132caadec167c8109f044">SVF::LLVMModuleSet::getLLVMType</a></div><div class="ttdeci">const Type * getLLVMType(const SVFType *T) const</div><div class="ttdoc">Get LLVM Type.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l01168">LLVMModule.cpp:1168</a></div></div>
634
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a74ed17168bf5946cfb3f17495ec6db99"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a74ed17168bf5946cfb3f17495ec6db99">SVF::LLVMUtil::removeUnusedFuncsAndAnnotations</a></div><div class="ttdeci">void removeUnusedFuncsAndAnnotations(std::vector&lt; Function * &gt; removedFuncList)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00397">LLVMUtil.h:397</a></div></div>
631
+ <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_a610a7777a48132caadec167c8109f044"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a610a7777a48132caadec167c8109f044">SVF::LLVMModuleSet::getLLVMType</a></div><div class="ttdeci">const Type * getLLVMType(const SVFType *T) const</div><div class="ttdoc">Get LLVM Type.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l01178">LLVMModule.cpp:1178</a></div></div>
635
632
  <div class="ttc" id="aLLVMModule_8h_html"><div class="ttname"><a href="LLVMModule_8h.html">LLVMModule.h</a></div></div>
636
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_aa841a295ec803b6a1f2bd248f63f863f"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#aa841a295ec803b6a1f2bd248f63f863f">SVF::LLVMUtil::getClassNameOfThisPtr</a></div><div class="ttdeci">std::string getClassNameOfThisPtr(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01094">LLVMUtil.cpp:1094</a></div></div>
633
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_aa841a295ec803b6a1f2bd248f63f863f"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#aa841a295ec803b6a1f2bd248f63f863f">SVF::LLVMUtil::getClassNameOfThisPtr</a></div><div class="ttdeci">std::string getClassNameOfThisPtr(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01171">LLVMUtil.cpp:1171</a></div></div>
637
634
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a5cbde00eef789f682df972ae71b44449"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a5cbde00eef789f682df972ae71b44449">SVF::LLVMUtil::ArgInDeadFunction</a></div><div class="ttdeci">bool ArgInDeadFunction(const Value *val)</div><div class="ttdoc">whether this is an argument in dead function</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00172">LLVMUtil.h:172</a></div></div>
638
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a276a85b292038a197a525e08e9252c92"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a276a85b292038a197a525e08e9252c92">SVF::LLVMUtil::SVFType2ByteSize</a></div><div class="ttdeci">u32_t SVFType2ByteSize(const SVFType *type)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00380">LLVMUtil.h:380</a></div></div>
635
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_acee7c2fb08e111eda4d91ce5479de05e"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#acee7c2fb08e111eda4d91ce5479de05e">SVF::LLVMUtil::isUnusedGlobalVariable</a></div><div class="ttdeci">bool isUnusedGlobalVariable(const GlobalVariable &amp;global)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00566">LLVMUtil.cpp:566</a></div></div>
636
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a276a85b292038a197a525e08e9252c92"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a276a85b292038a197a525e08e9252c92">SVF::LLVMUtil::SVFType2ByteSize</a></div><div class="ttdeci">u32_t SVFType2ByteSize(const SVFType *type)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00384">LLVMUtil.h:384</a></div></div>
639
637
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a3d34fcdfc98add848a34fd5259c11eb2"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a3d34fcdfc98add848a34fd5259c11eb2">SVF::LLVMUtil::getDefFunForMultipleModule</a></div><div class="ttdeci">const Function * getDefFunForMultipleModule(const Function *fun)</div><div class="ttdoc">Get the definition of a function across multiple modules.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00057">LLVMUtil.h:57</a></div></div>
640
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a47bbc0527ced570d576ccc2f9df409cb"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a47bbc0527ced570d576ccc2f9df409cb">SVF::LLVMUtil::isCPPThunkFunction</a></div><div class="ttdeci">bool isCPPThunkFunction(const Function *F)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00884">LLVMUtil.cpp:884</a></div></div>
638
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a47bbc0527ced570d576ccc2f9df409cb"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a47bbc0527ced570d576ccc2f9df409cb">SVF::LLVMUtil::isCPPThunkFunction</a></div><div class="ttdeci">bool isCPPThunkFunction(const Function *F)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00961">LLVMUtil.cpp:961</a></div></div>
641
639
  <div class="ttc" id="aclassSVF_1_1CallSite_html"><div class="ttname"><a href="classSVF_1_1CallSite.html">SVF::CallSite</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l01075">SVFValue.h:1075</a></div></div>
642
640
  <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html">SVF::LLVMModuleSet</a></div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00044">LLVMModule.h:44</a></div></div>
643
641
  <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_ae74f307b6f96950ceedb2c375ef1c3a3"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae74f307b6f96950ceedb2c375ef1c3a3">SVF::LLVMModuleSet::getSVFInstruction</a></div><div class="ttdeci">SVFInstruction * getSVFInstruction(const Instruction *inst) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00212">LLVMModule.h:212</a></div></div>
644
642
  <div class="ttc" id="anamespaceSVF_html_a67f3f86344f028cacfbeb08caaf7bb0f"><div class="ttname"><a href="namespaceSVF.html#a67f3f86344f028cacfbeb08caaf7bb0f">SVF::GlobalValue</a></div><div class="ttdeci">llvm::GlobalValue GlobalValue</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00086">BasicTypes.h:86</a></div></div>
645
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a2b32283ee2dbb9cef1d17ab6f2719e0c"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a2b32283ee2dbb9cef1d17ab6f2719e0c">SVF::LLVMUtil::getSourceLocOfFunction</a></div><div class="ttdeci">const std::string getSourceLocOfFunction(const Function *F)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00694">LLVMUtil.cpp:694</a></div></div>
646
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_aab1cb59036d181e20a477bf1eebd81ff"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#aab1cb59036d181e20a477bf1eebd81ff">SVF::LLVMUtil::getThunkTarget</a></div><div class="ttdeci">const Function * getThunkTarget(const Function *F)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00890">LLVMUtil.cpp:890</a></div></div>
643
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a2b32283ee2dbb9cef1d17ab6f2719e0c"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a2b32283ee2dbb9cef1d17ab6f2719e0c">SVF::LLVMUtil::getSourceLocOfFunction</a></div><div class="ttdeci">const std::string getSourceLocOfFunction(const Function *F)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00771">LLVMUtil.cpp:771</a></div></div>
644
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_aab1cb59036d181e20a477bf1eebd81ff"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#aab1cb59036d181e20a477bf1eebd81ff">SVF::LLVMUtil::getThunkTarget</a></div><div class="ttdeci">const Function * getThunkTarget(const Function *F)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00967">LLVMUtil.cpp:967</a></div></div>
647
645
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_ae368713463c84425f9a1ad27ff401a47"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#ae368713463c84425f9a1ad27ff401a47">SVF::LLVMUtil::getTypeOfHeapAlloc</a></div><div class="ttdeci">const Type * getTypeOfHeapAlloc(const Instruction *inst)</div><div class="ttdoc">Get the type of the heap allocation.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00356">LLVMUtil.cpp:356</a></div></div>
648
646
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a9bd6f54920929e5ad35102ba2f2223da"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a9bd6f54920929e5ad35102ba2f2223da">SVF::LLVMUtil::getFunReachableBBs</a></div><div class="ttdeci">void getFunReachableBBs(const Function *svfFun, std::vector&lt; const SVFBasicBlock * &gt; &amp;bbs)</div><div class="ttdoc">Get reachable basic block from function entry.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00069">LLVMUtil.cpp:69</a></div></div>
649
647
  <div class="ttc" id="anamespaceSVF_html_a911dbaab38cb42deb9c195c7f687853d"><div class="ttname"><a href="namespaceSVF.html#a911dbaab38cb42deb9c195c7f687853d">SVF::ConstantExpr</a></div><div class="ttdeci">llvm::ConstantExpr ConstantExpr</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00118">BasicTypes.h:118</a></div></div>
650
648
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a2abbe4ed46b2031a981d93b3ba9d3fbd"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a2abbe4ed46b2031a981d93b3ba9d3fbd">SVF::LLVMUtil::viewCFGOnly</a></div><div class="ttdeci">void viewCFGOnly(const Function *fun)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00240">LLVMUtil.cpp:240</a></div></div>
651
649
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a4c94a6c02fb89c1a1604c87414956acd"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a4c94a6c02fb89c1a1604c87414956acd">SVF::LLVMUtil::getPrevInsts</a></div><div class="ttdeci">void getPrevInsts(const Instruction *curInst, std::vector&lt; const SVFInstruction * &gt; &amp;instList)</div><div class="ttdoc">Get the previous instructions following control flow.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00304">LLVMUtil.cpp:304</a></div></div>
652
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a7b8b93fec1dc8c63c0a5837a85b99129"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a7b8b93fec1dc8c63c0a5837a85b99129">SVF::LLVMUtil::llvmToString</a></div><div class="ttdeci">std::string llvmToString(const T &amp;val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00516">LLVMUtil.h:516</a></div></div>
653
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a45da980cb7c085942bb8e6010db9d84f"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a45da980cb7c085942bb8e6010db9d84f">SVF::LLVMUtil::isLoadVtblInst</a></div><div class="ttdeci">bool isLoadVtblInst(const LoadInst *loadInst)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00822">LLVMUtil.cpp:822</a></div></div>
650
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a7b8b93fec1dc8c63c0a5837a85b99129"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a7b8b93fec1dc8c63c0a5837a85b99129">SVF::LLVMUtil::llvmToString</a></div><div class="ttdeci">std::string llvmToString(const T &amp;val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00511">LLVMUtil.h:511</a></div></div>
651
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a45da980cb7c085942bb8e6010db9d84f"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a45da980cb7c085942bb8e6010db9d84f">SVF::LLVMUtil::isLoadVtblInst</a></div><div class="ttdeci">bool isLoadVtblInst(const LoadInst *loadInst)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00899">LLVMUtil.cpp:899</a></div></div>
654
652
  <div class="ttc" id="aSVFFileSystem_8cpp_html_ab25baccb41e3b67ef0bfdaa1336c9649"><div class="ttname"><a href="SVFFileSystem_8cpp.html#ab25baccb41e3b67ef0bfdaa1336c9649">F</a></div><div class="ttdeci">#define F(f)</div></div>
655
653
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a6c5f2f951463494af2e7b0d3267f2772"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a6c5f2f951463494af2e7b0d3267f2772">SVF::LLVMUtil::getRefTypeOfHeapAllocOrStatic</a></div><div class="ttdeci">const PointerType * getRefTypeOfHeapAllocOrStatic(const CallBase *cs)</div><div class="ttdoc">Get the reference type of heap/static object from an allocation site.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00131">LLVMUtil.h:131</a></div></div>
656
654
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_ab5fc50624b5fe83b676b14bec4b99685"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#ab5fc50624b5fe83b676b14bec4b99685">SVF::LLVMUtil::isGepConstantExpr</a></div><div class="ttdeci">const ConstantExpr * isGepConstantExpr(const Value *val)</div><div class="ttdoc">Return corresponding constant expression, otherwise return nullptr.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00231">LLVMUtil.h:231</a></div></div>
@@ -666,18 +664,18 @@ $(function() {
666
664
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a003b769751b93b94bdb011bd704cfde1"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a003b769751b93b94bdb011bd704cfde1">SVF::LLVMUtil::isIntrinsicInst</a></div><div class="ttdeci">bool isIntrinsicInst(const Instruction *inst)</div><div class="ttdoc">Return true if it is an intrinsic instruction.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00204">LLVMUtil.cpp:204</a></div></div>
667
665
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a8cd4d6410017b9e5f47f2f88450b78d8"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a8cd4d6410017b9e5f47f2f88450b78d8">SVF::LLVMUtil::getFunAnnotations</a></div><div class="ttdeci">std::vector&lt; std::string &gt; getFunAnnotations(const Function *fun)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00444">LLVMUtil.cpp:444</a></div></div>
668
666
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_abf4e75ba6236136399d45c85be2328fe"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#abf4e75ba6236136399d45c85be2328fe">SVF::LLVMUtil::isBlackholeSym</a></div><div class="ttdeci">bool isBlackholeSym(const Value *val)</div><div class="ttdoc">Check whether this value is a black hole.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00108">LLVMUtil.h:108</a></div></div>
669
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a09683d4d88a50fa621809c734465f94d"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a09683d4d88a50fa621809c734465f94d">SVF::LLVMUtil::getTypeSizeInBytes</a></div><div class="ttdeci">u32_t getTypeSizeInBytes(const Type *type)</div><div class="ttdoc">Helper method to get the size of the type from target data layout.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00566">LLVMUtil.cpp:566</a></div></div>
667
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a09683d4d88a50fa621809c734465f94d"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a09683d4d88a50fa621809c734465f94d">SVF::LLVMUtil::getTypeSizeInBytes</a></div><div class="ttdeci">u32_t getTypeSizeInBytes(const Type *type)</div><div class="ttdoc">Helper method to get the size of the type from target data layout.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00644">LLVMUtil.cpp:644</a></div></div>
670
668
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_aa0b3e34188f721ff7145e47cb607c79a"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#aa0b3e34188f721ff7145e47cb607c79a">SVF::LLVMUtil::isCmpConstantExpr</a></div><div class="ttdeci">const ConstantExpr * isCmpConstantExpr(const Value *val)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00295">LLVMUtil.h:295</a></div></div>
671
669
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_abba4111230f6009bbf50518ee36a9870"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#abba4111230f6009bbf50518ee36a9870">SVF::LLVMUtil::getPtrElementType</a></div><div class="ttdeci">static Type * getPtrElementType(const PointerType *pty)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00119">LLVMUtil.h:119</a></div></div>
672
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a718c8ec79f36cef5df2f4530541f2770"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a718c8ec79f36cef5df2f4530541f2770">SVF::LLVMUtil::getVCallIdx</a></div><div class="ttdeci">s32_t getVCallIdx(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01132">LLVMUtil.cpp:1132</a></div></div>
670
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a718c8ec79f36cef5df2f4530541f2770"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a718c8ec79f36cef5df2f4530541f2770">SVF::LLVMUtil::getVCallIdx</a></div><div class="ttdeci">s32_t getVCallIdx(const CallBase *cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01209">LLVMUtil.cpp:1209</a></div></div>
673
671
  <div class="ttc" id="anamespaceSVF_html_a7332f8059ea95472dcc231de884a5768"><div class="ttname"><a href="namespaceSVF.html#a7332f8059ea95472dcc231de884a5768">SVF::ConstantData</a></div><div class="ttdeci">llvm::ConstantData ConstantData</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00114">BasicTypes.h:114</a></div></div>
674
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a6dd1590b82d2bd86766886bd21bc2b72"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a6dd1590b82d2bd86766886bd21bc2b72">SVF::LLVMUtil::isConstructor</a></div><div class="ttdeci">bool isConstructor(const Function *F)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00971">LLVMUtil.cpp:971</a></div></div>
672
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a6dd1590b82d2bd86766886bd21bc2b72"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a6dd1590b82d2bd86766886bd21bc2b72">SVF::LLVMUtil::isConstructor</a></div><div class="ttdeci">bool isConstructor(const Function *F)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01048">LLVMUtil.cpp:1048</a></div></div>
675
673
  <div class="ttc" id="anamespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00051">SVFType.h:51</a></div></div>
676
674
  <div class="ttc" id="anamespaceSVF_html_a58cdfbc4160cae08745b67844ac29801"><div class="ttname"><a href="namespaceSVF.html#a58cdfbc4160cae08745b67844ac29801">SVF::Argument</a></div><div class="ttdeci">llvm::Argument Argument</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00143">BasicTypes.h:143</a></div></div>
677
675
  <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a847fb0c433b5d3611151636ca4bc5bc5"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a847fb0c433b5d3611151636ca4bc5bc5">SVF::LLVMUtil::isNullPtrSym</a></div><div class="ttdeci">bool isNullPtrSym(const Value *val)</div><div class="ttdoc">Check whether this value is a black hole.</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00114">LLVMUtil.h:114</a></div></div>
678
- <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_a757bf149437cce22163c764ea9993e12"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a757bf149437cce22163c764ea9993e12">SVF::LLVMModuleSet::getGlobalRep</a></div><div class="ttdeci">GlobalVariable * getGlobalRep(const GlobalVariable *val) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00331">LLVMModule.h:331</a></div></div>
676
+ <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_a757bf149437cce22163c764ea9993e12"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a757bf149437cce22163c764ea9993e12">SVF::LLVMModuleSet::getGlobalRep</a></div><div class="ttdeci">GlobalVariable * getGlobalRep(const GlobalVariable *val) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00315">LLVMModule.h:315</a></div></div>
679
677
  <div class="ttc" id="anamespaceSVF_html_a255efa5be786996cbdd0c1f3d98b8400"><div class="ttname"><a href="namespaceSVF.html#a255efa5be786996cbdd0c1f3d98b8400">SVF::SuccBBAndCondValPair</a></div><div class="ttdeci">std::pair&lt; const BasicBlock *, const ConstantInt * &gt; SuccBBAndCondValPair</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00182">BasicTypes.h:182</a></div></div>
680
- <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a416bcb6da0650f546cb7d83e6be850b6"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a416bcb6da0650f546cb7d83e6be850b6">SVF::LLVMUtil::getClassNameFromType</a></div><div class="ttdeci">std::string getClassNameFromType(const Type *ty)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01070">LLVMUtil.cpp:1070</a></div></div>
678
+ <div class="ttc" id="anamespaceSVF_1_1LLVMUtil_html_a416bcb6da0650f546cb7d83e6be850b6"><div class="ttname"><a href="namespaceSVF_1_1LLVMUtil.html#a416bcb6da0650f546cb7d83e6be850b6">SVF::LLVMUtil::getClassNameFromType</a></div><div class="ttdeci">std::string getClassNameFromType(const Type *ty)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01147">LLVMUtil.cpp:1147</a></div></div>
681
679
  <!-- start footer part -->
682
680
  <hr class="footer"/><address class="footer"><small>
683
681
  Generated by &#160;<a href="http://www.doxygen.org/index.html">