[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Fwd: CFG, Dominator Tree, Threads and Java input Questions
Hi,
We don't have an analysis like that in Soot. You may want to look at
this report called A Practical MHP Information Analysis for Concurrent
Java Programs:
http://www.sable.mcgill.ca/publications/techreports/#report2004-3
for a starting point.
For keeping the names of locals compile using -g and then in soot use -p
jb use-original-names. This will attempt to use the original local names
when possible.
For a synchronized block in Java like:
...
synchronized(expr){
synch block stmts
}
next stmt
in Jimple looks in general like:
...
entermonitor expr
synch block stmts
exit monitor expr
goto label 5
catch exception
exit monitor expr
throw exception
next stmt
Jennifer
On Fri, 23 Jul 2004, Navindra Umanee wrote:
> Robert Mittermayr <robert.mittermayr@gmx.at> wrote:
> > > I suspect that you need to be subscribed to the soot list to be able
> > > to send messages to it. If you still need me to send your mail, let
> > > me know.
> >
> > Yes i'm subscribed and i get everyday some messages but i can't post some!
> > So please could you post this message for me?
>
> Here you go!
>
> Cheers,
> Navin.
> -------------
>
> Hi Everybody!
>
> I want to perform static analysis on a graph called DJ-Graph. Therefore i
> need to add this graph to SOOT. It's a combination from Dominator Tree
> (D-edges) with Control Flow Graph (CFG) (just the join edges are needed). So
> it's actually just a copy of the dominator tree plus some edges from the CFG
> (join edges). I think i will manage to build this graph with soot but:
>
> Would be very kind if you could answer some of the following questions:
>
> My questions:
> - I want to perform static analysis with multithread programs(busy wait
> ....). Therefore i need for example to find a variable in one thread that an
> other thread
> needs to be changed to go on with work (like Producer /Consumer).
> Is it Possible to do that with SOOT?
> - Could You give me some code how to find one variable that is used in two
> threads?
> - The names of the variables are lost in the Bytecode, so is it possible to
> use soot.dava to find that?
> - How would look the "synchronized" in java in the intermediate
> language(jimple or shimple)?
>
> thank you very much in advance
> Robert
>
>