[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