[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: all-reachable:true in Spark?
> > I want Spark to treat all methods of application class reachable. Is
there
> > any option or any change in the code that I can do easily?
> > I tried using "-p cg on,all-reachable:true" with "-p cg.spark on" for
this.
> > It is probably nonsensical -- only one of them should be given at any
time.
> > Am I right?
>
> This is the right way to do it. The -p cg options are not contradictory
> with -p cg.spark. Rather, the -p cg options apply to all phases inside
> the cg pack, including the phase cg.spark. It is the phases inside cg
> that are mutually exclusive with each other: it would not make sense to
> say -p cg.cha on -p cg.spark on. (In this case, I believe cg.spark would
> turn cg.cha off again.)
It does not seem to work in my case. Giving -p cg on,all-reachable:true
with -p cg.spark on does not produce any differece. I might be doing
something wrong. Could you please check or know for sure if this works. In
that case I will investigate more into it.
> > I am also very confused by the initial entrypoints used in
> > CallGraphBuilder.java and spark. But I will save that question until I
get a
> > handle of what is going on.
> >
> > Also, a possible bug: Following options crashes!
> > java soot.Main -w -p jb.ls off Test
> > (using released version soot2.1)
>
> The type inference algorithm was designed to work on code that had been
> pre-processed by the local splitter. Therefore, it is expected that
> type inference will fail if the local splitter is disabled. In general,
> the jb phases are not intended to be disabled except for special
> applications.
I was planning to turn off jb phases as much as possible, as none of the
anlyzes like deadcode elimination, copy propagation etc. seem to do any
good. My claim is based on what soot prints in verbose mode.
Saswat