svf-tools 1.0.331 → 1.0.335

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 (293) hide show
  1. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +2 -2
  2. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +4 -4
  3. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +3 -3
  4. package/SVF-doxygen/html/html/CSC_8cpp_source.html +2 -2
  5. package/SVF-doxygen/html/html/ConsGEdge_8h_source.html +3 -3
  6. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +17 -8
  7. package/SVF-doxygen/html/html/ConsG_8h_source.html +1 -1
  8. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +2 -2
  9. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +2 -2
  10. package/SVF-doxygen/html/html/DCHG_8h_source.html +5 -4
  11. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +2 -2
  12. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +3 -3
  14. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +3 -3
  15. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +1 -1
  16. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +3 -3
  17. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +3 -3
  18. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +4 -4
  19. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +5 -5
  20. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +1 -1
  21. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +1 -1
  22. package/SVF-doxygen/html/html/LocationSet_8h_source.html +2 -2
  23. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +2 -2
  24. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +6 -6
  25. package/SVF-doxygen/html/html/MemRegion_8h_source.html +2 -2
  26. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +2 -2
  27. package/SVF-doxygen/html/html/MemSSA_8h_source.html +2 -2
  28. package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +1 -1
  29. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +3 -3
  30. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +1 -1
  31. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +3 -3
  32. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +1 -1
  33. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +3 -3
  34. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +2 -2
  35. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +7 -7
  36. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +18 -18
  37. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +37 -37
  38. package/SVF-doxygen/html/html/SVFIR_8h_source.html +27 -27
  39. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
  40. package/SVF-doxygen/html/html/SVFStatements_8h.html +14 -12
  41. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +131 -123
  42. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +18 -18
  43. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +132 -129
  44. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +3 -3
  45. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +2 -2
  46. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +1 -1
  47. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +10 -10
  48. package/SVF-doxygen/html/html/VFGNode_8h_source.html +13 -13
  49. package/SVF-doxygen/html/html/VFG_8cpp_source.html +25 -25
  50. package/SVF-doxygen/html/html/VFG_8h_source.html +18 -17
  51. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +1 -1
  52. package/SVF-doxygen/html/html/annotated.html +271 -270
  53. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt-members.html +16 -10
  54. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +36 -14
  55. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.png +0 -0
  56. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +2 -2
  57. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +1 -1
  58. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +2 -2
  59. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +3 -3
  60. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +4 -4
  61. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +2 -2
  62. package/SVF-doxygen/html/html/classSVF_1_1AssignStmt-members.html +145 -0
  63. package/SVF-doxygen/html/html/classSVF_1_1AssignStmt.html +770 -0
  64. package/SVF-doxygen/html/html/classSVF_1_1AssignStmt.png +0 -0
  65. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +4 -4
  66. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt-members.html +7 -11
  67. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +19 -138
  68. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +3 -3
  69. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt-members.html +2 -2
  70. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +39 -39
  71. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +3 -3
  72. package/SVF-doxygen/html/html/classSVF_1_1CSC.html +2 -2
  73. package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode-members.html +4 -4
  74. package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode.html +4 -4
  75. package/SVF-doxygen/html/html/classSVF_1_1CallPE-members.html +19 -13
  76. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +43 -21
  77. package/SVF-doxygen/html/html/classSVF_1_1CallPE.png +0 -0
  78. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar-members.html +37 -40
  79. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.html +14 -22
  80. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar-members.html +37 -40
  81. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.html +15 -23
  82. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar-members.html +48 -51
  83. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +18 -26
  84. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt-members.html +7 -11
  85. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +20 -139
  86. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +3 -3
  87. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +18 -11
  88. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +2 -2
  89. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt-members.html +16 -10
  90. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +36 -14
  91. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.png +0 -0
  92. package/SVF-doxygen/html/html/classSVF_1_1DCHEdge-members.html +3 -3
  93. package/SVF-doxygen/html/html/classSVF_1_1DCHEdge.html +19 -19
  94. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +2 -2
  95. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar-members.html +37 -40
  96. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +16 -24
  97. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar-members.html +36 -39
  98. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +15 -23
  99. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar-members.html +37 -40
  100. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +21 -29
  101. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +1 -1
  102. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +1 -1
  103. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +3 -3
  104. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +5 -5
  105. package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode-members.html +2 -2
  106. package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode.html +4 -4
  107. package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode-members.html +2 -2
  108. package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode.html +4 -4
  109. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.html +3 -9
  110. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.png +0 -0
  111. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar-members.html +49 -52
  112. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +53 -61
  113. package/SVF-doxygen/html/html/classSVF_1_1GepStmt-members.html +23 -15
  114. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +166 -69
  115. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.png +0 -0
  116. package/SVF-doxygen/html/html/classSVF_1_1GepValVar-members.html +45 -48
  117. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +40 -48
  118. package/SVF-doxygen/html/html/classSVF_1_1GlobalBlockNode-members.html +2 -2
  119. package/SVF-doxygen/html/html/classSVF_1_1GlobalBlockNode.html +4 -4
  120. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode-members.html +2 -2
  121. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +10 -10
  122. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +12 -12
  123. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +1 -1
  124. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +2 -2
  125. package/SVF-doxygen/html/html/classSVF_1_1InterBlockNode-members.html +2 -2
  126. package/SVF-doxygen/html/html/classSVF_1_1InterBlockNode.html +4 -4
  127. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  128. package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode-members.html +2 -2
  129. package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode.html +4 -4
  130. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +2 -2
  131. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +1 -1
  132. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt-members.html +16 -10
  133. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +36 -14
  134. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.png +0 -0
  135. package/SVF-doxygen/html/html/classSVF_1_1LocationSet-members.html +1 -1
  136. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +12 -12
  137. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +10 -10
  138. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +6 -6
  139. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt-members.html +36 -29
  140. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +250 -31
  141. package/SVF-doxygen/html/html/classSVF_1_1NormalGepCGEdge-members.html +2 -2
  142. package/SVF-doxygen/html/html/classSVF_1_1NormalGepCGEdge.html +14 -14
  143. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt-members.html +51 -46
  144. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt.html +53 -93
  145. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt.png +0 -0
  146. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +1 -1
  147. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +1 -1
  148. package/SVF-doxygen/html/html/classSVF_1_1ObjVar-members.html +37 -40
  149. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +34 -42
  150. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +3 -3
  151. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +4 -4
  152. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +1 -1
  153. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt-members.html +5 -9
  154. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +18 -137
  155. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +7 -7
  156. package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode-members.html +2 -2
  157. package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode.html +4 -4
  158. package/SVF-doxygen/html/html/classSVF_1_1RetPE-members.html +16 -10
  159. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +43 -21
  160. package/SVF-doxygen/html/html/classSVF_1_1RetPE.png +0 -0
  161. package/SVF-doxygen/html/html/classSVF_1_1RetPN-members.html +36 -39
  162. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +16 -24
  163. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +2 -2
  164. package/SVF-doxygen/html/html/classSVF_1_1SVFIR-members.html +1 -1
  165. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +61 -53
  166. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +1 -1
  167. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +24 -18
  168. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +12 -8
  169. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.png +0 -0
  170. package/SVF-doxygen/html/html/classSVF_1_1SVFVar-members.html +28 -25
  171. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +185 -107
  172. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +3 -3
  173. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt-members.html +16 -10
  174. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +36 -14
  175. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.png +0 -0
  176. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +2 -2
  177. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE-members.html +18 -12
  178. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +35 -13
  179. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.png +0 -0
  180. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE-members.html +17 -11
  181. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +35 -13
  182. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.png +0 -0
  183. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +1 -1
  184. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +17 -17
  185. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt-members.html +2 -2
  186. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +32 -32
  187. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +2 -2
  188. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +34 -34
  189. package/SVF-doxygen/html/html/classSVF_1_1ValVar-members.html +36 -39
  190. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +19 -27
  191. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN-members.html +36 -39
  192. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +16 -24
  193. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt-members.html +52 -45
  194. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt.html +56 -25
  195. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt.png +0 -0
  196. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +1 -1
  197. package/SVF-doxygen/html/html/classes.html +91 -93
  198. package/SVF-doxygen/html/html/functions_a.html +18 -15
  199. package/SVF-doxygen/html/html/functions_c.html +16 -15
  200. package/SVF-doxygen/html/html/functions_func.html +18 -15
  201. package/SVF-doxygen/html/html/functions_func_c.html +24 -23
  202. package/SVF-doxygen/html/html/functions_func_g.html +45 -37
  203. package/SVF-doxygen/html/html/functions_func_o.html +5 -3
  204. package/SVF-doxygen/html/html/functions_func_s.html +1 -1
  205. package/SVF-doxygen/html/html/functions_func_t.html +1 -0
  206. package/SVF-doxygen/html/html/functions_g.html +46 -38
  207. package/SVF-doxygen/html/html/functions_i.html +7 -6
  208. package/SVF-doxygen/html/html/functions_l.html +4 -4
  209. package/SVF-doxygen/html/html/functions_m.html +1 -1
  210. package/SVF-doxygen/html/html/functions_o.html +12 -10
  211. package/SVF-doxygen/html/html/functions_p.html +12 -8
  212. package/SVF-doxygen/html/html/functions_rela.html +56 -1
  213. package/SVF-doxygen/html/html/functions_s.html +14 -15
  214. package/SVF-doxygen/html/html/functions_t.html +9 -10
  215. package/SVF-doxygen/html/html/functions_v.html +8 -7
  216. package/SVF-doxygen/html/html/functions_vars_l.html +1 -1
  217. package/SVF-doxygen/html/html/functions_vars_o.html +1 -1
  218. package/SVF-doxygen/html/html/hierarchy.html +17 -16
  219. package/SVF-doxygen/html/html/menudata.js +13 -1
  220. package/SVF-doxygen/html/html/namespaceSVF.html +2 -0
  221. package/SVF-doxygen/html/html/search/all_1.js +5 -4
  222. package/SVF-doxygen/html/html/search/all_10.js +6 -6
  223. package/SVF-doxygen/html/html/search/all_13.js +12 -12
  224. package/SVF-doxygen/html/html/search/all_14.js +7 -7
  225. package/SVF-doxygen/html/html/search/all_15.js +1 -1
  226. package/SVF-doxygen/html/html/search/all_16.js +4 -4
  227. package/SVF-doxygen/html/html/search/all_3.js +2 -2
  228. package/SVF-doxygen/html/html/search/all_7.js +12 -8
  229. package/SVF-doxygen/html/html/search/all_9.js +1 -1
  230. package/SVF-doxygen/html/html/search/all_c.js +2 -2
  231. package/SVF-doxygen/html/html/search/all_d.js +3 -3
  232. package/SVF-doxygen/html/html/search/all_e.js +2 -2
  233. package/SVF-doxygen/html/html/search/all_f.js +3 -3
  234. package/SVF-doxygen/html/html/search/classes_0.js +2 -1
  235. package/SVF-doxygen/html/html/search/functions_0.js +5 -4
  236. package/SVF-doxygen/html/html/search/functions_10.js +2 -2
  237. package/SVF-doxygen/html/html/search/functions_11.js +1 -1
  238. package/SVF-doxygen/html/html/search/functions_13.js +1 -1
  239. package/SVF-doxygen/html/html/search/functions_2.js +1 -1
  240. package/SVF-doxygen/html/html/search/functions_6.js +12 -8
  241. package/SVF-doxygen/html/html/search/functions_b.js +1 -1
  242. package/SVF-doxygen/html/html/search/functions_d.js +1 -1
  243. package/SVF-doxygen/html/html/search/related_4.js +1 -2
  244. package/SVF-doxygen/html/html/search/related_5.js +2 -1
  245. package/SVF-doxygen/html/html/search/related_6.js +1 -4
  246. package/SVF-doxygen/html/html/search/related_7.js +4 -1
  247. package/SVF-doxygen/html/html/search/related_8.js +1 -5
  248. package/SVF-doxygen/html/html/search/related_9.js +6 -2
  249. package/SVF-doxygen/html/html/search/related_a.js +2 -1
  250. package/SVF-doxygen/html/html/search/related_b.html +26 -0
  251. package/SVF-doxygen/html/html/search/related_b.js +5 -0
  252. package/SVF-doxygen/html/html/search/searchdata.js +1 -1
  253. package/SVF-doxygen/html/html/search/variables_14.js +3 -3
  254. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  255. package/SVF-doxygen/html/html/search/variables_c.js +1 -1
  256. package/SVF-doxygen/html/html/search/variables_e.js +2 -2
  257. package/SVF-doxygen/html/html/search/variables_f.js +1 -1
  258. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  259. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +3 -3
  260. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01OfflineConsG_01_5_01_4.html +1 -1
  261. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1LocationSet_01_4.html +2 -2
  262. package/SVF-doxygen/html/html/svf-ex_8cpp.html +2 -2
  263. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +2 -2
  264. package/images/svf-stat.pdf +0 -0
  265. package/include/Graphs/ConsG.h +1 -1
  266. package/include/Graphs/ConsGEdge.h +2 -2
  267. package/include/Graphs/ICFGNode.h +2 -2
  268. package/include/Graphs/VFG.h +4 -4
  269. package/include/MemoryModel/LocationSet.h +3 -3
  270. package/include/MemoryModel/SVFIR.h +1 -1
  271. package/include/MemoryModel/SVFStatements.h +378 -308
  272. package/include/MemoryModel/SVFVariables.h +31 -30
  273. package/include/SVF-FE/DCHG.h +3 -3
  274. package/include/SVF-FE/SVFIRBuilder.h +2 -2
  275. package/include/Util/IRAnnotator.h +1 -1
  276. package/lib/Graphs/ConsG.cpp +25 -25
  277. package/lib/Graphs/VFG.cpp +10 -10
  278. package/lib/MSSA/MemRegion.cpp +5 -5
  279. package/lib/MemoryModel/LocationSet.cpp +2 -2
  280. package/lib/MemoryModel/PAGBuilderFromFile.cpp +1 -1
  281. package/lib/MemoryModel/PointerAnalysisImpl.cpp +1 -1
  282. package/lib/MemoryModel/SVFIR.cpp +9 -9
  283. package/lib/MemoryModel/SVFStatements.cpp +11 -11
  284. package/lib/MemoryModel/SVFVariables.cpp +2 -2
  285. package/lib/MemoryModel/SymbolTableInfo.cpp +2 -2
  286. package/lib/SVF-FE/DCHG.cpp +1 -1
  287. package/lib/SVF-FE/Graph2Json.cpp +1 -1
  288. package/lib/SVF-FE/SVFIRBuilder.cpp +4 -4
  289. package/lib/Util/TypeBasedHeapCloning.cpp +5 -5
  290. package/lib/WPA/AndersenSFR.cpp +2 -2
  291. package/lib/WPA/CSC.cpp +2 -2
  292. package/lib/WPA/FlowSensitiveTBHC.cpp +3 -3
  293. package/package.json +1 -1
@@ -78,6 +78,7 @@ Inheritance diagram for SVF::CopyStmt:</div>
78
78
  <div class="center">
79
79
  <img src="classSVF_1_1CopyStmt.png" usemap="#SVF::CopyStmt_map" alt=""/>
80
80
  <map id="SVF::CopyStmt_map" name="SVF::CopyStmt_map">
81
+ <area href="classSVF_1_1AssignStmt.html" alt="SVF::AssignStmt" shape="rect" coords="0,112,187,136"/>
81
82
  <area href="classSVF_1_1SVFStmt.html" alt="SVF::SVFStmt" shape="rect" coords="0,56,187,80"/>
82
83
  <area href="classSVF_1_1GenericEdge.html" alt="SVF::GenericEdge&lt; NodeTy &gt;" shape="rect" coords="0,0,187,24"/>
83
84
  </map>
@@ -90,6 +91,15 @@ Public Member Functions</h2></td></tr>
90
91
  <tr class="separator:a69b179ef052408034786d32a52c52389"><td class="memSeparator" colspan="2">&#160;</td></tr>
91
92
  <tr class="memitem:ad72ccb8ab29258b7c0fb54c48e8dec3a"><td class="memItemLeft" align="right" valign="top">virtual const std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CopyStmt.html#ad72ccb8ab29258b7c0fb54c48e8dec3a">toString</a> () const override</td></tr>
92
93
  <tr class="separator:ad72ccb8ab29258b7c0fb54c48e8dec3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
94
+ <tr class="inherit_header pub_methods_classSVF_1_1AssignStmt"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classSVF_1_1AssignStmt')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classSVF_1_1AssignStmt.html">SVF::AssignStmt</a></td></tr>
95
+ <tr class="memitem:ad03d28d16754c9049dd4d0ad3b6c1e28 inherit pub_methods_classSVF_1_1AssignStmt"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AssignStmt.html#ad03d28d16754c9049dd4d0ad3b6c1e28">getRHSVar</a> () const</td></tr>
96
+ <tr class="separator:ad03d28d16754c9049dd4d0ad3b6c1e28 inherit pub_methods_classSVF_1_1AssignStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
97
+ <tr class="memitem:a973a2b79da223275ed6a1831837b89c7 inherit pub_methods_classSVF_1_1AssignStmt"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AssignStmt.html#a973a2b79da223275ed6a1831837b89c7">getLHSVar</a> () const</td></tr>
98
+ <tr class="separator:a973a2b79da223275ed6a1831837b89c7 inherit pub_methods_classSVF_1_1AssignStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
99
+ <tr class="memitem:a4cec89489e82c60c287cae3327f3f01d inherit pub_methods_classSVF_1_1AssignStmt"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AssignStmt.html#a4cec89489e82c60c287cae3327f3f01d">getRHSVarID</a> () const</td></tr>
100
+ <tr class="separator:a4cec89489e82c60c287cae3327f3f01d inherit pub_methods_classSVF_1_1AssignStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
101
+ <tr class="memitem:a98f731be7be9bc8e7fd09f5c2204c840 inherit pub_methods_classSVF_1_1AssignStmt"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AssignStmt.html#a98f731be7be9bc8e7fd09f5c2204c840">getLHSVarID</a> () const</td></tr>
102
+ <tr class="separator:a98f731be7be9bc8e7fd09f5c2204c840 inherit pub_methods_classSVF_1_1AssignStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
93
103
  <tr class="inherit_header pub_methods_classSVF_1_1SVFStmt"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classSVF_1_1SVFStmt')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td></tr>
94
104
  <tr class="memitem:a47102f72115d41bff899b1b2ffec75b1 inherit pub_methods_classSVF_1_1SVFStmt"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStmt.html#a47102f72115d41bff899b1b2ffec75b1">SVFStmt</a> (<a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *s, <a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *d, <a class="el" href="classSVF_1_1GenericEdge.html#aab8892b73370c32b48621cd1d0cce614">GEdgeFlag</a> k)</td></tr>
95
105
  <tr class="memdesc:a47102f72115d41bff899b1b2ffec75b1 inherit pub_methods_classSVF_1_1SVFStmt"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <a href="classSVF_1_1SVFStmt.html#a47102f72115d41bff899b1b2ffec75b1">More...</a><br /></td></tr>
@@ -149,6 +159,14 @@ Static Public Member Functions</h2></td></tr>
149
159
  <tr class="separator:a5e883bb0bc30cf8b7d325b66f7a42848"><td class="memSeparator" colspan="2">&#160;</td></tr>
150
160
  <tr class="memitem:a12e960569a9f4beae99195a0fe2d3b68"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CopyStmt.html#a12e960569a9f4beae99195a0fe2d3b68">classof</a> (const <a class="el" href="namespaceSVF.html#ab502ff5e204678640c1081d104f60971">GenericPAGEdgeTy</a> *edge)</td></tr>
151
161
  <tr class="separator:a12e960569a9f4beae99195a0fe2d3b68"><td class="memSeparator" colspan="2">&#160;</td></tr>
162
+ <tr class="inherit_header pub_static_methods_classSVF_1_1AssignStmt"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classSVF_1_1AssignStmt')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classSVF_1_1AssignStmt.html">SVF::AssignStmt</a></td></tr>
163
+ <tr class="memitem:a4f94b6731f324e44fc4d4e06d7acdbf7 inherit pub_static_methods_classSVF_1_1AssignStmt"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AssignStmt.html#a4f94b6731f324e44fc4d4e06d7acdbf7">classof</a> (const <a class="el" href="classSVF_1_1AssignStmt.html">AssignStmt</a> *)</td></tr>
164
+ <tr class="memdesc:a4f94b6731f324e44fc4d4e06d7acdbf7 inherit pub_static_methods_classSVF_1_1AssignStmt"><td class="mdescLeft">&#160;</td><td class="mdescRight">Methods for support type inquiry through isa, cast, and dyn_cast: <a href="classSVF_1_1AssignStmt.html#a4f94b6731f324e44fc4d4e06d7acdbf7">More...</a><br /></td></tr>
165
+ <tr class="separator:a4f94b6731f324e44fc4d4e06d7acdbf7 inherit pub_static_methods_classSVF_1_1AssignStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
166
+ <tr class="memitem:ad5e2d41b8cd548628b59227368388ed0 inherit pub_static_methods_classSVF_1_1AssignStmt"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AssignStmt.html#ad5e2d41b8cd548628b59227368388ed0">classof</a> (const <a class="el" href="classSVF_1_1SVFStmt.html">SVFStmt</a> *edge)</td></tr>
167
+ <tr class="separator:ad5e2d41b8cd548628b59227368388ed0 inherit pub_static_methods_classSVF_1_1AssignStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
168
+ <tr class="memitem:a8b2837153dcf9f7e2adc3b30b2dd0245 inherit pub_static_methods_classSVF_1_1AssignStmt"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AssignStmt.html#a8b2837153dcf9f7e2adc3b30b2dd0245">classof</a> (const <a class="el" href="namespaceSVF.html#ab502ff5e204678640c1081d104f60971">GenericPAGEdgeTy</a> *edge)</td></tr>
169
+ <tr class="separator:a8b2837153dcf9f7e2adc3b30b2dd0245 inherit pub_static_methods_classSVF_1_1AssignStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
152
170
  <tr class="inherit_header pub_static_methods_classSVF_1_1SVFStmt"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classSVF_1_1SVFStmt')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td></tr>
153
171
  <tr class="memitem:a3b20523aed66ac8943d7d00ff777137b inherit pub_static_methods_classSVF_1_1SVFStmt"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classSVF_1_1GenericEdge.html#aab8892b73370c32b48621cd1d0cce614">GEdgeFlag</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStmt.html#a3b20523aed66ac8943d7d00ff777137b">makeEdgeFlagWithAddionalOpnd</a> (<a class="el" href="classSVF_1_1GenericEdge.html#a7eb93c9018c80057672a8ce71615dc0d">GEdgeKind</a> k, const <a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *var)</td></tr>
154
172
  <tr class="memdesc:a3b20523aed66ac8943d7d00ff777137b inherit pub_static_methods_classSVF_1_1SVFStmt"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the unique edgeFlag value from edge kind and second variable operand for <a class="el" href="classSVF_1_1MultiOpndStmt.html">MultiOpndStmt</a>. <a href="classSVF_1_1SVFStmt.html#a3b20523aed66ac8943d7d00ff777137b">More...</a><br /></td></tr>
@@ -224,6 +242,10 @@ Additional Inherited Members</h2></td></tr>
224
242
  <tr class="memitem:aa306e817648ab5def47e83473e99b3d3 inherit pub_static_attribs_classSVF_1_1SVFStmt"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespaceSVF.html#a2db29836a72e8d86e9baa6d8d55d2978">Size_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStmt.html#aa306e817648ab5def47e83473e99b3d3">totalEdgeNum</a></td></tr>
225
243
  <tr class="memdesc:aa306e817648ab5def47e83473e99b3d3 inherit pub_static_attribs_classSVF_1_1SVFStmt"><td class="mdescLeft">&#160;</td><td class="mdescRight">Total edge number. <a href="classSVF_1_1SVFStmt.html#aa306e817648ab5def47e83473e99b3d3">More...</a><br /></td></tr>
226
244
  <tr class="separator:aa306e817648ab5def47e83473e99b3d3 inherit pub_static_attribs_classSVF_1_1SVFStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
245
+ <tr class="inherit_header pro_methods_classSVF_1_1AssignStmt"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classSVF_1_1AssignStmt')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classSVF_1_1AssignStmt.html">SVF::AssignStmt</a></td></tr>
246
+ <tr class="memitem:aff4c35109790daed3c6170c985153620 inherit pro_methods_classSVF_1_1AssignStmt"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AssignStmt.html#aff4c35109790daed3c6170c985153620">AssignStmt</a> (<a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *s, <a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *d, <a class="el" href="classSVF_1_1GenericEdge.html#aab8892b73370c32b48621cd1d0cce614">GEdgeFlag</a> k)</td></tr>
247
+ <tr class="memdesc:aff4c35109790daed3c6170c985153620 inherit pro_methods_classSVF_1_1AssignStmt"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor <a href="classSVF_1_1AssignStmt.html#aff4c35109790daed3c6170c985153620">More...</a><br /></td></tr>
248
+ <tr class="separator:aff4c35109790daed3c6170c985153620 inherit pro_methods_classSVF_1_1AssignStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
227
249
  <tr class="inherit_header pro_static_attribs_classSVF_1_1GenericEdge"><td colspan="2" onclick="javascript:toggleInherit('pro_static_attribs_classSVF_1_1GenericEdge')"><img src="closed.png" alt="-"/>&#160;Static Protected Attributes inherited from <a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td></tr>
228
250
  <tr class="memitem:af1c2fd4b5ef1d7b7605572bf2489c298 inherit pro_static_attribs_classSVF_1_1GenericEdge"><td class="memItemLeft" align="right" valign="top">static constexpr unsigned char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GenericEdge.html#af1c2fd4b5ef1d7b7605572bf2489c298">EdgeKindMaskBits</a> = 8</td></tr>
229
251
  <tr class="memdesc:af1c2fd4b5ef1d7b7605572bf2489c298 inherit pro_static_attribs_classSVF_1_1GenericEdge"><td class="mdescLeft">&#160;</td><td class="mdescRight">We use the lower 8 bits to denote edge kind. <a href="classSVF_1_1GenericEdge.html#af1c2fd4b5ef1d7b7605572bf2489c298">More...</a><br /></td></tr>
@@ -234,7 +256,7 @@ Additional Inherited Members</h2></td></tr>
234
256
  <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
235
257
  <div class="textblock"><p>Copy statements (simple assignment and casting) </p>
236
258
 
237
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00232">232</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
259
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00305">305</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
238
260
  </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
239
261
  <a id="a63b808e82e75562c53e4371cc3d7ed1e"></a>
240
262
  <h2 class="memtitle"><span class="permalink"><a href="#a63b808e82e75562c53e4371cc3d7ed1e">&#9670;&nbsp;</a></span>CopyStmt() <span class="overload">[1/3]</span></h2>
@@ -327,9 +349,9 @@ Additional Inherited Members</h2></td></tr>
327
349
 
328
350
  <p>constructor </p>
329
351
 
330
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00256">256</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
331
- <div class="fragment"><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; : <a class="code" href="classSVF_1_1SVFStmt.html#a47102f72115d41bff899b1b2ffec75b1">SVFStmt</a>(s,d,<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVFStmt::Copy</a>)</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; {</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVF::SVFStmt::Copy</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
332
- <div class="ttc" id="classSVF_1_1SVFStmt_html_a47102f72115d41bff899b1b2ffec75b1"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a47102f72115d41bff899b1b2ffec75b1">SVF::SVFStmt::SVFStmt</a></div><div class="ttdeci">SVFStmt(SVFVar *s, SVFVar *d, GEdgeFlag k)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8cpp_source.html#l00046">SVFStatements.cpp:46</a></div></div>
352
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00329">329</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
353
+ <div class="fragment"><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; : <a class="code" href="classSVF_1_1AssignStmt.html#abc65520cc2b9608c97374829eb475c57">AssignStmt</a>(s,d,<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVFStmt::Copy</a>)</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; {</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; }</div><div class="ttc" id="classSVF_1_1AssignStmt_html_abc65520cc2b9608c97374829eb475c57"><div class="ttname"><a href="classSVF_1_1AssignStmt.html#abc65520cc2b9608c97374829eb475c57">SVF::AssignStmt::AssignStmt</a></div><div class="ttdeci">AssignStmt()</div><div class="ttdoc">place holder </div></div>
354
+ <div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVF::SVFStmt::Copy</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
333
355
  </div><!-- fragment -->
334
356
  </div>
335
357
  </div>
@@ -360,8 +382,8 @@ Additional Inherited Members</h2></td></tr>
360
382
 
361
383
  <p>Methods for support type inquiry through isa, cast, and dyn_cast: </p>
362
384
 
363
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00241">241</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
364
- <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; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; }</div></div><!-- fragment -->
385
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00314">314</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
386
+ <div class="fragment"><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; {</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; }</div></div><!-- fragment -->
365
387
  </div>
366
388
  </div>
367
389
  <a id="a5e883bb0bc30cf8b7d325b66f7a42848"></a>
@@ -388,8 +410,8 @@ Additional Inherited Members</h2></td></tr>
388
410
  </table>
389
411
  </div><div class="memdoc">
390
412
 
391
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00245">245</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
392
- <div class="fragment"><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; {</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">return</span> edge-&gt;getEdgeKind() == <a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVFStmt::Copy</a>;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVF::SVFStmt::Copy</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
413
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00318">318</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
414
+ <div class="fragment"><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; {</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordflow">return</span> edge-&gt;getEdgeKind() == <a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVFStmt::Copy</a>;</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVF::SVFStmt::Copy</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
393
415
  </div><!-- fragment -->
394
416
  </div>
395
417
  </div>
@@ -417,8 +439,8 @@ Additional Inherited Members</h2></td></tr>
417
439
  </table>
418
440
  </div><div class="memdoc">
419
441
 
420
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00249">249</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
421
- <div class="fragment"><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; {</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">return</span> edge-&gt;getEdgeKind() == <a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVFStmt::Copy</a>;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVF::SVFStmt::Copy</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
442
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00322">322</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
443
+ <div class="fragment"><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; {</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordflow">return</span> edge-&gt;getEdgeKind() == <a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVFStmt::Copy</a>;</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVF::SVFStmt::Copy</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
422
444
  </div><!-- fragment -->
423
445
  </div>
424
446
  </div>
@@ -473,14 +495,14 @@ Additional Inherited Members</h2></td></tr>
473
495
  </table>
474
496
  </div><div class="memdoc">
475
497
 
476
- <p>Reimplemented from <a class="el" href="classSVF_1_1SVFStmt.html#ad0b4dbe87e009518f22360c48b0d0c22">SVF::SVFStmt</a>.</p>
498
+ <p>Implements <a class="el" href="classSVF_1_1AssignStmt.html#abbe582a24bf4b42284f78eab5b18a90a">SVF::AssignStmt</a>.</p>
477
499
 
478
500
  <p class="definition">Definition at line <a class="el" href="SVFStatements_8cpp_source.html#l00079">79</a> of file <a class="el" href="SVFStatements_8cpp_source.html">SVFStatements.cpp</a>.</p>
479
- <div class="fragment"><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; std::string str;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;CopyStmt: [&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>() &lt;&lt; <span class="stringliteral">&quot;&lt;--&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>() &lt;&lt; <span class="stringliteral">&quot;]\t&quot;</span>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a8eba08052f7af57b762155a58844480c">Options::PAGDotGraphShorter</a>) {</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; rawstr &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a65ee8b43a3a4999eb112a197d1a9f882">getValue</a>());</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericEdge_html_ad9edb45e74ae675d9da82f5acf02d56e"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">SVF::GenericEdge::getDstID</a></div><div class="ttdeci">NodeID getDstID() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00077">GenericGraph.h:77</a></div></div>
480
- <div class="ttc" id="classSVF_1_1SVFStmt_html_a65ee8b43a3a4999eb112a197d1a9f882"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a65ee8b43a3a4999eb112a197d1a9f882">SVF::SVFStmt::getValue</a></div><div class="ttdeci">const Value * getValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00116">SVFStatements.h:116</a></div></div>
481
- <div class="ttc" id="classSVF_1_1GenericEdge_html_ae6792506a0150a9400d635eceab7f9e7"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">SVF::GenericEdge::getSrcID</a></div><div class="ttdeci">NodeID getSrcID() const</div><div class="ttdoc">get methods of the components </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00073">GenericGraph.h:73</a></div></div>
501
+ <div class="fragment"><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; std::string str;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;CopyStmt: [&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1AssignStmt.html#a98f731be7be9bc8e7fd09f5c2204c840">getLHSVarID</a>() &lt;&lt; <span class="stringliteral">&quot;&lt;--&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1AssignStmt.html#a4cec89489e82c60c287cae3327f3f01d">getRHSVarID</a>() &lt;&lt; <span class="stringliteral">&quot;]\t&quot;</span>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a8eba08052f7af57b762155a58844480c">Options::PAGDotGraphShorter</a>) {</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; rawstr &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a65ee8b43a3a4999eb112a197d1a9f882">getValue</a>());</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a65ee8b43a3a4999eb112a197d1a9f882"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a65ee8b43a3a4999eb112a197d1a9f882">SVF::SVFStmt::getValue</a></div><div class="ttdeci">const Value * getValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00116">SVFStatements.h:116</a></div></div>
502
+ <div class="ttc" id="classSVF_1_1AssignStmt_html_a4cec89489e82c60c287cae3327f3f01d"><div class="ttname"><a href="classSVF_1_1AssignStmt.html#a4cec89489e82c60c287cae3327f3f01d">SVF::AssignStmt::getRHSVarID</a></div><div class="ttdeci">NodeID getRHSVarID() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00256">SVFStatements.h:256</a></div></div>
482
503
  <div class="ttc" id="classSVF_1_1Options_html_a8eba08052f7af57b762155a58844480c"><div class="ttname"><a href="classSVF_1_1Options.html#a8eba08052f7af57b762155a58844480c">SVF::Options::PAGDotGraphShorter</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PAGDotGraphShorter</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00134">Options.h:134</a></div></div>
483
504
  <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00100">BasicTypes.h:100</a></div></div>
505
+ <div class="ttc" id="classSVF_1_1AssignStmt_html_a98f731be7be9bc8e7fd09f5c2204c840"><div class="ttname"><a href="classSVF_1_1AssignStmt.html#a98f731be7be9bc8e7fd09f5c2204c840">SVF::AssignStmt::getLHSVarID</a></div><div class="ttdeci">NodeID getLHSVarID() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00259">SVFStatements.h:259</a></div></div>
484
506
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7486fd8e5350879ed1cbd835c0d4e191"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVF::SVFUtil::value2String</a></div><div class="ttdeci">const std::string value2String(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00388">SVFUtil.cpp:388</a></div></div>
485
507
  </div><!-- fragment -->
486
508
  </div>
@@ -81,15 +81,15 @@ $(function() {
81
81
  <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; DCHNode &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
82
82
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#aeaa31a2c8479e831b36ce2e2582ceb86">getDstNode</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; DCHNode &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
83
83
  <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#abe8525c542def8162b094c169a01993b">getEdgeKind</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; DCHNode &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
84
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html#a228405631dd68eeeb274581865e4d13d">getOffset</a>(void) const</td><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html">SVF::DCHEdge</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
84
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html#a38963d42db8215b954391781116b47cd">getFieldOffset</a>(void) const</td><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html">SVF::DCHEdge</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
85
85
  <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; DCHNode &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
86
86
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#ab47ca533c415841ef75456cbad439589">getSrcNode</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; DCHNode &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
87
87
  <tr><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html#a9ab4cd83d9ee475d3d8445cd91839726a9c05805c60fe04033bd9815968059e90">INHERITANCE</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html">SVF::DCHEdge</a></td><td class="entry"></td></tr>
88
88
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html#a9ab4cd83d9ee475d3d8445cd91839726a3e807b4caeb170c5cd1e855ac1a92d77">INSTANCE</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html">SVF::DCHEdge</a></td><td class="entry"></td></tr>
89
89
  <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#aff95460d4b859e657a9198b7c5e5c736">NodeType</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; DCHNode &gt;</a></td><td class="entry"></td></tr>
90
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html#a16869c90d4e735bc09b8bceda90b99ed">offset</a></td><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html">SVF::DCHEdge</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
90
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html#a41bd0d95d588aa7fb77e83dc91654493">offset</a></td><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html">SVF::DCHEdge</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
91
91
  <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#a0e461644bf9a4e50099b38f09222e858">operator==</a>(const GenericEdge&lt; NodeType &gt; *rhs) const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; DCHNode &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
92
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html#a603f08c52473b025178d1bce67f39257">setOffset</a>(unsigned int offset)</td><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html">SVF::DCHEdge</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
92
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html#a70f757826082c95766c8324c1264e977">setOffset</a>(u32_t offset)</td><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html">SVF::DCHEdge</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
93
93
  <tr><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html#a9ab4cd83d9ee475d3d8445cd91839726a8b07351616a1798fa34ec3828f485ebb">STD_DEF</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1DCHEdge.html">SVF::DCHEdge</a></td><td class="entry"></td></tr>
94
94
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#a548daea0cac6491de91d4840b7297741">~GenericEdge</a>()</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; DCHNode &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
95
95
  </table></div><!-- contents -->
@@ -109,10 +109,10 @@ Public Types</h2></td></tr>
109
109
  Public Member Functions</h2></td></tr>
110
110
  <tr class="memitem:a17e3db6d11e0752064194ffc46cd9afe"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1DCHEdge.html#a17e3db6d11e0752064194ffc46cd9afe">DCHEdge</a> (<a class="el" href="classSVF_1_1DCHNode.html">DCHNode</a> *<a class="el" href="classSVF_1_1GenericEdge.html#a0e8736f88ee75da025d874f92328ca71">src</a>, <a class="el" href="classSVF_1_1DCHNode.html">DCHNode</a> *<a class="el" href="classSVF_1_1GenericEdge.html#aa41cb7482bdab1ba328f4b94f30f3ee4">dst</a>, <a class="el" href="classSVF_1_1GenericEdge.html#aab8892b73370c32b48621cd1d0cce614">GEdgeFlag</a> k=0)</td></tr>
111
111
  <tr class="separator:a17e3db6d11e0752064194ffc46cd9afe"><td class="memSeparator" colspan="2">&#160;</td></tr>
112
- <tr class="memitem:a228405631dd68eeeb274581865e4d13d"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1DCHEdge.html#a228405631dd68eeeb274581865e4d13d">getOffset</a> (void) const</td></tr>
113
- <tr class="separator:a228405631dd68eeeb274581865e4d13d"><td class="memSeparator" colspan="2">&#160;</td></tr>
114
- <tr class="memitem:a603f08c52473b025178d1bce67f39257"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1DCHEdge.html#a603f08c52473b025178d1bce67f39257">setOffset</a> (unsigned int <a class="el" href="classSVF_1_1DCHEdge.html#a16869c90d4e735bc09b8bceda90b99ed">offset</a>)</td></tr>
115
- <tr class="separator:a603f08c52473b025178d1bce67f39257"><td class="memSeparator" colspan="2">&#160;</td></tr>
112
+ <tr class="memitem:a38963d42db8215b954391781116b47cd"><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_1DCHEdge.html#a38963d42db8215b954391781116b47cd">getFieldOffset</a> (void) const</td></tr>
113
+ <tr class="separator:a38963d42db8215b954391781116b47cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
114
+ <tr class="memitem:a70f757826082c95766c8324c1264e977"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1DCHEdge.html#a70f757826082c95766c8324c1264e977">setOffset</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="el" href="classSVF_1_1DCHEdge.html#a41bd0d95d588aa7fb77e83dc91654493">offset</a>)</td></tr>
115
+ <tr class="separator:a70f757826082c95766c8324c1264e977"><td class="memSeparator" colspan="2">&#160;</td></tr>
116
116
  <tr class="inherit_header pub_methods_classSVF_1_1GenericEdge"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classSVF_1_1GenericEdge')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; DCHNode &gt;</a></td></tr>
117
117
  <tr class="memitem:a6764973569c281d483afab17a75cb4dc inherit pub_methods_classSVF_1_1GenericEdge"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GenericEdge.html#a6764973569c281d483afab17a75cb4dc">GenericEdge</a> (<a class="el" href="classSVF_1_1DCHNode.html">DCHNode</a> *s, <a class="el" href="classSVF_1_1DCHNode.html">DCHNode</a> *d, <a class="el" href="classSVF_1_1GenericEdge.html#aab8892b73370c32b48621cd1d0cce614">GEdgeFlag</a> k)</td></tr>
118
118
  <tr class="memdesc:a6764973569c281d483afab17a75cb4dc inherit pub_methods_classSVF_1_1GenericEdge"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <a href="classSVF_1_1GenericEdge.html#a6764973569c281d483afab17a75cb4dc">More...</a><br /></td></tr>
@@ -136,8 +136,8 @@ Public Member Functions</h2></td></tr>
136
136
  </table><table class="memberdecls">
137
137
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
138
138
  Private Attributes</h2></td></tr>
139
- <tr class="memitem:a16869c90d4e735bc09b8bceda90b99ed"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1DCHEdge.html#a16869c90d4e735bc09b8bceda90b99ed">offset</a></td></tr>
140
- <tr class="separator:a16869c90d4e735bc09b8bceda90b99ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
139
+ <tr class="memitem:a41bd0d95d588aa7fb77e83dc91654493"><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_1DCHEdge.html#a41bd0d95d588aa7fb77e83dc91654493">offset</a></td></tr>
140
+ <tr class="separator:a41bd0d95d588aa7fb77e83dc91654493"><td class="memSeparator" colspan="2">&#160;</td></tr>
141
141
  </table><table class="memberdecls">
142
142
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
143
143
  Additional Inherited Members</h2></td></tr>
@@ -237,15 +237,15 @@ Additional Inherited Members</h2></td></tr>
237
237
  </div><div class="memdoc">
238
238
 
239
239
  <p class="definition">Definition at line <a class="el" href="DCHG_8h_source.html#l00044">44</a> of file <a class="el" href="DCHG_8h_source.html">DCHG.h</a>.</p>
240
- <div class="fragment"><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; : GenericEdge&lt;DCHNode&gt;(<a class="code" href="classSVF_1_1GenericEdge.html#a0e8736f88ee75da025d874f92328ca71">src</a>, <a class="code" href="classSVF_1_1GenericEdge.html#aa41cb7482bdab1ba328f4b94f30f3ee4">dst</a>, k), <a class="code" href="classSVF_1_1DCHEdge.html#a16869c90d4e735bc09b8bceda90b99ed">offset</a>(0)</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; {</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; }</div><div class="ttc" id="classSVF_1_1GenericEdge_html_aa41cb7482bdab1ba328f4b94f30f3ee4"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#aa41cb7482bdab1ba328f4b94f30f3ee4">SVF::GenericEdge&lt; DCHNode &gt;::dst</a></div><div class="ttdeci">DCHNode * dst</div><div class="ttdoc">destination node </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00056">GenericGraph.h:56</a></div></div>
241
- <div class="ttc" id="classSVF_1_1DCHEdge_html_a16869c90d4e735bc09b8bceda90b99ed"><div class="ttname"><a href="classSVF_1_1DCHEdge.html#a16869c90d4e735bc09b8bceda90b99ed">SVF::DCHEdge::offset</a></div><div class="ttdeci">unsigned int offset</div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8h_source.html#l00060">DCHG.h:60</a></div></div>
240
+ <div class="fragment"><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; : GenericEdge&lt;DCHNode&gt;(<a class="code" href="classSVF_1_1GenericEdge.html#a0e8736f88ee75da025d874f92328ca71">src</a>, <a class="code" href="classSVF_1_1GenericEdge.html#aa41cb7482bdab1ba328f4b94f30f3ee4">dst</a>, k), <a class="code" href="classSVF_1_1DCHEdge.html#a41bd0d95d588aa7fb77e83dc91654493">offset</a>(0)</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; {</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; }</div><div class="ttc" id="classSVF_1_1DCHEdge_html_a41bd0d95d588aa7fb77e83dc91654493"><div class="ttname"><a href="classSVF_1_1DCHEdge.html#a41bd0d95d588aa7fb77e83dc91654493">SVF::DCHEdge::offset</a></div><div class="ttdeci">u32_t offset</div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8h_source.html#l00060">DCHG.h:60</a></div></div>
241
+ <div class="ttc" id="classSVF_1_1GenericEdge_html_aa41cb7482bdab1ba328f4b94f30f3ee4"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#aa41cb7482bdab1ba328f4b94f30f3ee4">SVF::GenericEdge&lt; DCHNode &gt;::dst</a></div><div class="ttdeci">DCHNode * dst</div><div class="ttdoc">destination node </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00056">GenericGraph.h:56</a></div></div>
242
242
  <div class="ttc" id="classSVF_1_1GenericEdge_html_a0e8736f88ee75da025d874f92328ca71"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#a0e8736f88ee75da025d874f92328ca71">SVF::GenericEdge&lt; DCHNode &gt;::src</a></div><div class="ttdeci">DCHNode * src</div><div class="ttdoc">source node </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00055">GenericGraph.h:55</a></div></div>
243
243
  </div><!-- fragment -->
244
244
  </div>
245
245
  </div>
246
246
  <h2 class="groupheader">Member Function Documentation</h2>
247
- <a id="a228405631dd68eeeb274581865e4d13d"></a>
248
- <h2 class="memtitle"><span class="permalink"><a href="#a228405631dd68eeeb274581865e4d13d">&#9670;&nbsp;</a></span>getOffset()</h2>
247
+ <a id="a38963d42db8215b954391781116b47cd"></a>
248
+ <h2 class="memtitle"><span class="permalink"><a href="#a38963d42db8215b954391781116b47cd">&#9670;&nbsp;</a></span>getFieldOffset()</h2>
249
249
 
250
250
  <div class="memitem">
251
251
  <div class="memproto">
@@ -254,7 +254,7 @@ Additional Inherited Members</h2></td></tr>
254
254
  <td class="mlabels-left">
255
255
  <table class="memname">
256
256
  <tr>
257
- <td class="memname">unsigned int SVF::DCHEdge::getOffset </td>
257
+ <td class="memname"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> SVF::DCHEdge::getFieldOffset </td>
258
258
  <td>(</td>
259
259
  <td class="paramtype">void&#160;</td>
260
260
  <td class="paramname"></td><td>)</td>
@@ -269,12 +269,12 @@ Additional Inherited Members</h2></td></tr>
269
269
  </div><div class="memdoc">
270
270
 
271
271
  <p class="definition">Definition at line <a class="el" href="DCHG_8h_source.html#l00049">49</a> of file <a class="el" href="DCHG_8h_source.html">DCHG.h</a>.</p>
272
- <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; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1DCHEdge.html#a16869c90d4e735bc09b8bceda90b99ed">offset</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div><div class="ttc" id="classSVF_1_1DCHEdge_html_a16869c90d4e735bc09b8bceda90b99ed"><div class="ttname"><a href="classSVF_1_1DCHEdge.html#a16869c90d4e735bc09b8bceda90b99ed">SVF::DCHEdge::offset</a></div><div class="ttdeci">unsigned int offset</div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8h_source.html#l00060">DCHG.h:60</a></div></div>
272
+ <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; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1DCHEdge.html#a41bd0d95d588aa7fb77e83dc91654493">offset</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div><div class="ttc" id="classSVF_1_1DCHEdge_html_a41bd0d95d588aa7fb77e83dc91654493"><div class="ttname"><a href="classSVF_1_1DCHEdge.html#a41bd0d95d588aa7fb77e83dc91654493">SVF::DCHEdge::offset</a></div><div class="ttdeci">u32_t offset</div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8h_source.html#l00060">DCHG.h:60</a></div></div>
273
273
  </div><!-- fragment -->
274
274
  </div>
275
275
  </div>
276
- <a id="a603f08c52473b025178d1bce67f39257"></a>
277
- <h2 class="memtitle"><span class="permalink"><a href="#a603f08c52473b025178d1bce67f39257">&#9670;&nbsp;</a></span>setOffset()</h2>
276
+ <a id="a70f757826082c95766c8324c1264e977"></a>
277
+ <h2 class="memtitle"><span class="permalink"><a href="#a70f757826082c95766c8324c1264e977">&#9670;&nbsp;</a></span>setOffset()</h2>
278
278
 
279
279
  <div class="memitem">
280
280
  <div class="memproto">
@@ -285,7 +285,7 @@ Additional Inherited Members</h2></td></tr>
285
285
  <tr>
286
286
  <td class="memname">void SVF::DCHEdge::setOffset </td>
287
287
  <td>(</td>
288
- <td class="paramtype">unsigned int&#160;</td>
288
+ <td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td>
289
289
  <td class="paramname"><em>offset</em></td><td>)</td>
290
290
  <td></td>
291
291
  </tr>
@@ -298,13 +298,13 @@ Additional Inherited Members</h2></td></tr>
298
298
  </div><div class="memdoc">
299
299
 
300
300
  <p class="definition">Definition at line <a class="el" href="DCHG_8h_source.html#l00054">54</a> of file <a class="el" href="DCHG_8h_source.html">DCHG.h</a>.</p>
301
- <div class="fragment"><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; this-&gt;<a class="code" href="classSVF_1_1DCHEdge.html#a16869c90d4e735bc09b8bceda90b99ed">offset</a> = <a class="code" href="classSVF_1_1DCHEdge.html#a16869c90d4e735bc09b8bceda90b99ed">offset</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; }</div><div class="ttc" id="classSVF_1_1DCHEdge_html_a16869c90d4e735bc09b8bceda90b99ed"><div class="ttname"><a href="classSVF_1_1DCHEdge.html#a16869c90d4e735bc09b8bceda90b99ed">SVF::DCHEdge::offset</a></div><div class="ttdeci">unsigned int offset</div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8h_source.html#l00060">DCHG.h:60</a></div></div>
301
+ <div class="fragment"><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; this-&gt;<a class="code" href="classSVF_1_1DCHEdge.html#a41bd0d95d588aa7fb77e83dc91654493">offset</a> = <a class="code" href="classSVF_1_1DCHEdge.html#a41bd0d95d588aa7fb77e83dc91654493">offset</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; }</div><div class="ttc" id="classSVF_1_1DCHEdge_html_a41bd0d95d588aa7fb77e83dc91654493"><div class="ttname"><a href="classSVF_1_1DCHEdge.html#a41bd0d95d588aa7fb77e83dc91654493">SVF::DCHEdge::offset</a></div><div class="ttdeci">u32_t offset</div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8h_source.html#l00060">DCHG.h:60</a></div></div>
302
302
  </div><!-- fragment -->
303
303
  </div>
304
304
  </div>
305
305
  <h2 class="groupheader">Member Data Documentation</h2>
306
- <a id="a16869c90d4e735bc09b8bceda90b99ed"></a>
307
- <h2 class="memtitle"><span class="permalink"><a href="#a16869c90d4e735bc09b8bceda90b99ed">&#9670;&nbsp;</a></span>offset</h2>
306
+ <a id="a41bd0d95d588aa7fb77e83dc91654493"></a>
307
+ <h2 class="memtitle"><span class="permalink"><a href="#a41bd0d95d588aa7fb77e83dc91654493">&#9670;&nbsp;</a></span>offset</h2>
308
308
 
309
309
  <div class="memitem">
310
310
  <div class="memproto">
@@ -313,7 +313,7 @@ Additional Inherited Members</h2></td></tr>
313
313
  <td class="mlabels-left">
314
314
  <table class="memname">
315
315
  <tr>
316
- <td class="memname">unsigned int SVF::DCHEdge::offset</td>
316
+ <td class="memname"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> SVF::DCHEdge::offset</td>
317
317
  </tr>
318
318
  </table>
319
319
  </td>
@@ -1355,13 +1355,13 @@ Additional Inherited Members</h2></td></tr>
1355
1355
  <p>Construction helper to process DIDerivedTypes. </p>
1356
1356
 
1357
1357
  <p class="definition">Definition at line <a class="el" href="DCHG_8cpp_source.html#l00097">97</a> of file <a class="el" href="DCHG_8cpp_source.html">DCHG.cpp</a>.</p>
1358
- <div class="fragment"><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;{</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">switch</span> (derivedType-&gt;getTag())</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">case</span> dwarf::DW_TAG_inheritance:</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="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(SVFUtil::isa&lt;DIType&gt;(derivedType-&gt;getScope()) &amp;&amp; <span class="stringliteral">&quot;inheriting from non-type?&quot;</span>);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classSVF_1_1DCHEdge.html">DCHEdge</a> *edge = <a class="code" href="classSVF_1_1DCHGraph.html#a294a2075c97e1db8003393fb472c1def">addEdge</a>(SVFUtil::dyn_cast&lt;DIType&gt;(derivedType-&gt;getScope()),</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; derivedType-&gt;getBaseType(), <a class="code" href="classSVF_1_1DCHEdge.html#a9ab4cd83d9ee475d3d8445cd91839726a9c05805c60fe04033bd9815968059e90">DCHEdge::INHERITANCE</a>);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">// If the offset does not exist (for primary base), getOffset should return 0.</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; edge-&gt;<a class="code" href="classSVF_1_1DCHEdge.html#a603f08c52473b025178d1bce67f39257">setOffset</a>(derivedType-&gt;getOffsetInBits());</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_member:</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_friend:</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="comment">// Don&#39;t care.</span></div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_typedef:</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="classSVF_1_1DCHGraph.html#a6d97a772afe16c1483e65eea81f82603">handleTypedef</a>(derivedType);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_pointer_type:</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_ptr_to_member_type:</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_reference_type:</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_rvalue_reference_type:</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1DCHGraph.html#aa6f49dfc9e3580d3f2d8c257395eb11e">extended</a>) <a class="code" href="classSVF_1_1DCHGraph.html#a9ed6b91fad334605f514049a2072b538">getOrCreateNode</a>(derivedType);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_const_type:</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_atomic_type:</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_volatile_type:</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_restrict_type:</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;DCHGraph::buildCHG: unexpected DerivedType tag.&quot;</span>);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;}</div><div class="ttc" id="classSVF_1_1DCHGraph_html_a9ed6b91fad334605f514049a2072b538"><div class="ttname"><a href="classSVF_1_1DCHGraph.html#a9ed6b91fad334605f514049a2072b538">SVF::DCHGraph::getOrCreateNode</a></div><div class="ttdeci">DCHNode * getOrCreateNode(const DIType *type)</div><div class="ttdoc">Creates a node from type, or returns it if it exists. </div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8cpp_source.html#l00403">DCHG.cpp:403</a></div></div>
1358
+ <div class="fragment"><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;{</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">switch</span> (derivedType-&gt;getTag())</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">case</span> dwarf::DW_TAG_inheritance:</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="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(SVFUtil::isa&lt;DIType&gt;(derivedType-&gt;getScope()) &amp;&amp; <span class="stringliteral">&quot;inheriting from non-type?&quot;</span>);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classSVF_1_1DCHEdge.html">DCHEdge</a> *edge = <a class="code" href="classSVF_1_1DCHGraph.html#a294a2075c97e1db8003393fb472c1def">addEdge</a>(SVFUtil::dyn_cast&lt;DIType&gt;(derivedType-&gt;getScope()),</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; derivedType-&gt;getBaseType(), <a class="code" href="classSVF_1_1DCHEdge.html#a9ab4cd83d9ee475d3d8445cd91839726a9c05805c60fe04033bd9815968059e90">DCHEdge::INHERITANCE</a>);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">// If the offset does not exist (for primary base), getFieldOffset should return 0.</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; edge-&gt;<a class="code" href="classSVF_1_1DCHEdge.html#a70f757826082c95766c8324c1264e977">setOffset</a>(derivedType-&gt;getOffsetInBits());</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_member:</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_friend:</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="comment">// Don&#39;t care.</span></div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_typedef:</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="classSVF_1_1DCHGraph.html#a6d97a772afe16c1483e65eea81f82603">handleTypedef</a>(derivedType);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_pointer_type:</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_ptr_to_member_type:</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_reference_type:</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_rvalue_reference_type:</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1DCHGraph.html#aa6f49dfc9e3580d3f2d8c257395eb11e">extended</a>) <a class="code" href="classSVF_1_1DCHGraph.html#a9ed6b91fad334605f514049a2072b538">getOrCreateNode</a>(derivedType);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_const_type:</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_atomic_type:</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_volatile_type:</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">case</span> dwarf::DW_TAG_restrict_type:</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;DCHGraph::buildCHG: unexpected DerivedType tag.&quot;</span>);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;}</div><div class="ttc" id="classSVF_1_1DCHGraph_html_a9ed6b91fad334605f514049a2072b538"><div class="ttname"><a href="classSVF_1_1DCHGraph.html#a9ed6b91fad334605f514049a2072b538">SVF::DCHGraph::getOrCreateNode</a></div><div class="ttdeci">DCHNode * getOrCreateNode(const DIType *type)</div><div class="ttdoc">Creates a node from type, or returns it if it exists. </div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8cpp_source.html#l00403">DCHG.cpp:403</a></div></div>
1359
1359
  <div class="ttc" id="classSVF_1_1DCHEdge_html"><div class="ttname"><a href="classSVF_1_1DCHEdge.html">SVF::DCHEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8h_source.html#l00030">DCHG.h:30</a></div></div>
1360
+ <div class="ttc" id="classSVF_1_1DCHEdge_html_a70f757826082c95766c8324c1264e977"><div class="ttname"><a href="classSVF_1_1DCHEdge.html#a70f757826082c95766c8324c1264e977">SVF::DCHEdge::setOffset</a></div><div class="ttdeci">void setOffset(u32_t offset)</div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8h_source.html#l00054">DCHG.h:54</a></div></div>
1360
1361
  <div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
1361
1362
  <div class="ttc" id="classSVF_1_1DCHGraph_html_a6d97a772afe16c1483e65eea81f82603"><div class="ttname"><a href="classSVF_1_1DCHGraph.html#a6d97a772afe16c1483e65eea81f82603">SVF::DCHGraph::handleTypedef</a></div><div class="ttdeci">void handleTypedef(const DIType *typedefType)</div><div class="ttdoc">Attaches the typedef(s) to the base node. </div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8cpp_source.html#l00138">DCHG.cpp:138</a></div></div>
1362
1363
  <div class="ttc" id="classSVF_1_1DCHGraph_html_a294a2075c97e1db8003393fb472c1def"><div class="ttname"><a href="classSVF_1_1DCHGraph.html#a294a2075c97e1db8003393fb472c1def">SVF::DCHGraph::addEdge</a></div><div class="ttdeci">DCHEdge * addEdge(const DIType *t1, const DIType *t2, DCHEdge::GEdgeKind et)</div><div class="ttdoc">Creates an edge between from t1 to t2. </div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8cpp_source.html#l00421">DCHG.cpp:421</a></div></div>
1363
1364
  <div class="ttc" id="classSVF_1_1DCHEdge_html_a9ab4cd83d9ee475d3d8445cd91839726a9c05805c60fe04033bd9815968059e90"><div class="ttname"><a href="classSVF_1_1DCHEdge.html#a9ab4cd83d9ee475d3d8445cd91839726a9c05805c60fe04033bd9815968059e90">SVF::DCHEdge::INHERITANCE</a></div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8h_source.html#l00035">DCHG.h:35</a></div></div>
1364
- <div class="ttc" id="classSVF_1_1DCHEdge_html_a603f08c52473b025178d1bce67f39257"><div class="ttname"><a href="classSVF_1_1DCHEdge.html#a603f08c52473b025178d1bce67f39257">SVF::DCHEdge::setOffset</a></div><div class="ttdeci">void setOffset(unsigned int offset)</div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8h_source.html#l00054">DCHG.h:54</a></div></div>
1365
1365
  <div class="ttc" id="classSVF_1_1DCHGraph_html_aa6f49dfc9e3580d3f2d8c257395eb11e"><div class="ttname"><a href="classSVF_1_1DCHGraph.html#aa6f49dfc9e3580d3f2d8c257395eb11e">SVF::DCHGraph::extended</a></div><div class="ttdeci">bool extended</div><div class="ttdoc">Whether this CHG is an extended CHG (first-field). Set by buildCHG. </div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8h_source.html#l00356">DCHG.h:356</a></div></div>
1366
1366
  </div><!-- fragment -->
1367
1367
  </div>