/*===========================================================================*/
/*   (Llib/bit.scm)                                                          */
/*   Bigloo (2.6b)                                                           */
/*   Inria -- Sophia Antipolis (c)       Mon Dec 15 12:14:36 CET 2003        */
/*===========================================================================*/
/* COMPILATION: (/users/serrano/prgm/project/bigloo/bin/bigloo -O4 -mklib -cc gcc-2.95 -fsharing -q -s -copt -DBGL_NO_PIC -unsafe -c Llib/bit.scm -indent -o objs/obj_u/Llib/bit.c)*/
/* GC selection */
#define THE_GC BOEHM_GC

#include <bigloo.h>
#include <signal.h>

static obj_t BGl__bitzd2or1567zd2zz__bitz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zz__bitz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
BGL_EXPORTED_DECL long BGl_bitzd2rshzd2zz__bitz00(long, long);
BGL_EXPORTED_DECL long BGl_bitzd2lshzd2zz__bitz00(long, long);
static obj_t BGl__bitzd2ursh1577zd2zz__bitz00(obj_t, obj_t, obj_t);
static obj_t BGl_importedzd2moduleszd2initz00zz__bitz00();
static obj_t BGl__bitzd2rsh1575zd2zz__bitz00(obj_t, obj_t, obj_t);
static obj_t BGl_requirezd2initializa7ationz75zz__bitz00 = BUNSPEC;
BGL_EXPORTED_DECL long BGl_bitzd2andzd2zz__bitz00(long, long);
BGL_EXPORTED_DECL long BGl_bitzd2orzd2zz__bitz00(long, long);
static obj_t BGl__bitzd2not1573zd2zz__bitz00(obj_t, obj_t);
static obj_t BGl__bitzd2and1569zd2zz__bitz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL unsigned long BGl_bitzd2urshzd2zz__bitz00(unsigned long, unsigned long);
static obj_t BGl__bitzd2xor1571zd2zz__bitz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL long BGl_bitzd2notzd2zz__bitz00(long);
static obj_t BGl__bitzd2lsh1579zd2zz__bitz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL long BGl_bitzd2xorzd2zz__bitz00(long, long);
static obj_t *__cnst;


DEFINE_EXPORT_PROCEDURE( BGl_bitzd2orzd2envz00zz__bitz00, BgL_bgl__bitza7d2or1567za7d2za7za7__bitza7001608za7, BGl__bitzd2or1567zd2zz__bitz00, 0L, 2 );
DEFINE_EXPORT_PROCEDURE( BGl_bitzd2rshzd2envz00zz__bitz00, BgL_bgl__bitza7d2rsh1575za7d2za7za7__bitza7001609za7, BGl__bitzd2rsh1575zd2zz__bitz00, 0L, 2 );
DEFINE_EXPORT_PROCEDURE( BGl_bitzd2notzd2envz00zz__bitz00, BgL_bgl__bitza7d2not1573za7d2za7za7__bitza7001610za7, BGl__bitzd2not1573zd2zz__bitz00, 0L, 1 );
DEFINE_EXPORT_PROCEDURE( BGl_bitzd2andzd2envz00zz__bitz00, BgL_bgl__bitza7d2and1569za7d2za7za7__bitza7001611za7, BGl__bitzd2and1569zd2zz__bitz00, 0L, 2 );
DEFINE_EXPORT_PROCEDURE( BGl_bitzd2xorzd2envz00zz__bitz00, BgL_bgl__bitza7d2xor1571za7d2za7za7__bitza7001612za7, BGl__bitzd2xor1571zd2zz__bitz00, 0L, 2 );
DEFINE_EXPORT_PROCEDURE( BGl_bitzd2lshzd2envz00zz__bitz00, BgL_bgl__bitza7d2lsh1579za7d2za7za7__bitza7001613za7, BGl__bitzd2lsh1579zd2zz__bitz00, 0L, 2 );
DEFINE_EXPORT_PROCEDURE( BGl_bitzd2urshzd2envz00zz__bitz00, BgL_bgl__bitza7d2ursh1577za7d2za7za7__bitza7001614za7, BGl__bitzd2ursh1577zd2zz__bitz00, 0L, 2 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zz__bitz00(long BgL_checksumz00_463, char * BgL_fromz00_464)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zz__bitz00))
{ 
BGl_requirezd2initializa7ationz75zz__bitz00 = 
BBOOL(((bool_t)0)); 
BGl_importedzd2moduleszd2initz00zz__bitz00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* bit-or */
BGL_EXPORTED_DEF long BGl_bitzd2orzd2zz__bitz00(long BgL_xz00_1, long BgL_yz00_2)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 75 */
return 
(BgL_xz00_1 | BgL_yz00_2);} 
}



/* _bit-or1567 */
obj_t BGl__bitzd2or1567zd2zz__bitz00(obj_t BgL_envz00_430, obj_t BgL_xz00_431, obj_t BgL_yz00_432)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 75 */
{ /* ./Llib/bit.scm 76 */
long BgL_auxz00_470;
{ /* ./Llib/bit.scm 76 */
long BgL_auxz00_473;long BgL_auxz00_471;
BgL_auxz00_473 = 
(long)CINT(BgL_yz00_432); 
BgL_auxz00_471 = 
(long)CINT(BgL_xz00_431); 
BgL_auxz00_470 = 
(BgL_auxz00_471 | BgL_auxz00_473); } 
return 
BINT(BgL_auxz00_470);} } 
}



/* bit-and */
BGL_EXPORTED_DEF long BGl_bitzd2andzd2zz__bitz00(long BgL_xz00_3, long BgL_yz00_4)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 81 */
return 
(BgL_xz00_3 & BgL_yz00_4);} 
}



/* _bit-and1569 */
obj_t BGl__bitzd2and1569zd2zz__bitz00(obj_t BgL_envz00_433, obj_t BgL_xz00_434, obj_t BgL_yz00_435)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 81 */
{ /* ./Llib/bit.scm 82 */
long BgL_auxz00_478;
{ /* ./Llib/bit.scm 82 */
long BgL_auxz00_481;long BgL_auxz00_479;
BgL_auxz00_481 = 
(long)CINT(BgL_yz00_435); 
BgL_auxz00_479 = 
(long)CINT(BgL_xz00_434); 
BgL_auxz00_478 = 
(BgL_auxz00_479 & BgL_auxz00_481); } 
return 
BINT(BgL_auxz00_478);} } 
}



/* bit-xor */
BGL_EXPORTED_DEF long BGl_bitzd2xorzd2zz__bitz00(long BgL_xz00_5, long BgL_yz00_6)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 87 */
return 
(BgL_xz00_5 ^ BgL_yz00_6);} 
}



/* _bit-xor1571 */
obj_t BGl__bitzd2xor1571zd2zz__bitz00(obj_t BgL_envz00_436, obj_t BgL_xz00_437, obj_t BgL_yz00_438)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 87 */
{ /* ./Llib/bit.scm 88 */
long BgL_auxz00_486;
{ /* ./Llib/bit.scm 88 */
long BgL_auxz00_489;long BgL_auxz00_487;
BgL_auxz00_489 = 
(long)CINT(BgL_yz00_438); 
BgL_auxz00_487 = 
(long)CINT(BgL_xz00_437); 
BgL_auxz00_486 = 
(BgL_auxz00_487 ^ BgL_auxz00_489); } 
return 
BINT(BgL_auxz00_486);} } 
}



/* bit-not */
BGL_EXPORTED_DEF long BGl_bitzd2notzd2zz__bitz00(long BgL_xz00_7)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 93 */
return 
~(BgL_xz00_7);} 
}



/* _bit-not1573 */
obj_t BGl__bitzd2not1573zd2zz__bitz00(obj_t BgL_envz00_439, obj_t BgL_xz00_440)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 93 */
{ /* ./Llib/bit.scm 94 */
long BgL_auxz00_494;
{ /* ./Llib/bit.scm 94 */
long BgL_auxz00_495;
BgL_auxz00_495 = 
(long)CINT(BgL_xz00_440); 
BgL_auxz00_494 = 
~(BgL_auxz00_495); } 
return 
BINT(BgL_auxz00_494);} } 
}



/* bit-rsh */
BGL_EXPORTED_DEF long BGl_bitzd2rshzd2zz__bitz00(long BgL_xz00_8, long BgL_yz00_9)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 99 */
{ /* ./Llib/bit.scm 100 */
int BgL_auxz00_499;
BgL_auxz00_499 = 
(int)(BgL_yz00_9); 
return 
(BgL_xz00_8 >> BgL_auxz00_499);} } 
}



/* _bit-rsh1575 */
obj_t BGl__bitzd2rsh1575zd2zz__bitz00(obj_t BgL_envz00_441, obj_t BgL_xz00_442, obj_t BgL_yz00_443)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 99 */
{ /* ./Llib/bit.scm 100 */
long BgL_auxz00_502;
{ /* ./Llib/bit.scm 100 */
int BgL_auxz00_505;long BgL_auxz00_503;
{ /* ./Llib/bit.scm 100 */
long BgL_auxz00_506;
BgL_auxz00_506 = 
(long)CINT(BgL_yz00_443); 
BgL_auxz00_505 = 
(int)(BgL_auxz00_506); } 
BgL_auxz00_503 = 
(long)CINT(BgL_xz00_442); 
BgL_auxz00_502 = 
(BgL_auxz00_503 >> BgL_auxz00_505); } 
return 
BINT(BgL_auxz00_502);} } 
}



/* bit-ursh */
BGL_EXPORTED_DEF unsigned long BGl_bitzd2urshzd2zz__bitz00(unsigned long BgL_xz00_10, unsigned long BgL_yz00_11)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 105 */
{ /* ./Llib/bit.scm 106 */
int BgL_auxz00_511;
BgL_auxz00_511 = 
(int)(BgL_yz00_11); 
return 
(BgL_xz00_10 >> BgL_auxz00_511);} } 
}



/* _bit-ursh1577 */
obj_t BGl__bitzd2ursh1577zd2zz__bitz00(obj_t BgL_envz00_444, obj_t BgL_xz00_445, obj_t BgL_yz00_446)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 105 */
{ /* ./Llib/bit.scm 106 */
unsigned long BgL_auxz00_514;
{ /* ./Llib/bit.scm 106 */
int BgL_auxz00_517;unsigned long BgL_auxz00_515;
{ /* ./Llib/bit.scm 106 */
unsigned long BgL_auxz00_518;
BgL_auxz00_518 = 
(unsigned long)CINT(BgL_yz00_446); 
BgL_auxz00_517 = 
(int)(BgL_auxz00_518); } 
BgL_auxz00_515 = 
(unsigned long)CINT(BgL_xz00_445); 
BgL_auxz00_514 = 
(BgL_auxz00_515 >> BgL_auxz00_517); } 
return 
BINT(BgL_auxz00_514);} } 
}



/* bit-lsh */
BGL_EXPORTED_DEF long BGl_bitzd2lshzd2zz__bitz00(long BgL_xz00_12, long BgL_yz00_13)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 111 */
{ /* ./Llib/bit.scm 112 */
int BgL_auxz00_523;
BgL_auxz00_523 = 
(int)(BgL_yz00_13); 
return 
(BgL_xz00_12 << BgL_auxz00_523);} } 
}



/* _bit-lsh1579 */
obj_t BGl__bitzd2lsh1579zd2zz__bitz00(obj_t BgL_envz00_447, obj_t BgL_xz00_448, obj_t BgL_yz00_449)
{ AN_OBJECT;
{ /* ./Llib/bit.scm 111 */
{ /* ./Llib/bit.scm 112 */
long BgL_auxz00_526;
{ /* ./Llib/bit.scm 112 */
int BgL_auxz00_529;long BgL_auxz00_527;
{ /* ./Llib/bit.scm 112 */
long BgL_auxz00_530;
BgL_auxz00_530 = 
(long)CINT(BgL_yz00_449); 
BgL_auxz00_529 = 
(int)(BgL_auxz00_530); } 
BgL_auxz00_527 = 
(long)CINT(BgL_xz00_448); 
BgL_auxz00_526 = 
(BgL_auxz00_527 << BgL_auxz00_529); } 
return 
BINT(BgL_auxz00_526);} } 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zz__bitz00()
{ AN_OBJECT;
{ /* ./Llib/bit.scm 14 */
return 
BGl_modulezd2initializa7ationz75zz__errorz00(((long)11084), "__bit");} 
}

