Article View: fj.lang.lisp
Article #514Re: AKCL compiler
From: Hisao Kuroda
Date: Wed, 12 Feb 1992 03:53
Date: Wed, 12 Feb 1992 03:53
108 lines
3098 bytes
3098 bytes
$@9uED!w?tM}%7%9%F%`$G$9!#(J
In article <UZUHARA.92Feb6183515@wsrs2.trl.ibm.com> uzuhara@trl.ibm.co.jp (Shigeru UZUHARA) writes:
;
;AKCL($@$G$-$k$@$1:G?7HG$N(J)$@$r<j85$K$*;}$A$NJ}$K(J
;$@$*4j$$$,$"$k$N$G$9$,!D(J
;$@<!$N%W%m%0%i%`$r(J Safety=0 $@$G%3%s%Q%$%k$7$?7k2L!"$I$s$J(J
;.c$@%U%!%$%k$,$G$-$k$+65$($F$$$?$@$1$J$$$G$7$g$&$+!)(J
;
;
;(defun afo (x y &aux z)
; (setf z (car y))
; (setf (car y) nil)
; (if (null x)
; y
; (prog1
; (cons (car x) (afo (cdr x) y))
; (bfo z))))
;
$@$3$s$J$N$G$$$$$N$G$7$g$&$+!)(J
dw@1% kcl
AKCL (Austin Kyoto Common Lisp) Version(1.603) 1992$@G/(J02$@7n(J01$@F|(J($@EZ(J) 00$@;~(J23$@J,(J14$@IC(J JST
Contains Enhancements by W. Schelter
>(defun afo (x y &aux z)
(setf z (car y))
(setf (car y) nil)
(if (null x)
y
(prog1
(cons (car x) (afo (cdr x) y))
(bfo z))))
AFO
>(disassemble 'afo)
Compiling gazonk0.lsp.
End of Pass 1.
#include <cmpinclude.h>
#include "gazonk0.h"
init_gazonk0(){do_init(VV);}
/* function definition for AFO */
static L1()
{register object *base=vs_base;
register object *sup=base+VM1; VC1
vs_check;
{object V1;
register object V2;
V1=(base[0]);
V2=(base[1]);
vs_top=sup;
TTL:;
{object V3;
V3= Cnil;
V3= CMPcar((V2));
(V2)->c.c_car = Cnil;
if(((V1))!=Cnil){
goto T7;}
base[2]= (V2);
vs_top=(vs_base=base+2)+1;
return;
T7:;
{object V6;
V7= CMPcar((V1));
base[2]= CMPcdr((V1));
base[3]= (V2);
vs_top=(vs_base=base+2)+2;
(void) (*Lnk0)();
vs_top=sup;
V8= vs_base[0];
V6= make_cons(/* INLINE-ARGS */V7,V8);
base[2]= (V3);
vs_top=(vs_base=base+2)+1;
(void) (*Lnk1)();
vs_top=sup;
base[2]= (V6);
vs_top=(vs_base=base+2)+1;
return;}}
}
}
static LnkT1(){ call_or_link(VV[1],&Lnk1);} /* BFO */
static LnkT0(){ call_or_link(VV[0],&Lnk0);} /* AFO */
End of Pass 2.
OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3
Finished compiling gazonk0.lsp.
#(
#(user::afo user::bfo (system::%init . #((system::warn-version 603) (system::mf (lisp::quote user::afo) 0) (system::debug (lisp::quote user::afo) (lisp::quote (user::x user::y))))))
)
static L1();
#define VC1 object V8 ,V7;
#define VM1 4
static char * VVi[3]={
#define Cdata VV[2]
(char *)(L1)
};
#define VV ((object *)VVi)
static LnkT1() ;
static (*Lnk1)() = LnkT1;
static LnkT0() ;
static (*Lnk0)() = LnkT0;
T
>
Technical Details
Message-ID:
<368@msisun.msi.co.jp>Path:
arc1-ca.pugleaf.net!sparky!uunet!sun-barr!ccut!wnoc-tyo-news!sh.wide!kogwy!msisun!kurodaReferences:
<UZUHARA.92Feb6183515@wsrs2.trl.ibm.com>Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS X-Google-Thread: 1421c0,d03b4a1a9f5db2a3,start X-Google-Attributes: gid1421c0,public X-Google-ArrivalTime: 1992-02-15 21:54:18 PST Path: arc1-ca.pugleaf.net!sparky!uunet!sun-barr!ccut!wnoc-tyo-news!sh.wide!kogwy!msisun!kuroda From: kuroda@msisun.msi.co.jp (Hisao Kuroda) Newsgroups: fj.lang.lisp Subject: Re: AKCL compiler Message-ID: <368@msisun.msi.co.jp> Date: 12 Feb 92 03:53:16 GMT References: <UZUHARA.92Feb6183515@wsrs2.trl.ibm.com> Distribution: fj Organization: MSI.Inc. Shinjyuku-ku,Tokyo,JAPAN Lines: 108 In-reply-to: uzuhara@trl.ibm.co.jp's message of 6 Feb 92 09:35:15 GMT