From: <cli...@li...> - 2008-03-21 19:23:01
|
Send clisp-cvs mailing list submissions to cli...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/clisp-cvs or, via email, send a message with subject or body 'help' to cli...@li... You can reach the person managing the list at cli...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of clisp-cvs digest..." CLISP CVS commits for today Today's Topics: 1. clisp/src ChangeLog, 1.6087, 1.6088 eval.d, 1.249, 1.250 lightning.c, 1.13, 1.14 (Sam Steingold) 2. clisp/src ChangeLog, 1.6088, 1.6089 debug.d, 1.112, 1.113 constsym.d, 1.363, 1.364 lispbibl.d, 1.773, 1.774 (Sam Steingold) 3. clisp/src debug.d,1.113,1.114 (Sam Steingold) ---------------------------------------------------------------------- Message: 1 Date: Fri, 21 Mar 2008 15:38:47 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src ChangeLog, 1.6087, 1.6088 eval.d, 1.249, 1.250 lightning.c, 1.13, 1.14 To: cli...@li... Message-ID: <E1J...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv5497/src Modified Files: ChangeLog eval.d lightning.c Log Message: (cclosure_run) [USE_JITC]: new local inline, use in lightning.c instead of interpret_bytecode_ Index: eval.d =================================================================== RCS file: /cvsroot/clisp/clisp/src/eval.d,v retrieving revision 1.249 retrieving revision 1.250 diff -u -d -r1.249 -r1.250 --- eval.d 16 Mar 2008 15:16:43 -0000 1.249 +++ eval.d 21 Mar 2008 15:38:44 -0000 1.250 @@ -315,10 +315,14 @@ /* replacement for interpret_bytecode_ */ local /*maygc*/ Values jitc_run (object closure_in, Sbvector codeptr, const uintB* byteptr_in); +local inline /*maygc*/ Values cclosure_run (object closure_in, Sbvector codevec, + const uintB* byteptr_in) { + if (cclosure_jitc_p(closure_in)) jitc_run(closure_in,codevec,byteptr_in); + else interpret_bytecode_(closure_in,codevec,byteptr_in); +} #define interpret_bytecode(closure,codevec,index) \ with_saved_back_trace_cclosure(closure, \ - if (cclosure_jitc_p(closure)) jitc_run(closure,TheSbvector(codevec),&TheSbvector(codevec)->data[index]); \ - else interpret_bytecode_(closure,TheSbvector(codevec),&TheSbvector(codevec)->data[index]); ) + cclosure_run(closure,TheSbvector(codevec),&TheSbvector(codevec)->data[index]); ) #else #define interpret_bytecode(closure,codevec,index) \ with_saved_back_trace_cclosure(closure, \ Index: lightning.c =================================================================== RCS file: /cvsroot/clisp/clisp/src/lightning.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -d -r1.13 -r1.14 --- lightning.c 19 Mar 2008 16:08:45 -0000 1.13 +++ lightning.c 21 Mar 2008 15:38:45 -0000 1.14 @@ -722,7 +722,7 @@ jit_addi_p(JIT_R1,JIT_R1,TheSbvector(as_object(0))); \ jit_pusharg_p(JIT_R1); \ jit_pusharg_p(JIT_R0); \ - jit_finish(interpret_bytecode_);); + jit_finish(cclosure_run);); #define jitc_funcallckey() \ jitc_check_stack(); \ jitc_save_backtrace2(value1, STACK,-1, \ @@ -737,7 +737,7 @@ jit_addi_p(JIT_R1,JIT_R1,TheSbvector(as_object(0))); \ jit_pusharg_p(JIT_R1); \ jit_pusharg_p(JIT_R0); \ - jit_finish(interpret_bytecode_);); + jit_finish(cclosure_run);); /* ------------------- (6) Fixnum ----------------------- */ #define jitc_val2fixnumr() \ jit_lshi_ul(JIT_R0,JIT_R2,oint_data_shift); \ @@ -2182,7 +2182,7 @@ jit_pusharg_p(JIT_R0); jit_pusharg_p(JIT_R1); jit_pusharg_p(JIT_R2); - jit_finish(interpret_bytecode_); + jit_finish(cclosure_run); }); jitc_tag_unsafe(); goto next_byte; @@ -2201,7 +2201,7 @@ jit_pusharg_p(JIT_R0); jit_pusharg_p(JIT_R1); jit_pusharg_p(JIT_R2); - jit_finish(interpret_bytecode_); + jit_finish(cclosure_run); }); jitc_get_valuesr_1(); jit_movr_p(JIT_R2,JIT_R0); Index: ChangeLog =================================================================== RCS file: /cvsroot/clisp/clisp/src/ChangeLog,v retrieving revision 1.6087 retrieving revision 1.6088 diff -u -d -r1.6087 -r1.6088 --- ChangeLog 19 Mar 2008 16:15:10 -0000 1.6087 +++ ChangeLog 21 Mar 2008 15:38:43 -0000 1.6088 @@ -1,3 +1,9 @@ +2008-03-21 Sam Steingold <sd...@gn...> + + * eval.d (cclosure_run) [USE_JITC]: new local inline + (interpret_bytecode) [USE_JITC]: use it instead of explicit code + * lightning.c: use it instead of interpret_bytecode_() + 2008-03-19 Sam Steingold <sd...@gn...> * makemake.in (XCFLAGS) [XCC_GCC]: add -falign-functions=4 on all ------------------------------ Message: 2 Date: Fri, 21 Mar 2008 16:20:35 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src ChangeLog, 1.6088, 1.6089 debug.d, 1.112, 1.113 constsym.d, 1.363, 1.364 lispbibl.d, 1.773, 1.774 To: cli...@li... Message-ID: <E1J...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv21070/src Modified Files: ChangeLog debug.d constsym.d lispbibl.d Log Message: (gdb_disassemble_closure): new function for debugging Index: debug.d =================================================================== RCS file: /cvsroot/clisp/clisp/src/debug.d,v retrieving revision 1.112 retrieving revision 1.113 diff -u -d -r1.112 -r1.113 --- debug.d 17 Mar 2008 16:12:07 -0000 1.112 +++ debug.d 21 Mar 2008 16:20:31 -0000 1.113 @@ -1540,12 +1540,20 @@ VALUES1(UL_to_I(show_stack(frame_up_x,frame_limit,start_frame))); } -/* For debugging: From within gdb, type: call ext_show_stack(). +/* For debugging: From within gdb, type: call gdb_show_stack(). Equivalent to (ext:show-stack) from the Lisp prompt. */ -global void ext_show_stack (void) { +global void gdb_show_stack (void) { pushSTACK(unbound); pushSTACK(unbound); pushSTACK(unbound); C_show_stack(); } +/* Fore debugging: From within gdb, type: call gdb_disassemble_closure(obj). + Equivalent to (sys::disassemble-closures (list obj) *standard-output*). */ +extern void gdb_disassemble_closure (object obj) { + pushSTACK(obj); pushSTACK(Symbol_value(S(standard_output))); + funcall(S(disassemble_closures),2); + pushSTACK(Symbol_value(S(standard_output))); terpri(&STACK_0); skipSTACK(1); +} + LISPFUNN(crash,0) { /* (SYSTEM::CRASH) jumps to the debugger sitting in the background. */ abort(); Index: constsym.d =================================================================== RCS file: /cvsroot/clisp/clisp/src/constsym.d,v retrieving revision 1.363 retrieving revision 1.364 diff -u -d -r1.363 -r1.364 --- constsym.d 12 Mar 2008 20:54:42 -0000 1.363 +++ constsym.d 21 Mar 2008 16:20:31 -0000 1.364 @@ -2020,6 +2020,7 @@ #ifdef UNIX LISPSYM(disassemble_use_live_process,"*DISASSEMBLE-USE-LIVE-PROCESS*",system) /* variable in SPVW */ #endif +LISPSYM(disassemble_closures,"DISASSEMBLE-CLOSURES",system) /* function for DEBUG */ /* ---------- FFI ---------- */ #ifdef DYNAMIC_FFI /* LISPSYM(boolean,"BOOLEAN",ffi) */ Index: lispbibl.d =================================================================== RCS file: /cvsroot/clisp/clisp/src/lispbibl.d,v retrieving revision 1.773 retrieving revision 1.774 diff -u -d -r1.773 -r1.774 --- lispbibl.d 18 Mar 2008 22:02:52 -0000 1.773 +++ lispbibl.d 21 Mar 2008 16:20:31 -0000 1.774 @@ -16867,7 +16867,11 @@ /* For debugging: From within gdb, type: call ext_show_stack(). Equivalent to (ext:show-stack) from the Lisp prompt. */ -extern void ext_show_stack (void); +extern void gdb_show_stack (void); + +/* Fore debugging: From within gdb, type: call gdb_disassemble_closure(obj). + Equivalent to (sys::disassemble-closures (list obj) *standard-output*). */ +extern void gdb_disassemble_closure (object obj); /*************************************************************************/ Index: ChangeLog =================================================================== RCS file: /cvsroot/clisp/clisp/src/ChangeLog,v retrieving revision 1.6088 retrieving revision 1.6089 diff -u -d -r1.6088 -r1.6089 --- ChangeLog 21 Mar 2008 15:38:43 -0000 1.6088 +++ ChangeLog 21 Mar 2008 16:20:31 -0000 1.6089 @@ -1,5 +1,12 @@ 2008-03-21 Sam Steingold <sd...@gn...> + * lispbibl.d, debug.d (gdb_show_stack): renamed from ext_show_stack + * lispbibl.d (gdb_disassemble_closure): add protorype + * debug.d (gdb_disassemble_closure): implement + * constsym.d (disassemble_closures): add + +2008-03-21 Sam Steingold <sd...@gn...> + * eval.d (cclosure_run) [USE_JITC]: new local inline (interpret_bytecode) [USE_JITC]: use it instead of explicit code * lightning.c: use it instead of interpret_bytecode_() ------------------------------ Message: 3 Date: Fri, 21 Mar 2008 18:49:46 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src debug.d,1.113,1.114 To: cli...@li... Message-ID: <E1J...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv8322/src Modified Files: debug.d Log Message: formatting Index: debug.d =================================================================== RCS file: /cvsroot/clisp/clisp/src/debug.d,v retrieving revision 1.113 retrieving revision 1.114 diff -u -d -r1.113 -r1.114 --- debug.d 21 Mar 2008 16:20:31 -0000 1.113 +++ debug.d 21 Mar 2008 18:49:43 -0000 1.114 @@ -1102,16 +1102,15 @@ global gcv_object_t* top_of_back_trace_frame (const struct backtrace_t *bt) { var gcv_object_t* stack = bt->bt_stack; var object fun = bt->bt_function; - if (fsubrp(fun)) { - /* FSUBR */ + if (fsubrp(fun)) { /* FSUBR */ var uintW numreq; var uintW numopt; var uintW body_flag; switch ((uintW)posfixnum_to_V(TheFsubr(fun)->argtype)) { - case fsubr_argtype_1_0_nobody: numreq = 1; numopt = 0; body_flag = 0; break; - case fsubr_argtype_2_0_nobody: numreq = 2; numopt = 0; body_flag = 0; break; - case fsubr_argtype_1_1_nobody: numreq = 1; numopt = 1; body_flag = 0; break; - case fsubr_argtype_2_1_nobody: numreq = 2; numopt = 1; body_flag = 0; break; + case fsubr_argtype_1_0_nobody: numreq = 1; numopt = 0; body_flag=0; break; + case fsubr_argtype_2_0_nobody: numreq = 2; numopt = 0; body_flag=0; break; + case fsubr_argtype_1_1_nobody: numreq = 1; numopt = 1; body_flag=0; break; + case fsubr_argtype_2_1_nobody: numreq = 2; numopt = 1; body_flag=0; break; case fsubr_argtype_0_body: numreq = 0; numopt = 0; body_flag = 1; break; case fsubr_argtype_1_body: numreq = 1; numopt = 0; body_flag = 1; break; case fsubr_argtype_2_body: numreq = 2; numopt = 0; body_flag = 1; break; @@ -1119,20 +1118,18 @@ } return stack STACKop (numreq + numopt + body_flag); } - if (subrp(fun)) - /* SUBR */ + if (subrp(fun)) /* SUBR */ return stack STACKop (TheSubr(fun)->req_count + TheSubr(fun)->opt_count + TheSubr(fun)->key_count); if (closurep(fun)) { - if (simple_bit_vector_p(Atype_8Bit,TheClosure(fun)->clos_codevec)) { - /* Compiled-Closure */ - var object codevec = TheClosure(fun)->clos_codevec; + var object codevec = TheClosure(fun)->clos_codevec; + if (simple_bit_vector_p(Atype_8Bit,codevec)) { /* Compiled Closure */ return stack STACKop (TheCodevec(codevec)->ccv_numreq + TheCodevec(codevec)->ccv_numopt + (TheCodevec(codevec)->ccv_flags & bit(0) ? 1 : 0) - + (TheCodevec(codevec)->ccv_flags & bit(7) ? TheCodevec(codevec)->ccv_numkey : 0)); - } else - /* Interpreted-Closure */ + + (TheCodevec(codevec)->ccv_flags & bit(7) + ? TheCodevec(codevec)->ccv_numkey : 0)); + } else /* Interpreted Closure */ return stack; } /* Only SUBRs and functions occur as bt_function. */ ------------------------------ ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ ------------------------------ _______________________________________________ clisp-cvs mailing list cli...@li... https://lists.sourceforge.net/lists/listinfo/clisp-cvs End of clisp-cvs Digest, Vol 23, Issue 21 ***************************************** |