try {
Class[] descriptor = new Class[] {arg1, arg2, arg3};
if (c == null) {
Class[] signature = new Class[] { RubyKernel.IRUBY_OBJECT, arg1, arg2, arg3 };
Class ret = getReturnClass(method, signature);
ClassWriter cw = createCtorFast(mnamePath);
MethodVisitor mv = startCallSFast(cw);
loadArguments(mv, METHOD_ARGS_INDEX, 3, descriptor);
mv.visitMethodInsn(INVOKESTATIC, typePath, method, sig(ret, signature));