[Soot-list] Context-Sensitive Spark with Static Method Binder
Rhodes H. F. Brown
rhodesb at cs.uvic.ca
Tue Jul 8 19:07:31 EDT 2008
>
Eric Bodden wrote:
> you should see a line that says "Initialized on-demand refinement-
> based
> context-sensitive analysis" being printed out.
I do. With "cs-demand:true" I see (for the bloat benchmark):
...
[Spark] Initialized on-demand refinement-based context-sensitive
analysis in 2.6 seconds.
...
> Does your analysis run longer with "cs-demand:true" than with "cs-
> demand:false"?
To be clear, I have not injected any new analysis/code. I'm just
using Soot straight-up as a tool.
According to the printed summary, both runs take roughly the same
amount of time. This would seem to suggest that the SMB is not doing
any extra work. I could dig into the code, but I'm fairly ignorant
regarding Spark's internals and how it integrates with other analyses
and transforms.
Manu Sridharan wrote:
> You can get some idea of the potential benefits of context-
> sensitivity for devirtualization from Section 6 of Ondrej's CC06 paper
This is actually what I am after. I had some problems getting Paddle
to work, so I turned to the refinement analysis in Spark. My
understanding (from Feng & Laurie's '05 CC paper) is that CHA does
pretty well for devirtualizing invokevirtuals, but that a reasonably
strong (i.e. context-sensitive) analysis is needed to succeed at
devirtualizing invokeinterface calls.
-Rhodes
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
More information about the Soot-list
mailing list