[Soot-list] Redundant gotos in Jimple

Saswat Anand saswat at cc.gatech.edu
Sun Jun 19 12:50:05 EDT 2005


Hello,

I have this example, whose jimple version seems to have redundant gotos 
and thus complicated control flow. I dont know if this is by design, or 
should be improved upon.

Thanks
Saswat


void fun()
{
   boolean x = true;
   if( !x )
     System.out.println( "hello" );
}

void fun()
{
   Test4 this;
   boolean x, $z0;
   java.io.PrintStream $r0;

   this := @this: Test4;
   x = 1;
   if x != 0 goto label0;

   $z0 = 1;
   goto label1;

label0:
   $z0 = 0;

label1:
   if $z0 == 0 goto label2;

   $r0 = <java.lang.System: java.io.PrintStream out>;
   virtualinvoke $r0.<java.io.PrintStream: void 
println(java.lang.String)>("hello");
   goto label2;

label2:
   return;
}


More information about the Soot-list mailing list