[Soot-list] The PointsToSets are empty for a simple case(SPARK)

Peng Li lipeng360 at gmail.com
Tue Apr 17 19:53:11 EDT 2007


HI
I am using SPARK to analyse a simple GUI class. It is very simple,
public class JGradientChooser extends JDialog
{
Color[] colors = { Color.WHITE, Color.BLACK };
String[] elements = { "linear", "radial" };

JComboBox combo1 = new JComboBox(elements);
JComboBox combo2 = new JComboBox(elements1);

AlphaColorJButton button_color1 = new AlphaColorJButton(colors[0]);
AlphaColorJButton button_color2 = new AlphaColorJButton(colors[1]);
//AlphaColorJButton is an GUI class that extends JButton.

PreviewPanel preview_panel = new PreviewPanel(button_color1,
button_color2,combo1,combo2);
}

The weird thing is when I use spark to get the PointsToSets for all
the parameters of new PreviewPanel(button_color1,
button_color2,combo1,combo2). The PointsToSets are all empty...

specialinvoke $r43.<at.bestsolution.ext.swing.dialog.PreviewPanel:
void <init>(at.bestsolution.ext.swing.AlphaColorJButton,at.bestsolution.ext.swing.AlphaColorJButton,javax.swing.JComboBox,javax.swing.JComboBox)>(r9,
r11, r4, r8)
r9 PointsToSet size is 0
r11 PointsToSet size is 0
r4 PointsToSet size is 0
r8 PointsToSet size is 0

I emailed this mailing-list before to ask why the PointsToSet for  the
parameter of AlphaColorJButton button_color1 = new
AlphaColorJButton(colors[0]); is empy. Eric replied me the reason is
because the way how SPARK handles array element(color[0]). However,
for the JGradientChooser, the result does not make sense since the
parameters of PreviewPanel() are not array or array elements?

I have tried many combinations of the spark options, but all of them
did not work.
cheers
Peng

PS.
the spark options,
opt.put("enabled","true");
opt.put("verbose","true");
opt.put("ignore-types","false");
opt.put("force-gc","false");
opt.put("pre-jimplify","false");
opt.put("vta","false");
opt.put("rta","false");
opt.put("field-based","false");
opt.put("types-for-sites","false");
opt.put("merge-stringbuffer","true");
opt.put("string-constants","false");   //
opt.put("simulate-natives","true");
opt.put("simple-edges-bidirectional","false");
opt.put("on-fly-cg","true");     //     true
opt.put("simplify-offline","false");
opt.put("simplify-sccs","false");
opt.put("ignore-types-for-sccs","false");
opt.put("propagator","worklist"); //worklist
opt.put("set-impl","double");
opt.put("double-set-old","hybrid");
opt.put("double-set-new","hybrid");
opt.put("dump-html","false");
opt.put("dump-pag","false");
opt.put("dump-solution","false");
opt.put("topo-sort","false");
opt.put("dump-types","true");
opt.put("class-method-var","true");
opt.put("dump-answer","false");
opt.put("add-tags","false");
opt.put("set-mass","false");


More information about the Soot-list mailing list