Untitled diff
20 removals
45 lines
21 additions
45 lines
for (...) n += (i*i); return 2 *n
for (...) n += 2*(i*i); return n
public int square_i_two();
public int two_square_i();
descriptor: ()I
descriptor: ()I
flags: ACC_PUBLIC
flags: ACC_PUBLIC
Code:
Code:
stack=3, locals=3, args_size=1
stack=4, locals=3, args_size=1
0: iconst_0
0: iconst_0
1: istore_1
1: istore_1
2: iconst_0
2: iconst_0
3: istore_2
3: istore_2
4: iload_2
4: iload_2
5: aload_0
5: aload_0
6: getfield #2 // Field size:I
6: getfield #2 // Field size:I
9: if_icmpge 24
9: if_icmpge 26
12: iload_1
12: iload_1
13: iload_2
13: iconst_2
14: iload_2
14: iload_2
15: imul
15: iload_2
16: iadd
16: imul
17: istore_1
17: imul
18: iinc 2, 1
18: iadd
21: goto 4
19: istore_1
24: iconst_2
20: iinc 2, 1
25: iload_1
23: goto 4
26: imul
26: iload_1
27: ireturn
27: ireturn
LineNumberTable:
LineNumberTable:
line 63: 0
line 54: 0
line 64: 2
line 55: 2
line 65: 12
line 56: 12
line 64: 18
line 55: 20
line 67: 24
line 58: 26
LocalVariableTable:
LocalVariableTable:
Start Length Slot Name Signature
Start Length Slot Name Signature
4 20 2 i I
4 22 2 i I
0 28 0 this Lorg/sample/MyBenchmark;
0 28 0 this Lorg/sample/MyBenchmark;
2 26 1 n I
2 26 1 n I
StackMapTable: number_of_entries = 2
StackMapTable: number_of_entries = 2
frame_type = 253 /* append */
frame_type = 253 /* append */
offset_delta = 4
offset_delta = 4
locals = [ int, int ]
locals = [ int, int ]
frame_type = 250 /* chop */
frame_type = 250 /* chop */
offset_delta = 19
offset_delta = 21
RuntimeVisibleAnnotations:
RuntimeVisibleAnnotations:
0: #25()
0: #25()