rendered paste body/* Generated from foo.scm by the CHICKEN compiler
http://www.call-with-current-continuation.org
2007-10-29 01:48
Version 2.6 - linux-unix-gnu-x86 - [ libffi dload ]
command line: foo.scm
used units: library eval extras
*/
#include "chicken.h"
static C_PTABLE_ENTRY *create_ptable(void);
C_noret_decl(C_library_toplevel)
C_externimport void C_ccall C_library_toplevel(C_word c,C_word d,C_word k) C_noret;
C_noret_decl(C_eval_toplevel)
C_externimport void C_ccall C_eval_toplevel(C_word c,C_word d,C_word k) C_noret;
C_noret_decl(C_extras_toplevel)
C_externimport void C_ccall C_extras_toplevel(C_word c,C_word d,C_word k) C_noret;
static C_TLS C_word lf[4];
C_noret_decl(C_toplevel)
C_externexport void C_ccall C_toplevel(C_word c,C_word t0,C_word t1) C_noret;
C_noret_decl(f_10)
static void C_ccall f_10(C_word c,C_word t0,C_word t1) C_noret;
C_noret_decl(f_13)
static void C_ccall f_13(C_word c,C_word t0,C_word t1) C_noret;
C_noret_decl(f_16)
static void C_ccall f_16(C_word c,C_word t0,C_word t1) C_noret;
C_noret_decl(f_19)
static void C_ccall f_19(C_word c,C_word t0,C_word t1) C_noret;
C_noret_decl(f_25)
static void C_ccall f_25(C_word c,C_word t0,C_word t1) C_noret;
C_noret_decl(f_22)
static void C_ccall f_22(C_word c,C_word t0,C_word t1) C_noret;
C_noret_decl(tr2)
static void C_fcall tr2(C_proc2 k) C_regparm C_noret;
C_regparm static void C_fcall tr2(C_proc2 k){
C_word t1=C_pick(0);
C_word t0=C_pick(1);
C_adjust_stack(-2);
(k)(2,t0,t1);}
/* toplevel */
static C_TLS int toplevel_initialized=0;
C_main_entry_point
C_noret_decl(toplevel_trampoline)
static void C_fcall toplevel_trampoline(void *dummy) C_regparm C_noret;
C_regparm static void C_fcall toplevel_trampoline(void *dummy){
C_toplevel(2,C_SCHEME_UNDEFINED,C_restore);}
void C_ccall C_toplevel(C_word c,C_word t0,C_word t1){
C_word tmp;
C_word t2;
C_word t3;
C_word *a;
if(toplevel_initialized) C_kontinue(t1,C_SCHEME_UNDEFINED);
else C_toplevel_entry(C_text("toplevel"));
C_resize_stack(131072);
C_check_nursery_minimum(3);
if(!C_demand(3)){
C_save(t1);
C_reclaim((void*)toplevel_trampoline,NULL);}
toplevel_initialized=1;
if(!C_demand_2(20)){
C_save(t1);
C_rereclaim2(20*sizeof(C_word), 1);
t1=C_restore;}
a=C_alloc(3);
C_initialize_lf(lf,4);
lf[0]=C_h_intern(&lf[0],25,"\003sysimplicit-exit-handler");
lf[1]=C_h_intern(&lf[1],7,"display");
lf[2]=C_static_string(C_heaptop,3,"foo");
lf[3]=C_static_lambda_info(C_heaptop,10,"(toplevel)");
C_register_lf2(lf,4,create_ptable());
t2=(*a=C_CLOSURE_TYPE|2,a[1]=(C_word)f_10,a[2]=t1,tmp=(C_word)a,a+=3,tmp);
C_library_toplevel(2,C_SCHEME_UNDEFINED,t2);}
/* k8 */
static void C_ccall f_10(C_word c,C_word t0,C_word t1){
C_word tmp;
C_word t2;
C_word t3;
C_word ab[3],*a=ab;
C_check_for_interrupt;
if(!C_stack_probe(&a)){
C_save_and_reclaim((void*)tr2,(void*)f_10,2,t0,t1);}
t2=(*a=C_CLOSURE_TYPE|2,a[1]=(C_word)f_13,a[2]=((C_word*)t0)[2],tmp=(C_word)a,a+=3,tmp);
C_eval_toplevel(2,C_SCHEME_UNDEFINED,t2);}
/* k11 in k8 */
static void C_ccall f_13(C_word c,C_word t0,C_word t1){
C_word tmp;
C_word t2;
C_word t3;
C_word ab[3],*a=ab;
C_check_for_interrupt;
if(!C_stack_probe(&a)){
C_save_and_reclaim((void*)tr2,(void*)f_13,2,t0,t1);}
t2=(*a=C_CLOSURE_TYPE|2,a[1]=(C_word)f_16,a[2]=((C_word*)t0)[2],tmp=(C_word)a,a+=3,tmp);
C_extras_toplevel(2,C_SCHEME_UNDEFINED,t2);}
/* k14 in k11 in k8 */
static void C_ccall f_16(C_word c,C_word t0,C_word t1){
C_word tmp;
C_word t2;
C_word t3;
C_word ab[3],*a=ab;
C_check_for_interrupt;
if(!C_stack_probe(&a)){
C_save_and_reclaim((void*)tr2,(void*)f_16,2,t0,t1);}
t2=(*a=C_CLOSURE_TYPE|2,a[1]=(C_word)f_19,a[2]=((C_word*)t0)[2],tmp=(C_word)a,a+=3,tmp);
C_trace("foo.scm: 1 display");
t3=*((C_word*)lf[1]+1);
((C_proc3)C_retrieve_proc(t3))(3,t3,t2,lf[2]);}
/* k17 in k14 in k11 in k8 */
static void C_ccall f_19(C_word c,C_word t0,C_word t1){
C_word tmp;
C_word t2;
C_word t3;
C_word t4;
C_word ab[6],*a=ab;
C_check_for_interrupt;
if(!C_stack_probe(&a)){
C_save_and_reclaim((void*)tr2,(void*)f_19,2,t0,t1);}
t2=(*a=C_CLOSURE_TYPE|2,a[1]=(C_word)f_22,a[2]=((C_word*)t0)[2],tmp=(C_word)a,a+=3,tmp);
t3=(*a=C_CLOSURE_TYPE|2,a[1]=(C_word)f_25,a[2]=t2,tmp=(C_word)a,a+=3,tmp);
C_trace("##sys#implicit-exit-handler");
t4=C_retrieve(lf[0]);
((C_proc2)C_retrieve_proc(t4))(2,t4,t3);}
/* k23 in k17 in k14 in k11 in k8 */
static void C_ccall f_25(C_word c,C_word t0,C_word t1){
C_word tmp;
C_word t2;
C_word *a;
t2=t1;
((C_proc2)C_retrieve_proc(t2))(2,t2,((C_word*)t0)[2]);}
/* k20 in k17 in k14 in k11 in k8 */
static void C_ccall f_22(C_word c,C_word t0,C_word t1){
C_word tmp;
C_word t2;
C_word *a;
t2=((C_word*)t0)[2];
((C_proc2)(void*)(*((C_word*)t2+1)))(2,t2,C_SCHEME_UNDEFINED);}
#ifdef C_ENABLE_PTABLES
static C_PTABLE_ENTRY ptable[8] = {
{"toplevelfoo.scm",(void*)C_toplevel},
{"f_10foo.scm",(void*)f_10},
{"f_13foo.scm",(void*)f_13},
{"f_16foo.scm",(void*)f_16},
{"f_19foo.scm",(void*)f_19},
{"f_25foo.scm",(void*)f_25},
{"f_22foo.scm",(void*)f_22},
{NULL,NULL}};
#endif
static C_PTABLE_ENTRY *create_ptable(void){
#ifdef C_ENABLE_PTABLES
return ptable;
#else
return NULL;
#endif
}
/* end of file */