[Soot-list] Bug in shimple transformation ?
Navindra Umanee
navindra at cs.mcgill.ca
Tue Oct 25 10:27:48 EDT 2005
Hi Guillaume,
Oops. That's a familiar looking bug. I'll try to figure something
out by tonight.
Thanks,
Navin.
Guillaume Salagnac <guillaume.salagnac at imag.fr> wrote:
> Hi Navindra,
>
> And thanks for the patch. Indeed, it solved my problem, and the
> shimple is now correctly generated for my test class. Actually, I did
> not compile the patch itself, but I downloaded the "nightly build"
> version of sootclasses.jar, which is labelled "2168", so I assume it
> includes the fix. By the way, thanks for the nightly builds beeing back.
>
> However, I'm still not completely happy, because this new version of
> the code makes my main project crash. Here's an invocation of soot
> that illustrates the same problem :
>
> java soot.Main -f S sun.security.provider.SeedGenerator
>
> This class seems to live somewhere in the JRE (rt.jar), but I did
> not find any Java source code for it, and I don't understand the
> thrown exception :
>
> Exception in thread "main" java.lang.RuntimeException: Assertion
> failed: Only one head expected.
> at
> soot.toolkits.graph.SimpleDominatorsAnalysis.entryInitialFlow
> (SimpleDominatorsFinder.java:180)
> at soot.toolkits.scalar.ForwardFlowAnalysis.doAnalysis
> (ForwardFlowAnalysis.java:100)
> at soot.toolkits.graph.SimpleDominatorsAnalysis.<init>
> (SimpleDominatorsFinder.java:158)
> at soot.toolkits.graph.SimpleDominatorsFinder.<init>
> (SimpleDominatorsFinder.java:52)
> at soot.toolkits.scalar.GuaranteedDefsAnalysis.<init>
> (GuaranteedDefs.java:82)
> at soot.toolkits.scalar.GuaranteedDefs.<init>
> (GuaranteedDefs.java:44)
> at soot.shimple.internal.PhiNodeManager.update
> (PhiNodeManager.java:63)
> at soot.shimple.internal.PhiNodeManager.insertTrivialPhiNodes
> (PhiNodeManager.java:79)
> at soot.shimple.internal.ShimpleBodyBuilder.transform
> (ShimpleBodyBuilder.java:104)
> at soot.shimple.ShimpleBody.rebuild(ShimpleBody.java:137)
> at soot.shimple.ShimpleBody.<init>(ShimpleBody.java:106)
> at soot.shimple.Shimple.newBody(Shimple.java:89)
> at soot.PackManager.runBodyPacks(PackManager.java:549)
> at soot.PackManager.runBodyPacks(PackManager.java:378)
> at soot.PackManager.runBodyPacks(PackManager.java:322)
> at soot.PackManager.runPacks(PackManager.java:317)
> at soot.Main.run(Main.java:179)
> at soot.Main.main(Main.java:153)
>
>
> Do you have any clues about what to do ? As they need results from
> the JRE, my whole-shimple analyses do not run any more...
>
>
>
> Thanks,
> -G
>
More information about the Soot-list
mailing list