// make call
if (Modifier.isStatic(method.getModifiers())) {
MethodHandleFactory.genLoadParametersPrimitiveDirect(2, mv, method);
mv.visitMethodInsn(Opcodes.INVOKESTATIC, type, method.getName(), descriptor);
} else {
mv.visitVarInsn(Opcodes.ALOAD, 1);
BytecodeHelper.doCast(mv, callClass);
MethodHandleFactory.genLoadParametersPrimitiveDirect(2, mv, method);
mv.visitMethodInsn((useInterface) ? Opcodes.INVOKEINTERFACE : Opcodes.INVOKEVIRTUAL, type, method.getName(), descriptor);
}