Java Bytecode for runSieve() Method

00000000:  sipush 8191          // Push signed integer (8191)
00000003:  newarray BOGUS TYPE  // Bogus??
00000005:  astore_1             // Store object reference (flags)
00000006:  iconst_0
00000007:  istore 6
00000009:  dconst_0
0000000A:  dstore 7
0000000C:  iconst_0
0000000D:  istore 9
0000000F:  invokestatic #19 
00000012:  lstore 10
00000014:  iconst_0
00000015:  istore 5
00000017:  iconst_0
00000018:  istore_2
00000019:  goto 35
0000001C:  aload_1              // Load object reference (flags)
0000001D:  iload_2              // Load integer (i)
0000001E:  iconst_1             // Push integer constant (true)
0000001F:  bastore              // Store into byte array
00000020:  iinc 2 1             // Increment variable (i) by 1
00000023:  iload_2              // Load integer (i)
00000024:  sipush 8190          // Push signed integer (8190)
00000027:  if_icmple 28         // Branch if 
00000073:  lcmp
00000074:  iflt 20
00000077:  lload 12
00000079:  l2d
0000007A:  ldc2_w #41 
0000007D:  ddiv
0000007E:  dstore 7
00000080:  iload 6
00000082:  i2d
00000083:  dload 7
00000085:  ddiv
00000086:  invokestatic #29 
00000089:  l2i
0000008A:  istore 9
0000008C:  aload_0
0000008D:  new #16 
00000090:  dup
00000091:  invokenonvirtual #26 
00000094:  iload 6
00000096:  invokevirtual #38 
00000099:  ldc #6 
0000009B:  invokevirtual #30 
0000009E:  dload 7
000000A0:  invokevirtual #25 
000000A3:  ldc #5 
000000A5:  invokevirtual #30 
000000A8:  invokevirtual #33 
000000AB:  putfield #20 
000000AE:  iload 5
000000B0:  sipush 1899
000000B3:  if_icmpeq 189
000000B6:  aload_0
000000B7:  ldc #1 
000000B9:  putfield #35 
000000BC:  return
000000BD:  aload_0
000000BE:  new #16 
000000C1:  dup
000000C2:  invokenonvirtual #26 
000000C5:  ldc #3 
000000C7:  invokevirtual #30 
000000CA:  iload 9
000000CC:  invokevirtual #38 
000000CF:  invokevirtual #33 
000000D2:  putfield #35