gcl-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gcl-devel] Re: [axiom] Gcl roadmap


From: Camm Maguire
Subject: Re: [Gcl-devel] Re: [axiom] Gcl roadmap
Date: 11 Jun 2002 21:07:52 -0400

Greetings!  It would be straightforward to add the output of objdump
-d to gcl's disassemble, should that prove useful.  Its roughly the
output you are seeing with cmucl.  Any thoughts on the list?  objdump
available in mingw?

take care,

root <address@hidden> writes:

> Yes, it is. However note difference between GCL and CMUCL:
> 
> GCL (GNU Common Lisp)  Version(2.4.0) Mon Mar  4 22:59:00 EST 2002
> Licensed under GNU Library General Public License
> Contains Enhancements by W. Schelter
> 
> >(defun foo (x y ) (+ x y))
> 
> FOO
> 
> >(disassemble 'foo)
> 
> Compiling gazonk0.lsp.
> End of Pass 1.  
> 
> #include <cmpinclude.h>
> #include "gazonk0.h"
> init_gazonk0(){do_init(VV);}
> /*    function definition for FOO     */
> 
> static L1()
> {register object *base=vs_base;
>       register object *sup=base+VM1; VC1
>       vs_check;
>       {object V1;
>       object V2;
>       V1=(base[0]);
>       V2=(base[1]);
>       vs_top=sup;
> TTL:;
>       base[2]= number_plus((V1),(V2));
>       vs_top=(vs_base=base+2)+1;
>       return;
>       }
> }
> 
> #ifdef SYSTEM_SPECIAL_INIT
> SYSTEM_SPECIAL_INIT
> #endif
> 
> End of Pass 2.  
> OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3
> Finished compiling gazonk0.lsp.
>        
> #(
> #((system::%init . #((system::mf (lisp::quote user::foo) 0) (system::debug 
> (lisp::quote user::foo) (lisp::quote (user::x user::y))))))
> )
> 
> static L1();
> #define VC1
> #define VM1 3
> static char * VVi[1]={
> #define Cdata VV[0]
> (char *)(L1)
> };
> #define VV ((object *)VVi)
> T
> 
> >(bye)
> address@hidden Axiom]# lisp
> CMU Common Lisp release x86-linux 2.4.19  8 February 2000 build 456, running 
> on localhost.localdomain
> Send bug reports and questions to your local CMU CL maintainer, 
> or to address@hidden
> or to address@hidden (prefered)
> 
> type (help) for help, (quit) to exit, and (demo) to see the demos
> 
> Loaded subsystems:
>     Python 1.0, target Intel x86
>     CLOS based on PCL version:  September 16 92 PCL (f)
> * (defun foo (x y) (+ x y))
> 
> FOO
> * (disassemble 'foo)
> Compiling LAMBDA (X Y): 
> Compiling Top-Level Form: 
> 
> 48035B20:       .ENTRY "LAMBDA (X Y)"(x y)   ; (FUNCTION (T T) NUMBER)
>       38:       POP   DWORD PTR [EBP-8]
>       3B:       LEA   ESP, [EBP-32]
> 
>       3E:       CMP   ECX, 8
>       41:       JNE   L0
>       43:       MOV   [EBP-12], EDX
>       46:       MOV   [EBP-16], EDI
>       49:       MOV   EDX, [EBP-12]          ; No-arg-parsing entry point
>       4C:       MOV   EDI, [EBP-16]
>       4F:       CALL  #x100001C8
>       54:       MOV   ESP, EBX
>       56:       MOV   ECX, [EBP-8]
>       59:       MOV   EAX, [EBP-4]
>       5C:       ADD   ECX, 2
>       5F:       MOV   ESP, EBP
>       61:       MOV   EBP, EAX
>       63:       JMP   ECX
>       65:       NOP
>       66:       NOP
>       67:       NOP
>       68: L0:   BREAK 10                     ; Error trap
>       6A:       BYTE  #x02
>       6B:       BYTE  #x19                   ; INVALID-ARGUMENT-COUNT-ERROR
>       6C:       BYTE  #x4D                   ; ECX
> 
> Tim
> 
> _______________________________________________
> Gcl-devel mailing list
> address@hidden
> http://mail.gnu.org/mailman/listinfo/gcl-devel
> 
> 

-- 
Camm Maguire                                            address@hidden
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah



reply via email to

[Prev in Thread] Current Thread [Next in Thread]