svf-tools 1.0.849 → 1.0.850

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 (284) hide show
  1. package/SVF-doxygen/html/IntervalExeState_8cpp_source.html +293 -217
  2. package/SVF-doxygen/html/IntervalExeState_8h.html +2 -0
  3. package/SVF-doxygen/html/IntervalExeState_8h_source.html +622 -435
  4. package/SVF-doxygen/html/RelationSolver_8cpp_source.html +60 -60
  5. package/SVF-doxygen/html/RelationSolver_8h_source.html +16 -16
  6. package/SVF-doxygen/html/SVFIR2ItvExeState_8cpp_source.html +10 -10
  7. package/SVF-doxygen/html/SVFIR2ItvExeState_8h_source.html +8 -8
  8. package/SVF-doxygen/html/annotated.html +215 -214
  9. package/SVF-doxygen/html/classSVF_1_1ExeState.html +9 -8
  10. package/SVF-doxygen/html/classSVF_1_1ExeState.png +0 -0
  11. package/SVF-doxygen/html/classSVF_1_1IntervalESBase-members.html +168 -0
  12. package/SVF-doxygen/html/classSVF_1_1IntervalESBase.html +2331 -0
  13. package/SVF-doxygen/html/classSVF_1_1IntervalESBase.png +0 -0
  14. package/SVF-doxygen/html/classSVF_1_1IntervalExeState-members.html +79 -62
  15. package/SVF-doxygen/html/classSVF_1_1IntervalExeState.html +497 -1381
  16. package/SVF-doxygen/html/classSVF_1_1IntervalExeState.png +0 -0
  17. package/SVF-doxygen/html/classSVF_1_1RelationSolver-members.html +8 -8
  18. package/SVF-doxygen/html/classSVF_1_1RelationSolver.html +100 -100
  19. package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState.html +29 -29
  20. package/SVF-doxygen/html/classes.html +232 -231
  21. package/SVF-doxygen/html/functions.html +2 -2
  22. package/SVF-doxygen/html/functions_a.html +1 -1
  23. package/SVF-doxygen/html/functions_b.html +4 -4
  24. package/SVF-doxygen/html/functions_c.html +2 -2
  25. package/SVF-doxygen/html/functions_e.html +4 -3
  26. package/SVF-doxygen/html/functions_f.html +3 -3
  27. package/SVF-doxygen/html/functions_func.html +1 -1
  28. package/SVF-doxygen/html/functions_func_b.html +4 -4
  29. package/SVF-doxygen/html/functions_func_c.html +2 -2
  30. package/SVF-doxygen/html/functions_func_e.html +3 -2
  31. package/SVF-doxygen/html/functions_func_g.html +27 -24
  32. package/SVF-doxygen/html/functions_func_h.html +4 -3
  33. package/SVF-doxygen/html/functions_func_i.html +16 -9
  34. package/SVF-doxygen/html/functions_func_j.html +1 -0
  35. package/SVF-doxygen/html/functions_func_l.html +6 -4
  36. package/SVF-doxygen/html/functions_func_m.html +1 -0
  37. package/SVF-doxygen/html/functions_func_n.html +6 -4
  38. package/SVF-doxygen/html/functions_func_o.html +17 -11
  39. package/SVF-doxygen/html/functions_func_p.html +3 -3
  40. package/SVF-doxygen/html/functions_func_r.html +1 -1
  41. package/SVF-doxygen/html/functions_func_s.html +2 -2
  42. package/SVF-doxygen/html/functions_func_t.html +2 -2
  43. package/SVF-doxygen/html/functions_func_w.html +4 -2
  44. package/SVF-doxygen/html/functions_func_~.html +3 -0
  45. package/SVF-doxygen/html/functions_g.html +24 -21
  46. package/SVF-doxygen/html/functions_h.html +6 -5
  47. package/SVF-doxygen/html/functions_i.html +21 -14
  48. package/SVF-doxygen/html/functions_j.html +1 -0
  49. package/SVF-doxygen/html/functions_l.html +10 -8
  50. package/SVF-doxygen/html/functions_m.html +1 -0
  51. package/SVF-doxygen/html/functions_n.html +5 -3
  52. package/SVF-doxygen/html/functions_o.html +18 -12
  53. package/SVF-doxygen/html/functions_p.html +17 -13
  54. package/SVF-doxygen/html/functions_r.html +7 -8
  55. package/SVF-doxygen/html/functions_rela_r.html +2 -1
  56. package/SVF-doxygen/html/functions_rela_s.html +1 -0
  57. package/SVF-doxygen/html/functions_s.html +15 -14
  58. package/SVF-doxygen/html/functions_t.html +5 -5
  59. package/SVF-doxygen/html/functions_type_l.html +1 -1
  60. package/SVF-doxygen/html/functions_type_v.html +1 -1
  61. package/SVF-doxygen/html/functions_v.html +7 -5
  62. package/SVF-doxygen/html/functions_vars.html +2 -2
  63. package/SVF-doxygen/html/functions_w.html +13 -9
  64. package/SVF-doxygen/html/functions_~.html +3 -0
  65. package/SVF-doxygen/html/hierarchy.html +2 -1
  66. package/SVF-doxygen/html/namespaceSVF.html +2 -0
  67. package/SVF-doxygen/html/search/all_0.js +2 -2
  68. package/SVF-doxygen/html/search/all_1.js +1 -1
  69. package/SVF-doxygen/html/search/all_10.js +325 -325
  70. package/SVF-doxygen/html/search/all_11.js +224 -224
  71. package/SVF-doxygen/html/search/all_12.js +552 -552
  72. package/SVF-doxygen/html/search/all_13.js +190 -190
  73. package/SVF-doxygen/html/search/all_14.js +67 -67
  74. package/SVF-doxygen/html/search/all_15.js +168 -168
  75. package/SVF-doxygen/html/search/all_16.js +63 -63
  76. package/SVF-doxygen/html/search/all_17.js +1 -1
  77. package/SVF-doxygen/html/search/all_18.js +1 -1
  78. package/SVF-doxygen/html/search/all_19.js +11 -11
  79. package/SVF-doxygen/html/search/all_1a.js +174 -173
  80. package/SVF-doxygen/html/search/all_2.js +4 -4
  81. package/SVF-doxygen/html/search/all_3.js +2 -2
  82. package/SVF-doxygen/html/search/all_5.js +2 -2
  83. package/SVF-doxygen/html/search/all_6.js +1 -1
  84. package/SVF-doxygen/html/search/all_7.js +6 -6
  85. package/SVF-doxygen/html/search/all_8.js +2 -2
  86. package/SVF-doxygen/html/search/all_9.js +406 -405
  87. package/SVF-doxygen/html/search/all_a.js +46 -46
  88. package/SVF-doxygen/html/search/all_b.js +26 -26
  89. package/SVF-doxygen/html/search/all_c.js +115 -115
  90. package/SVF-doxygen/html/search/all_d.js +197 -197
  91. package/SVF-doxygen/html/search/all_e.js +207 -207
  92. package/SVF-doxygen/html/search/all_f.js +116 -116
  93. package/SVF-doxygen/html/search/classes_0.js +26 -26
  94. package/SVF-doxygen/html/search/classes_1.js +9 -9
  95. package/SVF-doxygen/html/search/classes_10.js +73 -73
  96. package/SVF-doxygen/html/search/classes_11.js +15 -15
  97. package/SVF-doxygen/html/search/classes_12.js +2 -2
  98. package/SVF-doxygen/html/search/classes_13.js +10 -10
  99. package/SVF-doxygen/html/search/classes_14.js +14 -14
  100. package/SVF-doxygen/html/search/classes_15.js +1 -1
  101. package/SVF-doxygen/html/search/classes_2.js +81 -81
  102. package/SVF-doxygen/html/search/classes_3.js +37 -37
  103. package/SVF-doxygen/html/search/classes_4.js +9 -9
  104. package/SVF-doxygen/html/search/classes_5.js +28 -28
  105. package/SVF-doxygen/html/search/classes_6.js +104 -104
  106. package/SVF-doxygen/html/search/classes_7.js +34 -34
  107. package/SVF-doxygen/html/search/classes_8.js +57 -56
  108. package/SVF-doxygen/html/search/classes_9.js +1 -1
  109. package/SVF-doxygen/html/search/classes_a.js +12 -12
  110. package/SVF-doxygen/html/search/classes_b.js +29 -29
  111. package/SVF-doxygen/html/search/classes_c.js +6 -6
  112. package/SVF-doxygen/html/search/classes_d.js +18 -18
  113. package/SVF-doxygen/html/search/classes_e.js +36 -36
  114. package/SVF-doxygen/html/search/classes_f.js +25 -25
  115. package/SVF-doxygen/html/search/defines_0.js +3 -3
  116. package/SVF-doxygen/html/search/defines_1.js +2 -2
  117. package/SVF-doxygen/html/search/defines_2.js +30 -30
  118. package/SVF-doxygen/html/search/defines_3.js +20 -20
  119. package/SVF-doxygen/html/search/defines_4.js +2 -2
  120. package/SVF-doxygen/html/search/defines_5.js +4 -4
  121. package/SVF-doxygen/html/search/defines_6.js +2 -2
  122. package/SVF-doxygen/html/search/defines_7.js +5 -5
  123. package/SVF-doxygen/html/search/defines_8.js +11 -11
  124. package/SVF-doxygen/html/search/defines_9.js +9 -9
  125. package/SVF-doxygen/html/search/defines_a.js +2 -2
  126. package/SVF-doxygen/html/search/defines_b.js +1 -1
  127. package/SVF-doxygen/html/search/defines_c.js +3 -3
  128. package/SVF-doxygen/html/search/defines_d.js +2 -2
  129. package/SVF-doxygen/html/search/defines_e.js +7 -7
  130. package/SVF-doxygen/html/search/defines_f.js +3 -3
  131. package/SVF-doxygen/html/search/enums_0.js +3 -3
  132. package/SVF-doxygen/html/search/enums_1.js +2 -2
  133. package/SVF-doxygen/html/search/enums_10.js +1 -1
  134. package/SVF-doxygen/html/search/enums_11.js +1 -1
  135. package/SVF-doxygen/html/search/enums_2.js +8 -8
  136. package/SVF-doxygen/html/search/enums_3.js +1 -1
  137. package/SVF-doxygen/html/search/enums_4.js +3 -3
  138. package/SVF-doxygen/html/search/enums_5.js +1 -1
  139. package/SVF-doxygen/html/search/enums_6.js +2 -2
  140. package/SVF-doxygen/html/search/enums_7.js +2 -2
  141. package/SVF-doxygen/html/search/enums_8.js +4 -4
  142. package/SVF-doxygen/html/search/enums_9.js +1 -1
  143. package/SVF-doxygen/html/search/enums_a.js +1 -1
  144. package/SVF-doxygen/html/search/enums_b.js +7 -7
  145. package/SVF-doxygen/html/search/enums_c.js +1 -1
  146. package/SVF-doxygen/html/search/enums_d.js +4 -4
  147. package/SVF-doxygen/html/search/enums_e.js +2 -2
  148. package/SVF-doxygen/html/search/enums_f.js +4 -4
  149. package/SVF-doxygen/html/search/enumvalues_0.js +14 -14
  150. package/SVF-doxygen/html/search/enumvalues_1.js +14 -14
  151. package/SVF-doxygen/html/search/enumvalues_10.js +35 -35
  152. package/SVF-doxygen/html/search/enumvalues_11.js +3 -3
  153. package/SVF-doxygen/html/search/enumvalues_12.js +10 -10
  154. package/SVF-doxygen/html/search/enumvalues_13.js +1 -1
  155. package/SVF-doxygen/html/search/enumvalues_14.js +1 -1
  156. package/SVF-doxygen/html/search/enumvalues_15.js +3 -3
  157. package/SVF-doxygen/html/search/enumvalues_2.js +36 -36
  158. package/SVF-doxygen/html/search/enumvalues_3.js +13 -13
  159. package/SVF-doxygen/html/search/enumvalues_4.js +2 -2
  160. package/SVF-doxygen/html/search/enumvalues_5.js +47 -47
  161. package/SVF-doxygen/html/search/enumvalues_6.js +6 -6
  162. package/SVF-doxygen/html/search/enumvalues_7.js +8 -8
  163. package/SVF-doxygen/html/search/enumvalues_8.js +23 -23
  164. package/SVF-doxygen/html/search/enumvalues_9.js +6 -6
  165. package/SVF-doxygen/html/search/enumvalues_a.js +15 -15
  166. package/SVF-doxygen/html/search/enumvalues_b.js +11 -11
  167. package/SVF-doxygen/html/search/enumvalues_c.js +5 -5
  168. package/SVF-doxygen/html/search/enumvalues_d.js +18 -18
  169. package/SVF-doxygen/html/search/enumvalues_e.js +9 -9
  170. package/SVF-doxygen/html/search/enumvalues_f.js +45 -45
  171. package/SVF-doxygen/html/search/files_0.js +13 -13
  172. package/SVF-doxygen/html/search/files_1.js +7 -7
  173. package/SVF-doxygen/html/search/files_10.js +8 -8
  174. package/SVF-doxygen/html/search/files_11.js +8 -8
  175. package/SVF-doxygen/html/search/files_12.js +2 -2
  176. package/SVF-doxygen/html/search/files_2.js +57 -57
  177. package/SVF-doxygen/html/search/files_3.js +14 -14
  178. package/SVF-doxygen/html/search/files_4.js +5 -5
  179. package/SVF-doxygen/html/search/files_5.js +13 -13
  180. package/SVF-doxygen/html/search/files_6.js +9 -9
  181. package/SVF-doxygen/html/search/files_7.js +14 -14
  182. package/SVF-doxygen/html/search/files_8.js +13 -13
  183. package/SVF-doxygen/html/search/files_9.js +18 -18
  184. package/SVF-doxygen/html/search/files_a.js +3 -3
  185. package/SVF-doxygen/html/search/files_b.js +2 -2
  186. package/SVF-doxygen/html/search/files_c.js +20 -20
  187. package/SVF-doxygen/html/search/files_d.js +4 -4
  188. package/SVF-doxygen/html/search/files_e.js +62 -62
  189. package/SVF-doxygen/html/search/files_f.js +8 -8
  190. package/SVF-doxygen/html/search/functions_0.js +13 -13
  191. package/SVF-doxygen/html/search/functions_1.js +362 -362
  192. package/SVF-doxygen/html/search/functions_10.js +140 -140
  193. package/SVF-doxygen/html/search/functions_11.js +139 -139
  194. package/SVF-doxygen/html/search/functions_12.js +288 -288
  195. package/SVF-doxygen/html/search/functions_13.js +59 -59
  196. package/SVF-doxygen/html/search/functions_14.js +39 -39
  197. package/SVF-doxygen/html/search/functions_15.js +71 -71
  198. package/SVF-doxygen/html/search/functions_16.js +32 -32
  199. package/SVF-doxygen/html/search/functions_17.js +3 -3
  200. package/SVF-doxygen/html/search/functions_18.js +174 -173
  201. package/SVF-doxygen/html/search/functions_2.js +89 -89
  202. package/SVF-doxygen/html/search/functions_3.js +261 -261
  203. package/SVF-doxygen/html/search/functions_4.js +78 -78
  204. package/SVF-doxygen/html/search/functions_5.js +53 -53
  205. package/SVF-doxygen/html/search/functions_6.js +60 -60
  206. package/SVF-doxygen/html/search/functions_7.js +855 -855
  207. package/SVF-doxygen/html/search/functions_8.js +148 -148
  208. package/SVF-doxygen/html/search/functions_9.js +421 -420
  209. package/SVF-doxygen/html/search/functions_a.js +30 -30
  210. package/SVF-doxygen/html/search/functions_b.js +2 -2
  211. package/SVF-doxygen/html/search/functions_c.js +25 -25
  212. package/SVF-doxygen/html/search/functions_d.js +79 -79
  213. package/SVF-doxygen/html/search/functions_e.js +35 -35
  214. package/SVF-doxygen/html/search/functions_f.js +56 -56
  215. package/SVF-doxygen/html/search/namespaces_0.js +1 -1
  216. package/SVF-doxygen/html/search/namespaces_1.js +7 -7
  217. package/SVF-doxygen/html/search/related_0.js +2 -2
  218. package/SVF-doxygen/html/search/related_1.js +2 -2
  219. package/SVF-doxygen/html/search/related_2.js +3 -3
  220. package/SVF-doxygen/html/search/related_3.js +2 -2
  221. package/SVF-doxygen/html/search/related_4.js +2 -2
  222. package/SVF-doxygen/html/search/related_5.js +1 -1
  223. package/SVF-doxygen/html/search/related_6.js +2 -2
  224. package/SVF-doxygen/html/search/related_7.js +4 -4
  225. package/SVF-doxygen/html/search/related_8.js +2 -2
  226. package/SVF-doxygen/html/search/related_9.js +4 -4
  227. package/SVF-doxygen/html/search/related_a.js +19 -19
  228. package/SVF-doxygen/html/search/related_b.js +4 -4
  229. package/SVF-doxygen/html/search/related_c.js +2 -2
  230. package/SVF-doxygen/html/search/related_d.js +12 -12
  231. package/SVF-doxygen/html/search/related_e.js +2 -2
  232. package/SVF-doxygen/html/search/related_f.js +2 -2
  233. package/SVF-doxygen/html/search/typedefs_0.js +19 -19
  234. package/SVF-doxygen/html/search/typedefs_1.js +26 -26
  235. package/SVF-doxygen/html/search/typedefs_10.js +62 -62
  236. package/SVF-doxygen/html/search/typedefs_11.js +13 -13
  237. package/SVF-doxygen/html/search/typedefs_12.js +11 -11
  238. package/SVF-doxygen/html/search/typedefs_13.js +33 -33
  239. package/SVF-doxygen/html/search/typedefs_14.js +8 -8
  240. package/SVF-doxygen/html/search/typedefs_2.js +129 -129
  241. package/SVF-doxygen/html/search/typedefs_3.js +39 -39
  242. package/SVF-doxygen/html/search/typedefs_4.js +17 -17
  243. package/SVF-doxygen/html/search/typedefs_5.js +41 -41
  244. package/SVF-doxygen/html/search/typedefs_6.js +56 -56
  245. package/SVF-doxygen/html/search/typedefs_7.js +44 -44
  246. package/SVF-doxygen/html/search/typedefs_8.js +1 -1
  247. package/SVF-doxygen/html/search/typedefs_9.js +6 -6
  248. package/SVF-doxygen/html/search/typedefs_a.js +29 -29
  249. package/SVF-doxygen/html/search/typedefs_b.js +29 -29
  250. package/SVF-doxygen/html/search/typedefs_c.js +41 -41
  251. package/SVF-doxygen/html/search/typedefs_d.js +14 -14
  252. package/SVF-doxygen/html/search/typedefs_e.js +52 -52
  253. package/SVF-doxygen/html/search/typedefs_f.js +14 -14
  254. package/SVF-doxygen/html/search/variables_0.js +151 -151
  255. package/SVF-doxygen/html/search/variables_1.js +75 -75
  256. package/SVF-doxygen/html/search/variables_10.js +98 -98
  257. package/SVF-doxygen/html/search/variables_11.js +45 -45
  258. package/SVF-doxygen/html/search/variables_12.js +90 -90
  259. package/SVF-doxygen/html/search/variables_13.js +74 -74
  260. package/SVF-doxygen/html/search/variables_14.js +14 -14
  261. package/SVF-doxygen/html/search/variables_15.js +49 -49
  262. package/SVF-doxygen/html/search/variables_16.js +9 -9
  263. package/SVF-doxygen/html/search/variables_17.js +1 -1
  264. package/SVF-doxygen/html/search/variables_18.js +2 -2
  265. package/SVF-doxygen/html/search/variables_2.js +38 -38
  266. package/SVF-doxygen/html/search/variables_3.js +142 -142
  267. package/SVF-doxygen/html/search/variables_4.js +50 -50
  268. package/SVF-doxygen/html/search/variables_5.js +37 -37
  269. package/SVF-doxygen/html/search/variables_6.js +66 -66
  270. package/SVF-doxygen/html/search/variables_7.js +34 -34
  271. package/SVF-doxygen/html/search/variables_8.js +7 -7
  272. package/SVF-doxygen/html/search/variables_9.js +78 -78
  273. package/SVF-doxygen/html/search/variables_a.js +4 -4
  274. package/SVF-doxygen/html/search/variables_b.js +10 -10
  275. package/SVF-doxygen/html/search/variables_c.js +45 -45
  276. package/SVF-doxygen/html/search/variables_d.js +55 -55
  277. package/SVF-doxygen/html/search/variables_e.js +123 -123
  278. package/SVF-doxygen/html/search/variables_f.js +30 -30
  279. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1IntervalExeState_01_4.html +6 -6
  280. package/package.json +1 -1
  281. package/svf/include/AbstractExecution/IntervalExeState.h +274 -102
  282. package/svf/include/AbstractExecution/RelationSolver.h +9 -9
  283. package/svf/lib/AbstractExecution/IntervalExeState.cpp +85 -14
  284. package/svf/lib/AbstractExecution/RelationSolver.cpp +22 -22
@@ -104,238 +104,314 @@ $(function() {
104
104
  <div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="keyword">using namespace </span><a class="code" href="namespaceSVF.html">SVF</a>;</div>
105
105
  <div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="keyword">using namespace </span>SVFUtil;</div>
106
106
  <div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; </div>
107
- <div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a> <a class="code" href="classSVF_1_1IntervalExeState.html#a92b1b163493a74a31d30a261128edd05">IntervalExeState::globalES</a>;</div>
108
- <div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a69f5125f14b129607fafb3717160f4c1"> 37</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1IntervalExeState.html#a69f5125f14b129607fafb3717160f4c1">IntervalExeState::equals</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a> &amp;other)<span class="keyword"> const</span></div>
109
- <div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="keyword"></span>{</div>
110
- <div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span> == other;</div>
111
- <div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;}</div>
112
- <div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
113
- <div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a85b0e711160d67ea84f426025b980dce"> 42</a></span>&#160;<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1IntervalExeState.html#a85b0e711160d67ea84f426025b980dce">IntervalExeState::hash</a>()<span class="keyword"> const</span></div>
114
- <div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword"></span>{</div>
115
- <div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordtype">size_t</span> h = getVarToVal().size() * 2;</div>
116
- <div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="structSVF_1_1Hash.html">Hash&lt;u32_t&gt;</a> hf;</div>
117
- <div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;t: getVarToVal())</div>
118
- <div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; {</div>
119
- <div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; h ^= hf(t.first) + 0x9e3779b9 + (h &lt;&lt; 6) + (h &gt;&gt; 2);</div>
120
- <div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; }</div>
121
- <div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordtype">size_t</span> h2 = getLocToVal().size() * 2;</div>
122
- <div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;t: getLocToVal())</div>
123
- <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; {</div>
124
- <div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; h2 ^= hf(t.first) + 0x9e3779b9 + (h2 &lt;&lt; 6) + (h2 &gt;&gt; 2);</div>
125
- <div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; }</div>
126
- <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="structSVF_1_1Hash.html">Hash&lt;std::pair&lt;std::pair&lt;u32_t, u32_t&gt;</a>, <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&gt;&gt; pairH;</div>
127
- <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">return</span> pairH(std::make_pair(std::make_pair(h, h2), (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>) <a class="code" href="classSVF_1_1ExeState.html#a2e63af0f29d04484c09cca217b799986">ExeState::hash</a>()));</div>
128
- <div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;}</div>
129
- <div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; </div>
130
- <div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#abc8edb74e55f40dbc7bb5182d4ef1199"> 59</a></span>&#160;<a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a> <a class="code" href="classSVF_1_1IntervalExeState.html#abc8edb74e55f40dbc7bb5182d4ef1199">IntervalExeState::widening</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a>&amp; other)</div>
131
- <div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;{</div>
132
- <div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a> es = *<span class="keyword">this</span>;</div>
133
- <div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.end(); ++it)</div>
134
- <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; {</div>
135
- <div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
136
- <div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.end())</div>
137
- <div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; it-&gt;second.widen_with(other.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.at(key));</div>
138
- <div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; }</div>
139
- <div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.end(); ++it)</div>
140
- <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; {</div>
141
- <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
142
- <div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.end())</div>
143
- <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; it-&gt;second.widen_with(other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.at(key));</div>
144
- <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; }</div>
145
- <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> es;</div>
146
- <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;}</div>
147
- <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; </div>
148
- <div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a1e8f41b502167283ccb87bd128f232bc"> 77</a></span>&#160;<a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a> <a class="code" href="classSVF_1_1IntervalExeState.html#a1e8f41b502167283ccb87bd128f232bc">IntervalExeState::narrowing</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a>&amp; other)</div>
149
- <div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;{</div>
150
- <div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a> es = *<span class="keyword">this</span>;</div>
151
- <div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.end(); ++it)</div>
152
- <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; {</div>
153
- <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
154
- <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.end())</div>
155
- <div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; it-&gt;second.narrow_with(other.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.at(key));</div>
156
- <div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
157
- <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.end(); ++it)</div>
158
- <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; {</div>
159
- <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
160
- <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.end())</div>
161
- <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; it-&gt;second.narrow_with(other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.at(key));</div>
162
- <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; }</div>
163
- <div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">return</span> es;</div>
164
- <div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; </div>
165
- <div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;}</div>
166
- <div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; </div>
167
- <div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#acfbe4dbb85e802a0456b7223a26280d3"> 97</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalExeState.html#acfbe4dbb85e802a0456b7223a26280d3">IntervalExeState::widenWith</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a>&amp; other)</div>
168
- <div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;{</div>
169
- <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = _varToItvVal.begin(); it != _varToItvVal.end(); ++it)</div>
170
- <div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; {</div>
171
- <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
172
- <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalExeState.html#a4e3e495118c907a29d7705904273f6d3">getVarToVal</a>().find(key) != other.<a class="code" href="classSVF_1_1IntervalExeState.html#a4e3e495118c907a29d7705904273f6d3">getVarToVal</a>().end())</div>
173
- <div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; it-&gt;second.widen_with(other.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.at(key));</div>
174
- <div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; }</div>
175
- <div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = _locToItvVal.begin(); it != _locToItvVal.end(); ++it)</div>
176
- <div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; {</div>
177
- <div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
178
- <div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.end())</div>
179
- <div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; it-&gt;second.widen_with(other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.at(key));</div>
180
- <div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div>
181
- <div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;}</div>
182
- <div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; </div>
183
- <div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a46ef74cd1412790b088f1d7320f57a9f"> 114</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalExeState.html#a46ef74cd1412790b088f1d7320f57a9f">IntervalExeState::joinWith</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a>&amp; other)</div>
184
- <div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;{</div>
185
- <div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="classSVF_1_1ExeState.html#a60464bebe5f257bbe1356eee149524c0">ExeState::joinWith</a>(other);</div>
186
- <div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.begin(); it != other.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.end(); ++it)</div>
187
- <div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; {</div>
188
- <div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
189
- <div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keyword">auto</span> oit = _varToItvVal.find(key);</div>
190
- <div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">if</span> (oit != _varToItvVal.end())</div>
191
- <div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; {</div>
192
- <div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; oit-&gt;second.join_with(it-&gt;second);</div>
193
- <div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; }</div>
194
- <div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">else</span></div>
195
- <div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; {</div>
196
- <div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; _varToItvVal.emplace(key, it-&gt;second);</div>
197
- <div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div>
198
- <div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div>
199
- <div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.begin(); it != other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.end(); ++it)</div>
200
- <div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; {</div>
201
- <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
202
- <div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keyword">auto</span> oit = _locToItvVal.find(key);</div>
203
- <div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span> (oit != _locToItvVal.end())</div>
204
- <div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div>
205
- <div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; oit-&gt;second.join_with(it-&gt;second);</div>
206
- <div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div>
207
- <div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">else</span></div>
208
- <div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; {</div>
209
- <div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; _locToItvVal.emplace(key, it-&gt;second);</div>
210
- <div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
211
- <div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div>
212
- <div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;}</div>
213
- <div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; </div>
214
- <div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a3d6ccddf8ecfbd7b6348f8c441cceab9"> 146</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalExeState.html#a3d6ccddf8ecfbd7b6348f8c441cceab9">IntervalExeState::narrowWith</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a>&amp; other)</div>
215
- <div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;{</div>
216
- <div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = _varToItvVal.begin(); it != _varToItvVal.end(); ++it)</div>
217
- <div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; {</div>
218
- <div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
219
- <div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keyword">auto</span> oit = other.<a class="code" href="classSVF_1_1IntervalExeState.html#a4e3e495118c907a29d7705904273f6d3">getVarToVal</a>().find(key);</div>
220
- <div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">if</span> (oit != other.<a class="code" href="classSVF_1_1IntervalExeState.html#a4e3e495118c907a29d7705904273f6d3">getVarToVal</a>().end())</div>
221
- <div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; it-&gt;second.narrow_with(oit-&gt;second);</div>
222
- <div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; }</div>
223
- <div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = _locToItvVal.begin(); it != _locToItvVal.end(); ++it)</div>
224
- <div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; {</div>
225
- <div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
226
- <div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keyword">auto</span> oit = other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.find(key);</div>
227
- <div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">if</span> (oit != other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.end())</div>
228
- <div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; it-&gt;second.narrow_with(oit-&gt;second);</div>
229
- <div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div>
230
- <div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;}</div>
231
- <div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; </div>
232
- <div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a1e5d399b2111d9b8ed17f790cab12d5d"> 165</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalExeState.html#a1e5d399b2111d9b8ed17f790cab12d5d">IntervalExeState::meetWith</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a>&amp; other)</div>
233
- <div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;{</div>
234
- <div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <a class="code" href="classSVF_1_1ExeState.html#a80bcce9b4303d651b27332c2fc0d3bdc">ExeState::meetWith</a>(other);</div>
235
- <div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.begin(); it != other.<a class="code" href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">_varToItvVal</a>.end(); ++it)</div>
236
- <div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; {</div>
237
- <div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
238
- <div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">auto</span> oit = _varToItvVal.find(key);</div>
239
- <div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">if</span> (oit != _varToItvVal.end())</div>
240
- <div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; {</div>
241
- <div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; oit-&gt;second.meet_with(it-&gt;second);</div>
242
- <div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; }</div>
243
- <div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; }</div>
244
- <div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.begin(); it != other.<a class="code" href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">_locToItvVal</a>.end(); ++it)</div>
245
- <div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; {</div>
246
- <div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
247
- <div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keyword">auto</span> oit = _locToItvVal.find(key);</div>
248
- <div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">if</span> (oit != _locToItvVal.end())</div>
249
- <div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; {</div>
250
- <div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; oit-&gt;second.meet_with(it-&gt;second);</div>
251
- <div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div>
252
- <div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; }</div>
253
- <div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;}</div>
254
- <div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; </div>
255
- <div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#aa6adb9becbc2541198708823e3e35c9d"> 189</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalExeState.html#aa6adb9becbc2541198708823e3e35c9d">IntervalExeState::printExprValues</a>(std::ostream &amp;oss)<span class="keyword"> const</span></div>
256
- <div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="keyword"></span>{</div>
257
- <div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;-----------Var and Value-----------\n&quot;</span>;</div>
258
- <div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; printTable(_varToItvVal, oss);</div>
259
- <div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; printTable(_locToItvVal, oss);</div>
260
- <div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; printTable(_varToAddrs, oss);</div>
261
- <div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; printTable(_locToAddrs, oss);</div>
262
- <div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;-----------------------------------------\n&quot;</span>;</div>
263
- <div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;}</div>
264
- <div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; </div>
265
- <div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#abf57a44b95108e255242f630ba33f37b"> 199</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalExeState.html#abf57a44b95108e255242f630ba33f37b">IntervalExeState::printTable</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html#ae2b12e4add0714aa861f790864e098ff">VarToValMap</a> &amp;table, std::ostream &amp;oss)<span class="keyword"> const</span></div>
266
- <div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="keyword"></span>{</div>
267
- <div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; oss.flags(std::ios::left);</div>
268
- <div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; std::set&lt;NodeID&gt; ordered;</div>
269
- <div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: table)</div>
270
- <div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; {</div>
271
- <div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; ordered.insert(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.first);</div>
272
- <div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; }</div>
273
- <div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: ordered)</div>
274
- <div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; {</div>
275
- <div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;Var&quot;</span> &lt;&lt; std::to_string(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>);</div>
276
- <div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <a class="code" href="classSVF_1_1IntervalValue.html">IntervalValue</a> sim = table.at(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>);</div>
277
- <div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">if</span> (sim.<a class="code" href="classSVF_1_1IntervalValue.html#a523826aede7ad22736beed0c8223b6b0">is_numeral</a>() &amp;&amp; isVirtualMemAddress(Interval2NumValue(sim)))</div>
278
- <div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; {</div>
279
- <div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;\t Value: &quot;</span> &lt;&lt; std::hex &lt;&lt; <span class="stringliteral">&quot;0x&quot;</span> &lt;&lt; Interval2NumValue(sim) &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
280
- <div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; }</div>
281
- <div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">else</span></div>
282
- <div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; {</div>
283
- <div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;\t Value: &quot;</span> &lt;&lt; std::dec &lt;&lt; sim &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
284
- <div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; }</div>
285
- <div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; }</div>
286
- <div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;}</div>
287
- <div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; </div>
288
- <div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a4d22ccce6915c9fe8238e20433b9d5b8"> 222</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalExeState.html#abf57a44b95108e255242f630ba33f37b">IntervalExeState::printTable</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a> &amp;table, std::ostream &amp;oss)<span class="keyword"> const</span></div>
289
- <div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="keyword"></span>{</div>
290
- <div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; oss.flags(std::ios::left);</div>
291
- <div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; std::set&lt;NodeID&gt; ordered;</div>
292
- <div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: table)</div>
293
- <div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; {</div>
294
- <div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; ordered.insert(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.first);</div>
295
- <div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; }</div>
296
- <div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: ordered)</div>
297
- <div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; {</div>
298
- <div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;Var&quot;</span> &lt;&lt; std::to_string(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>);</div>
299
- <div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="classSVF_1_1AddressValue.html">Addrs</a> sim = table.at(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>);</div>
300
- <div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;\t Value: &quot;</span> &lt;&lt; std::hex &lt;&lt; <span class="stringliteral">&quot;[ &quot;</span>;</div>
301
- <div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = sim.<a class="code" href="classSVF_1_1AddressValue.html#aed0b4789beda4980e4e215a65350f323">begin</a>(); it != sim.<a class="code" href="classSVF_1_1AddressValue.html#a6f8186d1df43be4fbd0a48f724046372">end</a>(); ++it)</div>
302
- <div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; {</div>
303
- <div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; oss &lt;&lt; std::hex &lt;&lt; <span class="stringliteral">&quot;0x&quot;</span> &lt;&lt; *it &lt;&lt; <span class="stringliteral">&quot;(&quot;</span> &lt;&lt; std::to_string(*it&amp;(0x00ffffff)) &lt;&lt; <span class="stringliteral">&quot;) ,&quot;</span>;</div>
304
- <div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; }</div>
305
- <div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;]\n&quot;</span>;</div>
306
- <div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; }</div>
307
- <div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;}</div>
107
+ <div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalESBase.html#a9133df5ab00e7c2918a8047fd0bdfb08"> 36</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1IntervalESBase.html#a9133df5ab00e7c2918a8047fd0bdfb08">IntervalESBase::equals</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalESBase.html">IntervalESBase</a> &amp;other)<span class="keyword"> const</span></div>
108
+ <div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="keyword"></span>{</div>
109
+ <div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span> == other;</div>
110
+ <div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;}</div>
111
+ <div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; </div>
112
+ <div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalESBase.html#a2ecbba4a55776562262b6ddc9f0d9101"> 41</a></span>&#160;<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1IntervalESBase.html#a2ecbba4a55776562262b6ddc9f0d9101">IntervalESBase::hash</a>()<span class="keyword"> const</span></div>
113
+ <div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword"></span>{</div>
114
+ <div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordtype">size_t</span> h = getVarToVal().size() * 2;</div>
115
+ <div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="structSVF_1_1Hash.html">Hash&lt;u32_t&gt;</a> hf;</div>
116
+ <div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;t: getVarToVal())</div>
117
+ <div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; {</div>
118
+ <div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; h ^= hf(t.first) + 0x9e3779b9 + (h &lt;&lt; 6) + (h &gt;&gt; 2);</div>
119
+ <div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; }</div>
120
+ <div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordtype">size_t</span> h2 = getLocToVal().size() * 2;</div>
121
+ <div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;t: getLocToVal())</div>
122
+ <div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; {</div>
123
+ <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; h2 ^= hf(t.first) + 0x9e3779b9 + (h2 &lt;&lt; 6) + (h2 &gt;&gt; 2);</div>
124
+ <div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; }</div>
125
+ <div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="structSVF_1_1Hash.html">Hash&lt;std::pair&lt;std::pair&lt;u32_t, u32_t&gt;</a>, <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&gt;&gt; pairH;</div>
126
+ <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">return</span> pairH(std::make_pair(std::make_pair(h, h2), (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>) <a class="code" href="classSVF_1_1ExeState.html#a2e63af0f29d04484c09cca217b799986">ExeState::hash</a>()));</div>
127
+ <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;}</div>
128
+ <div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; </div>
129
+ <div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalESBase.html#a9a167f67476d2e080cc6e31d127ee715"> 58</a></span>&#160;<a class="code" href="classSVF_1_1IntervalESBase.html">IntervalESBase</a> <a class="code" href="classSVF_1_1IntervalESBase.html#a9a167f67476d2e080cc6e31d127ee715">IntervalESBase::widening</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalESBase.html">IntervalESBase</a>&amp; other)</div>
130
+ <div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;{</div>
131
+ <div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="classSVF_1_1IntervalESBase.html">IntervalESBase</a> es = *<span class="keyword">this</span>;</div>
132
+ <div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.end(); ++it)</div>
133
+ <div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; {</div>
134
+ <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
135
+ <div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.end())</div>
136
+ <div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; it-&gt;second.widen_with(other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.at(key));</div>
137
+ <div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; }</div>
138
+ <div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.end(); ++it)</div>
139
+ <div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; {</div>
140
+ <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
141
+ <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.end())</div>
142
+ <div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; it-&gt;second.widen_with(other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.at(key));</div>
143
+ <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; }</div>
144
+ <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> es;</div>
145
+ <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;}</div>
146
+ <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; </div>
147
+ <div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalESBase.html#a3f8da19a79bfdc37c38e659a94371aba"> 76</a></span>&#160;<a class="code" href="classSVF_1_1IntervalESBase.html">IntervalESBase</a> <a class="code" href="classSVF_1_1IntervalESBase.html#a3f8da19a79bfdc37c38e659a94371aba">IntervalESBase::narrowing</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalESBase.html">IntervalESBase</a>&amp; other)</div>
148
+ <div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;{</div>
149
+ <div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="classSVF_1_1IntervalESBase.html">IntervalESBase</a> es = *<span class="keyword">this</span>;</div>
150
+ <div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.end(); ++it)</div>
151
+ <div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; {</div>
152
+ <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
153
+ <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.end())</div>
154
+ <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; it-&gt;second.narrow_with(other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.at(key));</div>
155
+ <div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; }</div>
156
+ <div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.end(); ++it)</div>
157
+ <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; {</div>
158
+ <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
159
+ <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.end())</div>
160
+ <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; it-&gt;second.narrow_with(other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.at(key));</div>
161
+ <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; }</div>
162
+ <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> es;</div>
163
+ <div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; </div>
164
+ <div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;}</div>
165
+ <div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; </div>
166
+ <div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalESBase.html#a2db6b5360cf8e90dbd4174ad0382ec56"> 96</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalESBase.html#a2db6b5360cf8e90dbd4174ad0382ec56">IntervalESBase::widenWith</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalESBase.html">IntervalESBase</a>&amp; other)</div>
167
+ <div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;{</div>
168
+ <div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = _varToItvVal.begin(); it != _varToItvVal.end(); ++it)</div>
169
+ <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; {</div>
170
+ <div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
171
+ <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalESBase.html#a903797577ba99ef57879774a3849bbfe">getVarToVal</a>().find(key) != other.<a class="code" href="classSVF_1_1IntervalESBase.html#a903797577ba99ef57879774a3849bbfe">getVarToVal</a>().end())</div>
172
+ <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; it-&gt;second.widen_with(other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.at(key));</div>
173
+ <div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; }</div>
174
+ <div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = _locToItvVal.begin(); it != _locToItvVal.end(); ++it)</div>
175
+ <div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; {</div>
176
+ <div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
177
+ <div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.end())</div>
178
+ <div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; it-&gt;second.widen_with(other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.at(key));</div>
179
+ <div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div>
180
+ <div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;}</div>
181
+ <div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; </div>
182
+ <div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalESBase.html#adc0db607e4c0f117760535df67b91fbd"> 113</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalESBase.html#adc0db607e4c0f117760535df67b91fbd">IntervalESBase::joinWith</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalESBase.html">IntervalESBase</a>&amp; other)</div>
183
+ <div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;{</div>
184
+ <div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="classSVF_1_1ExeState.html#a60464bebe5f257bbe1356eee149524c0">ExeState::joinWith</a>(other);</div>
185
+ <div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.begin(); it != other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.end(); ++it)</div>
186
+ <div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; {</div>
187
+ <div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
188
+ <div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keyword">auto</span> oit = _varToItvVal.find(key);</div>
189
+ <div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">if</span> (oit != _varToItvVal.end())</div>
190
+ <div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; {</div>
191
+ <div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; oit-&gt;second.join_with(it-&gt;second);</div>
192
+ <div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div>
193
+ <div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">else</span></div>
194
+ <div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; {</div>
195
+ <div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; _varToItvVal.emplace(key, it-&gt;second);</div>
196
+ <div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div>
197
+ <div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div>
198
+ <div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.begin(); it != other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.end(); ++it)</div>
199
+ <div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; {</div>
200
+ <div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
201
+ <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">auto</span> oit = _locToItvVal.find(key);</div>
202
+ <div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">if</span> (oit != _locToItvVal.end())</div>
203
+ <div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; {</div>
204
+ <div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; oit-&gt;second.join_with(it-&gt;second);</div>
205
+ <div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; }</div>
206
+ <div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">else</span></div>
207
+ <div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; {</div>
208
+ <div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; _locToItvVal.emplace(key, it-&gt;second);</div>
209
+ <div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; }</div>
210
+ <div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
211
+ <div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;}</div>
212
+ <div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; </div>
213
+ <div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalESBase.html#a52b590dc437bc01ce116255e699c3c55"> 145</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalESBase.html#a52b590dc437bc01ce116255e699c3c55">IntervalESBase::narrowWith</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalESBase.html">IntervalESBase</a>&amp; other)</div>
214
+ <div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;{</div>
215
+ <div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = _varToItvVal.begin(); it != _varToItvVal.end(); ++it)</div>
216
+ <div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; {</div>
217
+ <div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
218
+ <div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keyword">auto</span> oit = other.<a class="code" href="classSVF_1_1IntervalESBase.html#a903797577ba99ef57879774a3849bbfe">getVarToVal</a>().find(key);</div>
219
+ <div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">if</span> (oit != other.<a class="code" href="classSVF_1_1IntervalESBase.html#a903797577ba99ef57879774a3849bbfe">getVarToVal</a>().end())</div>
220
+ <div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; it-&gt;second.narrow_with(oit-&gt;second);</div>
221
+ <div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; }</div>
222
+ <div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = _locToItvVal.begin(); it != _locToItvVal.end(); ++it)</div>
223
+ <div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; {</div>
224
+ <div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
225
+ <div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">auto</span> oit = other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.find(key);</div>
226
+ <div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">if</span> (oit != other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.end())</div>
227
+ <div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; it-&gt;second.narrow_with(oit-&gt;second);</div>
228
+ <div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; }</div>
229
+ <div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;}</div>
230
+ <div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; </div>
231
+ <div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalESBase.html#a92a8531c7f12cc6f9117596aa5e534b6"> 164</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalESBase.html#a92a8531c7f12cc6f9117596aa5e534b6">IntervalESBase::meetWith</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalESBase.html">IntervalESBase</a>&amp; other)</div>
232
+ <div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;{</div>
233
+ <div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="classSVF_1_1ExeState.html#a80bcce9b4303d651b27332c2fc0d3bdc">ExeState::meetWith</a>(other);</div>
234
+ <div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.begin(); it != other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.end(); ++it)</div>
235
+ <div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; {</div>
236
+ <div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
237
+ <div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">auto</span> oit = _varToItvVal.find(key);</div>
238
+ <div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span> (oit != _varToItvVal.end())</div>
239
+ <div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; {</div>
240
+ <div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; oit-&gt;second.meet_with(it-&gt;second);</div>
241
+ <div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; }</div>
242
+ <div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; }</div>
243
+ <div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.begin(); it != other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.end(); ++it)</div>
244
+ <div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; {</div>
245
+ <div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
246
+ <div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keyword">auto</span> oit = _locToItvVal.find(key);</div>
247
+ <div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">if</span> (oit != _locToItvVal.end())</div>
248
+ <div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; {</div>
249
+ <div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; oit-&gt;second.meet_with(it-&gt;second);</div>
250
+ <div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; }</div>
251
+ <div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div>
252
+ <div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;}</div>
253
+ <div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; </div>
254
+ <div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalESBase.html#a4c0ede557a333bfea3f5d4a9a4dc8a9e"> 188</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalESBase.html#a4c0ede557a333bfea3f5d4a9a4dc8a9e">IntervalESBase::printExprValues</a>(std::ostream &amp;oss)<span class="keyword"> const</span></div>
255
+ <div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="keyword"></span>{</div>
256
+ <div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;-----------Var and Value-----------\n&quot;</span>;</div>
257
+ <div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; printTable(_varToItvVal, oss);</div>
258
+ <div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; printTable(_locToItvVal, oss);</div>
259
+ <div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; printTable(_varToAddrs, oss);</div>
260
+ <div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; printTable(_locToAddrs, oss);</div>
261
+ <div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;-----------------------------------------\n&quot;</span>;</div>
262
+ <div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;}</div>
263
+ <div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; </div>
264
+ <div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalESBase.html#a14e210bd24b2104afb36ad50a0899c09"> 198</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalESBase.html#a14e210bd24b2104afb36ad50a0899c09">IntervalESBase::printTable</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalESBase.html#a02e3d5f7074c4f77338edc9a7add95d8">VarToValMap</a> &amp;table, std::ostream &amp;oss)<span class="keyword"> const</span></div>
265
+ <div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="keyword"></span>{</div>
266
+ <div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; oss.flags(std::ios::left);</div>
267
+ <div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; std::set&lt;NodeID&gt; ordered;</div>
268
+ <div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: table)</div>
269
+ <div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; {</div>
270
+ <div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; ordered.insert(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.first);</div>
271
+ <div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; }</div>
272
+ <div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: ordered)</div>
273
+ <div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; {</div>
274
+ <div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;Var&quot;</span> &lt;&lt; std::to_string(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>);</div>
275
+ <div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <a class="code" href="classSVF_1_1IntervalValue.html">IntervalValue</a> sim = table.at(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>);</div>
276
+ <div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">if</span> (sim.<a class="code" href="classSVF_1_1IntervalValue.html#a523826aede7ad22736beed0c8223b6b0">is_numeral</a>() &amp;&amp; isVirtualMemAddress(Interval2NumValue(sim)))</div>
277
+ <div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; {</div>
278
+ <div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;\t Value: &quot;</span> &lt;&lt; std::hex &lt;&lt; <span class="stringliteral">&quot;0x&quot;</span> &lt;&lt; Interval2NumValue(sim) &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
279
+ <div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; }</div>
280
+ <div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">else</span></div>
281
+ <div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; {</div>
282
+ <div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;\t Value: &quot;</span> &lt;&lt; std::dec &lt;&lt; sim &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
283
+ <div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; }</div>
284
+ <div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; }</div>
285
+ <div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;}</div>
286
+ <div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; </div>
287
+ <div class="line"><a name="l00221"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalESBase.html#a2b5821a3dd16e98687768b51cf05b789"> 221</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalESBase.html#a14e210bd24b2104afb36ad50a0899c09">IntervalESBase::printTable</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a> &amp;table, std::ostream &amp;oss)<span class="keyword"> const</span></div>
288
+ <div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="keyword"></span>{</div>
289
+ <div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; oss.flags(std::ios::left);</div>
290
+ <div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; std::set&lt;NodeID&gt; ordered;</div>
291
+ <div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: table)</div>
292
+ <div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; {</div>
293
+ <div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; ordered.insert(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.first);</div>
294
+ <div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; }</div>
295
+ <div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: ordered)</div>
296
+ <div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; {</div>
297
+ <div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;Var&quot;</span> &lt;&lt; std::to_string(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>);</div>
298
+ <div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <a class="code" href="classSVF_1_1AddressValue.html">Addrs</a> sim = table.at(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>);</div>
299
+ <div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;\t Value: &quot;</span> &lt;&lt; std::hex &lt;&lt; <span class="stringliteral">&quot;[ &quot;</span>;</div>
300
+ <div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = sim.<a class="code" href="classSVF_1_1AddressValue.html#aed0b4789beda4980e4e215a65350f323">begin</a>(); it != sim.<a class="code" href="classSVF_1_1AddressValue.html#a6f8186d1df43be4fbd0a48f724046372">end</a>(); ++it)</div>
301
+ <div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; {</div>
302
+ <div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; oss &lt;&lt; std::hex &lt;&lt; <span class="stringliteral">&quot;0x&quot;</span> &lt;&lt; *it &lt;&lt; <span class="stringliteral">&quot;(&quot;</span> &lt;&lt; std::to_string(*it&amp;(0x00ffffff)) &lt;&lt; <span class="stringliteral">&quot;) ,&quot;</span>;</div>
303
+ <div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; }</div>
304
+ <div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; oss &lt;&lt; <span class="stringliteral">&quot;]\n&quot;</span>;</div>
305
+ <div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; }</div>
306
+ <div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;}</div>
307
+ <div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; </div>
308
+ <div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a> <a class="code" href="classSVF_1_1IntervalExeState.html#a92b1b163493a74a31d30a261128edd05">IntervalExeState::globalES</a>;</div>
309
+ <div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a69f5125f14b129607fafb3717160f4c1"> 243</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1IntervalExeState.html#a69f5125f14b129607fafb3717160f4c1">IntervalExeState::equals</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a> &amp;other)<span class="keyword"> const</span></div>
310
+ <div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="keyword"></span>{</div>
311
+ <div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span> == other;</div>
312
+ <div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;}</div>
313
+ <div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; </div>
314
+ <div class="line"><a name="l00248"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a85b0e711160d67ea84f426025b980dce"> 248</a></span>&#160;<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1IntervalExeState.html#a85b0e711160d67ea84f426025b980dce">IntervalExeState::hash</a>()<span class="keyword"> const</span></div>
315
+ <div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="keyword"></span>{</div>
316
+ <div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1IntervalESBase.html#a2ecbba4a55776562262b6ddc9f0d9101">IntervalESBase::hash</a>();</div>
317
+ <div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;}</div>
318
+ <div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; </div>
319
+ <div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#abc8edb74e55f40dbc7bb5182d4ef1199"> 253</a></span>&#160;<a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a> <a class="code" href="classSVF_1_1IntervalExeState.html#abc8edb74e55f40dbc7bb5182d4ef1199">IntervalExeState::widening</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a>&amp; other)</div>
320
+ <div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;{</div>
321
+ <div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a> es = *<span class="keyword">this</span>;</div>
322
+ <div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.end(); ++it)</div>
323
+ <div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; {</div>
324
+ <div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
325
+ <div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.end())</div>
326
+ <div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; it-&gt;second.widen_with(other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.at(key));</div>
327
+ <div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; }</div>
328
+ <div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.end(); ++it)</div>
329
+ <div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; {</div>
330
+ <div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
331
+ <div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.end())</div>
332
+ <div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; it-&gt;second.widen_with(other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.at(key));</div>
333
+ <div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; }</div>
334
+ <div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keywordflow">return</span> es;</div>
335
+ <div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;}</div>
336
+ <div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; </div>
337
+ <div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a1e8f41b502167283ccb87bd128f232bc"> 271</a></span>&#160;<a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a> <a class="code" href="classSVF_1_1IntervalExeState.html#a1e8f41b502167283ccb87bd128f232bc">IntervalExeState::narrowing</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a>&amp; other)</div>
338
+ <div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;{</div>
339
+ <div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a> es = *<span class="keyword">this</span>;</div>
340
+ <div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.end(); ++it)</div>
341
+ <div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; {</div>
342
+ <div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
343
+ <div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.end())</div>
344
+ <div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; it-&gt;second.narrow_with(other.<a class="code" href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">_varToItvVal</a>.at(key));</div>
345
+ <div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; }</div>
346
+ <div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.end(); ++it)</div>
347
+ <div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; {</div>
348
+ <div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keyword">auto</span> key = it-&gt;first;</div>
349
+ <div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.find(key) != other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.end())</div>
350
+ <div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; it-&gt;second.narrow_with(other.<a class="code" href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">_locToItvVal</a>.at(key));</div>
351
+ <div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; }</div>
352
+ <div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordflow">return</span> es;</div>
353
+ <div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; </div>
354
+ <div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;}</div>
355
+ <div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; </div>
356
+ <div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#acfbe4dbb85e802a0456b7223a26280d3"> 291</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalExeState.html#acfbe4dbb85e802a0456b7223a26280d3">IntervalExeState::widenWith</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a>&amp; other)</div>
357
+ <div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;{</div>
358
+ <div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <a class="code" href="classSVF_1_1IntervalESBase.html#a2db6b5360cf8e90dbd4174ad0382ec56">IntervalESBase::widenWith</a>(other);</div>
359
+ <div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;}</div>
360
+ <div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; </div>
361
+ <div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a46ef74cd1412790b088f1d7320f57a9f"> 297</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalExeState.html#a46ef74cd1412790b088f1d7320f57a9f">IntervalExeState::joinWith</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a>&amp; other)</div>
362
+ <div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;{</div>
363
+ <div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <a class="code" href="classSVF_1_1IntervalESBase.html#adc0db607e4c0f117760535df67b91fbd">IntervalESBase::joinWith</a>(other);</div>
364
+ <div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;}</div>
365
+ <div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; </div>
366
+ <div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a3d6ccddf8ecfbd7b6348f8c441cceab9"> 303</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalExeState.html#a3d6ccddf8ecfbd7b6348f8c441cceab9">IntervalExeState::narrowWith</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a>&amp; other)</div>
367
+ <div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;{</div>
368
+ <div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <a class="code" href="classSVF_1_1IntervalESBase.html#a52b590dc437bc01ce116255e699c3c55">IntervalESBase::narrowWith</a>(other);</div>
369
+ <div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;}</div>
370
+ <div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; </div>
371
+ <div class="line"><a name="l00309"></a><span class="lineno"><a class="line" href="classSVF_1_1IntervalExeState.html#a1e5d399b2111d9b8ed17f790cab12d5d"> 309</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1IntervalExeState.html#a1e5d399b2111d9b8ed17f790cab12d5d">IntervalExeState::meetWith</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntervalExeState.html">IntervalExeState</a>&amp; other)</div>
372
+ <div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;{</div>
373
+ <div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <a class="code" href="classSVF_1_1IntervalESBase.html#a92a8531c7f12cc6f9117596aa5e534b6">IntervalESBase::meetWith</a>(other);</div>
374
+ <div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;}</div>
308
375
  </div><!-- fragment --></div><!-- contents -->
309
376
  <div class="ttc" id="aclassSVF_1_1ExeState_html_a60464bebe5f257bbe1356eee149524c0"><div class="ttname"><a href="classSVF_1_1ExeState.html#a60464bebe5f257bbe1356eee149524c0">SVF::ExeState::joinWith</a></div><div class="ttdeci">bool joinWith(const ExeState &amp;other)</div><div class="ttdoc">Make all value join with the other.</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8cpp_source.html#l00040">ExeState.cpp:40</a></div></div>
310
377
  <div class="ttc" id="aclassSVF_1_1ExeState_html_a09f34aca79479221305769cae307feef"><div class="ttname"><a href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">SVF::ExeState::VarToAddrs</a></div><div class="ttdeci">Map&lt; u32_t, Addrs &gt; VarToAddrs</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00053">ExeState.h:53</a></div></div>
311
378
  <div class="ttc" id="anamespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00065">BasicTypes.h:65</a></div></div>
312
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_acfbe4dbb85e802a0456b7223a26280d3"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#acfbe4dbb85e802a0456b7223a26280d3">SVF::IntervalExeState::widenWith</a></div><div class="ttdeci">void widenWith(const IntervalExeState &amp;other)</div><div class="ttdoc">domain widen with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00097">IntervalExeState.cpp:97</a></div></div>
379
+ <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_acfbe4dbb85e802a0456b7223a26280d3"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#acfbe4dbb85e802a0456b7223a26280d3">SVF::IntervalExeState::widenWith</a></div><div class="ttdeci">void widenWith(const IntervalExeState &amp;other)</div><div class="ttdoc">domain widen with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00291">IntervalExeState.cpp:291</a></div></div>
380
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_a2db6b5360cf8e90dbd4174ad0382ec56"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#a2db6b5360cf8e90dbd4174ad0382ec56">SVF::IntervalESBase::widenWith</a></div><div class="ttdeci">void widenWith(const IntervalESBase &amp;other)</div><div class="ttdoc">domain widen with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00096">IntervalExeState.cpp:96</a></div></div>
313
381
  <div class="ttc" id="aclassSVF_1_1ExeState_html_a2e63af0f29d04484c09cca217b799986"><div class="ttname"><a href="classSVF_1_1ExeState.html#a2e63af0f29d04484c09cca217b799986">SVF::ExeState::hash</a></div><div class="ttdeci">virtual u32_t hash() const</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8cpp_source.html#l00102">ExeState.cpp:102</a></div></div>
382
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_a3f8da19a79bfdc37c38e659a94371aba"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#a3f8da19a79bfdc37c38e659a94371aba">SVF::IntervalESBase::narrowing</a></div><div class="ttdeci">IntervalESBase narrowing(const IntervalESBase &amp;other)</div><div class="ttdoc">domain narrow with other, and return the narrowed domain</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00076">IntervalExeState.cpp:76</a></div></div>
314
383
  <div class="ttc" id="aclassSVF_1_1ExeState_html_a80bcce9b4303d651b27332c2fc0d3bdc"><div class="ttname"><a href="classSVF_1_1ExeState.html#a80bcce9b4303d651b27332c2fc0d3bdc">SVF::ExeState::meetWith</a></div><div class="ttdeci">bool meetWith(const ExeState &amp;other)</div><div class="ttdoc">Make all value meet with the other.</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8cpp_source.html#l00076">ExeState.cpp:76</a></div></div>
315
384
  <div class="ttc" id="astructSVF_1_1Hash_html"><div class="ttname"><a href="structSVF_1_1Hash.html">SVF::Hash</a></div><div class="ttdoc">provide extra hash function for std::pair handling</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00067">SVFType.h:67</a></div></div>
385
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_a4c0ede557a333bfea3f5d4a9a4dc8a9e"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#a4c0ede557a333bfea3f5d4a9a4dc8a9e">SVF::IntervalESBase::printExprValues</a></div><div class="ttdeci">void printExprValues(std::ostream &amp;oss) const override</div><div class="ttdoc">Print values of all expressions.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00188">IntervalExeState.cpp:188</a></div></div>
316
386
  <div class="ttc" id="aclassSVF_1_1IntervalValue_html_a523826aede7ad22736beed0c8223b6b0"><div class="ttname"><a href="classSVF_1_1IntervalValue.html#a523826aede7ad22736beed0c8223b6b0">SVF::IntervalValue::is_numeral</a></div><div class="ttdeci">bool is_numeral() const</div><div class="ttdoc">Return true if the IntervalValue is a number [num, num].</div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00270">IntervalValue.h:270</a></div></div>
317
387
  <div class="ttc" id="aSVFUtil_8h_html"><div class="ttname"><a href="SVFUtil_8h.html">SVFUtil.h</a></div></div>
318
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a39dead4fe213e3d02b1613debbc86e71"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a39dead4fe213e3d02b1613debbc86e71">SVF::IntervalExeState::_locToItvVal</a></div><div class="ttdeci">LocToValMap _locToItvVal</div><div class="ttdoc">Map a memory address to its stored interval value.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00152">IntervalExeState.h:152</a></div></div>
319
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a3d6ccddf8ecfbd7b6348f8c441cceab9"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a3d6ccddf8ecfbd7b6348f8c441cceab9">SVF::IntervalExeState::narrowWith</a></div><div class="ttdeci">void narrowWith(const IntervalExeState &amp;other)</div><div class="ttdoc">domain narrow with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00146">IntervalExeState.cpp:146</a></div></div>
320
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a69f5125f14b129607fafb3717160f4c1"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a69f5125f14b129607fafb3717160f4c1">SVF::IntervalExeState::equals</a></div><div class="ttdeci">bool equals(const IntervalExeState &amp;other) const</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00037">IntervalExeState.cpp:37</a></div></div>
321
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_ac72e3ae77e06e0dfc7c2edd2bf765d77"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#ac72e3ae77e06e0dfc7c2edd2bf765d77">SVF::IntervalExeState::_varToItvVal</a></div><div class="ttdeci">VarToValMap _varToItvVal</div><div class="ttdoc">Map a variable (symbol) to its interval value.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00151">IntervalExeState.h:151</a></div></div>
322
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html">SVF::IntervalExeState</a></div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00055">IntervalExeState.h:55</a></div></div>
323
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a92b1b163493a74a31d30a261128edd05"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a92b1b163493a74a31d30a261128edd05">SVF::IntervalExeState::globalES</a></div><div class="ttdeci">static IntervalExeState globalES</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00065">IntervalExeState.h:65</a></div></div>
388
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html">SVF::IntervalESBase</a></div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00054">IntervalExeState.h:54</a></div></div>
389
+ <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a3d6ccddf8ecfbd7b6348f8c441cceab9"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a3d6ccddf8ecfbd7b6348f8c441cceab9">SVF::IntervalExeState::narrowWith</a></div><div class="ttdeci">void narrowWith(const IntervalExeState &amp;other)</div><div class="ttdoc">domain narrow with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00303">IntervalExeState.cpp:303</a></div></div>
390
+ <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a69f5125f14b129607fafb3717160f4c1"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a69f5125f14b129607fafb3717160f4c1">SVF::IntervalExeState::equals</a></div><div class="ttdeci">bool equals(const IntervalExeState &amp;other) const</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00243">IntervalExeState.cpp:243</a></div></div>
391
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_acba74693030fca248521412c552e3dcc"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#acba74693030fca248521412c552e3dcc">SVF::IntervalESBase::_locToItvVal</a></div><div class="ttdeci">LocToValMap _locToItvVal</div><div class="ttdoc">Map a memory address to its stored interval value.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00148">IntervalExeState.h:148</a></div></div>
392
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_a02e3d5f7074c4f77338edc9a7add95d8"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#a02e3d5f7074c4f77338edc9a7add95d8">SVF::IntervalESBase::VarToValMap</a></div><div class="ttdeci">Map&lt; u32_t, IntervalValue &gt; VarToValMap</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00059">IntervalExeState.h:59</a></div></div>
393
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_a92a8531c7f12cc6f9117596aa5e534b6"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#a92a8531c7f12cc6f9117596aa5e534b6">SVF::IntervalESBase::meetWith</a></div><div class="ttdeci">void meetWith(const IntervalESBase &amp;other)</div><div class="ttdoc">domain meet with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00164">IntervalExeState.cpp:164</a></div></div>
394
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_a2ecbba4a55776562262b6ddc9f0d9101"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#a2ecbba4a55776562262b6ddc9f0d9101">SVF::IntervalESBase::hash</a></div><div class="ttdeci">u32_t hash() const override</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00041">IntervalExeState.cpp:41</a></div></div>
395
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_ad2288306aed7301ccd30e55410c7b428"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#ad2288306aed7301ccd30e55410c7b428">SVF::IntervalESBase::_varToItvVal</a></div><div class="ttdeci">VarToValMap _varToItvVal</div><div class="ttdoc">Map a variable (symbol) to its interval value.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00147">IntervalExeState.h:147</a></div></div>
396
+ <div class="ttc" id="aclassSVF_1_1IntervalExeState_html"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html">SVF::IntervalExeState</a></div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00407">IntervalExeState.h:407</a></div></div>
397
+ <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a92b1b163493a74a31d30a261128edd05"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a92b1b163493a74a31d30a261128edd05">SVF::IntervalExeState::globalES</a></div><div class="ttdeci">static IntervalExeState globalES</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00413">IntervalExeState.h:413</a></div></div>
324
398
  <div class="ttc" id="aclassSVF_1_1IntervalValue_html"><div class="ttname"><a href="classSVF_1_1IntervalValue.html">SVF::IntervalValue</a></div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00043">IntervalValue.h:43</a></div></div>
325
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a85b0e711160d67ea84f426025b980dce"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a85b0e711160d67ea84f426025b980dce">SVF::IntervalExeState::hash</a></div><div class="ttdeci">u32_t hash() const override</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00042">IntervalExeState.cpp:42</a></div></div>
326
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a46ef74cd1412790b088f1d7320f57a9f"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a46ef74cd1412790b088f1d7320f57a9f">SVF::IntervalExeState::joinWith</a></div><div class="ttdeci">void joinWith(const IntervalExeState &amp;other)</div><div class="ttdoc">domain join with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00114">IntervalExeState.cpp:114</a></div></div>
327
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_abc8edb74e55f40dbc7bb5182d4ef1199"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#abc8edb74e55f40dbc7bb5182d4ef1199">SVF::IntervalExeState::widening</a></div><div class="ttdeci">IntervalExeState widening(const IntervalExeState &amp;other)</div><div class="ttdoc">domain widen with other, and return the widened domain</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00059">IntervalExeState.cpp:59</a></div></div>
328
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_aa6adb9becbc2541198708823e3e35c9d"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#aa6adb9becbc2541198708823e3e35c9d">SVF::IntervalExeState::printExprValues</a></div><div class="ttdeci">void printExprValues(std::ostream &amp;oss) const override</div><div class="ttdoc">Print values of all expressions.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00189">IntervalExeState.cpp:189</a></div></div>
329
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a4e3e495118c907a29d7705904273f6d3"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a4e3e495118c907a29d7705904273f6d3">SVF::IntervalExeState::getVarToVal</a></div><div class="ttdeci">const VarToValMap &amp; getVarToVal() const</div><div class="ttdoc">get var2val map</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00207">IntervalExeState.h:207</a></div></div>
399
+ <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a85b0e711160d67ea84f426025b980dce"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a85b0e711160d67ea84f426025b980dce">SVF::IntervalExeState::hash</a></div><div class="ttdeci">u32_t hash() const override</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00248">IntervalExeState.cpp:248</a></div></div>
400
+ <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a46ef74cd1412790b088f1d7320f57a9f"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a46ef74cd1412790b088f1d7320f57a9f">SVF::IntervalExeState::joinWith</a></div><div class="ttdeci">void joinWith(const IntervalExeState &amp;other)</div><div class="ttdoc">domain join with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00297">IntervalExeState.cpp:297</a></div></div>
401
+ <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_abc8edb74e55f40dbc7bb5182d4ef1199"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#abc8edb74e55f40dbc7bb5182d4ef1199">SVF::IntervalExeState::widening</a></div><div class="ttdeci">IntervalExeState widening(const IntervalExeState &amp;other)</div><div class="ttdoc">domain widen with other, and return the widened domain</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00253">IntervalExeState.cpp:253</a></div></div>
402
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_a52b590dc437bc01ce116255e699c3c55"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#a52b590dc437bc01ce116255e699c3c55">SVF::IntervalESBase::narrowWith</a></div><div class="ttdeci">void narrowWith(const IntervalESBase &amp;other)</div><div class="ttdoc">domain narrow with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00145">IntervalExeState.cpp:145</a></div></div>
330
403
  <div class="ttc" id="aclassSVF_1_1AddressValue_html"><div class="ttname"><a href="classSVF_1_1AddressValue.html">SVF::AddressValue</a></div><div class="ttdef"><b>Definition:</b> <a href="AddressValue_8h_source.html#l00041">AddressValue.h:41</a></div></div>
404
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_a14e210bd24b2104afb36ad50a0899c09"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#a14e210bd24b2104afb36ad50a0899c09">SVF::IntervalESBase::printTable</a></div><div class="ttdeci">void printTable(const VarToValMap &amp;table, std::ostream &amp;oss) const</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00198">IntervalExeState.cpp:198</a></div></div>
331
405
  <div class="ttc" id="acJSON_8h_html_ac76cea59d438ba893d2f82aabb367d14"><div class="ttname"><a href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a></div><div class="ttdeci">cJSON * item</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00222">cJSON.h:222</a></div></div>
332
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a1e8f41b502167283ccb87bd128f232bc"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a1e8f41b502167283ccb87bd128f232bc">SVF::IntervalExeState::narrowing</a></div><div class="ttdeci">IntervalExeState narrowing(const IntervalExeState &amp;other)</div><div class="ttdoc">domain narrow with other, and return the narrowed domain</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00077">IntervalExeState.cpp:77</a></div></div>
406
+ <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a1e8f41b502167283ccb87bd128f232bc"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a1e8f41b502167283ccb87bd128f232bc">SVF::IntervalExeState::narrowing</a></div><div class="ttdeci">IntervalExeState narrowing(const IntervalExeState &amp;other)</div><div class="ttdoc">domain narrow with other, and return the narrowed domain</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00271">IntervalExeState.cpp:271</a></div></div>
407
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_a9a167f67476d2e080cc6e31d127ee715"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#a9a167f67476d2e080cc6e31d127ee715">SVF::IntervalESBase::widening</a></div><div class="ttdeci">IntervalESBase widening(const IntervalESBase &amp;other)</div><div class="ttdoc">domain widen with other, and return the widened domain</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00058">IntervalExeState.cpp:58</a></div></div>
333
408
  <div class="ttc" id="aclassSVF_1_1AddressValue_html_a6f8186d1df43be4fbd0a48f724046372"><div class="ttname"><a href="classSVF_1_1AddressValue.html#a6f8186d1df43be4fbd0a48f724046372">SVF::AddressValue::end</a></div><div class="ttdeci">AddrSet::const_iterator end() const</div><div class="ttdef"><b>Definition:</b> <a href="AddressValue_8h_source.html#l00108">AddressValue.h:108</a></div></div>
334
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_abf57a44b95108e255242f630ba33f37b"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#abf57a44b95108e255242f630ba33f37b">SVF::IntervalExeState::printTable</a></div><div class="ttdeci">void printTable(const VarToValMap &amp;table, std::ostream &amp;oss) const</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00199">IntervalExeState.cpp:199</a></div></div>
409
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_a903797577ba99ef57879774a3849bbfe"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#a903797577ba99ef57879774a3849bbfe">SVF::IntervalESBase::getVarToVal</a></div><div class="ttdeci">const VarToValMap &amp; getVarToVal() const</div><div class="ttdoc">get var2val map</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00189">IntervalExeState.h:189</a></div></div>
410
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_a9133df5ab00e7c2918a8047fd0bdfb08"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#a9133df5ab00e7c2918a8047fd0bdfb08">SVF::IntervalESBase::equals</a></div><div class="ttdeci">bool equals(const IntervalESBase &amp;other) const</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00036">IntervalExeState.cpp:36</a></div></div>
335
411
  <div class="ttc" id="aIntervalExeState_8h_html"><div class="ttname"><a href="IntervalExeState_8h.html">IntervalExeState.h</a></div></div>
336
412
  <div class="ttc" id="anamespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00051">SVFType.h:51</a></div></div>
337
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a1e5d399b2111d9b8ed17f790cab12d5d"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a1e5d399b2111d9b8ed17f790cab12d5d">SVF::IntervalExeState::meetWith</a></div><div class="ttdeci">void meetWith(const IntervalExeState &amp;other)</div><div class="ttdoc">domain meet with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00165">IntervalExeState.cpp:165</a></div></div>
338
- <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_ae2b12e4add0714aa861f790864e098ff"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#ae2b12e4add0714aa861f790864e098ff">SVF::IntervalExeState::VarToValMap</a></div><div class="ttdeci">Map&lt; u32_t, IntervalValue &gt; VarToValMap</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00061">IntervalExeState.h:61</a></div></div>
413
+ <div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a1e5d399b2111d9b8ed17f790cab12d5d"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a1e5d399b2111d9b8ed17f790cab12d5d">SVF::IntervalExeState::meetWith</a></div><div class="ttdeci">void meetWith(const IntervalExeState &amp;other)</div><div class="ttdoc">domain meet with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00309">IntervalExeState.cpp:309</a></div></div>
414
+ <div class="ttc" id="aclassSVF_1_1IntervalESBase_html_adc0db607e4c0f117760535df67b91fbd"><div class="ttname"><a href="classSVF_1_1IntervalESBase.html#adc0db607e4c0f117760535df67b91fbd">SVF::IntervalESBase::joinWith</a></div><div class="ttdeci">void joinWith(const IntervalESBase &amp;other)</div><div class="ttdoc">domain join with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8cpp_source.html#l00113">IntervalExeState.cpp:113</a></div></div>
339
415
  <div class="ttc" id="aclassSVF_1_1AddressValue_html_aed0b4789beda4980e4e215a65350f323"><div class="ttname"><a href="classSVF_1_1AddressValue.html#aed0b4789beda4980e4e215a65350f323">SVF::AddressValue::begin</a></div><div class="ttdeci">AddrSet::const_iterator begin() const</div><div class="ttdef"><b>Definition:</b> <a href="AddressValue_8h_source.html#l00103">AddressValue.h:103</a></div></div>
340
416
  <!-- start footer part -->
341
417
  <hr class="footer"/><address class="footer"><small>