cv.visitLabel(labels.handlerLabel);
cv.visitVarInsn(Constants.ASTORE, 2);
cv.visitLabel(labels.endLabel);
cv.visitVarInsn(Constants.ALOAD, 0);
cv.visitInsn(Constants.ICONST_M1);
cv.visitFieldInsn(Constants.PUTFIELD, className, STACKFRAME_FIELD_NAME, I);
cv.visitVarInsn(Constants.ALOAD, 2);
cv.visitInsn(Constants.ATHROW);
// handle the final try-finally clause
cv.visitTryCatchBlock(labels.startLabel, labels.returnLabels[0], labels.handlerLabel, null);