[Soot-list] Control flow

Eric Bodden eric.bodden at mail.mcgill.ca
Tue Mar 6 17:32:57 EST 2007


I guess you have to create a dominator tree (see posting yesterday)
and find all statements that are dominated by the conditional branches
in the Jimple code.

Eric

On 06/03/07, Xinyu Liu <xl3t at cs.virginia.edu> wrote:
>
>
>
>
> Hi,
>
>
>
> I'd like to analyze the statements within a branch or a loop in Java. For
> example:
>
>
>
> if (Cond) { Stmt 1; Stmt 2; …}
>
> else { Stmt 3; Stmt 4; …. }
>
>
>
> Or
>
>
>
> while(Cond) { stmt 1; stmt 2, …}
>
> For(i=0; i<1; i++) (stmt 1; stmt 2, …}
>
>
>
> After SOOT translates these statements to Jimple, there are only branch and
> goto statements, no brackets any more. So I don't know how to get the jimple
> statements representing Java statements originally within the brackets (the
> statements that are control-dependent on the branch/loop condition). I
> really need this information for my control dependence analysis. Please help
> me with it. Thank you very much.
>
>
>
> Best wishes,
>
> Xinyu
> _______________________________________________
> 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