code: public static void doReturn(MethodVisitor mv, ClassNode returnType) {
          if (returnType == ClassHelper.double_TYPE) {
              mv.visitInsn(DRETURN);
          } else if (returnType == ClassHelper.float_TYPE) {
              mv.visitInsn(FRETURN);
          } else if (returnType == ClassHelper.long_TYPE) {
              mv.visitInsn(LRETURN);
          } else if (
                  returnType == ClassHelper.boolean_TYPE
                          || returnType == ClassHelper.char_TYPE
                          || returnType == ClassHelper.byte_TYPE
                          || returnType == ClassHelper.int_TYPE
                          || returnType == ClassHelper.short_TYPE) {
              //byte,short,boolean,int are all IRETURN
              mv.visitInsn(IRETURN);
          } else if (returnType == ClassHelper.VOID_TYPE) {
              mv.visitInsn(RETURN);
          } else {
              mv.visitInsn(ARETURN);
          }
  
      }
docs: /*public void dup() {
  mv.visitInsn(DUP);
  }