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

Eric Bodden eric.bodden at mail.mcgill.ca
Tue Apr 17 20:52:28 EDT 2007


Is the class you are looking at reachable? Soot usually only reports
empty points-to sets, if it's dead code, i.e. not reachable from your
main-class.

Eric

On 17/04/07, Peng Li <lipeng360 at gmail.com> wrote:
> 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");
> _______________________________________________
> Soot-list mailing list
> Soot-list at sable.mcgill.ca
> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>


-- 
Eric Bodden
Sable Research Group
McGill University, Montréal, Canada


More information about the Soot-list mailing list