svf-tools 1.0.317 → 1.0.321

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 (547) hide show
  1. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +6 -6
  2. package/SVF-doxygen/html/html/Andersen_8cpp.html +1 -1
  3. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +4 -4
  4. package/SVF-doxygen/html/html/Andersen_8h_source.html +1 -1
  5. package/SVF-doxygen/html/html/CHGBuilder_8cpp.html +138 -0
  6. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +178 -0
  7. package/SVF-doxygen/html/html/CHGBuilder_8h.html +95 -0
  8. package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +109 -0
  9. package/SVF-doxygen/html/html/CHG_8cpp.html +10 -64
  10. package/SVF-doxygen/html/html/CHG_8cpp_source.html +31 -108
  11. package/SVF-doxygen/html/html/CHG_8h.html +9 -3
  12. package/SVF-doxygen/html/html/CHG_8h_source.html +82 -76
  13. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +37 -33
  14. package/SVF-doxygen/html/html/ConsG_8h_source.html +32 -32
  15. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +6 -6
  16. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +3 -3
  17. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +2 -2
  18. package/SVF-doxygen/html/html/DCHG_8h.html +1 -1
  19. package/SVF-doxygen/html/html/DCHG_8h_source.html +8 -8
  20. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +5 -5
  21. package/SVF-doxygen/html/html/DDAClient_8h_source.html +2 -2
  22. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +5 -5
  23. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +4 -4
  24. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +12 -12
  25. package/SVF-doxygen/html/html/DataFlowUtil_8cpp_source.html +1 -1
  26. package/SVF-doxygen/html/html/ExternalPAG_8cpp.html +1 -1
  27. package/SVF-doxygen/html/html/ExternalPAG_8cpp_source.html +22 -22
  28. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +1 -1
  29. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +1 -1
  30. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +2 -2
  31. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +4 -4
  32. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +7 -7
  33. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +11 -11
  34. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +3 -3
  35. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +16 -16
  36. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +6 -6
  37. package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +1 -1
  38. package/SVF-doxygen/html/html/GenericGraph_8h_source.html +3 -3
  39. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +2 -2
  40. package/SVF-doxygen/html/html/GraphPrinter_8h_source.html +1 -1
  41. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +4 -4
  42. package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
  43. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +1 -1
  44. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +20 -21
  45. package/SVF-doxygen/html/html/IRGraph_8h_source.html +37 -40
  46. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +4 -4
  47. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +2 -2
  48. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +6 -6
  49. package/SVF-doxygen/html/html/MTA_8cpp_source.html +1 -1
  50. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +18 -18
  51. package/SVF-doxygen/html/html/MemRegion_8h_source.html +2 -2
  52. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +3 -3
  53. package/SVF-doxygen/html/html/MemSSA_8h_source.html +2 -2
  54. package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +2 -2
  55. package/SVF-doxygen/html/html/OfflineConsG_8h_source.html +1 -1
  56. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +3 -3
  57. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +1 -1
  58. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +1 -1
  59. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +11 -11
  60. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +13 -13
  61. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +5 -5
  62. package/SVF-doxygen/html/html/PointerAnalysis_8cpp.html +1 -2
  63. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +30 -33
  64. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +31 -31
  65. package/SVF-doxygen/html/html/SVFBasicTypes_8h_source.html +1 -1
  66. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +4 -4
  67. package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +1 -1
  68. package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +9 -9
  69. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +48 -48
  70. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +36 -36
  71. package/SVF-doxygen/html/html/SVFG_8h_source.html +25 -25
  72. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp.html +0 -1
  73. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +5 -6
  74. package/SVF-doxygen/html/html/SVFIRBuilder_8h.html +1 -7
  75. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +90 -85
  76. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +70 -62
  77. package/SVF-doxygen/html/html/SVFIR_8h_source.html +168 -182
  78. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +39 -23
  79. package/SVF-doxygen/html/html/SVFStatements_8h.html +6 -0
  80. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +146 -94
  81. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +2 -2
  82. package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +1 -1
  83. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +5 -5
  84. package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +1 -1
  85. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +1 -1
  86. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
  87. package/SVF-doxygen/html/html/TCT_8cpp_source.html +1 -1
  88. package/SVF-doxygen/html/html/TCT_8h_source.html +1 -1
  89. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +2 -2
  90. package/SVF-doxygen/html/html/TypeAnalysis_8cpp.html +1 -1
  91. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +9 -9
  92. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +7 -7
  93. package/SVF-doxygen/html/html/VFGEdge_8h_source.html +1 -1
  94. package/SVF-doxygen/html/html/VFGNode_8h.html +2 -0
  95. package/SVF-doxygen/html/html/VFGNode_8h_source.html +143 -126
  96. package/SVF-doxygen/html/html/VFG_8cpp_source.html +136 -129
  97. package/SVF-doxygen/html/html/VFG_8h_source.html +144 -133
  98. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +6 -6
  99. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +3 -3
  100. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +4 -4
  101. package/SVF-doxygen/html/html/annotated.html +265 -261
  102. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode-members.html +75 -74
  103. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +10 -9
  104. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode-members.html +75 -74
  105. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +10 -9
  106. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode-members.html +73 -72
  107. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +31 -30
  108. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode-members.html +75 -74
  109. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +35 -34
  110. package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge-members.html +1 -1
  111. package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge.html +5 -5
  112. package/SVF-doxygen/html/html/classSVF_1_1AddrPE-members.html +42 -39
  113. package/SVF-doxygen/html/html/classSVF_1_1AddrPE.html +27 -22
  114. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode-members.html +77 -76
  115. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +23 -22
  116. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +3 -3
  117. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +18 -18
  118. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +8 -8
  119. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +1 -1
  120. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +6 -6
  121. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode-members.html +69 -68
  122. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +30 -29
  123. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +20 -20
  124. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPPE-members.html +49 -28
  125. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPPE.html +295 -34
  126. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPPE.png +0 -0
  127. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode-members.html +76 -75
  128. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +12 -11
  129. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt-members.html +70 -22
  130. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +633 -89
  131. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.png +0 -0
  132. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode-members.html +164 -0
  133. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +694 -0
  134. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.png +0 -0
  135. package/SVF-doxygen/html/html/classSVF_1_1CHEdge-members.html +1 -1
  136. package/SVF-doxygen/html/html/classSVF_1_1CHEdge.html +15 -15
  137. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder-members.html +100 -0
  138. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +777 -0
  139. package/SVF-doxygen/html/html/classSVF_1_1CHGraph-members.html +31 -46
  140. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +103 -651
  141. package/SVF-doxygen/html/html/classSVF_1_1CHNode.html +54 -54
  142. package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge-members.html +1 -1
  143. package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +2 -2
  144. package/SVF-doxygen/html/html/classSVF_1_1CallDirSVFGEdge-members.html +1 -1
  145. package/SVF-doxygen/html/html/classSVF_1_1CallDirSVFGEdge.html +4 -4
  146. package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge-members.html +1 -1
  147. package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +2 -2
  148. package/SVF-doxygen/html/html/classSVF_1_1CallPE-members.html +48 -45
  149. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +33 -28
  150. package/SVF-doxygen/html/html/classSVF_1_1CmpPE-members.html +49 -28
  151. package/SVF-doxygen/html/html/classSVF_1_1CmpPE.html +295 -34
  152. package/SVF-doxygen/html/html/classSVF_1_1CmpPE.png +0 -0
  153. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode-members.html +79 -78
  154. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +13 -12
  155. package/SVF-doxygen/html/html/classSVF_1_1CommonCHGraph.html +11 -11
  156. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +6 -6
  157. package/SVF-doxygen/html/html/classSVF_1_1ConstraintEdge-members.html +1 -1
  158. package/SVF-doxygen/html/html/classSVF_1_1ConstraintEdge.html +2 -2
  159. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +90 -86
  160. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +7 -7
  161. package/SVF-doxygen/html/html/classSVF_1_1CopyCGEdge-members.html +1 -1
  162. package/SVF-doxygen/html/html/classSVF_1_1CopyCGEdge.html +2 -2
  163. package/SVF-doxygen/html/html/classSVF_1_1CopyPE-members.html +45 -42
  164. package/SVF-doxygen/html/html/classSVF_1_1CopyPE.html +27 -22
  165. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode-members.html +80 -79
  166. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +11 -10
  167. package/SVF-doxygen/html/html/classSVF_1_1DCHEdge-members.html +1 -1
  168. package/SVF-doxygen/html/html/classSVF_1_1DCHEdge.html +2 -2
  169. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +6 -6
  170. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +3 -3
  171. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +7 -7
  172. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +4 -4
  173. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +14 -14
  174. package/SVF-doxygen/html/html/classSVF_1_1DirectSVFGEdge-members.html +1 -1
  175. package/SVF-doxygen/html/html/classSVF_1_1DirectSVFGEdge.html +4 -4
  176. package/SVF-doxygen/html/html/classSVF_1_1DummyVersionPropSVFGNode-members.html +72 -71
  177. package/SVF-doxygen/html/html/classSVF_1_1DummyVersionPropSVFGNode.html +10 -9
  178. package/SVF-doxygen/html/html/classSVF_1_1ExternalPAG.html +22 -22
  179. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +1 -1
  180. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +5 -5
  181. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +22 -22
  182. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +9 -9
  183. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +14 -14
  184. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode-members.html +76 -75
  185. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +10 -9
  186. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode-members.html +76 -75
  187. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +10 -9
  188. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode-members.html +76 -75
  189. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +38 -37
  190. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode-members.html +79 -78
  191. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +38 -37
  192. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +4 -4
  193. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge-members.html +1 -1
  194. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.html +11 -11
  195. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.png +0 -0
  196. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +8 -7
  197. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
  198. package/SVF-doxygen/html/html/classSVF_1_1GepCGEdge-members.html +1 -1
  199. package/SVF-doxygen/html/html/classSVF_1_1GepCGEdge.html +2 -2
  200. package/SVF-doxygen/html/html/classSVF_1_1GepPE-members.html +45 -42
  201. package/SVF-doxygen/html/html/classSVF_1_1GepPE.html +22 -17
  202. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode-members.html +80 -79
  203. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +23 -22
  204. package/SVF-doxygen/html/html/classSVF_1_1HareParForEdge-members.html +1 -1
  205. package/SVF-doxygen/html/html/classSVF_1_1HareParForEdge.html +2 -2
  206. package/SVF-doxygen/html/html/classSVF_1_1ICFGEdge-members.html +1 -1
  207. package/SVF-doxygen/html/html/classSVF_1_1ICFGEdge.html +2 -2
  208. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +4 -4
  209. package/SVF-doxygen/html/html/classSVF_1_1IRGraph-members.html +36 -37
  210. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +149 -163
  211. package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge-members.html +1 -1
  212. package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +2 -2
  213. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode-members.html +88 -87
  214. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +10 -9
  215. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode-members.html +86 -85
  216. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +46 -45
  217. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge-members.html +1 -1
  218. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +2 -2
  219. package/SVF-doxygen/html/html/classSVF_1_1IntraDirSVFGEdge-members.html +1 -1
  220. package/SVF-doxygen/html/html/classSVF_1_1IntraDirSVFGEdge.html +4 -4
  221. package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge-members.html +1 -1
  222. package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +2 -2
  223. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode-members.html +85 -84
  224. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +10 -9
  225. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode-members.html +84 -83
  226. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +33 -32
  227. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +5 -5
  228. package/SVF-doxygen/html/html/classSVF_1_1LoadCGEdge-members.html +1 -1
  229. package/SVF-doxygen/html/html/classSVF_1_1LoadCGEdge.html +2 -2
  230. package/SVF-doxygen/html/html/classSVF_1_1LoadPE-members.html +45 -42
  231. package/SVF-doxygen/html/html/classSVF_1_1LoadPE.html +27 -22
  232. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode-members.html +80 -79
  233. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +11 -10
  234. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +24 -24
  235. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode-members.html +70 -69
  236. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +10 -9
  237. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode-members.html +81 -80
  238. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +10 -9
  239. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +1 -1
  240. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +6 -6
  241. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +2 -2
  242. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +9 -9
  243. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt-members.html +143 -0
  244. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +669 -0
  245. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.png +0 -0
  246. package/SVF-doxygen/html/html/classSVF_1_1NormalGepCGEdge-members.html +1 -1
  247. package/SVF-doxygen/html/html/classSVF_1_1NormalGepCGEdge.html +2 -2
  248. package/SVF-doxygen/html/html/classSVF_1_1NormalGepPE-members.html +47 -44
  249. package/SVF-doxygen/html/html/classSVF_1_1NormalGepPE.html +34 -29
  250. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode-members.html +66 -65
  251. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +37 -36
  252. package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +6 -6
  253. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +17 -16
  254. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode-members.html +77 -76
  255. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +44 -43
  256. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge-members.html +1 -1
  257. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +2 -2
  258. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +11 -11
  259. package/SVF-doxygen/html/html/classSVF_1_1PhiPE-members.html +153 -0
  260. package/SVF-doxygen/html/html/classSVF_1_1PhiPE.html +717 -0
  261. package/SVF-doxygen/html/html/classSVF_1_1PhiPE.png +0 -0
  262. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +77 -79
  263. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +2 -2
  264. package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge-members.html +1 -1
  265. package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +2 -2
  266. package/SVF-doxygen/html/html/classSVF_1_1RetDirSVFGEdge-members.html +1 -1
  267. package/SVF-doxygen/html/html/classSVF_1_1RetDirSVFGEdge.html +4 -4
  268. package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge-members.html +1 -1
  269. package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +2 -2
  270. package/SVF-doxygen/html/html/classSVF_1_1RetPE-members.html +48 -45
  271. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +33 -28
  272. package/SVF-doxygen/html/html/classSVF_1_1SVFG-members.html +90 -86
  273. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +81 -71
  274. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +16 -16
  275. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT-members.html +105 -101
  276. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +149 -138
  277. package/SVF-doxygen/html/html/classSVF_1_1SVFIR-members.html +106 -119
  278. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +621 -1090
  279. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +14 -12
  280. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +401 -288
  281. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt-members.html +41 -35
  282. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +174 -37
  283. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.png +0 -0
  284. package/SVF-doxygen/html/html/classSVF_1_1SaberAnnotator.html +1 -1
  285. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +14 -14
  286. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +2 -2
  287. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode-members.html +76 -75
  288. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +14 -13
  289. package/SVF-doxygen/html/html/classSVF_1_1StoreCGEdge-members.html +1 -1
  290. package/SVF-doxygen/html/html/classSVF_1_1StoreCGEdge.html +2 -2
  291. package/SVF-doxygen/html/html/classSVF_1_1StorePE-members.html +45 -42
  292. package/SVF-doxygen/html/html/classSVF_1_1StorePE.html +27 -22
  293. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode-members.html +80 -79
  294. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +11 -10
  295. package/SVF-doxygen/html/html/classSVF_1_1TCTEdge-members.html +1 -1
  296. package/SVF-doxygen/html/html/classSVF_1_1TCTEdge.html +2 -2
  297. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE-members.html +49 -46
  298. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +22 -17
  299. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE-members.html +49 -46
  300. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +22 -17
  301. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +2 -2
  302. package/SVF-doxygen/html/html/classSVF_1_1ThreadForkEdge-members.html +1 -1
  303. package/SVF-doxygen/html/html/classSVF_1_1ThreadForkEdge.html +2 -2
  304. package/SVF-doxygen/html/html/classSVF_1_1ThreadJoinEdge-members.html +1 -1
  305. package/SVF-doxygen/html/html/classSVF_1_1ThreadJoinEdge.html +2 -2
  306. package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge-members.html +1 -1
  307. package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +2 -2
  308. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +12 -12
  309. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +9 -9
  310. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPPE-members.html +56 -43
  311. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPPE.html +329 -30
  312. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode-members.html +34 -32
  313. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +63 -30
  314. package/SVF-doxygen/html/html/classSVF_1_1VFG-members.html +52 -48
  315. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +515 -441
  316. package/SVF-doxygen/html/html/classSVF_1_1VFGEdge-members.html +1 -1
  317. package/SVF-doxygen/html/html/classSVF_1_1VFGEdge.html +4 -4
  318. package/SVF-doxygen/html/html/classSVF_1_1VFGNode-members.html +65 -64
  319. package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +22 -18
  320. package/SVF-doxygen/html/html/classSVF_1_1VFGNode.png +0 -0
  321. package/SVF-doxygen/html/html/classSVF_1_1VariantGepCGEdge-members.html +1 -1
  322. package/SVF-doxygen/html/html/classSVF_1_1VariantGepCGEdge.html +2 -2
  323. package/SVF-doxygen/html/html/classSVF_1_1VariantGepPE-members.html +47 -44
  324. package/SVF-doxygen/html/html/classSVF_1_1VariantGepPE.html +28 -23
  325. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +11 -11
  326. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +7 -7
  327. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +8 -8
  328. package/SVF-doxygen/html/html/classes.html +95 -94
  329. package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
  330. package/SVF-doxygen/html/html/dir_1870ebf480d659cc38d2dd7ac3aa8993.html +2 -2
  331. package/SVF-doxygen/html/html/dir_5840dc76920ee0f379cd88b55fa041fd.html +1 -1
  332. package/SVF-doxygen/html/html/dir_770a542efe75a1b68c109cb4e4290224.html +1 -3
  333. package/SVF-doxygen/html/html/dir_fa02919a30fec2d2c2d591b4d920d648.html +2 -2
  334. package/SVF-doxygen/html/html/files.html +18 -19
  335. package/SVF-doxygen/html/html/functions_0x7e.html +0 -3
  336. package/SVF-doxygen/html/html/functions_a.html +35 -36
  337. package/SVF-doxygen/html/html/functions_b.html +24 -17
  338. package/SVF-doxygen/html/html/functions_c.html +44 -43
  339. package/SVF-doxygen/html/html/functions_d.html +0 -3
  340. package/SVF-doxygen/html/html/functions_e.html +7 -9
  341. package/SVF-doxygen/html/html/functions_eval_b.html +4 -0
  342. package/SVF-doxygen/html/html/functions_eval_p.html +3 -0
  343. package/SVF-doxygen/html/html/functions_f.html +6 -15
  344. package/SVF-doxygen/html/html/functions_func.html +40 -38
  345. package/SVF-doxygen/html/html/functions_func_0x7e.html +0 -3
  346. package/SVF-doxygen/html/html/functions_func_b.html +14 -8
  347. package/SVF-doxygen/html/html/functions_func_c.html +32 -28
  348. package/SVF-doxygen/html/html/functions_func_d.html +0 -3
  349. package/SVF-doxygen/html/html/functions_func_e.html +0 -3
  350. package/SVF-doxygen/html/html/functions_func_g.html +92 -60
  351. package/SVF-doxygen/html/html/functions_func_h.html +3 -9
  352. package/SVF-doxygen/html/html/functions_func_i.html +12 -16
  353. package/SVF-doxygen/html/html/functions_func_m.html +6 -0
  354. package/SVF-doxygen/html/html/functions_func_o.html +11 -4
  355. package/SVF-doxygen/html/html/functions_func_p.html +6 -6
  356. package/SVF-doxygen/html/html/functions_func_r.html +3 -4
  357. package/SVF-doxygen/html/html/functions_func_s.html +6 -9
  358. package/SVF-doxygen/html/html/functions_func_t.html +14 -11
  359. package/SVF-doxygen/html/html/functions_g.html +91 -59
  360. package/SVF-doxygen/html/html/functions_h.html +2 -11
  361. package/SVF-doxygen/html/html/functions_i.html +12 -16
  362. package/SVF-doxygen/html/html/functions_l.html +6 -6
  363. package/SVF-doxygen/html/html/functions_m.html +9 -0
  364. package/SVF-doxygen/html/html/functions_n.html +6 -6
  365. package/SVF-doxygen/html/html/functions_o.html +31 -16
  366. package/SVF-doxygen/html/html/functions_p.html +23 -18
  367. package/SVF-doxygen/html/html/functions_r.html +4 -8
  368. package/SVF-doxygen/html/html/functions_rela.html +3 -0
  369. package/SVF-doxygen/html/html/functions_s.html +14 -16
  370. package/SVF-doxygen/html/html/functions_t.html +18 -15
  371. package/SVF-doxygen/html/html/functions_type_b.html +0 -6
  372. package/SVF-doxygen/html/html/functions_type_c.html +2 -7
  373. package/SVF-doxygen/html/html/functions_type_o.html +3 -0
  374. package/SVF-doxygen/html/html/functions_type_p.html +4 -1
  375. package/SVF-doxygen/html/html/functions_type_u.html +0 -6
  376. package/SVF-doxygen/html/html/functions_type_v.html +3 -0
  377. package/SVF-doxygen/html/html/functions_type_w.html +1 -0
  378. package/SVF-doxygen/html/html/functions_u.html +4 -13
  379. package/SVF-doxygen/html/html/functions_v.html +8 -5
  380. package/SVF-doxygen/html/html/functions_vars_a.html +0 -3
  381. package/SVF-doxygen/html/html/functions_vars_b.html +6 -3
  382. package/SVF-doxygen/html/html/functions_vars_c.html +5 -4
  383. package/SVF-doxygen/html/html/functions_vars_e.html +1 -2
  384. package/SVF-doxygen/html/html/functions_vars_f.html +0 -9
  385. package/SVF-doxygen/html/html/functions_vars_h.html +0 -3
  386. package/SVF-doxygen/html/html/functions_vars_m.html +3 -0
  387. package/SVF-doxygen/html/html/functions_vars_o.html +8 -3
  388. package/SVF-doxygen/html/html/functions_vars_p.html +3 -0
  389. package/SVF-doxygen/html/html/functions_vars_r.html +0 -3
  390. package/SVF-doxygen/html/html/functions_vars_s.html +3 -0
  391. package/SVF-doxygen/html/html/functions_vars_u.html +0 -3
  392. package/SVF-doxygen/html/html/functions_vars_v.html +3 -3
  393. package/SVF-doxygen/html/html/functions_w.html +9 -4
  394. package/SVF-doxygen/html/html/globals_d.html +0 -4
  395. package/SVF-doxygen/html/html/globals_e.html +6 -9
  396. package/SVF-doxygen/html/html/globals_func_d.html +0 -3
  397. package/SVF-doxygen/html/html/globals_func_e.html +6 -9
  398. package/SVF-doxygen/html/html/globals_func_g.html +2 -5
  399. package/SVF-doxygen/html/html/globals_g.html +0 -3
  400. package/SVF-doxygen/html/html/globals_o.html +0 -9
  401. package/SVF-doxygen/html/html/globals_p.html +1 -1
  402. package/SVF-doxygen/html/html/globals_r.html +3 -3
  403. package/SVF-doxygen/html/html/globals_s.html +3 -3
  404. package/SVF-doxygen/html/html/globals_vars.html +2 -5
  405. package/SVF-doxygen/html/html/globals_z.html +1 -1
  406. package/SVF-doxygen/html/html/hierarchy.html +105 -101
  407. package/SVF-doxygen/html/html/menudata.js +0 -1
  408. package/SVF-doxygen/html/html/mta_8cpp_source.html +1 -1
  409. package/SVF-doxygen/html/html/namespaceSVF.html +27 -37
  410. package/SVF-doxygen/html/html/namespacemembers_p.html +0 -3
  411. package/SVF-doxygen/html/html/namespacemembers_type_p.html +0 -3
  412. package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -1
  413. package/SVF-doxygen/html/html/search/all_1.js +20 -21
  414. package/SVF-doxygen/html/html/search/all_10.js +11 -10
  415. package/SVF-doxygen/html/html/search/all_12.js +6 -7
  416. package/SVF-doxygen/html/html/search/all_13.js +13 -13
  417. package/SVF-doxygen/html/html/search/all_14.js +3 -3
  418. package/SVF-doxygen/html/html/search/all_15.js +2 -4
  419. package/SVF-doxygen/html/html/search/all_16.js +2 -2
  420. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  421. package/SVF-doxygen/html/html/search/all_1a.js +1 -1
  422. package/SVF-doxygen/html/html/search/all_1b.js +0 -1
  423. package/SVF-doxygen/html/html/search/all_2.js +13 -10
  424. package/SVF-doxygen/html/html/search/all_3.js +15 -15
  425. package/SVF-doxygen/html/html/search/all_4.js +2 -4
  426. package/SVF-doxygen/html/html/search/all_5.js +3 -6
  427. package/SVF-doxygen/html/html/search/all_6.js +1 -4
  428. package/SVF-doxygen/html/html/search/all_7.js +34 -34
  429. package/SVF-doxygen/html/html/search/all_8.js +2 -5
  430. package/SVF-doxygen/html/html/search/all_9.js +4 -5
  431. package/SVF-doxygen/html/html/search/all_b.js +1 -1
  432. package/SVF-doxygen/html/html/search/all_c.js +3 -3
  433. package/SVF-doxygen/html/html/search/all_d.js +6 -3
  434. package/SVF-doxygen/html/html/search/all_e.js +6 -6
  435. package/SVF-doxygen/html/html/search/all_f.js +7 -8
  436. package/SVF-doxygen/html/html/search/classes_1.js +2 -0
  437. package/SVF-doxygen/html/html/search/classes_2.js +1 -0
  438. package/SVF-doxygen/html/html/search/classes_4.js +1 -2
  439. package/SVF-doxygen/html/html/search/classes_a.js +1 -0
  440. package/SVF-doxygen/html/html/search/classes_d.js +1 -0
  441. package/SVF-doxygen/html/html/search/enumvalues_1.js +1 -0
  442. package/SVF-doxygen/html/html/search/enumvalues_d.js +1 -0
  443. package/SVF-doxygen/html/html/search/files_2.js +2 -1
  444. package/SVF-doxygen/html/html/search/files_4.js +1 -3
  445. package/SVF-doxygen/html/html/search/functions_0.js +20 -20
  446. package/SVF-doxygen/html/html/search/functions_1.js +10 -8
  447. package/SVF-doxygen/html/html/search/functions_10.js +2 -3
  448. package/SVF-doxygen/html/html/search/functions_11.js +1 -1
  449. package/SVF-doxygen/html/html/search/functions_12.js +1 -1
  450. package/SVF-doxygen/html/html/search/functions_13.js +1 -1
  451. package/SVF-doxygen/html/html/search/functions_16.js +0 -1
  452. package/SVF-doxygen/html/html/search/functions_2.js +8 -8
  453. package/SVF-doxygen/html/html/search/functions_3.js +2 -4
  454. package/SVF-doxygen/html/html/search/functions_4.js +0 -2
  455. package/SVF-doxygen/html/html/search/functions_6.js +34 -34
  456. package/SVF-doxygen/html/html/search/functions_7.js +2 -4
  457. package/SVF-doxygen/html/html/search/functions_8.js +3 -4
  458. package/SVF-doxygen/html/html/search/functions_b.js +2 -0
  459. package/SVF-doxygen/html/html/search/functions_d.js +4 -6
  460. package/SVF-doxygen/html/html/search/functions_e.js +1 -1
  461. package/SVF-doxygen/html/html/search/functions_f.js +2 -2
  462. package/SVF-doxygen/html/html/search/related_0.js +1 -2
  463. package/SVF-doxygen/html/html/search/related_1.js +2 -1
  464. package/SVF-doxygen/html/html/search/related_2.js +1 -1
  465. package/SVF-doxygen/html/html/search/related_3.js +1 -2
  466. package/SVF-doxygen/html/html/search/related_4.js +2 -1
  467. package/SVF-doxygen/html/html/search/related_5.js +1 -4
  468. package/SVF-doxygen/html/html/search/related_6.js +4 -1
  469. package/SVF-doxygen/html/html/search/related_7.js +1 -5
  470. package/SVF-doxygen/html/html/search/related_8.js +5 -2
  471. package/SVF-doxygen/html/html/search/related_9.js +2 -1
  472. package/SVF-doxygen/html/html/search/related_a.html +26 -0
  473. package/SVF-doxygen/html/html/search/related_a.js +4 -0
  474. package/SVF-doxygen/html/html/search/searchdata.js +1 -1
  475. package/SVF-doxygen/html/html/search/typedefs_1.js +0 -2
  476. package/SVF-doxygen/html/html/search/typedefs_13.js +0 -2
  477. package/SVF-doxygen/html/html/search/typedefs_14.js +1 -0
  478. package/SVF-doxygen/html/html/search/typedefs_15.js +1 -1
  479. package/SVF-doxygen/html/html/search/typedefs_2.js +1 -3
  480. package/SVF-doxygen/html/html/search/typedefs_d.js +2 -2
  481. package/SVF-doxygen/html/html/search/typedefs_e.js +1 -0
  482. package/SVF-doxygen/html/html/search/typedefs_f.js +2 -2
  483. package/SVF-doxygen/html/html/search/variables_1.js +0 -1
  484. package/SVF-doxygen/html/html/search/variables_10.js +2 -1
  485. package/SVF-doxygen/html/html/search/variables_12.js +0 -1
  486. package/SVF-doxygen/html/html/search/variables_13.js +2 -1
  487. package/SVF-doxygen/html/html/search/variables_14.js +1 -1
  488. package/SVF-doxygen/html/html/search/variables_15.js +1 -2
  489. package/SVF-doxygen/html/html/search/variables_16.js +1 -1
  490. package/SVF-doxygen/html/html/search/variables_1a.js +1 -1
  491. package/SVF-doxygen/html/html/search/variables_2.js +2 -1
  492. package/SVF-doxygen/html/html/search/variables_3.js +2 -2
  493. package/SVF-doxygen/html/html/search/variables_4.js +0 -1
  494. package/SVF-doxygen/html/html/search/variables_5.js +1 -1
  495. package/SVF-doxygen/html/html/search/variables_6.js +1 -4
  496. package/SVF-doxygen/html/html/search/variables_8.js +0 -1
  497. package/SVF-doxygen/html/html/search/variables_b.js +1 -1
  498. package/SVF-doxygen/html/html/search/variables_d.js +2 -1
  499. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  500. package/SVF-doxygen/html/html/search/variables_f.js +2 -1
  501. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CHGraph_01_5_01_4.html +14 -14
  502. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +16 -16
  503. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +1 -1
  504. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +18 -18
  505. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +11 -11
  506. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +29 -29
  507. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01Inverse_3_01SVF_1_1CHNode_01_5_01_4_01_4.html +2 -2
  508. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01Inverse_3_01SVF_1_1SVFVar_01_5_01_4_01_4.html +1 -1
  509. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01Inverse_3_01SVF_1_1VFGNode_01_5_01_4_01_4.html +1 -1
  510. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1CHGraph_01_5_01_4.html +3 -3
  511. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1CHNode_01_5_01_4.html +2 -2
  512. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1IRGraph_01_5_01_4.html +2 -2
  513. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1SVFVar_01_5_01_4.html +1 -1
  514. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1VFGNode_01_5_01_4.html +1 -1
  515. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1VFG_01_5_01_4.html +2 -2
  516. package/SVF-doxygen/html/html/svf-ex_8cpp.html +5 -6
  517. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +5 -5
  518. package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
  519. package/include/{SVF-FE → Graphs}/CHG.h +37 -20
  520. package/include/Graphs/GenericGraph.h +1 -1
  521. package/include/Graphs/IRGraph.h +6 -15
  522. package/include/Graphs/SVFGOPT.h +3 -2
  523. package/include/Graphs/VFG.h +42 -41
  524. package/include/Graphs/VFGNode.h +60 -7
  525. package/include/MemoryModel/SVFIR.h +93 -159
  526. package/include/MemoryModel/SVFStatements.h +253 -21
  527. package/include/SVF-FE/CHGBuilder.h +69 -0
  528. package/include/SVF-FE/DCHG.h +1 -1
  529. package/include/SVF-FE/SVFIRBuilder.h +21 -8
  530. package/lib/Graphs/CHG.cpp +280 -0
  531. package/lib/Graphs/ConsG.cpp +9 -0
  532. package/lib/Graphs/IRGraph.cpp +23 -8
  533. package/lib/Graphs/VFG.cpp +45 -19
  534. package/lib/MSSA/SVFGBuilder.cpp +3 -2
  535. package/lib/MemoryModel/PAGBuilderFromFile.cpp +9 -3
  536. package/lib/MemoryModel/PointerAnalysis.cpp +3 -5
  537. package/lib/MemoryModel/SVFIR.cpp +68 -12
  538. package/lib/MemoryModel/SVFStatements.cpp +65 -4
  539. package/lib/SVF-FE/{CHG.cpp → CHGBuilder.cpp} +82 -324
  540. package/lib/SVF-FE/SVFIRBuilder.cpp +58 -57
  541. package/lib/WPA/Andersen.cpp +1 -1
  542. package/lib/WPA/TypeAnalysis.cpp +1 -1
  543. package/package.json +1 -1
  544. package/tools/Example/svf-ex.cpp +1 -1
  545. package/include/Graphs/ExternalPAG.h +0 -147
  546. package/include/SVF-FE/CommonCHG.h +0 -49
  547. package/lib/Graphs/ExternalPAG.cpp +0 -623
@@ -65,6 +65,7 @@ $(function() {
65
65
  <div class="summary">
66
66
  <a href="#pub-methods">Public Member Functions</a> &#124;
67
67
  <a href="#pri-methods">Private Member Functions</a> &#124;
68
+ <a href="#pri-attribs">Private Attributes</a> &#124;
68
69
  <a href="classSVF_1_1CmpPE-members.html">List of all members</a> </div>
69
70
  <div class="headertitle">
70
71
  <div class="title">SVF::CmpPE Class Reference</div> </div>
@@ -78,6 +79,7 @@ Inheritance diagram for SVF::CmpPE:</div>
78
79
  <div class="center">
79
80
  <img src="classSVF_1_1CmpPE.png" usemap="#SVF::CmpPE_map" alt=""/>
80
81
  <map id="SVF::CmpPE_map" name="SVF::CmpPE_map">
82
+ <area href="classSVF_1_1MultiOpndStmt.html" alt="SVF::MultiOpndStmt" shape="rect" coords="0,112,187,136"/>
81
83
  <area href="classSVF_1_1SVFStmt.html" alt="SVF::SVFStmt" shape="rect" coords="0,56,187,80"/>
82
84
  <area href="classSVF_1_1GenericEdge.html" alt="SVF::GenericEdge&lt; NodeTy &gt;" shape="rect" coords="0,0,187,24"/>
83
85
  </map>
@@ -85,11 +87,35 @@ Inheritance diagram for SVF::CmpPE:</div>
85
87
  <table class="memberdecls">
86
88
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
87
89
  Public Member Functions</h2></td></tr>
88
- <tr class="memitem:a821be09841152674695e12db8d8c11e3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CmpPE.html#a821be09841152674695e12db8d8c11e3">CmpPE</a> (<a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *s, <a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *d)</td></tr>
89
- <tr class="memdesc:a821be09841152674695e12db8d8c11e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor <a href="#a821be09841152674695e12db8d8c11e3">More...</a><br /></td></tr>
90
- <tr class="separator:a821be09841152674695e12db8d8c11e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
91
- <tr class="memitem:a69fa89fb9e2137e32555d2ce3a510752"><td class="memItemLeft" align="right" valign="top">virtual const std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CmpPE.html#a69fa89fb9e2137e32555d2ce3a510752">toString</a> () const</td></tr>
92
- <tr class="separator:a69fa89fb9e2137e32555d2ce3a510752"><td class="memSeparator" colspan="2">&#160;</td></tr>
90
+ <tr class="memitem:a13d12e0169603263ce62f724ff2fc020"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CmpPE.html#a13d12e0169603263ce62f724ff2fc020">CmpPE</a> (<a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *s, const <a class="el" href="classSVF_1_1MultiOpndStmt.html#acf8c7cfbf1c8baab672040635bb9a007">OPVars</a> &amp;opnds, <a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> oc)</td></tr>
91
+ <tr class="memdesc:a13d12e0169603263ce62f724ff2fc020"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor <a href="#a13d12e0169603263ce62f724ff2fc020">More...</a><br /></td></tr>
92
+ <tr class="separator:a13d12e0169603263ce62f724ff2fc020"><td class="memSeparator" colspan="2">&#160;</td></tr>
93
+ <tr class="memitem:aac8a0b9e765da7baa617c14cc6154ea2"><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_1CmpPE.html#aac8a0b9e765da7baa617c14cc6154ea2">getOpcode</a> () const</td></tr>
94
+ <tr class="separator:aac8a0b9e765da7baa617c14cc6154ea2"><td class="memSeparator" colspan="2">&#160;</td></tr>
95
+ <tr class="memitem:a421aaae2483b5df73c08e2b65b65372c"><td class="memItemLeft" align="right" valign="top">virtual const std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CmpPE.html#a421aaae2483b5df73c08e2b65b65372c">toString</a> () const override</td></tr>
96
+ <tr class="separator:a421aaae2483b5df73c08e2b65b65372c"><td class="memSeparator" colspan="2">&#160;</td></tr>
97
+ <tr class="inherit_header pub_methods_classSVF_1_1MultiOpndStmt"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classSVF_1_1MultiOpndStmt')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td></tr>
98
+ <tr class="memitem:aad0c81aeb48e5d94dd8c60d87b41714c inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1MultiOpndStmt.html#aad0c81aeb48e5d94dd8c60d87b41714c">MultiOpndStmt</a> (<a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *r, const <a class="el" href="classSVF_1_1MultiOpndStmt.html#acf8c7cfbf1c8baab672040635bb9a007">OPVars</a> &amp;opnds, <a class="el" href="classSVF_1_1GenericEdge.html#aab8892b73370c32b48621cd1d0cce614">GEdgeFlag</a> k)</td></tr>
99
+ <tr class="memdesc:aad0c81aeb48e5d94dd8c60d87b41714c inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor, only used by subclassess but not external users. <a href="classSVF_1_1MultiOpndStmt.html#aad0c81aeb48e5d94dd8c60d87b41714c">More...</a><br /></td></tr>
100
+ <tr class="separator:aad0c81aeb48e5d94dd8c60d87b41714c inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
101
+ <tr class="memitem:a18f9d9ea87def35d4eaa707a339316b8 inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a18f9d9ea87def35d4eaa707a339316b8">getOpVar</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> pos) const</td></tr>
102
+ <tr class="memdesc:a18f9d9ea87def35d4eaa707a339316b8 inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="mdescLeft">&#160;</td><td class="mdescRight">Operands and result at a BinaryNode e.g., p = q + r, <code>p</code> is resVar and <code>r</code> is OpVar. <a href="classSVF_1_1MultiOpndStmt.html#a18f9d9ea87def35d4eaa707a339316b8">More...</a><br /></td></tr>
103
+ <tr class="separator:a18f9d9ea87def35d4eaa707a339316b8 inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
104
+ <tr class="memitem:a00a14ad8f49912b876fd9d729fea4601 inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a00a14ad8f49912b876fd9d729fea4601">getRes</a> () const</td></tr>
105
+ <tr class="memdesc:a00a14ad8f49912b876fd9d729fea4601 inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="mdescLeft">&#160;</td><td class="mdescRight">Result <a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a>. <a href="classSVF_1_1MultiOpndStmt.html#a00a14ad8f49912b876fd9d729fea4601">More...</a><br /></td></tr>
106
+ <tr class="separator:a00a14ad8f49912b876fd9d729fea4601 inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
107
+ <tr class="memitem:a5c6efcc023e90ef2e618586091958c59 inherit pub_methods_classSVF_1_1MultiOpndStmt"><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_1MultiOpndStmt.html#a5c6efcc023e90ef2e618586091958c59">getOpVarID</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> pos) const</td></tr>
108
+ <tr class="separator:a5c6efcc023e90ef2e618586091958c59 inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
109
+ <tr class="memitem:a71a530eb9fa9f7e273e471b4a75a039e inherit pub_methods_classSVF_1_1MultiOpndStmt"><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_1MultiOpndStmt.html#a71a530eb9fa9f7e273e471b4a75a039e">getResID</a> () const</td></tr>
110
+ <tr class="separator:a71a530eb9fa9f7e273e471b4a75a039e inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
111
+ <tr class="memitem:af300571886b7aa2d84b0a70851c99bc3 inherit pub_methods_classSVF_1_1MultiOpndStmt"><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_1MultiOpndStmt.html#af300571886b7aa2d84b0a70851c99bc3">getOpVarNum</a> () const</td></tr>
112
+ <tr class="separator:af300571886b7aa2d84b0a70851c99bc3 inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
113
+ <tr class="memitem:a0441f2646fed28830439c41a0704ed4b inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1MultiOpndStmt.html#acf8c7cfbf1c8baab672040635bb9a007">OPVars</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a0441f2646fed28830439c41a0704ed4b">getOpndVars</a> () const</td></tr>
114
+ <tr class="separator:a0441f2646fed28830439c41a0704ed4b inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
115
+ <tr class="memitem:abebed8985cb4d4d1361c42e5454c90b9 inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memItemLeft" align="right" valign="top">OPVars::const_iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1MultiOpndStmt.html#abebed8985cb4d4d1361c42e5454c90b9">opVarBegin</a> () const</td></tr>
116
+ <tr class="separator:abebed8985cb4d4d1361c42e5454c90b9 inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
117
+ <tr class="memitem:ad53097d07487d564e7d13f9d7d9ab10c inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memItemLeft" align="right" valign="top">OPVars::const_iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1MultiOpndStmt.html#ad53097d07487d564e7d13f9d7d9ab10c">opVerEnd</a> () const</td></tr>
118
+ <tr class="separator:ad53097d07487d564e7d13f9d7d9ab10c inherit pub_methods_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
93
119
  <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
120
  <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
121
  <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>
@@ -136,8 +162,8 @@ Public Member Functions</h2></td></tr>
136
162
  <tr class="separator:ab47ca533c415841ef75456cbad439589 inherit pub_methods_classSVF_1_1GenericEdge"><td class="memSeparator" colspan="2">&#160;</td></tr>
137
163
  <tr class="memitem:aeaa31a2c8479e831b36ce2e2582ceb86 inherit pub_methods_classSVF_1_1GenericEdge"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1GenericEdge.html#aff95460d4b859e657a9198b7c5e5c736">NodeType</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GenericEdge.html#aeaa31a2c8479e831b36ce2e2582ceb86">getDstNode</a> () const</td></tr>
138
164
  <tr class="separator:aeaa31a2c8479e831b36ce2e2582ceb86 inherit pub_methods_classSVF_1_1GenericEdge"><td class="memSeparator" colspan="2">&#160;</td></tr>
139
- <tr class="memitem:a88b2086dcebb60bc86bca0fb94f49fca inherit pub_methods_classSVF_1_1GenericEdge"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GenericEdge.html#a88b2086dcebb60bc86bca0fb94f49fca">operator==</a> (const <a class="el" href="classSVF_1_1GenericEdge.html">GenericEdge</a>&lt; <a class="el" href="classSVF_1_1GenericEdge.html#aff95460d4b859e657a9198b7c5e5c736">NodeType</a> &gt; *rhs) const</td></tr>
140
- <tr class="separator:a88b2086dcebb60bc86bca0fb94f49fca inherit pub_methods_classSVF_1_1GenericEdge"><td class="memSeparator" colspan="2">&#160;</td></tr>
165
+ <tr class="memitem:a0e461644bf9a4e50099b38f09222e858 inherit pub_methods_classSVF_1_1GenericEdge"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GenericEdge.html#a0e461644bf9a4e50099b38f09222e858">operator==</a> (const <a class="el" href="classSVF_1_1GenericEdge.html">GenericEdge</a>&lt; <a class="el" href="classSVF_1_1GenericEdge.html#aff95460d4b859e657a9198b7c5e5c736">NodeType</a> &gt; *rhs) const</td></tr>
166
+ <tr class="separator:a0e461644bf9a4e50099b38f09222e858 inherit pub_methods_classSVF_1_1GenericEdge"><td class="memSeparator" colspan="2">&#160;</td></tr>
141
167
  </table><table class="memberdecls">
142
168
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
143
169
  Static Public Member Functions</h2></td></tr>
@@ -147,9 +173,22 @@ Static Public Member Functions</h2></td></tr>
147
173
  <tr class="separator:ab5f04e2bf9ba9fae32771fa62755409f"><td class="memSeparator" colspan="2">&#160;</td></tr>
148
174
  <tr class="memitem:a9352183f0f30803fc2c5df30e8ce74a7"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CmpPE.html#a9352183f0f30803fc2c5df30e8ce74a7">classof</a> (const <a class="el" href="classSVF_1_1SVFStmt.html">SVFStmt</a> *edge)</td></tr>
149
175
  <tr class="separator:a9352183f0f30803fc2c5df30e8ce74a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
176
+ <tr class="memitem:a0fc5278a19682e352bfb973ead91b7e2"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CmpPE.html#a0fc5278a19682e352bfb973ead91b7e2">classof</a> (const <a class="el" href="classSVF_1_1MultiOpndStmt.html">MultiOpndStmt</a> *edge)</td></tr>
177
+ <tr class="separator:a0fc5278a19682e352bfb973ead91b7e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
150
178
  <tr class="memitem:a54984454ad2ffe35fe35fb6528406144"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CmpPE.html#a54984454ad2ffe35fe35fb6528406144">classof</a> (const <a class="el" href="namespaceSVF.html#ab502ff5e204678640c1081d104f60971">GenericPAGEdgeTy</a> *edge)</td></tr>
151
179
  <tr class="separator:a54984454ad2ffe35fe35fb6528406144"><td class="memSeparator" colspan="2">&#160;</td></tr>
180
+ <tr class="inherit_header pub_static_methods_classSVF_1_1MultiOpndStmt"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classSVF_1_1MultiOpndStmt')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td></tr>
181
+ <tr class="memitem:aa0d9a26d3ad17432505b1f5bb36368d9 inherit pub_static_methods_classSVF_1_1MultiOpndStmt"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1MultiOpndStmt.html#aa0d9a26d3ad17432505b1f5bb36368d9">classof</a> (const <a class="el" href="classSVF_1_1MultiOpndStmt.html">MultiOpndStmt</a> *)</td></tr>
182
+ <tr class="memdesc:aa0d9a26d3ad17432505b1f5bb36368d9 inherit pub_static_methods_classSVF_1_1MultiOpndStmt"><td class="mdescLeft">&#160;</td><td class="mdescRight">Methods for support type inquiry through isa, cast, and dyn_cast: <a href="classSVF_1_1MultiOpndStmt.html#aa0d9a26d3ad17432505b1f5bb36368d9">More...</a><br /></td></tr>
183
+ <tr class="separator:aa0d9a26d3ad17432505b1f5bb36368d9 inherit pub_static_methods_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
184
+ <tr class="memitem:a5de8ff8363cb3f0b1427b69aa1058470 inherit pub_static_methods_classSVF_1_1MultiOpndStmt"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a5de8ff8363cb3f0b1427b69aa1058470">classof</a> (const <a class="el" href="classSVF_1_1SVFStmt.html">SVFStmt</a> *node)</td></tr>
185
+ <tr class="separator:a5de8ff8363cb3f0b1427b69aa1058470 inherit pub_static_methods_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
186
+ <tr class="memitem:ad20128715a7aaf173d60fe8f14575678 inherit pub_static_methods_classSVF_1_1MultiOpndStmt"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1MultiOpndStmt.html#ad20128715a7aaf173d60fe8f14575678">classof</a> (const <a class="el" href="namespaceSVF.html#ab502ff5e204678640c1081d104f60971">GenericPAGEdgeTy</a> *node)</td></tr>
187
+ <tr class="separator:ad20128715a7aaf173d60fe8f14575678 inherit pub_static_methods_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
152
188
  <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>
189
+ <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>
190
+ <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>
191
+ <tr class="separator:a3b20523aed66ac8943d7d00ff777137b inherit pub_static_methods_classSVF_1_1SVFStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
153
192
  <tr class="memitem:a4513c6e66b46c36219ba6d7403f3eb00 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#a4513c6e66b46c36219ba6d7403f3eb00">makeEdgeFlagWithCallInst</a> (<a class="el" href="classSVF_1_1GenericEdge.html#a7eb93c9018c80057672a8ce71615dc0d">GEdgeKind</a> k, const <a class="el" href="classSVF_1_1ICFGNode.html">ICFGNode</a> *cs)</td></tr>
154
193
  <tr class="memdesc:a4513c6e66b46c36219ba6d7403f3eb00 inherit pub_static_methods_classSVF_1_1SVFStmt"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the unique edgeFlag value from edge kind and call site Instruction. <a href="classSVF_1_1SVFStmt.html#a4513c6e66b46c36219ba6d7403f3eb00">More...</a><br /></td></tr>
155
194
  <tr class="separator:a4513c6e66b46c36219ba6d7403f3eb00 inherit pub_static_methods_classSVF_1_1SVFStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -172,9 +211,29 @@ Private Member Functions</h2></td></tr>
172
211
  <tr class="memitem:aeab9328da01789aa1974a372738c6ec5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CmpPE.html#aeab9328da01789aa1974a372738c6ec5">operator=</a> (const <a class="el" href="classSVF_1_1CmpPE.html">CmpPE</a> &amp;)</td></tr>
173
212
  <tr class="memdesc:aeab9328da01789aa1974a372738c6ec5"><td class="mdescLeft">&#160;</td><td class="mdescRight">place holder <a href="#aeab9328da01789aa1974a372738c6ec5">More...</a><br /></td></tr>
174
213
  <tr class="separator:aeab9328da01789aa1974a372738c6ec5"><td class="memSeparator" colspan="2">&#160;</td></tr>
214
+ <tr class="memitem:a8809fbf0f9b34769a3fc0025996df8bc"><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_1CmpPE.html#a8809fbf0f9b34769a3fc0025996df8bc">getSrcNode</a> ()</td></tr>
215
+ <tr class="memdesc:a8809fbf0f9b34769a3fc0025996df8bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">place holder, not allowed since this <a class="el" href="classSVF_1_1SVFStmt.html">SVFStmt</a> has multiple operands but not a single source <a href="#a8809fbf0f9b34769a3fc0025996df8bc">More...</a><br /></td></tr>
216
+ <tr class="separator:a8809fbf0f9b34769a3fc0025996df8bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
217
+ <tr class="memitem:a4e66cb6ffd9d6a6dd6d575ce091bec5f"><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_1CmpPE.html#a4e66cb6ffd9d6a6dd6d575ce091bec5f">getDstNode</a> ()</td></tr>
218
+ <tr class="memdesc:a4e66cb6ffd9d6a6dd6d575ce091bec5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">place holder, use <a class="el" href="classSVF_1_1MultiOpndStmt.html#a00a14ad8f49912b876fd9d729fea4601" title="Result SVFVar. ">getRes()</a> instead <a href="#a4e66cb6ffd9d6a6dd6d575ce091bec5f">More...</a><br /></td></tr>
219
+ <tr class="separator:a4e66cb6ffd9d6a6dd6d575ce091bec5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
220
+ <tr class="memitem:aa69a4905db6aa3a5a24645be84d75a2e"><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_1CmpPE.html#aa69a4905db6aa3a5a24645be84d75a2e">getSrcID</a> ()</td></tr>
221
+ <tr class="memdesc:aa69a4905db6aa3a5a24645be84d75a2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">place holder, use getOpVarID(pos) instead <a href="#aa69a4905db6aa3a5a24645be84d75a2e">More...</a><br /></td></tr>
222
+ <tr class="separator:aa69a4905db6aa3a5a24645be84d75a2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
223
+ <tr class="memitem:a8f70278ac9d9bf4cd8750c474646b0e2"><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_1CmpPE.html#a8f70278ac9d9bf4cd8750c474646b0e2">getDstID</a> ()</td></tr>
224
+ <tr class="memdesc:a8f70278ac9d9bf4cd8750c474646b0e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">place holder, use <a class="el" href="classSVF_1_1MultiOpndStmt.html#a71a530eb9fa9f7e273e471b4a75a039e">getResID()</a> instead <a href="#a8f70278ac9d9bf4cd8750c474646b0e2">More...</a><br /></td></tr>
225
+ <tr class="separator:a8f70278ac9d9bf4cd8750c474646b0e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
226
+ </table><table class="memberdecls">
227
+ <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
228
+ Private Attributes</h2></td></tr>
229
+ <tr class="memitem:a4a79b74096650de3d42b8af538f1d163"><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_1CmpPE.html#a4a79b74096650de3d42b8af538f1d163">opcode</a></td></tr>
230
+ <tr class="separator:a4a79b74096650de3d42b8af538f1d163"><td class="memSeparator" colspan="2">&#160;</td></tr>
175
231
  </table><table class="memberdecls">
176
232
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
177
233
  Additional Inherited Members</h2></td></tr>
234
+ <tr class="inherit_header pub_types_classSVF_1_1MultiOpndStmt"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classSVF_1_1MultiOpndStmt')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td></tr>
235
+ <tr class="memitem:acf8c7cfbf1c8baab672040635bb9a007 inherit pub_types_classSVF_1_1MultiOpndStmt"><td class="memItemLeft" align="right" valign="top">typedef std::vector&lt; <a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1MultiOpndStmt.html#acf8c7cfbf1c8baab672040635bb9a007">OPVars</a></td></tr>
236
+ <tr class="separator:acf8c7cfbf1c8baab672040635bb9a007 inherit pub_types_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
178
237
  <tr class="inherit_header pub_types_classSVF_1_1SVFStmt"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classSVF_1_1SVFStmt')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td></tr>
179
238
  <tr class="memitem:a0ab8621e75e75f03425c323b3ed62ce9 inherit pub_types_classSVF_1_1SVFStmt"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9">PEDGEK</a> { <br />
180
239
  &#160;&#160;<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a0a9a0f650e864e89b7cbb3dc8c8aa197">Addr</a>,
@@ -187,12 +246,14 @@ Additional Inherited Members</h2></td></tr>
187
246
  <a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ac2089ffeab3f27354b2094758c805746">NormalGep</a>,
188
247
  <a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a6b3a8902fc2aa68428e271012861a2a2">VariantGep</a>,
189
248
  <br />
190
- &#160;&#160;<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a375b956af2119d7abca8f1995f7701fd">ThreadFork</a>,
191
- <a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a3c3f8883c2d3b50aef6331d5da97ffb0">ThreadJoin</a>,
249
+ &#160;&#160;<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a6b3cd98eeb47c8475e7ee64480dcdee9">Phi</a>,
192
250
  <a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">Cmp</a>,
193
251
  <a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad58f5e59c55e1ffd23b83d16224fed13">BinaryOp</a>,
252
+ <a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad2a5e6fe0f2b5fefb53abb9e91c57688">UnaryOp</a>,
194
253
  <br />
195
- &#160;&#160;<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad2a5e6fe0f2b5fefb53abb9e91c57688">UnaryOp</a>
254
+ &#160;&#160;<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3">Branch</a>,
255
+ <a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a375b956af2119d7abca8f1995f7701fd">ThreadFork</a>,
256
+ <a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a3c3f8883c2d3b50aef6331d5da97ffb0">ThreadJoin</a>
196
257
  <br />
197
258
  }</td></tr>
198
259
  <tr class="separator:a0ab8621e75e75f03425c323b3ed62ce9 inherit pub_types_classSVF_1_1SVFStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -217,6 +278,9 @@ Additional Inherited Members</h2></td></tr>
217
278
  <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>
218
279
  <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>
219
280
  <tr class="separator:aa306e817648ab5def47e83473e99b3d3 inherit pub_static_attribs_classSVF_1_1SVFStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
281
+ <tr class="inherit_header pro_attribs_classSVF_1_1MultiOpndStmt"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classSVF_1_1MultiOpndStmt')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td></tr>
282
+ <tr class="memitem:a172025849492f4de8f87564ef08f5880 inherit pro_attribs_classSVF_1_1MultiOpndStmt"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1MultiOpndStmt.html#acf8c7cfbf1c8baab672040635bb9a007">OPVars</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a172025849492f4de8f87564ef08f5880">opVars</a></td></tr>
283
+ <tr class="separator:a172025849492f4de8f87564ef08f5880 inherit pro_attribs_classSVF_1_1MultiOpndStmt"><td class="memSeparator" colspan="2">&#160;</td></tr>
220
284
  <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>
221
285
  <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>
222
286
  <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>
@@ -227,7 +291,7 @@ Additional Inherited Members</h2></td></tr>
227
291
  <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
228
292
  <div class="textblock"><p>Compare instruction edge </p>
229
293
 
230
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00255">255</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
294
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00374">374</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
231
295
  </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
232
296
  <a id="aaf403a40a8ab78cee6b9c7d8b4548c96"></a>
233
297
  <h2 class="memtitle"><span class="permalink"><a href="#aaf403a40a8ab78cee6b9c7d8b4548c96">&#9670;&nbsp;</a></span>CmpPE() <span class="overload">[1/3]</span></h2>
@@ -284,8 +348,8 @@ Additional Inherited Members</h2></td></tr>
284
348
 
285
349
  </div>
286
350
  </div>
287
- <a id="a821be09841152674695e12db8d8c11e3"></a>
288
- <h2 class="memtitle"><span class="permalink"><a href="#a821be09841152674695e12db8d8c11e3">&#9670;&nbsp;</a></span>CmpPE() <span class="overload">[3/3]</span></h2>
351
+ <a id="a13d12e0169603263ce62f724ff2fc020"></a>
352
+ <h2 class="memtitle"><span class="permalink"><a href="#a13d12e0169603263ce62f724ff2fc020">&#9670;&nbsp;</a></span>CmpPE() <span class="overload">[3/3]</span></h2>
289
353
 
290
354
  <div class="memitem">
291
355
  <div class="memproto">
@@ -302,8 +366,14 @@ Additional Inherited Members</h2></td></tr>
302
366
  <tr>
303
367
  <td class="paramkey"></td>
304
368
  <td></td>
305
- <td class="paramtype"><a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> *&#160;</td>
306
- <td class="paramname"><em>d</em>&#160;</td>
369
+ <td class="paramtype">const <a class="el" href="classSVF_1_1MultiOpndStmt.html#acf8c7cfbf1c8baab672040635bb9a007">OPVars</a> &amp;&#160;</td>
370
+ <td class="paramname"><em>opnds</em>, </td>
371
+ </tr>
372
+ <tr>
373
+ <td class="paramkey"></td>
374
+ <td></td>
375
+ <td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td>
376
+ <td class="paramname"><em>oc</em>&#160;</td>
307
377
  </tr>
308
378
  <tr>
309
379
  <td></td>
@@ -320,15 +390,16 @@ Additional Inherited Members</h2></td></tr>
320
390
 
321
391
  <p>constructor </p>
322
392
 
323
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00279">279</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
324
- <div class="fragment"><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; : <a class="code" href="classSVF_1_1SVFStmt.html#a47102f72115d41bff899b1b2ffec75b1">SVFStmt</a>(s,d,<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVFStmt::Cmp</a>)</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; {</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVF::SVFStmt::Cmp</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
325
- <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#l00045">SVFStatements.cpp:45</a></div></div>
393
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00408">408</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
394
+ <div class="fragment"><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; : <a class="code" href="classSVF_1_1MultiOpndStmt.html#aad0c81aeb48e5d94dd8c60d87b41714c">MultiOpndStmt</a>(s,opnds,<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVFStmt::Cmp</a>), <a class="code" href="classSVF_1_1CmpPE.html#a4a79b74096650de3d42b8af538f1d163">opcode</a>(oc)</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; {</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVF::SVFStmt::Cmp</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
395
+ <div class="ttc" id="classSVF_1_1MultiOpndStmt_html_aad0c81aeb48e5d94dd8c60d87b41714c"><div class="ttname"><a href="classSVF_1_1MultiOpndStmt.html#aad0c81aeb48e5d94dd8c60d87b41714c">SVF::MultiOpndStmt::MultiOpndStmt</a></div><div class="ttdeci">MultiOpndStmt(SVFVar *r, const OPVars &amp;opnds, GEdgeFlag k)</div><div class="ttdoc">Constructor, only used by subclassess but not external users. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00269">SVFStatements.h:269</a></div></div>
396
+ <div class="ttc" id="classSVF_1_1CmpPE_html_a4a79b74096650de3d42b8af538f1d163"><div class="ttname"><a href="classSVF_1_1CmpPE.html#a4a79b74096650de3d42b8af538f1d163">SVF::CmpPE::opcode</a></div><div class="ttdeci">u32_t opcode</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00385">SVFStatements.h:385</a></div></div>
326
397
  </div><!-- fragment -->
327
398
  </div>
328
399
  </div>
329
400
  <h2 class="groupheader">Member Function Documentation</h2>
330
401
  <a id="ab5f04e2bf9ba9fae32771fa62755409f"></a>
331
- <h2 class="memtitle"><span class="permalink"><a href="#ab5f04e2bf9ba9fae32771fa62755409f">&#9670;&nbsp;</a></span>classof() <span class="overload">[1/3]</span></h2>
402
+ <h2 class="memtitle"><span class="permalink"><a href="#ab5f04e2bf9ba9fae32771fa62755409f">&#9670;&nbsp;</a></span>classof() <span class="overload">[1/4]</span></h2>
332
403
 
333
404
  <div class="memitem">
334
405
  <div class="memproto">
@@ -353,12 +424,12 @@ Additional Inherited Members</h2></td></tr>
353
424
 
354
425
  <p>Methods for support type inquiry through isa, cast, and dyn_cast: </p>
355
426
 
356
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00264">264</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
357
- <div class="fragment"><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; {</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; }</div></div><!-- fragment -->
427
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00389">389</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
428
+ <div class="fragment"><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; {</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; }</div></div><!-- fragment -->
358
429
  </div>
359
430
  </div>
360
431
  <a id="a9352183f0f30803fc2c5df30e8ce74a7"></a>
361
- <h2 class="memtitle"><span class="permalink"><a href="#a9352183f0f30803fc2c5df30e8ce74a7">&#9670;&nbsp;</a></span>classof() <span class="overload">[2/3]</span></h2>
432
+ <h2 class="memtitle"><span class="permalink"><a href="#a9352183f0f30803fc2c5df30e8ce74a7">&#9670;&nbsp;</a></span>classof() <span class="overload">[2/4]</span></h2>
362
433
 
363
434
  <div class="memitem">
364
435
  <div class="memproto">
@@ -381,13 +452,42 @@ Additional Inherited Members</h2></td></tr>
381
452
  </table>
382
453
  </div><div class="memdoc">
383
454
 
384
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00268">268</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
385
- <div class="fragment"><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; {</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordflow">return</span> edge-&gt;getEdgeKind() == <a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVFStmt::Cmp</a>;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVF::SVFStmt::Cmp</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
455
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00393">393</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
456
+ <div class="fragment"><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; {</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordflow">return</span> edge-&gt;getEdgeKind() == <a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVFStmt::Cmp</a>;</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVF::SVFStmt::Cmp</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
457
+ </div><!-- fragment -->
458
+ </div>
459
+ </div>
460
+ <a id="a0fc5278a19682e352bfb973ead91b7e2"></a>
461
+ <h2 class="memtitle"><span class="permalink"><a href="#a0fc5278a19682e352bfb973ead91b7e2">&#9670;&nbsp;</a></span>classof() <span class="overload">[3/4]</span></h2>
462
+
463
+ <div class="memitem">
464
+ <div class="memproto">
465
+ <table class="mlabels">
466
+ <tr>
467
+ <td class="mlabels-left">
468
+ <table class="memname">
469
+ <tr>
470
+ <td class="memname">static bool SVF::CmpPE::classof </td>
471
+ <td>(</td>
472
+ <td class="paramtype">const <a class="el" href="classSVF_1_1MultiOpndStmt.html">MultiOpndStmt</a> *&#160;</td>
473
+ <td class="paramname"><em>edge</em></td><td>)</td>
474
+ <td></td>
475
+ </tr>
476
+ </table>
477
+ </td>
478
+ <td class="mlabels-right">
479
+ <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
480
+ </tr>
481
+ </table>
482
+ </div><div class="memdoc">
483
+
484
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00397">397</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
485
+ <div class="fragment"><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; {</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">return</span> edge-&gt;getEdgeKind() == <a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVFStmt::Cmp</a>;</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVF::SVFStmt::Cmp</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
386
486
  </div><!-- fragment -->
387
487
  </div>
388
488
  </div>
389
489
  <a id="a54984454ad2ffe35fe35fb6528406144"></a>
390
- <h2 class="memtitle"><span class="permalink"><a href="#a54984454ad2ffe35fe35fb6528406144">&#9670;&nbsp;</a></span>classof() <span class="overload">[3/3]</span></h2>
490
+ <h2 class="memtitle"><span class="permalink"><a href="#a54984454ad2ffe35fe35fb6528406144">&#9670;&nbsp;</a></span>classof() <span class="overload">[4/4]</span></h2>
391
491
 
392
492
  <div class="memitem">
393
493
  <div class="memproto">
@@ -410,9 +510,145 @@ Additional Inherited Members</h2></td></tr>
410
510
  </table>
411
511
  </div><div class="memdoc">
412
512
 
413
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00272">272</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
414
- <div class="fragment"><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; {</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">return</span> edge-&gt;getEdgeKind() == <a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVFStmt::Cmp</a>;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVF::SVFStmt::Cmp</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
513
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00401">401</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
514
+ <div class="fragment"><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; {</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keywordflow">return</span> edge-&gt;getEdgeKind() == <a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVFStmt::Cmp</a>;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">SVF::SVFStmt::Cmp</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
415
515
  </div><!-- fragment -->
516
+ </div>
517
+ </div>
518
+ <a id="a8f70278ac9d9bf4cd8750c474646b0e2"></a>
519
+ <h2 class="memtitle"><span class="permalink"><a href="#a8f70278ac9d9bf4cd8750c474646b0e2">&#9670;&nbsp;</a></span>getDstID()</h2>
520
+
521
+ <div class="memitem">
522
+ <div class="memproto">
523
+ <table class="mlabels">
524
+ <tr>
525
+ <td class="mlabels-left">
526
+ <table class="memname">
527
+ <tr>
528
+ <td class="memname"><a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a>* SVF::CmpPE::getDstID </td>
529
+ <td>(</td>
530
+ <td class="paramname"></td><td>)</td>
531
+ <td></td>
532
+ </tr>
533
+ </table>
534
+ </td>
535
+ <td class="mlabels-right">
536
+ <span class="mlabels"><span class="mlabel">private</span></span> </td>
537
+ </tr>
538
+ </table>
539
+ </div><div class="memdoc">
540
+
541
+ <p>place holder, use <a class="el" href="classSVF_1_1MultiOpndStmt.html#a71a530eb9fa9f7e273e471b4a75a039e">getResID()</a> instead </p>
542
+
543
+ </div>
544
+ </div>
545
+ <a id="a4e66cb6ffd9d6a6dd6d575ce091bec5f"></a>
546
+ <h2 class="memtitle"><span class="permalink"><a href="#a4e66cb6ffd9d6a6dd6d575ce091bec5f">&#9670;&nbsp;</a></span>getDstNode()</h2>
547
+
548
+ <div class="memitem">
549
+ <div class="memproto">
550
+ <table class="mlabels">
551
+ <tr>
552
+ <td class="mlabels-left">
553
+ <table class="memname">
554
+ <tr>
555
+ <td class="memname"><a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a>* SVF::CmpPE::getDstNode </td>
556
+ <td>(</td>
557
+ <td class="paramname"></td><td>)</td>
558
+ <td></td>
559
+ </tr>
560
+ </table>
561
+ </td>
562
+ <td class="mlabels-right">
563
+ <span class="mlabels"><span class="mlabel">private</span></span> </td>
564
+ </tr>
565
+ </table>
566
+ </div><div class="memdoc">
567
+
568
+ <p>place holder, use <a class="el" href="classSVF_1_1MultiOpndStmt.html#a00a14ad8f49912b876fd9d729fea4601" title="Result SVFVar. ">getRes()</a> instead </p>
569
+
570
+ </div>
571
+ </div>
572
+ <a id="aac8a0b9e765da7baa617c14cc6154ea2"></a>
573
+ <h2 class="memtitle"><span class="permalink"><a href="#aac8a0b9e765da7baa617c14cc6154ea2">&#9670;&nbsp;</a></span>getOpcode()</h2>
574
+
575
+ <div class="memitem">
576
+ <div class="memproto">
577
+ <table class="mlabels">
578
+ <tr>
579
+ <td class="mlabels-left">
580
+ <table class="memname">
581
+ <tr>
582
+ <td class="memname"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> SVF::CmpPE::getOpcode </td>
583
+ <td>(</td>
584
+ <td class="paramname"></td><td>)</td>
585
+ <td> const</td>
586
+ </tr>
587
+ </table>
588
+ </td>
589
+ <td class="mlabels-right">
590
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
591
+ </tr>
592
+ </table>
593
+ </div><div class="memdoc">
594
+
595
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00412">412</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
596
+ <div class="fragment"><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; {</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1CmpPE.html#a4a79b74096650de3d42b8af538f1d163">opcode</a>;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; }</div><div class="ttc" id="classSVF_1_1CmpPE_html_a4a79b74096650de3d42b8af538f1d163"><div class="ttname"><a href="classSVF_1_1CmpPE.html#a4a79b74096650de3d42b8af538f1d163">SVF::CmpPE::opcode</a></div><div class="ttdeci">u32_t opcode</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00385">SVFStatements.h:385</a></div></div>
597
+ </div><!-- fragment -->
598
+ </div>
599
+ </div>
600
+ <a id="aa69a4905db6aa3a5a24645be84d75a2e"></a>
601
+ <h2 class="memtitle"><span class="permalink"><a href="#aa69a4905db6aa3a5a24645be84d75a2e">&#9670;&nbsp;</a></span>getSrcID()</h2>
602
+
603
+ <div class="memitem">
604
+ <div class="memproto">
605
+ <table class="mlabels">
606
+ <tr>
607
+ <td class="mlabels-left">
608
+ <table class="memname">
609
+ <tr>
610
+ <td class="memname"><a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a>* SVF::CmpPE::getSrcID </td>
611
+ <td>(</td>
612
+ <td class="paramname"></td><td>)</td>
613
+ <td></td>
614
+ </tr>
615
+ </table>
616
+ </td>
617
+ <td class="mlabels-right">
618
+ <span class="mlabels"><span class="mlabel">private</span></span> </td>
619
+ </tr>
620
+ </table>
621
+ </div><div class="memdoc">
622
+
623
+ <p>place holder, use getOpVarID(pos) instead </p>
624
+
625
+ </div>
626
+ </div>
627
+ <a id="a8809fbf0f9b34769a3fc0025996df8bc"></a>
628
+ <h2 class="memtitle"><span class="permalink"><a href="#a8809fbf0f9b34769a3fc0025996df8bc">&#9670;&nbsp;</a></span>getSrcNode()</h2>
629
+
630
+ <div class="memitem">
631
+ <div class="memproto">
632
+ <table class="mlabels">
633
+ <tr>
634
+ <td class="mlabels-left">
635
+ <table class="memname">
636
+ <tr>
637
+ <td class="memname"><a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a>* SVF::CmpPE::getSrcNode </td>
638
+ <td>(</td>
639
+ <td class="paramname"></td><td>)</td>
640
+ <td></td>
641
+ </tr>
642
+ </table>
643
+ </td>
644
+ <td class="mlabels-right">
645
+ <span class="mlabels"><span class="mlabel">private</span></span> </td>
646
+ </tr>
647
+ </table>
648
+ </div><div class="memdoc">
649
+
650
+ <p>place holder, not allowed since this <a class="el" href="classSVF_1_1SVFStmt.html">SVFStmt</a> has multiple operands but not a single source </p>
651
+
416
652
  </div>
417
653
  </div>
418
654
  <a id="aeab9328da01789aa1974a372738c6ec5"></a>
@@ -443,8 +679,8 @@ Additional Inherited Members</h2></td></tr>
443
679
 
444
680
  </div>
445
681
  </div>
446
- <a id="a69fa89fb9e2137e32555d2ce3a510752"></a>
447
- <h2 class="memtitle"><span class="permalink"><a href="#a69fa89fb9e2137e32555d2ce3a510752">&#9670;&nbsp;</a></span>toString()</h2>
682
+ <a id="a421aaae2483b5df73c08e2b65b65372c"></a>
683
+ <h2 class="memtitle"><span class="permalink"><a href="#a421aaae2483b5df73c08e2b65b65372c">&#9670;&nbsp;</a></span>toString()</h2>
448
684
 
449
685
  <div class="memitem">
450
686
  <div class="memproto">
@@ -461,21 +697,46 @@ Additional Inherited Members</h2></td></tr>
461
697
  </table>
462
698
  </td>
463
699
  <td class="mlabels-right">
464
- <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
700
+ <span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
465
701
  </tr>
466
702
  </table>
467
703
  </div><div class="memdoc">
468
704
 
469
705
  <p>Reimplemented from <a class="el" href="classSVF_1_1SVFStmt.html#ad0b4dbe87e009518f22360c48b0d0c22">SVF::SVFStmt</a>.</p>
470
706
 
471
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8cpp_source.html#l00089">89</a> of file <a class="el" href="SVFStatements_8cpp_source.html">SVFStatements.cpp</a>.</p>
472
- <div class="fragment"><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; {</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; std::string str;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;CmpPE: [&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="l00093"></a><span class="lineno"> 93</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="l00094"></a><span class="lineno"> 94</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; }</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; 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="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</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>
473
- <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>
474
- <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>
707
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8cpp_source.html#l00101">101</a> of file <a class="el" href="SVFStatements_8cpp_source.html">SVFStatements.cpp</a>.</p>
708
+ <div class="fragment"><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; {</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; std::string str;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;CmpPE: [&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1MultiOpndStmt.html#a71a530eb9fa9f7e273e471b4a75a039e">getResID</a>() &lt;&lt; <span class="stringliteral">&quot;&lt;--(&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1MultiOpndStmt.html#a5c6efcc023e90ef2e618586091958c59">getOpVarID</a>(0) &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1MultiOpndStmt.html#a5c6efcc023e90ef2e618586091958c59">getOpVarID</a>(1) &lt;&lt; <span class="stringliteral">&quot;)]\t&quot;</span>;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</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="l00106"></a><span class="lineno"> 106</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; }</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; 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="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</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>
475
709
  <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>
476
710
  <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>
477
711
  <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>
712
+ <div class="ttc" id="classSVF_1_1MultiOpndStmt_html_a71a530eb9fa9f7e273e471b4a75a039e"><div class="ttname"><a href="classSVF_1_1MultiOpndStmt.html#a71a530eb9fa9f7e273e471b4a75a039e">SVF::MultiOpndStmt::getResID</a></div><div class="ttdeci">NodeID getResID() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8cpp_source.html#l00254">SVFStatements.cpp:254</a></div></div>
713
+ <div class="ttc" id="classSVF_1_1MultiOpndStmt_html_a5c6efcc023e90ef2e618586091958c59"><div class="ttname"><a href="classSVF_1_1MultiOpndStmt.html#a5c6efcc023e90ef2e618586091958c59">SVF::MultiOpndStmt::getOpVarID</a></div><div class="ttdeci">NodeID getOpVarID(u32_t pos) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8cpp_source.html#l00249">SVFStatements.cpp:249</a></div></div>
478
714
  </div><!-- fragment -->
715
+ </div>
716
+ </div>
717
+ <h2 class="groupheader">Member Data Documentation</h2>
718
+ <a id="a4a79b74096650de3d42b8af538f1d163"></a>
719
+ <h2 class="memtitle"><span class="permalink"><a href="#a4a79b74096650de3d42b8af538f1d163">&#9670;&nbsp;</a></span>opcode</h2>
720
+
721
+ <div class="memitem">
722
+ <div class="memproto">
723
+ <table class="mlabels">
724
+ <tr>
725
+ <td class="mlabels-left">
726
+ <table class="memname">
727
+ <tr>
728
+ <td class="memname"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> SVF::CmpPE::opcode</td>
729
+ </tr>
730
+ </table>
731
+ </td>
732
+ <td class="mlabels-right">
733
+ <span class="mlabels"><span class="mlabel">private</span></span> </td>
734
+ </tr>
735
+ </table>
736
+ </div><div class="memdoc">
737
+
738
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00385">385</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
739
+
479
740
  </div>
480
741
  </div>
481
742
  <hr/>The documentation for this class was generated from the following files:<ul>