for (int i = 1; i < 300; ++i) {
mv.visitVarInsn(ILOAD, i);
if (i <= 5) {
mv.visitInsn(ICONST_0 + i);
} else if (i <= Byte.MAX_VALUE) {
mv.visitIntInsn(BIPUSH, i);
} else {
mv.visitIntInsn(SIPUSH, i);
}
mv.visitInsn(IADD);
mv.visitVarInsn(ISTORE, i + 1);