<p dir="ltr">Hi!</p>
<p dir="ltr">Note that the analyzer do not reason about global variables right now. </p>
<p dir="ltr">And also not that there are no guarantees about the coverage. Therr might be code that is not covered by the analysis at all. So I think, as is, the analyzer is not suitable for any kind of verification. It can be a decent bug finding tool though. </p>
<p dir="ltr">Regards,<br>
Gábor</p>
<div class="gmail_extra"><br><div class="gmail_quote">2016. aug. 11. du. 2:09 ezt írta ("Divya Muthukumaran via cfe-dev" <<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a>>):<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Artem, <div><br></div><div>Thanks for your detailed reply. That was really helpful and got me started. I also read the paper <a href="http://lcs.ios.ac.cn/~xuzb/canalyze/memmodel.pdf" target="_blank">http://lcs.ios.ac.cn/~<wbr>xuzb/canalyze/memmodel.pdf</a> which gave me a good overview of how the region store works. </div><div><br></div><div>I do have a follow up question regarding propagation of taint through globals. I was trying to apply the Clang taint analysis to a toy key-value store program. The interface consists of item * item_alloc(int key, int value), item * item_get (int key), item_put (item*) and item_list(void) and the key-value pairs are stored as a hashtable (item_table) with global scope. A function_dispatcher() reads in user input on loop and dispatches between those functions until the user enters 'quit'.</div><div><br></div><div>I was expecting that if I taint the item being added to the global item_table when item_put() is invoked, then when item_get() is used to retrieve any item, the resulting item gets the taint. But this doesn't seem to happen. </div><div>It works correctly if I explicitly call item_alloc(), *taint_add(), item_put(), item_get() in that order from my main() without using the dispatcher. </div><div><br></div><div>Does this mean that the global region pertaining to item_table gets invalidated between user requests. Is there any way I can change this behavior? I guess my alternative is to write a driver with all possible interleavings of my interface functions, correct? </div><div><br></div><div>Best,</div><div>Divya </div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div> </div><div><br></div><div><br></div>​</div>
<br>______________________________<wbr>_________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/cfe-dev</a><br>
<br></blockquote></div></div>