[Soot-list] Rebuilding the context sensitive call graph
Chris Pickett
chris.pickett at mail.mcgill.ca
Thu Jan 31 21:53:26 EST 2008
Khilan Gudka wrote:
> So would that involve introducing a dummy type for a context?
That's just the first idea that came to mind... it seems reasonable,
although you'll get a huge number of classes. You could also pass the
context as a parameter and then switch / dispatch on it inside <init>.
I guess there are lots of ways to do it, but the fact remains that after
a "new" bytecode you are expected to have a specialinvoke to <init>.
Some/all/no VM's might ignore that, and the JVM Spec itself might
actually be fuzzy... you'll have to see.
We
> realised that statements may implicitly call clinit which was a painful
> discovery. However, we decided to ignore clinit edges and statically
> determine the classes that are accessed and manually load them in at the
> start of the program. This would mean that we wouldn't have to worry
> about these types of method invocations during the analysis. Do you
> think this is sound?
Yes, other people (that got papers accepted) have forced all clinit
methods to execute before the rest of the code. I don't have a
reference for you though.
Chris
More information about the Soot-list
mailing list