<div dir="ltr">Yes, there are better ways of getting a more accurate call graph.  But for the purposes that we needed, PScout was the best choice -- it accomplished much of the other necessary work we needed in this case.</div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 13, 2015 at 11:49 PM, Bodden, Eric <span dir="ltr">&lt;<a href="mailto:eric.bodden@sit.fraunhofer.de" target="_blank">eric.bodden@sit.fraunhofer.de</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Jason.<br>
<br>
Would you mind sharing this conversation with the Soot list? It  might out other people in the future.<br>
<span class=""><br>
&gt; Yes, I want to refine the call graph -- but not in the way I think you&#39;re thinking.  We have a call graph for the entire Android OS, created by analyzing the classes and weaving together the calls between classes.  This is the way PScout (<a href="http://pscout.csl.toronto.edu/" target="_blank">http://pscout.csl.toronto.edu/</a>) builds the call graph.  Obviously, there are going to be inconsistencies and errors by doing it that way.  That is our starting point.  This is where the fan out is introduced.  I can properly detect it, which gives me a list of methods and their complete definition (except the implementation).  So then I run SPARK using PTA to construct a new call graph starting somewhere where the fan out begins.  Because I have a list of all the method definitions I have, and that I cannot create new a new unit, I was just going to compare my definitions with the definitions in the SPARK generated call graph.<br>
<br>
</span>Ok, I see. Sounds like quite a complex approach.<br>
<span class=""><br>
&gt;<br>
&gt; Once I have the corrected path, I can alter the PScout call graph to reflect the proper path.<br>
&gt;<br>
&gt; I understand the inefficiencies in doing it this way, but it seems like it&#39;s my only option.<br>
<br>
</span>Would it not be possible to somehow use only the Soot-computed call graph? PScout is kind of outdated anyway and there are more accurate approaches that build on top of Soot.<br>
<br>
Cheers,<br>
Eric<br>
</blockquote></div><br></div>