svf-tools 1.0.448 → 1.0.451

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 (528) hide show
  1. package/SVF-doxygen/html/html/AbstractPointsToDS_8h_source.html +1 -1
  2. package/SVF-doxygen/html/html/AndersenLCD_8cpp_source.html +3 -3
  3. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +5 -5
  4. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +5 -5
  5. package/SVF-doxygen/html/html/AndersenSFR_8h_source.html +5 -5
  6. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +5 -5
  7. package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +2 -2
  8. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +16 -16
  9. package/SVF-doxygen/html/html/Andersen_8h_source.html +10 -10
  10. package/SVF-doxygen/html/html/Annotator_8h_source.html +3 -3
  11. package/SVF-doxygen/html/html/BDDExpr_8cpp_source.html +4 -4
  12. package/SVF-doxygen/html/html/BDDExpr_8h_source.html +5 -5
  13. package/SVF-doxygen/html/html/BreakConstantExpr_8cpp.html +2 -2
  14. package/SVF-doxygen/html/html/BreakConstantExpr_8cpp_source.html +5 -5
  15. package/SVF-doxygen/html/html/BreakConstantExpr_8h_source.html +5 -5
  16. package/SVF-doxygen/html/html/CFGNormalizer_8cpp_source.html +1 -1
  17. package/SVF-doxygen/html/html/CFGNormalizer_8h_source.html +3 -3
  18. package/SVF-doxygen/html/html/CFLAlias_8h_source.html +6 -6
  19. package/SVF-doxygen/html/html/CFLGrammar_8h_source.html +3 -3
  20. package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +4 -4
  21. package/SVF-doxygen/html/html/CFLGraph_8h_source.html +2 -2
  22. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +28 -28
  23. package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +5 -5
  24. package/SVF-doxygen/html/html/CHG_8cpp.html +3 -3
  25. package/SVF-doxygen/html/html/CHG_8cpp_source.html +13 -13
  26. package/SVF-doxygen/html/html/CHG_8h_source.html +6 -6
  27. package/SVF-doxygen/html/html/CPPUtil_8cpp.html +2 -2
  28. package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +24 -24
  29. package/SVF-doxygen/html/html/CPPUtil_8h_source.html +4 -4
  30. package/SVF-doxygen/html/html/CSC_8cpp_source.html +3 -3
  31. package/SVF-doxygen/html/html/CSC_8h_source.html +4 -4
  32. package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +7 -7
  33. package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +6 -6
  34. package/SVF-doxygen/html/html/ConsGEdge_8h_source.html +2 -2
  35. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +2 -2
  36. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +4 -4
  37. package/SVF-doxygen/html/html/ConsG_8h_source.html +5 -5
  38. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +12 -12
  39. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +6 -6
  40. package/SVF-doxygen/html/html/CoreBitVector_8cpp_source.html +1 -1
  41. package/SVF-doxygen/html/html/CoreBitVector_8h_source.html +2 -2
  42. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +5 -5
  43. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +30 -30
  44. package/SVF-doxygen/html/html/DCHG_8h_source.html +15 -15
  45. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +8 -8
  46. package/SVF-doxygen/html/html/DDAClient_8h_source.html +3 -3
  47. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +9 -9
  48. package/SVF-doxygen/html/html/DDAPass_8h_source.html +6 -6
  49. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +2 -2
  50. package/SVF-doxygen/html/html/DDAStat_8h_source.html +3 -3
  51. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +11 -11
  52. package/SVF-doxygen/html/html/DPItem_8h_source.html +5 -5
  53. package/SVF-doxygen/html/html/DataFlowUtil_8cpp_source.html +7 -7
  54. package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +11 -11
  55. package/SVF-doxygen/html/html/ExeState_8cpp_source.html +8 -8
  56. package/SVF-doxygen/html/html/ExeState_8h_source.html +4 -4
  57. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +23 -23
  58. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +7 -7
  59. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +4 -4
  60. package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
  61. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +7 -7
  62. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +5 -5
  63. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +6 -6
  64. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp.html +3 -3
  65. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +12 -12
  66. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +5 -5
  67. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +10 -10
  68. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +4 -4
  69. package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +3 -3
  70. package/SVF-doxygen/html/html/GenericGraph_8h_source.html +5 -5
  71. package/SVF-doxygen/html/html/GrammarBuilder_8cpp_source.html +1 -1
  72. package/SVF-doxygen/html/html/GrammarBuilder_8h_source.html +1 -1
  73. package/SVF-doxygen/html/html/Graph2Json_8cpp.html +1 -0
  74. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +3 -4
  75. package/SVF-doxygen/html/html/Graph2Json_8h_source.html +5 -5
  76. package/SVF-doxygen/html/html/GraphPrinter_8h.html +1 -0
  77. package/SVF-doxygen/html/html/GraphPrinter_8h_source.html +6 -7
  78. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +13 -13
  79. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +3 -3
  80. package/SVF-doxygen/html/html/ICFGEdge_8h_source.html +5 -5
  81. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +7 -7
  82. package/SVF-doxygen/html/html/ICFGStat_8h_source.html +1 -1
  83. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +11 -11
  84. package/SVF-doxygen/html/html/ICFG_8h_source.html +5 -5
  85. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +14 -14
  86. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +5 -5
  87. package/SVF-doxygen/html/html/IRGraph_8h_source.html +6 -6
  88. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +15 -15
  89. package/SVF-doxygen/html/html/LLVMModule_8h.html +2 -1
  90. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +46 -45
  91. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +40 -40
  92. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +39 -39
  93. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
  94. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +3 -3
  95. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +9 -9
  96. package/SVF-doxygen/html/html/LocationSet_8h_source.html +6 -6
  97. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +17 -17
  98. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +11 -11
  99. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +15 -15
  100. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +7 -7
  101. package/SVF-doxygen/html/html/MHP_8cpp.html +3 -3
  102. package/SVF-doxygen/html/html/MHP_8cpp_source.html +26 -26
  103. package/SVF-doxygen/html/html/MHP_8h_source.html +10 -10
  104. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +7 -7
  105. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +9 -9
  106. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +9 -9
  107. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +22 -22
  108. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +12 -12
  109. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +6 -6
  110. package/SVF-doxygen/html/html/MTAStat_8h_source.html +1 -1
  111. package/SVF-doxygen/html/html/MTA_8cpp_source.html +12 -12
  112. package/SVF-doxygen/html/html/MTA_8h_source.html +8 -8
  113. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +2 -2
  114. package/SVF-doxygen/html/html/MemPartition_8h_source.html +4 -4
  115. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +19 -19
  116. package/SVF-doxygen/html/html/MemRegion_8h_source.html +9 -9
  117. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +17 -17
  118. package/SVF-doxygen/html/html/MemSSA_8h_source.html +9 -9
  119. package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +3 -3
  120. package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +6 -6
  121. package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +3 -3
  122. package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +3 -3
  123. package/SVF-doxygen/html/html/OfflineConsG_8h_source.html +2 -2
  124. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +2 -2
  125. package/SVF-doxygen/html/html/PAGBuilderFromFile_8h_source.html +1 -1
  126. package/SVF-doxygen/html/html/PCG_8cpp_source.html +11 -11
  127. package/SVF-doxygen/html/html/PCG_8h_source.html +6 -6
  128. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +6 -6
  129. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +7 -7
  130. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +8 -8
  131. package/SVF-doxygen/html/html/PTAStat_8h_source.html +2 -2
  132. package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +19 -19
  133. package/SVF-doxygen/html/html/PathCondAllocator_8h_source.html +12 -12
  134. package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +3 -3
  135. package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +2 -2
  136. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +17 -18
  137. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +17 -17
  138. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +22 -22
  139. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +9 -9
  140. package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +3 -3
  141. package/SVF-doxygen/html/html/PointsTo_8h_source.html +3 -3
  142. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +7 -7
  143. package/SVF-doxygen/html/html/ProgSlice_8h_source.html +4 -4
  144. package/SVF-doxygen/html/html/SCC_8h_source.html +3 -3
  145. package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h.html +79 -42
  146. package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h_source.html +44 -42
  147. package/SVF-doxygen/html/html/SVFBasicTypes_8h.html +22 -25
  148. package/SVF-doxygen/html/html/SVFBasicTypes_8h_source.html +73 -74
  149. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +5 -5
  150. package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +2 -2
  151. package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +3 -3
  152. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +5 -5
  153. package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +4 -4
  154. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +8 -8
  155. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +4 -4
  156. package/SVF-doxygen/html/html/SVFGStat_8h_source.html +4 -4
  157. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +46 -54
  158. package/SVF-doxygen/html/html/SVFG_8h_source.html +46 -48
  159. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +54 -54
  160. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +49 -49
  161. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +4 -4
  162. package/SVF-doxygen/html/html/SVFIR_8h_source.html +9 -9
  163. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +2 -2
  164. package/SVF-doxygen/html/html/SVFModule_8h_source.html +6 -6
  165. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +3 -3
  166. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +9 -9
  167. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +15 -15
  168. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +23 -23
  169. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +2 -2
  170. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +8 -8
  171. package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +4 -4
  172. package/SVF-doxygen/html/html/SaberAnnotator_8h_source.html +1 -1
  173. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +6 -5
  174. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +7 -7
  175. package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +2 -2
  176. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +5 -5
  177. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +4 -4
  178. package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +1 -1
  179. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +2 -2
  180. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +38 -38
  181. package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +6 -6
  182. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +17 -17
  183. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +10 -10
  184. package/SVF-doxygen/html/html/TCT_8cpp_source.html +21 -21
  185. package/SVF-doxygen/html/html/TCT_8h_source.html +20 -20
  186. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +7 -7
  187. package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +11 -10
  188. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +9 -9
  189. package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +6 -6
  190. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +4 -4
  191. package/SVF-doxygen/html/html/TypeAnalysis_8h_source.html +1 -1
  192. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +27 -27
  193. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +5 -5
  194. package/SVF-doxygen/html/html/Util_2BasicTypes_8h.html +1 -8
  195. package/SVF-doxygen/html/html/Util_2BasicTypes_8h_source.html +117 -120
  196. package/SVF-doxygen/html/html/VFGEdge_8h_source.html +2 -2
  197. package/SVF-doxygen/html/html/VFGNode_8h_source.html +8 -8
  198. package/SVF-doxygen/html/html/VFG_8cpp_source.html +10 -10
  199. package/SVF-doxygen/html/html/VFG_8h_source.html +6 -6
  200. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +5 -5
  201. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +12 -12
  202. package/SVF-doxygen/html/html/VersionedFlowSensitive_8h_source.html +6 -6
  203. package/SVF-doxygen/html/html/WPAFSSolver_8h_source.html +2 -2
  204. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +10 -10
  205. package/SVF-doxygen/html/html/WPAPass_8h_source.html +8 -8
  206. package/SVF-doxygen/html/html/WPASolver_8h_source.html +3 -3
  207. package/SVF-doxygen/html/html/WPAStat_8h_source.html +1 -1
  208. package/SVF-doxygen/html/html/WorkList_8h_source.html +1 -1
  209. package/SVF-doxygen/html/html/Z3Expr_8h_source.html +1 -1
  210. package/SVF-doxygen/html/html/cfl_8cpp.html +2 -2
  211. package/SVF-doxygen/html/html/cfl_8cpp_source.html +2 -2
  212. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +2 -2
  213. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +2 -2
  214. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +2 -2
  215. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +2 -2
  216. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +1 -1
  217. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +2 -2
  218. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +1 -1
  219. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +21 -21
  220. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +3 -3
  221. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +3 -3
  222. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +10 -10
  223. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +5 -5
  224. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +7 -7
  225. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +3 -3
  226. package/SVF-doxygen/html/html/classSVF_1_1Annotator.html +1 -1
  227. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +3 -2
  228. package/SVF-doxygen/html/html/classSVF_1_1BDDExprManager.html +3 -3
  229. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +34 -35
  230. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +1 -1
  231. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +2 -2
  232. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +2 -2
  233. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +2 -2
  234. package/SVF-doxygen/html/html/classSVF_1_1BreakConstantGEPs.html +4 -4
  235. package/SVF-doxygen/html/html/classSVF_1_1CFGNormalizer.html +2 -2
  236. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +2 -2
  237. package/SVF-doxygen/html/html/classSVF_1_1CFLGraph.html +2 -2
  238. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +53 -53
  239. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +9 -9
  240. package/SVF-doxygen/html/html/classSVF_1_1CSC.html +4 -4
  241. package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +1 -1
  242. package/SVF-doxygen/html/html/classSVF_1_1CallDirSVFGEdge.html +1 -1
  243. package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +6 -6
  244. package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +6 -6
  245. package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +1 -1
  246. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
  247. package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +41 -41
  248. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.html +1 -1
  249. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.html +1 -1
  250. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +1 -1
  251. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +1 -1
  252. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +2 -2
  253. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +4 -4
  254. package/SVF-doxygen/html/html/classSVF_1_1CondStdSet.html +2 -2
  255. package/SVF-doxygen/html/html/classSVF_1_1CondVar.html +1 -1
  256. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +5 -5
  257. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +8 -8
  258. package/SVF-doxygen/html/html/classSVF_1_1ContextCond.html +1 -1
  259. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +25 -25
  260. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +1 -1
  261. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +2 -2
  262. package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +4 -4
  263. package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +2 -2
  264. package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +1 -1
  265. package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +1 -1
  266. package/SVF-doxygen/html/html/classSVF_1_1CxtThreadProc.html +1 -1
  267. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +67 -67
  268. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +4 -4
  269. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +8 -8
  270. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +3 -3
  271. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +28 -28
  272. package/SVF-doxygen/html/html/classSVF_1_1DirectSVFGEdge.html +1 -1
  273. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +4 -4
  274. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +1 -1
  275. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +1 -1
  276. package/SVF-doxygen/html/html/classSVF_1_1DummyVersionPropSVFGNode.html +1 -1
  277. package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +11 -11
  278. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI-members.html +1 -1
  279. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +51 -51
  280. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +1 -1
  281. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +11 -11
  282. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +30 -30
  283. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +8 -8
  284. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +23 -23
  285. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +36 -36
  286. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +2 -2
  287. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +2 -2
  288. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +3 -3
  289. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +3 -3
  290. package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +3 -3
  291. package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +3 -3
  292. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +3 -3
  293. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +1 -1
  294. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +1 -1
  295. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +2 -2
  296. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +1 -1
  297. package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode.html +1 -1
  298. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +6 -6
  299. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +19 -19
  300. package/SVF-doxygen/html/html/classSVF_1_1ICFGEdge.html +1 -1
  301. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +1 -1
  302. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +15 -16
  303. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +21 -21
  304. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +3 -3
  305. package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +1 -1
  306. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +2 -2
  307. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +2 -2
  308. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  309. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +1 -1
  310. package/SVF-doxygen/html/html/classSVF_1_1IntraDirSVFGEdge.html +1 -1
  311. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +4 -4
  312. package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +4 -4
  313. package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +1 -1
  314. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +2 -2
  315. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
  316. package/SVF-doxygen/html/html/classSVF_1_1IteratedDominanceFrontier.html +3 -3
  317. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +132 -132
  318. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +5 -5
  319. package/SVF-doxygen/html/html/classSVF_1_1LoadMU-members.html +1 -1
  320. package/SVF-doxygen/html/html/classSVF_1_1LoadMU.html +6 -6
  321. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +1 -1
  322. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +2 -2
  323. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +11 -11
  324. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +69 -69
  325. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +21 -21
  326. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +55 -55
  327. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +42 -42
  328. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +1 -1
  329. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +2 -2
  330. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +14 -14
  331. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +16 -16
  332. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +44 -44
  333. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +24 -24
  334. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +7 -7
  335. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
  336. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +42 -42
  337. package/SVF-doxygen/html/html/classSVF_1_1MemSSADF.html +1 -1
  338. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +2 -2
  339. package/SVF-doxygen/html/html/classSVF_1_1MergeFunctionRets.html +3 -3
  340. package/SVF-doxygen/html/html/classSVF_1_1MutableDFPTData.html +1 -1
  341. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +9 -9
  342. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +2 -2
  343. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +2 -2
  344. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
  345. package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +2 -2
  346. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +2 -2
  347. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +25 -25
  348. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +2 -2
  349. package/SVF-doxygen/html/html/classSVF_1_1PTACFInfoBuilder.html +7 -7
  350. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +7 -7
  351. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +1 -1
  352. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +3 -3
  353. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +9 -9
  354. package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +42 -42
  355. package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +3 -3
  356. package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +3 -3
  357. package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +6 -6
  358. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +6 -6
  359. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +2 -2
  360. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +33 -33
  361. package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +6 -6
  362. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +9 -9
  363. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +11 -11
  364. package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +1 -1
  365. package/SVF-doxygen/html/html/classSVF_1_1RetDirSVFGEdge.html +1 -1
  366. package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +4 -4
  367. package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +1 -1
  368. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
  369. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +1 -1
  370. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +4 -4
  371. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +31 -31
  372. package/SVF-doxygen/html/html/classSVF_1_1SVFG-members.html +154 -155
  373. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +132 -166
  374. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +8 -8
  375. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT-members.html +177 -178
  376. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +17 -19
  377. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +6 -6
  378. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobal.html +4 -4
  379. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +1 -1
  380. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +147 -147
  381. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +3 -3
  382. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +5 -5
  383. package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +33 -33
  384. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +4 -4
  385. package/SVF-doxygen/html/html/classSVF_1_1SaberAnnotator.html +7 -7
  386. package/SVF-doxygen/html/html/classSVF_1_1SaberCheckerAPI-members.html +1 -1
  387. package/SVF-doxygen/html/html/classSVF_1_1SaberCheckerAPI.html +7 -7
  388. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +11 -11
  389. package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +1 -1
  390. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +9 -9
  391. package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +1 -1
  392. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +1 -1
  393. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +1 -1
  394. package/SVF-doxygen/html/html/classSVF_1_1StoreCHI-members.html +1 -1
  395. package/SVF-doxygen/html/html/classSVF_1_1StoreCHI.html +6 -6
  396. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +1 -1
  397. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +2 -2
  398. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +63 -63
  399. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +24 -24
  400. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +50 -50
  401. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
  402. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
  403. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI-members.html +2 -2
  404. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +20 -20
  405. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +23 -23
  406. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +3 -3
  407. package/SVF-doxygen/html/html/classSVF_1_1ThreadForkEdge.html +1 -1
  408. package/SVF-doxygen/html/html/classSVF_1_1ThreadJoinEdge.html +1 -1
  409. package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +1 -1
  410. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +4 -4
  411. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +34 -34
  412. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +1 -1
  413. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +2 -2
  414. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +11 -11
  415. package/SVF-doxygen/html/html/classSVF_1_1VFGEdge.html +1 -1
  416. package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +1 -1
  417. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +1 -1
  418. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +1 -1
  419. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +28 -28
  420. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +7 -7
  421. package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver.html +2 -2
  422. package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver.html +2 -2
  423. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +8 -8
  424. package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver.html +2 -2
  425. package/SVF-doxygen/html/html/classSVF_1_1WPASolver.html +1 -1
  426. package/SVF-doxygen/html/html/classllvm_1_1GraphPrinter.html +7 -8
  427. package/SVF-doxygen/html/html/classllvm_1_1generic__bridge__gep__type__iterator.html +3 -3
  428. package/SVF-doxygen/html/html/dda_8cpp.html +1 -1
  429. package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
  430. package/SVF-doxygen/html/html/functions_f.html +14 -17
  431. package/SVF-doxygen/html/html/functions_func_f.html +0 -3
  432. package/SVF-doxygen/html/html/functions_func_g.html +6 -6
  433. package/SVF-doxygen/html/html/functions_func_s.html +1 -1
  434. package/SVF-doxygen/html/html/functions_g.html +6 -6
  435. package/SVF-doxygen/html/html/functions_i.html +4 -4
  436. package/SVF-doxygen/html/html/functions_n.html +4 -4
  437. package/SVF-doxygen/html/html/functions_o.html +3 -3
  438. package/SVF-doxygen/html/html/functions_p.html +7 -7
  439. package/SVF-doxygen/html/html/functions_s.html +13 -13
  440. package/SVF-doxygen/html/html/functions_t.html +5 -5
  441. package/SVF-doxygen/html/html/functions_type_t.html +2 -2
  442. package/SVF-doxygen/html/html/functions_v.html +6 -6
  443. package/SVF-doxygen/html/html/functions_vars_i.html +1 -1
  444. package/SVF-doxygen/html/html/globals_l.html +3 -0
  445. package/SVF-doxygen/html/html/globals_s.html +3 -3
  446. package/SVF-doxygen/html/html/globals_type.html +6 -0
  447. package/SVF-doxygen/html/html/globals_u.html +5 -2
  448. package/SVF-doxygen/html/html/mta_8cpp.html +1 -1
  449. package/SVF-doxygen/html/html/mta_8cpp_source.html +1 -1
  450. package/SVF-doxygen/html/html/namespaceSVF.html +119 -191
  451. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +96 -96
  452. package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +44 -44
  453. package/SVF-doxygen/html/html/namespacemembers_l.html +0 -3
  454. package/SVF-doxygen/html/html/namespacemembers_s.html +0 -3
  455. package/SVF-doxygen/html/html/namespacemembers_t.html +0 -3
  456. package/SVF-doxygen/html/html/namespacemembers_type.html +0 -12
  457. package/SVF-doxygen/html/html/namespacemembers_u.html +0 -3
  458. package/SVF-doxygen/html/html/saber_8cpp.html +1 -1
  459. package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -1
  460. package/SVF-doxygen/html/html/search/all_10.js +6 -6
  461. package/SVF-doxygen/html/html/search/all_13.js +9 -10
  462. package/SVF-doxygen/html/html/search/all_14.js +7 -8
  463. package/SVF-doxygen/html/html/search/all_15.js +2 -2
  464. package/SVF-doxygen/html/html/search/all_16.js +2 -2
  465. package/SVF-doxygen/html/html/search/all_6.js +0 -1
  466. package/SVF-doxygen/html/html/search/all_7.js +2 -2
  467. package/SVF-doxygen/html/html/search/all_9.js +2 -2
  468. package/SVF-doxygen/html/html/search/all_c.js +2 -2
  469. package/SVF-doxygen/html/html/search/all_d.js +1 -1
  470. package/SVF-doxygen/html/html/search/all_e.js +4 -4
  471. package/SVF-doxygen/html/html/search/all_f.js +2 -2
  472. package/SVF-doxygen/html/html/search/functions_10.js +1 -1
  473. package/SVF-doxygen/html/html/search/functions_5.js +0 -1
  474. package/SVF-doxygen/html/html/search/functions_6.js +2 -2
  475. package/SVF-doxygen/html/html/search/typedefs_11.js +0 -1
  476. package/SVF-doxygen/html/html/search/typedefs_12.js +1 -2
  477. package/SVF-doxygen/html/html/search/typedefs_13.js +1 -1
  478. package/SVF-doxygen/html/html/search/typedefs_b.js +1 -1
  479. package/SVF-doxygen/html/html/search/variables_14.js +3 -3
  480. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  481. package/SVF-doxygen/html/html/search/variables_9.js +1 -1
  482. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  483. package/SVF-doxygen/html/html/structSVF_1_1Hash.html +3 -3
  484. package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01NodePair_01_4.html +3 -3
  485. package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01std_1_1pair_3_01S_00_01T_01_4_01_4.html +5 -5
  486. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.html +3 -3
  487. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  488. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +2 -2
  489. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +2 -2
  490. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01OfflineConsG_01_5_01_4.html +1 -1
  491. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.html +2 -2
  492. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +24 -24
  493. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +4 -4
  494. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1SVFG_01_5_01_4.html +2 -2
  495. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CallSite_01_4.html +3 -3
  496. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CondStdSet_3_01Element_01_4_01_4.html +1 -1
  497. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtDPItem_01_4.html +1 -1
  498. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtProc_01_4.html +1 -1
  499. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtStmtDPItem_3_01LocCond_01_4_01_4.html +1 -1
  500. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtStmt_01_4.html +1 -1
  501. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1ExeState_01_4.html +1 -1
  502. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1LocationSet_01_4.html +1 -1
  503. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1NodePair_01_4.html +3 -3
  504. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1StmtDPItem_3_01LocCond_01_4_01_4.html +1 -1
  505. package/SVF-doxygen/html/html/structstd_1_1hash_3_01llvm_1_1SparseBitVector_3_01N_01_4_01_4.html +3 -3
  506. package/SVF-doxygen/html/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4.html +3 -3
  507. package/SVF-doxygen/html/html/svf-ex_8cpp.html +5 -5
  508. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +7 -7
  509. package/SVF-doxygen/html/html/wpa_8cpp.html +1 -1
  510. package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
  511. package/include/Graphs/GraphPrinter.h +1 -0
  512. package/include/Graphs/SVFG.h +0 -5
  513. package/include/MSSA/MSSAMuChi.h +2 -2
  514. package/include/SABER/SaberCheckerAPI.h +1 -1
  515. package/include/SVF-FE/BasicTypes.h +4 -0
  516. package/include/SVF-FE/LLVMModule.h +1 -0
  517. package/include/Util/BasicTypes.h +0 -4
  518. package/include/Util/ExtAPI.h +2 -3
  519. package/include/Util/SVFBasicTypes.h +0 -2
  520. package/include/Util/ThreadAPI.h +2 -2
  521. package/lib/Graphs/SVFG.cpp +0 -22
  522. package/lib/Graphs/VFG.cpp +1 -1
  523. package/lib/MemoryModel/PointerAnalysisImpl.cpp +14 -16
  524. package/lib/SABER/SaberSVFGBuilder.cpp +2 -2
  525. package/lib/SVF-FE/Graph2Json.cpp +3 -1
  526. package/lib/SVF-FE/LLVMUtil.cpp +2 -0
  527. package/lib/Util/ThreadAPI.cpp +4 -4
  528. package/package.json +1 -1
@@ -133,7 +133,7 @@ Public Member Functions</h2></td></tr>
133
133
  <tr class="separator:a757bf149437cce22163c764ea9993e12"><td class="memSeparator" colspan="2">&#160;</td></tr>
134
134
  <tr class="memitem:a9fe3fa15a6a0ec25864cb8439a45596e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LLVMModuleSet.html#a9fe3fa15a6a0ec25864cb8439a45596e">getMainLLVMModule</a> () const</td></tr>
135
135
  <tr class="separator:a9fe3fa15a6a0ec25864cb8439a45596e"><td class="memSeparator" colspan="2">&#160;</td></tr>
136
- <tr class="memitem:ac1a9d20d62066ec4e181fad223669e32"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#affba423b674a0aba723e33101826e297">LLVMContext</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LLVMModuleSet.html#ac1a9d20d62066ec4e181fad223669e32">getContext</a> () const</td></tr>
136
+ <tr class="memitem:ac1a9d20d62066ec4e181fad223669e32"><td class="memItemLeft" align="right" valign="top"><a class="el" href="SVF-FE_2BasicTypes_8h.html#a9f19a521d06397d1b6dc52c0388513d9">LLVMContext</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LLVMModuleSet.html#ac1a9d20d62066ec4e181fad223669e32">getContext</a> () const</td></tr>
137
137
  <tr class="separator:ac1a9d20d62066ec4e181fad223669e32"><td class="memSeparator" colspan="2">&#160;</td></tr>
138
138
  <tr class="memitem:ae19e38054c55d5822dfc83a12f12aa60"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LLVMModuleSet.html#ae19e38054c55d5822dfc83a12f12aa60">empty</a> () const</td></tr>
139
139
  <tr class="separator:ae19e38054c55d5822dfc83a12f12aa60"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -173,7 +173,7 @@ Private Member Functions</h2></td></tr>
173
173
  Private Attributes</h2></td></tr>
174
174
  <tr class="memitem:a43832e93a42ae43d44b0cc160981678f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SVFModule.html">SVFModule</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a></td></tr>
175
175
  <tr class="separator:a43832e93a42ae43d44b0cc160981678f"><td class="memSeparator" colspan="2">&#160;</td></tr>
176
- <tr class="memitem:ad06a92bf8bc556de742e0ffdf79ffafe"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="namespaceSVF.html#affba423b674a0aba723e33101826e297">LLVMContext</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LLVMModuleSet.html#ad06a92bf8bc556de742e0ffdf79ffafe">cxts</a></td></tr>
176
+ <tr class="memitem:ad06a92bf8bc556de742e0ffdf79ffafe"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="SVF-FE_2BasicTypes_8h.html#a9f19a521d06397d1b6dc52c0388513d9">LLVMContext</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LLVMModuleSet.html#ad06a92bf8bc556de742e0ffdf79ffafe">cxts</a></td></tr>
177
177
  <tr class="separator:ad06a92bf8bc556de742e0ffdf79ffafe"><td class="memSeparator" colspan="2">&#160;</td></tr>
178
178
  <tr class="memitem:ae365189769640adb919a23c36978e5e2"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LLVMModuleSet.html#ae365189769640adb919a23c36978e5e2">owned_modules</a></td></tr>
179
179
  <tr class="separator:ae365189769640adb919a23c36978e5e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -198,7 +198,7 @@ Static Private Attributes</h2></td></tr>
198
198
  </table>
199
199
  <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
200
200
  <div class="textblock">
201
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00040">40</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
201
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00041">41</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
202
202
  </div><h2 class="groupheader">Member Typedef Documentation</h2>
203
203
  <a id="a79eb13fae9ea80e9476723c8e15183f6"></a>
204
204
  <h2 class="memtitle"><span class="permalink"><a href="#a79eb13fae9ea80e9476723c8e15183f6">&#9670;&nbsp;</a></span>FunctionSetType</h2>
@@ -212,7 +212,7 @@ Static Private Attributes</h2></td></tr>
212
212
  </table>
213
213
  </div><div class="memdoc">
214
214
 
215
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00044">44</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
215
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00045">45</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
216
216
 
217
217
  </div>
218
218
  </div>
@@ -228,7 +228,7 @@ Static Private Attributes</h2></td></tr>
228
228
  </table>
229
229
  </div><div class="memdoc">
230
230
 
231
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00045">45</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
231
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00046">46</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
232
232
 
233
233
  </div>
234
234
  </div>
@@ -244,7 +244,7 @@ Static Private Attributes</h2></td></tr>
244
244
  </table>
245
245
  </div><div class="memdoc">
246
246
 
247
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00046">46</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
247
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00047">47</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
248
248
 
249
249
  </div>
250
250
  </div>
@@ -260,7 +260,7 @@ Static Private Attributes</h2></td></tr>
260
260
  </table>
261
261
  </div><div class="memdoc">
262
262
 
263
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00047">47</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
263
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00048">48</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
264
264
 
265
265
  </div>
266
266
  </div>
@@ -290,10 +290,10 @@ Static Private Attributes</h2></td></tr>
290
290
 
291
291
  <p>Constructor. </p>
292
292
 
293
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00064">64</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
294
- <div class="fragment"><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;: <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>(<span class="keyword">nullptr</span>), <a class="code" href="classSVF_1_1LLVMModuleSet.html#ad06a92bf8bc556de742e0ffdf79ffafe">cxts</a>(<span class="keyword">nullptr</span>), <a class="code" href="classSVF_1_1LLVMModuleSet.html#a14b0b55d397d6f8a5dfe3b574021f801">preProcessed</a>(<span class="keyword">false</span>) {}</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ad06a92bf8bc556de742e0ffdf79ffafe"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ad06a92bf8bc556de742e0ffdf79ffafe">SVF::LLVMModuleSet::cxts</a></div><div class="ttdeci">std::unique_ptr&lt; LLVMContext &gt; cxts</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
295
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
296
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a14b0b55d397d6f8a5dfe3b574021f801"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a14b0b55d397d6f8a5dfe3b574021f801">SVF::LLVMModuleSet::preProcessed</a></div><div class="ttdeci">bool preProcessed</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00242">LLVMModule.h:242</a></div></div>
293
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00065">65</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
294
+ <div class="fragment"><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;: <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>(<span class="keyword">nullptr</span>), <a class="code" href="classSVF_1_1LLVMModuleSet.html#ad06a92bf8bc556de742e0ffdf79ffafe">cxts</a>(<span class="keyword">nullptr</span>), <a class="code" href="classSVF_1_1LLVMModuleSet.html#a14b0b55d397d6f8a5dfe3b574021f801">preProcessed</a>(<span class="keyword">false</span>) {}</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ad06a92bf8bc556de742e0ffdf79ffafe"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ad06a92bf8bc556de742e0ffdf79ffafe">SVF::LLVMModuleSet::cxts</a></div><div class="ttdeci">std::unique_ptr&lt; LLVMContext &gt; cxts</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00053">LLVMModule.h:53</a></div></div>
295
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
296
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a14b0b55d397d6f8a5dfe3b574021f801"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a14b0b55d397d6f8a5dfe3b574021f801">SVF::LLVMModuleSet::preProcessed</a></div><div class="ttdeci">bool preProcessed</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00243">LLVMModule.h:243</a></div></div>
297
297
  </div><!-- fragment -->
298
298
  </div>
299
299
  </div>
@@ -322,18 +322,18 @@ Static Private Attributes</h2></td></tr>
322
322
  </div><div class="memdoc">
323
323
 
324
324
  <p class="definition">Definition at line <a class="el" href="LLVMModule_8cpp_source.html#l00230">230</a> of file <a class="el" href="LLVMModule_8cpp_source.html">LLVMModule.cpp</a>.</p>
325
- <div class="fragment"><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;{</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; std::vector&lt;Function *&gt; init_funcs;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> * orgMain = 0;</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a>* mainMod = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a>&amp; mod : <a class="code" href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">modules</a>)</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; {</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> &amp;func: mod)</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; {</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keywordflow">if</span>(func.getName().startswith(<a class="code" href="LLVMModule_8cpp.html#a264d24658581f23cb7e764c7a21e9b26">SVF_GLOBAL_SUB_I_XXX</a>))</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; init_funcs.push_back(&amp;func);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">if</span>(func.getName().equals(<a class="code" href="LLVMModule_8cpp.html#a10ab7c7da3a458495d8528b9e90d714b">SVF_MAIN_FUNC_NAME</a>))</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<span class="keyword">false</span> &amp;&amp; <a class="code" href="LLVMModule_8cpp.html#a10ab7c7da3a458495d8528b9e90d714b">SVF_MAIN_FUNC_NAME</a> <span class="stringliteral">&quot; already defined&quot;</span>);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">if</span>(func.getName().equals(<span class="stringliteral">&quot;main&quot;</span>))</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; {</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; orgMain = &amp;func;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; mainMod = &amp;mod;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; }</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">if</span>(orgMain &amp;&amp; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>() &gt; 0 &amp;&amp; init_funcs.size() &gt; 0)</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; {</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(mainMod &amp;&amp; <span class="stringliteral">&quot;Module with main function not found.&quot;</span>);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a> &amp; M = *mainMod;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="comment">// char **</span></div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <a class="code" href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">Type</a> * i8ptr2 = PointerType::getInt8PtrTy(M.getContext())-&gt;getPointerTo();</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <a class="code" href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">Type</a> * i32 = IntegerType::getInt32Ty(M.getContext());</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="comment">// define void @svf.main(i32, i8**, i8**)</span></div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="preprocessor">#if (LLVM_VERSION_MAJOR &gt;= 9)</span></div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; FunctionCallee svfmainFn = M.getOrInsertFunction(</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <a class="code" href="LLVMModule_8cpp.html#a10ab7c7da3a458495d8528b9e90d714b">SVF_MAIN_FUNC_NAME</a>,</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; Type::getVoidTy(M.getContext()),</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; i32,i8ptr2,i8ptr2</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; );</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *svfmain = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>&gt;(svfmainFn.getCallee());</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *svfmain = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>&gt;(M.getOrInsertFunction(</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <a class="code" href="LLVMModule_8cpp.html#a10ab7c7da3a458495d8528b9e90d714b">SVF_MAIN_FUNC_NAME</a>,</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; Type::getVoidTy(M.getContext()),</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; i32,i8ptr2,i8ptr2</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; ));</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; svfmain-&gt;setCallingConv(llvm::CallingConv::C);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>* block = BasicBlock::Create(M.getContext(), <span class="stringliteral">&quot;entry&quot;</span>, svfmain);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <a class="code" href="namespaceSVF.html#a94824519e439aeef1568d415b6f7331c">IRBuilder</a> Builder(block);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="comment">// emit &quot;call void @_GLOBAL__sub_I_XXX()&quot;</span></div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">auto</span> &amp; init: init_funcs)</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; {</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keyword">auto</span> target = M.getOrInsertFunction(</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; init-&gt;getName(),</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; Type::getVoidTy(M.getContext())</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; );</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; Builder.CreateCall(target);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="comment">// main() should be called after all _GLOBAL__sub_I_XXX functions.</span></div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; Function::arg_iterator arg_it = svfmain-&gt;arg_begin();</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a> * args[] = {arg_it, arg_it + 1, arg_it + 2 };</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordtype">size_t</span> cnt = orgMain-&gt;arg_size();</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(cnt &lt;= 3 &amp;&amp; <span class="stringliteral">&quot;Too many arguments for main()&quot;</span>);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; Builder.CreateCall(orgMain, llvm::ArrayRef&lt;Value*&gt;(args,args + cnt));</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="comment">// return;</span></div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; Builder.CreateRetVoid();</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; }</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00081">BasicTypes.h:81</a></div></div>
326
- <div class="ttc" id="namespaceSVF_html_a23bf614858f168b6ad76e0233cec9965"><div class="ttname"><a href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">SVF::BasicBlock</a></div><div class="ttdeci">llvm::BasicBlock BasicBlock</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00074">BasicTypes.h:74</a></div></div>
327
- <div class="ttc" id="namespaceSVF_html_a1d008c0666c145622b81d427be64c52d"><div class="ttname"><a href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">SVF::Type</a></div><div class="ttdeci">llvm::Type Type</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00072">BasicTypes.h:72</a></div></div>
325
+ <div class="fragment"><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;{</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; std::vector&lt;Function *&gt; init_funcs;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> * orgMain = 0;</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a>* mainMod = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a>&amp; mod : <a class="code" href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">modules</a>)</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; {</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> &amp;func: mod)</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; {</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keywordflow">if</span>(func.getName().startswith(<a class="code" href="LLVMModule_8cpp.html#a264d24658581f23cb7e764c7a21e9b26">SVF_GLOBAL_SUB_I_XXX</a>))</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; init_funcs.push_back(&amp;func);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">if</span>(func.getName().equals(<a class="code" href="LLVMModule_8cpp.html#a10ab7c7da3a458495d8528b9e90d714b">SVF_MAIN_FUNC_NAME</a>))</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<span class="keyword">false</span> &amp;&amp; <a class="code" href="LLVMModule_8cpp.html#a10ab7c7da3a458495d8528b9e90d714b">SVF_MAIN_FUNC_NAME</a> <span class="stringliteral">&quot; already defined&quot;</span>);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">if</span>(func.getName().equals(<span class="stringliteral">&quot;main&quot;</span>))</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; {</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; orgMain = &amp;func;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; mainMod = &amp;mod;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; }</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">if</span>(orgMain &amp;&amp; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>() &gt; 0 &amp;&amp; init_funcs.size() &gt; 0)</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; {</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(mainMod &amp;&amp; <span class="stringliteral">&quot;Module with main function not found.&quot;</span>);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a> &amp; M = *mainMod;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="comment">// char **</span></div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <a class="code" href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">Type</a> * i8ptr2 = PointerType::getInt8PtrTy(M.getContext())-&gt;getPointerTo();</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <a class="code" href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">Type</a> * i32 = IntegerType::getInt32Ty(M.getContext());</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="comment">// define void @svf.main(i32, i8**, i8**)</span></div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="preprocessor">#if (LLVM_VERSION_MAJOR &gt;= 9)</span></div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; FunctionCallee svfmainFn = M.getOrInsertFunction(</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <a class="code" href="LLVMModule_8cpp.html#a10ab7c7da3a458495d8528b9e90d714b">SVF_MAIN_FUNC_NAME</a>,</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; Type::getVoidTy(M.getContext()),</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; i32,i8ptr2,i8ptr2</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; );</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *svfmain = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>&gt;(svfmainFn.getCallee());</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *svfmain = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>&gt;(M.getOrInsertFunction(</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <a class="code" href="LLVMModule_8cpp.html#a10ab7c7da3a458495d8528b9e90d714b">SVF_MAIN_FUNC_NAME</a>,</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; Type::getVoidTy(M.getContext()),</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; i32,i8ptr2,i8ptr2</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; ));</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; svfmain-&gt;setCallingConv(llvm::CallingConv::C);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>* block = BasicBlock::Create(M.getContext(), <span class="stringliteral">&quot;entry&quot;</span>, svfmain);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <a class="code" href="namespaceSVF.html#a94824519e439aeef1568d415b6f7331c">IRBuilder</a> Builder(block);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="comment">// emit &quot;call void @_GLOBAL__sub_I_XXX()&quot;</span></div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">auto</span> &amp; init: init_funcs)</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; {</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keyword">auto</span> target = M.getOrInsertFunction(</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; init-&gt;getName(),</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; Type::getVoidTy(M.getContext())</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; );</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; Builder.CreateCall(target);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="comment">// main() should be called after all _GLOBAL__sub_I_XXX functions.</span></div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; Function::arg_iterator arg_it = svfmain-&gt;arg_begin();</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a> * args[] = {arg_it, arg_it + 1, arg_it + 2 };</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordtype">size_t</span> cnt = orgMain-&gt;arg_size();</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(cnt &lt;= 3 &amp;&amp; <span class="stringliteral">&quot;Too many arguments for main()&quot;</span>);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; Builder.CreateCall(orgMain, llvm::ArrayRef&lt;Value*&gt;(args,args + cnt));</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="comment">// return;</span></div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; Builder.CreateRetVoid();</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; }</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
326
+ <div class="ttc" id="namespaceSVF_html_a23bf614858f168b6ad76e0233cec9965"><div class="ttname"><a href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">SVF::BasicBlock</a></div><div class="ttdeci">llvm::BasicBlock BasicBlock</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00072">BasicTypes.h:72</a></div></div>
327
+ <div class="ttc" id="namespaceSVF_html_a1d008c0666c145622b81d427be64c52d"><div class="ttname"><a href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">SVF::Type</a></div><div class="ttdeci">llvm::Type Type</div><div class="ttdoc">LLVM Basic classes. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00066">BasicTypes.h:66</a></div></div>
328
328
  <div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
329
329
  <div class="ttc" id="LLVMModule_8cpp_html_a264d24658581f23cb7e764c7a21e9b26"><div class="ttname"><a href="LLVMModule_8cpp.html#a264d24658581f23cb7e764c7a21e9b26">SVF_GLOBAL_SUB_I_XXX</a></div><div class="ttdeci">#define SVF_GLOBAL_SUB_I_XXX</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00056">LLVMModule.cpp:56</a></div></div>
330
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae265a7f3cc7367d62013e0f15cf3d233"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">SVF::LLVMModuleSet::getModuleNum</a></div><div class="ttdeci">u32_t getModuleNum() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00094">LLVMModule.h:94</a></div></div>
331
- <div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
332
- <div class="ttc" id="namespaceSVF_html_a94824519e439aeef1568d415b6f7331c"><div class="ttname"><a href="namespaceSVF.html#a94824519e439aeef1568d415b6f7331c">SVF::IRBuilder</a></div><div class="ttdeci">llvm::IRBuilder IRBuilder</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00162">BasicTypes.h:162</a></div></div>
330
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae265a7f3cc7367d62013e0f15cf3d233"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">SVF::LLVMModuleSet::getModuleNum</a></div><div class="ttdeci">u32_t getModuleNum() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00095">LLVMModule.h:95</a></div></div>
331
+ <div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00071">BasicTypes.h:71</a></div></div>
332
+ <div class="ttc" id="namespaceSVF_html_a94824519e439aeef1568d415b6f7331c"><div class="ttname"><a href="namespaceSVF.html#a94824519e439aeef1568d415b6f7331c">SVF::IRBuilder</a></div><div class="ttdeci">llvm::IRBuilder IRBuilder</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00158">BasicTypes.h:158</a></div></div>
333
333
  <div class="ttc" id="LLVMModule_8cpp_html_a10ab7c7da3a458495d8528b9e90d714b"><div class="ttname"><a href="LLVMModule_8cpp.html#a10ab7c7da3a458495d8528b9e90d714b">SVF_MAIN_FUNC_NAME</a></div><div class="ttdeci">#define SVF_MAIN_FUNC_NAME</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00055">LLVMModule.cpp:55</a></div></div>
334
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00054">LLVMModule.h:54</a></div></div>
334
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00055">LLVMModule.h:55</a></div></div>
335
335
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8182be247907420db00837cef9bcfa70"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVF::SVFUtil::dyn_cast</a></div><div class="ttdeci">LLVM_NODISCARD std::enable_if&lt;!is_simple_type&lt; Y &gt;::value, typename cast_retty&lt; X, const Y &gt;::ret_type &gt;::type dyn_cast(const Y &amp;Val)</div><div class="ttdef"><b>Definition:</b> <a href="Casting_8h_source.html#l00343">Casting.h:343</a></div></div>
336
- <div class="ttc" id="namespaceSVF_html_a90b263fd2f541eca78135078114cabda"><div class="ttname"><a href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">SVF::Value</a></div><div class="ttdeci">llvm::Value Value</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00075">BasicTypes.h:75</a></div></div>
336
+ <div class="ttc" id="namespaceSVF_html_a90b263fd2f541eca78135078114cabda"><div class="ttname"><a href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">SVF::Value</a></div><div class="ttdeci">llvm::Value Value</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
337
337
  </div><!-- fragment -->
338
338
  </div>
339
339
  </div>
@@ -363,13 +363,13 @@ Static Private Attributes</h2></td></tr>
363
363
 
364
364
  <p>Returns true if all LLVM modules are compiled with ctir. </p>
365
365
 
366
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00211">211</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
367
- <div class="fragment"><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; {</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="comment">// Iterate over all modules. If a single module does not have the correct ctir module flag,</span></div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="comment">// short-circuit and return false.</span></div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i &lt; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>(); ++i)</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; {</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; llvm::Metadata *ctirModuleFlag = <a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a>-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">getModule</a>(i)-&gt;getModuleFlag(<a class="code" href="namespaceSVF_1_1cppUtil_1_1ctir.html#a0cd5347bc8043d4306e66a4a96005ace">cppUtil::ctir::derefMDName</a>);</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keywordflow">if</span> (ctirModuleFlag == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; {</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; llvm::ConstantAsMetadata *flagConstMetadata = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;llvm::ConstantAsMetadata&gt;(ctirModuleFlag);</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <a class="code" href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">ConstantInt</a> *flagConstInt = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">ConstantInt</a>&gt;(flagConstMetadata-&gt;getValue());</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordflow">if</span> (flagConstInt-&gt;getZExtValue() != <a class="code" href="namespaceSVF_1_1cppUtil_1_1ctir.html#a05c7c51164928786d70713094db7f3f3">cppUtil::ctir::moduleFlagValue</a>)</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; {</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; }</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; }</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; }</div><div class="ttc" id="namespaceSVF_html_adefcb50414ea999d70cea5ccdbcb98d7"><div class="ttname"><a href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">SVF::ConstantInt</a></div><div class="ttdeci">llvm::ConstantInt ConstantInt</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00113">BasicTypes.h:113</a></div></div>
368
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae265a7f3cc7367d62013e0f15cf3d233"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">SVF::LLVMModuleSet::getModuleNum</a></div><div class="ttdeci">u32_t getModuleNum() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00094">LLVMModule.h:94</a></div></div>
369
- <div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00085">SVFBasicTypes.h:85</a></div></div>
366
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00212">212</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
367
+ <div class="fragment"><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; {</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="comment">// Iterate over all modules. If a single module does not have the correct ctir module flag,</span></div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="comment">// short-circuit and return false.</span></div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i &lt; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>(); ++i)</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; {</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; llvm::Metadata *ctirModuleFlag = <a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a>-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">getModule</a>(i)-&gt;getModuleFlag(<a class="code" href="namespaceSVF_1_1cppUtil_1_1ctir.html#a0cd5347bc8043d4306e66a4a96005ace">cppUtil::ctir::derefMDName</a>);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordflow">if</span> (ctirModuleFlag == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; {</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; }</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; llvm::ConstantAsMetadata *flagConstMetadata = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;llvm::ConstantAsMetadata&gt;(ctirModuleFlag);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <a class="code" href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">ConstantInt</a> *flagConstInt = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">ConstantInt</a>&gt;(flagConstMetadata-&gt;getValue());</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">if</span> (flagConstInt-&gt;getZExtValue() != <a class="code" href="namespaceSVF_1_1cppUtil_1_1ctir.html#a05c7c51164928786d70713094db7f3f3">cppUtil::ctir::moduleFlagValue</a>)</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; {</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; }</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; }</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; }</div><div class="ttc" id="namespaceSVF_html_adefcb50414ea999d70cea5ccdbcb98d7"><div class="ttname"><a href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">SVF::ConstantInt</a></div><div class="ttdeci">llvm::ConstantInt ConstantInt</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00109">BasicTypes.h:109</a></div></div>
368
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae265a7f3cc7367d62013e0f15cf3d233"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">SVF::LLVMModuleSet::getModuleNum</a></div><div class="ttdeci">u32_t getModuleNum() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00095">LLVMModule.h:95</a></div></div>
369
+ <div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00084">SVFBasicTypes.h:84</a></div></div>
370
370
  <div class="ttc" id="namespaceSVF_1_1cppUtil_1_1ctir_html_a0cd5347bc8043d4306e66a4a96005ace"><div class="ttname"><a href="namespaceSVF_1_1cppUtil_1_1ctir.html#a0cd5347bc8043d4306e66a4a96005ace">SVF::cppUtil::ctir::derefMDName</a></div><div class="ttdeci">const std::string derefMDName</div><div class="ttdef"><b>Definition:</b> <a href="CPPUtil_8h_source.html#l00113">CPPUtil.h:113</a></div></div>
371
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ac59b07cafcbacc950eefea4082425b63"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">SVF::LLVMModuleSet::llvmModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * llvmModuleSet</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00050">LLVMModule.h:50</a></div></div>
372
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a8afb7ab3ee4632e78d546e549110e74c"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">SVF::LLVMModuleSet::getModule</a></div><div class="ttdeci">Module * getModule(u32_t idx) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00099">LLVMModule.h:99</a></div></div>
371
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ac59b07cafcbacc950eefea4082425b63"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">SVF::LLVMModuleSet::llvmModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * llvmModuleSet</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
372
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a8afb7ab3ee4632e78d546e549110e74c"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">SVF::LLVMModuleSet::getModule</a></div><div class="ttdeci">Module * getModule(u32_t idx) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00100">LLVMModule.h:100</a></div></div>
373
373
  <div class="ttc" id="namespaceSVF_1_1cppUtil_1_1ctir_html_a05c7c51164928786d70713094db7f3f3"><div class="ttname"><a href="namespaceSVF_1_1cppUtil_1_1ctir.html#a05c7c51164928786d70713094db7f3f3">SVF::cppUtil::ctir::moduleFlagValue</a></div><div class="ttdeci">const uint32_t moduleFlagValue</div><div class="ttdoc">Value we expect a ctir-annotated module to have. </div><div class="ttdef"><b>Definition:</b> <a href="CPPUtil_8h_source.html#l00122">CPPUtil.h:122</a></div></div>
374
374
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8182be247907420db00837cef9bcfa70"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVF::SVFUtil::dyn_cast</a></div><div class="ttdeci">LLVM_NODISCARD std::enable_if&lt;!is_simple_type&lt; Y &gt;::value, typename cast_retty&lt; X, const Y &gt;::ret_type &gt;::type dyn_cast(const Y &amp;Val)</div><div class="ttdef"><b>Definition:</b> <a href="Casting_8h_source.html#l00343">Casting.h:343</a></div></div>
375
375
  </div><!-- fragment -->
@@ -401,7 +401,7 @@ Static Private Attributes</h2></td></tr>
401
401
  <p class="definition">Definition at line <a class="el" href="LLVMModule_8cpp_source.html#l00109">109</a> of file <a class="el" href="LLVMModule_8cpp_source.html">LLVMModule.cpp</a>.</p>
402
402
  <div class="fragment"><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;{</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a9782bf6b7b015fd8fb48f75eb4508d22">initialize</a>();</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ac7c646a78c989807c52263fc35fb3628">buildFunToFunMap</a>();</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#aaab03cb6ff665bc008c67b866ba81e47">buildGlobalDefToRepMap</a>();</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1LLVMModuleSet.html#a14b0b55d397d6f8a5dfe3b574021f801">preProcessed</a>==<span class="keyword">false</span>)</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a8b5f24c873db1f6a0614d1dac48bb4bb">prePassSchedule</a>();</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;}</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_aaab03cb6ff665bc008c67b866ba81e47"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#aaab03cb6ff665bc008c67b866ba81e47">SVF::LLVMModuleSet::buildGlobalDefToRepMap</a></div><div class="ttdeci">void buildGlobalDefToRepMap()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00408">LLVMModule.cpp:408</a></div></div>
403
403
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a9782bf6b7b015fd8fb48f75eb4508d22"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a9782bf6b7b015fd8fb48f75eb4508d22">SVF::LLVMModuleSet::initialize</a></div><div class="ttdeci">void initialize()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00197">LLVMModule.cpp:197</a></div></div>
404
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a14b0b55d397d6f8a5dfe3b574021f801"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a14b0b55d397d6f8a5dfe3b574021f801">SVF::LLVMModuleSet::preProcessed</a></div><div class="ttdeci">bool preProcessed</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00242">LLVMModule.h:242</a></div></div>
404
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a14b0b55d397d6f8a5dfe3b574021f801"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a14b0b55d397d6f8a5dfe3b574021f801">SVF::LLVMModuleSet::preProcessed</a></div><div class="ttdeci">bool preProcessed</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00243">LLVMModule.h:243</a></div></div>
405
405
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a8b5f24c873db1f6a0614d1dac48bb4bb"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a8b5f24c873db1f6a0614d1dac48bb4bb">SVF::LLVMModuleSet::prePassSchedule</a></div><div class="ttdeci">void prePassSchedule()</div><div class="ttdoc">Invoke llvm passes to modify module. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00121">LLVMModule.cpp:121</a></div></div>
406
406
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ac7c646a78c989807c52263fc35fb3628"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ac7c646a78c989807c52263fc35fb3628">SVF::LLVMModuleSet::buildFunToFunMap</a></div><div class="ttdeci">void buildFunToFunMap()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00296">LLVMModule.cpp:296</a></div></div>
407
407
  </div><!-- fragment -->
@@ -434,15 +434,15 @@ Static Private Attributes</h2></td></tr>
434
434
 
435
435
  <p class="definition">Definition at line <a class="el" href="LLVMModule_8cpp_source.html#l00296">296</a> of file <a class="el" href="LLVMModule_8cpp_source.html">LLVMModule.cpp</a>.</p>
436
436
  <div class="fragment"><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;{</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;Function*&gt;</a> funDecls, funDefs;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <a class="code" href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">OrderedSet&lt;string&gt;</a> declNames, defNames, intersectNames;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;string, Function*&gt;</a> NameToFunDefMapTy;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;string, Set&lt;Function*&gt;</a>&gt; NameToFunDeclsMapTy;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">for</span> (SVFModule::LLVMFunctionSetType::iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a648542aa5c4b487ad5aa12a39d15e951">llvmFunBegin</a>(),</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; eit = <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af38d0f831967d6d8391a4c84e58d6519">llvmFunEnd</a>(); it != eit; ++it)</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *fun = *it;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">if</span> (fun-&gt;isDeclaration())</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; {</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; funDecls.insert(fun);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; declNames.insert(fun-&gt;getName().str());</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; }</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; {</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; funDefs.insert(fun);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; defNames.insert(fun-&gt;getName().str());</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; }</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; }</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="comment">// Find the intersectNames</span></div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <a class="code" href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">OrderedSet&lt;string&gt;::iterator</a> declIter, defIter;</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; declIter = declNames.begin();</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; defIter = defNames.begin();</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">while</span> (declIter != declNames.end() &amp;&amp; defIter != defNames.end())</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; {</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordflow">if</span> (*declIter &lt; *defIter)</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; {</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; declIter++;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; }</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; {</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">if</span> (!(*defIter &lt; *declIter))</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; {</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; intersectNames.insert(*declIter);</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; declIter++;</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; }</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; defIter++;</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; }</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; }</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; NameToFunDefMapTy nameToFunDefMap;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;Function*&gt;::iterator</a> it = funDefs.begin(),</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; eit = funDefs.end(); it != eit; ++it)</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; {</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *fdef = *it;</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordtype">string</span> funName = fdef-&gt;getName().str();</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">if</span> (intersectNames.find(funName) == intersectNames.end())</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; nameToFunDefMap[funName] = fdef;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; }</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; NameToFunDeclsMapTy nameToFunDeclsMap;</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;Function*&gt;::iterator</a> it = funDecls.begin(),</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; eit = funDecls.end(); it != eit; ++it)</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; {</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *fdecl = *it;</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordtype">string</span> funName = fdecl-&gt;getName().str();</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">if</span> (intersectNames.find(funName) == intersectNames.end())</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; NameToFunDeclsMapTy::iterator mit = nameToFunDeclsMap.find(funName);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keywordflow">if</span> (mit == nameToFunDeclsMap.end())</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; {</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;Function*&gt;</a> decls;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; decls.insert(fdecl);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; nameToFunDeclsMap[funName] = decls;</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; }</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; {</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;Function*&gt;</a> &amp;decls = mit-&gt;second;</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; decls.insert(fdecl);</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; }</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; }</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;Function*&gt;::iterator</a> it = funDecls.begin(),</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; eit = funDecls.end(); it != eit; ++it)</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; {</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *fdecl = *it;</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordtype">string</span> funName = fdecl-&gt;getName().str();</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">if</span> (intersectNames.find(funName) == intersectNames.end())</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; NameToFunDefMapTy::iterator mit = nameToFunDefMap.find(funName);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">if</span> (mit == nameToFunDefMap.end())</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">FunDeclToDefMap</a>[<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(fdecl)] = <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(mit-&gt;second);</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; }</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;Function*&gt;::iterator</a> it = funDefs.begin(),</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; eit = funDefs.end(); it != eit; ++it)</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; {</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *fdef = *it;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordtype">string</span> funName = fdef-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a2409c01221b9a6632655cee43d1b35e4">getName</a>().str();</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">if</span> (intersectNames.find(funName) == intersectNames.end())</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; NameToFunDeclsMapTy::iterator mit = nameToFunDeclsMap.find(funName);</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">if</span> (mit == nameToFunDeclsMap.end())</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; std::vector&lt;const SVFFunction*&gt;&amp; decls = <a class="code" href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">FunDefToDeclsMap</a>[<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(fdef)];</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;Function*&gt;::iterator</a> sit = mit-&gt;second.begin(),</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; seit = mit-&gt;second.end(); sit != seit; ++sit)</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; {</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; decls.push_back(<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(*sit));</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; }</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; }</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFModule_html_af38d0f831967d6d8391a4c84e58d6519"><div class="ttname"><a href="classSVF_1_1SVFModule.html#af38d0f831967d6d8391a4c84e58d6519">SVF::SVFModule::llvmFunEnd</a></div><div class="ttdeci">llvm_iterator llvmFunEnd()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00138">SVFModule.h:138</a></div></div>
437
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a377cefaad4b688ab6edf94ba4abe00ee"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">SVF::LLVMModuleSet::FunDefToDeclsMap</a></div><div class="ttdeci">FunDefToDeclsMapTy FunDefToDeclsMap</div><div class="ttdoc">Function definition to function declaration map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00059">LLVMModule.h:59</a></div></div>
438
- <div class="ttc" id="namespaceSVF_html_a4f21e91ff8eaea5207afe5c60dbd78d7"><div class="ttname"><a href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">SVF::OrderedSet</a></div><div class="ttdeci">std::set&lt; Key, Compare, Allocator &gt; OrderedSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00113">SVFBasicTypes.h:113</a></div></div>
439
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_aee80b29e5246e3eaa0e30e165346101f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">SVF::LLVMModuleSet::FunDeclToDefMap</a></div><div class="ttdeci">FunDeclToDefMapTy FunDeclToDefMap</div><div class="ttdoc">Function declaration to function definition map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00057">LLVMModule.h:57</a></div></div>
440
- <div class="ttc" id="namespaceSVF_html_a8234d4b959abc9123993bcff4eee34c1"><div class="ttname"><a href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">SVF::Map</a></div><div class="ttdeci">std::unordered_map&lt; Key, Value, Hash, KeyEqual, Allocator &gt; Map</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00110">SVFBasicTypes.h:110</a></div></div>
437
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a377cefaad4b688ab6edf94ba4abe00ee"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">SVF::LLVMModuleSet::FunDefToDeclsMap</a></div><div class="ttdeci">FunDefToDeclsMapTy FunDefToDeclsMap</div><div class="ttdoc">Function definition to function declaration map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00060">LLVMModule.h:60</a></div></div>
438
+ <div class="ttc" id="namespaceSVF_html_a4f21e91ff8eaea5207afe5c60dbd78d7"><div class="ttname"><a href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">SVF::OrderedSet</a></div><div class="ttdeci">std::set&lt; Key, Compare, Allocator &gt; OrderedSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00112">SVFBasicTypes.h:112</a></div></div>
439
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_aee80b29e5246e3eaa0e30e165346101f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">SVF::LLVMModuleSet::FunDeclToDefMap</a></div><div class="ttdeci">FunDeclToDefMapTy FunDeclToDefMap</div><div class="ttdoc">Function declaration to function definition map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00058">LLVMModule.h:58</a></div></div>
440
+ <div class="ttc" id="namespaceSVF_html_a8234d4b959abc9123993bcff4eee34c1"><div class="ttname"><a href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">SVF::Map</a></div><div class="ttdeci">std::unordered_map&lt; Key, Value, Hash, KeyEqual, Allocator &gt; Map</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00109">SVFBasicTypes.h:109</a></div></div>
441
441
  <div class="ttc" id="classSVF_1_1SVFModule_html_a648542aa5c4b487ad5aa12a39d15e951"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a648542aa5c4b487ad5aa12a39d15e951">SVF::SVFModule::llvmFunBegin</a></div><div class="ttdeci">llvm_iterator llvmFunBegin()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00130">SVFModule.h:130</a></div></div>
442
- <div class="ttc" id="namespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set&lt; Key, Hash, KeyEqual, Allocator &gt; Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00105">SVFBasicTypes.h:105</a></div></div>
443
- <div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
444
- <div class="ttc" id="classSVF_1_1SVFValue_html_a2409c01221b9a6632655cee43d1b35e4"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a2409c01221b9a6632655cee43d1b35e4">SVF::SVFValue::getName</a></div><div class="ttdeci">const std::string getName() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00254">SVFBasicTypes.h:254</a></div></div>
445
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
442
+ <div class="ttc" id="namespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set&lt; Key, Hash, KeyEqual, Allocator &gt; Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00104">SVFBasicTypes.h:104</a></div></div>
443
+ <div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00071">BasicTypes.h:71</a></div></div>
444
+ <div class="ttc" id="classSVF_1_1SVFValue_html_a2409c01221b9a6632655cee43d1b35e4"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a2409c01221b9a6632655cee43d1b35e4">SVF::SVFValue::getName</a></div><div class="ttdeci">const std::string getName() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00252">SVFBasicTypes.h:252</a></div></div>
445
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
446
446
  <div class="ttc" id="classSVF_1_1SVFModule_html_af969d7739f27c8242985656bafbabaeb"><div class="ttname"><a href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">SVF::SVFModule::getSVFFunction</a></div><div class="ttdeci">const SVFFunction * getSVFFunction(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00121">SVFModule.h:121</a></div></div>
447
447
  </div><!-- fragment -->
448
448
  </div>
@@ -471,13 +471,13 @@ Static Private Attributes</h2></td></tr>
471
471
  </div><div class="memdoc">
472
472
 
473
473
  <p class="definition">Definition at line <a class="el" href="LLVMModule_8cpp_source.html#l00408">408</a> of file <a class="el" href="LLVMModule_8cpp_source.html">LLVMModule.cpp</a>.</p>
474
- <div class="fragment"><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;{</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;string, Set&lt;GlobalVariable*&gt;</a>&gt; NameToGlobalsMapTy;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; NameToGlobalsMapTy nameToGlobalsMap;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#a4cf1ca2e9f045a0520b0a8a6cd5993f2">SVFModule::global_iterator</a> it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a4dc32c583d29d74d052eaa5665b0b70e">global_begin</a>(),</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; eit = <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a8a34164634d6ad9a7b76175907c8c44b">global_end</a>(); it != eit; ++it)</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; {</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a> *global = *it;</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keywordflow">if</span> (global-&gt;hasPrivateLinkage())</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordtype">string</span> name = global-&gt;getName().str();</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; NameToGlobalsMapTy::iterator mit = nameToGlobalsMap.find(name);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">if</span> (mit == nameToGlobalsMap.end())</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; {</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;GlobalVariable*&gt;</a> globals;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; globals.insert(global);</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; nameToGlobalsMap[name] = globals;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; }</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; {</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;GlobalVariable*&gt;</a> &amp;globals = mit-&gt;second;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; globals.insert(global);</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; }</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; }</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <span class="keywordflow">for</span> (NameToGlobalsMapTy::iterator it = nameToGlobalsMap.begin(),</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; eit = nameToGlobalsMap.end(); it != eit; ++it)</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; {</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;GlobalVariable*&gt;</a> &amp;globals = it-&gt;second;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a> *rep = *(globals.begin());</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;GlobalVariable*&gt;::iterator</a> repit = globals.begin();</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">while</span> (repit != globals.end())</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; {</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a> *cur = *repit;</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keywordflow">if</span> (cur-&gt;hasInitializer())</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; {</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; rep = cur;</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; }</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; repit++;</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; }</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;GlobalVariable*&gt;::iterator</a> sit = globals.begin(),</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; seit = globals.end(); sit != seit; ++sit)</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; {</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a> *cur = *sit;</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">GlobalDefToRepMap</a>[cur] = rep;</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; }</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; }</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a09f5fa3bc44bf53612a085e3a611cc4e"><div class="ttname"><a href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">SVF::GlobalVariable</a></div><div class="ttdeci">llvm::GlobalVariable GlobalVariable</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00080">BasicTypes.h:80</a></div></div>
475
- <div class="ttc" id="namespaceSVF_html_a8234d4b959abc9123993bcff4eee34c1"><div class="ttname"><a href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">SVF::Map</a></div><div class="ttdeci">std::unordered_map&lt; Key, Value, Hash, KeyEqual, Allocator &gt; Map</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00110">SVFBasicTypes.h:110</a></div></div>
476
- <div class="ttc" id="namespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set&lt; Key, Hash, KeyEqual, Allocator &gt; Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00105">SVFBasicTypes.h:105</a></div></div>
474
+ <div class="fragment"><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;{</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;string, Set&lt;GlobalVariable*&gt;</a>&gt; NameToGlobalsMapTy;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; NameToGlobalsMapTy nameToGlobalsMap;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#a4cf1ca2e9f045a0520b0a8a6cd5993f2">SVFModule::global_iterator</a> it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a4dc32c583d29d74d052eaa5665b0b70e">global_begin</a>(),</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; eit = <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a8a34164634d6ad9a7b76175907c8c44b">global_end</a>(); it != eit; ++it)</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; {</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a> *global = *it;</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keywordflow">if</span> (global-&gt;hasPrivateLinkage())</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordtype">string</span> name = global-&gt;getName().str();</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; NameToGlobalsMapTy::iterator mit = nameToGlobalsMap.find(name);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">if</span> (mit == nameToGlobalsMap.end())</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; {</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;GlobalVariable*&gt;</a> globals;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; globals.insert(global);</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; nameToGlobalsMap[name] = globals;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; }</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; {</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;GlobalVariable*&gt;</a> &amp;globals = mit-&gt;second;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; globals.insert(global);</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; }</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; }</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <span class="keywordflow">for</span> (NameToGlobalsMapTy::iterator it = nameToGlobalsMap.begin(),</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; eit = nameToGlobalsMap.end(); it != eit; ++it)</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; {</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;GlobalVariable*&gt;</a> &amp;globals = it-&gt;second;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a> *rep = *(globals.begin());</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;GlobalVariable*&gt;::iterator</a> repit = globals.begin();</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">while</span> (repit != globals.end())</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; {</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a> *cur = *repit;</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keywordflow">if</span> (cur-&gt;hasInitializer())</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; {</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; rep = cur;</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; }</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; repit++;</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; }</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;GlobalVariable*&gt;::iterator</a> sit = globals.begin(),</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; seit = globals.end(); sit != seit; ++sit)</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; {</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a> *cur = *sit;</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">GlobalDefToRepMap</a>[cur] = rep;</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; }</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; }</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a09f5fa3bc44bf53612a085e3a611cc4e"><div class="ttname"><a href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">SVF::GlobalVariable</a></div><div class="ttdeci">llvm::GlobalVariable GlobalVariable</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00078">BasicTypes.h:78</a></div></div>
475
+ <div class="ttc" id="namespaceSVF_html_a8234d4b959abc9123993bcff4eee34c1"><div class="ttname"><a href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">SVF::Map</a></div><div class="ttdeci">std::unordered_map&lt; Key, Value, Hash, KeyEqual, Allocator &gt; Map</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00109">SVFBasicTypes.h:109</a></div></div>
476
+ <div class="ttc" id="namespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set&lt; Key, Hash, KeyEqual, Allocator &gt; Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00104">SVFBasicTypes.h:104</a></div></div>
477
477
  <div class="ttc" id="classSVF_1_1SVFModule_html_a4cf1ca2e9f045a0520b0a8a6cd5993f2"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a4cf1ca2e9f045a0520b0a8a6cd5993f2">SVF::SVFModule::global_iterator</a></div><div class="ttdeci">GlobalSetType::iterator global_iterator</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00055">SVFModule.h:55</a></div></div>
478
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
478
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
479
479
  <div class="ttc" id="classSVF_1_1SVFModule_html_a4dc32c583d29d74d052eaa5665b0b70e"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a4dc32c583d29d74d052eaa5665b0b70e">SVF::SVFModule::global_begin</a></div><div class="ttdeci">global_iterator global_begin()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00164">SVFModule.h:164</a></div></div>
480
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae2a1fa0b908cf372c50af90e62c4bf2b"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">SVF::LLVMModuleSet::GlobalDefToRepMap</a></div><div class="ttdeci">GlobalDefToRepMapTy GlobalDefToRepMap</div><div class="ttdoc">Global definition to a rep definition map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00061">LLVMModule.h:61</a></div></div>
480
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae2a1fa0b908cf372c50af90e62c4bf2b"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">SVF::LLVMModuleSet::GlobalDefToRepMap</a></div><div class="ttdeci">GlobalDefToRepMapTy GlobalDefToRepMap</div><div class="ttdoc">Global definition to a rep definition map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00062">LLVMModule.h:62</a></div></div>
481
481
  <div class="ttc" id="classSVF_1_1SVFModule_html_a8a34164634d6ad9a7b76175907c8c44b"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a8a34164634d6ad9a7b76175907c8c44b">SVF::SVFModule::global_end</a></div><div class="ttdeci">global_iterator global_end()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00172">SVFModule.h:172</a></div></div>
482
482
  </div><!-- fragment -->
483
483
  </div>
@@ -501,8 +501,8 @@ Static Private Attributes</h2></td></tr>
501
501
  <p class="definition">Definition at line <a class="el" href="LLVMModule_8cpp_source.html#l00061">61</a> of file <a class="el" href="LLVMModule_8cpp_source.html">LLVMModule.cpp</a>.</p>
502
502
  <div class="fragment"><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;{</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>(mod.getModuleIdentifier());</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">modules</a>.emplace_back(mod);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#af8edfe08027020f14b81b44362c6018e">build</a>();</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFModule_html"><div class="ttname"><a href="classSVF_1_1SVFModule.html">SVF::SVFModule</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00041">SVFModule.h:41</a></div></div>
503
503
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_af8edfe08027020f14b81b44362c6018e"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#af8edfe08027020f14b81b44362c6018e">SVF::LLVMModuleSet::build</a></div><div class="ttdeci">void build()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00109">LLVMModule.cpp:109</a></div></div>
504
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
505
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00054">LLVMModule.h:54</a></div></div>
504
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
505
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00055">LLVMModule.h:55</a></div></div>
506
506
  </div><!-- fragment -->
507
507
  </div>
508
508
  </div>
@@ -525,9 +525,9 @@ Static Private Attributes</h2></td></tr>
525
525
  <p class="definition">Definition at line <a class="el" href="LLVMModule_8cpp_source.html#l00071">71</a> of file <a class="el" href="LLVMModule_8cpp_source.html">LLVMModule.cpp</a>.</p>
526
526
  <div class="fragment"><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;{</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a> &amp;&amp; <span class="stringliteral">&quot;LLVM Module set needs to be created!&quot;</span>);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a298966366b02d0a34f409c2c77da3789">loadModules</a>(moduleNameVec);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">if</span>(!moduleNameVec.empty())</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>(*moduleNameVec.begin());</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>();</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#af8edfe08027020f14b81b44362c6018e">build</a>();</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;}</div><div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
527
527
  <div class="ttc" id="classSVF_1_1SVFModule_html"><div class="ttname"><a href="classSVF_1_1SVFModule.html">SVF::SVFModule</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00041">SVFModule.h:41</a></div></div>
528
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ac59b07cafcbacc950eefea4082425b63"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">SVF::LLVMModuleSet::llvmModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * llvmModuleSet</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00050">LLVMModule.h:50</a></div></div>
528
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ac59b07cafcbacc950eefea4082425b63"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">SVF::LLVMModuleSet::llvmModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * llvmModuleSet</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
529
529
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_af8edfe08027020f14b81b44362c6018e"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#af8edfe08027020f14b81b44362c6018e">SVF::LLVMModuleSet::build</a></div><div class="ttdeci">void build()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00109">LLVMModule.cpp:109</a></div></div>
530
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
530
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
531
531
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a298966366b02d0a34f409c2c77da3789"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a298966366b02d0a34f409c2c77da3789">SVF::LLVMModuleSet::loadModules</a></div><div class="ttdeci">void loadModules(const std::vector&lt; std::string &gt; &amp;moduleNameVec)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00148">LLVMModule.cpp:148</a></div></div>
532
532
  </div><!-- fragment -->
533
533
  </div>
@@ -549,9 +549,9 @@ Static Private Attributes</h2></td></tr>
549
549
  </div><div class="memdoc">
550
550
 
551
551
  <p class="definition">Definition at line <a class="el" href="LLVMModule_8cpp_source.html#l00459">459</a> of file <a class="el" href="LLVMModule_8cpp_source.html">LLVMModule.cpp</a>.</p>
552
- <div class="fragment"><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;{</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a>&amp; mod : <a class="code" href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">modules</a>)</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; {</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; std::string moduleName = mod.getName().str();</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; std::string OutputFilename;</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; std::size_t pos = moduleName.rfind(<span class="charliteral">&#39;.&#39;</span>);</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <span class="keywordflow">if</span> (pos != std::string::npos)</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; OutputFilename = moduleName.substr(0, pos) + suffix;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; OutputFilename = moduleName + suffix;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; std::error_code EC;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <a class="code" href="namespaceSVF.html#a1c7c7ac12791c0ae386283c0a4f127ba">raw_fd_ostream</a> OS(OutputFilename.c_str(), EC, llvm::sys::fs::OF_None);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;<span class="preprocessor">#if (LLVM_VERSION_MAJOR &gt;= 7)</span></div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; WriteBitcodeToFile(mod, OS);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; WriteBitcodeToFile(&amp;mod, OS);</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; OS.flush();</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; }</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00081">BasicTypes.h:81</a></div></div>
553
- <div class="ttc" id="namespaceSVF_html_a1c7c7ac12791c0ae386283c0a4f127ba"><div class="ttname"><a href="namespaceSVF.html#a1c7c7ac12791c0ae386283c0a4f127ba">SVF::raw_fd_ostream</a></div><div class="ttdeci">llvm::raw_fd_ostream raw_fd_ostream</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00095">BasicTypes.h:95</a></div></div>
554
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00054">LLVMModule.h:54</a></div></div>
552
+ <div class="fragment"><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;{</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a>&amp; mod : <a class="code" href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">modules</a>)</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; {</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; std::string moduleName = mod.getName().str();</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; std::string OutputFilename;</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; std::size_t pos = moduleName.rfind(<span class="charliteral">&#39;.&#39;</span>);</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <span class="keywordflow">if</span> (pos != std::string::npos)</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; OutputFilename = moduleName.substr(0, pos) + suffix;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; OutputFilename = moduleName + suffix;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; std::error_code EC;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <a class="code" href="namespaceSVF.html#a1c7c7ac12791c0ae386283c0a4f127ba">raw_fd_ostream</a> OS(OutputFilename.c_str(), EC, llvm::sys::fs::OF_None);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;<span class="preprocessor">#if (LLVM_VERSION_MAJOR &gt;= 7)</span></div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; WriteBitcodeToFile(mod, OS);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; WriteBitcodeToFile(&amp;mod, OS);</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; OS.flush();</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; }</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
553
+ <div class="ttc" id="namespaceSVF_html_a1c7c7ac12791c0ae386283c0a4f127ba"><div class="ttname"><a href="namespaceSVF.html#a1c7c7ac12791c0ae386283c0a4f127ba">SVF::raw_fd_ostream</a></div><div class="ttdeci">llvm::raw_fd_ostream raw_fd_ostream</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00092">BasicTypes.h:92</a></div></div>
554
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00055">LLVMModule.h:55</a></div></div>
555
555
  </div><!-- fragment -->
556
556
  </div>
557
557
  </div>
@@ -579,8 +579,8 @@ Static Private Attributes</h2></td></tr>
579
579
  </table>
580
580
  </div><div class="memdoc">
581
581
 
582
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00205">205</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
583
- <div class="fragment"><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; {</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>() == 0;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae265a7f3cc7367d62013e0f15cf3d233"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">SVF::LLVMModuleSet::getModuleNum</a></div><div class="ttdeci">u32_t getModuleNum() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00094">LLVMModule.h:94</a></div></div>
582
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00206">206</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
583
+ <div class="fragment"><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; {</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>() == 0;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae265a7f3cc7367d62013e0f15cf3d233"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">SVF::LLVMModuleSet::getModuleNum</a></div><div class="ttdeci">u32_t getModuleNum() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00095">LLVMModule.h:95</a></div></div>
584
584
  </div><!-- fragment -->
585
585
  </div>
586
586
  </div>
@@ -594,7 +594,7 @@ Static Private Attributes</h2></td></tr>
594
594
  <td class="mlabels-left">
595
595
  <table class="memname">
596
596
  <tr>
597
- <td class="memname"><a class="el" href="namespaceSVF.html#affba423b674a0aba723e33101826e297">LLVMContext</a>&amp; SVF::LLVMModuleSet::getContext </td>
597
+ <td class="memname"><a class="el" href="SVF-FE_2BasicTypes_8h.html#a9f19a521d06397d1b6dc52c0388513d9">LLVMContext</a>&amp; SVF::LLVMModuleSet::getContext </td>
598
598
  <td>(</td>
599
599
  <td class="paramname"></td><td>)</td>
600
600
  <td> const</td>
@@ -607,10 +607,10 @@ Static Private Attributes</h2></td></tr>
607
607
  </table>
608
608
  </div><div class="memdoc">
609
609
 
610
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00199">199</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
611
- <div class="fragment"><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; {</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(!<a class="code" href="classSVF_1_1LLVMModuleSet.html#ae19e38054c55d5822dfc83a12f12aa60">empty</a>() &amp;&amp; <span class="stringliteral">&quot;empty LLVM module!!&quot;</span>);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a9fe3fa15a6a0ec25864cb8439a45596e">getMainLLVMModule</a>()-&gt;getContext();</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; }</div><div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
612
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a9fe3fa15a6a0ec25864cb8439a45596e"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a9fe3fa15a6a0ec25864cb8439a45596e">SVF::LLVMModuleSet::getMainLLVMModule</a></div><div class="ttdeci">Module * getMainLLVMModule() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00194">LLVMModule.h:194</a></div></div>
613
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae19e38054c55d5822dfc83a12f12aa60"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae19e38054c55d5822dfc83a12f12aa60">SVF::LLVMModuleSet::empty</a></div><div class="ttdeci">bool empty() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00205">LLVMModule.h:205</a></div></div>
610
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00200">200</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
611
+ <div class="fragment"><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; {</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(!<a class="code" href="classSVF_1_1LLVMModuleSet.html#ae19e38054c55d5822dfc83a12f12aa60">empty</a>() &amp;&amp; <span class="stringliteral">&quot;empty LLVM module!!&quot;</span>);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a9fe3fa15a6a0ec25864cb8439a45596e">getMainLLVMModule</a>()-&gt;getContext();</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; }</div><div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
612
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a9fe3fa15a6a0ec25864cb8439a45596e"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a9fe3fa15a6a0ec25864cb8439a45596e">SVF::LLVMModuleSet::getMainLLVMModule</a></div><div class="ttdeci">Module * getMainLLVMModule() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00195">LLVMModule.h:195</a></div></div>
613
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae19e38054c55d5822dfc83a12f12aa60"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae19e38054c55d5822dfc83a12f12aa60">SVF::LLVMModuleSet::empty</a></div><div class="ttdeci">bool empty() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00206">LLVMModule.h:206</a></div></div>
614
614
  </div><!-- fragment -->
615
615
  </div>
616
616
  </div>
@@ -638,9 +638,9 @@ Static Private Attributes</h2></td></tr>
638
638
  </table>
639
639
  </div><div class="memdoc">
640
640
 
641
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00163">163</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
642
- <div class="fragment"><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; {</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#aa4a604e47daaaf95babc7aca68991000">getDeclaration</a>(<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(fun));</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_aa4a604e47daaaf95babc7aca68991000"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#aa4a604e47daaaf95babc7aca68991000">SVF::LLVMModuleSet::getDeclaration</a></div><div class="ttdeci">const FunctionSetType &amp; getDeclaration(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00163">LLVMModule.h:163</a></div></div>
643
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
641
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00164">164</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
642
+ <div class="fragment"><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; {</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#aa4a604e47daaaf95babc7aca68991000">getDeclaration</a>(<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(fun));</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_aa4a604e47daaaf95babc7aca68991000"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#aa4a604e47daaaf95babc7aca68991000">SVF::LLVMModuleSet::getDeclaration</a></div><div class="ttdeci">const FunctionSetType &amp; getDeclaration(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00164">LLVMModule.h:164</a></div></div>
643
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
644
644
  <div class="ttc" id="classSVF_1_1SVFModule_html_af969d7739f27c8242985656bafbabaeb"><div class="ttname"><a href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">SVF::SVFModule::getSVFFunction</a></div><div class="ttdeci">const SVFFunction * getSVFFunction(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00121">SVFModule.h:121</a></div></div>
645
645
  </div><!-- fragment -->
646
646
  </div>
@@ -669,11 +669,11 @@ Static Private Attributes</h2></td></tr>
669
669
  </table>
670
670
  </div><div class="memdoc">
671
671
 
672
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00168">168</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
673
- <div class="fragment"><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; {</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">const</span> SVFFunction* funDef = fun;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span>(fun-&gt;isDeclaration() &amp;&amp; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">hasDefinition</a>(fun))</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; funDef = <a class="code" href="classSVF_1_1LLVMModuleSet.html#abc83c5da519d2d05133106d92df8053e">getDefinition</a>(fun);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; FunDefToDeclsMapTy::const_iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">FunDefToDeclsMap</a>.find(funDef);</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it != <a class="code" href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">FunDefToDeclsMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;does not have a function definition (body)?&quot;</span>);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">return</span> it-&gt;second;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a377cefaad4b688ab6edf94ba4abe00ee"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">SVF::LLVMModuleSet::FunDefToDeclsMap</a></div><div class="ttdeci">FunDefToDeclsMapTy FunDefToDeclsMap</div><div class="ttdoc">Function definition to function declaration map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00059">LLVMModule.h:59</a></div></div>
672
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00169">169</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
673
+ <div class="fragment"><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; {</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">const</span> SVFFunction* funDef = fun;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">if</span>(fun-&gt;isDeclaration() &amp;&amp; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">hasDefinition</a>(fun))</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; funDef = <a class="code" href="classSVF_1_1LLVMModuleSet.html#abc83c5da519d2d05133106d92df8053e">getDefinition</a>(fun);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; FunDefToDeclsMapTy::const_iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">FunDefToDeclsMap</a>.find(funDef);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it != <a class="code" href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">FunDefToDeclsMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;does not have a function definition (body)?&quot;</span>);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">return</span> it-&gt;second;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a377cefaad4b688ab6edf94ba4abe00ee"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">SVF::LLVMModuleSet::FunDefToDeclsMap</a></div><div class="ttdeci">FunDefToDeclsMapTy FunDefToDeclsMap</div><div class="ttdoc">Function definition to function declaration map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00060">LLVMModule.h:60</a></div></div>
674
674
  <div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
675
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a32558da64f03452c502ec57d1e106427"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">SVF::LLVMModuleSet::hasDefinition</a></div><div class="ttdeci">bool hasDefinition(const Function *fun) const</div><div class="ttdoc">Fun decl –&gt; def. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00119">LLVMModule.h:119</a></div></div>
676
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_abc83c5da519d2d05133106d92df8053e"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#abc83c5da519d2d05133106d92df8053e">SVF::LLVMModuleSet::getDefinition</a></div><div class="ttdeci">const SVFFunction * getDefinition(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00131">LLVMModule.h:131</a></div></div>
675
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a32558da64f03452c502ec57d1e106427"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">SVF::LLVMModuleSet::hasDefinition</a></div><div class="ttdeci">bool hasDefinition(const Function *fun) const</div><div class="ttdoc">Fun decl –&gt; def. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00120">LLVMModule.h:120</a></div></div>
676
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_abc83c5da519d2d05133106d92df8053e"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#abc83c5da519d2d05133106d92df8053e">SVF::LLVMModuleSet::getDefinition</a></div><div class="ttdeci">const SVFFunction * getDefinition(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00132">LLVMModule.h:132</a></div></div>
677
677
  </div><!-- fragment -->
678
678
  </div>
679
679
  </div>
@@ -701,9 +701,9 @@ Static Private Attributes</h2></td></tr>
701
701
  </table>
702
702
  </div><div class="memdoc">
703
703
 
704
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00131">131</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
705
- <div class="fragment"><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; {</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#abc83c5da519d2d05133106d92df8053e">getDefinition</a>(<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(fun));</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
706
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_abc83c5da519d2d05133106d92df8053e"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#abc83c5da519d2d05133106d92df8053e">SVF::LLVMModuleSet::getDefinition</a></div><div class="ttdeci">const SVFFunction * getDefinition(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00131">LLVMModule.h:131</a></div></div>
704
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00132">132</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
705
+ <div class="fragment"><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; {</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#abc83c5da519d2d05133106d92df8053e">getDefinition</a>(<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(fun));</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
706
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_abc83c5da519d2d05133106d92df8053e"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#abc83c5da519d2d05133106d92df8053e">SVF::LLVMModuleSet::getDefinition</a></div><div class="ttdeci">const SVFFunction * getDefinition(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00132">LLVMModule.h:132</a></div></div>
707
707
  <div class="ttc" id="classSVF_1_1SVFModule_html_af969d7739f27c8242985656bafbabaeb"><div class="ttname"><a href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">SVF::SVFModule::getSVFFunction</a></div><div class="ttdeci">const SVFFunction * getSVFFunction(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00121">SVFModule.h:121</a></div></div>
708
708
  </div><!-- fragment -->
709
709
  </div>
@@ -732,8 +732,8 @@ Static Private Attributes</h2></td></tr>
732
732
  </table>
733
733
  </div><div class="memdoc">
734
734
 
735
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00136">136</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
736
- <div class="fragment"><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; {</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(fun-&gt;isDeclaration() &amp;&amp; <span class="stringliteral">&quot;not a function declaration?&quot;</span>);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; FunDeclToDefMapTy::const_iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">FunDeclToDefMap</a>.find(fun);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it != <a class="code" href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">FunDeclToDefMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;has no definition?&quot;</span>);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">return</span> it-&gt;second;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_aee80b29e5246e3eaa0e30e165346101f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">SVF::LLVMModuleSet::FunDeclToDefMap</a></div><div class="ttdeci">FunDeclToDefMapTy FunDeclToDefMap</div><div class="ttdoc">Function declaration to function definition map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00057">LLVMModule.h:57</a></div></div>
735
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00137">137</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
736
+ <div class="fragment"><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; {</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(fun-&gt;isDeclaration() &amp;&amp; <span class="stringliteral">&quot;not a function declaration?&quot;</span>);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; FunDeclToDefMapTy::const_iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">FunDeclToDefMap</a>.find(fun);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it != <a class="code" href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">FunDeclToDefMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;has no definition?&quot;</span>);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">return</span> it-&gt;second;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_aee80b29e5246e3eaa0e30e165346101f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">SVF::LLVMModuleSet::FunDeclToDefMap</a></div><div class="ttdeci">FunDeclToDefMapTy FunDeclToDefMap</div><div class="ttdoc">Function declaration to function definition map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00058">LLVMModule.h:58</a></div></div>
737
737
  <div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
738
738
  </div><!-- fragment -->
739
739
  </div>
@@ -762,9 +762,9 @@ Static Private Attributes</h2></td></tr>
762
762
  </table>
763
763
  </div><div class="memdoc">
764
764
 
765
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00186">186</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
766
- <div class="fragment"><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; {</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; GlobalDefToRepMapTy::const_iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">GlobalDefToRepMap</a>.find(val);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it != <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">GlobalDefToRepMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;has no rep?&quot;</span>);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">return</span> it-&gt;second;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; }</div><div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
767
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae2a1fa0b908cf372c50af90e62c4bf2b"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">SVF::LLVMModuleSet::GlobalDefToRepMap</a></div><div class="ttdeci">GlobalDefToRepMapTy GlobalDefToRepMap</div><div class="ttdoc">Global definition to a rep definition map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00061">LLVMModule.h:61</a></div></div>
765
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00187">187</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
766
+ <div class="fragment"><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; {</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; GlobalDefToRepMapTy::const_iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">GlobalDefToRepMap</a>.find(val);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(it != <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">GlobalDefToRepMap</a>.end() &amp;&amp; <span class="stringliteral">&quot;has no rep?&quot;</span>);</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">return</span> it-&gt;second;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; }</div><div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
767
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae2a1fa0b908cf372c50af90e62c4bf2b"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">SVF::LLVMModuleSet::GlobalDefToRepMap</a></div><div class="ttdeci">GlobalDefToRepMapTy GlobalDefToRepMap</div><div class="ttdoc">Global definition to a rep definition map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00062">LLVMModule.h:62</a></div></div>
768
768
  </div><!-- fragment -->
769
769
  </div>
770
770
  </div>
@@ -791,9 +791,9 @@ Static Private Attributes</h2></td></tr>
791
791
  </table>
792
792
  </div><div class="memdoc">
793
793
 
794
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00069">69</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
795
- <div class="fragment"><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; {</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a> == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a8e70de9eefe2e188b10e214e073750e6">LLVMModuleSet</a>();</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ac59b07cafcbacc950eefea4082425b63"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">SVF::LLVMModuleSet::llvmModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * llvmModuleSet</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00050">LLVMModule.h:50</a></div></div>
796
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a8e70de9eefe2e188b10e214e073750e6"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a8e70de9eefe2e188b10e214e073750e6">SVF::LLVMModuleSet::LLVMModuleSet</a></div><div class="ttdeci">LLVMModuleSet()</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00064">LLVMModule.h:64</a></div></div>
794
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00070">70</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
795
+ <div class="fragment"><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; {</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a> == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a8e70de9eefe2e188b10e214e073750e6">LLVMModuleSet</a>();</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ac59b07cafcbacc950eefea4082425b63"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">SVF::LLVMModuleSet::llvmModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * llvmModuleSet</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
796
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a8e70de9eefe2e188b10e214e073750e6"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a8e70de9eefe2e188b10e214e073750e6">SVF::LLVMModuleSet::LLVMModuleSet</a></div><div class="ttdeci">LLVMModuleSet()</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00065">LLVMModule.h:65</a></div></div>
797
797
  </div><!-- fragment -->
798
798
  </div>
799
799
  </div>
@@ -820,8 +820,8 @@ Static Private Attributes</h2></td></tr>
820
820
  </table>
821
821
  </div><div class="memdoc">
822
822
 
823
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00194">194</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
824
- <div class="fragment"><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; {</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">getModule</a>(0);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a8afb7ab3ee4632e78d546e549110e74c"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">SVF::LLVMModuleSet::getModule</a></div><div class="ttdeci">Module * getModule(u32_t idx) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00099">LLVMModule.h:99</a></div></div>
823
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00195">195</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
824
+ <div class="fragment"><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; {</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">getModule</a>(0);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a8afb7ab3ee4632e78d546e549110e74c"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">SVF::LLVMModuleSet::getModule</a></div><div class="ttdeci">Module * getModule(u32_t idx) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00100">LLVMModule.h:100</a></div></div>
825
825
  </div><!-- fragment -->
826
826
  </div>
827
827
  </div>
@@ -849,8 +849,8 @@ Static Private Attributes</h2></td></tr>
849
849
  </table>
850
850
  </div><div class="memdoc">
851
851
 
852
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00099">99</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
853
- <div class="fragment"><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> &amp;<a class="code" href="classSVF_1_1LLVMModuleSet.html#ad647d73d2e1bda61348eff658e32f481">getModuleRef</a>(idx);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ad647d73d2e1bda61348eff658e32f481"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ad647d73d2e1bda61348eff658e32f481">SVF::LLVMModuleSet::getModuleRef</a></div><div class="ttdeci">Module &amp; getModuleRef(u32_t idx) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00104">LLVMModule.h:104</a></div></div>
852
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00100">100</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
853
+ <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; <span class="keywordflow">return</span> &amp;<a class="code" href="classSVF_1_1LLVMModuleSet.html#ad647d73d2e1bda61348eff658e32f481">getModuleRef</a>(idx);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ad647d73d2e1bda61348eff658e32f481"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ad647d73d2e1bda61348eff658e32f481">SVF::LLVMModuleSet::getModuleRef</a></div><div class="ttdeci">Module &amp; getModuleRef(u32_t idx) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00105">LLVMModule.h:105</a></div></div>
854
854
  </div><!-- fragment -->
855
855
  </div>
856
856
  </div>
@@ -877,8 +877,8 @@ Static Private Attributes</h2></td></tr>
877
877
  </table>
878
878
  </div><div class="memdoc">
879
879
 
880
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00094">94</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
881
- <div class="fragment"><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; {</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">modules</a>.size();</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00054">LLVMModule.h:54</a></div></div>
880
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00095">95</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
881
+ <div class="fragment"><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">modules</a>.size();</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00055">LLVMModule.h:55</a></div></div>
882
882
  </div><!-- fragment -->
883
883
  </div>
884
884
  </div>
@@ -906,10 +906,10 @@ Static Private Attributes</h2></td></tr>
906
906
  </table>
907
907
  </div><div class="memdoc">
908
908
 
909
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00104">104</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
910
- <div class="fragment"><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; {</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(idx &lt; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>() &amp;&amp; <span class="stringliteral">&quot;Out of range.&quot;</span>);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">modules</a>[idx];</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; }</div><div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
911
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae265a7f3cc7367d62013e0f15cf3d233"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">SVF::LLVMModuleSet::getModuleNum</a></div><div class="ttdeci">u32_t getModuleNum() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00094">LLVMModule.h:94</a></div></div>
912
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00054">LLVMModule.h:54</a></div></div>
909
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00105">105</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
910
+ <div class="fragment"><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; {</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(idx &lt; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>() &amp;&amp; <span class="stringliteral">&quot;Out of range.&quot;</span>);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">modules</a>[idx];</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div><div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
911
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae265a7f3cc7367d62013e0f15cf3d233"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">SVF::LLVMModuleSet::getModuleNum</a></div><div class="ttdeci">u32_t getModuleNum() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00095">LLVMModule.h:95</a></div></div>
912
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00055">LLVMModule.h:55</a></div></div>
913
913
  </div><!-- fragment -->
914
914
  </div>
915
915
  </div>
@@ -937,8 +937,8 @@ Static Private Attributes</h2></td></tr>
937
937
  </table>
938
938
  </div><div class="memdoc">
939
939
 
940
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00113">113</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
941
- <div class="fragment"><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; {</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(fun);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
940
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00114">114</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
941
+ <div class="fragment"><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; {</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(fun);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
942
942
  <div class="ttc" id="classSVF_1_1SVFModule_html_af969d7739f27c8242985656bafbabaeb"><div class="ttname"><a href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">SVF::SVFModule::getSVFFunction</a></div><div class="ttdeci">const SVFFunction * getSVFFunction(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00121">SVFModule.h:121</a></div></div>
943
943
  </div><!-- fragment -->
944
944
  </div>
@@ -966,9 +966,9 @@ Static Private Attributes</h2></td></tr>
966
966
  </table>
967
967
  </div><div class="memdoc">
968
968
 
969
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00086">86</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
970
- <div class="fragment"><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; {</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a> &amp;&amp; <span class="stringliteral">&quot;svfModule has not been built yet!&quot;</span>);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; }</div><div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
971
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
969
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00087">87</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
970
+ <div class="fragment"><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; {</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a> &amp;&amp; <span class="stringliteral">&quot;svfModule has not been built yet!&quot;</span>);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; }</div><div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
971
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
972
972
  </div><!-- fragment -->
973
973
  </div>
974
974
  </div>
@@ -998,9 +998,9 @@ Static Private Attributes</h2></td></tr>
998
998
 
999
999
  <p>Fun def &ndash;&gt; decl. </p>
1000
1000
 
1001
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00145">145</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1002
- <div class="fragment"><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; {</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a74a7961552498d1a99e1da70b7f78620">hasDeclaration</a>(<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(fun));</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a74a7961552498d1a99e1da70b7f78620"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a74a7961552498d1a99e1da70b7f78620">SVF::LLVMModuleSet::hasDeclaration</a></div><div class="ttdeci">bool hasDeclaration(const Function *fun) const</div><div class="ttdoc">Fun def –&gt; decl. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00145">LLVMModule.h:145</a></div></div>
1003
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
1001
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00146">146</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1002
+ <div class="fragment"><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; {</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a74a7961552498d1a99e1da70b7f78620">hasDeclaration</a>(<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(fun));</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a74a7961552498d1a99e1da70b7f78620"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a74a7961552498d1a99e1da70b7f78620">SVF::LLVMModuleSet::hasDeclaration</a></div><div class="ttdeci">bool hasDeclaration(const Function *fun) const</div><div class="ttdoc">Fun def –&gt; decl. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00146">LLVMModule.h:146</a></div></div>
1003
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
1004
1004
  <div class="ttc" id="classSVF_1_1SVFModule_html_af969d7739f27c8242985656bafbabaeb"><div class="ttname"><a href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">SVF::SVFModule::getSVFFunction</a></div><div class="ttdeci">const SVFFunction * getSVFFunction(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00121">SVFModule.h:121</a></div></div>
1005
1005
  </div><!-- fragment -->
1006
1006
  </div>
@@ -1029,10 +1029,10 @@ Static Private Attributes</h2></td></tr>
1029
1029
  </table>
1030
1030
  </div><div class="memdoc">
1031
1031
 
1032
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00150">150</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1033
- <div class="fragment"><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; {</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">if</span>(fun-&gt;isDeclaration() &amp;&amp; !<a class="code" href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">hasDefinition</a>(fun))</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keyword">const</span> SVFFunction* funDef = fun;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">if</span>(fun-&gt;isDeclaration() &amp;&amp; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">hasDefinition</a>(fun))</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; funDef = <a class="code" href="classSVF_1_1LLVMModuleSet.html#abc83c5da519d2d05133106d92df8053e">getDefinition</a>(fun);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; FunDefToDeclsMapTy::const_iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">FunDefToDeclsMap</a>.find(funDef);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> it != <a class="code" href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">FunDefToDeclsMap</a>.end();</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a377cefaad4b688ab6edf94ba4abe00ee"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">SVF::LLVMModuleSet::FunDefToDeclsMap</a></div><div class="ttdeci">FunDefToDeclsMapTy FunDefToDeclsMap</div><div class="ttdoc">Function definition to function declaration map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00059">LLVMModule.h:59</a></div></div>
1034
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a32558da64f03452c502ec57d1e106427"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">SVF::LLVMModuleSet::hasDefinition</a></div><div class="ttdeci">bool hasDefinition(const Function *fun) const</div><div class="ttdoc">Fun decl –&gt; def. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00119">LLVMModule.h:119</a></div></div>
1035
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_abc83c5da519d2d05133106d92df8053e"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#abc83c5da519d2d05133106d92df8053e">SVF::LLVMModuleSet::getDefinition</a></div><div class="ttdeci">const SVFFunction * getDefinition(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00131">LLVMModule.h:131</a></div></div>
1032
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00151">151</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1033
+ <div class="fragment"><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; {</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">if</span>(fun-&gt;isDeclaration() &amp;&amp; !<a class="code" href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">hasDefinition</a>(fun))</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">const</span> SVFFunction* funDef = fun;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordflow">if</span>(fun-&gt;isDeclaration() &amp;&amp; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">hasDefinition</a>(fun))</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; funDef = <a class="code" href="classSVF_1_1LLVMModuleSet.html#abc83c5da519d2d05133106d92df8053e">getDefinition</a>(fun);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; FunDefToDeclsMapTy::const_iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">FunDefToDeclsMap</a>.find(funDef);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">return</span> it != <a class="code" href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">FunDefToDeclsMap</a>.end();</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a377cefaad4b688ab6edf94ba4abe00ee"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a377cefaad4b688ab6edf94ba4abe00ee">SVF::LLVMModuleSet::FunDefToDeclsMap</a></div><div class="ttdeci">FunDefToDeclsMapTy FunDefToDeclsMap</div><div class="ttdoc">Function definition to function declaration map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00060">LLVMModule.h:60</a></div></div>
1034
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a32558da64f03452c502ec57d1e106427"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">SVF::LLVMModuleSet::hasDefinition</a></div><div class="ttdeci">bool hasDefinition(const Function *fun) const</div><div class="ttdoc">Fun decl –&gt; def. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00120">LLVMModule.h:120</a></div></div>
1035
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_abc83c5da519d2d05133106d92df8053e"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#abc83c5da519d2d05133106d92df8053e">SVF::LLVMModuleSet::getDefinition</a></div><div class="ttdeci">const SVFFunction * getDefinition(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00132">LLVMModule.h:132</a></div></div>
1036
1036
  </div><!-- fragment -->
1037
1037
  </div>
1038
1038
  </div>
@@ -1062,9 +1062,9 @@ Static Private Attributes</h2></td></tr>
1062
1062
 
1063
1063
  <p>Fun decl &ndash;&gt; def. </p>
1064
1064
 
1065
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00119">119</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1066
- <div class="fragment"><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; {</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">hasDefinition</a>(<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(fun));</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a32558da64f03452c502ec57d1e106427"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">SVF::LLVMModuleSet::hasDefinition</a></div><div class="ttdeci">bool hasDefinition(const Function *fun) const</div><div class="ttdoc">Fun decl –&gt; def. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00119">LLVMModule.h:119</a></div></div>
1067
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
1065
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00120">120</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1066
+ <div class="fragment"><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; {</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">hasDefinition</a>(<a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">getSVFFunction</a>(fun));</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a32558da64f03452c502ec57d1e106427"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a32558da64f03452c502ec57d1e106427">SVF::LLVMModuleSet::hasDefinition</a></div><div class="ttdeci">bool hasDefinition(const Function *fun) const</div><div class="ttdoc">Fun decl –&gt; def. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00120">LLVMModule.h:120</a></div></div>
1067
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
1068
1068
  <div class="ttc" id="classSVF_1_1SVFModule_html_af969d7739f27c8242985656bafbabaeb"><div class="ttname"><a href="classSVF_1_1SVFModule.html#af969d7739f27c8242985656bafbabaeb">SVF::SVFModule::getSVFFunction</a></div><div class="ttdeci">const SVFFunction * getSVFFunction(const Function *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00121">SVFModule.h:121</a></div></div>
1069
1069
  </div><!-- fragment -->
1070
1070
  </div>
@@ -1093,8 +1093,8 @@ Static Private Attributes</h2></td></tr>
1093
1093
  </table>
1094
1094
  </div><div class="memdoc">
1095
1095
 
1096
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00124">124</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1097
- <div class="fragment"><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; {</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(fun-&gt;isDeclaration() &amp;&amp; <span class="stringliteral">&quot;not a function declaration?&quot;</span>);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; FunDeclToDefMapTy::const_iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">FunDeclToDefMap</a>.find(fun);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">return</span> it != <a class="code" href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">FunDeclToDefMap</a>.end();</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_aee80b29e5246e3eaa0e30e165346101f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">SVF::LLVMModuleSet::FunDeclToDefMap</a></div><div class="ttdeci">FunDeclToDefMapTy FunDeclToDefMap</div><div class="ttdoc">Function declaration to function definition map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00057">LLVMModule.h:57</a></div></div>
1096
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00125">125</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1097
+ <div class="fragment"><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; {</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(fun-&gt;isDeclaration() &amp;&amp; <span class="stringliteral">&quot;not a function declaration?&quot;</span>);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; FunDeclToDefMapTy::const_iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">FunDeclToDefMap</a>.find(fun);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> it != <a class="code" href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">FunDeclToDefMap</a>.end();</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_aee80b29e5246e3eaa0e30e165346101f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#aee80b29e5246e3eaa0e30e165346101f">SVF::LLVMModuleSet::FunDeclToDefMap</a></div><div class="ttdeci">FunDeclToDefMapTy FunDeclToDefMap</div><div class="ttdoc">Function declaration to function definition map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00058">LLVMModule.h:58</a></div></div>
1098
1098
  <div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
1099
1099
  </div><!-- fragment -->
1100
1100
  </div>
@@ -1125,8 +1125,8 @@ Static Private Attributes</h2></td></tr>
1125
1125
 
1126
1126
  <p>Global to rep. </p>
1127
1127
 
1128
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00180">180</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1129
- <div class="fragment"><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; {</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; GlobalDefToRepMapTy::const_iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">GlobalDefToRepMap</a>.find(val);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> it != <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">GlobalDefToRepMap</a>.end();</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae2a1fa0b908cf372c50af90e62c4bf2b"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">SVF::LLVMModuleSet::GlobalDefToRepMap</a></div><div class="ttdeci">GlobalDefToRepMapTy GlobalDefToRepMap</div><div class="ttdoc">Global definition to a rep definition map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00061">LLVMModule.h:61</a></div></div>
1128
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00181">181</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1129
+ <div class="fragment"><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; {</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; GlobalDefToRepMapTy::const_iterator it = <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">GlobalDefToRepMap</a>.find(val);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span> it != <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">GlobalDefToRepMap</a>.end();</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae2a1fa0b908cf372c50af90e62c4bf2b"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae2a1fa0b908cf372c50af90e62c4bf2b">SVF::LLVMModuleSet::GlobalDefToRepMap</a></div><div class="ttdeci">GlobalDefToRepMapTy GlobalDefToRepMap</div><div class="ttdoc">Global definition to a rep definition map. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00062">LLVMModule.h:62</a></div></div>
1130
1130
  </div><!-- fragment -->
1131
1131
  </div>
1132
1132
  </div>
@@ -1158,14 +1158,14 @@ Static Private Attributes</h2></td></tr>
1158
1158
 
1159
1159
  <p class="definition">Definition at line <a class="el" href="LLVMModule_8cpp_source.html#l00197">197</a> of file <a class="el" href="LLVMModule_8cpp_source.html">LLVMModule.cpp</a>.</p>
1160
1160
  <div class="fragment"><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;{</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a868fa5069b01b7a7dfbc5fb99cb76385">Options::SVFMain</a>)</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a8af6b911b728713f66f7c809d5c0fbf1">addSVFMain</a>();</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a>&amp; mod : <a class="code" href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">modules</a>)</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; {</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordflow">for</span> (Module::iterator it = mod.begin(), eit = mod.end();</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; it != eit; ++it)</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; {</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *func = &amp;*it;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#ae5512e574414dc259daaacaecf8cdf13">addFunctionSet</a>(func);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; }</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">for</span> (Module::global_iterator it = mod.global_begin(),</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; eit = mod.global_end(); it != eit; ++it)</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; {</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">GlobalVariable</a> *global = &amp;*it;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a9aabe6d24bea26f3b5c7cab5a0fc3053">addGlobalSet</a>(global);</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; }</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">for</span> (Module::alias_iterator it = mod.alias_begin(),</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; eit = mod.alias_end(); it != eit; ++it)</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; {</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <a class="code" href="namespaceSVF.html#a0fd33072b099f61eaa642e94ed0c03fc">GlobalAlias</a> *alias = &amp;*it;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">svfModule</a>-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a9b28f106dfedb917c6c757d5d0a6771e">addAliasSet</a>(alias);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; }</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; }</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFModule_html_a9b28f106dfedb917c6c757d5d0a6771e"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a9b28f106dfedb917c6c757d5d0a6771e">SVF::SVFModule::addAliasSet</a></div><div class="ttdeci">void addAliasSet(GlobalAlias *alias)</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00115">SVFModule.h:115</a></div></div>
1161
- <div class="ttc" id="namespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00081">BasicTypes.h:81</a></div></div>
1162
- <div class="ttc" id="namespaceSVF_html_a09f5fa3bc44bf53612a085e3a611cc4e"><div class="ttname"><a href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">SVF::GlobalVariable</a></div><div class="ttdeci">llvm::GlobalVariable GlobalVariable</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00080">BasicTypes.h:80</a></div></div>
1163
- <div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
1164
- <div class="ttc" id="namespaceSVF_html_a0fd33072b099f61eaa642e94ed0c03fc"><div class="ttname"><a href="namespaceSVF.html#a0fd33072b099f61eaa642e94ed0c03fc">SVF::GlobalAlias</a></div><div class="ttdeci">llvm::GlobalAlias GlobalAlias</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00116">BasicTypes.h:116</a></div></div>
1161
+ <div class="ttc" id="namespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
1162
+ <div class="ttc" id="namespaceSVF_html_a09f5fa3bc44bf53612a085e3a611cc4e"><div class="ttname"><a href="namespaceSVF.html#a09f5fa3bc44bf53612a085e3a611cc4e">SVF::GlobalVariable</a></div><div class="ttdeci">llvm::GlobalVariable GlobalVariable</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00078">BasicTypes.h:78</a></div></div>
1163
+ <div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00071">BasicTypes.h:71</a></div></div>
1164
+ <div class="ttc" id="namespaceSVF_html_a0fd33072b099f61eaa642e94ed0c03fc"><div class="ttname"><a href="namespaceSVF.html#a0fd33072b099f61eaa642e94ed0c03fc">SVF::GlobalAlias</a></div><div class="ttdeci">llvm::GlobalAlias GlobalAlias</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00112">BasicTypes.h:112</a></div></div>
1165
1165
  <div class="ttc" id="classSVF_1_1Options_html_a868fa5069b01b7a7dfbc5fb99cb76385"><div class="ttname"><a href="classSVF_1_1Options.html#a868fa5069b01b7a7dfbc5fb99cb76385">SVF::Options::SVFMain</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; SVFMain</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00209">Options.h:209</a></div></div>
1166
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
1166
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a43832e93a42ae43d44b0cc160981678f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a43832e93a42ae43d44b0cc160981678f">SVF::LLVMModuleSet::svfModule</a></div><div class="ttdeci">SVFModule * svfModule</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
1167
1167
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a8af6b911b728713f66f7c809d5c0fbf1"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a8af6b911b728713f66f7c809d5c0fbf1">SVF::LLVMModuleSet::addSVFMain</a></div><div class="ttdeci">void addSVFMain()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00230">LLVMModule.cpp:230</a></div></div>
1168
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00054">LLVMModule.h:54</a></div></div>
1168
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00055">LLVMModule.h:55</a></div></div>
1169
1169
  <div class="ttc" id="classSVF_1_1SVFModule_html_ae5512e574414dc259daaacaecf8cdf13"><div class="ttname"><a href="classSVF_1_1SVFModule.html#ae5512e574414dc259daaacaecf8cdf13">SVF::SVFModule::addFunctionSet</a></div><div class="ttdeci">void addFunctionSet(Function *fun)</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00104">SVFModule.h:104</a></div></div>
1170
1170
  <div class="ttc" id="classSVF_1_1SVFModule_html_a9aabe6d24bea26f3b5c7cab5a0fc3053"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a9aabe6d24bea26f3b5c7cab5a0fc3053">SVF::SVFModule::addGlobalSet</a></div><div class="ttdeci">void addGlobalSet(GlobalVariable *glob)</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00111">SVFModule.h:111</a></div></div>
1171
1171
  </div><!-- fragment -->
@@ -1198,14 +1198,14 @@ Static Private Attributes</h2></td></tr>
1198
1198
  <p class="definition">Definition at line <a class="el" href="LLVMModule_8cpp_source.html#l00148">148</a> of file <a class="el" href="LLVMModule_8cpp_source.html">LLVMModule.cpp</a>.</p>
1199
1199
  <div class="fragment"><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;{</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="comment">// We read SVFIR from LLVM IR</span></div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#aa5c4bc8e55a056adcd7a6f8946ad5f38">Options::Graphtxt</a>.getValue().<a class="code" href="classSVF_1_1LLVMModuleSet.html#ae19e38054c55d5822dfc83a12f12aa60">empty</a>())</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; {</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">if</span>(moduleNameVec.empty())</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; {</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;no LLVM bc file is found!\n&quot;</span>;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="util_8h.html#a43b6ea6be735bb828bc062c70cadeff8">exit</a>(0);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; }</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="comment">//assert(!moduleNameVec.empty() &amp;&amp; &quot;no LLVM bc file is found!&quot;);</span></div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; }</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="comment">// We read SVFIR from a user-defined txt instead of parsing SVFIR from LLVM IR</span></div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="classSVF_1_1SVFModule.html#ac630e9f18a239ac6b3b88d05e64140c5">SVFModule::setPagFromTXT</a>(<a class="code" href="classSVF_1_1Options.html#aa5c4bc8e55a056adcd7a6f8946ad5f38">Options::Graphtxt</a>.getValue());</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="comment">//</span></div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="comment">// To avoid the following type bugs (t1 != t3) when parsing multiple modules,</span></div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="comment">// We should use only one LLVMContext object for multiple modules in the same thread.</span></div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="comment">// No such problem if only one module is processed by SVF.</span></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="comment">// ------------------------------------------------------------------</span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="comment">// LLVMContext ctxa,ctxb;</span></div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="comment">// IntegerType * t1 = IntegerType::get(ctxa,32);</span></div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="comment">// IntegerType * t2 = IntegerType::get(ctxa,32);</span></div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="comment">// assert(t1 == t2);</span></div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="comment">// IntegerType * t3 = IntegerType::get(ctxb,32);</span></div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="comment">// IntegerType * t4 = IntegerType::get(ctxb,32);</span></div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="comment">// assert(t3 == t4);</span></div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="comment">// assert(t1 != t3);</span></div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="comment">// ------------------------------------------------------------------</span></div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="comment">//</span></div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ad06a92bf8bc556de742e0ffdf79ffafe">cxts</a> = std::make_unique&lt;LLVMContext&gt;();</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> std::string&amp; moduleName : moduleNameVec)</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; {</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <a class="code" href="SVF-FE_2BasicTypes_8h.html#a312d4d865f87a9bff58ce66b087c13d0">SMDiagnostic</a> Err;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; std::unique_ptr&lt;Module&gt; mod = parseIRFile(moduleName, Err, *<a class="code" href="classSVF_1_1LLVMModuleSet.html#ad06a92bf8bc556de742e0ffdf79ffafe">cxts</a>);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">if</span> (mod == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; {</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#ab65033f068bfbeb0a1c52dcec3beb6bc">SVFUtil::errs</a>() &lt;&lt; <span class="stringliteral">&quot;load module: &quot;</span> &lt;&lt; moduleName &lt;&lt; <span class="stringliteral">&quot;failed!!\n\n&quot;</span>;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; Err.print(<span class="stringliteral">&quot;SVFModuleLoader&quot;</span>, <a class="code" href="namespaceSVF_1_1SVFUtil.html#ab65033f068bfbeb0a1c52dcec3beb6bc">llvm::errs</a>());</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="util_8h.html#a23c00958edf66c39625a0d535dee57b7">abort</a>();</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; }</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">modules</a>.emplace_back(*mod);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ae365189769640adb919a23c36978e5e2">owned_modules</a>.emplace_back(std::move(mod));</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; }</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;}</div><div class="ttc" id="classSVF_1_1Options_html_aa5c4bc8e55a056adcd7a6f8946ad5f38"><div class="ttname"><a href="classSVF_1_1Options.html#aa5c4bc8e55a056adcd7a6f8946ad5f38">SVF::Options::Graphtxt</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std::string &gt; Graphtxt</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00208">Options.h:208</a></div></div>
1200
1200
  <div class="ttc" id="util_8h_html_a43b6ea6be735bb828bc062c70cadeff8"><div class="ttname"><a href="util_8h.html#a43b6ea6be735bb828bc062c70cadeff8">exit</a></div><div class="ttdeci">VOID_OR_INT exit()</div></div>
1201
- <div class="ttc" id="SVF-FE_2BasicTypes_8h_html_a312d4d865f87a9bff58ce66b087c13d0"><div class="ttname"><a href="SVF-FE_2BasicTypes_8h.html#a312d4d865f87a9bff58ce66b087c13d0">SMDiagnostic</a></div><div class="ttdeci">llvm::SMDiagnostic SMDiagnostic</div><div class="ttdef"><b>Definition:</b> <a href="SVF-FE_2BasicTypes_8h_source.html#l00013">BasicTypes.h:13</a></div></div>
1201
+ <div class="ttc" id="SVF-FE_2BasicTypes_8h_html_a312d4d865f87a9bff58ce66b087c13d0"><div class="ttname"><a href="SVF-FE_2BasicTypes_8h.html#a312d4d865f87a9bff58ce66b087c13d0">SMDiagnostic</a></div><div class="ttdeci">llvm::SMDiagnostic SMDiagnostic</div><div class="ttdef"><b>Definition:</b> <a href="SVF-FE_2BasicTypes_8h_source.html#l00017">BasicTypes.h:17</a></div></div>
1202
1202
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_ab65033f068bfbeb0a1c52dcec3beb6bc"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#ab65033f068bfbeb0a1c52dcec3beb6bc">SVF::SVFUtil::errs</a></div><div class="ttdeci">std::ostream &amp; errs()</div><div class="ttdoc">Overwrite llvm::errs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00055">SVFUtil.h:55</a></div></div>
1203
1203
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
1204
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ad06a92bf8bc556de742e0ffdf79ffafe"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ad06a92bf8bc556de742e0ffdf79ffafe">SVF::LLVMModuleSet::cxts</a></div><div class="ttdeci">std::unique_ptr&lt; LLVMContext &gt; cxts</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00052">LLVMModule.h:52</a></div></div>
1204
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ad06a92bf8bc556de742e0ffdf79ffafe"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ad06a92bf8bc556de742e0ffdf79ffafe">SVF::LLVMModuleSet::cxts</a></div><div class="ttdeci">std::unique_ptr&lt; LLVMContext &gt; cxts</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00053">LLVMModule.h:53</a></div></div>
1205
1205
  <div class="ttc" id="util_8h_html_a23c00958edf66c39625a0d535dee57b7"><div class="ttname"><a href="util_8h.html#a23c00958edf66c39625a0d535dee57b7">abort</a></div><div class="ttdeci">VOID_OR_INT abort()</div></div>
1206
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00054">LLVMModule.h:54</a></div></div>
1207
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae365189769640adb919a23c36978e5e2"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae365189769640adb919a23c36978e5e2">SVF::LLVMModuleSet::owned_modules</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Module &gt; &gt; owned_modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00053">LLVMModule.h:53</a></div></div>
1208
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae19e38054c55d5822dfc83a12f12aa60"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae19e38054c55d5822dfc83a12f12aa60">SVF::LLVMModuleSet::empty</a></div><div class="ttdeci">bool empty() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00205">LLVMModule.h:205</a></div></div>
1206
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acde6292e719c80f93d3d1c344ab442cd"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acde6292e719c80f93d3d1c344ab442cd">SVF::LLVMModuleSet::modules</a></div><div class="ttdeci">std::vector&lt; std::reference_wrapper&lt; Module &gt; &gt; modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00055">LLVMModule.h:55</a></div></div>
1207
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae365189769640adb919a23c36978e5e2"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae365189769640adb919a23c36978e5e2">SVF::LLVMModuleSet::owned_modules</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Module &gt; &gt; owned_modules</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00054">LLVMModule.h:54</a></div></div>
1208
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae19e38054c55d5822dfc83a12f12aa60"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae19e38054c55d5822dfc83a12f12aa60">SVF::LLVMModuleSet::empty</a></div><div class="ttdeci">bool empty() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00206">LLVMModule.h:206</a></div></div>
1209
1209
  <div class="ttc" id="classSVF_1_1SVFModule_html_ac630e9f18a239ac6b3b88d05e64140c5"><div class="ttname"><a href="classSVF_1_1SVFModule.html#ac630e9f18a239ac6b3b88d05e64140c5">SVF::SVFModule::setPagFromTXT</a></div><div class="ttdeci">static void setPagFromTXT(std::string txt)</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00083">SVFModule.h:83</a></div></div>
1210
1210
  </div><!-- fragment -->
1211
1211
  </div>
@@ -1239,12 +1239,12 @@ Static Private Attributes</h2></td></tr>
1239
1239
  <p><a class="el" href="classSVF_1_1MergeFunctionRets.html">MergeFunctionRets</a> Pass </p>
1240
1240
 
1241
1241
  <p class="definition">Definition at line <a class="el" href="LLVMModule_8cpp_source.html#l00121">121</a> of file <a class="el" href="LLVMModule_8cpp_source.html">LLVMModule.cpp</a>.</p>
1242
- <div class="fragment"><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;{</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; std::unique_ptr&lt;BreakConstantGEPs&gt; p1 = std::make_unique&lt;BreakConstantGEPs&gt;();</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i &lt; <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>(); ++i)</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; {</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a> *module = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">getModule</a>(i);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; p1-&gt;runOnModule(*module);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; std::unique_ptr&lt;UnifyFunctionExitNodes&gt; p2 =</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; std::make_unique&lt;UnifyFunctionExitNodes&gt;();</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i &lt; <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>(); ++i)</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a> *module = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">getModule</a>(i);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> F = module-&gt;begin(), E = module-&gt;end(); F != E; ++F)</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; {</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> &amp;fun = *F;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">if</span> (fun.isDeclaration())</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; p2-&gt;runOnFunction(fun);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; }</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; }</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00081">BasicTypes.h:81</a></div></div>
1243
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae265a7f3cc7367d62013e0f15cf3d233"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">SVF::LLVMModuleSet::getModuleNum</a></div><div class="ttdeci">u32_t getModuleNum() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00094">LLVMModule.h:94</a></div></div>
1244
- <div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00085">SVFBasicTypes.h:85</a></div></div>
1245
- <div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
1246
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a8afb7ab3ee4632e78d546e549110e74c"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">SVF::LLVMModuleSet::getModule</a></div><div class="ttdeci">Module * getModule(u32_t idx) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00099">LLVMModule.h:99</a></div></div>
1247
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acf40310917909e4234282c0695a43160"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">SVF::LLVMModuleSet::getLLVMModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * getLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00069">LLVMModule.h:69</a></div></div>
1242
+ <div class="fragment"><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;{</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; std::unique_ptr&lt;BreakConstantGEPs&gt; p1 = std::make_unique&lt;BreakConstantGEPs&gt;();</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i &lt; <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>(); ++i)</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; {</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a> *module = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">getModule</a>(i);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; p1-&gt;runOnModule(*module);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; std::unique_ptr&lt;UnifyFunctionExitNodes&gt; p2 =</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; std::make_unique&lt;UnifyFunctionExitNodes&gt;();</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i &lt; <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">getModuleNum</a>(); ++i)</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a> *module = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-&gt;<a class="code" href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">getModule</a>(i);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> F = module-&gt;begin(), E = module-&gt;end(); F != E; ++F)</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; {</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> &amp;fun = *F;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">if</span> (fun.isDeclaration())</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; p2-&gt;runOnFunction(fun);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; }</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; }</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
1243
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae265a7f3cc7367d62013e0f15cf3d233"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae265a7f3cc7367d62013e0f15cf3d233">SVF::LLVMModuleSet::getModuleNum</a></div><div class="ttdeci">u32_t getModuleNum() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00095">LLVMModule.h:95</a></div></div>
1244
+ <div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00084">SVFBasicTypes.h:84</a></div></div>
1245
+ <div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00071">BasicTypes.h:71</a></div></div>
1246
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a8afb7ab3ee4632e78d546e549110e74c"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a8afb7ab3ee4632e78d546e549110e74c">SVF::LLVMModuleSet::getModule</a></div><div class="ttdeci">Module * getModule(u32_t idx) const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00100">LLVMModule.h:100</a></div></div>
1247
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acf40310917909e4234282c0695a43160"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">SVF::LLVMModuleSet::getLLVMModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * getLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00070">LLVMModule.h:70</a></div></div>
1248
1248
  </div><!-- fragment -->
1249
1249
  </div>
1250
1250
  </div>
@@ -1265,11 +1265,11 @@ Static Private Attributes</h2></td></tr>
1265
1265
  </div><div class="memdoc">
1266
1266
 
1267
1267
  <p class="definition">Definition at line <a class="el" href="LLVMModule_8cpp_source.html#l00087">87</a> of file <a class="el" href="LLVMModule_8cpp_source.html">LLVMModule.cpp</a>.</p>
1268
- <div class="fragment"><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;{</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a298966366b02d0a34f409c2c77da3789">loadModules</a>(moduleNameVec);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a8b5f24c873db1f6a0614d1dac48bb4bb">prePassSchedule</a>();</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; std::string preProcessSuffix = <span class="stringliteral">&quot;.pre.bc&quot;</span>;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="comment">// Get the existing module names, remove old extention, add preProcessSuffix</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i &lt; moduleNameVec.size(); i++)</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; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> lastIndex = moduleNameVec[i].find_last_of(<span class="stringliteral">&quot;.&quot;</span>);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; std::string rawName = moduleNameVec[i].substr(0, lastIndex);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; moduleNameVec[i] = (rawName + preProcessSuffix);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; }</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ad5ef9421d501b2747d4fb31d4189b53f">dumpModulesToFile</a>(preProcessSuffix);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a14b0b55d397d6f8a5dfe3b574021f801">preProcessed</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a2f8e91c075d90be66412a079fe73e936">releaseLLVMModuleSet</a>();</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00085">SVFBasicTypes.h:85</a></div></div>
1269
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a2f8e91c075d90be66412a079fe73e936"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a2f8e91c075d90be66412a079fe73e936">SVF::LLVMModuleSet::releaseLLVMModuleSet</a></div><div class="ttdeci">static void releaseLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00076">LLVMModule.h:76</a></div></div>
1268
+ <div class="fragment"><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;{</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a298966366b02d0a34f409c2c77da3789">loadModules</a>(moduleNameVec);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a8b5f24c873db1f6a0614d1dac48bb4bb">prePassSchedule</a>();</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; std::string preProcessSuffix = <span class="stringliteral">&quot;.pre.bc&quot;</span>;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="comment">// Get the existing module names, remove old extention, add preProcessSuffix</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i &lt; moduleNameVec.size(); i++)</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; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> lastIndex = moduleNameVec[i].find_last_of(<span class="stringliteral">&quot;.&quot;</span>);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; std::string rawName = moduleNameVec[i].substr(0, lastIndex);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; moduleNameVec[i] = (rawName + preProcessSuffix);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; }</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ad5ef9421d501b2747d4fb31d4189b53f">dumpModulesToFile</a>(preProcessSuffix);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a14b0b55d397d6f8a5dfe3b574021f801">preProcessed</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#a2f8e91c075d90be66412a079fe73e936">releaseLLVMModuleSet</a>();</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00084">SVFBasicTypes.h:84</a></div></div>
1269
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a2f8e91c075d90be66412a079fe73e936"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a2f8e91c075d90be66412a079fe73e936">SVF::LLVMModuleSet::releaseLLVMModuleSet</a></div><div class="ttdeci">static void releaseLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00077">LLVMModule.h:77</a></div></div>
1270
1270
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ad5ef9421d501b2747d4fb31d4189b53f"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ad5ef9421d501b2747d4fb31d4189b53f">SVF::LLVMModuleSet::dumpModulesToFile</a></div><div class="ttdeci">void dumpModulesToFile(const std::string suffix)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00459">LLVMModule.cpp:459</a></div></div>
1271
1271
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a298966366b02d0a34f409c2c77da3789"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a298966366b02d0a34f409c2c77da3789">SVF::LLVMModuleSet::loadModules</a></div><div class="ttdeci">void loadModules(const std::vector&lt; std::string &gt; &amp;moduleNameVec)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00148">LLVMModule.cpp:148</a></div></div>
1272
- <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a14b0b55d397d6f8a5dfe3b574021f801"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a14b0b55d397d6f8a5dfe3b574021f801">SVF::LLVMModuleSet::preProcessed</a></div><div class="ttdeci">bool preProcessed</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00242">LLVMModule.h:242</a></div></div>
1272
+ <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a14b0b55d397d6f8a5dfe3b574021f801"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a14b0b55d397d6f8a5dfe3b574021f801">SVF::LLVMModuleSet::preProcessed</a></div><div class="ttdeci">bool preProcessed</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00243">LLVMModule.h:243</a></div></div>
1273
1273
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a8b5f24c873db1f6a0614d1dac48bb4bb"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a8b5f24c873db1f6a0614d1dac48bb4bb">SVF::LLVMModuleSet::prePassSchedule</a></div><div class="ttdeci">void prePassSchedule()</div><div class="ttdoc">Invoke llvm passes to modify module. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00121">LLVMModule.cpp:121</a></div></div>
1274
1274
  </div><!-- fragment -->
1275
1275
  </div>
@@ -1297,8 +1297,8 @@ Static Private Attributes</h2></td></tr>
1297
1297
  </table>
1298
1298
  </div><div class="memdoc">
1299
1299
 
1300
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00076">76</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1301
- <div class="fragment"><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; {</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a>)</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">delete</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a> = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ac59b07cafcbacc950eefea4082425b63"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">SVF::LLVMModuleSet::llvmModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * llvmModuleSet</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00050">LLVMModule.h:50</a></div></div>
1300
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00077">77</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1301
+ <div class="fragment"><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; {</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a>)</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">delete</span> <a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a>;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">llvmModuleSet</a> = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }</div><div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ac59b07cafcbacc950eefea4082425b63"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ac59b07cafcbacc950eefea4082425b63">SVF::LLVMModuleSet::llvmModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * llvmModuleSet</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00051">LLVMModule.h:51</a></div></div>
1302
1302
  </div><!-- fragment -->
1303
1303
  </div>
1304
1304
  </div>
@@ -1313,7 +1313,7 @@ Static Private Attributes</h2></td></tr>
1313
1313
  <td class="mlabels-left">
1314
1314
  <table class="memname">
1315
1315
  <tr>
1316
- <td class="memname">std::unique_ptr&lt;<a class="el" href="namespaceSVF.html#affba423b674a0aba723e33101826e297">LLVMContext</a>&gt; SVF::LLVMModuleSet::cxts</td>
1316
+ <td class="memname">std::unique_ptr&lt;<a class="el" href="SVF-FE_2BasicTypes_8h.html#a9f19a521d06397d1b6dc52c0388513d9">LLVMContext</a>&gt; SVF::LLVMModuleSet::cxts</td>
1317
1317
  </tr>
1318
1318
  </table>
1319
1319
  </td>
@@ -1323,7 +1323,7 @@ Static Private Attributes</h2></td></tr>
1323
1323
  </table>
1324
1324
  </div><div class="memdoc">
1325
1325
 
1326
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00052">52</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1326
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00053">53</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1327
1327
 
1328
1328
  </div>
1329
1329
  </div>
@@ -1349,7 +1349,7 @@ Static Private Attributes</h2></td></tr>
1349
1349
 
1350
1350
  <p>Function declaration to function definition map. </p>
1351
1351
 
1352
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00057">57</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1352
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00058">58</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1353
1353
 
1354
1354
  </div>
1355
1355
  </div>
@@ -1375,7 +1375,7 @@ Static Private Attributes</h2></td></tr>
1375
1375
 
1376
1376
  <p>Function definition to function declaration map. </p>
1377
1377
 
1378
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00059">59</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1378
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00060">60</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1379
1379
 
1380
1380
  </div>
1381
1381
  </div>
@@ -1401,7 +1401,7 @@ Static Private Attributes</h2></td></tr>
1401
1401
 
1402
1402
  <p>Global definition to a rep definition map. </p>
1403
1403
 
1404
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00061">61</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1404
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00062">62</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1405
1405
 
1406
1406
  </div>
1407
1407
  </div>
@@ -1425,7 +1425,7 @@ Static Private Attributes</h2></td></tr>
1425
1425
  </table>
1426
1426
  </div><div class="memdoc">
1427
1427
 
1428
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00050">50</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1428
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00051">51</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1429
1429
 
1430
1430
  </div>
1431
1431
  </div>
@@ -1449,7 +1449,7 @@ Static Private Attributes</h2></td></tr>
1449
1449
  </table>
1450
1450
  </div><div class="memdoc">
1451
1451
 
1452
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00054">54</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1452
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00055">55</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1453
1453
 
1454
1454
  </div>
1455
1455
  </div>
@@ -1473,7 +1473,7 @@ Static Private Attributes</h2></td></tr>
1473
1473
  </table>
1474
1474
  </div><div class="memdoc">
1475
1475
 
1476
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00053">53</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1476
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00054">54</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1477
1477
 
1478
1478
  </div>
1479
1479
  </div>
@@ -1497,7 +1497,7 @@ Static Private Attributes</h2></td></tr>
1497
1497
  </table>
1498
1498
  </div><div class="memdoc">
1499
1499
 
1500
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00242">242</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1500
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00243">243</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1501
1501
 
1502
1502
  </div>
1503
1503
  </div>
@@ -1521,7 +1521,7 @@ Static Private Attributes</h2></td></tr>
1521
1521
  </table>
1522
1522
  </div><div class="memdoc">
1523
1523
 
1524
- <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00051">51</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1524
+ <p class="definition">Definition at line <a class="el" href="LLVMModule_8h_source.html#l00052">52</a> of file <a class="el" href="LLVMModule_8h_source.html">LLVMModule.h</a>.</p>
1525
1525
 
1526
1526
  </div>
1527
1527
  </div>