[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Profiling options in Franz Lisp. Opus 38.91. UoM Var. 3.5.
- To: franz-friends@Berkeley
- Subject: Profiling options in Franz Lisp. Opus 38.91. UoM Var. 3.5.
- From: prlb2!vauclair@seismo.ARPA (Marc Vauclair)
- Date: Fri, 5 Apr 85 12:36:51 GMT
- Original-date: Fri, 5 Apr 85 10:36:51 -0200
Does anyone know how to set up profiling in Franz Lisp ?
We have Franz Lisp of University of Maryland : Opus 38.91, UoM Variation 3.5.
I have already made the following modifications :
1) as stated in the makefile : ../franz/vax/Makefile I have removed the #
in :
------------------------------------------------------------------------------
ProfFlag = # -XP
ProfFlag2 = # -DPROF
------------------------------------------------------------------------------
giving :
------------------------------------------------------------------------------
ProfFlag = -XP
ProfFlag2 = -DPROF
------------------------------------------------------------------------------
2) I've changed in ../franz/vax/Makefile the line :
------------------------------------------------------------------------------
/lib/cpp $< -I../h |\
------------------------------------------------------------------------------
to :
------------------------------------------------------------------------------
/lib/cpp ${ProfFlag2} $< -I../h |\
------------------------------------------------------------------------------
3) I've changed in ../franz/vax/Makefile/qfuncl.c the lines :
------------------------------------------------------------------------------
#ifdef PROF
.set indx,0
#define Profile \
movab prbuf+indx,r0 \
.set indx,indx+4 \
jsb mcount
#define Profile2 \
movl r0,r5 \
Profile \
movl r5,r0
#else
#define Profile
#define Profile2
#endif
------------------------------------------------------------------------------
to :
------------------------------------------------------------------------------
#ifdef PROF
.set indx,0
#define Profile \
movab prbuf+indx,r0 ; \
.set indx,indx+4 ; \
jsb mcount
#define Profile2 \
movl r0,r5 ; \
Profile ; \
movl r5,r0
#else
#define Profile
#define Profile2
#endif
------------------------------------------------------------------------------
After all these modifications, we have the following error message when
making it slow :
------------------------------------------------------------------------------
ld -x -o rawlisp -e start ../low.o ../lowaux.o crt0.o ../alloc.o ../data.o bigmath.o qfuncl.o vax.o ../lisp.o ../eval.o ../eval2.o ../inits.o ../io.o ../error.o ../sysat.o ../lam1.o ../lam2.o ../lam3.o ../lam4.o ../lam5.o ../lam6.o ../lam7.o ../lam8.o
../lam9.o ../lamr.o ../lamp.o ../fex1.o ../fex2.o ../fex3.o ../fex4.o ../fexr.o ../fpipe.o ../subbig.o ../pbignum.o ../divbig.o ../ffasl.o ../fasl.o ../trace.o ../evalf.o ../frame.o ../lamgc.o ../lamuom.o ../hash.o -lm -lc -ltermlib
mcount: ld:/lib/libc.a(mon.o): multiply defined
*** Error code 2
Stop.
*** Error code 1
Stop.
------------------------------------------------------------------------------