svf-tools 1.0.285 → 1.0.286

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 (54) hide show
  1. package/LICENSE.TXT +6 -4
  2. package/SVF-doxygen/html/html/dir_63dba4c559aa5986900c35e27974bafc.html +83 -0
  3. package/SVF-doxygen/html/html/dir_97aefd0d527b934f1d99a682da8fe6a9.html +2 -0
  4. package/SVF-doxygen/html/html/dir_d1b325ac671111a54e189ae033ba710d.html +87 -0
  5. package/SVF-doxygen/html/html/dir_d44c64559bbebec7f509842c48db8b23.html +2 -0
  6. package/SVF-doxygen/html/html/fastcluster_8cpp.html +263 -0
  7. package/SVF-doxygen/html/html/fastcluster_8cpp_source.html +88 -0
  8. package/SVF-doxygen/html/html/fastcluster_8h.html +278 -0
  9. package/SVF-doxygen/html/html/fastcluster_8h_source.html +86 -0
  10. package/SVF-doxygen/html/html/fastcluster__R__dm_8cpp_8inc.html +79 -0
  11. package/SVF-doxygen/html/html/fastcluster__R__dm_8cpp_8inc_source.html +77 -0
  12. package/SVF-doxygen/html/html/fastcluster__dm_8cpp_8inc.html +89 -0
  13. package/SVF-doxygen/html/html/fastcluster__dm_8cpp_8inc_source.html +80 -0
  14. package/SVF-doxygen/html/html/files.html +220 -214
  15. package/SVF-doxygen/html/html/globals_c.html +82 -74
  16. package/SVF-doxygen/html/html/globals_enum.html +3 -0
  17. package/SVF-doxygen/html/html/globals_eval.html +19 -0
  18. package/SVF-doxygen/html/html/globals_f.html +6 -3
  19. package/SVF-doxygen/html/html/globals_func_c.html +46 -38
  20. package/SVF-doxygen/html/html/globals_func_f.html +3 -0
  21. package/SVF-doxygen/html/html/globals_func_h.html +4 -0
  22. package/SVF-doxygen/html/html/globals_h.html +22 -0
  23. package/SVF-doxygen/html/html/globals_r.html +3 -3
  24. package/SVF-doxygen/html/html/globals_s.html +7 -9
  25. package/SVF-doxygen/html/html/menudata.js +1 -0
  26. package/SVF-doxygen/html/html/search/all_12.js +1 -1
  27. package/SVF-doxygen/html/html/search/all_13.js +4 -4
  28. package/SVF-doxygen/html/html/search/all_3.js +2 -0
  29. package/SVF-doxygen/html/html/search/all_6.js +5 -0
  30. package/SVF-doxygen/html/html/search/all_8.js +7 -0
  31. package/SVF-doxygen/html/html/search/enums_4.js +1 -2
  32. package/SVF-doxygen/html/html/search/enums_5.js +2 -2
  33. package/SVF-doxygen/html/html/search/enums_6.js +2 -3
  34. package/SVF-doxygen/html/html/search/enums_7.js +3 -6
  35. package/SVF-doxygen/html/html/search/enums_8.js +6 -1
  36. package/SVF-doxygen/html/html/search/enums_9.js +1 -5
  37. package/SVF-doxygen/html/html/search/enums_a.js +5 -1
  38. package/SVF-doxygen/html/html/search/enums_b.js +1 -4
  39. package/SVF-doxygen/html/html/search/enums_c.html +26 -0
  40. package/SVF-doxygen/html/html/search/enums_c.js +7 -0
  41. package/SVF-doxygen/html/html/search/enumvalues_7.js +5 -0
  42. package/SVF-doxygen/html/html/search/files_5.js +4 -0
  43. package/SVF-doxygen/html/html/search/functions_2.js +2 -0
  44. package/SVF-doxygen/html/html/search/functions_5.js +1 -0
  45. package/SVF-doxygen/html/html/search/functions_7.js +1 -0
  46. package/SVF-doxygen/html/html/search/searchdata.js +1 -1
  47. package/include/FastCluster/LICENSE.TXT +13 -0
  48. package/include/FastCluster/fastcluster.h +79 -0
  49. package/lib/CMakeLists.txt +4 -1
  50. package/lib/FastCluster/LICENSE.TXT +13 -0
  51. package/lib/FastCluster/fastcluster.cpp +170 -0
  52. package/lib/FastCluster/fastcluster_R_dm.cpp.inc +115 -0
  53. package/lib/FastCluster/fastcluster_dm.cpp.inc +1795 -0
  54. package/package.json +1 -1
@@ -70,6 +70,10 @@ $(function() {
70
70
  <li>hasEdge()
71
71
  : <a class="el" href="CHG_8cpp.html#a4c6cbac96543cd55e4df050a33512ac5">CHG.cpp</a>
72
72
  </li>
73
+ <li>hclust_fast()
74
+ : <a class="el" href="fastcluster_8h.html#acccd226cbdf0944b5c9e24c84a4599c9">fastcluster.h</a>
75
+ , <a class="el" href="fastcluster_8cpp.html#acccd226cbdf0944b5c9e24c84a4599c9">fastcluster.cpp</a>
76
+ </li>
73
77
  </ul>
74
78
  </div><!-- contents -->
75
79
  <!-- start footer part -->
@@ -82,6 +82,28 @@ $(function() {
82
82
  <li>HAVE_SYS_TIME_H
83
83
  : <a class="el" href="util_8c.html#a2aae46056558e9d6fef6380f9678ffe3">util.c</a>
84
84
  </li>
85
+ <li>hclust_fast()
86
+ : <a class="el" href="fastcluster_8h.html#acccd226cbdf0944b5c9e24c84a4599c9">fastcluster.h</a>
87
+ , <a class="el" href="fastcluster_8cpp.html#acccd226cbdf0944b5c9e24c84a4599c9">fastcluster.cpp</a>
88
+ </li>
89
+ <li>hclust_fast_methods
90
+ : <a class="el" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dd">fastcluster.h</a>
91
+ </li>
92
+ <li>HCLUST_METHOD_AVERAGE
93
+ : <a class="el" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda3ab72664fc61704a1ba46bddbc347115">fastcluster.h</a>
94
+ </li>
95
+ <li>HCLUST_METHOD_COMPLETE
96
+ : <a class="el" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda44ce22fdfc560f27242e9b8f8e7009f4">fastcluster.h</a>
97
+ </li>
98
+ <li>HCLUST_METHOD_MEDIAN
99
+ : <a class="el" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddaa453b79910d9c6f7f57a179bcdf63474">fastcluster.h</a>
100
+ </li>
101
+ <li>HCLUST_METHOD_SINGLE
102
+ : <a class="el" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddad16cc6362447cc32292c4af4c6fe8024">fastcluster.h</a>
103
+ </li>
104
+ <li>HCLUST_METHOD_SVF_BEST
105
+ : <a class="el" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda66ab3fde95842ef6da0dae1f702a9618">fastcluster.h</a>
106
+ </li>
85
107
  </ul>
86
108
  </div><!-- contents -->
87
109
  <!-- start footer part -->
@@ -70,12 +70,12 @@ $(function() {
70
70
  <li>random_generator()
71
71
  : <a class="el" href="cuddInt_8c.html#a77a931cdec27ae26f4d8e4b9152ff7e6">cuddInt.c</a>
72
72
  </li>
73
- <li>REALLOC
74
- : <a class="el" href="util_8h.html#ac3d02b1026db1997f09067d47aed16a8">util.h</a>
75
- </li>
76
73
  <li>realloc()
77
74
  : <a class="el" href="util_8h.html#af6ef63a39a975856bc39bf0f3d13b292">util.h</a>
78
75
  </li>
76
+ <li>REALLOC
77
+ : <a class="el" href="util_8h.html#ac3d02b1026db1997f09067d47aed16a8">util.h</a>
78
+ </li>
79
79
  <li>REGPT()
80
80
  : <a class="el" href="dda_8cpp.html#a5ed1de5ad06cf459c1b4e63685316618">dda.cpp</a>
81
81
  </li>
@@ -110,13 +110,13 @@ $(function() {
110
110
  <li>ST_DEFAULT_REORDER_FLAG
111
111
  : <a class="el" href="st_8h.html#a933aaa48b6a156a000befde073a24e4c">st.h</a>
112
112
  </li>
113
+ <li>ST_DELETE
114
+ : <a class="el" href="st_8h.html#a0c6a172fd99de7928916e65034ed8b1fa64ab176f8e8b9719bcd9b5297ccda9c7">st.h</a>
115
+ </li>
113
116
  <li>st_delete()
114
117
  : <a class="el" href="st_8h.html#aeac35fa92942958472a69117777ec90d">st.h</a>
115
118
  , <a class="el" href="st_8c.html#a2d8405879414ed73f3ff6a935f3fc269">st.c</a>
116
119
  </li>
117
- <li>ST_DELETE
118
- : <a class="el" href="st_8h.html#a0c6a172fd99de7928916e65034ed8b1fa64ab176f8e8b9719bcd9b5297ccda9c7">st.h</a>
119
- </li>
120
120
  <li>st_foreach()
121
121
  : <a class="el" href="st_8h.html#a5341675ff925b7a670ab4705735ceb38">st.h</a>
122
122
  , <a class="el" href="st_8c.html#a4d18e5a6949c772c9ff8c3c70ec00b57">st.c</a>
@@ -173,13 +173,13 @@ $(function() {
173
173
  : <a class="el" href="st_8h.html#ab10245506c3e5d053c75a902ec62a074">st.h</a>
174
174
  , <a class="el" href="st_8c.html#a958c280b8f24c847ca511eaffd410f04">st.c</a>
175
175
  </li>
176
+ <li>ST_NUMCMP
177
+ : <a class="el" href="st_8c.html#a2796b8bc2a5f15834d61a3519ad149d5">st.c</a>
178
+ </li>
176
179
  <li>st_numcmp()
177
180
  : <a class="el" href="st_8h.html#a65b35768bcf5b6f173b063b441a493db">st.h</a>
178
181
  , <a class="el" href="st_8c.html#a0ba60ae98aae8e6dd21bbe3b485bcfbe">st.c</a>
179
182
  </li>
180
- <li>ST_NUMCMP
181
- : <a class="el" href="st_8c.html#a2796b8bc2a5f15834d61a3519ad149d5">st.c</a>
182
- </li>
183
183
  <li>ST_NUMHASH
184
184
  : <a class="el" href="st_8c.html#a76573cced143d429f99bfb5e286c621e">st.c</a>
185
185
  </li>
@@ -203,14 +203,12 @@ $(function() {
203
203
  : <a class="el" href="st_8h.html#a6073f524b9f0ec98b2b3d3e59e4e3fbf">st.h</a>
204
204
  , <a class="el" href="st_8c.html#a52bf6e577a2a87b2cdedb1c3d0e25075">st.c</a>
205
205
  </li>
206
- <li>st_ptrhash()
207
- : <a class="el" href="st_8c.html#ada6e90b4df1ca291977c89a6d4fdea06">st.c</a>
208
- </li>
209
206
  <li>ST_PTRHASH
210
207
  : <a class="el" href="st_8c.html#a524a1efaf5df2432aa5bf96e35546164">st.c</a>
211
208
  </li>
212
209
  <li>st_ptrhash()
213
210
  : <a class="el" href="st_8h.html#a144fc385b211526daab6da9ad5a854cc">st.h</a>
211
+ , <a class="el" href="st_8c.html#ada6e90b4df1ca291977c89a6d4fdea06">st.c</a>
214
212
  </li>
215
213
  <li>st_retval
216
214
  : <a class="el" href="st_8h.html#a0c6a172fd99de7928916e65034ed8b1f">st.h</a>
@@ -281,6 +281,7 @@ var menudata={children:[
281
281
  {text:"Enumerations",url:"globals_enum.html"},
282
282
  {text:"Enumerator",url:"globals_eval.html",children:[
283
283
  {text:"c",url:"globals_eval.html#index_c"},
284
+ {text:"h",url:"globals_eval.html#index_h"},
284
285
  {text:"s",url:"globals_eval.html#index_s"}]},
285
286
  {text:"Macros",url:"globals_defs.html",children:[
286
287
  {text:"a",url:"globals_defs.html#index_a"},
@@ -26,7 +26,7 @@ var searchData=
26
26
  ['readprecisiontdedge',['ReadPrecisionTDEdge',['../classSVF_1_1Options.html#a6bec8aed8673d10d65cc3df9fad3383b',1,'SVF::Options']]],
27
27
  ['realign',['realign',['../structDdManager.html#ab50e58f446cce13dd36cf63230e2d836',1,'DdManager']]],
28
28
  ['realignz',['realignZ',['../structDdManager.html#aeb6927b50fc978391e3eda5161df8c5c',1,'DdManager']]],
29
- ['realloc',['REALLOC',['../util_8h.html#ac3d02b1026db1997f09067d47aed16a8',1,'REALLOC():&#160;util.h'],['../util_8h.html#af6ef63a39a975856bc39bf0f3d13b292',1,'realloc():&#160;util.h']]],
29
+ ['realloc',['realloc',['../util_8h.html#af6ef63a39a975856bc39bf0f3d13b292',1,'realloc():&#160;util.h'],['../util_8h.html#ac3d02b1026db1997f09067d47aed16a8',1,'REALLOC():&#160;util.h']]],
30
30
  ['reanalyze',['reanalyze',['../classSVF_1_1WPASolver.html#ac460772d9236a2fefe17b2557023b883',1,'SVF::WPASolver']]],
31
31
  ['reclaimed',['reclaimed',['../structDdManager.html#a4ab47b179b205207c8e738f4b6ed1ebd',1,'DdManager']]],
32
32
  ['recomb',['recomb',['../structDdManager.html#a38b89daefdc8aab944fbc2ff2aece2f4',1,'DdManager']]],
@@ -45,7 +45,7 @@ var searchData=
45
45
  ['selfcycle',['SelfCycle',['../classSVF_1_1Options.html#a3ed96242ac56a05d057ebd11b23cf053',1,'SVF::Options']]],
46
46
  ['sentinel',['sentinel',['../structDdManager.html#a8679aac5ecef09b42b3cf11786d57139',1,'DdManager']]],
47
47
  ['seq',['SEQ',['../classSVF_1_1NodeIDAllocator.html#a8cf553cd07768aad3f3b91bf3d7c6228a85142db6ed24203f054117f3a5110e2f',1,'SVF::NodeIDAllocator']]],
48
- ['set',['set',['../classSVF_1_1CondStdSet.html#ae11deddad534be115d29daad08c90599',1,'SVF::CondStdSet::set()'],['../classSVF_1_1CondPointsToSet.html#aadf2576b55bbdb82d7affc8466c09861',1,'SVF::CondPointsToSet::set()'],['../lib_2CUDD_2CMakeLists_8txt.html#a97d8d30dc013aa2acba4c146fdcb1acf',1,'set():&#160;CMakeLists.txt'],['../namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb',1,'SVF::Set()']]],
48
+ ['set',['set',['../classSVF_1_1CondStdSet.html#ae11deddad534be115d29daad08c90599',1,'SVF::CondStdSet::set()'],['../classSVF_1_1CondPointsToSet.html#aadf2576b55bbdb82d7affc8466c09861',1,'SVF::CondPointsToSet::set()'],['../namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb',1,'SVF::Set()'],['../lib_2CUDD_2CMakeLists_8txt.html#a97d8d30dc013aa2acba4c146fdcb1acf',1,'set():&#160;CMakeLists.txt']]],
49
49
  ['setactualindef',['setActualINDef',['../classSVF_1_1SVFGOPT.html#a490695ab536cd455c531fbdc57499cac',1,'SVF::SVFGOPT']]],
50
50
  ['setallocationsite',['setAllocationSite',['../classSVF_1_1TypeBasedHeapCloning.html#a006243a1416f4950de254d0d62ba40b0',1,'SVF::TypeBasedHeapCloning']]],
51
51
  ['setallreachable',['setAllReachable',['../classSVF_1_1ProgSlice.html#ae6102647fa4985142c293116516612cd',1,'SVF::ProgSlice']]],
@@ -213,7 +213,7 @@ var searchData=
213
213
  ['st_5fdefault_5finit_5ftable_5fsize',['ST_DEFAULT_INIT_TABLE_SIZE',['../st_8h.html#a311df13f4d458054df7d87ca22782ab2',1,'st.h']]],
214
214
  ['st_5fdefault_5fmax_5fdensity',['ST_DEFAULT_MAX_DENSITY',['../st_8h.html#a4f884be75490db2c92e409a0209fdbcb',1,'st.h']]],
215
215
  ['st_5fdefault_5freorder_5fflag',['ST_DEFAULT_REORDER_FLAG',['../st_8h.html#a933aaa48b6a156a000befde073a24e4c',1,'st.h']]],
216
- ['st_5fdelete',['st_delete',['../st_8h.html#aeac35fa92942958472a69117777ec90d',1,'st_delete(st_table *, void *, void *):&#160;st.c'],['../st_8c.html#a2d8405879414ed73f3ff6a935f3fc269',1,'st_delete(st_table *table, void *keyp, void *value):&#160;st.c'],['../st_8h.html#a0c6a172fd99de7928916e65034ed8b1fa64ab176f8e8b9719bcd9b5297ccda9c7',1,'ST_DELETE():&#160;st.h']]],
216
+ ['st_5fdelete',['ST_DELETE',['../st_8h.html#a0c6a172fd99de7928916e65034ed8b1fa64ab176f8e8b9719bcd9b5297ccda9c7',1,'ST_DELETE():&#160;st.h'],['../st_8h.html#aeac35fa92942958472a69117777ec90d',1,'st_delete(st_table *, void *, void *):&#160;st.c'],['../st_8c.html#a2d8405879414ed73f3ff6a935f3fc269',1,'st_delete(st_table *table, void *keyp, void *value):&#160;st.c']]],
217
217
  ['st_5fforeach',['st_foreach',['../st_8h.html#a5341675ff925b7a670ab4705735ceb38',1,'st_foreach(st_table *, ST_PFSR, char *):&#160;st.c'],['../st_8c.html#a4d18e5a6949c772c9ff8c3c70ec00b57',1,'st_foreach(st_table *table, ST_PFSR func, char *arg):&#160;st.c']]],
218
218
  ['st_5fforeach_5fitem',['st_foreach_item',['../st_8h.html#aea51027ca2b7197709990fb086e12c2c',1,'st.h']]],
219
219
  ['st_5fforeach_5fitem_5fint',['st_foreach_item_int',['../st_8h.html#a437227772bc9c4c0ec636f5723654a4c',1,'st.h']]],
@@ -229,14 +229,14 @@ var searchData=
229
229
  ['st_5fis_5fmember',['st_is_member',['../st_8h.html#a3e18b4a4f91b4188aa376a15ca372b9c',1,'st.h']]],
230
230
  ['st_5flookup',['st_lookup',['../st_8h.html#a0ed63fd0cb21b0a1fe502e84aa5563ef',1,'st_lookup(st_table *, void *, void *):&#160;st.c'],['../st_8c.html#a0664208425f99d5c88fe2a79c425756c',1,'st_lookup(st_table *table, void *key, void *value):&#160;st.c']]],
231
231
  ['st_5flookup_5fint',['st_lookup_int',['../st_8h.html#ab10245506c3e5d053c75a902ec62a074',1,'st_lookup_int(st_table *, void *, int *):&#160;st.c'],['../st_8c.html#a958c280b8f24c847ca511eaffd410f04',1,'st_lookup_int(st_table *table, void *key, int *value):&#160;st.c']]],
232
- ['st_5fnumcmp',['st_numcmp',['../st_8h.html#a65b35768bcf5b6f173b063b441a493db',1,'st_numcmp(const char *, const char *):&#160;st.c'],['../st_8c.html#a0ba60ae98aae8e6dd21bbe3b485bcfbe',1,'st_numcmp(const char *x, const char *y):&#160;st.c'],['../st_8c.html#a2796b8bc2a5f15834d61a3519ad149d5',1,'ST_NUMCMP():&#160;st.c']]],
232
+ ['st_5fnumcmp',['ST_NUMCMP',['../st_8c.html#a2796b8bc2a5f15834d61a3519ad149d5',1,'ST_NUMCMP():&#160;st.c'],['../st_8h.html#a65b35768bcf5b6f173b063b441a493db',1,'st_numcmp(const char *, const char *):&#160;st.c'],['../st_8c.html#a0ba60ae98aae8e6dd21bbe3b485bcfbe',1,'st_numcmp(const char *x, const char *y):&#160;st.c']]],
233
233
  ['st_5fnumhash',['ST_NUMHASH',['../st_8c.html#a76573cced143d429f99bfb5e286c621e',1,'ST_NUMHASH():&#160;st.c'],['../st_8h.html#a487317ef8c55ab34fb58ddfe47163b9e',1,'st_numhash(char *, int):&#160;st.c'],['../st_8c.html#aede320ef4713f295a335b4da6e1d8358',1,'st_numhash(char *x, int size):&#160;st.c']]],
234
234
  ['st_5fout_5fof_5fmem',['ST_OUT_OF_MEM',['../st_8h.html#a1276d6ae80c20ae2ec082db7c502ef75',1,'st.h']]],
235
235
  ['st_5fpficpcp',['ST_PFICPCP',['../st_8h.html#afb91ce58b9010645ed1cdf1ed2b76b03',1,'st.h']]],
236
236
  ['st_5fpficpi',['ST_PFICPI',['../st_8h.html#a4689d232930698db6d2432922e094539',1,'st.h']]],
237
237
  ['st_5fpfsr',['ST_PFSR',['../st_8h.html#afcc2f06d7b3802b2710eec97355f968d',1,'st.h']]],
238
238
  ['st_5fptrcmp',['st_ptrcmp',['../st_8h.html#a6073f524b9f0ec98b2b3d3e59e4e3fbf',1,'st_ptrcmp(const char *, const char *):&#160;st.c'],['../st_8c.html#a52bf6e577a2a87b2cdedb1c3d0e25075',1,'st_ptrcmp(const char *x, const char *y):&#160;st.c']]],
239
- ['st_5fptrhash',['ST_PTRHASH',['../st_8c.html#a524a1efaf5df2432aa5bf96e35546164',1,'ST_PTRHASH():&#160;st.c'],['../st_8h.html#a144fc385b211526daab6da9ad5a854cc',1,'st_ptrhash(char *, int):&#160;st.c'],['../st_8c.html#ada6e90b4df1ca291977c89a6d4fdea06',1,'st_ptrhash(char *x, int size):&#160;st.c']]],
239
+ ['st_5fptrhash',['st_ptrhash',['../st_8h.html#a144fc385b211526daab6da9ad5a854cc',1,'st_ptrhash(char *, int):&#160;st.c'],['../st_8c.html#ada6e90b4df1ca291977c89a6d4fdea06',1,'st_ptrhash(char *x, int size):&#160;st.c'],['../st_8c.html#a524a1efaf5df2432aa5bf96e35546164',1,'ST_PTRHASH():&#160;st.c']]],
240
240
  ['st_5fretval',['st_retval',['../st_8h.html#a0c6a172fd99de7928916e65034ed8b1f',1,'st.h']]],
241
241
  ['st_5fshift',['st_shift',['../st_8c.html#ab2920f4cebe075a6fda8b299fce9f762',1,'st.c']]],
242
242
  ['st_5fstop',['ST_STOP',['../st_8h.html#a0c6a172fd99de7928916e65034ed8b1fa04b939c166d4baa471909eb224d5fed3',1,'st.h']]],
@@ -787,6 +787,8 @@ var searchData=
787
787
  ['cursccid',['curSCCID',['../classSVF_1_1WPASCCSolver.html#a28973d7e1301c36254b67c695e8431aa',1,'SVF::WPASCCSolver']]],
788
788
  ['curty',['CurTy',['../classllvm_1_1generic__bridge__gep__type__iterator.html#aa602c207fe08960b24fc496ca1d34509',1,'llvm::generic_bridge_gep_type_iterator']]],
789
789
  ['curval',['curVal',['../classSVF_1_1PAGBuilder.html#a7a83bd8bf69747c8225301f5cc65d2da',1,'SVF::PAGBuilder']]],
790
+ ['cutree_5fcdist',['cutree_cdist',['../fastcluster_8h.html#a8dbbd465af9ed88a066301ac83ce6961',1,'cutree_cdist(int n, const int *merge, double *height, double cdist, int *labels):&#160;fastcluster.cpp'],['../fastcluster_8cpp.html#a8dbbd465af9ed88a066301ac83ce6961',1,'cutree_cdist(int n, const int *merge, double *height, double cdist, int *labels):&#160;fastcluster.cpp']]],
791
+ ['cutree_5fk',['cutree_k',['../fastcluster_8h.html#a4815993b37ce6e177c9838584e4cda24',1,'cutree_k(int n, const int *merge, int nclust, int *labels):&#160;fastcluster.cpp'],['../fastcluster_8cpp.html#a4815993b37ce6e177c9838584e4cda24',1,'cutree_k(int n, const int *merge, int nclust, int *labels):&#160;fastcluster.cpp']]],
790
792
  ['cvar',['CVar',['../classSVF_1_1CondPTAImpl.html#af71b4ec9844701582d997466c2e4d94f',1,'SVF::CondPTAImpl']]],
791
793
  ['cxt',['cxt',['../classSVF_1_1CondManager.html#a087773d6ae6ed6af009a356dd7b61e11',1,'SVF::CondManager::cxt()'],['../classSVF_1_1CxtStmt.html#ae451ee5a61dbdd2367a04cee304bbcb1',1,'SVF::CxtStmt::cxt()'],['../classSVF_1_1CxtThread.html#ae8e5c401e008739bf018f1d618c08ea5',1,'SVF::CxtThread::cxt()'],['../classSVF_1_1CxtProc.html#af5f186c71d815dabcbfab6bae7c57b59',1,'SVF::CxtProc::cxt()']]],
792
794
  ['cxt_5fdda',['Cxt_DDA',['../classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8',1,'SVF::PointerAnalysis']]],
@@ -3,6 +3,11 @@ var searchData=
3
3
  ['f',['f',['../structDdHook.html#a5b1bfe85ce0ac180fc160eb8c30094d7',1,'DdHook::f()'],['../structDdCache.html#a74c07792181f1d898f9fb4524c8942ad',1,'DdCache::f()']]],
4
4
  ['fail',['fail',['../util_8h.html#a71a6998301cde817b7ade39eff117424',1,'util.h']]],
5
5
  ['falsecond',['falseCond',['../classSVF_1_1CondManager.html#a0ba3cf86743de62bcd5fd38d8166bc90',1,'SVF::CondManager']]],
6
+ ['fastcluster_2ecpp',['fastcluster.cpp',['../fastcluster_8cpp.html',1,'']]],
7
+ ['fastcluster_2eh',['fastcluster.h',['../fastcluster_8h.html',1,'']]],
8
+ ['fastcluster_5fdm_2ecpp_2einc',['fastcluster_dm.cpp.inc',['../fastcluster__dm_8cpp_8inc.html',1,'']]],
9
+ ['fastcluster_5fr_5fdm_2ecpp_2einc',['fastcluster_R_dm.cpp.inc',['../fastcluster__R__dm_8cpp_8inc.html',1,'']]],
10
+ ['fc_5fisnan',['fc_isnan',['../fastcluster_8cpp.html#a8abcd9d66492e761592578e82ce2cba0',1,'fastcluster.cpp']]],
6
11
  ['fenceinst',['FenceInst',['../namespaceSVF.html#a61f0d928e58d4f7e21616f770ae1080b',1,'SVF']]],
7
12
  ['fieldexpand',['fieldExpand',['../classSVF_1_1AndersenSFR.html#a78e48b3c3db39470ab47b92bbc577e7e',1,'SVF::AndersenSFR']]],
8
13
  ['fieldidx',['fieldIdx',['../classSVF_1_1GepValPN.html#a91f678b8dcbac8cc21424074de492569',1,'SVF::GepValPN']]],
@@ -161,6 +161,13 @@ var searchData=
161
161
  ['have_5fsys_5ftime_5fh',['HAVE_SYS_TIME_H',['../util_8c.html#a2aae46056558e9d6fef6380f9678ffe3',1,'util.c']]],
162
162
  ['hbpair',['HBPair',['../classSVF_1_1ForkJoinAnalysis.html#aad3e722ecaa4a39aef0e1cabfa2b8019',1,'SVF::ForkJoinAnalysis']]],
163
163
  ['hcdandersen',['hcdAndersen',['../classSVF_1_1AndersenHCD.html#a2356a7f8215725d2ee035630b1487b05',1,'SVF::AndersenHCD']]],
164
+ ['hclust_5ffast',['hclust_fast',['../fastcluster_8h.html#acccd226cbdf0944b5c9e24c84a4599c9',1,'hclust_fast(int n, double *distmat, int method, int *merge, double *height):&#160;fastcluster.cpp'],['../fastcluster_8cpp.html#acccd226cbdf0944b5c9e24c84a4599c9',1,'hclust_fast(int n, double *distmat, int method, int *merge, double *height):&#160;fastcluster.cpp']]],
165
+ ['hclust_5ffast_5fmethods',['hclust_fast_methods',['../fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dd',1,'fastcluster.h']]],
166
+ ['hclust_5fmethod_5faverage',['HCLUST_METHOD_AVERAGE',['../fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda3ab72664fc61704a1ba46bddbc347115',1,'fastcluster.h']]],
167
+ ['hclust_5fmethod_5fcomplete',['HCLUST_METHOD_COMPLETE',['../fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda44ce22fdfc560f27242e9b8f8e7009f4',1,'fastcluster.h']]],
168
+ ['hclust_5fmethod_5fmedian',['HCLUST_METHOD_MEDIAN',['../fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddaa453b79910d9c6f7f57a179bcdf63474',1,'fastcluster.h']]],
169
+ ['hclust_5fmethod_5fsingle',['HCLUST_METHOD_SINGLE',['../fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddad16cc6362447cc32292c4af4c6fe8024',1,'fastcluster.h']]],
170
+ ['hclust_5fmethod_5fsvf_5fbest',['HCLUST_METHOD_SVF_BEST',['../fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda66ab3fde95842ef6da0dae1f702a9618',1,'fastcluster.h']]],
164
171
  ['head',['head',['../classSVF_1_1List.html#a41d52072edb2b75ab15d67bf2663312a',1,'SVF::List']]],
165
172
  ['headmap',['headmap',['../classSVF_1_1MTASVFGBuilder.html#ac92452c257052706b1cf1737b266eec1',1,'SVF::MTASVFGBuilder']]],
166
173
  ['heap_5fobj',['HEAP_OBJ',['../classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c',1,'SVF::ObjTypeInfo']]],
@@ -1,5 +1,4 @@
1
1
  var searchData=
2
2
  [
3
- ['icfgedgek',['ICFGEdgeK',['../classSVF_1_1ICFGEdge.html#a395c34788e98950bc43e8cb44313e429',1,'SVF::ICFGEdge']]],
4
- ['icfgnodek',['ICFGNodeK',['../classSVF_1_1ICFGNode.html#a74f598c1c86b023680bb2685aa8ab376',1,'SVF::ICFGNode']]]
3
+ ['hclust_5ffast_5fmethods',['hclust_fast_methods',['../fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dd',1,'fastcluster.h']]]
5
4
  ];
@@ -1,5 +1,5 @@
1
1
  var searchData=
2
2
  [
3
- ['leak_5ftype',['LEAK_TYPE',['../classSVF_1_1LeakChecker.html#a42f54433e5ca60928f3c329ab545842d',1,'SVF::LeakChecker']]],
4
- ['lsrelation',['LSRelation',['../classSVF_1_1LocationSet.html#a002a0c8ec2528835d809bf7eb3ebc83f',1,'SVF::LocationSet']]]
3
+ ['icfgedgek',['ICFGEdgeK',['../classSVF_1_1ICFGEdge.html#a395c34788e98950bc43e8cb44313e429',1,'SVF::ICFGEdge']]],
4
+ ['icfgnodek',['ICFGNodeK',['../classSVF_1_1ICFGNode.html#a74f598c1c86b023680bb2685aa8ab376',1,'SVF::ICFGNode']]]
5
5
  ];
@@ -1,6 +1,5 @@
1
1
  var searchData=
2
2
  [
3
- ['mempartition',['MemPartition',['../classSVF_1_1MemSSA.html#ac0797f2ee7b59ae720095a4836533671',1,'SVF::MemSSA']]],
4
- ['memtype',['MEMTYPE',['../classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830',1,'SVF::ObjTypeInfo']]],
5
- ['mutype',['MUTYPE',['../classSVF_1_1MSSAMU.html#a82c66f3e2b7d2d9dd391a947719bda9b',1,'SVF::MSSAMU']]]
3
+ ['leak_5ftype',['LEAK_TYPE',['../classSVF_1_1LeakChecker.html#a42f54433e5ca60928f3c329ab545842d',1,'SVF::LeakChecker']]],
4
+ ['lsrelation',['LSRelation',['../classSVF_1_1LocationSet.html#a002a0c8ec2528835d809bf7eb3ebc83f',1,'SVF::LocationSet']]]
6
5
  ];
@@ -1,9 +1,6 @@
1
1
  var searchData=
2
2
  [
3
- ['pedgek',['PEDGEK',['../classSVF_1_1PAGEdge.html#a79080505b4744aa8806b55215ac2b0f6',1,'SVF::PAGEdge']]],
4
- ['pnodek',['PNODEK',['../classSVF_1_1PAGNode.html#a5cc5327ba68c3f11ed4bef47d89c3dfd',1,'SVF::PAGNode']]],
5
- ['ptaimplty',['PTAImplTy',['../classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d',1,'SVF::PointerAnalysis']]],
6
- ['ptaty',['PTATY',['../classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85',1,'SVF::PointerAnalysis']]],
7
- ['ptbackingtype',['PTBackingType',['../classSVF_1_1BVDataPTAImpl.html#ad76328a8543b02784992afc2d5501d8a',1,'SVF::BVDataPTAImpl']]],
8
- ['ptdataty',['PTDataTy',['../classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848',1,'SVF::PTData']]]
3
+ ['mempartition',['MemPartition',['../classSVF_1_1MemSSA.html#ac0797f2ee7b59ae720095a4836533671',1,'SVF::MemSSA']]],
4
+ ['memtype',['MEMTYPE',['../classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830',1,'SVF::ObjTypeInfo']]],
5
+ ['mutype',['MUTYPE',['../classSVF_1_1MSSAMU.html#a82c66f3e2b7d2d9dd391a947719bda9b',1,'SVF::MSSAMU']]]
9
6
  ];
@@ -1,4 +1,9 @@
1
1
  var searchData=
2
2
  [
3
- ['relationtype',['RELATIONTYPE',['../classSVF_1_1CHGraph.html#a2a1da7f262a2f11653fb583154a93a22',1,'SVF::CHGraph']]]
3
+ ['pedgek',['PEDGEK',['../classSVF_1_1PAGEdge.html#a79080505b4744aa8806b55215ac2b0f6',1,'SVF::PAGEdge']]],
4
+ ['pnodek',['PNODEK',['../classSVF_1_1PAGNode.html#a5cc5327ba68c3f11ed4bef47d89c3dfd',1,'SVF::PAGNode']]],
5
+ ['ptaimplty',['PTAImplTy',['../classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d',1,'SVF::PointerAnalysis']]],
6
+ ['ptaty',['PTATY',['../classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85',1,'SVF::PointerAnalysis']]],
7
+ ['ptbackingtype',['PTBackingType',['../classSVF_1_1BVDataPTAImpl.html#ad76328a8543b02784992afc2d5501d8a',1,'SVF::BVDataPTAImpl']]],
8
+ ['ptdataty',['PTDataTy',['../classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848',1,'SVF::PTData']]]
4
9
  ];
@@ -1,8 +1,4 @@
1
1
  var searchData=
2
2
  [
3
- ['sccedgeflag',['SCCEdgeFlag',['../classSVF_1_1ConstraintNode.html#a6e59b815d784bc1a9437290ff0e1e28c',1,'SVF::ConstraintNode']]],
4
- ['st_5fretval',['st_retval',['../st_8h.html#a0c6a172fd99de7928916e65034ed8b1f',1,'st.h']]],
5
- ['strategy',['Strategy',['../classSVF_1_1NodeIDAllocator.html#a8cf553cd07768aad3f3b91bf3d7c6228',1,'SVF::NodeIDAllocator']]],
6
- ['svfvalkind',['SVFValKind',['../classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860e',1,'SVF::SVFValue']]],
7
- ['symtype',['SYMTYPE',['../namespaceSVF.html#afe243912c982fde7d6beb4d046f9d42b',1,'SVF']]]
3
+ ['relationtype',['RELATIONTYPE',['../classSVF_1_1CHGraph.html#a2a1da7f262a2f11653fb583154a93a22',1,'SVF::CHGraph']]]
8
4
  ];
@@ -1,4 +1,8 @@
1
1
  var searchData=
2
2
  [
3
- ['td_5ftype',['TD_TYPE',['../classSVF_1_1ThreadAPI.html#a38a7516702c55ab418167b7c850516b3',1,'SVF::ThreadAPI']]]
3
+ ['sccedgeflag',['SCCEdgeFlag',['../classSVF_1_1ConstraintNode.html#a6e59b815d784bc1a9437290ff0e1e28c',1,'SVF::ConstraintNode']]],
4
+ ['st_5fretval',['st_retval',['../st_8h.html#a0c6a172fd99de7928916e65034ed8b1f',1,'st.h']]],
5
+ ['strategy',['Strategy',['../classSVF_1_1NodeIDAllocator.html#a8cf553cd07768aad3f3b91bf3d7c6228',1,'SVF::NodeIDAllocator']]],
6
+ ['svfvalkind',['SVFValKind',['../classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860e',1,'SVF::SVFValue']]],
7
+ ['symtype',['SYMTYPE',['../namespaceSVF.html#afe243912c982fde7d6beb4d046f9d42b',1,'SVF']]]
4
8
  ];
@@ -1,7 +1,4 @@
1
1
  var searchData=
2
2
  [
3
- ['valdomain',['ValDomain',['../classSVF_1_1LockAnalysis.html#ac2fbbabca4506e28f706cf54b1614791',1,'SVF::LockAnalysis::ValDomain()'],['../classSVF_1_1ForkJoinAnalysis.html#a8d40e687caf8999369621ed385dfc631',1,'SVF::ForkJoinAnalysis::ValDomain()']]],
4
- ['vfgedgek',['VFGEdgeK',['../classSVF_1_1VFGEdge.html#a156ae6a8b3a033f505c18c6b162e7cf5',1,'SVF::VFGEdge']]],
5
- ['vfgk',['VFGK',['../classSVF_1_1VFG.html#ac2e2f555975063da3fa1932ac35802c6',1,'SVF::VFG']]],
6
- ['vfgnodek',['VFGNodeK',['../classSVF_1_1VFGNode.html#a99a54cf322b0eec3a1ef109ce5f2db75',1,'SVF::VFGNode']]]
3
+ ['td_5ftype',['TD_TYPE',['../classSVF_1_1ThreadAPI.html#a38a7516702c55ab418167b7c850516b3',1,'SVF::ThreadAPI']]]
7
4
  ];
@@ -0,0 +1,26 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html><head><title></title>
3
+ <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
4
+ <meta name="generator" content="Doxygen 1.8.13"/>
5
+ <link rel="stylesheet" type="text/css" href="search.css"/>
6
+ <script type="text/javascript" src="enums_c.js"></script>
7
+ <script type="text/javascript" src="search.js"></script>
8
+ </head>
9
+ <body class="SRPage">
10
+ <div id="SRIndex">
11
+ <div class="SRStatus" id="Loading">Loading...</div>
12
+ <div id="SRResults"></div>
13
+ <script type="text/javascript"><!--
14
+ createResults();
15
+ --></script>
16
+ <div class="SRStatus" id="Searching">Searching...</div>
17
+ <div class="SRStatus" id="NoMatches">No Matches</div>
18
+ <script type="text/javascript"><!--
19
+ document.getElementById("Loading").style.display="none";
20
+ document.getElementById("NoMatches").style.display="none";
21
+ var searchResults = new SearchResults("searchResults");
22
+ searchResults.Search();
23
+ --></script>
24
+ </div>
25
+ </body>
26
+ </html>
@@ -0,0 +1,7 @@
1
+ var searchData=
2
+ [
3
+ ['valdomain',['ValDomain',['../classSVF_1_1LockAnalysis.html#ac2fbbabca4506e28f706cf54b1614791',1,'SVF::LockAnalysis::ValDomain()'],['../classSVF_1_1ForkJoinAnalysis.html#a8d40e687caf8999369621ed385dfc631',1,'SVF::ForkJoinAnalysis::ValDomain()']]],
4
+ ['vfgedgek',['VFGEdgeK',['../classSVF_1_1VFGEdge.html#a156ae6a8b3a033f505c18c6b162e7cf5',1,'SVF::VFGEdge']]],
5
+ ['vfgk',['VFGK',['../classSVF_1_1VFG.html#ac2e2f555975063da3fa1932ac35802c6',1,'SVF::VFG']]],
6
+ ['vfgnodek',['VFGNodeK',['../classSVF_1_1VFGNode.html#a99a54cf322b0eec3a1ef109ce5f2db75',1,'SVF::VFGNode']]]
7
+ ];
@@ -3,5 +3,10 @@ var searchData=
3
3
  ['hare_5fpar_5ffor',['HARE_PAR_FOR',['../classSVF_1_1ThreadAPI.html#a38a7516702c55ab418167b7c850516b3a4690967fd6d32fb82c5de637846a3476',1,'SVF::ThreadAPI']]],
4
4
  ['hareparforedge',['HareParForEdge',['../classSVF_1_1PTACallGraphEdge.html#a9738544725458bb022b8d5f2dbd281f7a17e0d58fd42d0d493087e698d4ecd838',1,'SVF::PTACallGraphEdge']]],
5
5
  ['hasptr_5fobj',['HASPTR_OBJ',['../classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9',1,'SVF::ObjTypeInfo']]],
6
+ ['hclust_5fmethod_5faverage',['HCLUST_METHOD_AVERAGE',['../fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda3ab72664fc61704a1ba46bddbc347115',1,'fastcluster.h']]],
7
+ ['hclust_5fmethod_5fcomplete',['HCLUST_METHOD_COMPLETE',['../fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda44ce22fdfc560f27242e9b8f8e7009f4',1,'fastcluster.h']]],
8
+ ['hclust_5fmethod_5fmedian',['HCLUST_METHOD_MEDIAN',['../fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddaa453b79910d9c6f7f57a179bcdf63474',1,'fastcluster.h']]],
9
+ ['hclust_5fmethod_5fsingle',['HCLUST_METHOD_SINGLE',['../fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddad16cc6362447cc32292c4af4c6fe8024',1,'fastcluster.h']]],
10
+ ['hclust_5fmethod_5fsvf_5fbest',['HCLUST_METHOD_SVF_BEST',['../fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda66ab3fde95842ef6da0dae1f702a9618',1,'fastcluster.h']]],
6
11
  ['heap_5fobj',['HEAP_OBJ',['../classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c',1,'SVF::ObjTypeInfo']]]
7
12
  ];
@@ -1,5 +1,9 @@
1
1
  var searchData=
2
2
  [
3
+ ['fastcluster_2ecpp',['fastcluster.cpp',['../fastcluster_8cpp.html',1,'']]],
4
+ ['fastcluster_2eh',['fastcluster.h',['../fastcluster_8h.html',1,'']]],
5
+ ['fastcluster_5fdm_2ecpp_2einc',['fastcluster_dm.cpp.inc',['../fastcluster__dm_8cpp_8inc.html',1,'']]],
6
+ ['fastcluster_5fr_5fdm_2ecpp_2einc',['fastcluster_R_dm.cpp.inc',['../fastcluster__R__dm_8cpp_8inc.html',1,'']]],
3
7
  ['filechecker_2ecpp',['FileChecker.cpp',['../FileChecker_8cpp.html',1,'']]],
4
8
  ['filechecker_2eh',['FileChecker.h',['../FileChecker_8h.html',1,'']]],
5
9
  ['flowdda_2ecpp',['FlowDDA.cpp',['../FlowDDA_8cpp.html',1,'']]],
@@ -405,6 +405,8 @@ var searchData=
405
405
  ['cuddzdduniquecompare',['cuddZddUniqueCompare',['../cuddInt_8h.html#a5ff41c21e47b8bc8f6d1249de47bbd6d',1,'cuddZddUniqueCompare(int *ptr_x, int *ptr_y):&#160;cuddInt.c'],['../cuddInt_8c.html#a5ff41c21e47b8bc8f6d1249de47bbd6d',1,'cuddZddUniqueCompare(int *ptr_x, int *ptr_y):&#160;cuddInt.c']]],
406
406
  ['cuddzddweakdiv',['cuddZddWeakDiv',['../cuddInt_8h.html#a86e1c6c9f20fb70fdd9579a4c63f448d',1,'cuddZddWeakDiv(DdManager *dd, DdNode *f, DdNode *g):&#160;cuddInt.c'],['../cuddInt_8c.html#a86e1c6c9f20fb70fdd9579a4c63f448d',1,'cuddZddWeakDiv(DdManager *dd, DdNode *f, DdNode *g):&#160;cuddInt.c']]],
407
407
  ['cuddzddweakdivf',['cuddZddWeakDivF',['../cuddInt_8h.html#a24e2e6aa2dffe817f50ebed63f048db1',1,'cuddZddWeakDivF(DdManager *dd, DdNode *f, DdNode *g):&#160;cuddInt.c'],['../cuddInt_8c.html#a24e2e6aa2dffe817f50ebed63f048db1',1,'cuddZddWeakDivF(DdManager *dd, DdNode *f, DdNode *g):&#160;cuddInt.c']]],
408
+ ['cutree_5fcdist',['cutree_cdist',['../fastcluster_8h.html#a8dbbd465af9ed88a066301ac83ce6961',1,'cutree_cdist(int n, const int *merge, double *height, double cdist, int *labels):&#160;fastcluster.cpp'],['../fastcluster_8cpp.html#a8dbbd465af9ed88a066301ac83ce6961',1,'cutree_cdist(int n, const int *merge, double *height, double cdist, int *labels):&#160;fastcluster.cpp']]],
409
+ ['cutree_5fk',['cutree_k',['../fastcluster_8h.html#a4815993b37ce6e177c9838584e4cda24',1,'cutree_k(int n, const int *merge, int nclust, int *labels):&#160;fastcluster.cpp'],['../fastcluster_8cpp.html#a4815993b37ce6e177c9838584e4cda24',1,'cutree_k(int n, const int *merge, int nclust, int *labels):&#160;fastcluster.cpp']]],
408
410
  ['cxtdpitem',['CxtDPItem',['../classSVF_1_1CxtDPItem.html#a673749f246b002b33ca3718a566779ca',1,'SVF::CxtDPItem::CxtDPItem(NodeID c, const ContextCond &amp;cxt)'],['../classSVF_1_1CxtDPItem.html#a1c2b14fd60bd4902bfc520c9ba08c6e8',1,'SVF::CxtDPItem::CxtDPItem(const CxtVar &amp;var)'],['../classSVF_1_1CxtDPItem.html#a53fa464132d5e51e832158d2e928db32',1,'SVF::CxtDPItem::CxtDPItem(const CxtDPItem &amp;dps)']]],
409
411
  ['cxtproc',['CxtProc',['../classSVF_1_1CxtProc.html#ac1ca3a049f6d0f8a0548a153cc903aa0',1,'SVF::CxtProc::CxtProc(const CallStrCxt &amp;c, const SVFFunction *f)'],['../classSVF_1_1CxtProc.html#a25a80c93a6aeb1112a846d6c588364cc',1,'SVF::CxtProc::CxtProc(const CxtProc &amp;ctm)']]],
410
412
  ['cxtsize',['cxtSize',['../classSVF_1_1ContextCond.html#a20f15a1661f928ab80bacaf8f5c497b1',1,'SVF::ContextCond']]],
@@ -1,5 +1,6 @@
1
1
  var searchData=
2
2
  [
3
+ ['fc_5fisnan',['fc_isnan',['../fastcluster_8cpp.html#a8abcd9d66492e761592578e82ce2cba0',1,'fastcluster.cpp']]],
3
4
  ['fieldexpand',['fieldExpand',['../classSVF_1_1AndersenSFR.html#a78e48b3c3db39470ab47b92bbc577e7e',1,'SVF::AndersenSFR']]],
4
5
  ['fieldinfo',['FieldInfo',['../classSVF_1_1FieldInfo.html#a167925e2aadbcdbc3017c6dc98cb83b4',1,'SVF::FieldInfo']]],
5
6
  ['fifoworklist',['FIFOWorkList',['../classSVF_1_1FIFOWorkList.html#a1d3ab8bea4d8f94b935d1bef3cf0c4ac',1,'SVF::FIFOWorkList']]],
@@ -130,5 +130,6 @@ var searchData=
130
130
  ['hasvfedge',['hasVFEdge',['../classSVF_1_1VFPathCond.html#a64edbab728287b8a263ea25670671724',1,'SVF::VFPathCond']]],
131
131
  ['hasvfgnode',['hasVFGNode',['../classSVF_1_1VFG.html#a30eb9d717ad5bc8a9109a7bdef38f4a1',1,'SVF::VFG']]],
132
132
  ['hasvfgnodes',['hasVFGNodes',['../classSVF_1_1VFG.html#a76af43e28630eb56a1aa5971f516d43d',1,'SVF::VFG']]],
133
+ ['hclust_5ffast',['hclust_fast',['../fastcluster_8h.html#acccd226cbdf0944b5c9e24c84a4599c9',1,'hclust_fast(int n, double *distmat, int method, int *merge, double *height):&#160;fastcluster.cpp'],['../fastcluster_8cpp.html#acccd226cbdf0944b5c9e24c84a4599c9',1,'hclust_fast(int n, double *distmat, int method, int *merge, double *height):&#160;fastcluster.cpp']]],
133
134
  ['heapallocatorviaindcall',['heapAllocatorViaIndCall',['../classSVF_1_1Andersen.html#a7b1b9e9b25b5643440aca77e23a8de07',1,'SVF::Andersen']]]
134
135
  ];
@@ -7,7 +7,7 @@ var indexSectionsWithContent =
7
7
  4: "abcdefghijlmnoprstuvwz~",
8
8
  5: "_abcdefghijklmnopqrstuvwxyz",
9
9
  6: "abcdefghijklmnoprstuvw",
10
- 7: "acdeilmprstv",
10
+ 7: "acdehilmprstv",
11
11
  8: "abcdefghilmnoprstuv",
12
12
  9: "dflmoprstv",
13
13
  10: "abcdefhjklmnprstuvwz"
@@ -0,0 +1,13 @@
1
+ Copyright:
2
+ * fastcluster_dm.cpp & fastcluster_R_dm.cpp:
3
+ © 2011 Daniel Müllner <http://danifold.net>
4
+ * fastcluster.(h|cpp) & demo.cpp & plotresult.r:
5
+ © 2018 Christoph Dalitz <http://www.hsnr.de/ipattern/>
6
+ All rights reserved.
7
+
8
+ Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
9
+
10
+ * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
11
+ * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
12
+
13
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -0,0 +1,79 @@
1
+ //
2
+ // C++ standalone verion of fastcluster by Daniel Muellner
3
+ //
4
+ // Copyright: Daniel Muellner, 2011
5
+ // Christoph Dalitz, 2020
6
+ // License: BSD style license
7
+ // (see the file LICENSE for details)
8
+ //
9
+
10
+ #ifndef fastclustercpp_H
11
+ #define fastclustercpp_H
12
+
13
+ //
14
+ // Assigns cluster labels (0, ..., nclust-1) to the n points such
15
+ // that the cluster result is split into nclust clusters.
16
+ //
17
+ // Input arguments:
18
+ // n = number of observables
19
+ // merge = clustering result in R format
20
+ // nclust = number of clusters
21
+ // Output arguments:
22
+ // labels = allocated integer array of size n for result
23
+ //
24
+ void cutree_k(int n, const int* merge, int nclust, int* labels);
25
+
26
+ //
27
+ // Assigns cluster labels (0, ..., nclust-1) to the n points such
28
+ // that the hierarchical clsutering is stopped at cluster distance cdist
29
+ //
30
+ // Input arguments:
31
+ // n = number of observables
32
+ // merge = clustering result in R format
33
+ // height = cluster distance at each merge step
34
+ // cdist = cutoff cluster distance
35
+ // Output arguments:
36
+ // labels = allocated integer array of size n for result
37
+ //
38
+ void cutree_cdist(int n, const int* merge, double* height, double cdist, int* labels);
39
+
40
+ //
41
+ // Hierarchical clustering with one of Daniel Muellner's fast algorithms
42
+ //
43
+ // Input arguments:
44
+ // n = number of observables
45
+ // distmat = condensed distance matrix, i.e. an n*(n-1)/2 array representing
46
+ // the upper triangle (without diagonal elements) of the distance
47
+ // matrix, e.g. for n=4:
48
+ // d00 d01 d02 d03
49
+ // d10 d11 d12 d13 -> d01 d02 d03 d12 d13 d23
50
+ // d20 d21 d22 d23
51
+ // d30 d31 d32 d33
52
+ // method = cluster metric (see enum hclust_fast_methods)
53
+ // Output arguments:
54
+ // merge = allocated (n-1)x2 matrix (2*(n-1) array) for storing result.
55
+ // Result follows R hclust convention:
56
+ // - observabe indices start with one
57
+ // - merge[i][] contains the merged nodes in step i
58
+ // - merge[i][j] is negative when the node is an atom
59
+ // height = allocated (n-1) array with distances at each merge step
60
+ // Return code:
61
+ // 0 = ok
62
+ // 1 = invalid method
63
+ //
64
+ int hclust_fast(int n, double* distmat, int method, int* merge, double* height);
65
+ enum hclust_fast_methods {
66
+ // single link with the minimum spanning tree algorithm (Rohlf, 1973)
67
+ HCLUST_METHOD_SINGLE = 0,
68
+ // complete link with the nearest-neighbor-chain algorithm (Murtagh, 1984)
69
+ HCLUST_METHOD_COMPLETE = 1,
70
+ // omplete link with the nearest-neighbor-chain algorithm (Murtagh, 1984)
71
+ HCLUST_METHOD_AVERAGE = 2,
72
+ // median link with the generic algorithm (Müllner, 2011)
73
+ HCLUST_METHOD_MEDIAN = 3,
74
+ // To indicate to try all methods and pick the best.
75
+ HCLUST_METHOD_SVF_BEST = 4
76
+ };
77
+
78
+
79
+ #endif
@@ -19,7 +19,10 @@ file (GLOB SOURCES
19
19
  WPA/*.cpp
20
20
  MTA/*.cpp
21
21
  SABER/*.cpp
22
- DDA/*.cpp)
22
+ DDA/*.cpp
23
+ FastCluster/*.cpp
24
+ )
25
+
23
26
  add_llvm_library(Svf STATIC ${SOURCES} LINK_LIBS Cudd ${Z3_LIBRARIES})
24
27
 
25
28
  link_directories(${CMAKE_BINARY_DIR}/lib/Cudd)
@@ -0,0 +1,13 @@
1
+ Copyright:
2
+ * fastcluster_dm.cpp & fastcluster_R_dm.cpp:
3
+ © 2011 Daniel Müllner <http://danifold.net>
4
+ * fastcluster.(h|cpp) & demo.cpp & plotresult.r:
5
+ © 2018 Christoph Dalitz <http://www.hsnr.de/ipattern/>
6
+ All rights reserved.
7
+
8
+ Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
9
+
10
+ * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
11
+ * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
12
+
13
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.