svf-tools 1.0.821 → 1.0.823

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 (37) hide show
  1. package/SVF-doxygen/html/AccessPath_8cpp_source.html +130 -125
  2. package/SVF-doxygen/html/AccessPath_8h_source.html +5 -5
  3. package/SVF-doxygen/html/CFGrammar_8cpp_source.html +3 -3
  4. package/SVF-doxygen/html/CommandLine_8h_source.html +1 -1
  5. package/SVF-doxygen/html/ExtAPI_8cpp.html +1 -1
  6. package/SVF-doxygen/html/ExtAPI_8cpp_source.html +2 -2
  7. package/SVF-doxygen/html/SVFFileSystem_8cpp_source.html +1 -1
  8. package/SVF-doxygen/html/SVFG_8cpp_source.html +5 -5
  9. package/SVF-doxygen/html/SVFIR2ItvExeState_8cpp_source.html +571 -567
  10. package/SVF-doxygen/html/SVFIR2ItvExeState_8h_source.html +14 -14
  11. package/SVF-doxygen/html/SVFUtil_8cpp_source.html +1 -1
  12. package/SVF-doxygen/html/VFG_8cpp_source.html +4 -5
  13. package/SVF-doxygen/html/cJSON_8cpp.html +2 -2
  14. package/SVF-doxygen/html/cJSON_8cpp_source.html +2 -2
  15. package/SVF-doxygen/html/classOption.html +1 -1
  16. package/SVF-doxygen/html/classSVF_1_1AccessPath.html +123 -118
  17. package/SVF-doxygen/html/classSVF_1_1ExtAPI.html +1 -1
  18. package/SVF-doxygen/html/classSVF_1_1GrammarBase.html +3 -3
  19. package/SVF-doxygen/html/classSVF_1_1SVFG.html +5 -5
  20. package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState.html +544 -540
  21. package/SVF-doxygen/html/classSVF_1_1SVFIRReader.html +1 -1
  22. package/SVF-doxygen/html/classSVF_1_1VFG.html +4 -5
  23. package/SVF-doxygen/html/extapi_8c.html +527 -450
  24. package/SVF-doxygen/html/extapi_8c_source.html +1218 -1177
  25. package/SVF-doxygen/html/globals.html +1 -0
  26. package/SVF-doxygen/html/globals_func.html +1 -1
  27. package/SVF-doxygen/html/namespaceSVF_1_1SVFUtil.html +1 -1
  28. package/SVF-doxygen/html/search/all_0.js +1 -1
  29. package/SVF-doxygen/html/search/functions_0.js +1 -1
  30. package/SVF-doxygen/html/svf-ex_8cpp.html +11 -11
  31. package/SVF-doxygen/html/svf-ex_8cpp_source.html +11 -11
  32. package/package.json +1 -1
  33. package/svf/lib/AbstractExecution/SVFIR2ItvExeState.cpp +4 -0
  34. package/svf/lib/Graphs/SVFG.cpp +4 -4
  35. package/svf/lib/Graphs/VFG.cpp +4 -4
  36. package/svf/lib/MemoryModel/AccessPath.cpp +5 -0
  37. package/svf-llvm/lib/extapi.c +61 -20
@@ -67,6 +67,7 @@ $(function() {
67
67
  <li>__attribute__()
68
68
  : <a class="el" href="extapi_8c.html#a3a547ecc92598d2d029246dab1630428">extapi.c</a>
69
69
  , <a class="el" href="SVFValue_8cpp.html#a81025d840e81f5c9a9c6b70a5377ac6f">SVFValue.cpp</a>
70
+ , <a class="el" href="extapi_8c.html#a71fa8bd2eab45f458251611d08c1db7c">extapi.c</a>
70
71
  </li>
71
72
  <li>__ctype_b_loc()
72
73
  : <a class="el" href="extapi_8c.html#ab9defe9717c79e55af6a95e6ce7addb2">extapi.c</a>
@@ -67,7 +67,7 @@ $(function() {
67
67
  <li>__attribute__()
68
68
  : <a class="el" href="extapi_8c.html#a3a547ecc92598d2d029246dab1630428">extapi.c</a>
69
69
  , <a class="el" href="SVFValue_8cpp.html#a81025d840e81f5c9a9c6b70a5377ac6f">SVFValue.cpp</a>
70
- , <a class="el" href="extapi_8c.html#a2053c6691b7c7b2e199d342ac2cbdc54">extapi.c</a>
70
+ , <a class="el" href="extapi_8c.html#a71fa8bd2eab45f458251611d08c1db7c">extapi.c</a>
71
71
  </li>
72
72
  <li>__ctype_b_loc()
73
73
  : <a class="el" href="extapi_8c.html#ab9defe9717c79e55af6a95e6ce7addb2">extapi.c</a>
@@ -4045,7 +4045,7 @@ template&lt;typename... Ts&gt; </div>
4045
4045
  </div>
4046
4046
  </div><!-- contents -->
4047
4047
  <div class="ttc" id="aSVFUtil_8cpp_html_a326cbc9ef8d75aa44a591bf476c9835b"><div class="ttname"><a href="SVFUtil_8cpp.html#a326cbc9ef8d75aa44a591bf476c9835b">KPUR</a></div><div class="ttdeci">#define KPUR</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00044">SVFUtil.cpp:44</a></div></div>
4048
- <div class="ttc" id="aextapi_8c_html_a4a710d86541afc6b7dafddcdb4b1c94f"><div class="ttname"><a href="extapi_8c.html#a4a710d86541afc6b7dafddcdb4b1c94f">strstr</a></div><div class="ttdeci">char * strstr(const char *haystack, const char *needle)</div><div class="ttdef"><b>Definition:</b> <a href="extapi_8c_source.html#l00724">extapi.c:724</a></div></div>
4048
+ <div class="ttc" id="aextapi_8c_html_a4a710d86541afc6b7dafddcdb4b1c94f"><div class="ttname"><a href="extapi_8c.html#a4a710d86541afc6b7dafddcdb4b1c94f">strstr</a></div><div class="ttdeci">char * strstr(const char *haystack, const char *needle)</div><div class="ttdef"><b>Definition:</b> <a href="extapi_8c_source.html#l00765">extapi.c:765</a></div></div>
4049
4049
  <div class="ttc" id="anamespaceSVF_html_aa7b6a13e52671de8524b130738aeb564"><div class="ttname"><a href="namespaceSVF.html#aa7b6a13e52671de8524b130738aeb564">SVF::NodeBS</a></div><div class="ttdeci">SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00063">SVFType.h:63</a></div></div>
4050
4050
  <div class="ttc" id="aSVFUtil_8cpp_html_a137aa83ec74421d226a90c92ec032ac9"><div class="ttname"><a href="SVFUtil_8cpp.html#a137aa83ec74421d226a90c92ec032ac9">KNRM</a></div><div class="ttdeci">#define KNRM</div><div class="ttdoc">Color for output format.</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00039">SVFUtil.cpp:39</a></div></div>
4051
4051
  <div class="ttc" id="aclassSVF_1_1SVFCallInst_html"><div class="ttname"><a href="classSVF_1_1SVFCallInst.html">SVF::SVFCallInst</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00694">SVFValue.h:694</a></div></div>
@@ -1,6 +1,6 @@
1
1
  var searchData=
2
2
  [
3
- ['_5f_5fattribute_5f_5f_0',['__attribute__',['../extapi_8c.html#a3a547ecc92598d2d029246dab1630428',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:Arg0&quot;))):&#160;extapi.c'],['../extapi_8c.html#a0d2d52b60870b500c2b4844a0ee2c90d',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#afdab9dcd0a3e6185c17c11ab0d5fc968',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:Arg0*Arg1&quot;))):&#160;extapi.c'],['../extapi_8c.html#afc1cad7cb40c599988237bf687c00929',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:Arg1&quot;))):&#160;extapi.c'],['../extapi_8c.html#a71fa8bd2eab45f458251611d08c1db7c',1,'__attribute__((annotate(&quot;REALLOC_RET&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#a1e7f01f19313d2c4c4f9b18a02574c93',1,'__attribute__((annotate(&quot;REALLOC_RET&quot;), annotate(&quot;AllocSize:Arg1&quot;))):&#160;extapi.c'],['../extapi_8c.html#a2053c6691b7c7b2e199d342ac2cbdc54',1,'__attribute__((annotate(&quot;REALLOC_RET&quot;), annotate(&quot;AllocSize:Arg1*Arg2&quot;))):&#160;extapi.c'],['../extapi_8c.html#a1a9dbf9c1aae63329912afd2c7e2cf4c',1,'__attribute__((annotate(&quot;ALLOC_ARG0&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#acdc4a948c527401ff9433498a9757f03',1,'__attribute__((annotate(&quot;ALLOC_ARG0&quot;), annotate(&quot;AllocSize:Arg2&quot;))):&#160;extapi.c'],['../extapi_8c.html#a06951362ddd7447558e892464d726187',1,'__attribute__((annotate(&quot;ALLOC_ARG1&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#a4a246cca542ae318b758081d5e0b41fe',1,'__attribute__((annotate(&quot;ALLOC_ARG2&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#a559e62edd847a597c92f3acd9b8b6ba4',1,'__attribute__((annotate(&quot;MEMCPY&quot;))):&#160;extapi.c'],['../extapi_8c.html#adcb0d3ff88a32d766b60a847f84871ec',1,'__attribute__((annotate(&quot;MEMSET&quot;))):&#160;extapi.c'],['../extapi_8c.html#ad32a60532b1ae70c19221d180ade9b74',1,'__attribute__((annotate(&quot;OVERWRITE&quot;))):&#160;extapi.c'],['../namespaceSVF.html#a49a1be0ba69daf3b4f695f41ad812825',1,'SVF::__attribute__()'],['../SVFValue_8cpp.html#a81025d840e81f5c9a9c6b70a5377ac6f',1,'__attribute__():&#160;SVFValue.cpp']]],
3
+ ['_5f_5fattribute_5f_5f_0',['__attribute__',['../extapi_8c.html#a3a547ecc92598d2d029246dab1630428',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:Arg0&quot;))):&#160;extapi.c'],['../extapi_8c.html#a0d2d52b60870b500c2b4844a0ee2c90d',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#afdab9dcd0a3e6185c17c11ab0d5fc968',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:Arg0*Arg1&quot;))):&#160;extapi.c'],['../extapi_8c.html#afc1cad7cb40c599988237bf687c00929',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:Arg1&quot;))):&#160;extapi.c'],['../extapi_8c.html#a71fa8bd2eab45f458251611d08c1db7c',1,'__attribute__((annotate(&quot;REALLOC_RET&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#a1e7f01f19313d2c4c4f9b18a02574c93',1,'__attribute__((annotate(&quot;REALLOC_RET&quot;), annotate(&quot;AllocSize:Arg1&quot;))):&#160;extapi.c'],['../extapi_8c.html#a2053c6691b7c7b2e199d342ac2cbdc54',1,'__attribute__((annotate(&quot;REALLOC_RET&quot;), annotate(&quot;AllocSize:Arg1*Arg2&quot;))):&#160;extapi.c'],['../extapi_8c.html#a1a9dbf9c1aae63329912afd2c7e2cf4c',1,'__attribute__((annotate(&quot;ALLOC_ARG0&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#acdc4a948c527401ff9433498a9757f03',1,'__attribute__((annotate(&quot;ALLOC_ARG0&quot;), annotate(&quot;AllocSize:Arg2&quot;))):&#160;extapi.c'],['../extapi_8c.html#a06951362ddd7447558e892464d726187',1,'__attribute__((annotate(&quot;ALLOC_ARG1&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#a4a246cca542ae318b758081d5e0b41fe',1,'__attribute__((annotate(&quot;ALLOC_ARG2&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#a3a3854aa9903192e5096c796eb724635',1,'__attribute__((annotate(&quot;MEMCPY&quot;), annotate(&quot;BUF_CHECK:Arg0, Arg2&quot;), annotate(&quot;BUF_CHECK:Arg1, Arg2&quot;))):&#160;extapi.c'],['../extapi_8c.html#a559e62edd847a597c92f3acd9b8b6ba4',1,'__attribute__((annotate(&quot;MEMCPY&quot;))):&#160;extapi.c'],['../extapi_8c.html#a09f0eaec0f51d66148f8b81ea44e9f2a',1,'__attribute__((annotate(&quot;MEMSET&quot;), annotate(&quot;BUF_CHECK:Arg0, Arg2&quot;))):&#160;extapi.c'],['../extapi_8c.html#a9d2100a12f5bc99550774a0a81e38acc',1,'__attribute__((annotate(&quot;MEMCPY&quot;), annotate(&quot;STRCPY&quot;))):&#160;extapi.c'],['../extapi_8c.html#afdbe8844c8111965c0f95562e224d744',1,'__attribute__((annotate(&quot;MEMCPY&quot;), annotate(&quot;STRCAT&quot;))):&#160;extapi.c'],['../extapi_8c.html#ad32a60532b1ae70c19221d180ade9b74',1,'__attribute__((annotate(&quot;OVERWRITE&quot;))):&#160;extapi.c'],['../namespaceSVF.html#a49a1be0ba69daf3b4f695f41ad812825',1,'SVF::__attribute__()'],['../SVFValue_8cpp.html#a81025d840e81f5c9a9c6b70a5377ac6f',1,'__attribute__():&#160;SVFValue.cpp']]],
4
4
  ['_5f_5fctype_5fb_5floc_1',['__ctype_b_loc',['../extapi_8c.html#ab9defe9717c79e55af6a95e6ce7addb2',1,'extapi.c']]],
5
5
  ['_5f_5fctype_5ftolower_5floc_2',['__ctype_tolower_loc',['../extapi_8c.html#ab80118dda05e64167867c0a7ee84bec7',1,'extapi.c']]],
6
6
  ['_5f_5fctype_5ftoupper_5floc_3',['__ctype_toupper_loc',['../extapi_8c.html#a45737a9e57d118eb6f6298e4411e3d3d',1,'extapi.c']]],
@@ -1,6 +1,6 @@
1
1
  var searchData=
2
2
  [
3
- ['_5f_5fattribute_5f_5f_7270',['__attribute__',['../extapi_8c.html#a3a547ecc92598d2d029246dab1630428',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:Arg0&quot;))):&#160;extapi.c'],['../extapi_8c.html#a0d2d52b60870b500c2b4844a0ee2c90d',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#afdab9dcd0a3e6185c17c11ab0d5fc968',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:Arg0*Arg1&quot;))):&#160;extapi.c'],['../extapi_8c.html#afc1cad7cb40c599988237bf687c00929',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:Arg1&quot;))):&#160;extapi.c'],['../extapi_8c.html#a71fa8bd2eab45f458251611d08c1db7c',1,'__attribute__((annotate(&quot;REALLOC_RET&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#a1e7f01f19313d2c4c4f9b18a02574c93',1,'__attribute__((annotate(&quot;REALLOC_RET&quot;), annotate(&quot;AllocSize:Arg1&quot;))):&#160;extapi.c'],['../extapi_8c.html#a2053c6691b7c7b2e199d342ac2cbdc54',1,'__attribute__((annotate(&quot;REALLOC_RET&quot;), annotate(&quot;AllocSize:Arg1*Arg2&quot;))):&#160;extapi.c'],['../extapi_8c.html#a1a9dbf9c1aae63329912afd2c7e2cf4c',1,'__attribute__((annotate(&quot;ALLOC_ARG0&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#acdc4a948c527401ff9433498a9757f03',1,'__attribute__((annotate(&quot;ALLOC_ARG0&quot;), annotate(&quot;AllocSize:Arg2&quot;))):&#160;extapi.c'],['../extapi_8c.html#a06951362ddd7447558e892464d726187',1,'__attribute__((annotate(&quot;ALLOC_ARG1&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#a4a246cca542ae318b758081d5e0b41fe',1,'__attribute__((annotate(&quot;ALLOC_ARG2&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#a559e62edd847a597c92f3acd9b8b6ba4',1,'__attribute__((annotate(&quot;MEMCPY&quot;))):&#160;extapi.c'],['../extapi_8c.html#adcb0d3ff88a32d766b60a847f84871ec',1,'__attribute__((annotate(&quot;MEMSET&quot;))):&#160;extapi.c'],['../extapi_8c.html#ad32a60532b1ae70c19221d180ade9b74',1,'__attribute__((annotate(&quot;OVERWRITE&quot;))):&#160;extapi.c'],['../namespaceSVF.html#a49a1be0ba69daf3b4f695f41ad812825',1,'SVF::__attribute__()'],['../SVFValue_8cpp.html#a81025d840e81f5c9a9c6b70a5377ac6f',1,'__attribute__():&#160;SVFValue.cpp']]],
3
+ ['_5f_5fattribute_5f_5f_7270',['__attribute__',['../extapi_8c.html#a3a547ecc92598d2d029246dab1630428',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:Arg0&quot;))):&#160;extapi.c'],['../extapi_8c.html#a0d2d52b60870b500c2b4844a0ee2c90d',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#afdab9dcd0a3e6185c17c11ab0d5fc968',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:Arg0*Arg1&quot;))):&#160;extapi.c'],['../extapi_8c.html#afc1cad7cb40c599988237bf687c00929',1,'__attribute__((annotate(&quot;ALLOC_RET&quot;), annotate(&quot;AllocSize:Arg1&quot;))):&#160;extapi.c'],['../extapi_8c.html#a71fa8bd2eab45f458251611d08c1db7c',1,'__attribute__((annotate(&quot;REALLOC_RET&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#a1e7f01f19313d2c4c4f9b18a02574c93',1,'__attribute__((annotate(&quot;REALLOC_RET&quot;), annotate(&quot;AllocSize:Arg1&quot;))):&#160;extapi.c'],['../extapi_8c.html#a2053c6691b7c7b2e199d342ac2cbdc54',1,'__attribute__((annotate(&quot;REALLOC_RET&quot;), annotate(&quot;AllocSize:Arg1*Arg2&quot;))):&#160;extapi.c'],['../extapi_8c.html#a1a9dbf9c1aae63329912afd2c7e2cf4c',1,'__attribute__((annotate(&quot;ALLOC_ARG0&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#acdc4a948c527401ff9433498a9757f03',1,'__attribute__((annotate(&quot;ALLOC_ARG0&quot;), annotate(&quot;AllocSize:Arg2&quot;))):&#160;extapi.c'],['../extapi_8c.html#a06951362ddd7447558e892464d726187',1,'__attribute__((annotate(&quot;ALLOC_ARG1&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#a4a246cca542ae318b758081d5e0b41fe',1,'__attribute__((annotate(&quot;ALLOC_ARG2&quot;), annotate(&quot;AllocSize:UNKNOWN&quot;))):&#160;extapi.c'],['../extapi_8c.html#a3a3854aa9903192e5096c796eb724635',1,'__attribute__((annotate(&quot;MEMCPY&quot;), annotate(&quot;BUF_CHECK:Arg0, Arg2&quot;), annotate(&quot;BUF_CHECK:Arg1, Arg2&quot;))):&#160;extapi.c'],['../extapi_8c.html#a559e62edd847a597c92f3acd9b8b6ba4',1,'__attribute__((annotate(&quot;MEMCPY&quot;))):&#160;extapi.c'],['../extapi_8c.html#a09f0eaec0f51d66148f8b81ea44e9f2a',1,'__attribute__((annotate(&quot;MEMSET&quot;), annotate(&quot;BUF_CHECK:Arg0, Arg2&quot;))):&#160;extapi.c'],['../extapi_8c.html#a9d2100a12f5bc99550774a0a81e38acc',1,'__attribute__((annotate(&quot;MEMCPY&quot;), annotate(&quot;STRCPY&quot;))):&#160;extapi.c'],['../extapi_8c.html#afdbe8844c8111965c0f95562e224d744',1,'__attribute__((annotate(&quot;MEMCPY&quot;), annotate(&quot;STRCAT&quot;))):&#160;extapi.c'],['../extapi_8c.html#ad32a60532b1ae70c19221d180ade9b74',1,'__attribute__((annotate(&quot;OVERWRITE&quot;))):&#160;extapi.c'],['../namespaceSVF.html#a49a1be0ba69daf3b4f695f41ad812825',1,'SVF::__attribute__()'],['../SVFValue_8cpp.html#a81025d840e81f5c9a9c6b70a5377ac6f',1,'__attribute__():&#160;SVFValue.cpp']]],
4
4
  ['_5f_5fctype_5fb_5floc_7271',['__ctype_b_loc',['../extapi_8c.html#ab9defe9717c79e55af6a95e6ce7addb2',1,'extapi.c']]],
5
5
  ['_5f_5fctype_5ftolower_5floc_7272',['__ctype_tolower_loc',['../extapi_8c.html#ab80118dda05e64167867c0a7ee84bec7',1,'extapi.c']]],
6
6
  ['_5f_5fctype_5ftoupper_5floc_7273',['__ctype_toupper_loc',['../extapi_8c.html#a45737a9e57d118eb6f6298e4411e3d3d',1,'extapi.c']]],
@@ -478,7 +478,7 @@ Functions</h2></td></tr>
478
478
  </div>
479
479
  </div><!-- contents -->
480
480
  <div class="ttc" id="aclassSVF_1_1FIFOWorkList_html_a0df409a67428e528321869d201f2a474"><div class="ttname"><a href="classSVF_1_1FIFOWorkList.html#a0df409a67428e528321869d201f2a474">SVF::FIFOWorkList::push</a></div><div class="ttdeci">bool push(const Data &amp;data)</div><div class="ttdef"><b>Definition:</b> <a href="WorkList_8h_source.html#l00165">WorkList.h:165</a></div></div>
481
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_adb82778157e0f5e7a2ea4d803bcd07ad"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#adb82778157e0f5e7a2ea4d803bcd07ad">SVF::SVFIR2ItvExeState::translateCall</a></div><div class="ttdeci">void translateCall(const CallPE *callPE)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00960">SVFIR2ItvExeState.cpp:960</a></div></div>
481
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_adb82778157e0f5e7a2ea4d803bcd07ad"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#adb82778157e0f5e7a2ea4d803bcd07ad">SVF::SVFIR2ItvExeState::translateCall</a></div><div class="ttdeci">void translateCall(const CallPE *callPE)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00964">SVFIR2ItvExeState.cpp:964</a></div></div>
482
482
  <div class="ttc" id="aclassSVF_1_1CopyStmt_html"><div class="ttname"><a href="classSVF_1_1CopyStmt.html">SVF::CopyStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00351">SVFStatements.h:351</a></div></div>
483
483
  <div class="ttc" id="aclassSVF_1_1FIFOWorkList_html_a8fa72918fce7e9c0b2dc34b683a797c6"><div class="ttname"><a href="classSVF_1_1FIFOWorkList.html#a8fa72918fce7e9c0b2dc34b683a797c6">SVF::FIFOWorkList::pop</a></div><div class="ttdeci">Data pop()</div><div class="ttdef"><b>Definition:</b> <a href="WorkList_8h_source.html#l00200">WorkList.h:200</a></div></div>
484
484
  <div class="ttc" id="aclassSVF_1_1PointsTo_1_1PointsToIterator_html"><div class="ttname"><a href="classSVF_1_1PointsTo_1_1PointsToIterator.html">SVF::PointsTo::PointsToIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00181">PointsTo.h:181</a></div></div>
@@ -487,11 +487,11 @@ Functions</h2></td></tr>
487
487
  <div class="ttc" id="aclassSVF_1_1ICFGEdge_html"><div class="ttname"><a href="classSVF_1_1ICFGEdge.html">SVF::ICFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00044">ICFGEdge.h:44</a></div></div>
488
488
  <div class="ttc" id="aclassSVF_1_1PhiStmt_html"><div class="ttname"><a href="classSVF_1_1PhiStmt.html">SVF::PhiStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00748">SVFStatements.h:748</a></div></div>
489
489
  <div class="ttc" id="aclassSVF_1_1SVFG_html_a8e7a945f4266e8dc7dcfff2ad6494bfb"><div class="ttname"><a href="classSVF_1_1SVFG.html#a8e7a945f4266e8dc7dcfff2ad6494bfb">SVF::SVFG::getDefSVFGNode</a></div><div class="ttdeci">const SVFGNode * getDefSVFGNode(const PAGNode *pagNode) const</div><div class="ttdoc">Given a pagNode, return its definition site.</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00170">SVFG.h:170</a></div></div>
490
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a604126e59364cb56b44a88cae5afbfb8"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a604126e59364cb56b44a88cae5afbfb8">SVF::SVFIR2ItvExeState::translateSelect</a></div><div class="ttdeci">void translateSelect(const SelectStmt *select)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00898">SVFIR2ItvExeState.cpp:898</a></div></div>
490
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a604126e59364cb56b44a88cae5afbfb8"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a604126e59364cb56b44a88cae5afbfb8">SVF::SVFIR2ItvExeState::translateSelect</a></div><div class="ttdeci">void translateSelect(const SelectStmt *select)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00902">SVFIR2ItvExeState.cpp:902</a></div></div>
491
491
  <div class="ttc" id="aclassSVF_1_1IRGraph_html_a43514023a4f4d0c32f536f51443b0efc"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a43514023a4f4d0c32f536f51443b0efc">SVF::IRGraph::getValueNode</a></div><div class="ttdeci">NodeID getValueNode(const SVFValue *V)</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00138">IRGraph.h:138</a></div></div>
492
492
  <div class="ttc" id="anamespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set&lt; Key, Hash, KeyEqual, Allocator &gt; Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00097">SVFType.h:97</a></div></div>
493
493
  <div class="ttc" id="aclassSVF_1_1ICFGNode_html_a6c68f52dd90728073fb79141df9b0661"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#a6c68f52dd90728073fb79141df9b0661">SVF::ICFGNode::getSVFStmts</a></div><div class="ttdeci">const SVFStmtList &amp; getSVFStmts() const</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00127">ICFGNode.h:127</a></div></div>
494
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_af7f42ee51b03b1aaaee18f10eec0c2b9"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#af7f42ee51b03b1aaaee18f10eec0c2b9">SVF::SVFIR2ItvExeState::translateAddr</a></div><div class="ttdeci">void translateAddr(const AddrStmt *addr)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00499">SVFIR2ItvExeState.cpp:499</a></div></div>
494
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_af7f42ee51b03b1aaaee18f10eec0c2b9"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#af7f42ee51b03b1aaaee18f10eec0c2b9">SVF::SVFIR2ItvExeState::translateAddr</a></div><div class="ttdeci">void translateAddr(const AddrStmt *addr)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00503">SVFIR2ItvExeState.cpp:503</a></div></div>
495
495
  <div class="ttc" id="aclassSVF_1_1SelectStmt_html"><div class="ttname"><a href="classSVF_1_1SelectStmt.html">SVF::SelectStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00816">SVFStatements.h:816</a></div></div>
496
496
  <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_a2f8e91c075d90be66412a079fe73e936"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a2f8e91c075d90be66412a079fe73e936">SVF::LLVMModuleSet::releaseLLVMModuleSet</a></div><div class="ttdeci">static void releaseLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00108">LLVMModule.h:108</a></div></div>
497
497
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00174">PointerAnalysis.h:174</a></div></div>
@@ -499,32 +499,32 @@ Functions</h2></td></tr>
499
499
  <div class="ttc" id="asvf-ex_8cpp_html_a19f3fe331a1e7050a513672a91743b96"><div class="ttname"><a href="svf-ex_8cpp.html#a19f3fe331a1e7050a513672a91743b96">traverseOnICFG</a></div><div class="ttdeci">void traverseOnICFG(ICFG *icfg, const ICFGNode *iNode)</div><div class="ttdef"><b>Definition:</b> <a href="svf-ex_8cpp_source.html#l00141">svf-ex.cpp:141</a></div></div>
500
500
  <div class="ttc" id="aclassSVF_1_1CmpStmt_html"><div class="ttname"><a href="classSVF_1_1CmpStmt.html">SVF::CmpStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00871">SVFStatements.h:871</a></div></div>
501
501
  <div class="ttc" id="aclassSVF_1_1VFG_html"><div class="ttname"><a href="classSVF_1_1VFG.html">SVF::VFG</a></div><div class="ttdef"><b>Definition:</b> <a href="VFG_8h_source.html#l00050">VFG.h:50</a></div></div>
502
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aac5cc8767eb750bf121f1897788dee24"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aac5cc8767eb750bf121f1897788dee24">SVF::SVFIR2ItvExeState::translateCmp</a></div><div class="ttdeci">void translateCmp(const CmpStmt *cmp)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00587">SVFIR2ItvExeState.cpp:587</a></div></div>
503
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aa274b5b4e18c28ec8035ca1b073aacfc"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aa274b5b4e18c28ec8035ca1b073aacfc">SVF::SVFIR2ItvExeState::translateGep</a></div><div class="ttdeci">void translateGep(const GepStmt *gep)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00872">SVFIR2ItvExeState.cpp:872</a></div></div>
502
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aac5cc8767eb750bf121f1897788dee24"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aac5cc8767eb750bf121f1897788dee24">SVF::SVFIR2ItvExeState::translateCmp</a></div><div class="ttdeci">void translateCmp(const CmpStmt *cmp)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00591">SVFIR2ItvExeState.cpp:591</a></div></div>
503
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aa274b5b4e18c28ec8035ca1b073aacfc"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aa274b5b4e18c28ec8035ca1b073aacfc">SVF::SVFIR2ItvExeState::translateGep</a></div><div class="ttdeci">void translateGep(const GepStmt *gep)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00876">SVFIR2ItvExeState.cpp:876</a></div></div>
504
504
  <div class="ttc" id="aclassSVF_1_1FIFOWorkList_html_a7056704c224dfb4b57287fe90c004aa8"><div class="ttname"><a href="classSVF_1_1FIFOWorkList.html#a7056704c224dfb4b57287fe90c004aa8">SVF::FIFOWorkList::empty</a></div><div class="ttdeci">bool empty() const</div><div class="ttdef"><b>Definition:</b> <a href="WorkList_8h_source.html#l00146">WorkList.h:146</a></div></div>
505
505
  <div class="ttc" id="aclassSVF_1_1SVFVar_html_ac2db6304ea5526fb446ae882983beeb0"><div class="ttname"><a href="classSVF_1_1SVFVar.html#ac2db6304ea5526fb446ae882983beeb0">SVF::SVFVar::getValue</a></div><div class="ttdeci">const SVFValue * getValue() const</div><div class="ttdoc">Get/has methods of the components.</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00094">SVFVariables.h:94</a></div></div>
506
506
  <div class="ttc" id="aclassSVF_1_1ICFGNode_html"><div class="ttname"><a href="classSVF_1_1ICFGNode.html">SVF::ICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00054">ICFGNode.h:54</a></div></div>
507
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_ae00e5398cbeb9aa1cfc464da4250a91e"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#ae00e5398cbeb9aa1cfc464da4250a91e">SVF::SVFIR2ItvExeState::translatePhi</a></div><div class="ttdeci">void translatePhi(const PhiStmt *phi)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00926">SVFIR2ItvExeState.cpp:926</a></div></div>
507
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_ae00e5398cbeb9aa1cfc464da4250a91e"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#ae00e5398cbeb9aa1cfc464da4250a91e">SVF::SVFIR2ItvExeState::translatePhi</a></div><div class="ttdeci">void translatePhi(const PhiStmt *phi)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00930">SVFIR2ItvExeState.cpp:930</a></div></div>
508
508
  <div class="ttc" id="aclassSVF_1_1CallPE_html"><div class="ttname"><a href="classSVF_1_1CallPE.html">SVF::CallPE</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00545">SVFStatements.h:545</a></div></div>
509
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a8f2a564370d9b9fb05e139c45eeaba68"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a8f2a564370d9b9fb05e139c45eeaba68">SVF::SVFIR2ItvExeState::translateLoad</a></div><div class="ttdeci">void translateLoad(const LoadStmt *load)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00771">SVFIR2ItvExeState.cpp:771</a></div></div>
509
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a8f2a564370d9b9fb05e139c45eeaba68"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a8f2a564370d9b9fb05e139c45eeaba68">SVF::SVFIR2ItvExeState::translateLoad</a></div><div class="ttdeci">void translateLoad(const LoadStmt *load)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00775">SVFIR2ItvExeState.cpp:775</a></div></div>
510
510
  <div class="ttc" id="aclassOptionBase_html_a4fb6c6e4a1754d702c6c1730f54457e5"><div class="ttname"><a href="classOptionBase.html#a4fb6c6e4a1754d702c6c1730f54457e5">OptionBase::parseOptions</a></div><div class="ttdeci">static std::vector&lt; std::string &gt; parseOptions(int argc, char *argv[], std::string description, std::string callFormat)</div><div class="ttdef"><b>Definition:</b> <a href="CommandLine_8h_source.html#l00075">CommandLine.h:75</a></div></div>
511
511
  <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html">SVF::SVFIR2ItvExeState</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8h_source.html#l00041">SVFIR2ItvExeState.h:41</a></div></div>
512
512
  <div class="ttc" id="aclassSVF_1_1BinaryOPStmt_html"><div class="ttname"><a href="classSVF_1_1BinaryOPStmt.html">SVF::BinaryOPStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00957">SVFStatements.h:957</a></div></div>
513
513
  <div class="ttc" id="aclassSVF_1_1StoreStmt_html"><div class="ttname"><a href="classSVF_1_1StoreStmt.html">SVF::StoreStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00387">SVFStatements.h:387</a></div></div>
514
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a31e299f91eed29d1a8db3b884d57d1dc"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a31e299f91eed29d1a8db3b884d57d1dc">SVF::SVFIR2ItvExeState::translateRet</a></div><div class="ttdeci">void translateRet(const RetPE *retPE)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00975">SVFIR2ItvExeState.cpp:975</a></div></div>
514
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a31e299f91eed29d1a8db3b884d57d1dc"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a31e299f91eed29d1a8db3b884d57d1dc">SVF::SVFIR2ItvExeState::translateRet</a></div><div class="ttdeci">void translateRet(const RetPE *retPE)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00979">SVFIR2ItvExeState.cpp:979</a></div></div>
515
515
  <div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
516
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a449ee8f244120866037c7f6d2ee5fc13"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a449ee8f244120866037c7f6d2ee5fc13">SVF::SVFIR2ItvExeState::translateBinary</a></div><div class="ttdeci">void translateBinary(const BinaryOPStmt *binary)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00525">SVFIR2ItvExeState.cpp:525</a></div></div>
516
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a449ee8f244120866037c7f6d2ee5fc13"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a449ee8f244120866037c7f6d2ee5fc13">SVF::SVFIR2ItvExeState::translateBinary</a></div><div class="ttdeci">void translateBinary(const BinaryOPStmt *binary)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00529">SVFIR2ItvExeState.cpp:529</a></div></div>
517
517
  <div class="ttc" id="aclassSVF_1_1GenericNode_html_a19a3366fd8a58290d0c740c46c3dcb3d"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a19a3366fd8a58290d0c740c46c3dcb3d">SVF::GenericNode::OutEdgeEnd</a></div><div class="ttdeci">iterator OutEdgeEnd()</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00221">GenericGraph.h:221</a></div></div>
518
518
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a4dfb43679e9fa794ebad99b6584c32ec"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a4dfb43679e9fa794ebad99b6584c32ec">SVF::PointerAnalysis::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID ptr)=0</div><div class="ttdoc">Get points-to targets of a pointer. It needs to be implemented in child class.</div></div>
519
519
  <div class="ttc" id="aclassSVF_1_1SVFIRBuilder_html"><div class="ttname"><a href="classSVF_1_1SVFIRBuilder.html">SVF::SVFIRBuilder</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFIRBuilder_8h_source.html#l00046">SVFIRBuilder.h:46</a></div></div>
520
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aed2e41879bae8389c49e69356b7aaac5"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aed2e41879bae8389c49e69356b7aaac5">SVF::SVFIR2ItvExeState::translateStore</a></div><div class="ttdeci">void translateStore(const StoreStmt *store)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00813">SVFIR2ItvExeState.cpp:813</a></div></div>
520
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aed2e41879bae8389c49e69356b7aaac5"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aed2e41879bae8389c49e69356b7aaac5">SVF::SVFIR2ItvExeState::translateStore</a></div><div class="ttdeci">void translateStore(const StoreStmt *store)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00817">SVFIR2ItvExeState.cpp:817</a></div></div>
521
521
  <div class="ttc" id="aclassSVF_1_1SVFStmt_html"><div class="ttname"><a href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00051">SVFStatements.h:51</a></div></div>
522
522
  <div class="ttc" id="aclassSVF_1_1VFGNode_html"><div class="ttname"><a href="classSVF_1_1VFGNode.html">SVF::VFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00046">VFGNode.h:46</a></div></div>
523
523
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ae1323233941cdc9b99332e4b954a2217"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae1323233941cdc9b99332e4b954a2217">SVF::PointerAnalysis::alias</a></div><div class="ttdeci">virtual AliasResult alias(const SVFValue *V1, const SVFValue *V2)=0</div><div class="ttdoc">Interface exposed to users of our pointer analysis, given Value infos.</div></div>
524
524
  <div class="ttc" id="aclassSVF_1_1SVFVar_html"><div class="ttname"><a href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00045">SVFVariables.h:45</a></div></div>
525
525
  <div class="ttc" id="aclassSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00424">SVFStatements.h:424</a></div></div>
526
526
  <div class="ttc" id="aclassSVF_1_1GenericGraph_html_a43c9c773bfa17abf481c33073e30d01b"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">SVF::GenericGraph::getGNode</a></div><div class="ttdeci">NodeType * getGNode(NodeID id) const</div><div class="ttdoc">Get a node.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00406">GenericGraph.h:406</a></div></div>
527
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_afcf2f81101f1b9580d82b5c2efb83999"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#afcf2f81101f1b9580d82b5c2efb83999">SVF::SVFIR2ItvExeState::translateCopy</a></div><div class="ttdeci">void translateCopy(const CopyStmt *copy)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00842">SVFIR2ItvExeState.cpp:842</a></div></div>
527
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_afcf2f81101f1b9580d82b5c2efb83999"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#afcf2f81101f1b9580d82b5c2efb83999">SVF::SVFIR2ItvExeState::translateCopy</a></div><div class="ttdeci">void translateCopy(const CopyStmt *copy)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00846">SVFIR2ItvExeState.cpp:846</a></div></div>
528
528
  <div class="ttc" id="aclassSVF_1_1GepStmt_html"><div class="ttname"><a href="classSVF_1_1GepStmt.html">SVF::GepStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00461">SVFStatements.h:461</a></div></div>
529
529
  <div class="ttc" id="aclassSVF_1_1GenericNode_html_aa4f103330118c8976bf95e4bf53416eb"><div class="ttname"><a href="classSVF_1_1GenericNode.html#aa4f103330118c8976bf95e4bf53416eb">SVF::GenericNode::OutEdgeBegin</a></div><div class="ttdeci">iterator OutEdgeBegin()</div><div class="ttdoc">iterators</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00217">GenericGraph.h:217</a></div></div>
530
530
  <div class="ttc" id="aclassSVF_1_1SVFIR_html_abda052b73e869ed6d7c139ad1528da11"><div class="ttname"><a href="classSVF_1_1SVFIR.html#abda052b73e869ed6d7c139ad1528da11">SVF::SVFIR::getICFG</a></div><div class="ttdeci">ICFG * getICFG() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00170">SVFIR.h:170</a></div></div>
@@ -307,7 +307,7 @@ $(function() {
307
307
  <div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; </div>
308
308
  </div><!-- fragment --></div><!-- contents -->
309
309
  <div class="ttc" id="aclassSVF_1_1FIFOWorkList_html_a0df409a67428e528321869d201f2a474"><div class="ttname"><a href="classSVF_1_1FIFOWorkList.html#a0df409a67428e528321869d201f2a474">SVF::FIFOWorkList::push</a></div><div class="ttdeci">bool push(const Data &amp;data)</div><div class="ttdef"><b>Definition:</b> <a href="WorkList_8h_source.html#l00165">WorkList.h:165</a></div></div>
310
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_adb82778157e0f5e7a2ea4d803bcd07ad"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#adb82778157e0f5e7a2ea4d803bcd07ad">SVF::SVFIR2ItvExeState::translateCall</a></div><div class="ttdeci">void translateCall(const CallPE *callPE)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00960">SVFIR2ItvExeState.cpp:960</a></div></div>
310
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_adb82778157e0f5e7a2ea4d803bcd07ad"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#adb82778157e0f5e7a2ea4d803bcd07ad">SVF::SVFIR2ItvExeState::translateCall</a></div><div class="ttdeci">void translateCall(const CallPE *callPE)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00964">SVFIR2ItvExeState.cpp:964</a></div></div>
311
311
  <div class="ttc" id="aclassSVF_1_1CopyStmt_html"><div class="ttname"><a href="classSVF_1_1CopyStmt.html">SVF::CopyStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00351">SVFStatements.h:351</a></div></div>
312
312
  <div class="ttc" id="asvf-ex_8cpp_html_a3c04138a5bfe5d72780bb7e82a18e627"><div class="ttname"><a href="svf-ex_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a></div><div class="ttdeci">int main(int argc, char **argv)</div><div class="ttdef"><b>Definition:</b> <a href="svf-ex_8cpp_source.html#l00205">svf-ex.cpp:205</a></div></div>
313
313
  <div class="ttc" id="aclassSVF_1_1FIFOWorkList_html_a8fa72918fce7e9c0b2dc34b683a797c6"><div class="ttname"><a href="classSVF_1_1FIFOWorkList.html#a8fa72918fce7e9c0b2dc34b683a797c6">SVF::FIFOWorkList::pop</a></div><div class="ttdeci">Data pop()</div><div class="ttdef"><b>Definition:</b> <a href="WorkList_8h_source.html#l00200">WorkList.h:200</a></div></div>
@@ -318,14 +318,14 @@ $(function() {
318
318
  <div class="ttc" id="aclassSVF_1_1ICFGEdge_html"><div class="ttname"><a href="classSVF_1_1ICFGEdge.html">SVF::ICFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00044">ICFGEdge.h:44</a></div></div>
319
319
  <div class="ttc" id="aclassSVF_1_1PhiStmt_html"><div class="ttname"><a href="classSVF_1_1PhiStmt.html">SVF::PhiStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00748">SVFStatements.h:748</a></div></div>
320
320
  <div class="ttc" id="aclassSVF_1_1SVFG_html_a8e7a945f4266e8dc7dcfff2ad6494bfb"><div class="ttname"><a href="classSVF_1_1SVFG.html#a8e7a945f4266e8dc7dcfff2ad6494bfb">SVF::SVFG::getDefSVFGNode</a></div><div class="ttdeci">const SVFGNode * getDefSVFGNode(const PAGNode *pagNode) const</div><div class="ttdoc">Given a pagNode, return its definition site.</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00170">SVFG.h:170</a></div></div>
321
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a604126e59364cb56b44a88cae5afbfb8"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a604126e59364cb56b44a88cae5afbfb8">SVF::SVFIR2ItvExeState::translateSelect</a></div><div class="ttdeci">void translateSelect(const SelectStmt *select)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00898">SVFIR2ItvExeState.cpp:898</a></div></div>
321
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a604126e59364cb56b44a88cae5afbfb8"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a604126e59364cb56b44a88cae5afbfb8">SVF::SVFIR2ItvExeState::translateSelect</a></div><div class="ttdeci">void translateSelect(const SelectStmt *select)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00902">SVFIR2ItvExeState.cpp:902</a></div></div>
322
322
  <div class="ttc" id="aclassSVF_1_1IRGraph_html_a43514023a4f4d0c32f536f51443b0efc"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a43514023a4f4d0c32f536f51443b0efc">SVF::IRGraph::getValueNode</a></div><div class="ttdeci">NodeID getValueNode(const SVFValue *V)</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00138">IRGraph.h:138</a></div></div>
323
323
  <div class="ttc" id="aLLVMUtil_8h_html"><div class="ttname"><a href="LLVMUtil_8h.html">LLVMUtil.h</a></div></div>
324
324
  <div class="ttc" id="anamespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set&lt; Key, Hash, KeyEqual, Allocator &gt; Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00097">SVFType.h:97</a></div></div>
325
325
  <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>
326
326
  <div class="ttc" id="aSVFIR2ItvExeState_8h_html"><div class="ttname"><a href="SVFIR2ItvExeState_8h.html">SVFIR2ItvExeState.h</a></div></div>
327
327
  <div class="ttc" id="aclassSVF_1_1ICFGNode_html_a6c68f52dd90728073fb79141df9b0661"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#a6c68f52dd90728073fb79141df9b0661">SVF::ICFGNode::getSVFStmts</a></div><div class="ttdeci">const SVFStmtList &amp; getSVFStmts() const</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00127">ICFGNode.h:127</a></div></div>
328
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_af7f42ee51b03b1aaaee18f10eec0c2b9"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#af7f42ee51b03b1aaaee18f10eec0c2b9">SVF::SVFIR2ItvExeState::translateAddr</a></div><div class="ttdeci">void translateAddr(const AddrStmt *addr)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00499">SVFIR2ItvExeState.cpp:499</a></div></div>
328
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_af7f42ee51b03b1aaaee18f10eec0c2b9"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#af7f42ee51b03b1aaaee18f10eec0c2b9">SVF::SVFIR2ItvExeState::translateAddr</a></div><div class="ttdeci">void translateAddr(const AddrStmt *addr)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00503">SVFIR2ItvExeState.cpp:503</a></div></div>
329
329
  <div class="ttc" id="aclassSVF_1_1SelectStmt_html"><div class="ttname"><a href="classSVF_1_1SelectStmt.html">SVF::SelectStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00816">SVFStatements.h:816</a></div></div>
330
330
  <div class="ttc" id="aclassSVF_1_1LLVMModuleSet_html_a2f8e91c075d90be66412a079fe73e936"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a2f8e91c075d90be66412a079fe73e936">SVF::LLVMModuleSet::releaseLLVMModuleSet</a></div><div class="ttdeci">static void releaseLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00108">LLVMModule.h:108</a></div></div>
331
331
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00174">PointerAnalysis.h:174</a></div></div>
@@ -334,16 +334,16 @@ $(function() {
334
334
  <div class="ttc" id="asvf-ex_8cpp_html_a19f3fe331a1e7050a513672a91743b96"><div class="ttname"><a href="svf-ex_8cpp.html#a19f3fe331a1e7050a513672a91743b96">traverseOnICFG</a></div><div class="ttdeci">void traverseOnICFG(ICFG *icfg, const ICFGNode *iNode)</div><div class="ttdef"><b>Definition:</b> <a href="svf-ex_8cpp_source.html#l00141">svf-ex.cpp:141</a></div></div>
335
335
  <div class="ttc" id="aclassSVF_1_1CmpStmt_html"><div class="ttname"><a href="classSVF_1_1CmpStmt.html">SVF::CmpStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00871">SVFStatements.h:871</a></div></div>
336
336
  <div class="ttc" id="aclassSVF_1_1VFG_html"><div class="ttname"><a href="classSVF_1_1VFG.html">SVF::VFG</a></div><div class="ttdef"><b>Definition:</b> <a href="VFG_8h_source.html#l00050">VFG.h:50</a></div></div>
337
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aac5cc8767eb750bf121f1897788dee24"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aac5cc8767eb750bf121f1897788dee24">SVF::SVFIR2ItvExeState::translateCmp</a></div><div class="ttdeci">void translateCmp(const CmpStmt *cmp)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00587">SVFIR2ItvExeState.cpp:587</a></div></div>
338
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aa274b5b4e18c28ec8035ca1b073aacfc"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aa274b5b4e18c28ec8035ca1b073aacfc">SVF::SVFIR2ItvExeState::translateGep</a></div><div class="ttdeci">void translateGep(const GepStmt *gep)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00872">SVFIR2ItvExeState.cpp:872</a></div></div>
337
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aac5cc8767eb750bf121f1897788dee24"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aac5cc8767eb750bf121f1897788dee24">SVF::SVFIR2ItvExeState::translateCmp</a></div><div class="ttdeci">void translateCmp(const CmpStmt *cmp)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00591">SVFIR2ItvExeState.cpp:591</a></div></div>
338
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aa274b5b4e18c28ec8035ca1b073aacfc"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aa274b5b4e18c28ec8035ca1b073aacfc">SVF::SVFIR2ItvExeState::translateGep</a></div><div class="ttdeci">void translateGep(const GepStmt *gep)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00876">SVFIR2ItvExeState.cpp:876</a></div></div>
339
339
  <div class="ttc" id="aclassSVF_1_1FIFOWorkList_html_a7056704c224dfb4b57287fe90c004aa8"><div class="ttname"><a href="classSVF_1_1FIFOWorkList.html#a7056704c224dfb4b57287fe90c004aa8">SVF::FIFOWorkList::empty</a></div><div class="ttdeci">bool empty() const</div><div class="ttdef"><b>Definition:</b> <a href="WorkList_8h_source.html#l00146">WorkList.h:146</a></div></div>
340
340
  <div class="ttc" id="aclassSVF_1_1SVFVar_html_ac2db6304ea5526fb446ae882983beeb0"><div class="ttname"><a href="classSVF_1_1SVFVar.html#ac2db6304ea5526fb446ae882983beeb0">SVF::SVFVar::getValue</a></div><div class="ttdeci">const SVFValue * getValue() const</div><div class="ttdoc">Get/has methods of the components.</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00094">SVFVariables.h:94</a></div></div>
341
341
  <div class="ttc" id="asvf-ex_8cpp_html_a8fa9e6583c354b1883a32b8abf98779f"><div class="ttname"><a href="svf-ex_8cpp.html#a8fa9e6583c354b1883a32b8abf98779f">traverseOnSVFStmt</a></div><div class="ttdeci">void traverseOnSVFStmt(const ICFGNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="svf-ex_8cpp_source.html#l00077">svf-ex.cpp:77</a></div></div>
342
342
  <div class="ttc" id="aclassSVF_1_1ICFGNode_html"><div class="ttname"><a href="classSVF_1_1ICFGNode.html">SVF::ICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00054">ICFGNode.h:54</a></div></div>
343
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_ae00e5398cbeb9aa1cfc464da4250a91e"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#ae00e5398cbeb9aa1cfc464da4250a91e">SVF::SVFIR2ItvExeState::translatePhi</a></div><div class="ttdeci">void translatePhi(const PhiStmt *phi)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00926">SVFIR2ItvExeState.cpp:926</a></div></div>
343
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_ae00e5398cbeb9aa1cfc464da4250a91e"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#ae00e5398cbeb9aa1cfc464da4250a91e">SVF::SVFIR2ItvExeState::translatePhi</a></div><div class="ttdeci">void translatePhi(const PhiStmt *phi)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00930">SVFIR2ItvExeState.cpp:930</a></div></div>
344
344
  <div class="ttc" id="aCommandLine_8h_html"><div class="ttname"><a href="CommandLine_8h.html">CommandLine.h</a></div></div>
345
345
  <div class="ttc" id="aclassSVF_1_1CallPE_html"><div class="ttname"><a href="classSVF_1_1CallPE.html">SVF::CallPE</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00545">SVFStatements.h:545</a></div></div>
346
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a8f2a564370d9b9fb05e139c45eeaba68"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a8f2a564370d9b9fb05e139c45eeaba68">SVF::SVFIR2ItvExeState::translateLoad</a></div><div class="ttdeci">void translateLoad(const LoadStmt *load)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00771">SVFIR2ItvExeState.cpp:771</a></div></div>
346
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a8f2a564370d9b9fb05e139c45eeaba68"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a8f2a564370d9b9fb05e139c45eeaba68">SVF::SVFIR2ItvExeState::translateLoad</a></div><div class="ttdeci">void translateLoad(const LoadStmt *load)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00775">SVFIR2ItvExeState.cpp:775</a></div></div>
347
347
  <div class="ttc" id="asvf-ex_8cpp_html_ad58149e5445ad22ce478339e103ab42b"><div class="ttname"><a href="svf-ex_8cpp.html#ad58149e5445ad22ce478339e103ab42b">traverseOnVFG</a></div><div class="ttdeci">void traverseOnVFG(const SVFG *vfg, SVFValue *val)</div><div class="ttdef"><b>Definition:</b> <a href="svf-ex_8cpp_source.html#l00168">svf-ex.cpp:168</a></div></div>
348
348
  <div class="ttc" id="aOptions_8h_html"><div class="ttname"><a href="Options_8h.html">Options.h</a></div></div>
349
349
  <div class="ttc" id="aclassOptionBase_html_a4fb6c6e4a1754d702c6c1730f54457e5"><div class="ttname"><a href="classOptionBase.html#a4fb6c6e4a1754d702c6c1730f54457e5">OptionBase::parseOptions</a></div><div class="ttdeci">static std::vector&lt; std::string &gt; parseOptions(int argc, char *argv[], std::string description, std::string callFormat)</div><div class="ttdef"><b>Definition:</b> <a href="CommandLine_8h_source.html#l00075">CommandLine.h:75</a></div></div>
@@ -351,13 +351,13 @@ $(function() {
351
351
  <div class="ttc" id="aclassSVF_1_1BinaryOPStmt_html"><div class="ttname"><a href="classSVF_1_1BinaryOPStmt.html">SVF::BinaryOPStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00957">SVFStatements.h:957</a></div></div>
352
352
  <div class="ttc" id="aclassSVF_1_1StoreStmt_html"><div class="ttname"><a href="classSVF_1_1StoreStmt.html">SVF::StoreStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00387">SVFStatements.h:387</a></div></div>
353
353
  <div class="ttc" id="aclassSVF_1_1SVFValue_html"><div class="ttname"><a href="classSVF_1_1SVFValue.html">SVF::SVFValue</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00177">SVFValue.h:177</a></div></div>
354
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a31e299f91eed29d1a8db3b884d57d1dc"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a31e299f91eed29d1a8db3b884d57d1dc">SVF::SVFIR2ItvExeState::translateRet</a></div><div class="ttdeci">void translateRet(const RetPE *retPE)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00975">SVFIR2ItvExeState.cpp:975</a></div></div>
354
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a31e299f91eed29d1a8db3b884d57d1dc"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a31e299f91eed29d1a8db3b884d57d1dc">SVF::SVFIR2ItvExeState::translateRet</a></div><div class="ttdeci">void translateRet(const RetPE *retPE)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00979">SVFIR2ItvExeState.cpp:979</a></div></div>
355
355
  <div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
356
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a449ee8f244120866037c7f6d2ee5fc13"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a449ee8f244120866037c7f6d2ee5fc13">SVF::SVFIR2ItvExeState::translateBinary</a></div><div class="ttdeci">void translateBinary(const BinaryOPStmt *binary)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00525">SVFIR2ItvExeState.cpp:525</a></div></div>
356
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_a449ee8f244120866037c7f6d2ee5fc13"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#a449ee8f244120866037c7f6d2ee5fc13">SVF::SVFIR2ItvExeState::translateBinary</a></div><div class="ttdeci">void translateBinary(const BinaryOPStmt *binary)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00529">SVFIR2ItvExeState.cpp:529</a></div></div>
357
357
  <div class="ttc" id="aclassSVF_1_1GenericNode_html_a19a3366fd8a58290d0c740c46c3dcb3d"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a19a3366fd8a58290d0c740c46c3dcb3d">SVF::GenericNode::OutEdgeEnd</a></div><div class="ttdeci">iterator OutEdgeEnd()</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00221">GenericGraph.h:221</a></div></div>
358
358
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a4dfb43679e9fa794ebad99b6584c32ec"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a4dfb43679e9fa794ebad99b6584c32ec">SVF::PointerAnalysis::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID ptr)=0</div><div class="ttdoc">Get points-to targets of a pointer. It needs to be implemented in child class.</div></div>
359
359
  <div class="ttc" id="aclassSVF_1_1SVFIRBuilder_html"><div class="ttname"><a href="classSVF_1_1SVFIRBuilder.html">SVF::SVFIRBuilder</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFIRBuilder_8h_source.html#l00046">SVFIRBuilder.h:46</a></div></div>
360
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aed2e41879bae8389c49e69356b7aaac5"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aed2e41879bae8389c49e69356b7aaac5">SVF::SVFIR2ItvExeState::translateStore</a></div><div class="ttdeci">void translateStore(const StoreStmt *store)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00813">SVFIR2ItvExeState.cpp:813</a></div></div>
360
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aed2e41879bae8389c49e69356b7aaac5"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aed2e41879bae8389c49e69356b7aaac5">SVF::SVFIR2ItvExeState::translateStore</a></div><div class="ttdeci">void translateStore(const StoreStmt *store)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00817">SVFIR2ItvExeState.cpp:817</a></div></div>
361
361
  <div class="ttc" id="anamespaceSVF_html_a61c01e2e687ab3a001fb806737583943"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">SVF::AliasResult</a></div><div class="ttdeci">AliasResult</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00618">SVFType.h:618</a></div></div>
362
362
  <div class="ttc" id="aclassSVF_1_1SVFStmt_html"><div class="ttname"><a href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00051">SVFStatements.h:51</a></div></div>
363
363
  <div class="ttc" id="aclassSVF_1_1VFGNode_html"><div class="ttname"><a href="classSVF_1_1VFGNode.html">SVF::VFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00046">VFGNode.h:46</a></div></div>
@@ -367,7 +367,7 @@ $(function() {
367
367
  <div class="ttc" id="aclassSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00424">SVFStatements.h:424</a></div></div>
368
368
  <div class="ttc" id="aSVFG_8h_html"><div class="ttname"><a href="SVFG_8h.html">SVFG.h</a></div></div>
369
369
  <div class="ttc" id="aclassSVF_1_1GenericGraph_html_a43c9c773bfa17abf481c33073e30d01b"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">SVF::GenericGraph::getGNode</a></div><div class="ttdeci">NodeType * getGNode(NodeID id) const</div><div class="ttdoc">Get a node.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00406">GenericGraph.h:406</a></div></div>
370
- <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_afcf2f81101f1b9580d82b5c2efb83999"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#afcf2f81101f1b9580d82b5c2efb83999">SVF::SVFIR2ItvExeState::translateCopy</a></div><div class="ttdeci">void translateCopy(const CopyStmt *copy)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00842">SVFIR2ItvExeState.cpp:842</a></div></div>
370
+ <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_afcf2f81101f1b9580d82b5c2efb83999"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#afcf2f81101f1b9580d82b5c2efb83999">SVF::SVFIR2ItvExeState::translateCopy</a></div><div class="ttdeci">void translateCopy(const CopyStmt *copy)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00846">SVFIR2ItvExeState.cpp:846</a></div></div>
371
371
  <div class="ttc" id="aclassSVF_1_1GepStmt_html"><div class="ttname"><a href="classSVF_1_1GepStmt.html">SVF::GepStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00461">SVFStatements.h:461</a></div></div>
372
372
  <div class="ttc" id="aclassSVF_1_1GenericNode_html_aa4f103330118c8976bf95e4bf53416eb"><div class="ttname"><a href="classSVF_1_1GenericNode.html#aa4f103330118c8976bf95e4bf53416eb">SVF::GenericNode::OutEdgeBegin</a></div><div class="ttdeci">iterator OutEdgeBegin()</div><div class="ttdoc">iterators</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00217">GenericGraph.h:217</a></div></div>
373
373
  <div class="ttc" id="aclassSVF_1_1SVFGBuilder_html_a54a713e3989597b11cee70864d0197bd"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a54a713e3989597b11cee70864d0197bd">SVF::SVFGBuilder::buildFullSVFG</a></div><div class="ttdeci">SVFG * buildFullSVFG(BVDataPTAImpl *pta)</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8cpp_source.html#l00049">SVFGBuilder.cpp:49</a></div></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svf-tools",
3
- "version": "1.0.821",
3
+ "version": "1.0.823",
4
4
  "description": "* <b>[TypeClone](https://github.com/SVF-tools/SVF/wiki/TypeClone) published in our [ECOOP paper](https://yuleisui.github.io/publications/ecoop20.pdf) is now available in SVF </b> * <b>SVF now uses a single script for its build. Just type [`source ./build.sh`](https://github.com/SVF-tools/SVF/blob/master/build.sh) in your terminal, that's it!</b> * <b>SVF now supports LLVM-10.0.0! </b> * <b>We thank [bsauce](https://github.com/bsauce) for writing a user manual of SVF ([link1](https://www.jianshu.com/p/068a08ec749c) and [link2](https://www.jianshu.com/p/777c30d4240e)) in Chinese </b> * <b>SVF now supports LLVM-9.0.0 (Thank [Byoungyoung Lee](https://github.com/SVF-tools/SVF/issues/142) for his help!). </b> * <b>SVF now supports a set of [field-sensitive pointer analyses](https://yuleisui.github.io/publications/sas2019a.pdf). </b> * <b>[Use SVF as an external lib](https://github.com/SVF-tools/SVF/wiki/Using-SVF-as-a-lib-in-your-own-tool) for your own project (Contributed by [Hongxu Chen](https://github.com/HongxuChen)). </b> * <b>SVF now supports LLVM-7.0.0. </b> * <b>SVF now supports Docker. [Try SVF in Docker](https://github.com/SVF-tools/SVF/wiki/Try-SVF-in-Docker)! </b> * <b>SVF now supports [LLVM-6.0.0](https://github.com/svf-tools/SVF/pull/38) (Contributed by [Jack Anthony](https://github.com/jackanth)). </b> * <b>SVF now supports [LLVM-4.0.0](https://github.com/svf-tools/SVF/pull/23) (Contributed by Jared Carlson. Thank [Jared](https://github.com/jcarlson23) and [Will](https://github.com/dtzWill) for their in-depth [discussions](https://github.com/svf-tools/SVF/pull/18) about updating SVF!) </b> * <b>SVF now supports analysis for C++ programs.</b> <br />",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -396,6 +396,10 @@ IntervalValue SVFIR2ItvExeState::getItvOfFlattenedElemIndex(const GepStmt *gep)
396
396
  res = res + IntervalValue(idxLb, idxUb);
397
397
  }
398
398
  res.meet_with(IntervalValue((s64_t)0, (s64_t)Options::MaxFieldLimit()));
399
+ if (res.isBottom())
400
+ {
401
+ res = IntervalValue(0);
402
+ }
399
403
  return res;
400
404
  }
401
405
 
@@ -595,7 +595,7 @@ void SVFG::getInterVFEdgesForIndirectCallSite(const CallICFGNode* callICFGNode,
595
595
  {
596
596
  const PAGNode *cs_arg = *csArgIt;
597
597
  const PAGNode *fun_arg = *funArgIt;
598
- if (fun_arg->isPointer() && cs_arg->isPointer())
598
+ if (isInterestedPAGNode(fun_arg) && isInterestedPAGNode(cs_arg))
599
599
  getInterVFEdgeAtIndCSFromAPToFP(cs_arg, fun_arg, callICFGNode, csId, edges);
600
600
  }
601
601
  assert(funArgIt == funArgEit && "function has more arguments than call site");
@@ -603,12 +603,12 @@ void SVFG::getInterVFEdgesForIndirectCallSite(const CallICFGNode* callICFGNode,
603
603
  {
604
604
  NodeID varFunArg = pag->getVarargNode(callee);
605
605
  const PAGNode* varFunArgNode = pag->getGNode(varFunArg);
606
- if (varFunArgNode->isPointer())
606
+ if (isInterestedPAGNode(varFunArgNode))
607
607
  {
608
608
  for (; csArgIt != csArgEit; csArgIt++)
609
609
  {
610
610
  const PAGNode *cs_arg = *csArgIt;
611
- if (cs_arg->isPointer())
611
+ if (isInterestedPAGNode(cs_arg))
612
612
  getInterVFEdgeAtIndCSFromAPToFP(cs_arg, varFunArgNode, callICFGNode, csId, edges);
613
613
  }
614
614
  }
@@ -620,7 +620,7 @@ void SVFG::getInterVFEdgesForIndirectCallSite(const CallICFGNode* callICFGNode,
620
620
  {
621
621
  const PAGNode* cs_return = pag->getCallSiteRet(retICFGNode);
622
622
  const PAGNode* fun_return = pag->getFunRet(callee);
623
- if (cs_return->isPointer() && fun_return->isPointer())
623
+ if (isInterestedPAGNode(cs_return) && isInterestedPAGNode(fun_return))
624
624
  getInterVFEdgeAtIndCSFromFRToAR(fun_return, cs_return, csId, edges);
625
625
  }
626
626
 
@@ -987,7 +987,7 @@ void VFG::connectCallerAndCallee(const CallICFGNode* callBlockNode, const SVFFun
987
987
  {
988
988
  const PAGNode *cs_arg = *csArgIt;
989
989
  const PAGNode *fun_arg = *funArgIt;
990
- if (fun_arg->isPointer() && cs_arg->isPointer())
990
+ if (isInterestedPAGNode(cs_arg) && isInterestedPAGNode(fun_arg))
991
991
  connectAParamAndFParam(cs_arg, fun_arg, callBlockNode, csId, edges);
992
992
  }
993
993
  assert(funArgIt == funArgEit && "function has more arguments than call site");
@@ -996,12 +996,12 @@ void VFG::connectCallerAndCallee(const CallICFGNode* callBlockNode, const SVFFun
996
996
  {
997
997
  NodeID varFunArg = pag->getVarargNode(callee);
998
998
  const PAGNode* varFunArgNode = pag->getGNode(varFunArg);
999
- if (varFunArgNode->isPointer())
999
+ if (isInterestedPAGNode(varFunArgNode))
1000
1000
  {
1001
1001
  for (; csArgIt != csArgEit; csArgIt++)
1002
1002
  {
1003
1003
  const PAGNode *cs_arg = *csArgIt;
1004
- if (cs_arg->isPointer())
1004
+ if (isInterestedPAGNode(cs_arg))
1005
1005
  connectAParamAndFParam(cs_arg, varFunArgNode, callBlockNode, csId, edges);
1006
1006
  }
1007
1007
  }
@@ -1013,7 +1013,7 @@ void VFG::connectCallerAndCallee(const CallICFGNode* callBlockNode, const SVFFun
1013
1013
  {
1014
1014
  const PAGNode* cs_return = pag->getCallSiteRet(retBlockNode);
1015
1015
  const PAGNode* fun_return = pag->getFunRet(callee);
1016
- if (cs_return->isPointer() && fun_return->isPointer())
1016
+ if (isInterestedPAGNode(cs_return) && isInterestedPAGNode(fun_return))
1017
1017
  connectFRetAndARet(fun_return, cs_return, csId, edges);
1018
1018
  }
1019
1019
  }
@@ -210,6 +210,11 @@ APOffset AccessPath::computeConstantOffset() const
210
210
  assert(isConstantOffset() && "not a constant offset");
211
211
 
212
212
  APOffset totalConstOffset = 0;
213
+ //After the model-const and model-array options are turned on,
214
+ // the gepstmt offset generated by the array on the global
215
+ // node will be saved in getConstantStructFldIdx
216
+ if (idxOperandPairs.size() == 0)
217
+ return getConstantStructFldIdx();
213
218
  for(int i = idxOperandPairs.size() - 1; i >= 0; i--)
214
219
  {
215
220
  const SVFValue* value = idxOperandPairs[i].first->getValue();
@@ -1,3 +1,4 @@
1
+ #include <stddef.h>
1
2
  #define NULL ((void *)0)
2
3
  #define STATIC_OBJECT malloc(10)
3
4
 
@@ -554,28 +555,28 @@ int XmbTextPropertyToTextList(void *a, void *b, char ***c, int *d)
554
555
  return 0;
555
556
  }
556
557
 
557
- __attribute__((annotate("MEMCPY")))
558
+ __attribute__((annotate("MEMCPY"), annotate("BUF_CHECK:Arg0, Arg2"), annotate("BUF_CHECK:Arg1, Arg2")))
558
559
  void llvm_memcpy_p0i8_p0i8_i64(char* dst, char* src, int sz, int flag){}
559
560
 
560
- __attribute__((annotate("MEMCPY")))
561
+ __attribute__((annotate("MEMCPY"), annotate("BUF_CHECK:Arg0, Arg2"), annotate("BUF_CHECK:Arg1, Arg2")))
561
562
  void llvm_memcpy_p0i8_p0i8_i32(char* dst, char* src, int sz, int flag){}
562
563
 
563
- __attribute__((annotate("MEMCPY")))
564
+ __attribute__((annotate("MEMCPY"), annotate("BUF_CHECK:Arg0, Arg2"), annotate("BUF_CHECK:Arg1, Arg2")))
564
565
  void llvm_memcpy(char* dst, char* src, int sz, int flag){}
565
566
 
566
- __attribute__((annotate("MEMCPY")))
567
+ __attribute__((annotate("MEMCPY"), annotate("BUF_CHECK:Arg0, Arg2"), annotate("BUF_CHECK:Arg1, Arg2")))
567
568
  void llvm_memmove(char* dst, char* src, int sz, int flag){}
568
569
 
569
- __attribute__((annotate("MEMCPY")))
570
+ __attribute__((annotate("MEMCPY"), annotate("BUF_CHECK:Arg0, Arg2"), annotate("BUF_CHECK:Arg1, Arg2")))
570
571
  void llvm_memmove_p0i8_p0i8_i64(char* dst, char* src, int sz, int flag){}
571
572
 
572
- __attribute__((annotate("MEMCPY")))
573
+ __attribute__((annotate("MEMCPY"), annotate("BUF_CHECK:Arg0, Arg2"), annotate("BUF_CHECK:Arg1, Arg2")))
573
574
  void llvm_memmove_p0i8_p0i8_i32(char* dst, char* src, int sz, int flag){}
574
575
 
575
- __attribute__((annotate("MEMCPY")))
576
+ __attribute__((annotate("MEMCPY"), annotate("BUF_CHECK:Arg0, Arg2"), annotate("BUF_CHECK:Arg1, Arg2")))
576
577
  void __memcpy_chk(char* dst, char* src, int sz, int flag){}
577
578
 
578
- __attribute__((annotate("MEMCPY")))
579
+ __attribute__((annotate("MEMCPY"), annotate("BUF_CHECK:Arg0, Arg2"), annotate("BUF_CHECK:Arg1, Arg2")))
579
580
  void *memmove(void *str1, const void *str2, unsigned long n)
580
581
  {
581
582
  return NULL;
@@ -590,66 +591,106 @@ void *memccpy( void * restrict dest, const void * restrict src, int c, unsigned
590
591
  return NULL;
591
592
  }
592
593
 
593
- __attribute__((annotate("MEMCPY")))
594
+ __attribute__((annotate("MEMCPY"), annotate("BUF_CHECK:Arg0, Arg2"), annotate("BUF_CHECK:Arg1, Arg2")))
594
595
  void __memmove_chk(char* dst, char* src, int sz){}
595
596
 
596
- __attribute__((annotate("MEMSET")))
597
+ __attribute__((annotate("MEMSET"), annotate("BUF_CHECK:Arg0, Arg2")))
597
598
  void llvm_memset(char* dst, char elem, int sz, int flag){}
598
599
 
599
- __attribute__((annotate("MEMSET")))
600
+ __attribute__((annotate("MEMSET"), annotate("BUF_CHECK:Arg0, Arg2")))
600
601
  void llvm_memset_p0i8_i32(char* dst, char elem, int sz, int flag){}
601
602
 
602
- __attribute__((annotate("MEMSET")))
603
+ __attribute__((annotate("MEMSET"), annotate("BUF_CHECK:Arg0, Arg2")))
603
604
  void llvm_memset_p0i8_i64(char* dst, char elem, int sz, int flag){}
604
605
 
605
- __attribute__((annotate("MEMSET")))
606
+ __attribute__((annotate("MEMSET"), annotate("BUF_CHECK:Arg0, Arg2")))
606
607
  char *__memset_chk(char * dest, int c, unsigned long destlen, int flag)
607
608
  {
608
609
  return NULL;
609
610
  }
610
611
 
611
- __attribute__((annotate("MEMCPY")))
612
+ __attribute__((annotate("MEMSET"), annotate("BUF_CHECK:Arg0, Arg2")))
613
+ char *wmemset(wchar_t * dst, wchar_t elem, int sz, int flag) {
614
+ return NULL;
615
+ }
616
+
617
+
618
+ __attribute__((annotate("MEMCPY"), annotate("STRCPY")))
612
619
  char * __strcpy_chk(char * dest, const char * src, unsigned long destlen)
613
620
  {
614
621
  return NULL;
615
622
  }
616
623
 
617
- __attribute__((annotate("MEMCPY")))
624
+ __attribute__((annotate("MEMCPY"), annotate("STRCAT")))
618
625
  char *__strcat_chk(char * dest, const char * src, unsigned long destlen)
619
626
  {
620
627
  return NULL;
621
628
  }
622
629
 
623
- __attribute__((annotate("MEMCPY")))
630
+ __attribute__((annotate("MEMCPY"), annotate("STRCAT")))
631
+ wchar_t* __wcscat_chk(wchar_t * dest, const wchar_t * src)
632
+ {
633
+ return NULL;
634
+ }
635
+
636
+ __attribute__((annotate("MEMCPY"), annotate("STRCPY")))
624
637
  char *stpcpy(char *restrict dst, const char *restrict src)
625
638
  {
626
639
  return NULL;
627
640
  }
628
641
 
629
- __attribute__((annotate("MEMCPY")))
642
+ __attribute__((annotate("MEMCPY"), annotate("STRCAT")))
630
643
  char *strcat(char *dest, const char *src)
631
644
  {
632
645
  return NULL;
633
646
  }
634
647
 
635
- __attribute__((annotate("MEMCPY")))
648
+ __attribute__((annotate("MEMCPY"), annotate("STRCAT")))
649
+ char *wcscat(char *dest, const char *src)
650
+ {
651
+ return NULL;
652
+ }
653
+
654
+
655
+ __attribute__((annotate("MEMCPY"), annotate("STRCPY")))
636
656
  char *strcpy(char *dest, const char *src)
637
657
  {
638
658
  return NULL;
639
659
  }
640
660
 
641
- __attribute__((annotate("MEMCPY")))
661
+ __attribute__((annotate("MEMCPY"), annotate("STRCAT")))
642
662
  char *strncat(char *dest, const char *src, unsigned long n)
643
663
  {
644
664
  return NULL;
645
665
  }
646
666
 
647
- __attribute__((annotate("MEMCPY")))
667
+ __attribute__((annotate("MEMCPY"), annotate("STRCAT")))
668
+ wchar_t* wcsncat(wchar_t * dest, const wchar_t * src, int n) {
669
+ return NULL;
670
+ }
671
+
672
+ __attribute__((annotate("MEMCPY"), annotate("STRCAT")))
673
+ char *__strncat_chk(char *dest, const char *src, unsigned long n)
674
+ {
675
+ return NULL;
676
+ }
677
+
678
+ __attribute__((annotate("MEMCPY"), annotate("STRCAT")))
679
+ wchar_t* __wcsncat_chk(wchar_t * dest, const wchar_t * src, int n) {
680
+ return NULL;
681
+ }
682
+
683
+ __attribute__((annotate("MEMCPY"), annotate("BUF_CHECK:Arg0, Arg2"), annotate("BUF_CHECK:Arg1, Arg2")))
648
684
  char *strncpy(char *dest, const char *src, unsigned long n)
649
685
  {
650
686
  return NULL;
651
687
  }
652
688
 
689
+ __attribute__((annotate("MEMCPY"), annotate("STRCPY")))
690
+ char *wcscpy(wchar_t* dest, const wchar_t* src) {
691
+ return NULL;
692
+ }
693
+
653
694
  __attribute__((annotate("MEMCPY")))
654
695
  unsigned long iconv(void* cd, char **restrict inbuf, unsigned long *restrict inbytesleft, char **restrict outbuf, unsigned long *restrict outbytesleft)
655
696
  {