/* Compiler: ECL 26.3.27                                                      */
/* Source: /build/ecl/src/ecl-26.3.27/contrib/bytecmp/bytecmp.lsp             */
#include <ecl/ecl-cmp.h>
#include "clos/bytecmp.eclh"
/* function definition for BC-DISASSEMBLE                                     */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L2900bc_disassemble(cl_object v1thing)
{
 cl_object T0;
 cl_object env0 = ECL_NIL;
 const cl_env_ptr cl_env_copy = ecl_process_env();
 cl_object value0;
 ecl_cs_check(cl_env_copy,value0);
L1:;
 if (Null(si_valid_function_name_p(v1thing))){
  goto L2;
 }
 v1thing = cl_fdefinition(v1thing);
L2:;
 {
  cl_object v2;
  v2 = ecl_make_bool(v1thing==ECL_NIL);
  if (Null(v2)){
   goto L7;
  }
  goto L5;
L7:;
  if (Null(cl_functionp(v1thing))){
   goto L9;
  }
  si_bc_disassemble(v1thing);
  goto L5;
L9:;
  if (!(ECL_CONSP(v1thing))){
   goto L11;
  }
  {
   cl_object v3;
   v3 = ecl_car(v1thing);
   if (!((v3)==(ECL_SYM("LAMBDA",454)))){
    goto L18;
   }
   goto L15;
L18:;
   goto L16;
L16:;
   if (!((v3)==(VV[3]))){
    goto L11;
   }
   goto L12;
L15:;
  }
L12:;
  T0 = (cl_env_copy->function=(ECL_SYM("COMPILE",235)->symbol.gfdef))->cfun.entry(2, ECL_NIL, v1thing) /*  COMPILE */;
  (cl_env_copy->function=(ECL_SYM("DISASSEMBLE",307)->symbol.gfdef))->cfun.entry(1, T0) /*  DISASSEMBLE */;
  goto L5;
L11:;
  T0 = ecl_list1(v1thing);
  cl_error(9, ECL_SYM("SIMPLE-TYPE-ERROR",776), ECL_SYM("DATUM",1245), v1thing, ECL_SYM("EXPECTED-TYPE",1263), VV[5], ECL_SYM("FORMAT-CONTROL",1272), VV[6], ECL_SYM("FORMAT-ARGUMENTS",1271), T0);
 }
L5:;
 value0 = ECL_NIL;
 cl_env_copy->nvalues = 1;
 return value0;
}
static cl_object L2900bc_disassemble_va(cl_narg narg, cl_object v2thing, ...)
{
 if (ecl_unlikely(narg!=1)) FEwrong_num_arguments(VV[1]);
 {
  return L2900bc_disassemble(v2thing);
 }
}
/* function definition for BC-COMPILE                                         */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L2901bc_compile(cl_narg narg, cl_object v1name, ...)
{
 cl_object T0;
 cl_object env0 = ECL_NIL;
 const cl_env_ptr cl_env_copy = ecl_process_env();
 cl_object value0;
 ecl_cs_check(cl_env_copy,value0);
 if (ecl_unlikely(narg<1)) FEwrong_num_arguments(VV[8]);
 if (ecl_unlikely(narg>2)) FEwrong_num_arguments(VV[8]);
 {
  cl_object v2definition;
  cl_object v3def_p;
  va_list args; va_start(args,v1name);
  {
   int i = 1;
   if (i >= narg) {
    v2definition = ECL_NIL;
    v3def_p = ECL_NIL;
   } else {
    i++;
    v2definition = va_arg(args,cl_object);
    v3def_p = ECL_T;
   }
  }
  va_end(args);
  ecl_bds_bind(cl_env_copy,ECL_SYM("*PRINT-PRETTY*",57),ECL_NIL); /*  *PRINT-PRETTY* */
  {
   cl_object v4;
   v4 = v1name;
   if (si_valid_function_name_p(v4)!=ECL_NIL) {
    goto L4;
   }
   v1name = si_do_check_type(v4, VV[9], ECL_NIL, VV[10]);
L4:;
  }
  if (Null(v3def_p)){
   goto L8;
  }
  {
   cl_object v4;
   v4 = v2definition;
   if (cl_functionp(v4)!=ECL_NIL) {
    goto L11;
   }
   if (ECL_CONSP(v4)) {
    goto L11;
   }
   v2definition = si_do_check_type(v4, VV[11], ECL_NIL, VV[12]);
L11:;
  }
L8:;
  if (Null(cl_functionp(v2definition))){
   goto L15;
  }
  {
   cl_object v4;                                  /*  FORM                    */
   cl_object v5;                                  /*  LEXENV                  */
   value0 = cl_function_lambda_expression(v2definition);
   {
    v4 = value0;
    v5 = cl_env_copy->values[1];
   }
   if (Null(v4)){
    goto L17;
   }
   if (!((v5)==(ECL_T))){
    goto L20;
   }
   (cl_env_copy->function=(ECL_SYM("WARN",907)->symbol.gfdef))->cfun.entry(1, VV[13]) /*  WARN */;
   cl_env_copy->nvalues = 3;
   cl_env_copy->values[2] = ECL_NIL;
   cl_env_copy->values[1] = ECL_T;
   cl_env_copy->values[0] = v2definition;
   ecl_bds_unwind1(cl_env_copy);
   return cl_env_copy->values[0];
L20:;
   if (Null(v5)){
    goto L23;
   }
   v2definition = si_eval_with_env(2, v4, v5);
   goto L17;
L23:;
   v2definition = si_eval_with_env(5, v4, ECL_NIL, ECL_NIL, ECL_NIL, ECL_SYM("EXECUTE",1262));
  }
L17:;
  if (Null(v1name)){
   goto L27;
  }
  si_fset(2, v1name, v2definition);
L27:;
  value0 = v1name;
  if (value0!=ECL_NIL) {
   goto L31;
  }
  T0 = v2definition;
  goto L29;
L31:;
  T0 = value0;
  goto L29;
L29:;
  cl_env_copy->nvalues = 3;
  cl_env_copy->values[2] = ECL_NIL;
  cl_env_copy->values[1] = ECL_NIL;
  cl_env_copy->values[0] = T0;
  ecl_bds_unwind1(cl_env_copy);
  return cl_env_copy->values[0];
L15:;
  if (v2definition==ECL_NIL) {
   goto L33;
  }
  {
   cl_object v4;
   v4 = ecl_car(v2definition);
   if (!((v4)==(ECL_SYM("LAMBDA",454)))){
    goto L40;
   }
   goto L35;
L40:;
   goto L38;
L38:;
   if (!((v4)==(ECL_SYM("LAMBDA-BLOCK",1377)))){
    goto L43;
   }
   goto L35;
L43:;
   goto L36;
  }
L36:;
  cl_format(3, ECL_T, VV[16], v2definition);
  cl_env_copy->nvalues = 3;
  cl_env_copy->values[2] = ECL_T;
  cl_env_copy->values[1] = ECL_T;
  cl_env_copy->values[0] = ECL_NIL;
  ecl_bds_unwind1(cl_env_copy);
  return cl_env_copy->values[0];
L35:;
  v2definition = si_eval_with_env(5, v2definition, ECL_NIL, ECL_NIL, ECL_NIL, ECL_SYM("EXECUTE",1262));
  if (Null(v1name)){
   goto L48;
  }
  si_fset(2, v1name, v2definition);
L48:;
  value0 = v1name;
  if (value0!=ECL_NIL) {
   goto L52;
  }
  T0 = v2definition;
  goto L50;
L52:;
  T0 = value0;
  goto L50;
L50:;
  cl_env_copy->nvalues = 3;
  cl_env_copy->values[2] = ECL_NIL;
  cl_env_copy->values[1] = ECL_NIL;
  cl_env_copy->values[0] = T0;
  ecl_bds_unwind1(cl_env_copy);
  return cl_env_copy->values[0];
L33:;
  if (cl_fboundp(v1name)!=ECL_NIL) {
   goto L54;
  }
  value0 = cl_error(2, VV[17], v1name);
  ecl_bds_unwind1(cl_env_copy);
  return value0;
L54:;
  T0 = cl_fdefinition(v1name);
  if (Null(si_of_class_p(2, T0, ECL_SYM("STANDARD-GENERIC-FUNCTION",978)))){
   goto L56;
  }
  (cl_env_copy->function=(ECL_SYM("WARN",907)->symbol.gfdef))->cfun.entry(1, VV[18]) /*  WARN */;
  cl_env_copy->nvalues = 3;
  cl_env_copy->values[2] = ECL_NIL;
  cl_env_copy->values[1] = ECL_T;
  cl_env_copy->values[0] = v1name;
  ecl_bds_unwind1(cl_env_copy);
  return cl_env_copy->values[0];
L56:;
  {
   cl_object v4;                                  /*  FORM                    */
   cl_object v5;                                  /*  LEXENV                  */
   T0 = cl_fdefinition(v1name);
   value0 = cl_function_lambda_expression(T0);
   {
    v4 = value0;
    v5 = cl_env_copy->values[1];
   }
   if (Null(v4)){
    goto L59;
   }
   if (!((v5)==(ECL_T))){
    goto L62;
   }
   (cl_env_copy->function=(ECL_SYM("WARN",907)->symbol.gfdef))->cfun.entry(1, VV[19]) /*  WARN */;
   cl_env_copy->nvalues = 3;
   cl_env_copy->values[2] = ECL_NIL;
   cl_env_copy->values[1] = ECL_T;
   cl_env_copy->values[0] = v2definition;
   ecl_bds_unwind1(cl_env_copy);
   return cl_env_copy->values[0];
L62:;
   if (Null(v5)){
    goto L65;
   }
   v2definition = si_eval_with_env(2, v4, v5);
   goto L59;
L65:;
   v2definition = si_eval_with_env(5, v4, ECL_NIL, ECL_NIL, ECL_NIL, ECL_SYM("EXECUTE",1262));
  }
L59:;
  if (!(v2definition==ECL_NIL)){
   goto L69;
  }
  (cl_env_copy->function=(ECL_SYM("WARN",907)->symbol.gfdef))->cfun.entry(2, VV[20], v1name) /*  WARN */;
  cl_env_copy->nvalues = 3;
  cl_env_copy->values[2] = ECL_NIL;
  cl_env_copy->values[1] = ECL_T;
  cl_env_copy->values[0] = v1name;
  ecl_bds_unwind1(cl_env_copy);
  return cl_env_copy->values[0];
L69:;
  cl_env_copy->nvalues = 3;
  cl_env_copy->values[2] = ECL_NIL;
  cl_env_copy->values[1] = ECL_NIL;
  cl_env_copy->values[0] = v1name;
  ecl_bds_unwind1(cl_env_copy);
  return cl_env_copy->values[0];
 }
}
/* function definition for BC-COMPILE-FILE-PATHNAME                           */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L2902bc_compile_file_pathname(cl_narg narg, cl_object v1name, ...)
{
 cl_object env0 = ECL_NIL;
 const cl_env_ptr cl_env_copy = ecl_process_env();
 cl_object value0;
 ecl_cs_check(cl_env_copy,value0);
 if (ecl_unlikely(narg<1)) FEwrong_num_arguments(VV[23]);
 {
  cl_object v2output_file;
  cl_object v3type;
  cl_object v4verbose;
  cl_object v5print;
  cl_object v6c_file;
  cl_object v7h_file;
  cl_object v8data_file;
  cl_object v9shared_data_file;
  cl_object v10system_p;
  cl_object v11load;
  cl_object v12external_format;
  ecl_va_list args; ecl_va_start(args,v1name,narg,1);
  {
   cl_object keyvars[22];
   cl_parse_key(args,11,L2902bc_compile_file_pathnamekeys,keyvars,NULL,FALSE);
   ecl_va_end(args);
   if (Null(keyvars[11])) {
    v2output_file = v1name;
   } else {
    v2output_file = keyvars[0];
   }
   if (Null(keyvars[12])) {
    v3type = VV[22];
   } else {
    v3type = keyvars[1];
   }
   v4verbose = keyvars[2];
   v5print = keyvars[3];
   v6c_file = keyvars[4];
   v7h_file = keyvars[5];
   v8data_file = keyvars[6];
   v9shared_data_file = keyvars[7];
   v10system_p = keyvars[8];
   v11load = keyvars[9];
   v12external_format = keyvars[10];
  }
  {
   cl_object v13extension;
   v13extension = VV[24];
   if (!((v3type)==(VV[22]))){
    goto L10;
   }
   goto L7;
L10:;
   goto L8;
L8:;
   if (!((v3type)==(VV[26]))){
    goto L5;
   }
   goto L6;
L7:;
L6:;
   v13extension = VV[24];
   goto L4;
L5:;
   cl_error(2, VV[28], v3type);
L4:;
   value0 = cl_make_pathname(4, ECL_SYM("TYPE",1356), v13extension, ECL_SYM("DEFAULTS",1247), v2output_file);
   return value0;
  }
 }
}
/* function definition for BC-COMPILE-FILE                                    */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L2903bc_compile_file(volatile cl_narg narg, cl_object volatile v1input, ...)
{
 cl_object T0, T1;
 cl_object volatile env0 = ECL_NIL;
 const cl_env_ptr cl_env_copy = ecl_process_env();
 cl_object volatile value0;
 ecl_cs_check(cl_env_copy,value0);
 if (ecl_unlikely(narg<1)) FEwrong_num_arguments(VV[30]);
 {
  cl_object volatile v2load;
  cl_object volatile v3external_format;
  cl_object volatile v4output_file;
  cl_object volatile v5output_file_p;
  ecl_va_list args; ecl_va_start(args,v1input,narg,1);
  {
   cl_object keyvars[10];
   cl_parse_key(args,5,L2903bc_compile_filekeys,keyvars,NULL,TRUE);
   ecl_va_end(args);
   if (Null(keyvars[5])) {
    ecl_bds_push(cl_env_copy,ECL_SYM("*COMPILE-VERBOSE*",31)); /*  *COMPILE-VERBOSE* */
   } else {
    ecl_bds_bind(cl_env_copy,ECL_SYM("*COMPILE-VERBOSE*",31),keyvars[0]); /*  *COMPILE-VERBOSE* */
   }
   if (Null(keyvars[6])) {
    ecl_bds_push(cl_env_copy,ECL_SYM("*COMPILE-PRINT*",30)); /*  *COMPILE-PRINT* */
   } else {
    ecl_bds_bind(cl_env_copy,ECL_SYM("*COMPILE-PRINT*",30),keyvars[1]); /*  *COMPILE-PRINT* */
   }
   v2load = keyvars[2];
   if (Null(keyvars[8])) {
    v3external_format = ECL_SYM("DEFAULT",1246);
   } else {
    v3external_format = keyvars[3];
   }
   v4output_file = keyvars[4];
   v5output_file_p = keyvars[9];
  }
  if (Null(v5output_file_p)){
   goto L4;
  }
  if ((v4output_file)==(ECL_T)) {
   goto L4;
  }
  v4output_file = cl_pathname(v4output_file);
  goto L3;
L4:;
  v4output_file = L2902bc_compile_file_pathname(1, v1input);
L3:;
  if (Null(ecl_cmp_symbol_value(cl_env_copy,ECL_SYM("*COMPILE-VERBOSE*",31)))){
   goto L7;
  }
  cl_format(3, ECL_T, VV[31], v1input);
L7:;
  if (cl_streamp(v1input)!=ECL_NIL) {
   goto L10;
  }
  T0 = cl_truename(v1input);
  T1 = CONS(T0,ecl_make_int8_t(0));
  ecl_bds_bind(cl_env_copy,ECL_SYM("*SOURCE-LOCATION*",1210),T1); /*  *SOURCE-LOCATION* */
  T0 = cl_merge_pathnames(1, v1input);
  T1 = cl_pathname(T0);
  ecl_bds_bind(cl_env_copy,ECL_SYM("*COMPILE-FILE-PATHNAME*",28),T1); /*  *COMPILE-FILE-PATHNAME* */
  T0 = cl_truename(v1input);
  ecl_bds_bind(cl_env_copy,ECL_SYM("*COMPILE-FILE-TRUENAME*",29),T0); /*  *COMPILE-FILE-TRUENAME* */
  {
   volatile cl_object v6sin;
   v6sin = cl_open(3, v1input, ECL_SYM("DIRECTION",1249), ECL_SYM("INPUT",1289));
   {
    struct ecl_stack_frame _ecl_inner_frame_aux;
    volatile cl_object _ecl_inner_frame=ecl_stack_frame_open(cl_env_copy,(cl_object)&_ecl_inner_frame_aux,0);
    volatile bool unwinding = FALSE;
    ecl_frame_ptr next_fr;
    {
     ecl_frs_push(cl_env_copy,ECL_PROTECT_TAG);
     if (__ecl_frs_push_result!=0) {
       unwinding = TRUE; next_fr=cl_env_copy->frs_stack.nlj_fr;
     } else {
     {
      struct ecl_stack_frame _ecl_inner_frame_aux;
      volatile cl_object _ecl_inner_frame=ecl_stack_frame_open(cl_env_copy,(cl_object)&_ecl_inner_frame_aux,0);
      cl_env_copy->values[0] = L2903bc_compile_file(3, v6sin, VV[32], v4output_file);
      ecl_stack_frame_push_values(_ecl_inner_frame);
      if (Null(v6sin)){
       goto L15;
      }
      cl_close(1, v6sin);
L15:;
      ecl_stack_frame_pop_values(_ecl_inner_frame);
      ecl_stack_frame_close(_ecl_inner_frame);
     }
     }
    }
    ecl_frs_pop(cl_env_copy);
    ecl_stack_frame_push_values(_ecl_inner_frame);
    if (Null(v6sin)){
     goto L17;
    }
    cl_close(3, v6sin, ECL_SYM("ABORT",1225), ECL_T);
L17:;
    ecl_stack_frame_pop_values(_ecl_inner_frame);
    if (unwinding) ecl_unwind(cl_env_copy,next_fr);
    ecl_stack_frame_close(_ecl_inner_frame);
    ecl_bds_unwind1(cl_env_copy);
    ecl_bds_unwind1(cl_env_copy);
    ecl_bds_unwind1(cl_env_copy);
    goto L9;
   }
  }
L10:;
  if (v5output_file_p!=ECL_NIL) {
   goto L19;
  }
  cl_error(1, VV[33]);
  goto L9;
L19:;
  {
   volatile cl_object v7sout;
   v7sout = cl_open(9, v4output_file, ECL_SYM("DIRECTION",1249), ECL_SYM("OUTPUT",1319), ECL_SYM("IF-EXISTS",1279), ECL_SYM("SUPERSEDE",1351), ECL_SYM("IF-DOES-NOT-EXIST",1277), ECL_SYM("CREATE",1244), ECL_SYM("EXTERNAL-FORMAT",1267), v3external_format);
   {
    struct ecl_stack_frame _ecl_inner_frame_aux;
    volatile cl_object _ecl_inner_frame=ecl_stack_frame_open(cl_env_copy,(cl_object)&_ecl_inner_frame_aux,0);
    volatile bool unwinding = FALSE;
    ecl_frame_ptr next_fr;
    {
     ecl_frs_push(cl_env_copy,ECL_PROTECT_TAG);
     if (__ecl_frs_push_result!=0) {
       unwinding = TRUE; next_fr=cl_env_copy->frs_stack.nlj_fr;
     } else {
     {
      struct ecl_stack_frame _ecl_inner_frame_aux;
      volatile cl_object _ecl_inner_frame=ecl_stack_frame_open(cl_env_copy,(cl_object)&_ecl_inner_frame_aux,0);
      {
       cl_object v8binary;
       {
        cl_object v9;
        cl_object v10;
        v9 = ecl_cmp_symbol_value(cl_env_copy,ECL_SYM("*PACKAGE*",45));
        v10 = ecl_cmp_symbol_value(cl_env_copy,ECL_SYM("*READTABLE*",67));
        ecl_bds_bind(cl_env_copy,ECL_SYM("*PACKAGE*",45),v9); /*  *PACKAGE*   */
        ecl_bds_bind(cl_env_copy,ECL_SYM("*READTABLE*",67),v10); /*  *READTABLE* */
        ecl_bds_bind(cl_env_copy,ECL_SYM("*BYTECODES-COMPILER*",1783),ECL_T); /*  *BYTECODES-COMPILER* */
        v8binary = si_bc_compile_from_stream(v1input);
        ecl_bds_unwind1(cl_env_copy);
        ecl_bds_unwind1(cl_env_copy);
        ecl_bds_unwind1(cl_env_copy);
       }
       {
        cl_object v9;
        v9 = ecl_cmp_symbol_value(cl_env_copy,ECL_SYM("+ECL-SYNTAX-PROGV-LIST+",1806));
        {
         cl_object v11, v12; cl_index v10;
         v11 = ECL_CONS_CAR(v9);
         v12 = ECL_CONS_CDR(v9);
         v10 = ecl_progv(cl_env_copy, v11, v12);
         cl_write(11, v8binary, ECL_SYM("STREAM",1350), v7sout, ECL_SYM("CIRCLE",1236), ECL_T, ECL_SYM("ESCAPE",1261), ECL_T, ECL_SYM("READABLY",1333), ECL_T, ECL_SYM("PRETTY",1326), ECL_NIL);
         ecl_bds_unwind(cl_env_copy,v10);
        }
       }
       cl_env_copy->values[0] = (ecl_terpri(v7sout));
       cl_env_copy->nvalues = 1;
      }
      ecl_stack_frame_push_values(_ecl_inner_frame);
      if (Null(v7sout)){
       goto L31;
      }
      cl_close(1, v7sout);
L31:;
      ecl_stack_frame_pop_values(_ecl_inner_frame);
      ecl_stack_frame_close(_ecl_inner_frame);
     }
     }
    }
    ecl_frs_pop(cl_env_copy);
    ecl_stack_frame_push_values(_ecl_inner_frame);
    if (Null(v7sout)){
     goto L33;
    }
    cl_close(3, v7sout, ECL_SYM("ABORT",1225), ECL_T);
L33:;
    ecl_stack_frame_pop_values(_ecl_inner_frame);
    if (unwinding) ecl_unwind(cl_env_copy,next_fr);
    ecl_stack_frame_close(_ecl_inner_frame);
   }
  }
L9:;
  if (Null(v2load)){
   goto L35;
  }
  si_load_bytecodes(v4output_file, ecl_cmp_symbol_value(cl_env_copy,ECL_SYM("*COMPILE-VERBOSE*",31)), ecl_cmp_symbol_value(cl_env_copy,ECL_SYM("*LOAD-PRINT*",39)), ECL_SYM("DEFAULT",1246));
L35:;
  T0 = cl_truename(v4output_file);
  cl_env_copy->nvalues = 3;
  cl_env_copy->values[2] = ECL_NIL;
  cl_env_copy->values[1] = ECL_NIL;
  cl_env_copy->values[0] = T0;
  ecl_bds_unwind1(cl_env_copy);
  ecl_bds_unwind1(cl_env_copy);
  return cl_env_copy->values[0];
 }
}
/* function definition for BC-DO-COMPILATION-UNIT                             */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L2904bc_do_compilation_unit(cl_narg narg, cl_object v1closure, ...)
{
 cl_object env0 = ECL_NIL;
 const cl_env_ptr cl_env_copy = ecl_process_env();
 cl_object value0;
 ecl_cs_check(cl_env_copy,value0);
 if (ecl_unlikely(narg<1)) FEwrong_num_arguments(VV[35]);
 {
  cl_object v2override;
  ecl_va_list args; ecl_va_start(args,v1closure,narg,1);
  {
   cl_object keyvars[2];
   cl_parse_key(args,1,L2904bc_do_compilation_unitkeys,keyvars,NULL,FALSE);
   ecl_va_end(args);
   v2override = keyvars[0];
  }
  value0 = ecl_function_dispatch(cl_env_copy,v1closure)(0);
  return value0;
 }
}
/* function definition for INSTALL-BYTECODES-COMPILER                         */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L2905install_bytecodes_compiler()
{
 cl_object T0;
 cl_object env0 = ECL_NIL;
 const cl_env_ptr cl_env_copy = ecl_process_env();
 cl_object value0;
 ecl_cs_check(cl_env_copy,value0);
L1:;
 T0 = cl_find_package(VV[37]);
 si_package_lock(T0, ECL_NIL);
 T0 = cl_adjoin(2, VV[38], ecl_cmp_symbol_value(cl_env_copy,ECL_SYM("*FEATURES*",36)));
 ecl_cmp_setq(cl_env_copy,ECL_SYM("*FEATURES*",36),T0);
 T0 = ecl_fdefinition(VV[1]);
 si_fset(2, ECL_SYM("DISASSEMBLE",307), T0);
 T0 = ecl_fdefinition(VV[8]);
 si_fset(2, ECL_SYM("COMPILE",235), T0);
 T0 = ecl_fdefinition(VV[30]);
 si_fset(2, ECL_SYM("COMPILE-FILE",236), T0);
 T0 = ecl_fdefinition(VV[23]);
 si_fset(2, ECL_SYM("COMPILE-FILE-PATHNAME",237), T0);
 T0 = ecl_fdefinition(VV[35]);
 si_fset(2, VV[39], T0);
 T0 = cl_find_package(VV[37]);
 value0 = si_package_lock(T0, ECL_T);
 return value0;
}
static cl_object L2905install_bytecodes_compiler_va(cl_narg narg, ...)
{
 if (ecl_unlikely(narg!=0)) FEwrong_num_arguments(VV[40]);
 {
  return L2905install_bytecodes_compiler();
 }
}
/* function definition for INSTALL-C-COMPILER                                 */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L2906install_c_compiler()
{
 cl_object env0 = ECL_NIL;
 const cl_env_ptr cl_env_copy = ecl_process_env();
 cl_object value0;
 ecl_cs_check(cl_env_copy,value0);
L1:;
 cl_require(1, VV[41]);
 value0 = ecl_function_dispatch(cl_env_copy,ECL_SYM("INSTALL-C-COMPILER",2084))(0);
 return value0;
}
static cl_object L2906install_c_compiler_va(cl_narg narg, ...)
{
 if (ecl_unlikely(narg!=0)) FEwrong_num_arguments(VV[42]);
 {
  return L2906install_c_compiler();
 }
}
#include "clos/bytecmp.data"
#ifdef __cplusplus
extern "C"
#endif

ECL_DLLEXPORT void _eclFhbSrAvTKYBm9_VzH0M881(cl_object flag)
{
 const cl_env_ptr cl_env_copy = ecl_process_env();
 cl_object value0;
 cl_object *VVtemp;
 if (flag != OBJNULL){
 Cblock = flag;
 #ifndef ECL_DYNAMIC_VV
 flag->cblock.data = VV;
 #endif
 flag->cblock.data_size = VM;
 flag->cblock.temp_data_size = VMtemp;
 flag->cblock.data_text = compiler_data_text;
 flag->cblock.cfuns_size = compiler_cfuns_size;
 flag->cblock.cfuns = compiler_cfuns;
 flag->cblock.source = ecl_make_constant_base_string("EXT:BYTECMP;BYTECMP.LSP.NEWEST",-1);
 return;}
 #ifdef ECL_DYNAMIC_VV
 VV = Cblock->cblock.data;
 #endif
 Cblock->cblock.data_text = (const cl_object *)"@EcLtAg:_eclFhbSrAvTKYBm9_VzH0M881@";
 VVtemp = Cblock->cblock.temp_data;
 ECL_DEFINE_SETF_FUNCTIONS
/* MAKE-LOAD-FORMs                                                            */
/* TOP-LEVEL-FORMs                                                            */
  si_select_package(VVtemp[0]);
  (cl_env_copy->function=(VV[0]->symbol.gfdef))->cfun.entry(12, VVtemp[1], ECL_NIL, ECL_NIL, ECL_NIL, VVtemp[2], ECL_NIL, ECL_NIL, ECL_NIL, VVtemp[3], ECL_NIL, ECL_NIL, ECL_NIL) /*  DODEFPACKAGE */;
  ecl_cmp_defun(VV[45]);                          /*  BC-DISASSEMBLE          */
  ecl_cmp_defun(VV[46]);                          /*  BC-COMPILE              */
  ecl_cmp_defun(VV[47]);                          /*  BC-COMPILE-FILE-PATHNAME */
  ecl_cmp_defun(VV[48]);                          /*  BC-COMPILE-FILE         */
  ecl_cmp_defun(VV[49]);                          /*  BC-DO-COMPILATION-UNIT  */
  ecl_cmp_defun(VV[50]);                          /*  INSTALL-BYTECODES-COMPILER */
  ecl_cmp_defun(VV[51]);                          /*  INSTALL-C-COMPILER      */
  (cl_env_copy->function=(VV[43]->symbol.gfdef))->cfun.entry(5, VVtemp[4], ECL_SYM("COMPILE-FILE",236), ECL_SYM("COMPILE",235), ECL_SYM("COMPILE-FILE-PATHNAME",237), ECL_SYM("DISASSEMBLE",307)) /*  AUTOLOAD */;
  cl_provide(VV[44]);
  si_package_lock(VVtemp[5], ECL_T);
}
