/*===========================================================================*/
/*   (Jvm/peephole.scm)                                                      */
/*   Bigloo (2.6b)                                                           */
/*   Inria -- Sophia Antipolis (c)       Mon Dec 15 12:14:36 CET 2003        */
/*===========================================================================*/
/* COMPILATION: (/users/serrano/prgm/project/bigloo/bin/bigloo -q -afile .afile -fsharing -fno-reflection -cc gcc-2.95 -lib-dir /users/serrano/prgm/project/bigloo/lib/2.6b -unsafev -no-hello -O2 -rm -unsafe -s -indent Jvm/peephole.scm)*/
/* GC selection */
#define THE_GC BOEHM_GC

#include <bigloo.h>


/* Object type definitions */
typedef struct BgL_peepzd2envzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_handlersz00;
   obj_t BgL_paramsz00;
   obj_t BgL_localsz00;
   obj_t BgL_codez00;
} *BgL_peepzd2envzd2_bglt;


BGL_IMPORT bool_t BGl_2zd3zd3zz__r4_numbers_6_5z00(obj_t, obj_t);
static obj_t BGl_countzd2inszd2zzjvm_peepholez00(obj_t, obj_t);
BGL_IMPORT bool_t BGl_2ze3ze3zz__r4_numbers_6_5z00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzjvm_peepholez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzengine_paramz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__objectz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__readerz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5z00(long, char *);
BGL_IMPORT obj_t BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
static obj_t BGl_methodzd2initzd2zzjvm_peepholez00();
static obj_t BGl_structzb2objectzd2ze3objectzd2peepzd2env1081z83zzjvm_peepholez00(obj_t, obj_t, obj_t);
static obj_t BGl_walkz72z72zzjvm_peepholez00(obj_t);
BGL_IMPORT obj_t open_input_string(obj_t);
static obj_t BGl_peepzd2methodzd2zzjvm_peepholez00(obj_t);
static obj_t BGl_za2hugezd2copza2zd2zzjvm_peepholez00 = BUNSPEC;
BGL_IMPORT long BGl_classzd2numzd2zz__objectz00(obj_t);
static obj_t BGl_countzd2handlerzd2zzjvm_peepholez00(obj_t, obj_t);
static obj_t BGl_makezd2labenvzd2zzjvm_peepholez00(obj_t);
static obj_t BGl_za2kindzd2ofzd2gotoza2z00zzjvm_peepholez00 = BUNSPEC;
BGL_IMPORT obj_t BGl_readz00zz__readerz00(obj_t);
static obj_t BGl_objectzd2ze3structzd2peepzd2env1079z31zzjvm_peepholez00(obj_t, obj_t);
static obj_t BGl_countzd2labzd2zzjvm_peepholez00(obj_t, obj_t);
static obj_t BGl_walkzd2fromzd2zzjvm_peepholez00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl__allocatezd2peepzd2envz00zzjvm_peepholez00(obj_t);
static obj_t BGl_peepzd2envzd2zzjvm_peepholez00 = BUNSPEC;
static obj_t BGl_za2singlezd2labzd2copza2z00zzjvm_peepholez00 = BUNSPEC;
BGL_IMPORT obj_t BGl_memqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
BGL_IMPORT obj_t BGl_objectz00zz__objectz00;
BGL_IMPORT obj_t BGl_registerzd2classz12zc0zz__objectz00(obj_t, obj_t, obj_t, obj_t, long, obj_t, obj_t, obj_t);
static obj_t BGl_peepzd2resultzd2zzjvm_peepholez00(BgL_peepzd2envzd2_bglt);
static obj_t BGl_collectz00zzjvm_peepholez00(obj_t, obj_t, obj_t, long);
extern obj_t BGl_za2optimzd2jvmzd2peepholeza2z00zzengine_paramz00;
BGL_IMPORT obj_t BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(obj_t);
BGL_IMPORT obj_t BGl_assqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
static obj_t BGl_peepzd2allzd2zzjvm_peepholez00(obj_t, obj_t, obj_t);
static obj_t BGl_cnstzd2initzd2zzjvm_peepholez00();
static obj_t BGl_getzd2handlerszd2zzjvm_peepholez00(obj_t);
static obj_t BGl_removezd2handlerszd2zzjvm_peepholez00(obj_t);
BGL_IMPORT obj_t bgl_append2(obj_t, obj_t);
static obj_t BGl_walkzd2atzd2labz00zzjvm_peepholez00(obj_t, obj_t, obj_t);
static obj_t BGl_importedzd2moduleszd2initz00zzjvm_peepholez00();
static obj_t BGl__jvm_peepholez00zzjvm_peepholez00(obj_t, obj_t);
static obj_t BGl_objectzd2initzd2zzjvm_peepholez00();
BGL_IMPORT obj_t make_struct(obj_t, int, obj_t);
static obj_t BGl_requirezd2initializa7ationz75zzjvm_peepholez00 = BUNSPEC;
BGL_IMPORT obj_t BGl_addzd2methodz12zc0zz__objectz00(obj_t, obj_t, obj_t);
static obj_t BGl_removesequencez00zzjvm_peepholez00(BgL_peepzd2envzd2_bglt);
static obj_t BGl_removebranchz00zzjvm_peepholez00(BgL_peepzd2envzd2_bglt);
static obj_t BGl_walkz00zzjvm_peepholez00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_libraryzd2moduleszd2initz00zzjvm_peepholez00();
static obj_t BGl_toplevelzd2initzd2zzjvm_peepholez00();
BGL_IMPORT obj_t BGl_2zb2zb2zz__r4_numbers_6_5z00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_jvm_peepholez00zzjvm_peepholez00(obj_t);
static obj_t __cnst[ 14 ] ;


DEFINE_STATIC_PROCEDURE( BGl_proc1880z00zzjvm_peepholez00, BgL_bgl_objectza7d2za7e3structza7d2peepza7d2env1079za731za7za7jvm_peepholeza7001912z00, BGl_objectzd2ze3structzd2peepzd2env1079z31zzjvm_peepholez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc1881z00zzjvm_peepholez00, BgL_bgl_structza7b2objectza7d2za7e3objectza7d2peepza7d2env1081za783za7za7jvm_peepholeza7001913za7, BGl_structzb2objectzd2ze3objectzd2peepzd2env1081z83zzjvm_peepholez00, 0L, 2 );
BGL_IMPORT obj_t BGl_objectzd2ze3structzd2envze3zz__objectz00;
DEFINE_STATIC_PROCEDURE( BGl_allocatezd2peepzd2envzd2envzd2zzjvm_peepholez00, BgL_bgl__allocateza7d2peepza7d2envza700za7za7jvm_peepholeza7001914z00, BGl__allocatezd2peepzd2envz00zzjvm_peepholez00, 0L, 0 );
DEFINE_EXPORT_PROCEDURE( BGl_jvm_peepholezd2envzd2zzjvm_peepholez00, BgL_bgl__jvm_peepholeza700za7za7jvm_peepholeza7001915z00, BGl__jvm_peepholez00zzjvm_peepholez00, 0L, 1 );
DEFINE_STRING( BGl_string1882z00zzjvm_peepholez00, BgL_bgl_string1882za700za7za7jvm_peepholeza7001916z00, "peep-env lookupswitch tableswitch localvar count-lab ok goto done begin handler method (lookupswitch tableswitch) (ifnull ifnonnull ifeq ifne iflt ifge ifgt ifle if_icmpeq if_icmpne if_icmplt if_icmpge if_icmpgt if_icmple if_acmpeq if_acmpne goto jsr) (athrow goto tableswitch lookupswitch ireturn lreturn freturn dreturn areturn return) ", 338 );
DEFINE_STRING( BGl_string1879z00zzjvm_peepholez00, BgL_bgl_string1879za700za7za7jvm_peepholeza7001917z00, "unknown label", 13 );
DEFINE_STRING( BGl_string1878z00zzjvm_peepholez00, BgL_bgl_string1878za700za7za7jvm_peepholeza7001918z00, "bad method definition", 21 );
DEFINE_STRING( BGl_string1877z00zzjvm_peepholez00, BgL_bgl_string1877za700za7za7jvm_peepholeza7001919z00, "peephole", 8 );
BGL_IMPORT obj_t BGl_structzb2objectzd2ze3objectzd2envz51zz__objectz00;



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zzjvm_peepholez00(long BgL_checksumz00_800, char * BgL_fromz00_801)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zzjvm_peepholez00))
{ 
BGl_requirezd2initializa7ationz75zzjvm_peepholez00 = 
BBOOL(((bool_t)0)); 
BGl_libraryzd2moduleszd2initz00zzjvm_peepholez00(); 
BGl_cnstzd2initzd2zzjvm_peepholez00(); 
BGl_importedzd2moduleszd2initz00zzjvm_peepholez00(); 
BGl_objectzd2initzd2zzjvm_peepholez00(); 
BGl_methodzd2initzd2zzjvm_peepholez00(); 
BGl_toplevelzd2initzd2zzjvm_peepholez00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* library-modules-init */
obj_t BGl_libraryzd2moduleszd2initz00zzjvm_peepholez00()
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 1 */
BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5z00(((long)0), "jvm_peephole"); 
BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(((long)0), "jvm_peephole"); 
BGl_modulezd2initializa7ationz75zz__objectz00(((long)0), "jvm_peephole"); 
BGl_modulezd2initializa7ationz75zz__readerz00(((long)0), "jvm_peephole"); 
return BUNSPEC;} 
}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zzjvm_peepholez00()
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 1 */
{ /* ./Jvm/peephole.scm 1 */
obj_t BgL_cportz00_784;
BgL_cportz00_784 = 
open_input_string(BGl_string1882z00zzjvm_peepholez00); 
{ 
long BgL_iz00_785;
BgL_iz00_785 = ((long)13); 
BgL_loopz00_786:
{ /* ./Jvm/peephole.scm 1 */
bool_t BgL_test1884z00_787;
BgL_test1884z00_787 = 
(BgL_iz00_785==((long)-1)); 
if(BgL_test1884z00_787)
{ /* ./Jvm/peephole.scm 1 */
return BUNSPEC;}  else 
{ /* ./Jvm/peephole.scm 1 */
{ /* ./Jvm/peephole.scm 1 */
obj_t BgL_arg1886z00_788;
{ /* ./Jvm/peephole.scm 1 */
obj_t BgL_list1889z00_789;
BgL_list1889z00_789 = 
MAKE_PAIR(BgL_cportz00_784, BNIL); 
BgL_arg1886z00_788 = 
BGl_readz00zz__readerz00(BgL_list1889z00_789); } 
{ /* ./Jvm/peephole.scm 1 */
int BgL_auxz00_820;
BgL_auxz00_820 = 
(int)(BgL_iz00_785); 
CNST_TABLE_SET(BgL_auxz00_820, BgL_arg1886z00_788); } } 
{ /* ./Jvm/peephole.scm 1 */
int BgL_auxz00_790;
{ /* ./Jvm/peephole.scm 1 */
long BgL_auxz00_823;
BgL_auxz00_823 = 
(BgL_iz00_785-((long)1)); 
BgL_auxz00_790 = 
(int)(BgL_auxz00_823); } 
{ 
long BgL_iz00_826;
BgL_iz00_826 = 
(long)(BgL_auxz00_790); 
BgL_iz00_785 = BgL_iz00_826; 
goto BgL_loopz00_786;} } } } } } } 
}



/* toplevel-init */
obj_t BGl_toplevelzd2initzd2zzjvm_peepholez00()
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 1 */
BGl_za2kindzd2ofzd2gotoza2z00zzjvm_peepholez00 = 
CNST_TABLE_REF(((long)0)); 
BGl_za2singlezd2labzd2copza2z00zzjvm_peepholez00 = 
CNST_TABLE_REF(((long)1)); 
return ( 
BGl_za2hugezd2copza2zd2zzjvm_peepholez00 = 
CNST_TABLE_REF(((long)2)), BUNSPEC) ;} 
}



/* jvm_peephole */
BGL_EXPORTED_DEF obj_t BGl_jvm_peepholez00zzjvm_peepholez00(obj_t BgL_mz00_1)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 15 */
{ /* ./Jvm/peephole.scm 16 */
bool_t BgL_test1082z00_41;
BgL_test1082z00_41 = 
BGl_2ze3ze3zz__r4_numbers_6_5z00(BGl_za2optimzd2jvmzd2peepholeza2z00zzengine_paramz00, 
BINT(((long)0))); 
if(BgL_test1082z00_41)
{ /* ./Jvm/peephole.scm 16 */
return 
BGl_peepzd2methodzd2zzjvm_peepholez00(BgL_mz00_1);}  else 
{ /* ./Jvm/peephole.scm 16 */
return BgL_mz00_1;} } } 
}



/* _jvm_peephole */
obj_t BGl__jvm_peepholez00zzjvm_peepholez00(obj_t BgL_envz00_762, obj_t BgL_mz00_763)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 15 */
return 
BGl_jvm_peepholez00zzjvm_peepholez00(BgL_mz00_763);} 
}



/* peep-method */
obj_t BGl_peepzd2methodzd2zzjvm_peepholez00(obj_t BgL_defmz00_2)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 20 */
{ 

{ /* ./Jvm/peephole.scm 21 */
bool_t BgL_test1085z00_49;
BgL_test1085z00_49 = 
PAIRP(BgL_defmz00_2); 
if(BgL_test1085z00_49)
{ /* ./Jvm/peephole.scm 21 */
obj_t BgL_cdrzd2113zd2_50;
BgL_cdrzd2113zd2_50 = 
CDR(BgL_defmz00_2); 
{ /* ./Jvm/peephole.scm 21 */
bool_t BgL_test1086z00_51;
{ /* ./Jvm/peephole.scm 21 */
obj_t BgL_auxz00_841;obj_t BgL_auxz00_839;
BgL_auxz00_841 = 
CNST_TABLE_REF(((long)3)); 
BgL_auxz00_839 = 
CAR(BgL_defmz00_2); 
BgL_test1086z00_51 = 
(BgL_auxz00_839==BgL_auxz00_841); } 
if(BgL_test1086z00_51)
{ /* ./Jvm/peephole.scm 21 */
bool_t BgL_test1087z00_52;
BgL_test1087z00_52 = 
PAIRP(BgL_cdrzd2113zd2_50); 
if(BgL_test1087z00_52)
{ /* ./Jvm/peephole.scm 21 */
obj_t BgL_cdrzd2119zd2_53;
BgL_cdrzd2119zd2_53 = 
CDR(BgL_cdrzd2113zd2_50); 
{ /* ./Jvm/peephole.scm 21 */
bool_t BgL_test1088z00_54;
BgL_test1088z00_54 = 
PAIRP(BgL_cdrzd2119zd2_53); 
if(BgL_test1088z00_54)
{ /* ./Jvm/peephole.scm 21 */
obj_t BgL_cdrzd2125zd2_55;
BgL_cdrzd2125zd2_55 = 
CDR(BgL_cdrzd2119zd2_53); 
{ /* ./Jvm/peephole.scm 21 */
bool_t BgL_test1089z00_56;
BgL_test1089z00_56 = 
PAIRP(BgL_cdrzd2125zd2_55); 
if(BgL_test1089z00_56)
{ /* ./Jvm/peephole.scm 21 */
obj_t BgL_arg1092z00_58;obj_t BgL_arg1093z00_59;obj_t BgL_arg1096z00_60;
BgL_arg1092z00_58 = 
CAR(BgL_cdrzd2119zd2_53); 
BgL_arg1093z00_59 = 
CAR(BgL_cdrzd2125zd2_55); 
BgL_arg1096z00_60 = 
CDR(BgL_cdrzd2125zd2_55); 
{ /* ./Jvm/peephole.scm 21 */
obj_t BgL_arg1120z00_444;obj_t BgL_arg1121z00_445;
BgL_arg1120z00_444 = 
CDR(BgL_cdrzd2113zd2_50); 
BgL_arg1121z00_445 = 
BGl_peepzd2allzd2zzjvm_peepholez00(BgL_arg1092z00_58, BgL_arg1093z00_59, BgL_arg1096z00_60); 
return 
SET_CDR(BgL_arg1120z00_444, BgL_arg1121z00_445);} }  else 
{ /* ./Jvm/peephole.scm 21 */
BgL_tagzd2102zd2_47:
FAILURE(BGl_string1877z00zzjvm_peepholez00,BGl_string1878z00zzjvm_peepholez00,BgL_defmz00_2);} } }  else 
{ /* ./Jvm/peephole.scm 21 */
goto BgL_tagzd2102zd2_47;} } }  else 
{ /* ./Jvm/peephole.scm 21 */
goto BgL_tagzd2102zd2_47;} }  else 
{ /* ./Jvm/peephole.scm 21 */
goto BgL_tagzd2102zd2_47;} } }  else 
{ /* ./Jvm/peephole.scm 21 */
goto BgL_tagzd2102zd2_47;} } } } 
}



/* peep-all */
obj_t BGl_peepzd2allzd2zzjvm_peepholez00(obj_t BgL_paramsz00_3, obj_t BgL_localsz00_4, obj_t BgL_codez00_5)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 26 */
{ /* ./Jvm/peephole.scm 27 */
BgL_peepzd2envzd2_bglt BgL_envz00_467;
{ /* ./Jvm/peephole.scm 27 */
obj_t BgL_arg1131z00_471;obj_t BgL_arg1132z00_472;obj_t BgL_arg1133z00_473;obj_t BgL_arg1134z00_474;
BgL_arg1131z00_471 = 
BGl_getzd2handlerszd2zzjvm_peepholez00(BgL_codez00_5); 
BgL_arg1132z00_472 = BgL_paramsz00_3; 
BgL_arg1133z00_473 = BgL_localsz00_4; 
BgL_arg1134z00_474 = 
BGl_removezd2handlerszd2zzjvm_peepholez00(BgL_codez00_5); 
{ /* ./Jvm/peephole.scm 27 */
BgL_peepzd2envzd2_bglt BgL_res1798z00_496;
{ /* ./Jvm/peephole.scm 27 */
BgL_peepzd2envzd2_bglt BgL_new1019z00_479;
{ /* ./Jvm/peephole.scm 27 */
BgL_peepzd2envzd2_bglt BgL_res1796z00_485;
{ /* ./Jvm/peephole.scm 27 */
BgL_peepzd2envzd2_bglt BgL_new1031z00_480;
BgL_new1031z00_480 = 
((BgL_peepzd2envzd2_bglt)BREF( GC_MALLOC ( sizeof(struct BgL_peepzd2envzd2_bgl) ))); 
{ /* ./Jvm/peephole.scm 27 */
long BgL_arg1743z00_481;
BgL_arg1743z00_481 = 
BGl_classzd2numzd2zz__objectz00(BGl_peepzd2envzd2zzjvm_peepholez00); 
{ /* ./Jvm/peephole.scm 27 */
BgL_objectz00_bglt BgL_objz00_482;
BgL_objz00_482 = 
(BgL_objectz00_bglt)(BgL_new1031z00_480); 
BGL_OBJECT_CLASS_NUM_SET(BgL_objz00_482, BgL_arg1743z00_481); } } 
{ /* ./Jvm/peephole.scm 27 */
BgL_objectz00_bglt BgL_auxz00_866;
BgL_auxz00_866 = 
(BgL_objectz00_bglt)(BgL_new1031z00_480); 
BGL_OBJECT_WIDENING_SET(BgL_auxz00_866, BFALSE); } 
{ /* ./Jvm/peephole.scm 27 */
obj_t BgL_objz00_484;
BgL_objz00_484 = 
(obj_t)(BgL_new1031z00_480); 
BGL_HEAP_DEBUG_MARK_OBJ(BgL_objz00_484); BUNSPEC; } 
BgL_res1796z00_485 = BgL_new1031z00_480; } 
BgL_new1019z00_479 = BgL_res1796z00_485; } 
{ /* ./Jvm/peephole.scm 27 */
BgL_peepzd2envzd2_bglt BgL_res1797z00_495;
{ /* ./Jvm/peephole.scm 27 */
BgL_peepzd2envzd2_bglt BgL_new1025z00_486;
BgL_new1025z00_486 = BgL_new1019z00_479; 
{ /* ./Jvm/peephole.scm 27 */
obj_t BgL_handlers1021z00_491;obj_t BgL_params1022z00_492;obj_t BgL_locals1023z00_493;obj_t BgL_code1024z00_494;
BgL_handlers1021z00_491 = BgL_arg1131z00_471; 
BgL_params1022z00_492 = BgL_arg1132z00_472; 
BgL_locals1023z00_493 = BgL_arg1133z00_473; 
BgL_code1024z00_494 = BgL_arg1134z00_474; 
((((BgL_peepzd2envzd2_bglt)CREF(BgL_new1025z00_486))->BgL_handlersz00) = ((obj_t)BgL_handlers1021z00_491), BUNSPEC); 
((((BgL_peepzd2envzd2_bglt)CREF(BgL_new1025z00_486))->BgL_paramsz00) = ((obj_t)BgL_params1022z00_492), BUNSPEC); 
((((BgL_peepzd2envzd2_bglt)CREF(BgL_new1025z00_486))->BgL_localsz00) = ((obj_t)BgL_locals1023z00_493), BUNSPEC); 
((((BgL_peepzd2envzd2_bglt)CREF(BgL_new1025z00_486))->BgL_codez00) = ((obj_t)BgL_code1024z00_494), BUNSPEC); 
BgL_res1797z00_495 = BgL_new1025z00_486; } } BgL_res1797z00_495; } 
BgL_res1798z00_496 = BgL_new1019z00_479; } 
BgL_envz00_467 = BgL_res1798z00_496; } } 
BGl_removebranchz00zzjvm_peepholez00(BgL_envz00_467); 
BGl_removesequencez00zzjvm_peepholez00(BgL_envz00_467); 
return 
BGl_peepzd2resultzd2zzjvm_peepholez00(BgL_envz00_467);} } 
}



/* peep-result */
obj_t BGl_peepzd2resultzd2zzjvm_peepholez00(BgL_peepzd2envzd2_bglt BgL_envz00_9)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 59 */
{ /* ./Jvm/peephole.scm 61 */
obj_t BgL_arg1140z00_71;obj_t BgL_arg1141z00_72;
BgL_arg1140z00_71 = 
(((BgL_peepzd2envzd2_bglt)CREF(BgL_envz00_9))->BgL_localsz00); 
BgL_arg1141z00_72 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(
(((BgL_peepzd2envzd2_bglt)CREF(BgL_envz00_9))->BgL_handlersz00), 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(
(((BgL_peepzd2envzd2_bglt)CREF(BgL_envz00_9))->BgL_codez00), BNIL)); 
return 
MAKE_PAIR(BgL_arg1140z00_71, BgL_arg1141z00_72);} } 
}



/* get-handlers */
obj_t BGl_getzd2handlerszd2zzjvm_peepholez00(obj_t BgL_lz00_10)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 63 */
return 
BGl_walkz72z72zzjvm_peepholez00(BgL_lz00_10);} 
}



/* walk' */
obj_t BGl_walkz72z72zzjvm_peepholez00(obj_t BgL_lz00_78)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 69 */
BGl_walkz72z72zzjvm_peepholez00:
{ 

{ /* ./Jvm/peephole.scm 69 */
bool_t BgL_test1159z00_85;
BgL_test1159z00_85 = 
NULLP(BgL_lz00_78); 
if(BgL_test1159z00_85)
{ /* ./Jvm/peephole.scm 69 */
return BNIL;}  else 
{ /* ./Jvm/peephole.scm 69 */
bool_t BgL_test1161z00_86;
BgL_test1161z00_86 = 
PAIRP(BgL_lz00_78); 
if(BgL_test1161z00_86)
{ /* ./Jvm/peephole.scm 69 */
obj_t BgL_carzd2140zd2_87;
BgL_carzd2140zd2_87 = 
CAR(BgL_lz00_78); 
{ /* ./Jvm/peephole.scm 69 */
bool_t BgL_test1162z00_88;
BgL_test1162z00_88 = 
PAIRP(BgL_carzd2140zd2_87); 
if(BgL_test1162z00_88)
{ /* ./Jvm/peephole.scm 69 */
bool_t BgL_test1163z00_89;
{ /* ./Jvm/peephole.scm 69 */
obj_t BgL_auxz00_894;obj_t BgL_auxz00_892;
BgL_auxz00_894 = 
CNST_TABLE_REF(((long)4)); 
BgL_auxz00_892 = 
CAR(BgL_carzd2140zd2_87); 
BgL_test1163z00_89 = 
(BgL_auxz00_892==BgL_auxz00_894); } 
if(BgL_test1163z00_89)
{ /* ./Jvm/peephole.scm 69 */
obj_t BgL_arg1165z00_90;
BgL_arg1165z00_90 = 
CDR(BgL_lz00_78); 
{ /* ./Jvm/peephole.scm 69 */
obj_t BgL_arg1183z00_534;
BgL_arg1183z00_534 = 
BGl_walkz72z72zzjvm_peepholez00(BgL_arg1165z00_90); 
return 
MAKE_PAIR(BgL_carzd2140zd2_87, BgL_arg1183z00_534);} }  else 
{ /* ./Jvm/peephole.scm 69 */
BgL_tagzd2135zd2_83:
{ /* ./Jvm/peephole.scm 69 */
obj_t BgL_arg1188z00_95;
BgL_arg1188z00_95 = 
CDR(BgL_lz00_78); 
{ 
obj_t BgL_lz00_902;
BgL_lz00_902 = BgL_arg1188z00_95; 
BgL_lz00_78 = BgL_lz00_902; 
goto BGl_walkz72z72zzjvm_peepholez00;} } } }  else 
{ /* ./Jvm/peephole.scm 69 */
goto BgL_tagzd2135zd2_83;} } }  else 
{ /* ./Jvm/peephole.scm 69 */
goto BgL_tagzd2135zd2_83;} } } } } 
}



/* remove-handlers */
obj_t BGl_removezd2handlerszd2zzjvm_peepholez00(obj_t BgL_lz00_12)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 80 */
{ 
obj_t BgL_lz00_119;obj_t BgL_pz00_120;obj_t BgL_hookz00_121;
{ /* ./Jvm/peephole.scm 89 */
obj_t BgL_hookz00_118;
BgL_hookz00_118 = 
MAKE_PAIR(BNIL, BNIL); 
BgL_lz00_119 = BgL_lz00_12; 
BgL_pz00_120 = BgL_hookz00_118; 
BgL_hookz00_121 = BgL_hookz00_118; 
BgL_zc3anonymousza31227ze3z83_122:
{ /* ./Jvm/peephole.scm 82 */
bool_t BgL_test1228z00_123;
BgL_test1228z00_123 = 
NULLP(BgL_lz00_119); 
if(BgL_test1228z00_123)
{ /* ./Jvm/peephole.scm 82 */
return 
CDR(BgL_hookz00_121);}  else 
{ /* ./Jvm/peephole.scm 84 */
bool_t BgL_test1230z00_124;
{ /* ./Jvm/peephole.scm 84 */
bool_t BgL_testz00_907;
{ /* ./Jvm/peephole.scm 84 */
obj_t BgL_auxz00_908;
BgL_auxz00_908 = 
CAR(BgL_lz00_119); 
BgL_testz00_907 = 
PAIRP(BgL_auxz00_908); } 
if(BgL_testz00_907)
{ /* ./Jvm/peephole.scm 84 */
obj_t BgL_auxz00_915;obj_t BgL_auxz00_911;
BgL_auxz00_915 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Jvm/peephole.scm 84 */
obj_t BgL_auxz00_912;
BgL_auxz00_912 = 
CAR(BgL_lz00_119); 
BgL_auxz00_911 = 
CAR(BgL_auxz00_912); } 
BgL_test1230z00_124 = 
(BgL_auxz00_911==BgL_auxz00_915); }  else 
{ /* ./Jvm/peephole.scm 84 */
BgL_test1230z00_124 = ((bool_t)0); } } 
if(BgL_test1230z00_124)
{ /* ./Jvm/peephole.scm 85 */
obj_t BgL_arg1233z00_125;
BgL_arg1233z00_125 = 
CDR(BgL_lz00_119); 
{ 
obj_t BgL_lz00_920;
BgL_lz00_920 = BgL_arg1233z00_125; 
BgL_lz00_119 = BgL_lz00_920; 
goto BgL_zc3anonymousza31227ze3z83_122;} }  else 
{ /* ./Jvm/peephole.scm 84 */
{ /* ./Jvm/peephole.scm 87 */
obj_t BgL_arg1237z00_126;
{ /* ./Jvm/peephole.scm 87 */
obj_t BgL_arg1240z00_127;
BgL_arg1240z00_127 = 
CAR(BgL_lz00_119); 
BgL_arg1237z00_126 = 
MAKE_PAIR(BgL_arg1240z00_127, BNIL); } 
SET_CDR(BgL_pz00_120, BgL_arg1237z00_126); } 
{ /* ./Jvm/peephole.scm 88 */
obj_t BgL_arg1245z00_129;obj_t BgL_arg1246z00_130;
BgL_arg1245z00_129 = 
CDR(BgL_lz00_119); 
BgL_arg1246z00_130 = 
CDR(BgL_pz00_120); 
{ 
obj_t BgL_pz00_927;obj_t BgL_lz00_926;
BgL_lz00_926 = BgL_arg1245z00_129; 
BgL_pz00_927 = BgL_arg1246z00_130; 
BgL_pz00_120 = BgL_pz00_927; 
BgL_lz00_119 = BgL_lz00_926; 
goto BgL_zc3anonymousza31227ze3z83_122;} } } } } } } } 
}



/* removebranch */
obj_t BGl_removebranchz00zzjvm_peepholez00(BgL_peepzd2envzd2_bglt BgL_envz00_14)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 107 */
{ /* ./Jvm/peephole.scm 108 */
obj_t BgL_codez00_169;obj_t BgL_donez00_170;
BgL_codez00_169 = 
(((BgL_peepzd2envzd2_bglt)CREF(BgL_envz00_14))->BgL_codez00); 
BgL_donez00_170 = 
MAKE_CELL(BNIL); 
return 
BGl_walkz00zzjvm_peepholez00(BgL_codez00_169, BgL_donez00_170, 
CNST_TABLE_REF(((long)5)), BgL_codez00_169);} } 
}



/* walk-from */
obj_t BGl_walkzd2fromzd2zzjvm_peepholez00(obj_t BgL_donez00_778, obj_t BgL_codez00_777, obj_t BgL_fromz00_196, obj_t BgL_lz00_197)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 121 */
{ /* ./Jvm/peephole.scm 118 */
bool_t BgL_test1367z00_199;
{ /* ./Jvm/peephole.scm 118 */
obj_t BgL_auxz00_931;
BgL_auxz00_931 = 
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_fromz00_196, 
CELL_REF(BgL_donez00_778)); 
BgL_test1367z00_199 = 
CBOOL(BgL_auxz00_931); } 
if(BgL_test1367z00_199)
{ /* ./Jvm/peephole.scm 118 */
return 
CNST_TABLE_REF(((long)6));}  else 
{ /* ./Jvm/peephole.scm 118 */
{ /* ./Jvm/peephole.scm 120 */
obj_t BgL_auxz00_779;
{ /* ./Jvm/peephole.scm 120 */
obj_t BgL_auxz00_936;
BgL_auxz00_936 = 
CELL_REF(BgL_donez00_778); 
BgL_auxz00_779 = 
MAKE_PAIR(BgL_fromz00_196, BgL_auxz00_936); } 
CELL_SET(BgL_donez00_778, BgL_auxz00_779); } 
return 
BGl_walkz00zzjvm_peepholez00(BgL_codez00_777, BgL_donez00_778, BgL_fromz00_196, BgL_lz00_197);} } } 
}



/* collect */
obj_t BGl_collectz00zzjvm_peepholez00(obj_t BgL_lz00_204, obj_t BgL_fromz00_205, obj_t BgL_rz00_206, long BgL_nz00_207)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 114 */
BGl_collectz00zzjvm_peepholez00:
{ /* ./Jvm/peephole.scm 110 */
bool_t BgL_test1381z00_209;
if(
NULLP(BgL_lz00_204))
{ /* ./Jvm/peephole.scm 110 */
BgL_test1381z00_209 = ((bool_t)1); }  else 
{ /* ./Jvm/peephole.scm 110 */
if(
(BgL_nz00_207>((long)5)))
{ /* ./Jvm/peephole.scm 110 */
BgL_test1381z00_209 = ((bool_t)1); }  else 
{ /* ./Jvm/peephole.scm 110 */
obj_t BgL_auxz00_943;
BgL_auxz00_943 = 
CAR(BgL_lz00_204); 
BgL_test1381z00_209 = 
(BgL_auxz00_943==BgL_fromz00_205); } } 
if(BgL_test1381z00_209)
{ /* ./Jvm/peephole.scm 110 */
return BFALSE;}  else 
{ /* ./Jvm/peephole.scm 111 */
bool_t BgL_test1382z00_210;
{ /* ./Jvm/peephole.scm 111 */
obj_t BgL_auxz00_947;
BgL_auxz00_947 = 
CAR(BgL_lz00_204); 
BgL_test1382z00_210 = 
SYMBOLP(BgL_auxz00_947); } 
if(BgL_test1382z00_210)
{ /* ./Jvm/peephole.scm 111 */
{ /* ./Jvm/peephole.scm 111 */
obj_t BgL_arg1384z00_211;
BgL_arg1384z00_211 = 
CDR(BgL_lz00_204); 
{ 
obj_t BgL_lz00_952;
BgL_lz00_952 = BgL_arg1384z00_211; 
BgL_lz00_204 = BgL_lz00_952; 
goto BGl_collectz00zzjvm_peepholez00;} } }  else 
{ /* ./Jvm/peephole.scm 112 */
bool_t BgL_test1387z00_212;
{ /* ./Jvm/peephole.scm 112 */
obj_t BgL_auxz00_953;
{ /* ./Jvm/peephole.scm 112 */
obj_t BgL_auxz00_954;
{ /* ./Jvm/peephole.scm 112 */
obj_t BgL_auxz00_955;
BgL_auxz00_955 = 
CAR(BgL_lz00_204); 
BgL_auxz00_954 = 
CAR(BgL_auxz00_955); } 
BgL_auxz00_953 = 
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_auxz00_954, BGl_za2hugezd2copza2zd2zzjvm_peepholez00); } 
BgL_test1387z00_212 = 
CBOOL(BgL_auxz00_953); } 
if(BgL_test1387z00_212)
{ /* ./Jvm/peephole.scm 112 */
return BFALSE;}  else 
{ /* ./Jvm/peephole.scm 113 */
bool_t BgL_test1388z00_213;
{ /* ./Jvm/peephole.scm 113 */
obj_t BgL_auxz00_961;
{ /* ./Jvm/peephole.scm 113 */
obj_t BgL_auxz00_962;
{ /* ./Jvm/peephole.scm 113 */
obj_t BgL_auxz00_963;
BgL_auxz00_963 = 
CAR(BgL_lz00_204); 
BgL_auxz00_962 = 
CAR(BgL_auxz00_963); } 
BgL_auxz00_961 = 
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_auxz00_962, BGl_za2kindzd2ofzd2gotoza2z00zzjvm_peepholez00); } 
BgL_test1388z00_213 = 
CBOOL(BgL_auxz00_961); } 
if(BgL_test1388z00_213)
{ /* ./Jvm/peephole.scm 113 */
{ /* ./Jvm/peephole.scm 113 */
obj_t BgL_arg1390z00_214;
{ /* ./Jvm/peephole.scm 113 */
obj_t BgL_arg1393z00_215;
BgL_arg1393z00_215 = 
CAR(BgL_lz00_204); 
BgL_arg1390z00_214 = 
MAKE_PAIR(BgL_arg1393z00_215, BgL_rz00_206); } 
return 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_arg1390z00_214);} }  else 
{ /* ./Jvm/peephole.scm 113 */
{ /* ./Jvm/peephole.scm 114 */
obj_t BgL_arg1397z00_216;obj_t BgL_arg1398z00_217;long BgL_arg1400z00_218;
BgL_arg1397z00_216 = 
CDR(BgL_lz00_204); 
{ /* ./Jvm/peephole.scm 114 */
obj_t BgL_arg1406z00_219;
BgL_arg1406z00_219 = 
CAR(BgL_lz00_204); 
BgL_arg1398z00_217 = 
MAKE_PAIR(BgL_arg1406z00_219, BgL_rz00_206); } 
BgL_arg1400z00_218 = 
(BgL_nz00_207+((long)1)); 
{ 
long BgL_nz00_978;obj_t BgL_rz00_977;obj_t BgL_lz00_976;
BgL_lz00_976 = BgL_arg1397z00_216; 
BgL_rz00_977 = BgL_arg1398z00_217; 
BgL_nz00_978 = BgL_arg1400z00_218; 
BgL_nz00_207 = BgL_nz00_978; 
BgL_rz00_206 = BgL_rz00_977; 
BgL_lz00_204 = BgL_lz00_976; 
goto BGl_collectz00zzjvm_peepholez00;} } } } } } } } 
}



/* walk */
obj_t BGl_walkz00zzjvm_peepholez00(obj_t BgL_codez00_781, obj_t BgL_donez00_780, obj_t BgL_fromz00_175, obj_t BgL_lz00_176)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 136 */
BGl_walkz00zzjvm_peepholez00:
{ /* ./Jvm/peephole.scm 123 */
bool_t BgL_test1318z00_178;
BgL_test1318z00_178 = 
NULLP(BgL_lz00_176); 
if(BgL_test1318z00_178)
{ /* ./Jvm/peephole.scm 123 */
return 
CNST_TABLE_REF(((long)6));}  else 
{ /* ./Jvm/peephole.scm 124 */
bool_t BgL_test1319z00_179;
{ /* ./Jvm/peephole.scm 124 */
obj_t BgL_auxz00_982;
BgL_auxz00_982 = 
CAR(BgL_lz00_176); 
BgL_test1319z00_179 = 
SYMBOLP(BgL_auxz00_982); } 
if(BgL_test1319z00_179)
{ /* ./Jvm/peephole.scm 124 */
{ /* ./Jvm/peephole.scm 125 */
obj_t BgL_arg1321z00_180;obj_t BgL_arg1322z00_181;
BgL_arg1321z00_180 = 
CAR(BgL_lz00_176); 
BgL_arg1322z00_181 = 
CDR(BgL_lz00_176); 
return 
BGl_walkzd2fromzd2zzjvm_peepholez00(BgL_donez00_780, BgL_codez00_781, BgL_arg1321z00_180, BgL_arg1322z00_181);} }  else 
{ /* ./Jvm/peephole.scm 126 */
bool_t BgL_test1327z00_182;
{ /* ./Jvm/peephole.scm 126 */
obj_t BgL_auxz00_993;obj_t BgL_auxz00_989;
BgL_auxz00_993 = 
CNST_TABLE_REF(((long)7)); 
{ /* ./Jvm/peephole.scm 126 */
obj_t BgL_auxz00_990;
BgL_auxz00_990 = 
CAR(BgL_lz00_176); 
BgL_auxz00_989 = 
CAR(BgL_auxz00_990); } 
BgL_test1327z00_182 = 
(BgL_auxz00_989==BgL_auxz00_993); } 
if(BgL_test1327z00_182)
{ /* ./Jvm/peephole.scm 126 */
{ /* ./Jvm/peephole.scm 127 */
obj_t BgL_labz00_183;
{ /* ./Jvm/peephole.scm 127 */
obj_t BgL_auxz00_997;
{ /* ./Jvm/peephole.scm 127 */
obj_t BgL_auxz00_998;
BgL_auxz00_998 = 
CAR(BgL_lz00_176); 
BgL_auxz00_997 = 
CDR(BgL_auxz00_998); } 
BgL_labz00_183 = 
CAR(BgL_auxz00_997); } 
BGl_walkzd2atzd2labz00zzjvm_peepholez00(BgL_codez00_781, BgL_donez00_780, BgL_labz00_183); 
{ /* ./Jvm/peephole.scm 130 */
obj_t BgL_dupz00_184;
{ /* ./Jvm/peephole.scm 130 */
obj_t BgL_arg1343z00_189;
BgL_arg1343z00_189 = 
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_labz00_183, BgL_codez00_781); 
BgL_dupz00_184 = 
BGl_collectz00zzjvm_peepholez00(BgL_arg1343z00_189, BgL_fromz00_175, BNIL, ((long)0)); } 
if(
CBOOL(BgL_dupz00_184))
{ /* ./Jvm/peephole.scm 132 */
obj_t BgL_nextz00_185;
BgL_nextz00_185 = 
CDR(BgL_lz00_176); 
{ /* ./Jvm/peephole.scm 133 */
obj_t BgL_arg1330z00_186;
BgL_arg1330z00_186 = 
CAR(BgL_dupz00_184); 
SET_CAR(BgL_lz00_176, BgL_arg1330z00_186); } 
{ /* ./Jvm/peephole.scm 134 */
obj_t BgL_arg1334z00_187;
BgL_arg1334z00_187 = 
bgl_append2(
CDR(BgL_dupz00_184), BgL_nextz00_185); 
SET_CDR(BgL_lz00_176, BgL_arg1334z00_187); } 
{ 
obj_t BgL_lz00_1013;
BgL_lz00_1013 = BgL_nextz00_185; 
BgL_lz00_176 = BgL_lz00_1013; 
goto BGl_walkz00zzjvm_peepholez00;} }  else 
{ /* ./Jvm/peephole.scm 131 */
return BFALSE;} } } }  else 
{ /* ./Jvm/peephole.scm 126 */
{ /* ./Jvm/peephole.scm 136 */
obj_t BgL_arg1352z00_192;
BgL_arg1352z00_192 = 
CDR(BgL_lz00_176); 
{ 
obj_t BgL_lz00_1015;
BgL_lz00_1015 = BgL_arg1352z00_192; 
BgL_lz00_176 = BgL_lz00_1015; 
goto BGl_walkz00zzjvm_peepholez00;} } } } } } } 
}



/* walk-at-lab */
obj_t BGl_walkzd2atzd2labz00zzjvm_peepholez00(obj_t BgL_codez00_783, obj_t BgL_donez00_782, obj_t BgL_labz00_200)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 116 */
{ /* ./Jvm/peephole.scm 116 */
obj_t BgL_arg1374z00_202;
{ /* ./Jvm/peephole.scm 116 */
obj_t BgL_auxz00_1016;
BgL_auxz00_1016 = 
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_labz00_200, BgL_codez00_783); 
BgL_arg1374z00_202 = 
CDR(BgL_auxz00_1016); } 
return 
BGl_walkzd2fromzd2zzjvm_peepholez00(BgL_donez00_782, BgL_codez00_783, BgL_labz00_200, BgL_arg1374z00_202);} } 
}



/* removesequence */
obj_t BGl_removesequencez00zzjvm_peepholez00(BgL_peepzd2envzd2_bglt BgL_envz00_15)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 142 */
{ /* ./Jvm/peephole.scm 174 */
obj_t BgL_envz00_235;
{ /* ./Jvm/peephole.scm 174 */
obj_t BgL_arg1551z00_287;
BgL_arg1551z00_287 = 
(((BgL_peepzd2envzd2_bglt)CREF(BgL_envz00_15))->BgL_codez00); 
BgL_envz00_235 = 
BGl_makezd2labenvzd2zzjvm_peepholez00(BgL_arg1551z00_287); } 
{ 
obj_t BgL_prevz00_252;obj_t BgL_codez00_253;obj_t BgL_prevz00_271;obj_t BgL_codez00_272;
{ 
obj_t BgL_l1072z00_238;
{ /* ./Jvm/peephole.scm 193 */
obj_t BgL_arg1434z00_240;
BgL_arg1434z00_240 = 
(((BgL_peepzd2envzd2_bglt)CREF(BgL_envz00_15))->BgL_codez00); 
BgL_l1072z00_238 = BgL_arg1434z00_240; 
BgL_forzd2each1073zd2_239:
{ /* ./Jvm/peephole.scm 193 */
bool_t BgL_test1437z00_241;
BgL_test1437z00_241 = 
PAIRP(BgL_l1072z00_238); 
if(BgL_test1437z00_241)
{ /* ./Jvm/peephole.scm 193 */
{ /* ./Jvm/peephole.scm 193 */
obj_t BgL_insz00_242;
BgL_insz00_242 = 
CAR(BgL_l1072z00_238); 
BGl_countzd2inszd2zzjvm_peepholez00(BgL_insz00_242, BgL_envz00_235); } 
{ /* ./Jvm/peephole.scm 193 */
obj_t BgL_arg1441z00_243;
BgL_arg1441z00_243 = 
CDR(BgL_l1072z00_238); 
{ 
obj_t BgL_l1072z00_1028;
BgL_l1072z00_1028 = BgL_arg1441z00_243; 
BgL_l1072z00_238 = BgL_l1072z00_1028; 
goto BgL_forzd2each1073zd2_239;} } }  else 
{ /* ./Jvm/peephole.scm 193 */((bool_t)1); } } } } 
{ 
obj_t BgL_l1074z00_244;
{ /* ./Jvm/peephole.scm 194 */
obj_t BgL_arg1446z00_246;
BgL_arg1446z00_246 = 
(((BgL_peepzd2envzd2_bglt)CREF(BgL_envz00_15))->BgL_handlersz00); 
BgL_l1074z00_244 = BgL_arg1446z00_246; 
BgL_forzd2each1075zd2_245:
{ /* ./Jvm/peephole.scm 194 */
bool_t BgL_test1449z00_247;
BgL_test1449z00_247 = 
PAIRP(BgL_l1074z00_244); 
if(BgL_test1449z00_247)
{ /* ./Jvm/peephole.scm 194 */
{ /* ./Jvm/peephole.scm 194 */
obj_t BgL_hz00_248;
BgL_hz00_248 = 
CAR(BgL_l1074z00_244); 
BGl_countzd2handlerzd2zzjvm_peepholez00(BgL_hz00_248, BgL_envz00_235); } 
{ /* ./Jvm/peephole.scm 194 */
obj_t BgL_arg1453z00_249;
BgL_arg1453z00_249 = 
CDR(BgL_l1074z00_244); 
{ 
obj_t BgL_l1074z00_1035;
BgL_l1074z00_1035 = BgL_arg1453z00_249; 
BgL_l1074z00_244 = BgL_l1074z00_1035; 
goto BgL_forzd2each1075zd2_245;} } }  else 
{ /* ./Jvm/peephole.scm 194 */((bool_t)1); } } } } 
{ /* ./Jvm/peephole.scm 195 */
obj_t BgL_arg1458z00_250;obj_t BgL_arg1461z00_251;
BgL_arg1458z00_250 = 
(((BgL_peepzd2envzd2_bglt)CREF(BgL_envz00_15))->BgL_codez00); 
BgL_arg1461z00_251 = 
(((BgL_peepzd2envzd2_bglt)CREF(BgL_envz00_15))->BgL_codez00); 
BgL_prevz00_252 = BgL_arg1458z00_250; 
BgL_codez00_253 = BgL_arg1461z00_251; 
BgL_zc3anonymousza31465ze3z83_254:
{ /* ./Jvm/peephole.scm 185 */
bool_t BgL_test1466z00_255;
BgL_test1466z00_255 = 
NULLP(BgL_codez00_253); 
if(BgL_test1466z00_255)
{ /* ./Jvm/peephole.scm 185 */
return 
CNST_TABLE_REF(((long)8));}  else 
{ /* ./Jvm/peephole.scm 186 */
bool_t BgL_test1467z00_256;
{ /* ./Jvm/peephole.scm 186 */
bool_t BgL_testz00_1041;
{ /* ./Jvm/peephole.scm 186 */
obj_t BgL_auxz00_1042;
BgL_auxz00_1042 = 
CAR(BgL_codez00_253); 
BgL_testz00_1041 = 
SYMBOLP(BgL_auxz00_1042); } 
if(BgL_testz00_1041)
{ /* ./Jvm/peephole.scm 187 */
obj_t BgL_auxz00_1045;
{ /* ./Jvm/peephole.scm 187 */
obj_t BgL_auxz00_1047;
BgL_auxz00_1047 = 
BGl_assqz00zz__r4_pairs_and_lists_6_3z00(
CAR(BgL_codez00_253), BgL_envz00_235); 
BgL_auxz00_1045 = 
CDR(BgL_auxz00_1047); } 
BgL_test1467z00_256 = 
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(((long)0)), BgL_auxz00_1045); }  else 
{ /* ./Jvm/peephole.scm 186 */
BgL_test1467z00_256 = ((bool_t)0); } } 
if(BgL_test1467z00_256)
{ /* ./Jvm/peephole.scm 186 */
{ /* ./Jvm/peephole.scm 188 */
obj_t BgL_arg1470z00_257;
BgL_arg1470z00_257 = 
CDR(BgL_codez00_253); 
SET_CDR(BgL_prevz00_252, BgL_arg1470z00_257); } 
{ /* ./Jvm/peephole.scm 189 */
obj_t BgL_arg1474z00_258;
BgL_arg1474z00_258 = 
CDR(BgL_codez00_253); 
{ 
obj_t BgL_codez00_1056;
BgL_codez00_1056 = BgL_arg1474z00_258; 
BgL_codez00_253 = BgL_codez00_1056; 
goto BgL_zc3anonymousza31465ze3z83_254;} } }  else 
{ /* ./Jvm/peephole.scm 190 */
bool_t BgL_test1477z00_259;
{ /* ./Jvm/peephole.scm 190 */
bool_t BgL_testz00_1057;
{ /* ./Jvm/peephole.scm 190 */
obj_t BgL_auxz00_1058;
BgL_auxz00_1058 = 
CAR(BgL_codez00_253); 
BgL_testz00_1057 = 
PAIRP(BgL_auxz00_1058); } 
if(BgL_testz00_1057)
{ /* ./Jvm/peephole.scm 190 */
obj_t BgL_auxz00_1061;
{ /* ./Jvm/peephole.scm 190 */
obj_t BgL_auxz00_1062;
{ /* ./Jvm/peephole.scm 190 */
obj_t BgL_auxz00_1063;
BgL_auxz00_1063 = 
CAR(BgL_codez00_253); 
BgL_auxz00_1062 = 
CAR(BgL_auxz00_1063); } 
BgL_auxz00_1061 = 
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_auxz00_1062, BGl_za2kindzd2ofzd2gotoza2z00zzjvm_peepholez00); } 
BgL_test1477z00_259 = 
CBOOL(BgL_auxz00_1061); }  else 
{ /* ./Jvm/peephole.scm 190 */
BgL_test1477z00_259 = ((bool_t)0); } } 
if(BgL_test1477z00_259)
{ /* ./Jvm/peephole.scm 190 */
{ /* ./Jvm/peephole.scm 191 */
obj_t BgL_arg1480z00_260;
BgL_arg1480z00_260 = 
CDR(BgL_codez00_253); 
BgL_prevz00_271 = BgL_codez00_253; 
BgL_codez00_272 = BgL_arg1480z00_260; 
BgL_zc3anonymousza31515ze3z83_273:
{ /* ./Jvm/peephole.scm 176 */
bool_t BgL_test1516z00_274;
BgL_test1516z00_274 = 
NULLP(BgL_codez00_272); 
if(BgL_test1516z00_274)
{ /* ./Jvm/peephole.scm 176 */
return 
SET_CDR(BgL_prevz00_271, BNIL);}  else 
{ /* ./Jvm/peephole.scm 178 */
bool_t BgL_test1518z00_275;
{ /* ./Jvm/peephole.scm 178 */
obj_t BgL_auxz00_1073;
BgL_auxz00_1073 = 
CAR(BgL_codez00_272); 
BgL_test1518z00_275 = 
SYMBOLP(BgL_auxz00_1073); } 
if(BgL_test1518z00_275)
{ /* ./Jvm/peephole.scm 178 */
{ /* ./Jvm/peephole.scm 179 */
bool_t BgL_test1519z00_276;
{ /* ./Jvm/peephole.scm 179 */
obj_t BgL_auxz00_1077;
{ /* ./Jvm/peephole.scm 179 */
obj_t BgL_auxz00_1079;
BgL_auxz00_1079 = 
BGl_assqz00zz__r4_pairs_and_lists_6_3z00(
CAR(BgL_codez00_272), BgL_envz00_235); 
BgL_auxz00_1077 = 
CDR(BgL_auxz00_1079); } 
BgL_test1519z00_276 = 
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(((long)0)), BgL_auxz00_1077); } 
if(BgL_test1519z00_276)
{ /* ./Jvm/peephole.scm 180 */
obj_t BgL_arg1521z00_277;
BgL_arg1521z00_277 = 
CDR(BgL_codez00_272); 
{ 
obj_t BgL_codez00_1086;
BgL_codez00_1086 = BgL_arg1521z00_277; 
BgL_codez00_272 = BgL_codez00_1086; 
goto BgL_zc3anonymousza31515ze3z83_273;} }  else 
{ /* ./Jvm/peephole.scm 179 */
SET_CDR(BgL_prevz00_271, BgL_codez00_272); 
{ /* ./Jvm/peephole.scm 182 */
obj_t BgL_arg1526z00_278;
BgL_arg1526z00_278 = 
CDR(BgL_codez00_272); 
{ 
obj_t BgL_codez00_1090;obj_t BgL_prevz00_1089;
BgL_prevz00_1089 = BgL_codez00_272; 
BgL_codez00_1090 = BgL_arg1526z00_278; 
BgL_codez00_253 = BgL_codez00_1090; 
BgL_prevz00_252 = BgL_prevz00_1089; 
goto BgL_zc3anonymousza31465ze3z83_254;} } } } }  else 
{ /* ./Jvm/peephole.scm 178 */
{ /* ./Jvm/peephole.scm 183 */
obj_t BgL_arg1541z00_283;
BgL_arg1541z00_283 = 
CDR(BgL_codez00_272); 
{ 
obj_t BgL_codez00_1092;
BgL_codez00_1092 = BgL_arg1541z00_283; 
BgL_codez00_272 = BgL_codez00_1092; 
goto BgL_zc3anonymousza31515ze3z83_273;} } } } } } }  else 
{ /* ./Jvm/peephole.scm 190 */
{ /* ./Jvm/peephole.scm 192 */
obj_t BgL_arg1484z00_261;
BgL_arg1484z00_261 = 
CDR(BgL_codez00_253); 
{ 
obj_t BgL_codez00_1095;obj_t BgL_prevz00_1094;
BgL_prevz00_1094 = BgL_codez00_253; 
BgL_codez00_1095 = BgL_arg1484z00_261; 
BgL_codez00_253 = BgL_codez00_1095; 
BgL_prevz00_252 = BgL_prevz00_1094; 
goto BgL_zc3anonymousza31465ze3z83_254;} } } } } } } } } } 
}



/* count-lab */
obj_t BGl_countzd2labzd2zzjvm_peepholez00(obj_t BgL_labz00_367, obj_t BgL_envz00_368)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 153 */
{ /* ./Jvm/peephole.scm 150 */
obj_t BgL_slotz00_370;
BgL_slotz00_370 = 
BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_labz00_367, BgL_envz00_368); 
if(
CBOOL(BgL_slotz00_370))
{ /* ./Jvm/peephole.scm 152 */
obj_t BgL_arg1695z00_371;
BgL_arg1695z00_371 = 
BGl_2zb2zb2zz__r4_numbers_6_5z00(
BINT(((long)1)), 
CDR(BgL_slotz00_370)); 
return 
SET_CDR(BgL_slotz00_370, BgL_arg1695z00_371);}  else 
{ /* ./Jvm/peephole.scm 153 */
obj_t BgL_procz00_695;
BgL_procz00_695 = 
CNST_TABLE_REF(((long)9)); 
FAILURE(BgL_procz00_695,BGl_string1879z00zzjvm_peepholez00,BgL_labz00_367);} } } 
}



/* make-labenv */
obj_t BGl_makezd2labenvzd2zzjvm_peepholez00(obj_t BgL_codez00_374)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 148 */
BGl_makezd2labenvzd2zzjvm_peepholez00:
{ /* ./Jvm/peephole.scm 145 */
bool_t BgL_test1705z00_376;
BgL_test1705z00_376 = 
NULLP(BgL_codez00_374); 
if(BgL_test1705z00_376)
{ /* ./Jvm/peephole.scm 145 */
return BNIL;}  else 
{ /* ./Jvm/peephole.scm 146 */
bool_t BgL_test1706z00_377;
{ /* ./Jvm/peephole.scm 146 */
obj_t BgL_auxz00_1107;
BgL_auxz00_1107 = 
CAR(BgL_codez00_374); 
BgL_test1706z00_377 = 
SYMBOLP(BgL_auxz00_1107); } 
if(BgL_test1706z00_377)
{ /* ./Jvm/peephole.scm 146 */
{ /* ./Jvm/peephole.scm 146 */
obj_t BgL_arg1709z00_378;obj_t BgL_arg1710z00_379;
{ /* ./Jvm/peephole.scm 146 */
obj_t BgL_arg1713z00_380;
BgL_arg1713z00_380 = 
CAR(BgL_codez00_374); 
{ /* ./Jvm/peephole.scm 146 */
obj_t BgL_auxz00_1112;
BgL_auxz00_1112 = 
BINT(((long)0)); 
BgL_arg1709z00_378 = 
MAKE_PAIR(BgL_arg1713z00_380, BgL_auxz00_1112); } } 
{ /* ./Jvm/peephole.scm 147 */
obj_t BgL_arg1718z00_382;
BgL_arg1718z00_382 = 
CDR(BgL_codez00_374); 
BgL_arg1710z00_379 = 
BGl_makezd2labenvzd2zzjvm_peepholez00(BgL_arg1718z00_382); } 
return 
MAKE_PAIR(BgL_arg1709z00_378, BgL_arg1710z00_379);} }  else 
{ /* ./Jvm/peephole.scm 146 */
{ /* ./Jvm/peephole.scm 148 */
obj_t BgL_arg1722z00_383;
BgL_arg1722z00_383 = 
CDR(BgL_codez00_374); 
{ 
obj_t BgL_codez00_1119;
BgL_codez00_1119 = BgL_arg1722z00_383; 
BgL_codez00_374 = BgL_codez00_1119; 
goto BGl_makezd2labenvzd2zzjvm_peepholez00;} } } } } } 
}



/* count-ins */
obj_t BGl_countzd2inszd2zzjvm_peepholez00(obj_t BgL_insz00_313, obj_t BgL_envz00_314)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 167 */
{ /* ./Jvm/peephole.scm 155 */
bool_t BgL_test1596z00_316;
if(
PAIRP(BgL_insz00_313))
{ /* ./Jvm/peephole.scm 155 */
obj_t BgL_auxz00_1122;
BgL_auxz00_1122 = 
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(
CAR(BgL_insz00_313), BGl_za2singlezd2labzd2copza2z00zzjvm_peepholez00); 
BgL_test1596z00_316 = 
CBOOL(BgL_auxz00_1122); }  else 
{ /* ./Jvm/peephole.scm 155 */
BgL_test1596z00_316 = ((bool_t)0); } 
if(BgL_test1596z00_316)
{ /* ./Jvm/peephole.scm 156 */
obj_t BgL_arg1599z00_317;
{ /* ./Jvm/peephole.scm 156 */
obj_t BgL_auxz00_1127;
BgL_auxz00_1127 = 
CDR(BgL_insz00_313); 
BgL_arg1599z00_317 = 
CAR(BgL_auxz00_1127); } 
return 
BGl_countzd2labzd2zzjvm_peepholez00(BgL_arg1599z00_317, BgL_envz00_314);}  else 
{ 
obj_t BgL_defz00_321;obj_t BgL_labsz00_322;obj_t BgL_defz00_324;obj_t BgL_tablez00_325;
{ /* ./Jvm/peephole.scm 157 */
bool_t BgL_test1602z00_328;
BgL_test1602z00_328 = 
PAIRP(BgL_insz00_313); 
if(BgL_test1602z00_328)
{ /* ./Jvm/peephole.scm 157 */
obj_t BgL_cdrzd2169zd2_329;
BgL_cdrzd2169zd2_329 = 
CDR(BgL_insz00_313); 
{ /* ./Jvm/peephole.scm 157 */
bool_t BgL_test1603z00_330;
{ /* ./Jvm/peephole.scm 157 */
obj_t BgL_auxz00_1136;obj_t BgL_auxz00_1134;
BgL_auxz00_1136 = 
CNST_TABLE_REF(((long)10)); 
BgL_auxz00_1134 = 
CAR(BgL_insz00_313); 
BgL_test1603z00_330 = 
(BgL_auxz00_1134==BgL_auxz00_1136); } 
if(BgL_test1603z00_330)
{ /* ./Jvm/peephole.scm 157 */
bool_t BgL_test1604z00_331;
BgL_test1604z00_331 = 
PAIRP(BgL_cdrzd2169zd2_329); 
if(BgL_test1604z00_331)
{ /* ./Jvm/peephole.scm 157 */
obj_t BgL_cdrzd2173zd2_332;
BgL_cdrzd2173zd2_332 = 
CDR(BgL_cdrzd2169zd2_329); 
{ /* ./Jvm/peephole.scm 157 */
bool_t BgL_test1605z00_333;
BgL_test1605z00_333 = 
PAIRP(BgL_cdrzd2173zd2_332); 
if(BgL_test1605z00_333)
{ /* ./Jvm/peephole.scm 157 */
obj_t BgL_arg1607z00_334;obj_t BgL_arg1608z00_335;
BgL_arg1607z00_334 = 
CAR(BgL_cdrzd2169zd2_329); 
BgL_arg1608z00_335 = 
CAR(BgL_cdrzd2173zd2_332); 
BGl_countzd2labzd2zzjvm_peepholez00(BgL_arg1607z00_334, BgL_envz00_314); 
return 
BGl_countzd2labzd2zzjvm_peepholez00(BgL_arg1608z00_335, BgL_envz00_314);}  else 
{ /* ./Jvm/peephole.scm 157 */
return BFALSE;} } }  else 
{ /* ./Jvm/peephole.scm 157 */
return BFALSE;} }  else 
{ /* ./Jvm/peephole.scm 157 */
bool_t BgL_test1615z00_337;
{ /* ./Jvm/peephole.scm 157 */
obj_t BgL_auxz00_1151;obj_t BgL_auxz00_1149;
BgL_auxz00_1151 = 
CNST_TABLE_REF(((long)11)); 
BgL_auxz00_1149 = 
CAR(BgL_insz00_313); 
BgL_test1615z00_337 = 
(BgL_auxz00_1149==BgL_auxz00_1151); } 
if(BgL_test1615z00_337)
{ /* ./Jvm/peephole.scm 157 */
bool_t BgL_test1616z00_338;
BgL_test1616z00_338 = 
PAIRP(BgL_cdrzd2169zd2_329); 
if(BgL_test1616z00_338)
{ /* ./Jvm/peephole.scm 157 */
obj_t BgL_cdrzd2207zd2_339;
BgL_cdrzd2207zd2_339 = 
CDR(BgL_cdrzd2169zd2_329); 
{ /* ./Jvm/peephole.scm 157 */
bool_t BgL_test1617z00_340;
BgL_test1617z00_340 = 
PAIRP(BgL_cdrzd2207zd2_339); 
if(BgL_test1617z00_340)
{ /* ./Jvm/peephole.scm 157 */
obj_t BgL_arg1620z00_341;obj_t BgL_arg1621z00_342;
BgL_arg1620z00_341 = 
CAR(BgL_cdrzd2169zd2_329); 
BgL_arg1621z00_342 = 
CDR(BgL_cdrzd2207zd2_339); 
{ /* ./Jvm/peephole.scm 157 */
bool_t BgL_auxz00_1162;
BgL_defz00_321 = BgL_arg1620z00_341; 
BgL_labsz00_322 = BgL_arg1621z00_342; 
BGl_countzd2labzd2zzjvm_peepholez00(BgL_defz00_321, BgL_envz00_314); 
{ 
obj_t BgL_l1068z00_354;
BgL_l1068z00_354 = BgL_labsz00_322; 
BgL_forzd2each1069zd2_355:
{ /* ./Jvm/peephole.scm 163 */
bool_t BgL_test1666z00_356;
BgL_test1666z00_356 = 
PAIRP(BgL_l1068z00_354); 
if(BgL_test1666z00_356)
{ /* ./Jvm/peephole.scm 163 */
{ /* ./Jvm/peephole.scm 163 */
obj_t BgL_labz00_357;
BgL_labz00_357 = 
CAR(BgL_l1068z00_354); 
BGl_countzd2labzd2zzjvm_peepholez00(BgL_labz00_357, BgL_envz00_314); } 
{ /* ./Jvm/peephole.scm 163 */
obj_t BgL_arg1670z00_358;
BgL_arg1670z00_358 = 
CDR(BgL_l1068z00_354); 
{ 
obj_t BgL_l1068z00_1169;
BgL_l1068z00_1169 = BgL_arg1670z00_358; 
BgL_l1068z00_354 = BgL_l1068z00_1169; 
goto BgL_forzd2each1069zd2_355;} } }  else 
{ /* ./Jvm/peephole.scm 163 */
BgL_auxz00_1162 = ((bool_t)1); } } } 
return 
BBOOL(BgL_auxz00_1162);} }  else 
{ /* ./Jvm/peephole.scm 157 */
return BFALSE;} } }  else 
{ /* ./Jvm/peephole.scm 157 */
return BFALSE;} }  else 
{ /* ./Jvm/peephole.scm 157 */
obj_t BgL_cdrzd2226zd2_343;
BgL_cdrzd2226zd2_343 = 
CDR(BgL_insz00_313); 
{ /* ./Jvm/peephole.scm 157 */
bool_t BgL_test1628z00_344;
{ /* ./Jvm/peephole.scm 157 */
obj_t BgL_auxz00_1174;obj_t BgL_auxz00_1172;
BgL_auxz00_1174 = 
CNST_TABLE_REF(((long)12)); 
BgL_auxz00_1172 = 
CAR(BgL_insz00_313); 
BgL_test1628z00_344 = 
(BgL_auxz00_1172==BgL_auxz00_1174); } 
if(BgL_test1628z00_344)
{ /* ./Jvm/peephole.scm 157 */
bool_t BgL_test1629z00_345;
BgL_test1629z00_345 = 
PAIRP(BgL_cdrzd2226zd2_343); 
if(BgL_test1629z00_345)
{ /* ./Jvm/peephole.scm 157 */
obj_t BgL_arg1631z00_346;obj_t BgL_arg1632z00_347;
BgL_arg1631z00_346 = 
CAR(BgL_cdrzd2226zd2_343); 
BgL_arg1632z00_347 = 
CDR(BgL_cdrzd2226zd2_343); 
{ /* ./Jvm/peephole.scm 157 */
bool_t BgL_auxz00_1182;
BgL_defz00_324 = BgL_arg1631z00_346; 
BgL_tablez00_325 = BgL_arg1632z00_347; 
BGl_countzd2labzd2zzjvm_peepholez00(BgL_defz00_324, BgL_envz00_314); 
{ 
obj_t BgL_l1070z00_359;
BgL_l1070z00_359 = BgL_tablez00_325; 
BgL_forzd2each1071zd2_360:
{ /* ./Jvm/peephole.scm 166 */
bool_t BgL_test1676z00_361;
BgL_test1676z00_361 = 
PAIRP(BgL_l1070z00_359); 
if(BgL_test1676z00_361)
{ /* ./Jvm/peephole.scm 166 */
{ /* ./Jvm/peephole.scm 166 */
obj_t BgL_slotz00_362;
BgL_slotz00_362 = 
CAR(BgL_l1070z00_359); 
{ /* ./Jvm/peephole.scm 166 */
obj_t BgL_arg1678z00_363;
BgL_arg1678z00_363 = 
CDR(BgL_slotz00_362); 
BGl_countzd2labzd2zzjvm_peepholez00(BgL_arg1678z00_363, BgL_envz00_314); } } 
{ /* ./Jvm/peephole.scm 166 */
obj_t BgL_arg1683z00_364;
BgL_arg1683z00_364 = 
CDR(BgL_l1070z00_359); 
{ 
obj_t BgL_l1070z00_1190;
BgL_l1070z00_1190 = BgL_arg1683z00_364; 
BgL_l1070z00_359 = BgL_l1070z00_1190; 
goto BgL_forzd2each1071zd2_360;} } }  else 
{ /* ./Jvm/peephole.scm 166 */
BgL_auxz00_1182 = ((bool_t)1); } } } 
return 
BBOOL(BgL_auxz00_1182);} }  else 
{ /* ./Jvm/peephole.scm 157 */
return BFALSE;} }  else 
{ /* ./Jvm/peephole.scm 157 */
return BFALSE;} } } } } }  else 
{ /* ./Jvm/peephole.scm 157 */
return BFALSE;} } } } } 
}



/* count-handler */
obj_t BGl_countzd2handlerzd2zzjvm_peepholez00(obj_t BgL_hz00_288, obj_t BgL_envz00_289)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 173 */
{ /* ./Jvm/peephole.scm 173 */
bool_t BgL_test1555z00_296;
BgL_test1555z00_296 = 
PAIRP(BgL_hz00_288); 
if(BgL_test1555z00_296)
{ /* ./Jvm/peephole.scm 173 */
obj_t BgL_cdrzd2251zd2_297;
BgL_cdrzd2251zd2_297 = 
CDR(BgL_hz00_288); 
{ /* ./Jvm/peephole.scm 173 */
bool_t BgL_test1556z00_298;
{ /* ./Jvm/peephole.scm 173 */
obj_t BgL_auxz00_1197;obj_t BgL_auxz00_1195;
BgL_auxz00_1197 = 
CNST_TABLE_REF(((long)4)); 
BgL_auxz00_1195 = 
CAR(BgL_hz00_288); 
BgL_test1556z00_298 = 
(BgL_auxz00_1195==BgL_auxz00_1197); } 
if(BgL_test1556z00_298)
{ /* ./Jvm/peephole.scm 173 */
bool_t BgL_test1557z00_299;
BgL_test1557z00_299 = 
PAIRP(BgL_cdrzd2251zd2_297); 
if(BgL_test1557z00_299)
{ /* ./Jvm/peephole.scm 173 */
obj_t BgL_cdrzd2256zd2_300;
BgL_cdrzd2256zd2_300 = 
CDR(BgL_cdrzd2251zd2_297); 
{ /* ./Jvm/peephole.scm 173 */
bool_t BgL_test1558z00_301;
BgL_test1558z00_301 = 
PAIRP(BgL_cdrzd2256zd2_300); 
if(BgL_test1558z00_301)
{ /* ./Jvm/peephole.scm 173 */
obj_t BgL_cdrzd2261zd2_302;
BgL_cdrzd2261zd2_302 = 
CDR(BgL_cdrzd2256zd2_300); 
{ /* ./Jvm/peephole.scm 173 */
bool_t BgL_test1559z00_303;
BgL_test1559z00_303 = 
PAIRP(BgL_cdrzd2261zd2_302); 
if(BgL_test1559z00_303)
{ /* ./Jvm/peephole.scm 173 */
obj_t BgL_cdrzd2265zd2_304;
BgL_cdrzd2265zd2_304 = 
CDR(BgL_cdrzd2261zd2_302); 
{ /* ./Jvm/peephole.scm 173 */
bool_t BgL_test1560z00_305;
BgL_test1560z00_305 = 
PAIRP(BgL_cdrzd2265zd2_304); 
if(BgL_test1560z00_305)
{ /* ./Jvm/peephole.scm 173 */
bool_t BgL_test1561z00_306;
{ /* ./Jvm/peephole.scm 173 */
obj_t BgL_auxz00_1212;
BgL_auxz00_1212 = 
CDR(BgL_cdrzd2265zd2_304); 
BgL_test1561z00_306 = 
NULLP(BgL_auxz00_1212); } 
if(BgL_test1561z00_306)
{ /* ./Jvm/peephole.scm 173 */
obj_t BgL_arg1564z00_307;obj_t BgL_arg1565z00_308;obj_t BgL_arg1566z00_309;
BgL_arg1564z00_307 = 
CAR(BgL_cdrzd2251zd2_297); 
BgL_arg1565z00_308 = 
CAR(BgL_cdrzd2256zd2_300); 
BgL_arg1566z00_309 = 
CAR(BgL_cdrzd2261zd2_302); 
BGl_countzd2labzd2zzjvm_peepholez00(BgL_arg1564z00_307, BgL_envz00_289); 
BGl_countzd2labzd2zzjvm_peepholez00(BgL_arg1565z00_308, BgL_envz00_289); 
return 
BGl_countzd2labzd2zzjvm_peepholez00(BgL_arg1566z00_309, BgL_envz00_289);}  else 
{ /* ./Jvm/peephole.scm 173 */
return BFALSE;} }  else 
{ /* ./Jvm/peephole.scm 173 */
return BFALSE;} } }  else 
{ /* ./Jvm/peephole.scm 173 */
return BFALSE;} } }  else 
{ /* ./Jvm/peephole.scm 173 */
return BFALSE;} } }  else 
{ /* ./Jvm/peephole.scm 173 */
return BFALSE;} }  else 
{ /* ./Jvm/peephole.scm 173 */
return BFALSE;} } }  else 
{ /* ./Jvm/peephole.scm 173 */
return BFALSE;} } } 
}



/* object-init */
obj_t BGl_objectzd2initzd2zzjvm_peepholez00()
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 1 */
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_arg1731z00_389;obj_t BgL_arg1732z00_390;obj_t BgL_arg1736z00_394;
BgL_arg1731z00_389 = 
CNST_TABLE_REF(((long)13)); 
BgL_arg1732z00_390 = BGl_objectz00zz__objectz00; 
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_v1076z00_395;
{ 
int BgL_auxz00_1223;
BgL_auxz00_1223 = 
(int)(((long)0)); 
BgL_v1076z00_395 = 
create_vector(BgL_auxz00_1223); } 
BgL_arg1736z00_394 = BgL_v1076z00_395; } 
BGl_peepzd2envzd2zzjvm_peepholez00 = 
BGl_registerzd2classz12zc0zz__objectz00(BgL_arg1731z00_389, BgL_arg1732z00_390, BFALSE, BGl_allocatezd2peepzd2envzd2envzd2zzjvm_peepholez00, ((long)16360), BNIL, BFALSE, BgL_arg1736z00_394); } 
return BUNSPEC;} 
}



/* _allocate-peep-env */
obj_t BGl__allocatezd2peepzd2envz00zzjvm_peepholez00(obj_t BgL_envz00_764)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 4 */
{ /* ./Jvm/peephole.scm 4 */
BgL_peepzd2envzd2_bglt BgL_auxz00_1227;
{ /* ./Jvm/peephole.scm 4 */
BgL_peepzd2envzd2_bglt BgL_res1898z00_799;
{ /* ./Jvm/peephole.scm 4 */
BgL_peepzd2envzd2_bglt BgL_new1031z00_795;
BgL_new1031z00_795 = 
((BgL_peepzd2envzd2_bglt)BREF( GC_MALLOC ( sizeof(struct BgL_peepzd2envzd2_bgl) ))); 
{ /* ./Jvm/peephole.scm 4 */
long BgL_arg1743z00_796;
BgL_arg1743z00_796 = 
BGl_classzd2numzd2zz__objectz00(BGl_peepzd2envzd2zzjvm_peepholez00); 
{ /* ./Jvm/peephole.scm 4 */
BgL_objectz00_bglt BgL_objz00_797;
BgL_objz00_797 = 
(BgL_objectz00_bglt)(BgL_new1031z00_795); 
BGL_OBJECT_CLASS_NUM_SET(BgL_objz00_797, BgL_arg1743z00_796); } } 
{ /* ./Jvm/peephole.scm 4 */
BgL_objectz00_bglt BgL_auxz00_1232;
BgL_auxz00_1232 = 
(BgL_objectz00_bglt)(BgL_new1031z00_795); 
BGL_OBJECT_WIDENING_SET(BgL_auxz00_1232, BFALSE); } 
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_objz00_798;
BgL_objz00_798 = 
(obj_t)(BgL_new1031z00_795); 
BGL_HEAP_DEBUG_MARK_OBJ(BgL_objz00_798); BUNSPEC; } 
BgL_res1898z00_799 = BgL_new1031z00_795; } 
BgL_auxz00_1227 = BgL_res1898z00_799; } 
return 
(obj_t)(BgL_auxz00_1227);} } 
}



/* method-init */
obj_t BGl_methodzd2initzd2zzjvm_peepholez00()
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 1 */
BGl_addzd2methodz12zc0zz__objectz00(BGl_objectzd2ze3structzd2envze3zz__objectz00, BGl_peepzd2envzd2zzjvm_peepholez00, BGl_proc1880z00zzjvm_peepholez00); 
return 
BGl_addzd2methodz12zc0zz__objectz00(BGl_structzb2objectzd2ze3objectzd2envz51zz__objectz00, BGl_peepzd2envzd2zzjvm_peepholez00, BGl_proc1881z00zzjvm_peepholez00);} 
}



/* struct+object->object-peep-env1081 */
obj_t BGl_structzb2objectzd2ze3objectzd2peepzd2env1081z83zzjvm_peepholez00(obj_t BgL_envz00_767, obj_t BgL_oz00_768, obj_t BgL_sz00_769)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 4 */
{ 
BgL_peepzd2envzd2_bglt BgL_oz00_417;obj_t BgL_sz00_418;
{ /* ./Jvm/peephole.scm 4 */
BgL_peepzd2envzd2_bglt BgL_auxz00_1240;
BgL_oz00_417 = 
(BgL_peepzd2envzd2_bglt)(BgL_oz00_768); 
BgL_sz00_418 = BgL_sz00_769; 
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_arg1783z00_421;
{ /* ./Jvm/peephole.scm 4 */
int BgL_auxz00_1241;
BgL_auxz00_1241 = 
(int)(((long)0)); 
BgL_arg1783z00_421 = 
STRUCT_REF(BgL_sz00_418, BgL_auxz00_1241); } 
{ /* ./Jvm/peephole.scm 4 */
BgL_objectz00_bglt BgL_auxz00_1244;
BgL_auxz00_1244 = 
(BgL_objectz00_bglt)(BgL_oz00_417); 
BGL_OBJECT_WIDENING_SET(BgL_auxz00_1244, BgL_arg1783z00_421); } } 
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_v1036z00_422;
{ /* ./Jvm/peephole.scm 4 */
int BgL_auxz00_1247;
BgL_auxz00_1247 = 
(int)(((long)1)); 
BgL_v1036z00_422 = 
STRUCT_REF(BgL_sz00_418, BgL_auxz00_1247); } 
((((BgL_peepzd2envzd2_bglt)CREF(BgL_oz00_417))->BgL_handlersz00) = ((obj_t)BgL_v1036z00_422), BUNSPEC); } 
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_v1040z00_423;
{ /* ./Jvm/peephole.scm 4 */
int BgL_auxz00_1251;
BgL_auxz00_1251 = 
(int)(((long)2)); 
BgL_v1040z00_423 = 
STRUCT_REF(BgL_sz00_418, BgL_auxz00_1251); } 
((((BgL_peepzd2envzd2_bglt)CREF(BgL_oz00_417))->BgL_paramsz00) = ((obj_t)BgL_v1040z00_423), BUNSPEC); } 
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_v1044z00_424;
{ /* ./Jvm/peephole.scm 4 */
int BgL_auxz00_1255;
BgL_auxz00_1255 = 
(int)(((long)3)); 
BgL_v1044z00_424 = 
STRUCT_REF(BgL_sz00_418, BgL_auxz00_1255); } 
((((BgL_peepzd2envzd2_bglt)CREF(BgL_oz00_417))->BgL_localsz00) = ((obj_t)BgL_v1044z00_424), BUNSPEC); } 
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_v1048z00_425;
{ /* ./Jvm/peephole.scm 4 */
int BgL_auxz00_1259;
BgL_auxz00_1259 = 
(int)(((long)4)); 
BgL_v1048z00_425 = 
STRUCT_REF(BgL_sz00_418, BgL_auxz00_1259); } 
((((BgL_peepzd2envzd2_bglt)CREF(BgL_oz00_417))->BgL_codez00) = ((obj_t)BgL_v1048z00_425), BUNSPEC); } 
BgL_auxz00_1240 = BgL_oz00_417; 
return 
(obj_t)(BgL_auxz00_1240);} } } 
}



/* object->struct-peep-env1079 */
obj_t BGl_objectzd2ze3structzd2peepzd2env1079z31zzjvm_peepholez00(obj_t BgL_envz00_770, obj_t BgL_obj1032z00_771)
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 4 */
{ 
BgL_peepzd2envzd2_bglt BgL_obj1032z00_403;
BgL_obj1032z00_403 = 
(BgL_peepzd2envzd2_bglt)(BgL_obj1032z00_771); 
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_res1033z00_406;
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_keyz00_730;int BgL_lenz00_731;
BgL_keyz00_730 = 
CNST_TABLE_REF(((long)13)); 
BgL_lenz00_731 = 
(int)(((long)5)); 
BgL_res1033z00_406 = 
make_struct(BgL_keyz00_730, BgL_lenz00_731, BUNSPEC); } 
{ /* ./Jvm/peephole.scm 4 */
int BgL_kz00_734;
BgL_kz00_734 = 
(int)(((long)0)); 
STRUCT_SET(BgL_res1033z00_406, BgL_kz00_734, BFALSE); } 
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_arg1755z00_408;
BgL_arg1755z00_408 = 
(((BgL_peepzd2envzd2_bglt)CREF(BgL_obj1032z00_403))->BgL_handlersz00); 
{ /* ./Jvm/peephole.scm 4 */
int BgL_kz00_738;
BgL_kz00_738 = 
(int)(((long)1)); 
STRUCT_SET(BgL_res1033z00_406, BgL_kz00_738, BgL_arg1755z00_408); } } 
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_arg1761z00_410;
BgL_arg1761z00_410 = 
(((BgL_peepzd2envzd2_bglt)CREF(BgL_obj1032z00_403))->BgL_paramsz00); 
{ /* ./Jvm/peephole.scm 4 */
int BgL_kz00_742;
BgL_kz00_742 = 
(int)(((long)2)); 
STRUCT_SET(BgL_res1033z00_406, BgL_kz00_742, BgL_arg1761z00_410); } } 
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_arg1767z00_412;
BgL_arg1767z00_412 = 
(((BgL_peepzd2envzd2_bglt)CREF(BgL_obj1032z00_403))->BgL_localsz00); 
{ /* ./Jvm/peephole.scm 4 */
int BgL_kz00_746;
BgL_kz00_746 = 
(int)(((long)3)); 
STRUCT_SET(BgL_res1033z00_406, BgL_kz00_746, BgL_arg1767z00_412); } } 
{ /* ./Jvm/peephole.scm 4 */
obj_t BgL_arg1772z00_414;
BgL_arg1772z00_414 = 
(((BgL_peepzd2envzd2_bglt)CREF(BgL_obj1032z00_403))->BgL_codez00); 
{ /* ./Jvm/peephole.scm 4 */
int BgL_kz00_750;
BgL_kz00_750 = 
(int)(((long)4)); 
STRUCT_SET(BgL_res1033z00_406, BgL_kz00_750, BgL_arg1772z00_414); } } 
return BgL_res1033z00_406;} } } 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zzjvm_peepholez00()
{ AN_OBJECT;
{ /* ./Jvm/peephole.scm 1 */
return 
BGl_modulezd2initializa7ationz75zzengine_paramz00(((long)14260), "jvm_peephole");} 
}

