Jimple files Codes
From previous example (Click Here to view)HelloWorld.Jimple contains located at sootOutput directory following:
public class HelloWorld extends java.lang.Object
{
java.lang.String output;
static HelloWorld helloObj;
public void <init>()
{
HelloWorld r0;
r0 := @this: HelloWorld;
specialinvoke r0.<java.lang.Object: void <init>()>();
r0.<HelloWorld: java.lang.String output> = "";
r0.<HelloWorld: java.lang.String output> = "Hello world";
return;
}
public java.lang.String printMessage()
{
HelloWorld r0;
java.lang.String $r1;
r0 := @this: HelloWorld;
$r1 = r0.<HelloWorld: java.lang.String output>;
return $r1;
}
public static void main(java.lang.String[])
{
java.lang.String[] r0;
HelloWorld $r1, $r3;
java.io.PrintStream $r2;
java.lang.String $r4;
r0 := @parameter0: java.lang.String[];
$r1 = new HelloWorld;
specialinvoke $r1.<HelloWorld: void <init>()>();
<HelloWorld: HelloWorld helloObj> = $r1;
$r2 = <java.lang.System: java.io.PrintStream out>;
$r3 = <HelloWorld: HelloWorld helloObj>;
$r4 = virtualinvoke $r3.<HelloWorld: java.lang.String printMessage()>();
virtualinvoke $r2.<java.io.PrintStream: void println(java.lang.String)>($r4);
return;
}
}
No comments:
Post a Comment