From be9b28064378003b418a76d2dd239f2454c48a1e Mon Sep 17 00:00:00 2001 From: toy <toy> Date: Tue, 18 Feb 2003 18:26:41 +0000 Subject: [PATCH] o Define \cmucl{} and use it everywhere o Fix a dangling ref. --- docs/internals/architecture.tex | 16 ++++++++-------- docs/internals/design.tex | 5 ++++- docs/internals/environment.tex | 2 +- docs/internals/lowlev.tex | 2 +- 4 files changed, 14 insertions(+), 11 deletions(-) diff --git a/docs/internals/architecture.tex b/docs/internals/architecture.tex index 18db1beec..0c0ac438a 100644 --- a/docs/internals/architecture.tex +++ b/docs/internals/architecture.tex @@ -4,7 +4,7 @@ \section{Source Tree Structure} -The CMUCL source tree has subdirectories for each major subsystem: +The \cmucl{} source tree has subdirectories for each major subsystem: \begin{description} \item[{\tt assembly/}] Holds the CMU CL source-file assembler, and has machine @@ -23,7 +23,7 @@ subdirectory holds code that is shared across most backends. \item[{\tt lisp/}] The C runtime system code and low-level Lisp debugger. -\item[{\tt pcl/}] CMUCL version of the PCL implementation of CLOS. +\item[{\tt pcl/}] \cmucl{} version of the PCL implementation of CLOS. \item[{\tt tools/}] System building command files and source management tools. \end{description} @@ -126,23 +126,23 @@ causes bootstrapping problems. The easiest way to get around this problem is to make a fake lisp.nm file that has nothing in it but a version number: \begin{verbatim} - % echo "Map file for lisp version 0" > lisp.nm + % echo "Map file for lisp version 0" > lisp.nm \end{verbatim} and then run genesis with NIL for the list of files: \begin{verbatim} - * (load ".../compiler/generic/new-genesis") ; compile before loading - * (lisp::genesis nil ".../lisp/lisp.nm" "/dev/null" - ".../lisp/lisp.map" ".../lisp/lisp.h") + * (load ".../compiler/generic/new-genesis") ; compile before loading + * (lisp::genesis nil ".../lisp/lisp.nm" "/dev/null" + ".../lisp/lisp.map" ".../lisp/lisp.h") \end{verbatim} It will generate a whole bunch of warnings about things being undefined, but ignore that, because it will also generate a correct lisp.h. You can then compile lisp producing a correct lisp.map: \begin{verbatim} - % make + % make \end{verbatim} and then use \verb|tools/do-worldbuild| and \verb|tools/mk-lisp| to build -\verb|kernel.core| and \verb|lisp.core| (see section \ref[building-cores].) +\verb|kernel.core| and \verb|lisp.core| (see section \ref{building-cores}.) \section{Compiling the Lisp Code} diff --git a/docs/internals/design.tex b/docs/internals/design.tex index 3c84be194..39d0f397d 100644 --- a/docs/internals/design.tex +++ b/docs/internals/design.tex @@ -67,6 +67,9 @@ \def\bottomfraction{.9} % was .3 \def\topfraction{.9} +%% Some common abbreviations +\newcommand{\cmucl}{\textsc{cmucl}} + %% Set up margins \setlength{\oddsidemargin}{-10pt} \setlength{\evensidemargin}{-10pt} @@ -87,7 +90,7 @@ compiler and run-time system. CMU Common Lisp is a public domain implementation of Common Lisp that runs on various Unix workstations. This document is a work in progress: neither the contents nor the presentation are completed. Nevertheless, it provides some useful -background information, in particular regarding the CMUCL compiler.} +background information, in particular regarding the \cmucl{} compiler.} \tableofcontents \include{architecture} diff --git a/docs/internals/environment.tex b/docs/internals/environment.tex index 43cd32b64..390f7dfde 100644 --- a/docs/internals/environment.tex +++ b/docs/internals/environment.tex @@ -5,7 +5,7 @@ \chapter{The Info Database} The info database provides a functional interface to global -information about named things in CMUCL. Information is considered to +information about named things in \cmucl{}. Information is considered to be global if it must persist between invocations of the compiler. The use of a functional interface eliminates the need for the compiler to worry about the details of the representation. The info database also diff --git a/docs/internals/lowlev.tex b/docs/internals/lowlev.tex index 68544fdca..a8e81c444 100644 --- a/docs/internals/lowlev.tex +++ b/docs/internals/lowlev.tex @@ -15,7 +15,7 @@ The linkage table feature is based on how dynamic libraries dispatch. A table of functions is used which is filled in with the appropriate code to jump to the correct address. -For CMUCL, this table is stored at +For \cmucl{}, this table is stored at \verb|target-foreign-linkage-space-start|. Each entry is \verb|target-foreign-linkage-entry-size| bytes long. -- GitLab