/* Compiler: ECL 26.3.27                                                      */
/* Source: /build/ecl/src/ecl-26.3.27/src/cmp/cmpbackend-cxx/cmpc-arg-inl.lsp */
#include <ecl/ecl-cmp.h>
#include "cmp/cmpc-arg-inl.eclh"
/* function definition for MAYBE-OPEN-INLINE-BLOCK                            */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3695maybe_open_inline_block()
{
 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 (ecl_plusp(ecl_cmp_symbol_value(cl_env_copy,VV[1]))) {
  goto L2;
 }
 value0 = L3696open_inline_block();
 return value0;
L2:;
 value0 = ECL_NIL;
 cl_env_copy->nvalues = 1;
 return value0;
}
static cl_object L3695maybe_open_inline_block_va(cl_narg narg, ...)
{
 if (ecl_unlikely(narg!=0)) FEwrong_num_arguments(VV[0]);
 {
  return L3695maybe_open_inline_block();
 }
}
/* function definition for OPEN-INLINE-BLOCK                                  */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3696open_inline_block()
{
 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:;
 (cl_env_copy->function=ecl_fdefinition(VV[4]))->cfun.entry(0) /*  WT-NL-OPEN-BRACE */;
 T0 = ecl_plus(ecl_cmp_symbol_value(cl_env_copy,VV[1]),ecl_make_int8_t(1));
 ecl_cmp_setq(cl_env_copy,VV[1],T0);
 value0 = ecl_cmp_symbol_value(cl_env_copy,VV[1]);
 cl_env_copy->nvalues = 1;
 return value0;
}
static cl_object L3696open_inline_block_va(cl_narg narg, ...)
{
 if (ecl_unlikely(narg!=0)) FEwrong_num_arguments(VV[2]);
 {
  return L3696open_inline_block();
 }
}
/* function definition for CLOSE-INLINE-BLOCKS                                */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3697close_inline_blocks()
{
 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_fixnum v1;
  cl_fixnum v2;
  cl_fixnum v3i;
  v1 = (cl_fixnum)(0);
  {
   cl_object v4;
   v4 = ecl_cmp_symbol_value(cl_env_copy,VV[1]);
   {
    bool v5;
    v5 = ECL_FIXNUMP(v4);
    if (ecl_unlikely(!(v5)))
         FEwrong_type_argument(ECL_SYM("FIXNUM",374),v4);
    value0 = ECL_NIL;
    cl_env_copy->nvalues = 0;
   }
   v2 = ecl_fixnum(v4);
  }
  v3i = v1;
L7:;
  if (!((v3i)>=(v2))){
   goto L9;
  }
  goto L8;
L9:;
  (cl_env_copy->function=ecl_fdefinition(VV[8]))->cfun.entry(0) /*  WT-NL-CLOSE-BRACE */;
  v3i = (v3i)+1;
  goto L7;
L8:;
  value0 = ECL_NIL;
  cl_env_copy->nvalues = 1;
  return value0;
 }
}
static cl_object L3697close_inline_blocks_va(cl_narg narg, ...)
{
 if (ecl_unlikely(narg!=0)) FEwrong_num_arguments(VV[6]);
 {
  return L3697close_inline_blocks();
 }
}
/* function definition for COERCE-LOC                                         */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3698coerce_loc(cl_object v1host_type, cl_object v2location)
{
 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_env_copy->function=ecl_fdefinition(VV[13]))->cfun.entry(1, v2location) /*  LOC-HOST-TYPE */;
 if (!((T0)==(v1host_type))){
  goto L2;
 }
 value0 = v2location;
 cl_env_copy->nvalues = 1;
 return value0;
L2:;
 value0 = cl_list(3, VV[12], v1host_type, v2location);
 return value0;
}
static cl_object L3698coerce_loc_va(cl_narg narg, cl_object v3host_type, cl_object v4location, ...)
{
 if (ecl_unlikely(narg!=2)) FEwrong_num_arguments(VV[12]);
 {
  return L3698coerce_loc(v3host_type, v4location);
 }
}
/* function definition for COERCE-ARGS                                        */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3700coerce_args(cl_object v1inlined_args)
{
 cl_object T0, T1;
 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_object v2;
  {
   cl_object v3;
   v3 = ecl_make_cfun_va((cl_objectfn)LC3699__lambda15_va,ECL_NIL,Cblock,1);
   v2 = v3;
  }
  {
   cl_object v3;
   cl_object v4;
   cl_object v5;
   {
    cl_object v6;
    v6 = v1inlined_args;
    if (ecl_unlikely(!ECL_LISTP(v6))) FEtype_error_list(v6);
    value0 = ECL_NIL;
    cl_env_copy->nvalues = 0;
    v3 = v6;
   }
   v4 = ECL_NIL;
   v5 = v3;
   {
    cl_object v6;
    cl_object v7;
    v6 = ecl_list1(ECL_NIL);
    v7 = v6;
L10:;
    if (!(ecl_endp(v5))){
     goto L12;
    }
    goto L11;
L12:;
    v4 = ECL_CONS_CAR(v5);
    {
     cl_object v8;
     v8 = ECL_CONS_CDR(v5);
     if (ecl_unlikely(!ECL_LISTP(v8))) FEtype_error_list(v8);
     value0 = ECL_NIL;
     cl_env_copy->nvalues = 0;
     v5 = v8;
    }
    {
     cl_object v8;
     v8 = v7;
     if (ecl_unlikely(ECL_ATOM(v8))) FEtype_error_cons(v8);
     value0 = ECL_NIL;
     cl_env_copy->nvalues = 0;
     T0 = v8;
    }
    T1 = ecl_function_dispatch(cl_env_copy,v2)(1, v4);
    v7 = ecl_list1(T1);
    (ECL_CONS_CDR(T0)=v7,T0);
    goto L10;
L11:;
    value0 = ecl_cdr(v6);
    cl_env_copy->nvalues = 1;
    return value0;
   }
  }
 }
}
static cl_object L3700coerce_args_va(cl_narg narg, cl_object v8inlined_args, ...)
{
 if (ecl_unlikely(narg!=1)) FEwrong_num_arguments(VV[15]);
 {
  return L3700coerce_args(v8inlined_args);
 }
}
/* function definition for COERCE-LOCS                                        */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3701coerce_locs(cl_object v1inlined_args, cl_object v2types, cl_object v3args_to_be_saved)
{
 cl_object T0, T1, T2, T3;
 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_object v4block_opened;
  v4block_opened = ECL_NIL;
  {
   cl_object v5;
   cl_object v6loc;
   cl_object v7;
   {
    cl_object v8;
    v8 = v1inlined_args;
    if (ecl_unlikely(!ECL_LISTP(v8))) FEtype_error_list(v8);
    value0 = ECL_NIL;
    cl_env_copy->nvalues = 0;
    v5 = v8;
   }
   v6loc = ECL_NIL;
   v7 = v5;
   {
    cl_object v8;
    cl_object v9type;
    cl_object v10;
    {
     cl_object v11;
     v11 = v2types;
     if (ecl_unlikely(!ECL_LISTP(v11))) FEtype_error_list(v11);
     value0 = ECL_NIL;
     cl_env_copy->nvalues = 0;
     v8 = v11;
    }
    v9type = ECL_NIL;
    v10 = v8;
    {
     cl_object v11i;
     v11i = ecl_make_int8_t(0);
     {
      cl_object v12host_type;
      v12host_type = ECL_NIL;
      {
       cl_object v13;
       cl_object v14;
       v13 = ecl_list1(ECL_NIL);
       v14 = v13;
       if (!(ecl_endp(v7))){
        goto L19;
       }
       goto L18;
L19:;
       v6loc = ECL_CONS_CAR(v7);
       {
        cl_object v15;
        v15 = ECL_CONS_CDR(v7);
        if (ecl_unlikely(!ECL_LISTP(v15))) FEtype_error_list(v15);
        value0 = ECL_NIL;
        cl_env_copy->nvalues = 0;
        v7 = v15;
       }
       if (!(ecl_endp(v10))){
        goto L27;
       }
       goto L18;
L27:;
       v9type = ECL_CONS_CAR(v10);
       {
        cl_object v15;
        v15 = ECL_CONS_CDR(v10);
        if (ecl_unlikely(!ECL_LISTP(v15))) FEtype_error_list(v15);
        value0 = ECL_NIL;
        cl_env_copy->nvalues = 0;
        v10 = v15;
       }
L17:;
       v12host_type = (cl_env_copy->function=ecl_fdefinition(VV[22]))->cfun.entry(1, v9type) /*  LISP-TYPE->HOST-TYPE */;
       {
        cl_object v15;
        v15 = v14;
        if (ecl_unlikely(ECL_ATOM(v15))) FEtype_error_cons(v15);
        value0 = ECL_NIL;
        cl_env_copy->nvalues = 0;
        T0 = v15;
       }
       {
        cl_object v15;
        cl_object v16;
        cl_object v17;
        v15 = (ECL_SYM("EQL",336)->symbol.gfdef);
        v16 = v11i;
        v17 = v3args_to_be_saved;
        if (Null(ecl_memql(v16,v17))){
         goto L43;
        }
       }
       if ((cl_env_copy->function=ecl_fdefinition(VV[23]))->cfun.entry(1, v6loc) /*  LOC-MOVABLE-P */!=ECL_NIL) {
        goto L43;
       }
       {
        cl_object v15lcl;
        v15lcl = (cl_env_copy->function=ecl_fdefinition(VV[24]))->cfun.entry(2, VV[25], v12host_type) /*  MAKE-LCL-VAR */;
        (cl_env_copy->function=ecl_fdefinition(VV[26]))->cfun.entry(0) /*  WT-NL */;
        if (v4block_opened!=ECL_NIL) {
         goto L51;
        }
        v4block_opened = ECL_T;
        L3696open_inline_block();
L51:;
        T2 = (cl_env_copy->function=ecl_fdefinition(VV[28]))->cfun.entry(1, v12host_type) /*  HOST-TYPE->C-NAME */;
        T3 = L3698coerce_loc(v12host_type, v6loc);
        (cl_env_copy->function=ecl_fdefinition(VV[27]))->cfun.entry(6, T2, VV[29], v15lcl, VV[30], T3, VV[31]) /*  WT */;
        T1 = v15lcl;
        goto L42;
       }
L43:;
       T1 = L3698coerce_loc(v12host_type, v6loc);
L42:;
       v14 = ecl_list1(T1);
       (ECL_CONS_CDR(T0)=v14,T0);
       if (!(ecl_endp(v7))){
        goto L56;
       }
       goto L18;
L56:;
       v6loc = ECL_CONS_CAR(v7);
       {
        cl_object v15;
        v15 = ECL_CONS_CDR(v7);
        if (ecl_unlikely(!ECL_LISTP(v15))) FEtype_error_list(v15);
        value0 = ECL_NIL;
        cl_env_copy->nvalues = 0;
        v7 = v15;
       }
       if (!(ecl_endp(v10))){
        goto L64;
       }
       goto L18;
L64:;
       v9type = ECL_CONS_CAR(v10);
       {
        cl_object v15;
        v15 = ECL_CONS_CDR(v10);
        if (ecl_unlikely(!ECL_LISTP(v15))) FEtype_error_list(v15);
        value0 = ECL_NIL;
        cl_env_copy->nvalues = 0;
        v10 = v15;
       }
       v11i = ecl_one_plus(v11i);
       goto L17;
L18:;
       value0 = ecl_cdr(v13);
       cl_env_copy->nvalues = 1;
       return value0;
      }
     }
    }
   }
  }
 }
}
static cl_object L3701coerce_locs_va(cl_narg narg, cl_object v15inlined_args, cl_object v16types, cl_object v17args_to_be_saved, ...)
{
 if (ecl_unlikely(narg!=3)) FEwrong_num_arguments(VV[21]);
 {
  return L3701coerce_locs(v15inlined_args, v16types, v17args_to_be_saved);
 }
}
/* function definition for MAKE-INLINED-TEMP-VAR                              */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3702make_inlined_temp_var(cl_object v1lisp_type, cl_object v2host_type)
{
 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 (!((v2host_type)==(ECL_SYM("OBJECT",1315)))){
  goto L2;
 }
 value0 = (cl_env_copy->function=ecl_fdefinition(VV[34]))->cfun.entry(1, v1lisp_type) /*  MAKE-TEMP-VAR */;
 return value0;
L2:;
 {
  cl_object v3var;
  v3var = (cl_env_copy->function=ecl_fdefinition(VV[24]))->cfun.entry(4, VV[25], v2host_type, ECL_SYM("TYPE",1356), v1lisp_type) /*  MAKE-LCL-VAR */;
  L3696open_inline_block();
  T0 = (cl_env_copy->function=ecl_fdefinition(VV[28]))->cfun.entry(1, v2host_type) /*  HOST-TYPE->C-NAME */;
  (cl_env_copy->function=ecl_fdefinition(VV[26]))->cfun.entry(4, T0, VV[29], v3var, VV[31]) /*  WT-NL */;
  value0 = v3var;
  cl_env_copy->nvalues = 1;
  return value0;
 }
}
static cl_object L3702make_inlined_temp_var_va(cl_narg narg, cl_object v4lisp_type, cl_object v5host_type, ...)
{
 if (ecl_unlikely(narg!=2)) FEwrong_num_arguments(VV[33]);
 {
  return L3702make_inlined_temp_var(v4lisp_type, v5host_type);
 }
}
/* function definition for EMIT-INLINED-TEMP-VAR                              */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3703emit_inlined_temp_var(cl_object v1form, cl_object v2lisp_type, cl_object v3host_type)
{
 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 = L3702make_inlined_temp_var(v2lisp_type, v3host_type);
 ecl_bds_bind(cl_env_copy,VV[37],T0);             /*  *DESTINATION*           */
 (cl_env_copy->function=ecl_fdefinition(VV[38]))->cfun.entry(1, v1form) /*  C2EXPR* */;
 value0 = ecl_cmp_symbol_value(cl_env_copy,VV[37]);
 cl_env_copy->nvalues = 1;
 ecl_bds_unwind1(cl_env_copy);
 return value0;
}
static cl_object L3703emit_inlined_temp_var_va(cl_narg narg, cl_object v4form, cl_object v5lisp_type, cl_object v6host_type, ...)
{
 if (ecl_unlikely(narg!=3)) FEwrong_num_arguments(VV[36]);
 {
  return L3703emit_inlined_temp_var(v4form, v5lisp_type, v6host_type);
 }
}
/* function definition for EMIT-INLINED-VARIABLE                              */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3704emit_inlined_variable(cl_object v1form, cl_object v2rest_forms)
{
 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:;
 {
  cl_object v3;
  cl_object v4;
  T0 = (cl_env_copy->function=ecl_fdefinition(VV[42]))->cfun.entry(1, v1form) /*  C1FORM-ARGS */;
  v3 = ecl_car(T0);
  v4 = (cl_env_copy->function=ecl_fdefinition(VV[43]))->cfun.entry(1, v1form) /*  C1FORM-PRIMARY-TYPE */;
  if (Null((cl_env_copy->function=ecl_fdefinition(VV[44]))->cfun.entry(2, v3, v2rest_forms) /*  VAR-CHANGED-IN-FORM-LIST */)){
   goto L4;
  }
  T0 = (cl_env_copy->function=ecl_fdefinition(VV[45]))->cfun.entry(1, v3) /*  VAR-HOST-TYPE */;
  value0 = L3703emit_inlined_temp_var(v1form, v4, T0);
  return value0;
L4:;
  value0 = (cl_env_copy->function=ecl_fdefinition(VV[46]))->cfun.entry(2, v3, v4) /*  PRECISE-LOC-LISP-TYPE */;
  return value0;
 }
}
static cl_object L3704emit_inlined_variable_va(cl_narg narg, cl_object v5form, cl_object v6rest_forms, ...)
{
 if (ecl_unlikely(narg!=2)) FEwrong_num_arguments(VV[40]);
 {
  return L3704emit_inlined_variable(v5form, v6rest_forms);
 }
}
/* function definition for EMIT-INLINED-SETQ                                  */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3705emit_inlined_setq(cl_object v1form, cl_object v2rest_forms)
{
 cl_object T0, T1;
 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_object v3;
  cl_object v4;
  cl_object v5;
  T0 = (cl_env_copy->function=ecl_fdefinition(VV[42]))->cfun.entry(1, v1form) /*  C1FORM-ARGS */;
  v3 = ecl_car(T0);
  T0 = (cl_env_copy->function=ecl_fdefinition(VV[42]))->cfun.entry(1, v1form) /*  C1FORM-ARGS */;
  v4 = ecl_cadr(T0);
  v5 = (cl_env_copy->function=ecl_fdefinition(VV[43]))->cfun.entry(1, v1form) /*  C1FORM-PRIMARY-TYPE */;
  ecl_bds_bind(cl_env_copy,VV[37],v3);            /*  *DESTINATION*           */
  (cl_env_copy->function=ecl_fdefinition(VV[38]))->cfun.entry(1, v4) /*  C2EXPR* */;
  ecl_bds_unwind1(cl_env_copy);
  T0 = (cl_env_copy->function=ecl_fdefinition(VV[49]))->cfun.entry(1, v4) /*  C1FORM-NAME */;
  if (!((T0)==(VV[50]))){
   goto L6;
  }
  T0 = (cl_env_copy->function=ecl_fdefinition(VV[42]))->cfun.entry(1, v4) /*  C1FORM-ARGS */;
  T1 = ecl_car(T0);
  value0 = (cl_env_copy->function=ecl_fdefinition(VV[46]))->cfun.entry(2, T1, v5) /*  PRECISE-LOC-LISP-TYPE */;
  return value0;
L6:;
  if ((cl_env_copy->function=ecl_fdefinition(VV[44]))->cfun.entry(2, v3, v2rest_forms) /*  VAR-CHANGED-IN-FORM-LIST */!=ECL_NIL) {
   goto L8;
  }
  value0 = (cl_env_copy->function=ecl_fdefinition(VV[46]))->cfun.entry(2, v3, v5) /*  PRECISE-LOC-LISP-TYPE */;
  return value0;
L8:;
  {
   cl_object v6var_form;
   v6var_form = (cl_env_copy->function=ecl_fdefinition(VV[51]))->cfun.entry(4, ECL_SYM("VARIABLE",901), v1form, v3, ECL_NIL) /*  MAKE-C1FORM */;
   T0 = (cl_env_copy->function=ecl_fdefinition(VV[45]))->cfun.entry(1, v3) /*  VAR-HOST-TYPE */;
   value0 = L3703emit_inlined_temp_var(v6var_form, v5, T0);
   return value0;
  }
 }
}
static cl_object L3705emit_inlined_setq_va(cl_narg narg, cl_object v7form, cl_object v8rest_forms, ...)
{
 if (ecl_unlikely(narg!=2)) FEwrong_num_arguments(VV[48]);
 {
  return L3705emit_inlined_setq(v7form, v8rest_forms);
 }
}
/* function definition for EMIT-INLINED-FCALL                                 */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3706emit_inlined_fcall(cl_object v1form)
{
 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:;
 {
  cl_object v2;
  cl_object v3;
  cl_object v4;
  T0 = (cl_env_copy->function=ecl_fdefinition(VV[42]))->cfun.entry(1, v1form) /*  C1FORM-ARGS */;
  v2 = ecl_cadr(T0);
  T0 = (cl_env_copy->function=ecl_fdefinition(VV[42]))->cfun.entry(1, v1form) /*  C1FORM-ARGS */;
  v3 = ecl_caddr(T0);
  T0 = (cl_env_copy->function=ecl_fdefinition(VV[42]))->cfun.entry(1, v1form) /*  C1FORM-ARGS */;
  v4 = ecl_cadddr(T0);
  if (!((v4)==(VV[54]))){
   goto L8;
  }
  {
   cl_fixnum v5;
   v5 = ecl_length(v2);
   if ((v5)<=(ecl_fixnum(ecl_cmp_symbol_value(cl_env_copy,ECL_SYM("C-ARGUMENTS-LIMIT",1056))))) {
    goto L5;
   }
   goto L6;
  }
L8:;
  goto L6;
L6:;
  value0 = L3703emit_inlined_temp_var(v1form, ECL_T, ECL_SYM("OBJECT",1315));
  return value0;
L5:;
  {
   cl_object v5return_type;
   cl_object v6fun;
   cl_object v7loc;
   cl_object v8type;
   cl_object v9temp;
   v5return_type = (cl_env_copy->function=ecl_fdefinition(VV[43]))->cfun.entry(1, v1form) /*  C1FORM-PRIMARY-TYPE */;
   {
    cl_object v10;
    cl_object v11;
    cl_object v12;
    v10 = ecl_cmp_symbol_value(cl_env_copy,VV[55]);
    v11 = ecl_fdefinition(VV[56]);
    v12 = ecl_fdefinition(VV[57]);
    {
     cl_object v13;
     v13 = si_make_seq_iterator(2, v10, ecl_make_int8_t(0));
L16:;
     if (v13!=ECL_NIL) {
      goto L18;
     }
     v6fun = ECL_NIL;
     goto L11;
L18:;
     {
      cl_object v14;
      v14 = si_seq_iterator_ref(v10, v13);
      T0 = (cl_env_copy->function=ecl_fdefinition(VV[56]))->cfun.entry(1, v14) /*  FUN-NAME */;
      if (Null((cl_env_copy->function=ecl_fdefinition(VV[57]))->cfun.entry(2, v3, T0) /*  SAME-FNAME-P */)){
       goto L20;
      }
      v6fun = v14;
      goto L11;
     }
L20:;
     v13 = si_seq_iterator_next(v10, v13);
     goto L16;
    }
   }
L11:;
   T0 = L3710inline_args(v2);
   v7loc = (cl_env_copy->function=ecl_fdefinition(VV[62]))->cfun.entry(4, v3, v6fun, T0, v5return_type) /*  CALL-GLOBAL-LOC */;
   T0 = (cl_env_copy->function=ecl_fdefinition(VV[65]))->cfun.entry(1, v7loc) /*  LOC-LISP-TYPE */;
   v8type = (cl_env_copy->function=ecl_fdefinition(VV[64]))->cfun.entry(2, v5return_type, T0) /*  TYPE-AND */;
   T0 = (cl_env_copy->function=ecl_fdefinition(VV[13]))->cfun.entry(1, v7loc) /*  LOC-HOST-TYPE */;
   v9temp = L3702make_inlined_temp_var(v8type, T0);
   (cl_env_copy->function=ecl_fdefinition(VV[66]))->cfun.entry(2, v9temp, v7loc) /*  SET-LOC */;
   value0 = (cl_env_copy->function=ecl_fdefinition(VV[46]))->cfun.entry(2, v9temp, v8type) /*  PRECISE-LOC-LISP-TYPE */;
   return value0;
  }
 }
}
static cl_object L3706emit_inlined_fcall_va(cl_narg narg, cl_object v10form, ...)
{
 if (ecl_unlikely(narg!=1)) FEwrong_num_arguments(VV[53]);
 {
  return L3706emit_inlined_fcall(v10form);
 }
}
/* function definition for EMIT-INLINED-PROGN                                 */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3707emit_inlined_progn(cl_object v1form, cl_object v2rest_forms)
{
 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:;
 {
  cl_object v3args;
  T0 = (cl_env_copy->function=ecl_fdefinition(VV[42]))->cfun.entry(1, v1form) /*  C1FORM-ARGS */;
  v3args = ecl_car(T0);
  ecl_bds_bind(cl_env_copy,VV[37],VV[69]);        /*  *DESTINATION*           */
L4:;
  if (ecl_cdr(v3args)!=ECL_NIL) {
   goto L6;
  }
  goto L5;
L6:;
  {
   cl_object v4;
   v4 = v3args;
   {
    cl_object v5;
    v5 = v4;
    {
     bool v6;
     v6 = ECL_LISTP(v5);
     if (ecl_unlikely(!(v6)))
         FEwrong_type_argument(VV[72],v5);
     value0 = ECL_NIL;
     cl_env_copy->nvalues = 0;
    }
   }
   if (Null(v4)){
    goto L14;
   }
   {
    cl_object v5;
    v5 = ECL_CONS_CDR(v4);
    v3args = v5;
    v4 = ECL_CONS_CAR(v4);
   }
L14:;
   T0 = v4;
  }
  (cl_env_copy->function=ecl_fdefinition(VV[38]))->cfun.entry(1, T0) /*  C2EXPR* */;
  goto L4;
L5:;
  ecl_bds_unwind1(cl_env_copy);
  T0 = ecl_car(v3args);
  value0 = L3709emit_inline_form(T0, v2rest_forms);
  return value0;
 }
}
static cl_object L3707emit_inlined_progn_va(cl_narg narg, cl_object v4form, cl_object v5rest_forms, ...)
{
 if (ecl_unlikely(narg!=2)) FEwrong_num_arguments(VV[68]);
 {
  return L3707emit_inlined_progn(v4form, v5rest_forms);
 }
}
/* function definition for EMIT-INLINED-VALUES                                */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3708emit_inlined_values(cl_object v1form, cl_object v2rest_forms)
{
 cl_object T0, T1;
 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_object v3args;
  T0 = (cl_env_copy->function=ecl_fdefinition(VV[42]))->cfun.entry(1, v1form) /*  C1FORM-ARGS */;
  v3args = ecl_car(T0);
  {
   cl_object v4;
   {
    cl_object v5;
    v5 = v3args;
    {
     cl_object v6;
     v6 = v5;
     {
      bool v7;
      v7 = ECL_LISTP(v6);
      if (ecl_unlikely(!(v7)))
         FEwrong_type_argument(VV[72],v6);
      value0 = ECL_NIL;
      cl_env_copy->nvalues = 0;
     }
    }
    if (Null(v5)){
     goto L12;
    }
    {
     cl_object v6;
     v6 = ECL_CONS_CDR(v5);
     v3args = v6;
     v5 = ECL_CONS_CAR(v5);
    }
L12:;
    value0 = v5;
   }
   if (value0!=ECL_NIL) {
    goto L6;
   }
   T0 = (cl_env_copy->function=ecl_fdefinition(VV[76]))->cfun.entry(0) /*  C1NIL */;
   goto L4;
L6:;
   T0 = value0;
   goto L4;
L4:;
   T1 = ecl_append(v3args,v2rest_forms);
   v4 = L3709emit_inline_form(T0, T1);
   ecl_bds_bind(cl_env_copy,VV[37],VV[69]);       /*  *DESTINATION*           */
   {
    cl_object v5;
    cl_object v6form;
    cl_object v7;
    {
     cl_object v8;
     v8 = v3args;
     if (ecl_unlikely(!ECL_LISTP(v8))) FEtype_error_list(v8);
     value0 = ECL_NIL;
     cl_env_copy->nvalues = 0;
     v5 = v8;
    }
    v6form = ECL_NIL;
    v7 = v5;
L24:;
    if (!(ecl_endp(v7))){
     goto L26;
    }
    goto L25;
L26:;
    v6form = ECL_CONS_CAR(v7);
    {
     cl_object v8;
     v8 = ECL_CONS_CDR(v7);
     if (ecl_unlikely(!ECL_LISTP(v8))) FEtype_error_list(v8);
     value0 = ECL_NIL;
     cl_env_copy->nvalues = 0;
     v7 = v8;
    }
    (cl_env_copy->function=ecl_fdefinition(VV[38]))->cfun.entry(1, v6form) /*  C2EXPR* */;
    goto L24;
L25:;
    ecl_bds_unwind1(cl_env_copy);
   }
   value0 = v4;
   cl_env_copy->nvalues = 1;
   return value0;
  }
 }
}
static cl_object L3708emit_inlined_values_va(cl_narg narg, cl_object v5form, cl_object v6rest_forms, ...)
{
 if (ecl_unlikely(narg!=2)) FEwrong_num_arguments(VV[75]);
 {
  return L3708emit_inlined_values(v5form, v6rest_forms);
 }
}
/* function definition for EMIT-INLINE-FORM                                   */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3709emit_inline_form(cl_object v1form, cl_object v2forms)
{
 cl_object T0, T1;
 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:;
 ecl_bds_bind(cl_env_copy,VV[79],v1form);         /*  *CURRENT-C1FORM*        */
 T0 = (cl_env_copy->function=ecl_fdefinition(VV[80]))->cfun.entry(1, v1form) /*  C1FORM-FILE */;
 ecl_bds_bind(cl_env_copy,ECL_SYM("*COMPILE-FILE-TRUENAME*",29),T0); /*  *COMPILE-FILE-TRUENAME* */
 T0 = (cl_env_copy->function=ecl_fdefinition(VV[82]))->cfun.entry(1, v1form) /*  C1FORM-FILE-POSITION */;
 ecl_bds_bind(cl_env_copy,VV[81],T0);             /*  *COMPILE-FILE-POSITION* */
 T0 = (cl_env_copy->function=ecl_fdefinition(VV[84]))->cfun.entry(1, v1form) /*  C1FORM-TOPLEVEL-FORM */;
 ecl_bds_bind(cl_env_copy,VV[83],T0);             /*  *CURRENT-TOPLEVEL-FORM* */
 T0 = (cl_env_copy->function=ecl_fdefinition(VV[86]))->cfun.entry(1, v1form) /*  C1FORM-FORM */;
 ecl_bds_bind(cl_env_copy,VV[85],T0);             /*  *CURRENT-FORM*          */
 T0 = (cl_env_copy->function=ecl_fdefinition(VV[88]))->cfun.entry(1, v1form) /*  C1FORM-ENV */;
 ecl_bds_bind(cl_env_copy,VV[87],T0);             /*  *CMP-ENV*               */
 {
  cl_object v3;
  v3 = (cl_env_copy->function=ecl_fdefinition(VV[49]))->cfun.entry(1, v1form) /*  C1FORM-NAME */;
  if (!((v3)==(VV[50]))){
   goto L4;
  }
  T1 = (cl_env_copy->function=ecl_fdefinition(VV[42]))->cfun.entry(1, v1form) /*  C1FORM-ARGS */;
  T0 = ecl_car(T1);
  goto L2;
L4:;
  if (!((v3)==(ECL_SYM("VARIABLE",901)))){
   goto L6;
  }
  T0 = L3704emit_inlined_variable(v1form, v2forms);
  goto L2;
L6:;
  if (!((v3)==(ECL_SYM("SETQ",754)))){
   goto L8;
  }
  T0 = L3705emit_inlined_setq(v1form, v2forms);
  goto L2;
L8:;
  if (!((v3)==(VV[89]))){
   goto L10;
  }
  T0 = L3706emit_inlined_fcall(v1form);
  goto L2;
L10:;
  if (!((v3)==(ECL_SYM("PROGN",674)))){
   goto L12;
  }
  T0 = L3707emit_inlined_progn(v1form, v2forms);
  goto L2;
L12:;
  if (!((v3)==(ECL_SYM("VALUES",899)))){
   goto L14;
  }
  T0 = L3708emit_inlined_values(v1form, v2forms);
  goto L2;
L14:;
  T0 = L3703emit_inlined_temp_var(v1form, ECL_T, ECL_SYM("OBJECT",1315));
 }
L2:;
 T1 = (cl_env_copy->function=ecl_fdefinition(VV[43]))->cfun.entry(1, v1form) /*  C1FORM-PRIMARY-TYPE */;
 value0 = (cl_env_copy->function=ecl_fdefinition(VV[46]))->cfun.entry(2, T0, T1) /*  PRECISE-LOC-LISP-TYPE */;
 ecl_bds_unwind_n(cl_env_copy,6);
 return value0;
}
static cl_object L3709emit_inline_form_va(cl_narg narg, cl_object v3form, cl_object v4forms, ...)
{
 if (ecl_unlikely(narg!=2)) FEwrong_num_arguments(VV[73]);
 {
  return L3709emit_inline_form(v3form, v4forms);
 }
}
/* function definition for INLINE-ARGS                                        */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object L3710inline_args(cl_object v1forms)
{
 cl_object T0, T1, T2;
 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_object v2form_list;
  v2form_list = v1forms;
  {
   cl_object v3form;
   v3form = ECL_NIL;
   {
    cl_object v4;
    cl_object v5;
    v4 = ecl_list1(ECL_NIL);
    v5 = v4;
L6:;
    if (!(ECL_ATOM(v2form_list))){
     goto L8;
    }
    goto L7;
L8:;
    v3form = ecl_car(v2form_list);
    {
     cl_object v6;
     v6 = v5;
     if (ecl_unlikely(ECL_ATOM(v6))) FEtype_error_cons(v6);
     value0 = ECL_NIL;
     cl_env_copy->nvalues = 0;
     T0 = v6;
    }
    T1 = ecl_cdr(v2form_list);
    T2 = L3709emit_inline_form(v3form, T1);
    v5 = ecl_list1(T2);
    (ECL_CONS_CDR(T0)=v5,T0);
    v2form_list = ECL_CONS_CDR(v2form_list);
    goto L6;
L7:;
    value0 = ecl_cdr(v4);
    cl_env_copy->nvalues = 1;
    return value0;
   }
  }
 }
}
static cl_object L3710inline_args_va(cl_narg narg, cl_object v6forms, ...)
{
 if (ecl_unlikely(narg!=1)) FEwrong_num_arguments(VV[63]);
 {
  return L3710inline_args(v6forms);
 }
}
/* local function LAMBDA15                                                    */
/* optimize speed 1, debug 1, space 1, safety 2                               */
static cl_object LC3699__lambda15(cl_object v1loc)
{
 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:;
 value0 = L3698coerce_loc(ECL_SYM("OBJECT",1315), v1loc);
 return value0;
}
static cl_object LC3699__lambda15_va(cl_narg narg, cl_object v2loc, ...)
{
 if (ecl_unlikely(narg!=1)) FEwrong_num_arguments(VV[16]);
 {
  return LC3699__lambda15(v2loc);
 }
}
#include "cmp/cmpc-arg-inl.data"
#ifdef __cplusplus
extern "C"
#endif

ECL_DLLEXPORT void _eclFBUqHQxp7AVh9_WhX0M881(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("SRC:CMP;CMPBACKEND-CXX;CMPC-ARG-INL.LSP.NEWEST",-1);
 return;}
 #ifdef ECL_DYNAMIC_VV
 VV = Cblock->cblock.data;
 #endif
 Cblock->cblock.data_text = (const cl_object *)"@EcLtAg:_eclFBUqHQxp7AVh9_WhX0M881@";
 VVtemp = Cblock->cblock.temp_data;
 ECL_DEFINE_SETF_FUNCTIONS
/* MAKE-LOAD-FORMs                                                            */
/* TOP-LEVEL-FORMs                                                            */
  si_select_package(VVtemp[0]);
  ecl_cmp_defun(VV[92]);                          /*  MAYBE-OPEN-INLINE-BLOCK */
  ecl_cmp_defun(VV[93]);                          /*  OPEN-INLINE-BLOCK       */
  ecl_cmp_defun(VV[94]);                          /*  CLOSE-INLINE-BLOCKS     */
  ecl_cmp_defun(VV[95]);                          /*  COERCE-LOC              */
  ecl_cmp_defun(VV[96]);                          /*  COERCE-ARGS             */
  ecl_cmp_defun(VV[97]);                          /*  COERCE-LOCS             */
  ecl_cmp_defun(VV[98]);                          /*  MAKE-INLINED-TEMP-VAR   */
  ecl_cmp_defun(VV[99]);                          /*  EMIT-INLINED-TEMP-VAR   */
  ecl_cmp_defun(VV[100]);                         /*  EMIT-INLINED-VARIABLE   */
  ecl_cmp_defun(VV[101]);                         /*  EMIT-INLINED-SETQ       */
  ecl_cmp_defun(VV[102]);                         /*  EMIT-INLINED-FCALL      */
  ecl_cmp_defun(VV[103]);                         /*  EMIT-INLINED-PROGN      */
  ecl_cmp_defun(VV[104]);                         /*  EMIT-INLINED-VALUES     */
  ecl_cmp_defun(VV[105]);                         /*  EMIT-INLINE-FORM        */
  ecl_cmp_defun(VV[106]);                         /*  INLINE-ARGS             */
}
