svf-tools 1.0.340 → 1.0.341
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.
- package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +16 -15
- package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +29 -27
- package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +44 -42
- package/SVF-doxygen/html/html/classSVF_1_1MemObj-members.html +23 -22
- package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +69 -46
- package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo-members.html +17 -15
- package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +141 -106
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +24 -24
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +17 -16
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +15 -15
- package/SVF-doxygen/html/html/functions_c.html +21 -16
- package/SVF-doxygen/html/html/functions_eval_c.html +5 -2
- package/SVF-doxygen/html/html/functions_func_i.html +19 -17
- package/SVF-doxygen/html/html/functions_i.html +19 -17
- package/SVF-doxygen/html/html/functions_m.html +1 -1
- package/SVF-doxygen/html/html/functions_n.html +3 -3
- package/SVF-doxygen/html/html/functions_o.html +10 -10
- package/SVF-doxygen/html/html/functions_p.html +17 -23
- package/SVF-doxygen/html/html/functions_s.html +7 -9
- package/SVF-doxygen/html/html/functions_w.html +5 -9
- package/SVF-doxygen/html/html/search/all_10.js +11 -11
- package/SVF-doxygen/html/html/search/all_12.js +1 -1
- package/SVF-doxygen/html/html/search/all_13.js +4 -4
- package/SVF-doxygen/html/html/search/all_14.js +4 -4
- package/SVF-doxygen/html/html/search/all_15.js +1 -1
- package/SVF-doxygen/html/html/search/all_17.js +1 -1
- package/SVF-doxygen/html/html/search/all_3.js +2 -1
- package/SVF-doxygen/html/html/search/all_9.js +4 -4
- package/SVF-doxygen/html/html/search/all_c.js +1 -1
- package/SVF-doxygen/html/html/search/all_d.js +1 -1
- package/SVF-doxygen/html/html/search/all_e.js +1 -1
- package/SVF-doxygen/html/html/search/all_f.js +2 -2
- package/SVF-doxygen/html/html/search/enumvalues_2.js +2 -1
- package/SVF-doxygen/html/html/search/functions_8.js +4 -4
- package/SVF-doxygen/html/html/search/functions_e.js +1 -1
- package/SVF-doxygen/html/html/search/variables_14.js +3 -3
- package/SVF-doxygen/html/html/search/variables_15.js +1 -1
- package/include/MemoryModel/SVFIR.h +1 -1
- package/include/MemoryModel/SymbolTableInfo.h +15 -9
- package/lib/MemoryModel/SymbolTableInfo.cpp +12 -7
- package/lib/SVF-FE/SymbolTableBuilder.cpp +2 -2
- package/lib/Util/PTAStat.cpp +3 -3
- package/package.json +1 -1
|
@@ -88,8 +88,9 @@ Public Types</h2></td></tr>
|
|
|
88
88
|
<a class="el" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd">CONST_STRUCT_OBJ</a> = 0x80,
|
|
89
89
|
<br />
|
|
90
90
|
  <a class="el" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047">CONST_ARRAY_OBJ</a> = 0x100,
|
|
91
|
-
<a class="el" href="classSVF_1_1ObjTypeInfo.html#
|
|
92
|
-
<a class="el" href="classSVF_1_1ObjTypeInfo.html#
|
|
91
|
+
<a class="el" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a84c1bc6eaff950330a102afca1efc04c">CONST_GLOBAL_OBJ</a> = 0x200,
|
|
92
|
+
<a class="el" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a5e5bc3a1838476fbd80c52720c9d103e">CONST_DATA</a> = 0x400,
|
|
93
|
+
<a class="el" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">HASPTR_OBJ</a> = 0x800
|
|
93
94
|
<br />
|
|
94
95
|
}</td></tr>
|
|
95
96
|
<tr class="separator:a91b41b7ade5871362b77a2ef566b2830"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -141,18 +142,20 @@ Public Member Functions</h2></td></tr>
|
|
|
141
142
|
<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
|
|
142
143
|
<tr class="memitem:a40d6703875b370aed2c6dc41c0594af5"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ObjTypeInfo.html#a40d6703875b370aed2c6dc41c0594af5">isVarStruct</a> ()</td></tr>
|
|
143
144
|
<tr class="separator:a40d6703875b370aed2c6dc41c0594af5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
144
|
-
<tr class="memitem:
|
|
145
|
-
<tr class="separator:
|
|
145
|
+
<tr class="memitem:a41f916ab4e3a2c163fca636eae948ce7"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ObjTypeInfo.html#a41f916ab4e3a2c163fca636eae948ce7">isConstantStruct</a> ()</td></tr>
|
|
146
|
+
<tr class="separator:a41f916ab4e3a2c163fca636eae948ce7"><td class="memSeparator" colspan="2"> </td></tr>
|
|
146
147
|
<tr class="memitem:a06493939f797f122b70b90bbf22cad7a"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ObjTypeInfo.html#a06493939f797f122b70b90bbf22cad7a">isStruct</a> ()</td></tr>
|
|
147
148
|
<tr class="separator:a06493939f797f122b70b90bbf22cad7a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
148
149
|
<tr class="memitem:aca1e900f9b0a774684af77666cf033e3"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ObjTypeInfo.html#aca1e900f9b0a774684af77666cf033e3">isVarArray</a> ()</td></tr>
|
|
149
150
|
<tr class="separator:aca1e900f9b0a774684af77666cf033e3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
150
|
-
<tr class="memitem:
|
|
151
|
-
<tr class="separator:
|
|
151
|
+
<tr class="memitem:ac1ee7a720959c0e97496870d6e759212"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ObjTypeInfo.html#ac1ee7a720959c0e97496870d6e759212">isConstantArray</a> ()</td></tr>
|
|
152
|
+
<tr class="separator:ac1ee7a720959c0e97496870d6e759212"><td class="memSeparator" colspan="2"> </td></tr>
|
|
152
153
|
<tr class="memitem:a0627e8b9dda2e13cc77c334eefab21e1"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ObjTypeInfo.html#a0627e8b9dda2e13cc77c334eefab21e1">isArray</a> ()</td></tr>
|
|
153
154
|
<tr class="separator:a0627e8b9dda2e13cc77c334eefab21e1"><td class="memSeparator" colspan="2"> </td></tr>
|
|
154
|
-
<tr class="memitem:
|
|
155
|
-
<tr class="separator:
|
|
155
|
+
<tr class="memitem:a8e6c60978df9828c1dcb54086e83edc1"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ObjTypeInfo.html#a8e6c60978df9828c1dcb54086e83edc1">isConstDataOrConstGlobal</a> ()</td></tr>
|
|
156
|
+
<tr class="separator:a8e6c60978df9828c1dcb54086e83edc1"><td class="memSeparator" colspan="2"> </td></tr>
|
|
157
|
+
<tr class="memitem:a6f6c80f7d067a6082a9af04d2547cf34"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ObjTypeInfo.html#a6f6c80f7d067a6082a9af04d2547cf34">isConstantData</a> ()</td></tr>
|
|
158
|
+
<tr class="separator:a6f6c80f7d067a6082a9af04d2547cf34"><td class="memSeparator" colspan="2"> </td></tr>
|
|
156
159
|
<tr class="memitem:ac5bae1e7917f415193a805e8d2e29320"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ObjTypeInfo.html#ac5bae1e7917f415193a805e8d2e29320">hasPtrObj</a> ()</td></tr>
|
|
157
160
|
<tr class="separator:ac5bae1e7917f415193a805e8d2e29320"><td class="memSeparator" colspan="2"> </td></tr>
|
|
158
161
|
<tr class="memitem:a3a58b1e0192b92dac5bbfad24adbcdac"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ObjTypeInfo.html#a3a58b1e0192b92dac5bbfad24adbcdac">isNonPtrFieldObj</a> (const <a class="el" href="classSVF_1_1LocationSet.html">LocationSet</a> &ls)</td></tr>
|
|
@@ -172,7 +175,7 @@ Private Attributes</h2></td></tr>
|
|
|
172
175
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
173
176
|
<div class="textblock"><p>Type Info of an abstract memory object </p>
|
|
174
177
|
|
|
175
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
178
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00580">580</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
176
179
|
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
|
|
177
180
|
<a id="a91b41b7ade5871362b77a2ef566b2830"></a>
|
|
178
181
|
<h2 class="memtitle"><span class="permalink"><a href="#a91b41b7ade5871362b77a2ef566b2830">◆ </a></span>MEMTYPE</h2>
|
|
@@ -195,23 +198,25 @@ Private Attributes</h2></td></tr>
|
|
|
195
198
|
<tr><td class="fieldname"><a id="a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c"></a>VAR_ARRAY_OBJ </td><td class="fielddoc"></td></tr>
|
|
196
199
|
<tr><td class="fieldname"><a id="a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd"></a>CONST_STRUCT_OBJ </td><td class="fielddoc"></td></tr>
|
|
197
200
|
<tr><td class="fieldname"><a id="a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047"></a>CONST_ARRAY_OBJ </td><td class="fielddoc"></td></tr>
|
|
198
|
-
<tr><td class="fieldname"><a id="
|
|
201
|
+
<tr><td class="fieldname"><a id="a91b41b7ade5871362b77a2ef566b2830a84c1bc6eaff950330a102afca1efc04c"></a>CONST_GLOBAL_OBJ </td><td class="fielddoc"></td></tr>
|
|
202
|
+
<tr><td class="fieldname"><a id="a91b41b7ade5871362b77a2ef566b2830a5e5bc3a1838476fbd80c52720c9d103e"></a>CONST_DATA </td><td class="fielddoc"></td></tr>
|
|
199
203
|
<tr><td class="fieldname"><a id="a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9"></a>HASPTR_OBJ </td><td class="fielddoc"></td></tr>
|
|
200
204
|
</table>
|
|
201
205
|
|
|
202
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
203
|
-
<div class="fragment"><div class="line"><a name="
|
|
204
|
-
<div class="ttc" id="
|
|
205
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c">SVF::ObjTypeInfo::HEAP_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
206
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830">SVF::ObjTypeInfo::MEMTYPE</a></div><div class="ttdeci">MEMTYPE</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
207
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c">SVF::ObjTypeInfo::VAR_ARRAY_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
208
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830ad2ba0edfac1460f3fd89e7a6c4c4691b"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad2ba0edfac1460f3fd89e7a6c4c4691b">SVF::ObjTypeInfo::GLOBVAR_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
209
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">SVF::ObjTypeInfo::HASPTR_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
210
|
-
<div class="ttc" id="
|
|
211
|
-
<div class="ttc" id="
|
|
212
|
-
<div class="ttc" id="
|
|
213
|
-
<div class="ttc" id="
|
|
214
|
-
<div class="ttc" id="
|
|
206
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00584">584</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
207
|
+
<div class="fragment"><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>  {</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830af5f94b2a41dab25fa08c94a989fb9515">FUNCTION_OBJ</a> = 0x1, <span class="comment">// object is a function</span></div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad2ba0edfac1460f3fd89e7a6c4c4691b">GLOBVAR_OBJ</a> = 0x2, <span class="comment">// object is a global variable</span></div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98">STATIC_OBJ</a> = 0x4, <span class="comment">// object is a static variable allocated before main</span></div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aad918042d1f04a5e3960817d55ccb5d5">STACK_OBJ</a> = 0x8, <span class="comment">// object is a stack variable</span></div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c">HEAP_OBJ</a> = 0x10, <span class="comment">// object is a heap variable</span></div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08">VAR_STRUCT_OBJ</a> = 0x20, <span class="comment">// object contains struct</span></div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c">VAR_ARRAY_OBJ</a> = 0x40, <span class="comment">// object contains array</span></div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd">CONST_STRUCT_OBJ</a> = 0x80, <span class="comment">// constant struct</span></div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047">CONST_ARRAY_OBJ</a> = 0x100, <span class="comment">// constant array</span></div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a84c1bc6eaff950330a102afca1efc04c">CONST_GLOBAL_OBJ</a> = 0x200, <span class="comment">// global constant object</span></div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a5e5bc3a1838476fbd80c52720c9d103e">CONST_DATA</a> = 0x400, <span class="comment">// constant object str e.g. 5, 10, 1.0</span></div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">HASPTR_OBJ</a> = 0x800 <span class="comment">// the object stores a pointer address</span></div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>  } <a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830">MEMTYPE</a>;</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047">SVF::ObjTypeInfo::CONST_ARRAY_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00594">SymbolTableInfo.h:594</a></div></div>
|
|
208
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a5e5bc3a1838476fbd80c52720c9d103e"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a5e5bc3a1838476fbd80c52720c9d103e">SVF::ObjTypeInfo::CONST_DATA</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00596">SymbolTableInfo.h:596</a></div></div>
|
|
209
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c">SVF::ObjTypeInfo::HEAP_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00590">SymbolTableInfo.h:590</a></div></div>
|
|
210
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830">SVF::ObjTypeInfo::MEMTYPE</a></div><div class="ttdeci">MEMTYPE</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00584">SymbolTableInfo.h:584</a></div></div>
|
|
211
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c">SVF::ObjTypeInfo::VAR_ARRAY_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00592">SymbolTableInfo.h:592</a></div></div>
|
|
212
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830ad2ba0edfac1460f3fd89e7a6c4c4691b"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad2ba0edfac1460f3fd89e7a6c4c4691b">SVF::ObjTypeInfo::GLOBVAR_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00587">SymbolTableInfo.h:587</a></div></div>
|
|
213
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">SVF::ObjTypeInfo::HASPTR_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00597">SymbolTableInfo.h:597</a></div></div>
|
|
214
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a84c1bc6eaff950330a102afca1efc04c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a84c1bc6eaff950330a102afca1efc04c">SVF::ObjTypeInfo::CONST_GLOBAL_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00595">SymbolTableInfo.h:595</a></div></div>
|
|
215
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830aad918042d1f04a5e3960817d55ccb5d5"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aad918042d1f04a5e3960817d55ccb5d5">SVF::ObjTypeInfo::STACK_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00589">SymbolTableInfo.h:589</a></div></div>
|
|
216
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830af5f94b2a41dab25fa08c94a989fb9515"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830af5f94b2a41dab25fa08c94a989fb9515">SVF::ObjTypeInfo::FUNCTION_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00586">SymbolTableInfo.h:586</a></div></div>
|
|
217
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98">SVF::ObjTypeInfo::STATIC_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00588">SymbolTableInfo.h:588</a></div></div>
|
|
218
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08">SVF::ObjTypeInfo::VAR_STRUCT_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00591">SymbolTableInfo.h:591</a></div></div>
|
|
219
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd">SVF::ObjTypeInfo::CONST_STRUCT_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00593">SymbolTableInfo.h:593</a></div></div>
|
|
215
220
|
</div><!-- fragment -->
|
|
216
221
|
</div>
|
|
217
222
|
</div>
|
|
@@ -258,10 +263,10 @@ Private Attributes</h2></td></tr>
|
|
|
258
263
|
|
|
259
264
|
<p>Constructors. </p>
|
|
260
265
|
|
|
261
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
262
|
-
<div class="fragment"><div class="line"><a name="
|
|
263
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a5ff63eb0654acd152f7d6c18618ee94a"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a5ff63eb0654acd152f7d6c18618ee94a">SVF::ObjTypeInfo::maxOffsetLimit</a></div><div class="ttdeci">u32_t maxOffsetLimit</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
264
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a6e7780d4e2639c089ff6c853d8d78a4d"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a6e7780d4e2639c089ff6c853d8d78a4d">SVF::ObjTypeInfo::type</a></div><div class="ttdeci">const Type * type</div><div class="ttdoc">LLVM type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
266
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00612">612</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
267
|
+
<div class="fragment"><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>  :</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a6e7780d4e2639c089ff6c853d8d78a4d">type</a>(t), <a class="code" href="classSVF_1_1ObjTypeInfo.html#ada56eaa1f91bf260b7b521adabc607fe">flags</a>(0), <a class="code" href="classSVF_1_1ObjTypeInfo.html#a5ff63eb0654acd152f7d6c18618ee94a">maxOffsetLimit</a>(max)</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>  {</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_ada56eaa1f91bf260b7b521adabc607fe"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#ada56eaa1f91bf260b7b521adabc607fe">SVF::ObjTypeInfo::flags</a></div><div class="ttdeci">Size_t flags</div><div class="ttdoc">Type flags. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00604">SymbolTableInfo.h:604</a></div></div>
|
|
268
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a5ff63eb0654acd152f7d6c18618ee94a"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a5ff63eb0654acd152f7d6c18618ee94a">SVF::ObjTypeInfo::maxOffsetLimit</a></div><div class="ttdeci">u32_t maxOffsetLimit</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00608">SymbolTableInfo.h:608</a></div></div>
|
|
269
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a6e7780d4e2639c089ff6c853d8d78a4d"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a6e7780d4e2639c089ff6c853d8d78a4d">SVF::ObjTypeInfo::type</a></div><div class="ttdeci">const Type * type</div><div class="ttdoc">LLVM type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00602">SymbolTableInfo.h:602</a></div></div>
|
|
265
270
|
</div><!-- fragment -->
|
|
266
271
|
</div>
|
|
267
272
|
</div>
|
|
@@ -301,10 +306,10 @@ Private Attributes</h2></td></tr>
|
|
|
301
306
|
|
|
302
307
|
<p>Constructor. </p>
|
|
303
308
|
|
|
304
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
305
|
-
<div class="fragment"><div class="line"><a name="
|
|
306
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a5ff63eb0654acd152f7d6c18618ee94a"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a5ff63eb0654acd152f7d6c18618ee94a">SVF::ObjTypeInfo::maxOffsetLimit</a></div><div class="ttdeci">u32_t maxOffsetLimit</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
307
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a6e7780d4e2639c089ff6c853d8d78a4d"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a6e7780d4e2639c089ff6c853d8d78a4d">SVF::ObjTypeInfo::type</a></div><div class="ttdeci">const Type * type</div><div class="ttdoc">LLVM type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
309
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00617">617</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
310
|
+
<div class="fragment"><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>  : <a class="code" href="classSVF_1_1ObjTypeInfo.html#a6e7780d4e2639c089ff6c853d8d78a4d">type</a>(t), <a class="code" href="classSVF_1_1ObjTypeInfo.html#ada56eaa1f91bf260b7b521adabc607fe">flags</a>(0), <a class="code" href="classSVF_1_1ObjTypeInfo.html#a5ff63eb0654acd152f7d6c18618ee94a">maxOffsetLimit</a>(max)</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>  {</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span> </div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_ada56eaa1f91bf260b7b521adabc607fe"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#ada56eaa1f91bf260b7b521adabc607fe">SVF::ObjTypeInfo::flags</a></div><div class="ttdeci">Size_t flags</div><div class="ttdoc">Type flags. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00604">SymbolTableInfo.h:604</a></div></div>
|
|
311
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a5ff63eb0654acd152f7d6c18618ee94a"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a5ff63eb0654acd152f7d6c18618ee94a">SVF::ObjTypeInfo::maxOffsetLimit</a></div><div class="ttdeci">u32_t maxOffsetLimit</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00608">SymbolTableInfo.h:608</a></div></div>
|
|
312
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a6e7780d4e2639c089ff6c853d8d78a4d"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a6e7780d4e2639c089ff6c853d8d78a4d">SVF::ObjTypeInfo::type</a></div><div class="ttdeci">const Type * type</div><div class="ttdoc">LLVM type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00602">SymbolTableInfo.h:602</a></div></div>
|
|
308
313
|
</div><!-- fragment -->
|
|
309
314
|
</div>
|
|
310
315
|
</div>
|
|
@@ -333,8 +338,8 @@ Private Attributes</h2></td></tr>
|
|
|
333
338
|
|
|
334
339
|
<p>Destructor. </p>
|
|
335
340
|
|
|
336
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
337
|
-
<div class="fragment"><div class="line"><a name="
|
|
341
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00622">622</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
342
|
+
<div class="fragment"><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>  {</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span> </div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>  }</div></div><!-- fragment -->
|
|
338
343
|
</div>
|
|
339
344
|
</div>
|
|
340
345
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
@@ -358,9 +363,9 @@ Private Attributes</h2></td></tr>
|
|
|
358
363
|
<p>Analyse types of heap and static objects </p>
|
|
359
364
|
|
|
360
365
|
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8cpp_source.html#l00516">516</a> of file <a class="el" href="SymbolTableInfo_8cpp_source.html">SymbolTableInfo.cpp</a>.</p>
|
|
361
|
-
<div class="fragment"><div class="line"><a name="l00517"></a><span class="lineno"> 517</span> {</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>  <span class="comment">// TODO: Heap and static objects are considered as pointers right now.</span></div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>  <span class="comment">// Refine this function to get more details about heap and static objects.</span></div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#ad6fb2bfae3d4b73a6821a87106f65f49">setFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c">HEAP_OBJ</a>);</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#ad6fb2bfae3d4b73a6821a87106f65f49">setFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">HASPTR_OBJ</a>);</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span> }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c">SVF::ObjTypeInfo::HEAP_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
362
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_ad6fb2bfae3d4b73a6821a87106f65f49"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#ad6fb2bfae3d4b73a6821a87106f65f49">SVF::ObjTypeInfo::setFlag</a></div><div class="ttdeci">void setFlag(MEMTYPE mask)</div><div class="ttdoc">Flag for this object type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
363
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">SVF::ObjTypeInfo::HASPTR_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
366
|
+
<div class="fragment"><div class="line"><a name="l00517"></a><span class="lineno"> 517</span> {</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>  <span class="comment">// TODO: Heap and static objects are considered as pointers right now.</span></div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>  <span class="comment">// Refine this function to get more details about heap and static objects.</span></div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#ad6fb2bfae3d4b73a6821a87106f65f49">setFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c">HEAP_OBJ</a>);</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#ad6fb2bfae3d4b73a6821a87106f65f49">setFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">HASPTR_OBJ</a>);</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span> }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c">SVF::ObjTypeInfo::HEAP_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00590">SymbolTableInfo.h:590</a></div></div>
|
|
367
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_ad6fb2bfae3d4b73a6821a87106f65f49"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#ad6fb2bfae3d4b73a6821a87106f65f49">SVF::ObjTypeInfo::setFlag</a></div><div class="ttdeci">void setFlag(MEMTYPE mask)</div><div class="ttdoc">Flag for this object type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00653">SymbolTableInfo.h:653</a></div></div>
|
|
368
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">SVF::ObjTypeInfo::HASPTR_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00597">SymbolTableInfo.h:597</a></div></div>
|
|
364
369
|
</div><!-- fragment -->
|
|
365
370
|
</div>
|
|
366
371
|
</div>
|
|
@@ -384,9 +389,9 @@ Private Attributes</h2></td></tr>
|
|
|
384
389
|
<p>Analyse types of heap and static objects </p>
|
|
385
390
|
|
|
386
391
|
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8cpp_source.html#l00527">527</a> of file <a class="el" href="SymbolTableInfo_8cpp_source.html">SymbolTableInfo.cpp</a>.</p>
|
|
387
|
-
<div class="fragment"><div class="line"><a name="l00528"></a><span class="lineno"> 528</span> {</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>  <span class="comment">// TODO: Heap and static objects are considered as pointers right now.</span></div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>  <span class="comment">// Refine this function to get more details about heap and static objects.</span></div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#ad6fb2bfae3d4b73a6821a87106f65f49">setFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98">STATIC_OBJ</a>);</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#ad6fb2bfae3d4b73a6821a87106f65f49">setFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">HASPTR_OBJ</a>);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span> }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_ad6fb2bfae3d4b73a6821a87106f65f49"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#ad6fb2bfae3d4b73a6821a87106f65f49">SVF::ObjTypeInfo::setFlag</a></div><div class="ttdeci">void setFlag(MEMTYPE mask)</div><div class="ttdoc">Flag for this object type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
388
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">SVF::ObjTypeInfo::HASPTR_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
389
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98">SVF::ObjTypeInfo::STATIC_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
392
|
+
<div class="fragment"><div class="line"><a name="l00528"></a><span class="lineno"> 528</span> {</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>  <span class="comment">// TODO: Heap and static objects are considered as pointers right now.</span></div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>  <span class="comment">// Refine this function to get more details about heap and static objects.</span></div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#ad6fb2bfae3d4b73a6821a87106f65f49">setFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98">STATIC_OBJ</a>);</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#ad6fb2bfae3d4b73a6821a87106f65f49">setFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">HASPTR_OBJ</a>);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span> }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_ad6fb2bfae3d4b73a6821a87106f65f49"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#ad6fb2bfae3d4b73a6821a87106f65f49">SVF::ObjTypeInfo::setFlag</a></div><div class="ttdeci">void setFlag(MEMTYPE mask)</div><div class="ttdoc">Flag for this object type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00653">SymbolTableInfo.h:653</a></div></div>
|
|
393
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">SVF::ObjTypeInfo::HASPTR_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00597">SymbolTableInfo.h:597</a></div></div>
|
|
394
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98">SVF::ObjTypeInfo::STATIC_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00588">SymbolTableInfo.h:588</a></div></div>
|
|
390
395
|
</div><!-- fragment -->
|
|
391
396
|
</div>
|
|
392
397
|
</div>
|
|
@@ -415,8 +420,8 @@ Private Attributes</h2></td></tr>
|
|
|
415
420
|
|
|
416
421
|
<p>Get max field offset limit. </p>
|
|
417
422
|
|
|
418
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
419
|
-
<div class="fragment"><div class="line"><a name="
|
|
423
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00640">640</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
424
|
+
<div class="fragment"><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>  {</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a5ff63eb0654acd152f7d6c18618ee94a">maxOffsetLimit</a>;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a5ff63eb0654acd152f7d6c18618ee94a"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a5ff63eb0654acd152f7d6c18618ee94a">SVF::ObjTypeInfo::maxOffsetLimit</a></div><div class="ttdeci">u32_t maxOffsetLimit</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00608">SymbolTableInfo.h:608</a></div></div>
|
|
420
425
|
</div><!-- fragment -->
|
|
421
426
|
</div>
|
|
422
427
|
</div>
|
|
@@ -445,8 +450,8 @@ Private Attributes</h2></td></tr>
|
|
|
445
450
|
|
|
446
451
|
<p>Get LLVM type. </p>
|
|
447
452
|
|
|
448
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
449
|
-
<div class="fragment"><div class="line"><a name="
|
|
453
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00634">634</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
454
|
+
<div class="fragment"><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>  {</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a6e7780d4e2639c089ff6c853d8d78a4d">type</a>;</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a6e7780d4e2639c089ff6c853d8d78a4d"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a6e7780d4e2639c089ff6c853d8d78a4d">SVF::ObjTypeInfo::type</a></div><div class="ttdeci">const Type * type</div><div class="ttdoc">LLVM type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00602">SymbolTableInfo.h:602</a></div></div>
|
|
450
455
|
</div><!-- fragment -->
|
|
451
456
|
</div>
|
|
452
457
|
</div>
|
|
@@ -474,8 +479,8 @@ Private Attributes</h2></td></tr>
|
|
|
474
479
|
</table>
|
|
475
480
|
</div><div class="memdoc">
|
|
476
481
|
|
|
477
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
478
|
-
<div class="fragment"><div class="line"><a name="
|
|
482
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00657">657</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
483
|
+
<div class="fragment"><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>  {</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>  <span class="keywordflow">return</span> (<a class="code" href="classSVF_1_1ObjTypeInfo.html#ada56eaa1f91bf260b7b521adabc607fe">flags</a> & mask) == mask;</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_ada56eaa1f91bf260b7b521adabc607fe"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#ada56eaa1f91bf260b7b521adabc607fe">SVF::ObjTypeInfo::flags</a></div><div class="ttdeci">Size_t flags</div><div class="ttdoc">Type flags. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00604">SymbolTableInfo.h:604</a></div></div>
|
|
479
484
|
</div><!-- fragment -->
|
|
480
485
|
</div>
|
|
481
486
|
</div>
|
|
@@ -502,9 +507,9 @@ Private Attributes</h2></td></tr>
|
|
|
502
507
|
</table>
|
|
503
508
|
</div><div class="memdoc">
|
|
504
509
|
|
|
505
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
506
|
-
<div class="fragment"><div class="line"><a name="
|
|
507
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">SVF::ObjTypeInfo::HASPTR_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
510
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00722">722</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
511
|
+
<div class="fragment"><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>  {</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">HASPTR_OBJ</a>);</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
512
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad17b2a35fb492561c4011dbe3880c6c9">SVF::ObjTypeInfo::HASPTR_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00597">SymbolTableInfo.h:597</a></div></div>
|
|
508
513
|
</div><!-- fragment -->
|
|
509
514
|
</div>
|
|
510
515
|
</div>
|
|
@@ -531,15 +536,15 @@ Private Attributes</h2></td></tr>
|
|
|
531
536
|
</table>
|
|
532
537
|
</div><div class="memdoc">
|
|
533
538
|
|
|
534
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
535
|
-
<div class="fragment"><div class="line"><a name="
|
|
536
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047">SVF::ObjTypeInfo::CONST_ARRAY_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
537
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c">SVF::ObjTypeInfo::VAR_ARRAY_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
539
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00710">710</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
540
|
+
<div class="fragment"><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>  {</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c">VAR_ARRAY_OBJ</a>) || <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047">CONST_ARRAY_OBJ</a>);</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
541
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047">SVF::ObjTypeInfo::CONST_ARRAY_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00594">SymbolTableInfo.h:594</a></div></div>
|
|
542
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c">SVF::ObjTypeInfo::VAR_ARRAY_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00592">SymbolTableInfo.h:592</a></div></div>
|
|
538
543
|
</div><!-- fragment -->
|
|
539
544
|
</div>
|
|
540
545
|
</div>
|
|
541
|
-
<a id="
|
|
542
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
546
|
+
<a id="ac1ee7a720959c0e97496870d6e759212"></a>
|
|
547
|
+
<h2 class="memtitle"><span class="permalink"><a href="#ac1ee7a720959c0e97496870d6e759212">◆ </a></span>isConstantArray()</h2>
|
|
543
548
|
|
|
544
549
|
<div class="memitem">
|
|
545
550
|
<div class="memproto">
|
|
@@ -548,7 +553,7 @@ Private Attributes</h2></td></tr>
|
|
|
548
553
|
<td class="mlabels-left">
|
|
549
554
|
<table class="memname">
|
|
550
555
|
<tr>
|
|
551
|
-
<td class="memname">bool SVF::ObjTypeInfo::
|
|
556
|
+
<td class="memname">bool SVF::ObjTypeInfo::isConstantArray </td>
|
|
552
557
|
<td>(</td>
|
|
553
558
|
<td class="paramname"></td><td>)</td>
|
|
554
559
|
<td></td>
|
|
@@ -561,14 +566,14 @@ Private Attributes</h2></td></tr>
|
|
|
561
566
|
</table>
|
|
562
567
|
</div><div class="memdoc">
|
|
563
568
|
|
|
564
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
565
|
-
<div class="fragment"><div class="line"><a name="
|
|
566
|
-
<div class="ttc" id="
|
|
569
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00706">706</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
570
|
+
<div class="fragment"><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>  {</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047">CONST_ARRAY_OBJ</a>);</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
571
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aff4142c0c411dea07b484a19af514047">SVF::ObjTypeInfo::CONST_ARRAY_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00594">SymbolTableInfo.h:594</a></div></div>
|
|
567
572
|
</div><!-- fragment -->
|
|
568
573
|
</div>
|
|
569
574
|
</div>
|
|
570
|
-
<a id="
|
|
571
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
575
|
+
<a id="a6f6c80f7d067a6082a9af04d2547cf34"></a>
|
|
576
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a6f6c80f7d067a6082a9af04d2547cf34">◆ </a></span>isConstantData()</h2>
|
|
572
577
|
|
|
573
578
|
<div class="memitem">
|
|
574
579
|
<div class="memproto">
|
|
@@ -577,7 +582,7 @@ Private Attributes</h2></td></tr>
|
|
|
577
582
|
<td class="mlabels-left">
|
|
578
583
|
<table class="memname">
|
|
579
584
|
<tr>
|
|
580
|
-
<td class="memname">bool SVF::ObjTypeInfo::
|
|
585
|
+
<td class="memname">bool SVF::ObjTypeInfo::isConstantData </td>
|
|
581
586
|
<td>(</td>
|
|
582
587
|
<td class="paramname"></td><td>)</td>
|
|
583
588
|
<td></td>
|
|
@@ -590,14 +595,14 @@ Private Attributes</h2></td></tr>
|
|
|
590
595
|
</table>
|
|
591
596
|
</div><div class="memdoc">
|
|
592
597
|
|
|
593
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
594
|
-
<div class="fragment"><div class="line"><a name="
|
|
595
|
-
<div class="ttc" id="
|
|
598
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00718">718</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
599
|
+
<div class="fragment"><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>  {</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a5e5bc3a1838476fbd80c52720c9d103e">CONST_DATA</a>);</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
600
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a5e5bc3a1838476fbd80c52720c9d103e"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a5e5bc3a1838476fbd80c52720c9d103e">SVF::ObjTypeInfo::CONST_DATA</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00596">SymbolTableInfo.h:596</a></div></div>
|
|
596
601
|
</div><!-- fragment -->
|
|
597
602
|
</div>
|
|
598
603
|
</div>
|
|
599
|
-
<a id="
|
|
600
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
604
|
+
<a id="a41f916ab4e3a2c163fca636eae948ce7"></a>
|
|
605
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a41f916ab4e3a2c163fca636eae948ce7">◆ </a></span>isConstantStruct()</h2>
|
|
601
606
|
|
|
602
607
|
<div class="memitem">
|
|
603
608
|
<div class="memproto">
|
|
@@ -606,7 +611,7 @@ Private Attributes</h2></td></tr>
|
|
|
606
611
|
<td class="mlabels-left">
|
|
607
612
|
<table class="memname">
|
|
608
613
|
<tr>
|
|
609
|
-
<td class="memname">bool SVF::ObjTypeInfo::
|
|
614
|
+
<td class="memname">bool SVF::ObjTypeInfo::isConstantStruct </td>
|
|
610
615
|
<td>(</td>
|
|
611
616
|
<td class="paramname"></td><td>)</td>
|
|
612
617
|
<td></td>
|
|
@@ -619,9 +624,39 @@ Private Attributes</h2></td></tr>
|
|
|
619
624
|
</table>
|
|
620
625
|
</div><div class="memdoc">
|
|
621
626
|
|
|
622
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
623
|
-
<div class="fragment"><div class="line"><a name="
|
|
624
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd">SVF::ObjTypeInfo::CONST_STRUCT_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
627
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00694">694</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
628
|
+
<div class="fragment"><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>  {</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd">CONST_STRUCT_OBJ</a>);</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
629
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd">SVF::ObjTypeInfo::CONST_STRUCT_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00593">SymbolTableInfo.h:593</a></div></div>
|
|
630
|
+
</div><!-- fragment -->
|
|
631
|
+
</div>
|
|
632
|
+
</div>
|
|
633
|
+
<a id="a8e6c60978df9828c1dcb54086e83edc1"></a>
|
|
634
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a8e6c60978df9828c1dcb54086e83edc1">◆ </a></span>isConstDataOrConstGlobal()</h2>
|
|
635
|
+
|
|
636
|
+
<div class="memitem">
|
|
637
|
+
<div class="memproto">
|
|
638
|
+
<table class="mlabels">
|
|
639
|
+
<tr>
|
|
640
|
+
<td class="mlabels-left">
|
|
641
|
+
<table class="memname">
|
|
642
|
+
<tr>
|
|
643
|
+
<td class="memname">bool SVF::ObjTypeInfo::isConstDataOrConstGlobal </td>
|
|
644
|
+
<td>(</td>
|
|
645
|
+
<td class="paramname"></td><td>)</td>
|
|
646
|
+
<td></td>
|
|
647
|
+
</tr>
|
|
648
|
+
</table>
|
|
649
|
+
</td>
|
|
650
|
+
<td class="mlabels-right">
|
|
651
|
+
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
|
652
|
+
</tr>
|
|
653
|
+
</table>
|
|
654
|
+
</div><div class="memdoc">
|
|
655
|
+
|
|
656
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00714">714</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
657
|
+
<div class="fragment"><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>  {</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a84c1bc6eaff950330a102afca1efc04c">CONST_GLOBAL_OBJ</a>) || <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a5e5bc3a1838476fbd80c52720c9d103e">CONST_DATA</a>);</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
658
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a5e5bc3a1838476fbd80c52720c9d103e"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a5e5bc3a1838476fbd80c52720c9d103e">SVF::ObjTypeInfo::CONST_DATA</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00596">SymbolTableInfo.h:596</a></div></div>
|
|
659
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a84c1bc6eaff950330a102afca1efc04c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a84c1bc6eaff950330a102afca1efc04c">SVF::ObjTypeInfo::CONST_GLOBAL_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00595">SymbolTableInfo.h:595</a></div></div>
|
|
625
660
|
</div><!-- fragment -->
|
|
626
661
|
</div>
|
|
627
662
|
</div>
|
|
@@ -650,9 +685,9 @@ Private Attributes</h2></td></tr>
|
|
|
650
685
|
|
|
651
686
|
<p>Object attributes. </p>
|
|
652
687
|
|
|
653
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
654
|
-
<div class="fragment"><div class="line"><a name="
|
|
655
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830af5f94b2a41dab25fa08c94a989fb9515"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830af5f94b2a41dab25fa08c94a989fb9515">SVF::ObjTypeInfo::FUNCTION_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
688
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00665">665</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
689
|
+
<div class="fragment"><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>  {</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830af5f94b2a41dab25fa08c94a989fb9515">FUNCTION_OBJ</a>);</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
690
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830af5f94b2a41dab25fa08c94a989fb9515"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830af5f94b2a41dab25fa08c94a989fb9515">SVF::ObjTypeInfo::FUNCTION_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00586">SymbolTableInfo.h:586</a></div></div>
|
|
656
691
|
</div><!-- fragment -->
|
|
657
692
|
</div>
|
|
658
693
|
</div>
|
|
@@ -679,9 +714,9 @@ Private Attributes</h2></td></tr>
|
|
|
679
714
|
</table>
|
|
680
715
|
</div><div class="memdoc">
|
|
681
716
|
|
|
682
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
683
|
-
<div class="fragment"><div class="line"><a name="
|
|
684
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830ad2ba0edfac1460f3fd89e7a6c4c4691b"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad2ba0edfac1460f3fd89e7a6c4c4691b">SVF::ObjTypeInfo::GLOBVAR_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
717
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00669">669</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
718
|
+
<div class="fragment"><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>  {</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad2ba0edfac1460f3fd89e7a6c4c4691b">GLOBVAR_OBJ</a>);</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
719
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830ad2ba0edfac1460f3fd89e7a6c4c4691b"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830ad2ba0edfac1460f3fd89e7a6c4c4691b">SVF::ObjTypeInfo::GLOBVAR_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00587">SymbolTableInfo.h:587</a></div></div>
|
|
685
720
|
</div><!-- fragment -->
|
|
686
721
|
</div>
|
|
687
722
|
</div>
|
|
@@ -708,9 +743,9 @@ Private Attributes</h2></td></tr>
|
|
|
708
743
|
</table>
|
|
709
744
|
</div><div class="memdoc">
|
|
710
745
|
|
|
711
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
712
|
-
<div class="fragment"><div class="line"><a name="
|
|
713
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c">SVF::ObjTypeInfo::HEAP_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
746
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00681">681</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
747
|
+
<div class="fragment"><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>  {</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c">HEAP_OBJ</a>);</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
748
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a692b4b0df23bad19ea04d18b01bf445c">SVF::ObjTypeInfo::HEAP_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00590">SymbolTableInfo.h:590</a></div></div>
|
|
714
749
|
</div><!-- fragment -->
|
|
715
750
|
</div>
|
|
716
751
|
</div>
|
|
@@ -741,17 +776,17 @@ Private Attributes</h2></td></tr>
|
|
|
741
776
|
|
|
742
777
|
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8cpp_source.html#l00538">538</a> of file <a class="el" href="SymbolTableInfo_8cpp_source.html">SymbolTableInfo.cpp</a>.</p>
|
|
743
778
|
<div class="fragment"><div class="line"><a name="l00539"></a><span class="lineno"> 539</span> {</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1ObjTypeInfo.html#a26c179394fbda9a9261d0bf3f52b619d">isHeap</a>() || <a class="code" href="classSVF_1_1ObjTypeInfo.html#a3594dc1c1943dbac0ab72f2ff163c523">isStaticObj</a>())</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span> </div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">Type</a>* ety = <a class="code" href="classSVF_1_1ObjTypeInfo.html#a706cdc47e78732853252d5a4af85653a">getType</a>();</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>  <span class="keywordflow">while</span> (<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a146d286041987860388da3d8bc85cee3">ArrayType</a> *AT= SVFUtil::dyn_cast<ArrayType>(ety))</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>  {</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>  ety = AT->getElementType();</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>  }</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span> </div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>  <span class="keywordflow">if</span> (SVFUtil::isa<StructType>(ety) || SVFUtil::isa<ArrayType>(ety))</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>  {</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>  <span class="keywordtype">bool</span> hasIntersection = <span class="keyword">false</span>;</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>  <span class="keyword">const</span> vector<FlattenedFieldInfo> &infovec = <a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()-><a class="code" href="classSVF_1_1SymbolTableInfo.html#a9ca564bdc1f40a2ccd30d98e0e4075b0">getFlattenedFieldInfoVec</a>(ety);</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  vector<FlattenedFieldInfo>::const_iterator it = infovec.begin();</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>  vector<FlattenedFieldInfo>::const_iterator eit = infovec.end();</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  <span class="keywordflow">for</span> (; it != eit; ++it)</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>  {</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1FlattenedFieldInfo.html">FlattenedFieldInfo</a>& fieldLS = *it;</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>  <span class="keywordflow">if</span> (ls.<a class="code" href="classSVF_1_1LocationSet.html#a0e1cddc4228e310c95f68c661c7b94c8">intersects</a>(<a class="code" href="classSVF_1_1LocationSet.html">LocationSet</a>(fieldLS)))</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>  {</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>  hasIntersection = <span class="keyword">true</span>;</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>  <span class="keywordflow">if</span> (fieldLS.<a class="code" href="classSVF_1_1FlattenedFieldInfo.html#a92c1b65c36feeabf09541c9af4650f14">getFlattenElemTy</a>()->isPointerTy())</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>  }</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>  }</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(hasIntersection && <span class="stringliteral">"cannot find field of specified offset"</span>);</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>  }</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>  {</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1ObjTypeInfo.html#a3594dc1c1943dbac0ab72f2ff163c523">isStaticObj</a>() || <a class="code" href="classSVF_1_1ObjTypeInfo.html#a26c179394fbda9a9261d0bf3f52b619d">isHeap</a>())</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>  {</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>  <span class="comment">// TODO: Objects which cannot find proper field for a certain offset including</span></div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>  <span class="comment">// arguments in main(), static objects allocated before main and heap</span></div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  <span class="comment">// objects. Right now they're considered to have infinite fields and we</span></div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>  <span class="comment">// treat each field as pointers conservatively.</span></div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>  <span class="comment">// Try to model static and heap objects more accurately in the future.</span></div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  }</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>  {</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>  <span class="comment">// TODO: Using new memory model (locMM) may create objects with spurious offset</span></div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>  <span class="comment">// as we simply return new offset by mod operation without checking its</span></div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>  <span class="comment">// correctness in LocSymTableInfo::getModulusOffset(). So the following</span></div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>  <span class="comment">// assertion may fail. Try to refine the new memory model.</span></div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>  <span class="comment">//assert(ls.getFieldOffset() == 0 && "cannot get a field from a non-struct type");</span></div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>  <span class="keywordflow">return</span> (<a class="code" href="classSVF_1_1ObjTypeInfo.html#ac5bae1e7917f415193a805e8d2e29320">hasPtrObj</a>() == <span class="keyword">false</span>);</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>  }</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>  }</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span> }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a0e1cddc4228e310c95f68c661c7b94c8"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a0e1cddc4228e310c95f68c661c7b94c8">SVF::LocationSet::intersects</a></div><div class="ttdeci">bool intersects(const LocationSet &RHS) const</div><div class="ttdoc">Return TRUE if we share any location in common with RHS. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00174">LocationSet.h:174</a></div></div>
|
|
744
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a26c179394fbda9a9261d0bf3f52b619d"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a26c179394fbda9a9261d0bf3f52b619d">SVF::ObjTypeInfo::isHeap</a></div><div class="ttdeci">bool isHeap()</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
779
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a26c179394fbda9a9261d0bf3f52b619d"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a26c179394fbda9a9261d0bf3f52b619d">SVF::ObjTypeInfo::isHeap</a></div><div class="ttdeci">bool isHeap()</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00681">SymbolTableInfo.h:681</a></div></div>
|
|
745
780
|
<div class="ttc" id="namespaceSVF_html_a1d008c0666c145622b81d427be64c52d"><div class="ttname"><a href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">SVF::Type</a></div><div class="ttdeci">llvm::Type Type</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00075">BasicTypes.h:75</a></div></div>
|
|
746
781
|
<div class="ttc" id="classSVF_1_1FlattenedFieldInfo_html_a92c1b65c36feeabf09541c9af4650f14"><div class="ttname"><a href="classSVF_1_1FlattenedFieldInfo.html#a92c1b65c36feeabf09541c9af4650f14">SVF::FlattenedFieldInfo::getFlattenElemTy</a></div><div class="ttdeci">const Type * getFlattenElemTy() const</div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00059">LocationSet.h:59</a></div></div>
|
|
747
782
|
<div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
|
|
748
783
|
<div class="ttc" id="namespaceSVF_html_a146d286041987860388da3d8bc85cee3"><div class="ttname"><a href="namespaceSVF.html#a146d286041987860388da3d8bc85cee3">SVF::ArrayType</a></div><div class="ttdeci">llvm::ArrayType ArrayType</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00107">BasicTypes.h:107</a></div></div>
|
|
749
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a3594dc1c1943dbac0ab72f2ff163c523"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a3594dc1c1943dbac0ab72f2ff163c523">SVF::ObjTypeInfo::isStaticObj</a></div><div class="ttdeci">bool isStaticObj()</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
784
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a3594dc1c1943dbac0ab72f2ff163c523"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a3594dc1c1943dbac0ab72f2ff163c523">SVF::ObjTypeInfo::isStaticObj</a></div><div class="ttdeci">bool isStaticObj()</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00673">SymbolTableInfo.h:673</a></div></div>
|
|
750
785
|
<div class="ttc" id="classSVF_1_1FlattenedFieldInfo_html"><div class="ttname"><a href="classSVF_1_1FlattenedFieldInfo.html">SVF::FlattenedFieldInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00045">LocationSet.h:45</a></div></div>
|
|
751
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a706cdc47e78732853252d5a4af85653a"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a706cdc47e78732853252d5a4af85653a">SVF::ObjTypeInfo::getType</a></div><div class="ttdeci">const Type * getType() const</div><div class="ttdoc">Get LLVM type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
786
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a706cdc47e78732853252d5a4af85653a"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a706cdc47e78732853252d5a4af85653a">SVF::ObjTypeInfo::getType</a></div><div class="ttdeci">const Type * getType() const</div><div class="ttdoc">Get LLVM type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00634">SymbolTableInfo.h:634</a></div></div>
|
|
752
787
|
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00059">SymbolTableInfo.cpp:59</a></div></div>
|
|
753
788
|
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a9ca564bdc1f40a2ccd30d98e0e4075b0"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a9ca564bdc1f40a2ccd30d98e0e4075b0">SVF::SymbolTableInfo::getFlattenedFieldInfoVec</a></div><div class="ttdeci">const std::vector< FlattenedFieldInfo > & getFlattenedFieldInfoVec(const Type *T)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00330">SymbolTableInfo.cpp:330</a></div></div>
|
|
754
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_ac5bae1e7917f415193a805e8d2e29320"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#ac5bae1e7917f415193a805e8d2e29320">SVF::ObjTypeInfo::hasPtrObj</a></div><div class="ttdeci">bool hasPtrObj()</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
789
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_ac5bae1e7917f415193a805e8d2e29320"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#ac5bae1e7917f415193a805e8d2e29320">SVF::ObjTypeInfo::hasPtrObj</a></div><div class="ttdeci">bool hasPtrObj()</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00722">SymbolTableInfo.h:722</a></div></div>
|
|
755
790
|
<div class="ttc" id="classSVF_1_1LocationSet_html"><div class="ttname"><a href="classSVF_1_1LocationSet.html">SVF::LocationSet</a></div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00072">LocationSet.h:72</a></div></div>
|
|
756
791
|
</div><!-- fragment -->
|
|
757
792
|
</div>
|
|
@@ -779,9 +814,9 @@ Private Attributes</h2></td></tr>
|
|
|
779
814
|
</table>
|
|
780
815
|
</div><div class="memdoc">
|
|
781
816
|
|
|
782
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
783
|
-
<div class="fragment"><div class="line"><a name="
|
|
784
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830aad918042d1f04a5e3960817d55ccb5d5"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aad918042d1f04a5e3960817d55ccb5d5">SVF::ObjTypeInfo::STACK_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
817
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00677">677</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
818
|
+
<div class="fragment"><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>  {</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aad918042d1f04a5e3960817d55ccb5d5">STACK_OBJ</a>);</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
819
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830aad918042d1f04a5e3960817d55ccb5d5"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aad918042d1f04a5e3960817d55ccb5d5">SVF::ObjTypeInfo::STACK_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00589">SymbolTableInfo.h:589</a></div></div>
|
|
785
820
|
</div><!-- fragment -->
|
|
786
821
|
</div>
|
|
787
822
|
</div>
|
|
@@ -808,9 +843,9 @@ Private Attributes</h2></td></tr>
|
|
|
808
843
|
</table>
|
|
809
844
|
</div><div class="memdoc">
|
|
810
845
|
|
|
811
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
812
|
-
<div class="fragment"><div class="line"><a name="
|
|
813
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98">SVF::ObjTypeInfo::STATIC_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
846
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00673">673</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
847
|
+
<div class="fragment"><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>  {</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98">STATIC_OBJ</a>);</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
848
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a4e7606afe2dabdef9c9836ae798a9d98">SVF::ObjTypeInfo::STATIC_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00588">SymbolTableInfo.h:588</a></div></div>
|
|
814
849
|
</div><!-- fragment -->
|
|
815
850
|
</div>
|
|
816
851
|
</div>
|
|
@@ -837,10 +872,10 @@ Private Attributes</h2></td></tr>
|
|
|
837
872
|
</table>
|
|
838
873
|
</div><div class="memdoc">
|
|
839
874
|
|
|
840
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
841
|
-
<div class="fragment"><div class="line"><a name="
|
|
842
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08">SVF::ObjTypeInfo::VAR_STRUCT_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
843
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd">SVF::ObjTypeInfo::CONST_STRUCT_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
875
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00698">698</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
876
|
+
<div class="fragment"><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>  {</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08">VAR_STRUCT_OBJ</a>) || <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd">CONST_STRUCT_OBJ</a>);</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
877
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08">SVF::ObjTypeInfo::VAR_STRUCT_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00591">SymbolTableInfo.h:591</a></div></div>
|
|
878
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830a6443b9fadd2d34e00832b2215a120ebd">SVF::ObjTypeInfo::CONST_STRUCT_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00593">SymbolTableInfo.h:593</a></div></div>
|
|
844
879
|
</div><!-- fragment -->
|
|
845
880
|
</div>
|
|
846
881
|
</div>
|
|
@@ -867,9 +902,9 @@ Private Attributes</h2></td></tr>
|
|
|
867
902
|
</table>
|
|
868
903
|
</div><div class="memdoc">
|
|
869
904
|
|
|
870
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
871
|
-
<div class="fragment"><div class="line"><a name="
|
|
872
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c">SVF::ObjTypeInfo::VAR_ARRAY_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
905
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00702">702</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
906
|
+
<div class="fragment"><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>  {</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c">VAR_ARRAY_OBJ</a>);</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
907
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830adedc43e0fcaebf433120869aa9307b1c">SVF::ObjTypeInfo::VAR_ARRAY_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00592">SymbolTableInfo.h:592</a></div></div>
|
|
873
908
|
</div><!-- fragment -->
|
|
874
909
|
</div>
|
|
875
910
|
</div>
|
|
@@ -897,9 +932,9 @@ Private Attributes</h2></td></tr>
|
|
|
897
932
|
</div><div class="memdoc">
|
|
898
933
|
<p>Object attributes (noted that an object can be a nested compound types) e.g. both isStruct and isArray can return true </p>
|
|
899
934
|
|
|
900
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
901
|
-
<div class="fragment"><div class="line"><a name="
|
|
902
|
-
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08">SVF::ObjTypeInfo::VAR_STRUCT_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
935
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00690">690</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
936
|
+
<div class="fragment"><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>  {</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">hasFlag</a>(<a class="code" href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08">VAR_STRUCT_OBJ</a>);</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a8e630eb30d05f665b998c6f9326d65cb"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a8e630eb30d05f665b998c6f9326d65cb">SVF::ObjTypeInfo::hasFlag</a></div><div class="ttdeci">bool hasFlag(MEMTYPE mask)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00657">SymbolTableInfo.h:657</a></div></div>
|
|
937
|
+
<div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a91b41b7ade5871362b77a2ef566b2830aaf98981bd15b41f543fd99d0c6222f08">SVF::ObjTypeInfo::VAR_STRUCT_OBJ</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00591">SymbolTableInfo.h:591</a></div></div>
|
|
903
938
|
</div><!-- fragment -->
|
|
904
939
|
</div>
|
|
905
940
|
</div>
|
|
@@ -929,8 +964,8 @@ Private Attributes</h2></td></tr>
|
|
|
929
964
|
|
|
930
965
|
<p>Flag for this object type. </p>
|
|
931
966
|
|
|
932
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
933
|
-
<div class="fragment"><div class="line"><a name="
|
|
967
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00653">653</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
968
|
+
<div class="fragment"><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>  {</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#ada56eaa1f91bf260b7b521adabc607fe">flags</a> |= mask;</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_ada56eaa1f91bf260b7b521adabc607fe"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#ada56eaa1f91bf260b7b521adabc607fe">SVF::ObjTypeInfo::flags</a></div><div class="ttdeci">Size_t flags</div><div class="ttdoc">Type flags. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00604">SymbolTableInfo.h:604</a></div></div>
|
|
934
969
|
</div><!-- fragment -->
|
|
935
970
|
</div>
|
|
936
971
|
</div>
|
|
@@ -960,8 +995,8 @@ Private Attributes</h2></td></tr>
|
|
|
960
995
|
|
|
961
996
|
<p>Get max field offset limit. </p>
|
|
962
997
|
|
|
963
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
964
|
-
<div class="fragment"><div class="line"><a name="
|
|
998
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00646">646</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
999
|
+
<div class="fragment"><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>  {</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>  <a class="code" href="classSVF_1_1ObjTypeInfo.html#a5ff63eb0654acd152f7d6c18618ee94a">maxOffsetLimit</a> = limit;</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>  }</div><div class="ttc" id="classSVF_1_1ObjTypeInfo_html_a5ff63eb0654acd152f7d6c18618ee94a"><div class="ttname"><a href="classSVF_1_1ObjTypeInfo.html#a5ff63eb0654acd152f7d6c18618ee94a">SVF::ObjTypeInfo::maxOffsetLimit</a></div><div class="ttdeci">u32_t maxOffsetLimit</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00608">SymbolTableInfo.h:608</a></div></div>
|
|
965
1000
|
</div><!-- fragment -->
|
|
966
1001
|
</div>
|
|
967
1002
|
</div>
|
|
@@ -988,7 +1023,7 @@ Private Attributes</h2></td></tr>
|
|
|
988
1023
|
|
|
989
1024
|
<p>Type flags. </p>
|
|
990
1025
|
|
|
991
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
1026
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00604">604</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
992
1027
|
|
|
993
1028
|
</div>
|
|
994
1029
|
</div>
|
|
@@ -1013,7 +1048,7 @@ Private Attributes</h2></td></tr>
|
|
|
1013
1048
|
</div><div class="memdoc">
|
|
1014
1049
|
<p>Max offset for flexible field sensitive analysis maximum number of field object can be created minimum number is 0 (field insensitive analysis) </p>
|
|
1015
1050
|
|
|
1016
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
1051
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00608">608</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
1017
1052
|
|
|
1018
1053
|
</div>
|
|
1019
1054
|
</div>
|
|
@@ -1039,7 +1074,7 @@ Private Attributes</h2></td></tr>
|
|
|
1039
1074
|
|
|
1040
1075
|
<p>LLVM type. </p>
|
|
1041
1076
|
|
|
1042
|
-
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#
|
|
1077
|
+
<p class="definition">Definition at line <a class="el" href="SymbolTableInfo_8h_source.html#l00602">602</a> of file <a class="el" href="SymbolTableInfo_8h_source.html">SymbolTableInfo.h</a>.</p>
|
|
1043
1078
|
|
|
1044
1079
|
</div>
|
|
1045
1080
|
</div>
|