svf-tools 1.0.404 → 1.0.407

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 (238) hide show
  1. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +4 -4
  2. package/SVF-doxygen/html/html/AndersenSFR_8h_source.html +2 -2
  3. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +2 -2
  4. package/SVF-doxygen/html/html/CHG_8h_source.html +5 -6
  5. package/SVF-doxygen/html/html/CPPUtil_8cpp.html +3 -3
  6. package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +2 -2
  7. package/SVF-doxygen/html/html/CSC_8cpp_source.html +4 -4
  8. package/SVF-doxygen/html/html/CSC_8h_source.html +3 -3
  9. package/SVF-doxygen/html/html/Conditions_8cpp_source.html +1 -2
  10. package/SVF-doxygen/html/html/ConsGEdge_8h_source.html +4 -4
  11. package/SVF-doxygen/html/html/ConsG_8h_source.html +2 -2
  12. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +3 -3
  13. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +6 -6
  14. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +2 -2
  15. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +3 -3
  16. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +2 -2
  17. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +2 -2
  18. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +2 -2
  19. package/SVF-doxygen/html/html/ICFGEdge_8h_source.html +5 -5
  20. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +4 -4
  21. package/SVF-doxygen/html/html/ICFG_8h_source.html +3 -3
  22. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +3 -3
  23. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +1 -1
  24. package/SVF-doxygen/html/html/IRGraph_8h_source.html +16 -16
  25. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +16 -13
  26. package/SVF-doxygen/html/html/LLVMUtil_8h.html +3 -0
  27. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +20 -19
  28. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +8 -8
  29. package/SVF-doxygen/html/html/LocationSet_8h_source.html +7 -7
  30. package/SVF-doxygen/html/html/MHP_8cpp.html +2 -2
  31. package/SVF-doxygen/html/html/MHP_8cpp_source.html +2 -2
  32. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +6 -6
  33. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +1 -1
  34. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +2 -2
  35. package/SVF-doxygen/html/html/PAGBuilderFromFile_8h_source.html +3 -3
  36. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +16 -16
  37. package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +2 -2
  38. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +2 -2
  39. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +6 -6
  40. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +5 -5
  41. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +25 -25
  42. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +5 -5
  43. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +11 -11
  44. package/SVF-doxygen/html/html/SVFIR_8h_source.html +13 -13
  45. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +1 -1
  46. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +2 -2
  47. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +6 -6
  48. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +11 -11
  49. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +1 -1
  50. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +48 -52
  51. package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +16 -17
  52. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +89 -90
  53. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +118 -120
  54. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +3 -3
  55. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
  56. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +6 -6
  57. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +1 -1
  58. package/SVF-doxygen/html/html/VFGNode_8h_source.html +2 -2
  59. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +3 -3
  60. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +1 -1
  61. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +12 -12
  62. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +2 -2
  63. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt-members.html +2 -2
  64. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +20 -20
  65. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +2 -2
  66. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +5 -5
  67. package/SVF-doxygen/html/html/classSVF_1_1CHGraph-members.html +4 -4
  68. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +24 -24
  69. package/SVF-doxygen/html/html/classSVF_1_1CSC-members.html +1 -1
  70. package/SVF-doxygen/html/html/classSVF_1_1CSC.html +11 -11
  71. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar-members.html +1 -1
  72. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +3 -3
  73. package/SVF-doxygen/html/html/classSVF_1_1CondManager.html +1 -2
  74. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +3 -3
  75. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +1 -1
  76. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +2 -2
  77. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +1 -1
  78. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +3 -3
  79. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +2 -2
  80. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar-members.html +1 -1
  81. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +15 -15
  82. package/SVF-doxygen/html/html/classSVF_1_1GepStmt-members.html +2 -2
  83. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +15 -15
  84. package/SVF-doxygen/html/html/classSVF_1_1GepValVar-members.html +1 -1
  85. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +11 -11
  86. package/SVF-doxygen/html/html/classSVF_1_1ICFG-members.html +1 -1
  87. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +7 -7
  88. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +3 -3
  89. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter-members.html +1 -1
  90. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +4 -4
  91. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +2 -2
  92. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +17 -17
  93. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge-members.html +3 -3
  94. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +23 -23
  95. package/SVF-doxygen/html/html/classSVF_1_1LocationSet-members.html +5 -5
  96. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +52 -52
  97. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +7 -7
  98. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +85 -89
  99. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +1 -1
  100. package/SVF-doxygen/html/html/classSVF_1_1NormalGepCGEdge-members.html +1 -1
  101. package/SVF-doxygen/html/html/classSVF_1_1NormalGepCGEdge.html +8 -8
  102. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo-members.html +13 -10
  103. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +190 -92
  104. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
  105. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile-members.html +1 -1
  106. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +8 -8
  107. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +17 -17
  108. package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +6 -6
  109. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +9 -9
  110. package/SVF-doxygen/html/html/classSVF_1_1SVFIR-members.html +1 -1
  111. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +36 -36
  112. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +2 -2
  113. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +60 -60
  114. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +1 -1
  115. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +1 -1
  116. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +1 -1
  117. package/SVF-doxygen/html/html/classSVF_1_1StInfo-members.html +10 -13
  118. package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +40 -137
  119. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder-members.html +6 -7
  120. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +99 -132
  121. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo-members.html +35 -36
  122. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +184 -213
  123. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +3 -3
  124. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
  125. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +7 -7
  126. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +3 -3
  127. package/SVF-doxygen/html/html/dda_8cpp.html +1 -1
  128. package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
  129. package/SVF-doxygen/html/html/functions_a.html +6 -6
  130. package/SVF-doxygen/html/html/functions_b.html +1 -1
  131. package/SVF-doxygen/html/html/functions_e.html +3 -0
  132. package/SVF-doxygen/html/html/functions_f.html +2 -2
  133. package/SVF-doxygen/html/html/functions_func.html +6 -6
  134. package/SVF-doxygen/html/html/functions_func_f.html +1 -1
  135. package/SVF-doxygen/html/html/functions_func_g.html +18 -21
  136. package/SVF-doxygen/html/html/functions_func_i.html +1 -1
  137. package/SVF-doxygen/html/html/functions_func_s.html +5 -5
  138. package/SVF-doxygen/html/html/functions_func_v.html +1 -1
  139. package/SVF-doxygen/html/html/functions_g.html +16 -19
  140. package/SVF-doxygen/html/html/functions_i.html +5 -5
  141. package/SVF-doxygen/html/html/functions_l.html +6 -6
  142. package/SVF-doxygen/html/html/functions_m.html +1 -5
  143. package/SVF-doxygen/html/html/functions_n.html +1 -1
  144. package/SVF-doxygen/html/html/functions_o.html +9 -9
  145. package/SVF-doxygen/html/html/functions_p.html +9 -9
  146. package/SVF-doxygen/html/html/functions_r.html +1 -1
  147. package/SVF-doxygen/html/html/functions_s.html +16 -18
  148. package/SVF-doxygen/html/html/functions_t.html +7 -7
  149. package/SVF-doxygen/html/html/functions_type_n.html +1 -1
  150. package/SVF-doxygen/html/html/functions_type_s.html +1 -1
  151. package/SVF-doxygen/html/html/functions_v.html +3 -3
  152. package/SVF-doxygen/html/html/functions_vars_b.html +1 -1
  153. package/SVF-doxygen/html/html/functions_vars_e.html +3 -0
  154. package/SVF-doxygen/html/html/functions_vars_f.html +1 -1
  155. package/SVF-doxygen/html/html/functions_vars_m.html +0 -4
  156. package/SVF-doxygen/html/html/functions_vars_v.html +2 -2
  157. package/SVF-doxygen/html/html/functions_w.html +9 -5
  158. package/SVF-doxygen/html/html/globals_r.html +3 -3
  159. package/SVF-doxygen/html/html/globals_s.html +5 -7
  160. package/SVF-doxygen/html/html/mta_8cpp.html +1 -1
  161. package/SVF-doxygen/html/html/mta_8cpp_source.html +1 -1
  162. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +73 -41
  163. package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +2 -2
  164. package/SVF-doxygen/html/html/namespacemembers_func.html +4 -1
  165. package/SVF-doxygen/html/html/namespacemembers_g.html +3 -0
  166. package/SVF-doxygen/html/html/saber_8cpp.html +1 -1
  167. package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -1
  168. package/SVF-doxygen/html/html/search/all_1.js +4 -4
  169. package/SVF-doxygen/html/html/search/all_10.js +7 -7
  170. package/SVF-doxygen/html/html/search/all_12.js +2 -2
  171. package/SVF-doxygen/html/html/search/all_13.js +12 -12
  172. package/SVF-doxygen/html/html/search/all_14.js +5 -5
  173. package/SVF-doxygen/html/html/search/all_16.js +3 -3
  174. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  175. package/SVF-doxygen/html/html/search/all_2.js +1 -1
  176. package/SVF-doxygen/html/html/search/all_5.js +1 -0
  177. package/SVF-doxygen/html/html/search/all_6.js +2 -2
  178. package/SVF-doxygen/html/html/search/all_7.js +7 -7
  179. package/SVF-doxygen/html/html/search/all_9.js +3 -3
  180. package/SVF-doxygen/html/html/search/all_c.js +4 -4
  181. package/SVF-doxygen/html/html/search/all_d.js +2 -2
  182. package/SVF-doxygen/html/html/search/all_e.js +5 -5
  183. package/SVF-doxygen/html/html/search/all_f.js +1 -1
  184. package/SVF-doxygen/html/html/search/functions_0.js +4 -4
  185. package/SVF-doxygen/html/html/search/functions_10.js +4 -4
  186. package/SVF-doxygen/html/html/search/functions_13.js +1 -1
  187. package/SVF-doxygen/html/html/search/functions_5.js +1 -1
  188. package/SVF-doxygen/html/html/search/functions_6.js +7 -7
  189. package/SVF-doxygen/html/html/search/functions_8.js +2 -2
  190. package/SVF-doxygen/html/html/search/functions_a.js +1 -1
  191. package/SVF-doxygen/html/html/search/functions_e.js +1 -1
  192. package/SVF-doxygen/html/html/search/typedefs_11.js +1 -1
  193. package/SVF-doxygen/html/html/search/typedefs_d.js +1 -1
  194. package/SVF-doxygen/html/html/search/variables_14.js +2 -2
  195. package/SVF-doxygen/html/html/search/variables_16.js +2 -2
  196. package/SVF-doxygen/html/html/search/variables_2.js +1 -1
  197. package/SVF-doxygen/html/html/search/variables_5.js +1 -0
  198. package/SVF-doxygen/html/html/search/variables_6.js +1 -1
  199. package/SVF-doxygen/html/html/search/variables_d.js +1 -1
  200. package/SVF-doxygen/html/html/search/variables_e.js +3 -3
  201. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1LocationSet_01_4.html +2 -2
  202. package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
  203. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  204. package/SVF-doxygen/html/html/wpa_8cpp.html +1 -1
  205. package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
  206. package/include/Graphs/CHG.h +6 -6
  207. package/include/Graphs/ConsGEdge.h +1 -1
  208. package/include/Graphs/ICFG.h +1 -1
  209. package/include/Graphs/ICFGEdge.h +3 -3
  210. package/include/MemoryModel/LocationSet.h +5 -5
  211. package/include/MemoryModel/PAGBuilderFromFile.h +1 -1
  212. package/include/MemoryModel/SVFIR.h +1 -1
  213. package/include/MemoryModel/SVFStatements.h +4 -4
  214. package/include/MemoryModel/SVFVariables.h +2 -2
  215. package/include/MemoryModel/SymbolTableInfo.h +16 -15
  216. package/include/SVF-FE/LLVMUtil.h +3 -0
  217. package/include/SVF-FE/SVFIRBuilder.h +2 -2
  218. package/include/SVF-FE/SymbolTableBuilder.h +0 -2
  219. package/include/Util/IRAnnotator.h +2 -2
  220. package/include/WPA/AndersenSFR.h +1 -1
  221. package/include/WPA/CSC.h +1 -1
  222. package/lib/Graphs/ICFG.cpp +1 -1
  223. package/lib/MTA/MHP.cpp +2 -2
  224. package/lib/MemoryModel/LocationSet.cpp +3 -3
  225. package/lib/MemoryModel/PAGBuilderFromFile.cpp +2 -2
  226. package/lib/MemoryModel/SVFIR.cpp +2 -2
  227. package/lib/MemoryModel/SymbolTableInfo.cpp +7 -18
  228. package/lib/SVF-FE/CPPUtil.cpp +4 -4
  229. package/lib/SVF-FE/ICFGBuilder.cpp +1 -1
  230. package/lib/SVF-FE/LLVMUtil.cpp +22 -5
  231. package/lib/SVF-FE/SVFIRBuilder.cpp +9 -9
  232. package/lib/SVF-FE/SymbolTableBuilder.cpp +3 -22
  233. package/lib/Util/Conditions.cpp +1 -1
  234. package/lib/Util/TypeBasedHeapCloning.cpp +1 -1
  235. package/lib/WPA/AndersenSFR.cpp +6 -6
  236. package/lib/WPA/CSC.cpp +5 -5
  237. package/lib/WPA/TypeAnalysis.cpp +3 -3
  238. package/package.json +1 -1
@@ -141,10 +141,10 @@ Public Member Functions</h2></td></tr>
141
141
  <tr class="separator:a87a7d8c281490fbd2377d64b0115d262"><td class="memSeparator" colspan="2">&#160;</td></tr>
142
142
  <tr class="memitem:ae382d5bab69843bdb9424c4c6ff94140"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#ae382d5bab69843bdb9424c4c6ff94140">printCH</a> ()</td></tr>
143
143
  <tr class="separator:ae382d5bab69843bdb9424c4c6ff94140"><td class="memSeparator" colspan="2">&#160;</td></tr>
144
- <tr class="memitem:a913889c72bb8d6637ab7cef4c34613c5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#a913889c72bb8d6637ab7cef4c34613c5">getVirtualFunctionID</a> (const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *vfn) const</td></tr>
145
- <tr class="separator:a913889c72bb8d6637ab7cef4c34613c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
146
- <tr class="memitem:a32f56db316a2a70940cf24435cff4965"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#a32f56db316a2a70940cf24435cff4965">getVirtualFunctionBasedonID</a> (<a class="el" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> id) const</td></tr>
147
- <tr class="separator:a32f56db316a2a70940cf24435cff4965"><td class="memSeparator" colspan="2">&#160;</td></tr>
144
+ <tr class="memitem:a7151563857b7b6bdf8195aa571df7516"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#a7151563857b7b6bdf8195aa571df7516">getVirtualFunctionID</a> (const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *vfn) const</td></tr>
145
+ <tr class="separator:a7151563857b7b6bdf8195aa571df7516"><td class="memSeparator" colspan="2">&#160;</td></tr>
146
+ <tr class="memitem:a7b678b4362a93e969f11b110b85d35ca"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#a7b678b4362a93e969f11b110b85d35ca">getVirtualFunctionBasedonID</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) const</td></tr>
147
+ <tr class="separator:a7b678b4362a93e969f11b110b85d35ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
148
148
  <tr class="memitem:a5ee7e559425045f3af5c35ea6d6f03ee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#a5ee7e559425045f3af5c35ea6d6f03ee">addInstances</a> (const std::string templateName, <a class="el" href="classSVF_1_1CHNode.html">CHNode</a> *node)</td></tr>
149
149
  <tr class="separator:a5ee7e559425045f3af5c35ea6d6f03ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
150
150
  <tr class="memitem:a26f89a9b269cad3fc894110d25598715"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1CHGraph.html#ad0f60c720b277c60ed8a8966189bb42b">CHNodeSetTy</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#a26f89a9b269cad3fc894110d25598715">getDescendants</a> (const std::string className)</td></tr>
@@ -217,8 +217,8 @@ Private Attributes</h2></td></tr>
217
217
  <tr class="separator:a62a3ccdbc55381d5f8d96dc23141f2e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
218
218
  <tr class="memitem:adb99b732d20cfc8cc0f078cda6753bc0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#adb99b732d20cfc8cc0f078cda6753bc0">classNum</a></td></tr>
219
219
  <tr class="separator:adb99b732d20cfc8cc0f078cda6753bc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
220
- <tr class="memitem:ac3be8c8dfee16d7508b73b6f2270eb2d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#ac3be8c8dfee16d7508b73b6f2270eb2d">vfID</a></td></tr>
221
- <tr class="separator:ac3be8c8dfee16d7508b73b6f2270eb2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
220
+ <tr class="memitem:ab2d60bc836482fb98142da6151a91270"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#ab2d60bc836482fb98142da6151a91270">vfID</a></td></tr>
221
+ <tr class="separator:ab2d60bc836482fb98142da6151a91270"><td class="memSeparator" colspan="2">&#160;</td></tr>
222
222
  <tr class="memitem:ab5bd2348e4418fcb2f3b18227fccd836"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#ab5bd2348e4418fcb2f3b18227fccd836">buildingCHGTime</a></td></tr>
223
223
  <tr class="separator:ab5bd2348e4418fcb2f3b18227fccd836"><td class="memSeparator" colspan="2">&#160;</td></tr>
224
224
  <tr class="memitem:aa040bc0a5653843419d24777343e1650"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt; std::string, <a class="el" href="classSVF_1_1CHNode.html">CHNode</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#aa040bc0a5653843419d24777343e1650">classNameToNodeMap</a></td></tr>
@@ -233,8 +233,8 @@ Private Attributes</h2></td></tr>
233
233
  <tr class="separator:acd022005e2191bc3bcb265805abee4f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
234
234
  <tr class="memitem:a7ef9982d89a4932883bd58bc49ad9986"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CHGraph.html#a3740a239432a5c7237109aa72aa28eff">CallSiteToCHNodesMap</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#a7ef9982d89a4932883bd58bc49ad9986">csToClassesMap</a></td></tr>
235
235
  <tr class="separator:a7ef9982d89a4932883bd58bc49ad9986"><td class="memSeparator" colspan="2">&#160;</td></tr>
236
- <tr class="memitem:af3484748d0dd2567542acd3be18d3c4a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt; const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *, <a class="el" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#af3484748d0dd2567542acd3be18d3c4a">virtualFunctionToIDMap</a></td></tr>
237
- <tr class="separator:af3484748d0dd2567542acd3be18d3c4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
236
+ <tr class="memitem:a70a2bab82563a910d32a9169030596c0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt; const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *, <a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#a70a2bab82563a910d32a9169030596c0">virtualFunctionToIDMap</a></td></tr>
237
+ <tr class="separator:a70a2bab82563a910d32a9169030596c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
238
238
  <tr class="memitem:af3ed2bee5d76e5a848b250950c3be333"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CHGraph.html#aefdf6c5fe8a26efce200e8225d463cac">CallSiteToVTableSetMap</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#af3ed2bee5d76e5a848b250950c3be333">csToCHAVtblsMap</a></td></tr>
239
239
  <tr class="separator:af3ed2bee5d76e5a848b250950c3be333"><td class="memSeparator" colspan="2">&#160;</td></tr>
240
240
  <tr class="memitem:a5e6502c5baad99c70e1cf56c84ce9474"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CHGraph.html#a0397e5da88106dc8b4a1e207ae455e74">CallSiteToVFunSetMap</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CHGraph.html#a5e6502c5baad99c70e1cf56c84ce9474">csToCHAVFnsMap</a></td></tr>
@@ -412,12 +412,12 @@ Additional Inherited Members</h2></td></tr>
412
412
  </div><div class="memdoc">
413
413
 
414
414
  <p class="definition">Definition at line <a class="el" href="CHG_8h_source.html#l00226">226</a> of file <a class="el" href="CHG_8h_source.html">CHG.h</a>.</p>
415
- <div class="fragment"><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; : <a class="code" href="classSVF_1_1CHGraph.html#a62a3ccdbc55381d5f8d96dc23141f2e5">svfMod</a>(svfModule), <a class="code" href="classSVF_1_1CHGraph.html#adb99b732d20cfc8cc0f078cda6753bc0">classNum</a>(0), <a class="code" href="classSVF_1_1CHGraph.html#ac3be8c8dfee16d7508b73b6f2270eb2d">vfID</a>(0), <a class="code" href="classSVF_1_1CHGraph.html#ab5bd2348e4418fcb2f3b18227fccd836">buildingCHGTime</a>(0)</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; {</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; this-&gt;<a class="code" href="classSVF_1_1CommonCHGraph.html#a4d3f2b9ed7ae8e87baf69525e9115071">kind</a> = <a class="code" href="classSVF_1_1CommonCHGraph.html#a6a1feb9e268fb56b0de3efc39cfc8db8afa3f4c3017fb95011bfdc11b147eae0c">Standard</a>;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; }</div><div class="ttc" id="classSVF_1_1CHGraph_html_adb99b732d20cfc8cc0f078cda6753bc0"><div class="ttname"><a href="classSVF_1_1CHGraph.html#adb99b732d20cfc8cc0f078cda6753bc0">SVF::CHGraph::classNum</a></div><div class="ttdeci">u32_t classNum</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00311">CHG.h:311</a></div></div>
415
+ <div class="fragment"><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; : <a class="code" href="classSVF_1_1CHGraph.html#a62a3ccdbc55381d5f8d96dc23141f2e5">svfMod</a>(svfModule), <a class="code" href="classSVF_1_1CHGraph.html#adb99b732d20cfc8cc0f078cda6753bc0">classNum</a>(0), <a class="code" href="classSVF_1_1CHGraph.html#ab2d60bc836482fb98142da6151a91270">vfID</a>(0), <a class="code" href="classSVF_1_1CHGraph.html#ab5bd2348e4418fcb2f3b18227fccd836">buildingCHGTime</a>(0)</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; {</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; this-&gt;<a class="code" href="classSVF_1_1CommonCHGraph.html#a4d3f2b9ed7ae8e87baf69525e9115071">kind</a> = <a class="code" href="classSVF_1_1CommonCHGraph.html#a6a1feb9e268fb56b0de3efc39cfc8db8afa3f4c3017fb95011bfdc11b147eae0c">Standard</a>;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; }</div><div class="ttc" id="classSVF_1_1CHGraph_html_adb99b732d20cfc8cc0f078cda6753bc0"><div class="ttname"><a href="classSVF_1_1CHGraph.html#adb99b732d20cfc8cc0f078cda6753bc0">SVF::CHGraph::classNum</a></div><div class="ttdeci">u32_t classNum</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00311">CHG.h:311</a></div></div>
416
416
  <div class="ttc" id="classSVF_1_1CommonCHGraph_html_a4d3f2b9ed7ae8e87baf69525e9115071"><div class="ttname"><a href="classSVF_1_1CommonCHGraph.html#a4d3f2b9ed7ae8e87baf69525e9115071">SVF::CommonCHGraph::kind</a></div><div class="ttdeci">CHGKind kind</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00072">CHG.h:72</a></div></div>
417
417
  <div class="ttc" id="classSVF_1_1CHGraph_html_a62a3ccdbc55381d5f8d96dc23141f2e5"><div class="ttname"><a href="classSVF_1_1CHGraph.html#a62a3ccdbc55381d5f8d96dc23141f2e5">SVF::CHGraph::svfMod</a></div><div class="ttdeci">SVFModule * svfMod</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00310">CHG.h:310</a></div></div>
418
418
  <div class="ttc" id="classSVF_1_1CommonCHGraph_html_a6a1feb9e268fb56b0de3efc39cfc8db8afa3f4c3017fb95011bfdc11b147eae0c"><div class="ttname"><a href="classSVF_1_1CommonCHGraph.html#a6a1feb9e268fb56b0de3efc39cfc8db8afa3f4c3017fb95011bfdc11b147eae0c">SVF::CommonCHGraph::Standard</a></div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00056">CHG.h:56</a></div></div>
419
- <div class="ttc" id="classSVF_1_1CHGraph_html_ac3be8c8dfee16d7508b73b6f2270eb2d"><div class="ttname"><a href="classSVF_1_1CHGraph.html#ac3be8c8dfee16d7508b73b6f2270eb2d">SVF::CHGraph::vfID</a></div><div class="ttdeci">s64_t vfID</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00312">CHG.h:312</a></div></div>
420
419
  <div class="ttc" id="classSVF_1_1CHGraph_html_ab5bd2348e4418fcb2f3b18227fccd836"><div class="ttname"><a href="classSVF_1_1CHGraph.html#ab5bd2348e4418fcb2f3b18227fccd836">SVF::CHGraph::buildingCHGTime</a></div><div class="ttdeci">double buildingCHGTime</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00313">CHG.h:313</a></div></div>
420
+ <div class="ttc" id="classSVF_1_1CHGraph_html_ab2d60bc836482fb98142da6151a91270"><div class="ttname"><a href="classSVF_1_1CHGraph.html#ab2d60bc836482fb98142da6151a91270">SVF::CHGraph::vfID</a></div><div class="ttdeci">u32_t vfID</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00312">CHG.h:312</a></div></div>
421
421
  </div><!-- fragment -->
422
422
  </div>
423
423
  </div>
@@ -854,8 +854,8 @@ Additional Inherited Members</h2></td></tr>
854
854
  </div><!-- fragment -->
855
855
  </div>
856
856
  </div>
857
- <a id="a32f56db316a2a70940cf24435cff4965"></a>
858
- <h2 class="memtitle"><span class="permalink"><a href="#a32f56db316a2a70940cf24435cff4965">&#9670;&nbsp;</a></span>getVirtualFunctionBasedonID()</h2>
857
+ <a id="a7b678b4362a93e969f11b110b85d35ca"></a>
858
+ <h2 class="memtitle"><span class="permalink"><a href="#a7b678b4362a93e969f11b110b85d35ca">&#9670;&nbsp;</a></span>getVirtualFunctionBasedonID()</h2>
859
859
 
860
860
  <div class="memitem">
861
861
  <div class="memproto">
@@ -866,7 +866,7 @@ Additional Inherited Members</h2></td></tr>
866
866
  <tr>
867
867
  <td class="memname">const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* SVF::CHGraph::getVirtualFunctionBasedonID </td>
868
868
  <td>(</td>
869
- <td class="paramtype"><a class="el" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a>&#160;</td>
869
+ <td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td>
870
870
  <td class="paramname"><em>id</em></td><td>)</td>
871
871
  <td> const</td>
872
872
  </tr>
@@ -879,12 +879,12 @@ Additional Inherited Members</h2></td></tr>
879
879
  </div><div class="memdoc">
880
880
 
881
881
  <p class="definition">Definition at line <a class="el" href="CHG_8h_source.html#l00250">250</a> of file <a class="el" href="CHG_8h_source.html">CHG.h</a>.</p>
882
- <div class="fragment"><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; {</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; Map&lt;const SVFFunction*, s64_t&gt;::const_iterator it, eit;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">for</span> (it = <a class="code" href="classSVF_1_1CHGraph.html#af3484748d0dd2567542acd3be18d3c4a">virtualFunctionToIDMap</a>.begin(), eit =</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <a class="code" href="classSVF_1_1CHGraph.html#af3484748d0dd2567542acd3be18d3c4a">virtualFunctionToIDMap</a>.end(); it != eit; ++it)</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; {</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">if</span> (it-&gt;second == <span class="keywordtype">id</span>)</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">return</span> it-&gt;first;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; }</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; }</div><div class="ttc" id="classSVF_1_1CHGraph_html_af3484748d0dd2567542acd3be18d3c4a"><div class="ttname"><a href="classSVF_1_1CHGraph.html#af3484748d0dd2567542acd3be18d3c4a">SVF::CHGraph::virtualFunctionToIDMap</a></div><div class="ttdeci">Map&lt; const SVFFunction *, s64_t &gt; virtualFunctionToIDMap</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00321">CHG.h:321</a></div></div>
882
+ <div class="fragment"><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; {</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; Map&lt;const SVFFunction*, u32_t&gt;::const_iterator it, eit;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">for</span> (it = <a class="code" href="classSVF_1_1CHGraph.html#a70a2bab82563a910d32a9169030596c0">virtualFunctionToIDMap</a>.begin(), eit =</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <a class="code" href="classSVF_1_1CHGraph.html#a70a2bab82563a910d32a9169030596c0">virtualFunctionToIDMap</a>.end(); it != eit; ++it)</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; {</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">if</span> (it-&gt;second == <span class="keywordtype">id</span>)</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">return</span> it-&gt;first;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; }</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; }</div><div class="ttc" id="classSVF_1_1CHGraph_html_a70a2bab82563a910d32a9169030596c0"><div class="ttname"><a href="classSVF_1_1CHGraph.html#a70a2bab82563a910d32a9169030596c0">SVF::CHGraph::virtualFunctionToIDMap</a></div><div class="ttdeci">Map&lt; const SVFFunction *, u32_t &gt; virtualFunctionToIDMap</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00321">CHG.h:321</a></div></div>
883
883
  </div><!-- fragment -->
884
884
  </div>
885
885
  </div>
886
- <a id="a913889c72bb8d6637ab7cef4c34613c5"></a>
887
- <h2 class="memtitle"><span class="permalink"><a href="#a913889c72bb8d6637ab7cef4c34613c5">&#9670;&nbsp;</a></span>getVirtualFunctionID()</h2>
886
+ <a id="a7151563857b7b6bdf8195aa571df7516"></a>
887
+ <h2 class="memtitle"><span class="permalink"><a href="#a7151563857b7b6bdf8195aa571df7516">&#9670;&nbsp;</a></span>getVirtualFunctionID()</h2>
888
888
 
889
889
  <div class="memitem">
890
890
  <div class="memproto">
@@ -893,7 +893,7 @@ Additional Inherited Members</h2></td></tr>
893
893
  <td class="mlabels-left">
894
894
  <table class="memname">
895
895
  <tr>
896
- <td class="memname"><a class="el" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> SVF::CHGraph::getVirtualFunctionID </td>
896
+ <td class="memname"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> SVF::CHGraph::getVirtualFunctionID </td>
897
897
  <td>(</td>
898
898
  <td class="paramtype">const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *&#160;</td>
899
899
  <td class="paramname"><em>vfn</em></td><td>)</td>
@@ -908,7 +908,7 @@ Additional Inherited Members</h2></td></tr>
908
908
  </div><div class="memdoc">
909
909
 
910
910
  <p class="definition">Definition at line <a class="el" href="CHG_8h_source.html#l00241">241</a> of file <a class="el" href="CHG_8h_source.html">CHG.h</a>.</p>
911
- <div class="fragment"><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; {</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; Map&lt;const SVFFunction*, s64_t&gt;::const_iterator it =</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <a class="code" href="classSVF_1_1CHGraph.html#af3484748d0dd2567542acd3be18d3c4a">virtualFunctionToIDMap</a>.find(vfn);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">if</span> (it != <a class="code" href="classSVF_1_1CHGraph.html#af3484748d0dd2567542acd3be18d3c4a">virtualFunctionToIDMap</a>.end())</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">return</span> it-&gt;second;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; }</div><div class="ttc" id="classSVF_1_1CHGraph_html_af3484748d0dd2567542acd3be18d3c4a"><div class="ttname"><a href="classSVF_1_1CHGraph.html#af3484748d0dd2567542acd3be18d3c4a">SVF::CHGraph::virtualFunctionToIDMap</a></div><div class="ttdeci">Map&lt; const SVFFunction *, s64_t &gt; virtualFunctionToIDMap</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00321">CHG.h:321</a></div></div>
911
+ <div class="fragment"><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; {</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; Map&lt;const SVFFunction*, u32_t&gt;::const_iterator it =</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <a class="code" href="classSVF_1_1CHGraph.html#a70a2bab82563a910d32a9169030596c0">virtualFunctionToIDMap</a>.find(vfn);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">if</span> (it != <a class="code" href="classSVF_1_1CHGraph.html#a70a2bab82563a910d32a9169030596c0">virtualFunctionToIDMap</a>.end())</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">return</span> it-&gt;second;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; }</div><div class="ttc" id="classSVF_1_1CHGraph_html_a70a2bab82563a910d32a9169030596c0"><div class="ttname"><a href="classSVF_1_1CHGraph.html#a70a2bab82563a910d32a9169030596c0">SVF::CHGraph::virtualFunctionToIDMap</a></div><div class="ttdeci">Map&lt; const SVFFunction *, u32_t &gt; virtualFunctionToIDMap</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00321">CHG.h:321</a></div></div>
912
912
  </div><!-- fragment -->
913
913
  </div>
914
914
  </div>
@@ -1249,8 +1249,8 @@ Additional Inherited Members</h2></td></tr>
1249
1249
 
1250
1250
  </div>
1251
1251
  </div>
1252
- <a id="ac3be8c8dfee16d7508b73b6f2270eb2d"></a>
1253
- <h2 class="memtitle"><span class="permalink"><a href="#ac3be8c8dfee16d7508b73b6f2270eb2d">&#9670;&nbsp;</a></span>vfID</h2>
1252
+ <a id="ab2d60bc836482fb98142da6151a91270"></a>
1253
+ <h2 class="memtitle"><span class="permalink"><a href="#ab2d60bc836482fb98142da6151a91270">&#9670;&nbsp;</a></span>vfID</h2>
1254
1254
 
1255
1255
  <div class="memitem">
1256
1256
  <div class="memproto">
@@ -1259,7 +1259,7 @@ Additional Inherited Members</h2></td></tr>
1259
1259
  <td class="mlabels-left">
1260
1260
  <table class="memname">
1261
1261
  <tr>
1262
- <td class="memname"><a class="el" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> SVF::CHGraph::vfID</td>
1262
+ <td class="memname"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> SVF::CHGraph::vfID</td>
1263
1263
  </tr>
1264
1264
  </table>
1265
1265
  </td>
@@ -1273,8 +1273,8 @@ Additional Inherited Members</h2></td></tr>
1273
1273
 
1274
1274
  </div>
1275
1275
  </div>
1276
- <a id="af3484748d0dd2567542acd3be18d3c4a"></a>
1277
- <h2 class="memtitle"><span class="permalink"><a href="#af3484748d0dd2567542acd3be18d3c4a">&#9670;&nbsp;</a></span>virtualFunctionToIDMap</h2>
1276
+ <a id="a70a2bab82563a910d32a9169030596c0"></a>
1277
+ <h2 class="memtitle"><span class="permalink"><a href="#a70a2bab82563a910d32a9169030596c0">&#9670;&nbsp;</a></span>virtualFunctionToIDMap</h2>
1278
1278
 
1279
1279
  <div class="memitem">
1280
1280
  <div class="memproto">
@@ -1283,7 +1283,7 @@ Additional Inherited Members</h2></td></tr>
1283
1283
  <td class="mlabels-left">
1284
1284
  <table class="memname">
1285
1285
  <tr>
1286
- <td class="memname"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt;const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a>*, <a class="el" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a>&gt; SVF::CHGraph::virtualFunctionToIDMap</td>
1286
+ <td class="memname"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt;const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a>*, <a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&gt; SVF::CHGraph::virtualFunctionToIDMap</td>
1287
1287
  </tr>
1288
1288
  </table>
1289
1289
  </td>
@@ -82,7 +82,7 @@ $(function() {
82
82
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1CSC.html#a2913a7a83deae0b91f1f42dc45c4f3b2">isVisited</a>(NodeID nId)</td><td class="entry"><a class="el" href="classSVF_1_1CSC.html">SVF::CSC</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
83
83
  <tr><td class="entry"><a class="el" href="classSVF_1_1CSC.html#a8e740b5d0f02c66c09fec3f65a54d1c2">iterator</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1CSC.html">SVF::CSC</a></td><td class="entry"></td></tr>
84
84
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1CSC.html#adac02224ec722f0cf1954d7a484bd11e">setVisited</a>(NodeID nId)</td><td class="entry"><a class="el" href="classSVF_1_1CSC.html">SVF::CSC</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
85
- <tr><td class="entry"><a class="el" href="classSVF_1_1CSC.html#a2e595f5584ac62cddb45b70d8865f100">visit</a>(NodeID nodeId, s64_t _w)</td><td class="entry"><a class="el" href="classSVF_1_1CSC.html">SVF::CSC</a></td><td class="entry"></td></tr>
85
+ <tr><td class="entry"><a class="el" href="classSVF_1_1CSC.html#a2863ae212693f9ca6341e23f9d9634bf">visit</a>(NodeID nodeId, s32_t _w)</td><td class="entry"><a class="el" href="classSVF_1_1CSC.html">SVF::CSC</a></td><td class="entry"></td></tr>
86
86
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1CSC.html#a0490b9998987d245ee6e56bc68db4f1e">WorkStack</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1CSC.html">SVF::CSC</a></td><td class="entry"></td></tr>
87
87
  </table></div><!-- contents -->
88
88
  <!-- start footer part -->
@@ -89,8 +89,8 @@ Public Member Functions</h2></td></tr>
89
89
  <tr class="separator:a4ffb05984b0509d97ec713fc6bfc4b6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
90
90
  <tr class="memitem:a049dc6bd348b1108a8a9726d50a4f280"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CSC.html#a049dc6bd348b1108a8a9726d50a4f280">find</a> (<a class="el" href="namespaceSVF.html#a1811127aebdb9c926e39d155e20b3dc0">NodeStack</a> &amp;candidates)</td></tr>
91
91
  <tr class="separator:a049dc6bd348b1108a8a9726d50a4f280"><td class="memSeparator" colspan="2">&#160;</td></tr>
92
- <tr class="memitem:a2e595f5584ac62cddb45b70d8865f100"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CSC.html#a2e595f5584ac62cddb45b70d8865f100">visit</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeId, <a class="el" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> _w)</td></tr>
93
- <tr class="separator:a2e595f5584ac62cddb45b70d8865f100"><td class="memSeparator" colspan="2">&#160;</td></tr>
92
+ <tr class="memitem:a2863ae212693f9ca6341e23f9d9634bf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CSC.html#a2863ae212693f9ca6341e23f9d9634bf">visit</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeId, <a class="el" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> _w)</td></tr>
93
+ <tr class="separator:a2863ae212693f9ca6341e23f9d9634bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
94
94
  <tr class="memitem:ac531556d88bedad2717aacc6575bfedd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CSC.html#ac531556d88bedad2717aacc6575bfedd">clear</a> ()</td></tr>
95
95
  <tr class="separator:ac531556d88bedad2717aacc6575bfedd"><td class="memSeparator" colspan="2">&#160;</td></tr>
96
96
  <tr class="memitem:a2913a7a83deae0b91f1f42dc45c4f3b2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CSC.html#a2913a7a83deae0b91f1f42dc45c4f3b2">isVisited</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nId)</td></tr>
@@ -248,12 +248,12 @@ Private Attributes</h2></td></tr>
248
248
  </div><div class="memdoc">
249
249
 
250
250
  <p class="definition">Definition at line <a class="el" href="CSC_8cpp_source.html#l00049">49</a> of file <a class="el" href="CSC_8cpp_source.html">CSC.cpp</a>.</p>
251
- <div class="fragment"><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;{</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="classSVF_1_1CSC.html#ac531556d88bedad2717aacc6575bfedd">clear</a>();</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="namespaceSVF.html#a1811127aebdb9c926e39d155e20b3dc0">NodeStack</a> revCandidates;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">while</span> (!candidates.empty())</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; {</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nId = candidates.top();</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; revCandidates.push(nId);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; candidates.pop();</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1CSC.html#ad6639daea8a19a920c88af332a420d00">_scc</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a6ab5eff6a576e6d8703c1ea29b7f425d">subNodes</a>(nId).count()&gt;1 &amp;&amp; !<a class="code" href="classSVF_1_1CSC.html#a2913a7a83deae0b91f1f42dc45c4f3b2">isVisited</a>(nId)) <span class="comment">// node is actually in a cycle</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a2e595f5584ac62cddb45b70d8865f100">visit</a>(nId, 0);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">while</span> (!revCandidates.empty())</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; {</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nId = revCandidates.top();</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; candidates.push(nId);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; revCandidates.pop();</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; }</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;}</div><div class="ttc" id="classSVF_1_1CSC_html_ac531556d88bedad2717aacc6575bfedd"><div class="ttname"><a href="classSVF_1_1CSC.html#ac531556d88bedad2717aacc6575bfedd">SVF::CSC::clear</a></div><div class="ttdeci">void clear()</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8cpp_source.html#l00039">CSC.cpp:39</a></div></div>
251
+ <div class="fragment"><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;{</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="classSVF_1_1CSC.html#ac531556d88bedad2717aacc6575bfedd">clear</a>();</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="namespaceSVF.html#a1811127aebdb9c926e39d155e20b3dc0">NodeStack</a> revCandidates;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">while</span> (!candidates.empty())</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; {</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nId = candidates.top();</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; revCandidates.push(nId);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; candidates.pop();</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1CSC.html#ad6639daea8a19a920c88af332a420d00">_scc</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a6ab5eff6a576e6d8703c1ea29b7f425d">subNodes</a>(nId).count()&gt;1 &amp;&amp; !<a class="code" href="classSVF_1_1CSC.html#a2913a7a83deae0b91f1f42dc45c4f3b2">isVisited</a>(nId)) <span class="comment">// node is actually in a cycle</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a2863ae212693f9ca6341e23f9d9634bf">visit</a>(nId, 0);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">while</span> (!revCandidates.empty())</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; {</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nId = revCandidates.top();</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; candidates.push(nId);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; revCandidates.pop();</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; }</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;}</div><div class="ttc" id="classSVF_1_1CSC_html_ac531556d88bedad2717aacc6575bfedd"><div class="ttname"><a href="classSVF_1_1CSC.html#ac531556d88bedad2717aacc6575bfedd">SVF::CSC::clear</a></div><div class="ttdeci">void clear()</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8cpp_source.html#l00039">CSC.cpp:39</a></div></div>
252
252
  <div class="ttc" id="classSVF_1_1SCCDetection_html_a6ab5eff6a576e6d8703c1ea29b7f425d"><div class="ttname"><a href="classSVF_1_1SCCDetection.html#a6ab5eff6a576e6d8703c1ea29b7f425d">SVF::SCCDetection::subNodes</a></div><div class="ttdeci">const NodeBS &amp; subNodes(NodeID n) const</div><div class="ttdoc">get all subnodes in one scc, if size is empty insert itself into the set </div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00173">SCC.h:173</a></div></div>
253
253
  <div class="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00018">MTAResultValidator.h:18</a></div></div>
254
254
  <div class="ttc" id="namespaceSVF_html_a1811127aebdb9c926e39d155e20b3dc0"><div class="ttname"><a href="namespaceSVF.html#a1811127aebdb9c926e39d155e20b3dc0">SVF::NodeStack</a></div><div class="ttdeci">std::stack&lt; NodeID &gt; NodeStack</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00121">SVFBasicTypes.h:121</a></div></div>
255
255
  <div class="ttc" id="classSVF_1_1CSC_html_ad6639daea8a19a920c88af332a420d00"><div class="ttname"><a href="classSVF_1_1CSC.html#ad6639daea8a19a920c88af332a420d00">SVF::CSC::_scc</a></div><div class="ttdeci">CGSCC * _scc</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8h_source.html#l00058">CSC.h:58</a></div></div>
256
- <div class="ttc" id="classSVF_1_1CSC_html_a2e595f5584ac62cddb45b70d8865f100"><div class="ttname"><a href="classSVF_1_1CSC.html#a2e595f5584ac62cddb45b70d8865f100">SVF::CSC::visit</a></div><div class="ttdeci">void visit(NodeID nodeId, s64_t _w)</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8cpp_source.html#l00076">CSC.cpp:76</a></div></div>
256
+ <div class="ttc" id="classSVF_1_1CSC_html_a2863ae212693f9ca6341e23f9d9634bf"><div class="ttname"><a href="classSVF_1_1CSC.html#a2863ae212693f9ca6341e23f9d9634bf">SVF::CSC::visit</a></div><div class="ttdeci">void visit(NodeID nodeId, s32_t _w)</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8cpp_source.html#l00076">CSC.cpp:76</a></div></div>
257
257
  <div class="ttc" id="classSVF_1_1CSC_html_a2913a7a83deae0b91f1f42dc45c4f3b2"><div class="ttname"><a href="classSVF_1_1CSC.html#a2913a7a83deae0b91f1f42dc45c4f3b2">SVF::CSC::isVisited</a></div><div class="ttdeci">bool isVisited(NodeID nId)</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8h_source.html#l00075">CSC.h:75</a></div></div>
258
258
  </div><!-- fragment -->
259
259
  </div>
@@ -316,8 +316,8 @@ Private Attributes</h2></td></tr>
316
316
  </div><!-- fragment -->
317
317
  </div>
318
318
  </div>
319
- <a id="a2e595f5584ac62cddb45b70d8865f100"></a>
320
- <h2 class="memtitle"><span class="permalink"><a href="#a2e595f5584ac62cddb45b70d8865f100">&#9670;&nbsp;</a></span>visit()</h2>
319
+ <a id="a2863ae212693f9ca6341e23f9d9634bf"></a>
320
+ <h2 class="memtitle"><span class="permalink"><a href="#a2863ae212693f9ca6341e23f9d9634bf">&#9670;&nbsp;</a></span>visit()</h2>
321
321
 
322
322
  <div class="memitem">
323
323
  <div class="memproto">
@@ -331,7 +331,7 @@ Private Attributes</h2></td></tr>
331
331
  <tr>
332
332
  <td class="paramkey"></td>
333
333
  <td></td>
334
- <td class="paramtype"><a class="el" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a>&#160;</td>
334
+ <td class="paramtype"><a class="el" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>&#160;</td>
335
335
  <td class="paramname"><em>_w</em>&#160;</td>
336
336
  </tr>
337
337
  <tr>
@@ -343,31 +343,31 @@ Private Attributes</h2></td></tr>
343
343
  </div><div class="memdoc">
344
344
 
345
345
  <p class="definition">Definition at line <a class="el" href="CSC_8cpp_source.html#l00076">76</a> of file <a class="el" href="CSC_8cpp_source.html">CSC.cpp</a>.</p>
346
- <div class="fragment"><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;{</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment">// pwcReps[nodeId] = _scc-&gt;repNode(nodeId);</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="classSVF_1_1CSC.html#adac02224ec722f0cf1954d7a484bd11e">setVisited</a>(nodeId);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="classSVF_1_1CSC.html#af58e474ee7605663fd04fce58dc029d1">_I</a> += _w;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a0eaf3a742fb8003b031528ee7c1c4799">_D</a>[nodeId] = <a class="code" href="classSVF_1_1CSC.html#af58e474ee7605663fd04fce58dc029d1">_I</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">_S</a>.push(nodeId);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="classSVF_1_1ConstraintNode.html">ConstraintNode</a>* node = <a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">getConstraintNode</a>(nodeId);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1ConstraintNode.html#ab1868f04de44f6fe1e9ac14f3d4ee56b">ConstraintNode::const_iterator</a> eit = node-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a6a2021d0d494e7d47469e4161280a098">directOutEdgeBegin</a>(); eit != node-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a7bf8a1955d6f19b8d0ae5bdeb9a0897f">directOutEdgeEnd</a>(); ++eit)</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; {</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> offset;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1NormalGepCGEdge.html">NormalGepCGEdge</a>* gepCGEdge = SVFUtil::dyn_cast&lt;NormalGepCGEdge&gt;(*eit))</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; offset = gepCGEdge-&gt;getConstantFieldIdx();</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; offset = 0;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> dstId = (*eit)-&gt;getDstID();</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1CSC.html#ad6639daea8a19a920c88af332a420d00">_scc</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(nodeId) == <a class="code" href="classSVF_1_1CSC.html#ad6639daea8a19a920c88af332a420d00">_scc</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(dstId) &amp;&amp; !<a class="code" href="classSVF_1_1CSC.html#a2913a7a83deae0b91f1f42dc45c4f3b2">isVisited</a>(dstId))</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a2e595f5584ac62cddb45b70d8865f100">visit</a>(dstId, offset);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="namespaceSVF.html#a1811127aebdb9c926e39d155e20b3dc0">NodeStack</a> _revS;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a> _C;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">while</span> (!<a class="code" href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">_S</a>.empty())</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; {</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> backNodeId = <a class="code" href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">_S</a>.top();</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">_S</a>.pop();</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; _revS.push(backNodeId);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="classSVF_1_1ConstraintNode.html">ConstraintNode</a>* backNode = <a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">getConstraintNode</a>(backNodeId);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a5f57823a4918f6c6bfee9c18beddda51">hasEdge</a>(node, backNode, <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375acfd0a194af0da66162545f0089eb4baa">ConstraintEdge::NormalGep</a>))</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; {</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="classSVF_1_1NormalGepCGEdge.html">NormalGepCGEdge</a>* normalGep = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="classSVF_1_1NormalGepCGEdge.html">NormalGepCGEdge</a>&gt;(<a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a04a57ef9803917346cb966e05ecd0de4">getEdge</a>(node, backNode, <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375acfd0a194af0da66162545f0089eb4baa">ConstraintEdge::NormalGep</a>));</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> _w = normalGep-&gt;<a class="code" href="classSVF_1_1NormalGepCGEdge.html#a710e0791e92cca74da3df03ad5278c55">getConstantFieldIdx</a>();</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> _l = <a class="code" href="classSVF_1_1CSC.html#a0eaf3a742fb8003b031528ee7c1c4799">_D</a>[nodeId] +_w - <a class="code" href="classSVF_1_1CSC.html#a0eaf3a742fb8003b031528ee7c1c4799">_D</a>[backNodeId];</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; backNode-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a873ba0c14dc57bd603c4a6b4d73e4278">strides</a>.set(_l);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> cNodeId : _C)</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">getConstraintNode</a>(cNodeId)-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a873ba0c14dc57bd603c4a6b4d73e4278">strides</a>.set(_l);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a5f57823a4918f6c6bfee9c18beddda51">hasEdge</a>(node, backNode, <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375ae5df3ce07dd670b48916f7b8ab33ae5a">ConstraintEdge::VariantGep</a>) ||</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a5f57823a4918f6c6bfee9c18beddda51">hasEdge</a>(node, backNode, <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375a29b0aa3353f866ef1655ab6d4716feb9">ConstraintEdge::Copy</a>))</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> _l = _D[nodeId] - _D[backNodeId];</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; backNode-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a873ba0c14dc57bd603c4a6b4d73e4278">strides</a>.set(_l);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> cNodeId : _C)</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">getConstraintNode</a>(cNodeId)-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a873ba0c14dc57bd603c4a6b4d73e4278">strides</a>.set(_l);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; _C.insert(backNodeId);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; }</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">while</span> (!_revS.empty())</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; {</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> backedId = _revS.top();</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">_S</a>.push(backedId);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; _revS.pop();</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">_S</a>.pop(); <span class="comment">// after checking all the edges of the top node of _S, remove the node</span></div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;}</div><div class="ttc" id="classSVF_1_1ConstraintGraph_html_a5f57823a4918f6c6bfee9c18beddda51"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#a5f57823a4918f6c6bfee9c18beddda51">SVF::ConstraintGraph::hasEdge</a></div><div class="ttdeci">bool hasEdge(ConstraintNode *src, ConstraintNode *dst, ConstraintEdge::ConstraintEdgeK kind)</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00128">ConsG.h:128</a></div></div>
346
+ <div class="fragment"><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;{</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment">// pwcReps[nodeId] = _scc-&gt;repNode(nodeId);</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="classSVF_1_1CSC.html#adac02224ec722f0cf1954d7a484bd11e">setVisited</a>(nodeId);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="classSVF_1_1CSC.html#af58e474ee7605663fd04fce58dc029d1">_I</a> += _w;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a0eaf3a742fb8003b031528ee7c1c4799">_D</a>[nodeId] = <a class="code" href="classSVF_1_1CSC.html#af58e474ee7605663fd04fce58dc029d1">_I</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">_S</a>.push(nodeId);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="classSVF_1_1ConstraintNode.html">ConstraintNode</a>* node = <a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">getConstraintNode</a>(nodeId);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1ConstraintNode.html#ab1868f04de44f6fe1e9ac14f3d4ee56b">ConstraintNode::const_iterator</a> eit = node-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a6a2021d0d494e7d47469e4161280a098">directOutEdgeBegin</a>(); eit != node-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a7bf8a1955d6f19b8d0ae5bdeb9a0897f">directOutEdgeEnd</a>(); ++eit)</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; {</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> offset;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1NormalGepCGEdge.html">NormalGepCGEdge</a>* gepCGEdge = SVFUtil::dyn_cast&lt;NormalGepCGEdge&gt;(*eit))</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; offset = gepCGEdge-&gt;getConstantFieldIdx();</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; offset = 0;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> dstId = (*eit)-&gt;getDstID();</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1CSC.html#ad6639daea8a19a920c88af332a420d00">_scc</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(nodeId) == <a class="code" href="classSVF_1_1CSC.html#ad6639daea8a19a920c88af332a420d00">_scc</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(dstId) &amp;&amp; !<a class="code" href="classSVF_1_1CSC.html#a2913a7a83deae0b91f1f42dc45c4f3b2">isVisited</a>(dstId))</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a2863ae212693f9ca6341e23f9d9634bf">visit</a>(dstId, offset);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="namespaceSVF.html#a1811127aebdb9c926e39d155e20b3dc0">NodeStack</a> _revS;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a> _C;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">while</span> (!<a class="code" href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">_S</a>.empty())</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; {</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> backNodeId = <a class="code" href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">_S</a>.top();</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">_S</a>.pop();</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; _revS.push(backNodeId);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="classSVF_1_1ConstraintNode.html">ConstraintNode</a>* backNode = <a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">getConstraintNode</a>(backNodeId);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a5f57823a4918f6c6bfee9c18beddda51">hasEdge</a>(node, backNode, <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375acfd0a194af0da66162545f0089eb4baa">ConstraintEdge::NormalGep</a>))</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; {</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="classSVF_1_1NormalGepCGEdge.html">NormalGepCGEdge</a>* normalGep = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="classSVF_1_1NormalGepCGEdge.html">NormalGepCGEdge</a>&gt;(<a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a04a57ef9803917346cb966e05ecd0de4">getEdge</a>(node, backNode, <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375acfd0a194af0da66162545f0089eb4baa">ConstraintEdge::NormalGep</a>));</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> _w = normalGep-&gt;<a class="code" href="classSVF_1_1NormalGepCGEdge.html#a0c67a58a8ef22a07a1f45968ae0dfe4f">getConstantFieldIdx</a>();</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> _l = <a class="code" href="classSVF_1_1CSC.html#a0eaf3a742fb8003b031528ee7c1c4799">_D</a>[nodeId] +_w - <a class="code" href="classSVF_1_1CSC.html#a0eaf3a742fb8003b031528ee7c1c4799">_D</a>[backNodeId];</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; backNode-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a873ba0c14dc57bd603c4a6b4d73e4278">strides</a>.set(_l);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> cNodeId : _C)</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">getConstraintNode</a>(cNodeId)-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a873ba0c14dc57bd603c4a6b4d73e4278">strides</a>.set(_l);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a5f57823a4918f6c6bfee9c18beddda51">hasEdge</a>(node, backNode, <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375ae5df3ce07dd670b48916f7b8ab33ae5a">ConstraintEdge::VariantGep</a>) ||</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a5f57823a4918f6c6bfee9c18beddda51">hasEdge</a>(node, backNode, <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375a29b0aa3353f866ef1655ab6d4716feb9">ConstraintEdge::Copy</a>))</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> _l = _D[nodeId] - _D[backNodeId];</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; backNode-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a873ba0c14dc57bd603c4a6b4d73e4278">strides</a>.set(_l);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> cNodeId : _C)</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">_consG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">getConstraintNode</a>(cNodeId)-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a873ba0c14dc57bd603c4a6b4d73e4278">strides</a>.set(_l);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; _C.insert(backNodeId);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; }</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">while</span> (!_revS.empty())</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; {</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> backedId = _revS.top();</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">_S</a>.push(backedId);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; _revS.pop();</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">_S</a>.pop(); <span class="comment">// after checking all the edges of the top node of _S, remove the node</span></div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;}</div><div class="ttc" id="classSVF_1_1ConstraintGraph_html_a5f57823a4918f6c6bfee9c18beddda51"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#a5f57823a4918f6c6bfee9c18beddda51">SVF::ConstraintGraph::hasEdge</a></div><div class="ttdeci">bool hasEdge(ConstraintNode *src, ConstraintNode *dst, ConstraintEdge::ConstraintEdgeK kind)</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00128">ConsG.h:128</a></div></div>
347
347
  <div class="ttc" id="classSVF_1_1ConstraintGraph_html_a04a57ef9803917346cb966e05ecd0de4"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#a04a57ef9803917346cb966e05ecd0de4">SVF::ConstraintGraph::getEdge</a></div><div class="ttdeci">ConstraintEdge * getEdge(ConstraintNode *src, ConstraintNode *dst, ConstraintEdge::ConstraintEdgeK kind)</div><div class="ttdoc">Get an edge via its src and dst nodes and kind. </div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00146">ConsG.h:146</a></div></div>
348
- <div class="ttc" id="classSVF_1_1NormalGepCGEdge_html_a710e0791e92cca74da3df03ad5278c55"><div class="ttname"><a href="classSVF_1_1NormalGepCGEdge.html#a710e0791e92cca74da3df03ad5278c55">SVF::NormalGepCGEdge::getConstantFieldIdx</a></div><div class="ttdeci">s64_t getConstantFieldIdx() const</div><div class="ttdoc">Get location set of the gep edge. </div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00307">ConsGEdge.h:307</a></div></div>
349
348
  <div class="ttc" id="classSVF_1_1ConstraintEdge_html_a663af27955ba0c545f34fa1f076b7375ae5df3ce07dd670b48916f7b8ab33ae5a"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375ae5df3ce07dd670b48916f7b8ab33ae5a">SVF::ConstraintEdge::VariantGep</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00056">ConsGEdge.h:56</a></div></div>
350
349
  <div class="ttc" id="namespaceSVF_html_a212231734fa43d5c7414137deaac7df3"><div class="ttname"><a href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">SVF::NodeSet</a></div><div class="ttdeci">Set&lt; NodeID &gt; NodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00116">SVFBasicTypes.h:116</a></div></div>
351
350
  <div class="ttc" id="classSVF_1_1ConstraintGraph_html_a26722666cc8f2fce61bed73f086a0e87"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">SVF::ConstraintGraph::getConstraintNode</a></div><div class="ttdeci">ConstraintNode * getConstraintNode(NodeID id) const</div><div class="ttdoc">Get/add/remove constraint node. </div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00107">ConsG.h:107</a></div></div>
351
+ <div class="ttc" id="classSVF_1_1NormalGepCGEdge_html_a0c67a58a8ef22a07a1f45968ae0dfe4f"><div class="ttname"><a href="classSVF_1_1NormalGepCGEdge.html#a0c67a58a8ef22a07a1f45968ae0dfe4f">SVF::NormalGepCGEdge::getConstantFieldIdx</a></div><div class="ttdeci">s32_t getConstantFieldIdx() const</div><div class="ttdoc">Get location set of the gep edge. </div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00307">ConsGEdge.h:307</a></div></div>
352
352
  <div class="ttc" id="classSVF_1_1CSC_html_a549a0a410b1ca9eeb22c05dd93761560"><div class="ttname"><a href="classSVF_1_1CSC.html#a549a0a410b1ca9eeb22c05dd93761560">SVF::CSC::_consG</a></div><div class="ttdeci">ConstraintGraph * _consG</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8h_source.html#l00057">CSC.h:57</a></div></div>
353
353
  <div class="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00018">MTAResultValidator.h:18</a></div></div>
354
354
  <div class="ttc" id="namespaceSVF_html_a1811127aebdb9c926e39d155e20b3dc0"><div class="ttname"><a href="namespaceSVF.html#a1811127aebdb9c926e39d155e20b3dc0">SVF::NodeStack</a></div><div class="ttdeci">std::stack&lt; NodeID &gt; NodeStack</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00121">SVFBasicTypes.h:121</a></div></div>
355
355
  <div class="ttc" id="classSVF_1_1CSC_html_ad6639daea8a19a920c88af332a420d00"><div class="ttname"><a href="classSVF_1_1CSC.html#ad6639daea8a19a920c88af332a420d00">SVF::CSC::_scc</a></div><div class="ttdeci">CGSCC * _scc</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8h_source.html#l00058">CSC.h:58</a></div></div>
356
356
  <div class="ttc" id="classSVF_1_1NormalGepCGEdge_html"><div class="ttname"><a href="classSVF_1_1NormalGepCGEdge.html">SVF::NormalGepCGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00265">ConsGEdge.h:265</a></div></div>
357
357
  <div class="ttc" id="classSVF_1_1ConstraintNode_html_ab1868f04de44f6fe1e9ac14f3d4ee56b"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#ab1868f04de44f6fe1e9ac14f3d4ee56b">SVF::ConstraintNode::const_iterator</a></div><div class="ttdeci">ConstraintEdge::ConstraintEdgeSetTy::const_iterator const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00045">ConsGNode.h:45</a></div></div>
358
+ <div class="ttc" id="namespaceSVF_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="SVFBasicTypes_8h_source.html#l00078">SVFBasicTypes.h:78</a></div></div>
358
359
  <div class="ttc" id="classSVF_1_1CSC_html_a44dbda27203499770ed1315366218c51"><div class="ttname"><a href="classSVF_1_1CSC.html#a44dbda27203499770ed1315366218c51">SVF::CSC::_S</a></div><div class="ttdeci">NodeStack _S</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8h_source.html#l00062">CSC.h:62</a></div></div>
359
360
  <div class="ttc" id="classSVF_1_1CSC_html_adac02224ec722f0cf1954d7a484bd11e"><div class="ttname"><a href="classSVF_1_1CSC.html#adac02224ec722f0cf1954d7a484bd11e">SVF::CSC::setVisited</a></div><div class="ttdeci">void setVisited(NodeID nId)</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8h_source.html#l00080">CSC.h:80</a></div></div>
360
361
  <div class="ttc" id="classSVF_1_1ConstraintEdge_html_a663af27955ba0c545f34fa1f076b7375acfd0a194af0da66162545f0089eb4baa"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375acfd0a194af0da66162545f0089eb4baa">SVF::ConstraintEdge::NormalGep</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00056">ConsGEdge.h:56</a></div></div>
361
362
  <div class="ttc" id="classSVF_1_1SCCDetection_html_a3a5fdc9330a657240f77199f5aee602d"><div class="ttname"><a href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">SVF::SCCDetection::repNode</a></div><div class="ttdeci">NodeID repNode(NodeID n) const</div><div class="ttdoc">get the rep node if not found return itself </div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00139">SCC.h:139</a></div></div>
362
363
  <div class="ttc" id="classSVF_1_1ConstraintEdge_html_a663af27955ba0c545f34fa1f076b7375a29b0aa3353f866ef1655ab6d4716feb9"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375a29b0aa3353f866ef1655ab6d4716feb9">SVF::ConstraintEdge::Copy</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00056">ConsGEdge.h:56</a></div></div>
363
364
  <div class="ttc" id="classSVF_1_1ConstraintNode_html_a873ba0c14dc57bd603c4a6b4d73e4278"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#a873ba0c14dc57bd603c4a6b4d73e4278">SVF::ConstraintNode::strides</a></div><div class="ttdeci">NodeBS strides</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00078">ConsGNode.h:78</a></div></div>
364
- <div class="ttc" id="classSVF_1_1CSC_html_a2e595f5584ac62cddb45b70d8865f100"><div class="ttname"><a href="classSVF_1_1CSC.html#a2e595f5584ac62cddb45b70d8865f100">SVF::CSC::visit</a></div><div class="ttdeci">void visit(NodeID nodeId, s64_t _w)</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8cpp_source.html#l00076">CSC.cpp:76</a></div></div>
365
365
  <div class="ttc" id="classSVF_1_1ConstraintNode_html"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html">SVF::ConstraintNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00040">ConsGNode.h:40</a></div></div>
366
366
  <div class="ttc" id="classSVF_1_1ConstraintNode_html_a6a2021d0d494e7d47469e4161280a098"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#a6a2021d0d494e7d47469e4161280a098">SVF::ConstraintNode::directOutEdgeBegin</a></div><div class="ttdeci">iterator directOutEdgeBegin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00168">ConsGNode.h:168</a></div></div>
367
+ <div class="ttc" id="classSVF_1_1CSC_html_a2863ae212693f9ca6341e23f9d9634bf"><div class="ttname"><a href="classSVF_1_1CSC.html#a2863ae212693f9ca6341e23f9d9634bf">SVF::CSC::visit</a></div><div class="ttdeci">void visit(NodeID nodeId, s32_t _w)</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8cpp_source.html#l00076">CSC.cpp:76</a></div></div>
367
368
  <div class="ttc" id="classSVF_1_1CSC_html_a2913a7a83deae0b91f1f42dc45c4f3b2"><div class="ttname"><a href="classSVF_1_1CSC.html#a2913a7a83deae0b91f1f42dc45c4f3b2">SVF::CSC::isVisited</a></div><div class="ttdeci">bool isVisited(NodeID nId)</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8h_source.html#l00075">CSC.h:75</a></div></div>
368
369
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8182be247907420db00837cef9bcfa70"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVF::SVFUtil::dyn_cast</a></div><div class="ttdeci">LLVM_NODISCARD std::enable_if&lt;!is_simple_type&lt; Y &gt;::value, typename cast_retty&lt; X, const Y &gt;::ret_type &gt;::type dyn_cast(const Y &amp;Val)</div><div class="ttdef"><b>Definition:</b> <a href="Casting_8h_source.html#l00343">Casting.h:343</a></div></div>
369
370
  <div class="ttc" id="classSVF_1_1CSC_html_af58e474ee7605663fd04fce58dc029d1"><div class="ttname"><a href="classSVF_1_1CSC.html#af58e474ee7605663fd04fce58dc029d1">SVF::CSC::_I</a></div><div class="ttdeci">NodeID _I</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8h_source.html#l00060">CSC.h:60</a></div></div>
370
- <div class="ttc" id="namespaceSVF_html_ad781b0b14e89773e774072b280658ef3"><div class="ttname"><a href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">SVF::s64_t</a></div><div class="ttdeci">signed long long s64_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00080">SVFBasicTypes.h:80</a></div></div>
371
371
  <div class="ttc" id="classSVF_1_1CSC_html_a0eaf3a742fb8003b031528ee7c1c4799"><div class="ttname"><a href="classSVF_1_1CSC.html#a0eaf3a742fb8003b031528ee7c1c4799">SVF::CSC::_D</a></div><div class="ttdeci">IdToIdMap _D</div><div class="ttdef"><b>Definition:</b> <a href="CSC_8h_source.html#l00061">CSC.h:61</a></div></div>
372
372
  <div class="ttc" id="classSVF_1_1ConstraintNode_html_a7bf8a1955d6f19b8d0ae5bdeb9a0897f"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#a7bf8a1955d6f19b8d0ae5bdeb9a0897f">SVF::ConstraintNode::directOutEdgeEnd</a></div><div class="ttdeci">iterator directOutEdgeEnd()</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00176">ConsGNode.h:176</a></div></div>
373
373
  </div><!-- fragment -->
@@ -100,7 +100,7 @@ $(function() {
100
100
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GepObjVar.html#ae80d95a4d90ca64eca819e140445004c">GepObjVar</a>(const MemObj *mem, NodeID i, const LocationSet &amp;l, PNODEK ty=GepObjNode)</td><td class="entry"><a class="el" href="classSVF_1_1GepObjVar.html">SVF::GepObjVar</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
101
101
  <tr><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa288e3f5d01c94d5c5d685d43f08a6c4a">GepValNode</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></td><td class="entry"></td></tr>
102
102
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GepObjVar.html#a4c5e346db61f7e04c15bf8527d8eff3c">getBaseNode</a>(void) const</td><td class="entry"><a class="el" href="classSVF_1_1GepObjVar.html">SVF::GepObjVar</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
103
- <tr><td class="entry"><a class="el" href="classSVF_1_1GepObjVar.html#a0ec94a6e2833d6cc3cfe3da6a643ead2">getConstantFieldIdx</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GepObjVar.html">SVF::GepObjVar</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
103
+ <tr><td class="entry"><a class="el" href="classSVF_1_1GepObjVar.html#aaf2ab86c43e4f33183289f9bdead36c1">getConstantFieldIdx</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GepObjVar.html">SVF::GepObjVar</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
104
104
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html#a53439a493963d16e5a1b5ed36ab6d33e">getFunction</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
105
105
  <tr><td class="entry"><a class="el" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericNode.html">SVF::GenericNode&lt; NodeTy, EdgeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
106
106
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html#a76964ef7d4842a469d7720881499d8a6">getIncomingEdges</a>(SVFStmt::PEDGEK kind)</td><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
@@ -101,9 +101,9 @@ Public Member Functions</h2></td></tr>
101
101
  <tr class="memitem:a553e648804b39c503e7288dd0434c339 inherit pub_methods_classSVF_1_1GepObjVar"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1LocationSet.html">LocationSet</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GepObjVar.html#a553e648804b39c503e7288dd0434c339">getLocationSet</a> () const</td></tr>
102
102
  <tr class="memdesc:a553e648804b39c503e7288dd0434c339 inherit pub_methods_classSVF_1_1GepObjVar"><td class="mdescLeft">&#160;</td><td class="mdescRight">offset of the mem object <a href="classSVF_1_1GepObjVar.html#a553e648804b39c503e7288dd0434c339">More...</a><br /></td></tr>
103
103
  <tr class="separator:a553e648804b39c503e7288dd0434c339 inherit pub_methods_classSVF_1_1GepObjVar"><td class="memSeparator" colspan="2">&#160;</td></tr>
104
- <tr class="memitem:a0ec94a6e2833d6cc3cfe3da6a643ead2 inherit pub_methods_classSVF_1_1GepObjVar"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GepObjVar.html#a0ec94a6e2833d6cc3cfe3da6a643ead2">getConstantFieldIdx</a> () const</td></tr>
105
- <tr class="memdesc:a0ec94a6e2833d6cc3cfe3da6a643ead2 inherit pub_methods_classSVF_1_1GepObjVar"><td class="mdescLeft">&#160;</td><td class="mdescRight">offset of the mem object <a href="classSVF_1_1GepObjVar.html#a0ec94a6e2833d6cc3cfe3da6a643ead2">More...</a><br /></td></tr>
106
- <tr class="separator:a0ec94a6e2833d6cc3cfe3da6a643ead2 inherit pub_methods_classSVF_1_1GepObjVar"><td class="memSeparator" colspan="2">&#160;</td></tr>
104
+ <tr class="memitem:aaf2ab86c43e4f33183289f9bdead36c1 inherit pub_methods_classSVF_1_1GepObjVar"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GepObjVar.html#aaf2ab86c43e4f33183289f9bdead36c1">getConstantFieldIdx</a> () const</td></tr>
105
+ <tr class="memdesc:aaf2ab86c43e4f33183289f9bdead36c1 inherit pub_methods_classSVF_1_1GepObjVar"><td class="mdescLeft">&#160;</td><td class="mdescRight">offset of the mem object <a href="classSVF_1_1GepObjVar.html#aaf2ab86c43e4f33183289f9bdead36c1">More...</a><br /></td></tr>
106
+ <tr class="separator:aaf2ab86c43e4f33183289f9bdead36c1 inherit pub_methods_classSVF_1_1GepObjVar"><td class="memSeparator" colspan="2">&#160;</td></tr>
107
107
  <tr class="memitem:a5e371fae7592d763661a7cb777107ff4 inherit pub_methods_classSVF_1_1GepObjVar"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GepObjVar.html#a5e371fae7592d763661a7cb777107ff4">setBaseNode</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="el" href="classSVF_1_1GepObjVar.html#aff50e1d96403eeacaa64f7adb07ce0a5">base</a>)</td></tr>
108
108
  <tr class="memdesc:a5e371fae7592d763661a7cb777107ff4 inherit pub_methods_classSVF_1_1GepObjVar"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the base object from which this GEP node came from. <a href="classSVF_1_1GepObjVar.html#a5e371fae7592d763661a7cb777107ff4">More...</a><br /></td></tr>
109
109
  <tr class="separator:a5e371fae7592d763661a7cb777107ff4 inherit pub_methods_classSVF_1_1GepObjVar"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -946,10 +946,9 @@ Static Private Attributes</h2></td></tr>
946
946
  <p>Print the expressions in this model </p>
947
947
 
948
948
  <p class="definition">Definition at line <a class="el" href="Conditions_8cpp_source.html#l00179">179</a> of file <a class="el" href="Conditions_8cpp_source.html">Conditions.cpp</a>.</p>
949
- <div class="fragment"><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;{</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <a class="code" href="classSVF_1_1CondManager.html#a771bda4bb55dd8c95a03f1a74a215126">sol</a>.check() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; z3::model m = <a class="code" href="classSVF_1_1CondManager.html#a771bda4bb55dd8c95a03f1a74a215126">sol</a>.get_model();</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i &lt; m.size(); i++)</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; {</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; z3::func_decl v = m[<span class="keyword">static_cast&lt;</span><a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a><span class="keyword">&gt;</span>(i)];</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; v.name() &lt;&lt; <span class="stringliteral">&quot; = &quot;</span> &lt;&lt; m.get_const_interp(v) &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; }</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;}</div><div class="ttc" id="classSVF_1_1CondManager_html_a771bda4bb55dd8c95a03f1a74a215126"><div class="ttname"><a href="classSVF_1_1CondManager.html#a771bda4bb55dd8c95a03f1a74a215126">SVF::CondManager::sol</a></div><div class="ttdeci">z3::solver sol</div><div class="ttdef"><b>Definition:</b> <a href="Conditions_8h_source.html#l00303">Conditions.h:303</a></div></div>
949
+ <div class="fragment"><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;{</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <a class="code" href="classSVF_1_1CondManager.html#a771bda4bb55dd8c95a03f1a74a215126">sol</a>.check() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; z3::model m = <a class="code" href="classSVF_1_1CondManager.html#a771bda4bb55dd8c95a03f1a74a215126">sol</a>.get_model();</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i &lt; m.size(); i++)</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; {</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; z3::func_decl v = m[i];</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; v.name() &lt;&lt; <span class="stringliteral">&quot; = &quot;</span> &lt;&lt; m.get_const_interp(v) &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; }</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;}</div><div class="ttc" id="classSVF_1_1CondManager_html_a771bda4bb55dd8c95a03f1a74a215126"><div class="ttname"><a href="classSVF_1_1CondManager.html#a771bda4bb55dd8c95a03f1a74a215126">SVF::CondManager::sol</a></div><div class="ttdeci">z3::solver sol</div><div class="ttdef"><b>Definition:</b> <a href="Conditions_8h_source.html#l00303">Conditions.h:303</a></div></div>
950
950
  <div class="ttc" id="namespaceSVF_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="SVFBasicTypes_8h_source.html#l00077">SVFBasicTypes.h:77</a></div></div>
951
951
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
952
- <div class="ttc" id="namespaceSVF_html_ad781b0b14e89773e774072b280658ef3"><div class="ttname"><a href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">SVF::s64_t</a></div><div class="ttdeci">signed long long s64_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00080">SVFBasicTypes.h:80</a></div></div>
953
952
  </div><!-- fragment -->
954
953
  </div>
955
954
  </div>