sp-04/test-output/all.combined.dot

1207 lines
37 KiB
Plaintext

digraph root {
node [label="\N"];
subgraph combined {
graph [label="<init>"];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
-1 [label="-1|entry",
shape=record,
style=filled];
0 [label="0|{0: // label\l|1: // line number information\l|2: ALOAD 0\l|3: INVOKESPECIAL java/lang/Object.<init> ()V\l|4: RETURN \l}",
shape=record];
-1 -> 0;
-1 -> 0 [style=dotted];
-2 [label="-2|exit",
shape=record];
0 -> -2;
0 -> -2 [style=dotted];
}
subgraph combined_gv40 {
graph [label=switchMethod2];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv40" [label="-1|entry",
shape=record,
style=filled];
"0_gv40" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l|4: // label\l|5: // line number information\l|\
6: ILOAD 1\l|7: LOOKUPSWITCH 0: 8, 1000: 14, 2000: 20, default: 26\l}",
shape=record];
"-1_gv40" -> "0_gv40";
"-1_gv40" -> "0_gv40" [style=dotted];
"-2_gv40" [label="-2|exit",
shape=record];
"8_gv8" [label="8|{8: // label\l|9: // line number information\l|10: // stack frame map\l|11: ICONST_0 \l|12: ISTORE 2\l|13: GOTO 31\l}",
shape=record];
"0_gv40" -> "8_gv8" [label=0];
"0_gv40" -> "8_gv8" [style=dotted];
"14_gv2" [label="14|{14: // label\l|15: // line number information\l|16: // stack frame map\l|17: ICONST_1 \l|18: ISTORE 2\l|19: GOTO 31\l}",
shape=record];
"0_gv40" -> "14_gv2" [label=1000];
"0_gv40" -> "14_gv2" [style=dotted];
"20_gv2" [label="20|{20: // label\l|21: // line number information\l|22: // stack frame map\l|23: ICONST_2 \l|24: ISTORE 2\l|25: GOTO 31\l}",
shape=record];
"0_gv40" -> "20_gv2" [label=2000];
"0_gv40" -> "20_gv2" [style=dotted];
"26_gv1" [label="26|{26: // label\l|27: // line number information\l|28: // stack frame map\l|29: ICONST_M1 \l|30: ISTORE 2\l}",
shape=record];
"0_gv40" -> "26_gv1" [label=default];
"0_gv40" -> "26_gv1" [style=dotted];
"31_gv1" [label="31|{31: // label\l|32: // line number information\l|33: // stack frame map\l|34: ILOAD 2\l|35: IRETURN \l}",
shape=record];
"0_gv40" -> "31_gv1" [style=dotted];
"8_gv8" -> "31_gv1" [label=T];
"14_gv2" -> "31_gv1" [label=T];
"20_gv2" -> "31_gv1" [label=T];
"26_gv1" -> "31_gv1";
"31_gv1" -> "-2_gv40";
"31_gv1" -> "-2_gv40" [style=dotted];
}
subgraph combined_gv41 {
graph [label=whileMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv41" [label="-1|entry",
shape=record,
style=filled];
"0_gv41" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l}",
shape=record];
"-1_gv41" -> "0_gv41";
"-1_gv41" -> "0_gv41" [style=dotted];
"-2_gv41" [label="-2|exit",
shape=record];
"4_gv2" [label="4|{4: // label\l|5: // line number information\l|6: // stack frame map\l|7: ILOAD 1\l|8: IFLE 19\l}",
shape=record];
"0_gv41" -> "4_gv2";
"0_gv41" -> "4_gv2" [style=dotted];
"9_gv1" [label="9|{9: // label\l|10: // line number information\l|11: ILOAD 2\l|12: ILOAD 1\l|13: IADD \l|14: ISTORE 2\l|15: // label\l|16: // \
line number information\l|17: IINC 1 -1\l|18: GOTO 4\l}",
shape=record];
"4_gv2" -> "9_gv1";
"4_gv2" -> "9_gv1" [style=dotted];
19 [label="19|{19: // label\l|20: // line number information\l|21: // stack frame map\l|22: ILOAD 2\l|23: IRETURN \l}",
shape=record];
"4_gv2" -> 19 [label=T];
"4_gv2" -> 19 [style=dotted];
"9_gv1" -> "4_gv2" [label=T];
19 -> "-2_gv41";
19 -> "-2_gv41" [style=dotted];
}
subgraph combined_gv42 {
graph [label=whileTrueMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv42" [label="-1|entry",
shape=record,
style=filled];
"0_gv42" [label="0|{0: // label\l|1: // line number information\l|2: // stack frame map\l|3: IINC 1 1\l|4: GOTO 0\l}",
shape=record];
"-1_gv42" -> "0_gv42";
"-1_gv42" -> "0_gv42" [style=dotted];
"-2_gv42" [label="-2|exit",
shape=record];
"0_gv42" -> "0_gv42" [label=T];
}
subgraph combined_gv5 {
graph [label=allocAndInitObjectArrayMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv5" [label="-1|entry",
shape=record,
style=filled];
"0_gv5" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_2 \l|3: ANEWARRAY java/lang/Object\l|4: DUP \l|5: ICONST_0 \l|6: LDC \
1\l|7: AASTORE \l|8: DUP \l|9: ICONST_1 \l|10: LDC 2\l|11: AASTORE \l|12: ARETURN \l}",
shape=record];
"-1_gv5" -> "0_gv5";
"-1_gv5" -> "0_gv5" [style=dotted];
"-2_gv5" [label="-2|exit",
shape=record];
"0_gv5" -> "-2_gv5";
"0_gv5" -> "-2_gv5" [style=dotted];
}
subgraph combined_gv6 {
graph [label=allocIncomplete2dArrayMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv6" [label="-1|entry",
shape=record,
style=filled];
"0_gv6" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_2 \l|3: ANEWARRAY [I\l|4: ARETURN \l}",
shape=record];
"-1_gv6" -> "0_gv6";
"-1_gv6" -> "0_gv6" [style=dotted];
"-2_gv6" [label="-2|exit",
shape=record];
"0_gv6" -> "-2_gv6";
"0_gv6" -> "-2_gv6" [style=dotted];
}
subgraph combined_gv7 {
graph [label=allocIntArrayMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv7" [label="-1|entry",
shape=record,
style=filled];
"0_gv7" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_3 \l|3: NEWARRAY T_INT\l|4: ARETURN \l}",
shape=record];
"-1_gv7" -> "0_gv7";
"-1_gv7" -> "0_gv7" [style=dotted];
"-2_gv7" [label="-2|exit",
shape=record];
"0_gv7" -> "-2_gv7";
"0_gv7" -> "-2_gv7" [style=dotted];
}
subgraph combined_gv8 {
graph [label=allocObjectArrayMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv8" [label="-1|entry",
shape=record,
style=filled];
"0_gv8" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_3 \l|3: ANEWARRAY java/lang/Object\l|4: ARETURN \l}",
shape=record];
"-1_gv8" -> "0_gv8";
"-1_gv8" -> "0_gv8" [style=dotted];
"-2_gv8" [label="-2|exit",
shape=record];
"0_gv8" -> "-2_gv8";
"0_gv8" -> "-2_gv8" [style=dotted];
}
subgraph combined_gv9 {
graph [label=allocObjectMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv9" [label="-1|entry",
shape=record,
style=filled];
"0_gv9" [label="0|{0: // label\l|1: // line number information\l|2: NEW java/lang/Object\l|3: DUP \l|4: INVOKESPECIAL java/lang/Object.<init> ()\
V\l|5: ARETURN \l}",
shape=record];
"-1_gv9" -> "0_gv9";
"-1_gv9" -> "0_gv9" [style=dotted];
"-2_gv9" [label="-2|exit",
shape=record];
"0_gv9" -> "-2_gv9";
"0_gv9" -> "-2_gv9" [style=dotted];
}
subgraph combined_gv10 {
graph [label=arrayLengthMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv10" [label="-1|entry",
shape=record,
style=filled];
"0_gv10" [label="0|{0: // label\l|1: // line number information\l|2: ALOAD 1\l|3: ARRAYLENGTH \l|4: IRETURN \l}",
shape=record];
"-1_gv10" -> "0_gv10";
"-1_gv10" -> "0_gv10" [style=dotted];
"-2_gv10" [label="-2|exit",
shape=record];
"0_gv10" -> "-2_gv10";
"0_gv10" -> "-2_gv10" [style=dotted];
}
subgraph combined_gv11 {
graph [label=arrayReadMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv11" [label="-1|entry",
shape=record,
style=filled];
"0_gv11" [label="0|{0: // label\l|1: // line number information\l|2: ALOAD 1\l|3: ICONST_0 \l|4: AALOAD \l|5: ARETURN \l}",
shape=record];
"-1_gv11" -> "0_gv11";
"-1_gv11" -> "0_gv11" [style=dotted];
"-2_gv11" [label="-2|exit",
shape=record];
"0_gv11" -> "-2_gv11";
"0_gv11" -> "-2_gv11" [style=dotted];
}
subgraph combined_gv12 {
graph [label=arrayWriteMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv12" [label="-1|entry",
shape=record,
style=filled];
"0_gv12" [label="0|{0: // label\l|1: // line number information\l|2: ALOAD 1\l|3: ICONST_0 \l|4: ALOAD 2\l|5: AASTORE \l|6: // label\l|7: // \
line number information\l|8: RETURN \l}",
shape=record];
"-1_gv12" -> "0_gv12";
"-1_gv12" -> "0_gv12" [style=dotted];
"-2_gv12" [label="-2|exit",
shape=record];
"0_gv12" -> "-2_gv12";
"0_gv12" -> "-2_gv12" [style=dotted];
}
subgraph combined_gv13 {
graph [label=condMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv13" [label="-1|entry",
shape=record,
style=filled];
"0_gv13" [label="0|{0: // label\l|1: // line number information\l|2: ILOAD 1\l|3: ILOAD 2\l|4: IF_ICMPLE 7\l}",
shape=record];
"-1_gv13" -> "0_gv13";
"-1_gv13" -> "0_gv13" [style=dotted];
"-2_gv13" [label="-2|exit",
shape=record];
5 [label="5|{5: ILOAD 1\l|6: GOTO 10\l}",
shape=record];
"0_gv13" -> 5;
"0_gv13" -> 5 [style=dotted];
7 [label="7|{7: // label\l|8: // stack frame map\l|9: ILOAD 2\l}",
shape=record];
"0_gv13" -> 7 [label=T];
"0_gv13" -> 7 [style=dotted];
10 [label="10|{10: // label\l|11: // stack frame map\l|12: IRETURN \l}",
shape=record];
"0_gv13" -> 10 [style=dotted];
5 -> 10 [label=T];
7 -> 10;
10 -> "-2_gv13";
10 -> "-2_gv13" [style=dotted];
}
subgraph combined_gv14 {
graph [label=doWhileMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv14" [label="-1|entry",
shape=record,
style=filled];
"0_gv14" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l}",
shape=record];
"-1_gv14" -> "0_gv14";
"-1_gv14" -> "0_gv14" [style=dotted];
"-2_gv14" [label="-2|exit",
shape=record];
4 [label="4|{4: // label\l|5: // line number information\l|6: // stack frame map\l|7: ILOAD 2\l|8: ILOAD 1\l|9: IADD \l|10: ISTORE 2\l|\
11: // label\l|12: // line number information\l|13: IINC 1 -1\l|14: // label\l|15: // line number information\l|16: ILOAD 1\l|\
17: IFGT 4\l}",
shape=record];
"0_gv14" -> 4;
"0_gv14" -> 4 [style=dotted];
4 -> 4 [label=T];
18 [label="18|{18: // label\l|19: // line number information\l|20: ILOAD 2\l|21: IRETURN \l}",
shape=record];
4 -> 18;
4 -> 18 [style=dotted];
18 -> "-2_gv14";
18 -> "-2_gv14" [style=dotted];
}
subgraph combined_gv15 {
graph [label=doWhileTrue];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv15" [label="-1|entry",
shape=record,
style=filled];
"0_gv15" [label="0|{0: // label\l|1: // line number information\l|2: // stack frame map\l|3: IINC 1 1\l|4: // label\l|5: // line number information\l|\
6: GOTO 0\l}",
shape=record];
"-1_gv15" -> "0_gv15";
"-1_gv15" -> "0_gv15" [style=dotted];
"-2_gv15" [label="-2|exit",
shape=record];
"0_gv15" -> "0_gv15" [label=T];
}
subgraph combined_gv16 {
graph [label=emptyMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv16" [label="-1|entry",
shape=record,
style=filled];
"0_gv16" [label="0|{0: // label\l|1: // line number information\l|2: RETURN \l}",
shape=record];
"-1_gv16" -> "0_gv16";
"-1_gv16" -> "0_gv16" [style=dotted];
"-2_gv16" [label="-2|exit",
shape=record];
"0_gv16" -> "-2_gv16";
"0_gv16" -> "-2_gv16" [style=dotted];
}
subgraph combined_gv17 {
graph [label=fieldReadMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv17" [label="-1|entry",
shape=record,
style=filled];
"0_gv17" [label="0|{0: // label\l|1: // line number information\l|2: ALOAD 0\l|3: GETFIELD ExampleClass.field Ljava/lang/String;\l|4: ARETURN \l}",
shape=record];
"-1_gv17" -> "0_gv17";
"-1_gv17" -> "0_gv17" [style=dotted];
"-2_gv17" [label="-2|exit",
shape=record];
"0_gv17" -> "-2_gv17";
"0_gv17" -> "-2_gv17" [style=dotted];
}
subgraph combined_gv18 {
graph [label=fieldWriteMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv18" [label="-1|entry",
shape=record,
style=filled];
"0_gv18" [label="0|{0: // label\l|1: // line number information\l|2: ALOAD 0\l|3: ALOAD 1\l|4: PUTFIELD ExampleClass.field Ljava/lang/String;\l|\
5: // label\l|6: // line number information\l|7: RETURN \l}",
shape=record];
"-1_gv18" -> "0_gv18";
"-1_gv18" -> "0_gv18" [style=dotted];
"-2_gv18" [label="-2|exit",
shape=record];
"0_gv18" -> "-2_gv18";
"0_gv18" -> "-2_gv18" [style=dotted];
}
subgraph combined_gv19 {
graph [label=forEachArrayMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv19" [label="-1|entry",
shape=record,
style=filled];
"0_gv19" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l|4: // label\l|5: // line number information\l|\
6: ALOAD 1\l|7: ASTORE 3\l|8: ALOAD 3\l|9: ARRAYLENGTH \l|10: ISTORE 4\l|11: ICONST_0 \l|12: ISTORE 5\l}",
shape=record];
"-1_gv19" -> "0_gv19";
"-1_gv19" -> "0_gv19" [style=dotted];
"-2_gv19" [label="-2|exit",
shape=record];
13 [label="13|{13: // label\l|14: // stack frame map\l|15: ILOAD 5\l|16: ILOAD 4\l|17: IF_ICMPGE 29\l}",
shape=record];
"0_gv19" -> 13;
"0_gv19" -> 13 [style=dotted];
"18_gv1" [label="18|{18: ALOAD 3\l|19: ILOAD 5\l|20: AALOAD \l|21: ASTORE 6\l|22: // label\l|23: // line number information\l|24: IINC 2 1\l|25: // \
label\l|26: // line number information\l|27: IINC 5 1\l|28: GOTO 13\l}",
shape=record];
13 -> "18_gv1";
13 -> "18_gv1" [style=dotted];
29 [label="29|{29: // label\l|30: // line number information\l|31: // stack frame map\l|32: ILOAD 2\l|33: IRETURN \l}",
shape=record];
13 -> 29 [label=T];
13 -> 29 [style=dotted];
"18_gv1" -> 13 [label=T];
29 -> "-2_gv19";
29 -> "-2_gv19" [style=dotted];
}
subgraph combined_gv20 {
graph [label=forEachCollectionMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv20" [label="-1|entry",
shape=record,
style=filled];
"0_gv20" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l|4: // label\l|5: // line number information\l|\
6: ALOAD 1\l|7: INVOKEINTERFACE java/util/Set.iterator ()Ljava/util/Iterator;\l|8: ASTORE 3\l}",
shape=record];
"-1_gv20" -> "0_gv20";
"-1_gv20" -> "0_gv20" [style=dotted];
"-2_gv20" [label="-2|exit",
shape=record];
9 [label="9|{9: // label\l|10: // stack frame map\l|11: ALOAD 3\l|12: INVOKEINTERFACE java/util/Iterator.hasNext ()Z\l|13: IFEQ 24\l}",
shape=record];
"0_gv20" -> 9;
"0_gv20" -> 9 [style=dotted];
14 [label="14|{14: ALOAD 3\l|15: INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;\l|16: CHECKCAST java/lang/String\l|17: ASTORE \
4\l|18: // label\l|19: // line number information\l|20: IINC 2 1\l|21: // label\l|22: // line number information\l|23: GOTO \
9\l}",
shape=record];
9 -> 14;
9 -> 14 [style=dotted];
24 [label="24|{24: // label\l|25: // line number information\l|26: // stack frame map\l|27: ILOAD 2\l|28: IRETURN \l}",
shape=record];
9 -> 24 [label=T];
9 -> 24 [style=dotted];
14 -> 9 [label=T];
24 -> "-2_gv20";
24 -> "-2_gv20" [style=dotted];
}
subgraph combined_gv21 {
graph [label=forEver];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv21" [label="-1|entry",
shape=record,
style=filled];
"0_gv21" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l}",
shape=record];
"-1_gv21" -> "0_gv21";
"-1_gv21" -> "0_gv21" [style=dotted];
"-2_gv21" [label="-2|exit",
shape=record];
"4_gv1" [label="4|{4: // label\l|5: // stack frame map\l|6: IINC 2 1\l|7: GOTO 4\l}",
shape=record];
"0_gv21" -> "4_gv1";
"0_gv21" -> "4_gv1" [style=dotted];
"4_gv1" -> "4_gv1" [label=T];
}
subgraph combined_gv22 {
graph [label=forMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv22" [label="-1|entry",
shape=record,
style=filled];
"0_gv22" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l|4: // label\l|5: // line number information\l|\
6: ICONST_0 \l|7: ISTORE 3\l}",
shape=record];
"-1_gv22" -> "0_gv22";
"-1_gv22" -> "0_gv22" [style=dotted];
"-2_gv22" [label="-2|exit",
shape=record];
8 [label="8|{8: // label\l|9: // stack frame map\l|10: ILOAD 3\l|11: ILOAD 1\l|12: IF_ICMPGE 23\l}",
shape=record];
"0_gv22" -> 8;
"0_gv22" -> 8 [style=dotted];
"13_gv1" [label="13|{13: // label\l|14: // line number information\l|15: ILOAD 2\l|16: ILOAD 3\l|17: IADD \l|18: ISTORE 2\l|19: // label\l|20: // \
line number information\l|21: IINC 1 1\l|22: GOTO 8\l}",
shape=record];
8 -> "13_gv1";
8 -> "13_gv1" [style=dotted];
23 [label="23|{23: // label\l|24: // line number information\l|25: // stack frame map\l|26: ILOAD 2\l|27: IRETURN \l}",
shape=record];
8 -> 23 [label=T];
8 -> 23 [style=dotted];
"13_gv1" -> 8 [label=T];
23 -> "-2_gv22";
23 -> "-2_gv22" [style=dotted];
}
subgraph combined_gv23 {
graph [label=forWithBreakMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv23" [label="-1|entry",
shape=record,
style=filled];
"0_gv23" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l|4: // label\l|5: // line number information\l|\
6: ICONST_0 \l|7: ISTORE 3\l}",
shape=record];
"-1_gv23" -> "0_gv23";
"-1_gv23" -> "0_gv23" [style=dotted];
"-2_gv23" [label="-2|exit",
shape=record];
"8_gv1" [label="8|{8: // label\l|9: // stack frame map\l|10: ILOAD 3\l|11: ILOAD 1\l|12: IF_ICMPGE 32\l}",
shape=record];
"0_gv23" -> "8_gv1";
"0_gv23" -> "8_gv1" [style=dotted];
"13_gv2" [label="13|{13: // label\l|14: // line number information\l|15: ILOAD 3\l|16: BIPUSH 10\l|17: IF_ICMPNE 21\l}",
shape=record];
"8_gv1" -> "13_gv2";
"8_gv1" -> "13_gv2" [style=dotted];
32 [label="32|{32: // label\l|33: // line number information\l|34: // stack frame map\l|35: ILOAD 2\l|36: IRETURN \l}",
shape=record];
"8_gv1" -> 32 [label=T];
"8_gv1" -> 32 [style=dotted];
"18_gv2" [label="18|{18: // label\l|19: // line number information\l|20: GOTO 32\l}",
shape=record];
"13_gv2" -> "18_gv2";
"13_gv2" -> "18_gv2" [style=dotted];
21 [label="21|{21: // label\l|22: // line number information\l|23: // stack frame map\l|24: ILOAD 2\l|25: ILOAD 3\l|26: IADD \l|27: ISTORE \
2\l|28: // label\l|29: // line number information\l|30: IINC 3 1\l|31: GOTO 8\l}",
shape=record];
"13_gv2" -> 21 [label=T];
"13_gv2" -> 21 [style=dotted];
"18_gv2" -> 32 [label=T];
21 -> "8_gv1" [label=T];
32 -> "-2_gv23";
32 -> "-2_gv23" [style=dotted];
}
subgraph combined_gv24 {
graph [label=forWithContinueMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv24" [label="-1|entry",
shape=record,
style=filled];
"0_gv24" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l|4: // label\l|5: // line number information\l|\
6: ICONST_0 \l|7: ISTORE 3\l}",
shape=record];
"-1_gv24" -> "0_gv24";
"-1_gv24" -> "0_gv24" [style=dotted];
"-2_gv24" [label="-2|exit",
shape=record];
"8_gv2" [label="8|{8: // label\l|9: // stack frame map\l|10: ILOAD 3\l|11: ILOAD 1\l|12: IF_ICMPGE 33\l}",
shape=record];
"0_gv24" -> "8_gv2";
"0_gv24" -> "8_gv2" [style=dotted];
"13_gv3" [label="13|{13: // label\l|14: // line number information\l|15: ILOAD 3\l|16: BIPUSH 10\l|17: IF_ICMPNE 21\l}",
shape=record];
"8_gv2" -> "13_gv3";
"8_gv2" -> "13_gv3" [style=dotted];
33 [label="33|{33: // label\l|34: // line number information\l|35: // stack frame map\l|36: ILOAD 2\l|37: IRETURN \l}",
shape=record];
"8_gv2" -> 33 [label=T];
"8_gv2" -> 33 [style=dotted];
"18_gv3" [label="18|{18: // label\l|19: // line number information\l|20: GOTO 28\l}",
shape=record];
"13_gv3" -> "18_gv3";
"13_gv3" -> "18_gv3" [style=dotted];
"21_gv1" [label="21|{21: // label\l|22: // line number information\l|23: // stack frame map\l|24: ILOAD 2\l|25: ILOAD 3\l|26: IADD \l|27: ISTORE \
2\l}",
shape=record];
"13_gv3" -> "21_gv1" [label=T];
"13_gv3" -> "21_gv1" [style=dotted];
28 [label="28|{28: // label\l|29: // line number information\l|30: // stack frame map\l|31: IINC 3 1\l|32: GOTO 8\l}",
shape=record];
"13_gv3" -> 28 [style=dotted];
"18_gv3" -> 28 [label=T];
"21_gv1" -> 28;
28 -> "8_gv2" [label=T];
33 -> "-2_gv24";
33 -> "-2_gv24" [style=dotted];
}
subgraph combined_gv25 {
graph [label=ifElseMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv25" [label="-1|entry",
shape=record,
style=filled];
"0_gv25" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l|4: // label\l|5: // line number information\l|\
6: ILOAD 1\l|7: IFLE 13\l}",
shape=record];
"-1_gv25" -> "0_gv25";
"-1_gv25" -> "0_gv25" [style=dotted];
"-2_gv25" [label="-2|exit",
shape=record];
"8_gv3" [label="8|{8: // label\l|9: // line number information\l|10: ICONST_0 \l|11: ISTORE 2\l|12: GOTO 18\l}",
shape=record];
"0_gv25" -> "8_gv3";
"0_gv25" -> "8_gv3" [style=dotted];
"13_gv4" [label="13|{13: // label\l|14: // line number information\l|15: // stack frame map\l|16: ILOAD 1\l|17: ISTORE 2\l}",
shape=record];
"0_gv25" -> "13_gv4" [label=T];
"0_gv25" -> "13_gv4" [style=dotted];
"18_gv4" [label="18|{18: // label\l|19: // line number information\l|20: // stack frame map\l|21: ILOAD 2\l|22: IRETURN \l}",
shape=record];
"0_gv25" -> "18_gv4" [style=dotted];
"8_gv3" -> "18_gv4" [label=T];
"13_gv4" -> "18_gv4";
"18_gv4" -> "-2_gv25";
"18_gv4" -> "-2_gv25" [style=dotted];
}
subgraph combined_gv26 {
graph [label=ifMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv26" [label="-1|entry",
shape=record,
style=filled];
"0_gv26" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l|4: // label\l|5: // line number information\l|\
6: ILOAD 1\l|7: IFGE 12\l}",
shape=record];
"-1_gv26" -> "0_gv26";
"-1_gv26" -> "0_gv26" [style=dotted];
"-2_gv26" [label="-2|exit",
shape=record];
"8_gv4" [label="8|{8: // label\l|9: // line number information\l|10: ICONST_1 \l|11: ISTORE 2\l}",
shape=record];
"0_gv26" -> "8_gv4";
"0_gv26" -> "8_gv4" [style=dotted];
12 [label="12|{12: // label\l|13: // line number information\l|14: // stack frame map\l|15: ILOAD 2\l|16: IRETURN \l}",
shape=record];
"0_gv26" -> 12 [label=T];
"0_gv26" -> 12 [style=dotted];
"8_gv4" -> 12;
12 -> "-2_gv26";
12 -> "-2_gv26" [style=dotted];
}
subgraph combined_gv27 {
graph [label=instanceCallMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv27" [label="-1|entry",
shape=record,
style=filled];
"0_gv27" [label="0|{0: // label\l|1: // line number information\l|2: ALOAD 1\l|3: INVOKEVIRTUAL ExampleClass.instanceCallTarget ()V\l|4: // label\l|\
5: // line number information\l|6: ICONST_2 \l|7: IRETURN \l}",
shape=record];
"-1_gv27" -> "0_gv27";
"-1_gv27" -> "0_gv27" [style=dotted];
"-2_gv27" [label="-2|exit",
shape=record];
"0_gv27" -> "-2_gv27";
"0_gv27" -> "-2_gv27" [style=dotted];
}
subgraph combined_gv28 {
graph [label=instanceCallTarget];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv28" [label="-1|entry",
shape=record,
style=filled];
"0_gv28" [label="0|{0: // label\l|1: // line number information\l|2: RETURN \l}",
shape=record];
"-1_gv28" -> "0_gv28";
"-1_gv28" -> "0_gv28" [style=dotted];
"-2_gv28" [label="-2|exit",
shape=record];
"0_gv28" -> "-2_gv28";
"0_gv28" -> "-2_gv28" [style=dotted];
}
subgraph combined_gv29 {
graph [label=interfaceCallMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv29" [label="-1|entry",
shape=record,
style=filled];
"0_gv29" [label="0|{0: // label\l|1: // line number information\l|2: ALOAD 1\l|3: INVOKEINTERFACE ExampleClass$Interface.interfaceCallTarget ()\
V\l|4: // label\l|5: // line number information\l|6: ICONST_2 \l|7: IRETURN \l}",
shape=record];
"-1_gv29" -> "0_gv29";
"-1_gv29" -> "0_gv29" [style=dotted];
"-2_gv29" [label="-2|exit",
shape=record];
"0_gv29" -> "-2_gv29";
"0_gv29" -> "-2_gv29" [style=dotted];
}
subgraph combined_gv30 {
graph [label=nestedFor];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv30" [label="-1|entry",
shape=record,
style=filled];
"0_gv30" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l|4: // label\l|5: // line number information\l|\
6: ICONST_0 \l|7: ISTORE 3\l}",
shape=record];
"-1_gv30" -> "0_gv30";
"-1_gv30" -> "0_gv30" [style=dotted];
"-2_gv30" [label="-2|exit",
shape=record];
"8_gv5" [label="8|{8: // label\l|9: // stack frame map\l|10: ILOAD 3\l|11: ILOAD 1\l|12: IF_ICMPGE 37\l}",
shape=record];
"0_gv30" -> "8_gv5";
"0_gv30" -> "8_gv5" [style=dotted];
"13_gv5" [label="13|{13: // label\l|14: // line number information\l|15: ICONST_0 \l|16: ISTORE 4\l}",
shape=record];
"8_gv5" -> "13_gv5";
"8_gv5" -> "13_gv5" [style=dotted];
37 [label="37|{37: // label\l|38: // line number information\l|39: // stack frame map\l|40: ILOAD 2\l|41: IRETURN \l}",
shape=record];
"8_gv5" -> 37 [label=T];
"8_gv5" -> 37 [style=dotted];
17 [label="17|{17: // label\l|18: // stack frame map\l|19: ILOAD 4\l|20: ILOAD 3\l|21: IF_ICMPGE 32\l}",
shape=record];
"13_gv5" -> 17;
"13_gv5" -> 17 [style=dotted];
22 [label="22|{22: // label\l|23: // line number information\l|24: ILOAD 2\l|25: ILOAD 4\l|26: IADD \l|27: ISTORE 2\l|28: // label\l|29: // \
line number information\l|30: IINC 4 1\l|31: GOTO 17\l}",
shape=record];
17 -> 22;
17 -> 22 [style=dotted];
"32_gv1" [label="32|{32: // label\l|33: // line number information\l|34: // stack frame map\l|35: IINC 3 1\l|36: GOTO 8\l}",
shape=record];
17 -> "32_gv1" [label=T];
17 -> "32_gv1" [style=dotted];
22 -> 17 [label=T];
"32_gv1" -> "8_gv5" [label=T];
37 -> "-2_gv30";
37 -> "-2_gv30" [style=dotted];
}
subgraph combined_gv31 {
graph [label=nonShortCircuitMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv31" [label="-1|entry",
shape=record,
style=filled];
"0_gv31" [label="0|{0: // label\l|1: // line number information\l|2: ILOAD 1\l|3: ILOAD 2\l|4: IF_ICMPLE 7\l}",
shape=record];
"-1_gv31" -> "0_gv31";
"-1_gv31" -> "0_gv31" [style=dotted];
"-2_gv31" [label="-2|exit",
shape=record];
"5_gv1" [label="5|{5: ICONST_1 \l|6: GOTO 10\l}",
shape=record];
"0_gv31" -> "5_gv1";
"0_gv31" -> "5_gv1" [style=dotted];
"7_gv1" [label="7|{7: // label\l|8: // stack frame map\l|9: ICONST_0 \l}",
shape=record];
"0_gv31" -> "7_gv1" [label=T];
"0_gv31" -> "7_gv1" [style=dotted];
"10_gv1" [label="10|{10: // label\l|11: // stack frame map\l|12: ILOAD 1\l|13: ILOAD 3\l|14: IF_ICMPGE 17\l}",
shape=record];
"0_gv31" -> "10_gv1" [style=dotted];
"5_gv1" -> "10_gv1" [label=T];
"7_gv1" -> "10_gv1";
15 [label="15|{15: ICONST_1 \l|16: GOTO 20\l}",
shape=record];
"10_gv1" -> 15;
"10_gv1" -> 15 [style=dotted];
"17_gv1" [label="17|{17: // label\l|18: // stack frame map\l|19: ICONST_0 \l}",
shape=record];
"10_gv1" -> "17_gv1" [label=T];
"10_gv1" -> "17_gv1" [style=dotted];
20 [label="20|{20: // label\l|21: // stack frame map\l|22: IAND \l|23: IFEQ 28\l}",
shape=record];
"10_gv1" -> 20 [style=dotted];
15 -> 20 [label=T];
"17_gv1" -> 20;
20 -> "-2_gv31" [style=dotted];
"24_gv1" [label="24|{24: // label\l|25: // line number information\l|26: ICONST_1 \l|27: IRETURN \l}",
shape=record];
20 -> "24_gv1";
20 -> "24_gv1" [style=dotted];
"28_gv1" [label="28|{28: // label\l|29: // line number information\l|30: // stack frame map\l|31: ICONST_0 \l|32: IRETURN \l}",
shape=record];
20 -> "28_gv1" [label=T];
20 -> "28_gv1" [style=dotted];
"24_gv1" -> "-2_gv31";
"24_gv1" -> "28_gv1";
"28_gv1" -> "-2_gv31";
}
subgraph combined_gv32 {
graph [label=privateInstanceCallMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv32" [label="-1|entry",
shape=record,
style=filled];
"0_gv32" [label="0|{0: // label\l|1: // line number information\l|2: ALOAD 1\l|3: INVOKESPECIAL ExampleClass.privateInstanceCallTarget ()V\l|4: // \
label\l|5: // line number information\l|6: ICONST_2 \l|7: IRETURN \l}",
shape=record];
"-1_gv32" -> "0_gv32";
"-1_gv32" -> "0_gv32" [style=dotted];
"-2_gv32" [label="-2|exit",
shape=record];
"0_gv32" -> "-2_gv32";
"0_gv32" -> "-2_gv32" [style=dotted];
}
subgraph combined_gv33 {
graph [label=privateInstanceCallTarget];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv33" [label="-1|entry",
shape=record,
style=filled];
"0_gv33" [label="0|{0: // label\l|1: // line number information\l|2: RETURN \l}",
shape=record];
"-1_gv33" -> "0_gv33";
"-1_gv33" -> "0_gv33" [style=dotted];
"-2_gv33" [label="-2|exit",
shape=record];
"0_gv33" -> "-2_gv33";
"0_gv33" -> "-2_gv33" [style=dotted];
}
subgraph combined_gv34 {
graph [label=shortCircuitMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv34" [label="-1|entry",
shape=record,
style=filled];
"0_gv34" [label="0|{0: // label\l|1: // line number information\l|2: ILOAD 1\l|3: ILOAD 2\l|4: IF_ICMPLE 12\l}",
shape=record];
"-1_gv34" -> "0_gv34";
"-1_gv34" -> "0_gv34" [style=dotted];
"-2_gv34" [label="-2|exit",
shape=record];
"0_gv34" -> "-2_gv34" [style=dotted];
"5_gv2" [label="5|{5: ILOAD 1\l|6: ILOAD 3\l|7: IF_ICMPGE 12\l}",
shape=record];
"0_gv34" -> "5_gv2";
"0_gv34" -> "5_gv2" [style=dotted];
"12_gv1" [label="12|{12: // label\l|13: // line number information\l|14: // stack frame map\l|15: ICONST_0 \l|16: IRETURN \l}",
shape=record];
"0_gv34" -> "12_gv1" [label=T];
"0_gv34" -> "12_gv1" [style=dotted];
"8_gv6" [label="8|{8: // label\l|9: // line number information\l|10: ICONST_1 \l|11: IRETURN \l}",
shape=record];
"5_gv2" -> "8_gv6";
"5_gv2" -> "8_gv6" [style=dotted];
"5_gv2" -> "12_gv1" [label=T];
"8_gv6" -> "-2_gv34";
"8_gv6" -> "12_gv1";
"12_gv1" -> "-2_gv34";
}
subgraph combined_gv35 {
graph [label=staticCallMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv35" [label="-1|entry",
shape=record,
style=filled];
"0_gv35" [label="0|{0: // label\l|1: // line number information\l|2: INVOKESTATIC ExampleClass.staticCallTarget ()V\l|3: // label\l|4: // line \
number information\l|5: ICONST_2 \l|6: IRETURN \l}",
shape=record];
"-1_gv35" -> "0_gv35";
"-1_gv35" -> "0_gv35" [style=dotted];
"-2_gv35" [label="-2|exit",
shape=record];
"0_gv35" -> "-2_gv35";
"0_gv35" -> "-2_gv35" [style=dotted];
}
subgraph combined_gv36 {
graph [label=staticCallTarget];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv36" [label="-1|entry",
shape=record,
style=filled];
"0_gv36" [label="0|{0: // label\l|1: // line number information\l|2: RETURN \l}",
shape=record];
"-1_gv36" -> "0_gv36";
"-1_gv36" -> "0_gv36" [style=dotted];
"-2_gv36" [label="-2|exit",
shape=record];
"0_gv36" -> "-2_gv36";
"0_gv36" -> "-2_gv36" [style=dotted];
}
subgraph combined_gv37 {
graph [label=staticFieldReadMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv37" [label="-1|entry",
shape=record,
style=filled];
"0_gv37" [label="0|{0: // label\l|1: // line number information\l|2: GETSTATIC ExampleClass.staticField Ljava/lang/String;\l|3: ARETURN \l}",
shape=record];
"-1_gv37" -> "0_gv37";
"-1_gv37" -> "0_gv37" [style=dotted];
"-2_gv37" [label="-2|exit",
shape=record];
"0_gv37" -> "-2_gv37";
"0_gv37" -> "-2_gv37" [style=dotted];
}
subgraph combined_gv38 {
graph [label=staticFieldWriteMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv38" [label="-1|entry",
shape=record,
style=filled];
"0_gv38" [label="0|{0: // label\l|1: // line number information\l|2: ALOAD 1\l|3: PUTSTATIC ExampleClass.staticField Ljava/lang/String;\l|4: // \
label\l|5: // line number information\l|6: RETURN \l}",
shape=record];
"-1_gv38" -> "0_gv38";
"-1_gv38" -> "0_gv38" [style=dotted];
"-2_gv38" [label="-2|exit",
shape=record];
"0_gv38" -> "-2_gv38";
"0_gv38" -> "-2_gv38" [style=dotted];
}
subgraph combined_gv39 {
graph [label=switchMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv39" [label="-1|entry",
shape=record,
style=filled];
"0_gv39" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_0 \l|3: ISTORE 2\l|4: // label\l|5: // line number information\l|\
6: ILOAD 1\l|7: TABLESWITCH 0: 8, 1: 14, 2: 20, default: 26\l}",
shape=record];
"-1_gv39" -> "0_gv39";
"-1_gv39" -> "0_gv39" [style=dotted];
"-2_gv39" [label="-2|exit",
shape=record];
"8_gv7" [label="8|{8: // label\l|9: // line number information\l|10: // stack frame map\l|11: ICONST_0 \l|12: ISTORE 2\l|13: GOTO 31\l}",
shape=record];
"0_gv39" -> "8_gv7" [label=0];
"0_gv39" -> "8_gv7" [style=dotted];
"14_gv1" [label="14|{14: // label\l|15: // line number information\l|16: // stack frame map\l|17: ICONST_1 \l|18: ISTORE 2\l|19: GOTO 31\l}",
shape=record];
"0_gv39" -> "14_gv1" [label=1];
"0_gv39" -> "14_gv1" [style=dotted];
"20_gv1" [label="20|{20: // label\l|21: // line number information\l|22: // stack frame map\l|23: ICONST_2 \l|24: ISTORE 2\l|25: GOTO 31\l}",
shape=record];
"0_gv39" -> "20_gv1" [label=2];
"0_gv39" -> "20_gv1" [style=dotted];
26 [label="26|{26: // label\l|27: // line number information\l|28: // stack frame map\l|29: ICONST_M1 \l|30: ISTORE 2\l}",
shape=record];
"0_gv39" -> 26 [label=default];
"0_gv39" -> 26 [style=dotted];
31 [label="31|{31: // label\l|32: // line number information\l|33: // stack frame map\l|34: ILOAD 2\l|35: IRETURN \l}",
shape=record];
"0_gv39" -> 31 [style=dotted];
"8_gv7" -> 31 [label=T];
"14_gv1" -> 31 [label=T];
"20_gv1" -> 31 [label=T];
26 -> 31;
31 -> "-2_gv39";
31 -> "-2_gv39" [style=dotted];
}
subgraph combined_gv1 {
graph [label=alloc2Of3dArrayMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv1" [label="-1|entry",
shape=record,
style=filled];
"0_gv1" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_2 \l|3: ICONST_3 \l|4: MULTIANEWARRAY [[[I 2\l|5: ARETURN \l}",
shape=record];
"-1_gv1" -> "0_gv1";
"-1_gv1" -> "0_gv1" [style=dotted];
"-2_gv1" [label="-2|exit",
shape=record];
"0_gv1" -> "-2_gv1";
"0_gv1" -> "-2_gv1" [style=dotted];
}
subgraph combined_gv2 {
graph [label=alloc2dArrayMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv2" [label="-1|entry",
shape=record,
style=filled];
"0_gv2" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_2 \l|3: ICONST_3 \l|4: MULTIANEWARRAY [[I 2\l|5: ARETURN \l}",
shape=record];
"-1_gv2" -> "0_gv2";
"-1_gv2" -> "0_gv2" [style=dotted];
"-2_gv2" [label="-2|exit",
shape=record];
"0_gv2" -> "-2_gv2";
"0_gv2" -> "-2_gv2" [style=dotted];
}
subgraph combined_gv3 {
graph [label=allocAndInit2dArrayMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv3" [label="-1|entry",
shape=record,
style=filled];
"0_gv3" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_1 \l|3: ANEWARRAY [I\l|4: DUP \l|5: ICONST_0 \l|6: ICONST_1 \l|7: NEWARRAY \
T_INT\l|8: DUP \l|9: ICONST_0 \l|10: ICONST_1 \l|11: IASTORE \l|12: AASTORE \l|13: ARETURN \l}",
shape=record];
"-1_gv3" -> "0_gv3";
"-1_gv3" -> "0_gv3" [style=dotted];
"-2_gv3" [label="-2|exit",
shape=record];
"0_gv3" -> "-2_gv3";
"0_gv3" -> "-2_gv3" [style=dotted];
}
subgraph combined_gv4 {
graph [label=allocAndInitIntArrayMethod];
node [label="\N",
shape="",
style=""
];
edge [label="",
style=""
];
"-1_gv4" [label="-1|entry",
shape=record,
style=filled];
"0_gv4" [label="0|{0: // label\l|1: // line number information\l|2: ICONST_2 \l|3: NEWARRAY T_INT\l|4: DUP \l|5: ICONST_0 \l|6: ICONST_1 \l|7: \
IASTORE \l|8: DUP \l|9: ICONST_1 \l|10: ICONST_2 \l|11: IASTORE \l|12: ARETURN \l}",
shape=record];
"-1_gv4" -> "0_gv4";
"-1_gv4" -> "0_gv4" [style=dotted];
"-2_gv4" [label="-2|exit",
shape=record];
"0_gv4" -> "-2_gv4";
"0_gv4" -> "-2_gv4" [style=dotted];
}
}