ViewVC logotype

Log of /src/lisp/lisp.h

Parent Directory Parent Directory | Revision Log Revision Log

Links to HEAD: (view) (annotate)
Sticky Tag:

Revision 1.12 - (view) (annotate) - [select for diffs]
Sun Oct 10 14:54:52 2010 UTC (3 years, 6 months ago) by rtoy
Branch: MAIN
CVS Tags: GIT-CONVERSION, HEAD, cross-sol-x86-2010-12-20, cross-sol-x86-base, cross-sol-x86-merged, cross-sparc-branch-base, snapshot-2010-11, snapshot-2010-12, snapshot-2011-01, snapshot-2011-02, snapshot-2011-03, snapshot-2011-04, snapshot-2011-06, snapshot-2011-07, snapshot-2011-09
Branch point for: cross-sol-x86-branch, cross-sparc-branch
Changes since 1.11: +3 -3 lines
Diff to previous 1.11
Use lowtag_Bits -1 instead a hard-wired 2.

Revision - (view) (annotate) - [select for diffs]
Fri Dec 19 01:31:34 2008 UTC (5 years, 4 months ago) by rtoy
Branch: unicode-utf16-extfmt-branch
CVS Tags: unicode-snapshot-2009-05, unicode-snapshot-2009-06, unicode-utf16-extfmt-2009-03-27, unicode-utf16-extfmt-2009-06-11, unicode-utf16-extfmts-sync-2008-12
Changes since 1.10: +3 -1 lines
Diff to previous 1.10 , to next main 1.12
Merge changes from utf16 branch to update to snapshot 2008-12.

Revision - (view) (annotate) - [select for diffs]
Thu Dec 18 21:50:19 2008 UTC (5 years, 4 months ago) by rtoy
Branch: unicode-utf16-branch
CVS Tags: unicode-utf16-char-support-2009-03-25, unicode-utf16-char-support-2009-03-26, unicode-utf16-sync-2008-12, unicode-utf16-sync-label-2009-03-16
Changes since 1.10: +3 -1 lines
Diff to previous 1.10 , to next main 1.12
Merge Snapshot 2008-12 to this branch.  Some tweaks needed in
boot-2008-05-cross-unicode-x86.lisp and the Config files.  FreeBSD and
Darwin/x86 untested, but Linux and Solaris build ok.

Revision 1.11 - (view) (annotate) - [select for diffs]
Wed Nov 12 15:04:24 2008 UTC (5 years, 5 months ago) by rtoy
Branch: MAIN
CVS Tags: RELEASE_19f, RELEASE_20a, RELEASE_20b, amd64-dd-start, intl-2-branch-base, intl-branch-2010-03-18-1300, intl-branch-base, intl-branch-working-2010-02-11-1000, intl-branch-working-2010-02-19-1000, label-2009-03-16, label-2009-03-25, merge-sse2-packed, merge-with-19f, merged-unicode-utf16-extfmt-2009-06-11, portable-clx-base, portable-clx-import-2009-06-16, post-merge-intl-branch, pre-merge-intl-branch, release-19f-base, release-19f-pre1, release-20a-base, release-20a-pre1, release-20b-pre1, release-20b-pre2, snapshot-2008-12, snapshot-2009-01, snapshot-2009-02, snapshot-2009-04, snapshot-2009-05, snapshot-2009-07, snapshot-2009-08, snapshot-2009-11, snapshot-2009-12, snapshot-2010-01, snapshot-2010-02, snapshot-2010-03, snapshot-2010-04, snapshot-2010-05, snapshot-2010-06, snapshot-2010-07, snapshot-2010-08, sparc-tramp-assem-2010-07-19, sparc-tramp-assem-base, unicode-string-buffer-base, unicode-string-buffer-impl-base
Branch point for: RELEASE-19F-BRANCH, RELEASE-20A-BRANCH, RELEASE-20B-BRANCH, amd64-dd-branch, intl-2-branch, intl-branch, portable-clx-branch, sparc-tramp-assem-branch, unicode-string-buffer-branch, unicode-string-buffer-impl-branch
Changes since 1.10: +3 -1 lines
Diff to previous 1.10
Merge in SSE2 changes from sse2-packed-branch (tag

Revision - (view) (annotate) - [select for diffs]
Fri Sep 26 21:47:09 2008 UTC (5 years, 6 months ago) by rtoy
Branch: sse2-branch
CVS Tags: sse2-checkpoint-2008-10-01, sse2-merge-with-2008-10, sse2-merge-with-2008-11, sse2-packed-2008-11-12, sse2-packed-base
Branch point for: sse2-packed-branch
Changes since 1.10: +3 -1 lines
Diff to previous 1.10 , to next main 1.12
Initial support for x87 and sse2 cores with one binary.  More support
still needed, though.

o Add os_support_sse2 function to tell if the chip supports SSE2 or

o Change declaration for arch_init to match Linux implementation.
  (Eventually, we'll get rid of this.)

o Add fpu_mode variable
o Recognize -fpu switch to allow the user to select the desired FPU
o Call arch_init with the fpu mode.

o Use the fpu mode to select the name of the core file.

o Add have_sse2 global variable.
o If have_sse2 is set, we copy the float result in ST(0) to XMM0.

Revision 1.10 - (view) (annotate) - [select for diffs]
Fri Jun 18 22:09:48 2004 UTC (9 years, 10 months ago) by cwang
Branch: MAIN
CVS Tags: double-double-array-base, double-double-array-checkpoint, double-double-base, double-double-init-%make-sparc, double-double-init-checkpoint-1, double-double-init-ppc, double-double-init-sparc, double-double-init-sparc-2, double-double-init-x86, double-double-irrat-end, double-double-irrat-start, double-double-reader-base, double-double-reader-checkpoint-1, double-double-sparc-checkpoint-1, ppc_gencgc_snap_2005-05-14, ppc_gencgc_snap_2005-12-17, ppc_gencgc_snap_2006-01-06, pre-telent-clx, prm-before-macosx-merge-tag, release-19b-base, release-19b-pre1, release-19b-pre2, release-19c, release-19c-base, release-19c-pre1, release-19d, release-19d-base, release-19d-pre1, release-19d-pre2, release-19e, release-19e-base, release-19e-pre1, release-19e-pre2, snapshot-2004-07, snapshot-2004-08, snapshot-2004-09, snapshot-2004-10, snapshot-2004-11, snapshot-2004-12, snapshot-2005-01, snapshot-2005-02, snapshot-2005-03, snapshot-2005-04, snapshot-2005-05, snapshot-2005-06, snapshot-2005-07, snapshot-2005-08, snapshot-2005-09, snapshot-2005-10, snapshot-2005-11, snapshot-2005-12, snapshot-2006-01, snapshot-2006-02, snapshot-2006-03, snapshot-2006-04, snapshot-2006-05, snapshot-2006-06, snapshot-2006-07, snapshot-2006-08, snapshot-2006-09, snapshot-2006-10, snapshot-2006-11, snapshot-2006-12, snapshot-2007-01, snapshot-2007-02, snapshot-2007-03, snapshot-2007-04, snapshot-2007-05, snapshot-2007-06, snapshot-2007-07, snapshot-2007-08, snapshot-2007-09, snapshot-2007-10, snapshot-2007-11, snapshot-2007-12, snapshot-2008-01, snapshot-2008-02, snapshot-2008-03, snapshot-2008-04, snapshot-2008-05, snapshot-2008-06, snapshot-2008-07, snapshot-2008-08, snapshot-2008-09, snapshot-2008-10, snapshot-2008-11, sse2-base, unicode-utf16-base, unicode-utf16-extfmts-pre-sync-2008-11, unicode-utf16-string-support, unicode-utf16-sync-2008-07, unicode-utf16-sync-2008-09, unicode-utf16-sync-2008-11
Branch point for: double-double-array-branch, double-double-branch, double-double-reader-branch, ppc_gencgc_branch, release-19b-branch, release-19c-branch, release-19d-branch, release-19e-branch, sse2-branch, unicode-utf16-branch, unicode-utf16-extfmt-branch
Changes since 1.9: +1 -9 lines
Diff to previous 1.9
Remove some unused code

Revision 1.9 - (view) (annotate) - [select for diffs]
Mon Oct 13 21:52:12 2003 UTC (10 years, 6 months ago) by toy
Branch: MAIN
CVS Tags: amd64-merge-start, mod-arith-base, release-19a, release-19a-base, release-19a-pre1, release-19a-pre2, release-19a-pre3, snapshot-2003-11, snapshot-2003-12, snapshot-2004-04, snapshot-2004-05, snapshot-2004-06
Branch point for: mod-arith-branch, release-19a-branch
Changes since 1.8: +5 -1 lines
Diff to previous 1.8
#ifdef out lowtag_Bits, type_Bits, and friends.  They should be
created by genesis now and are placed in internals.h.

Revision - (view) (annotate) - [select for diffs]
Sat Mar 23 18:51:05 2002 UTC (12 years, 1 month ago) by pw
Branch: RELENG_18
Changes since +2 -2 lines
Diff to previous , to branch point 1.3 , to next main 1.12
Mega commit to bring RELENG_18 branch in sync with HEAD in preparation
for release tagging 18d.

Revision 1.8 - (view) (annotate) - [select for diffs]
Mon Jan 28 20:17:11 2002 UTC (12 years, 2 months ago) by pmai
Branch: MAIN
CVS Tags: LINKAGE_TABLE, PRE_LINKAGE_TABLE, UNICODE-BASE, cold-pcl-base, dynamic-extent-base, lisp-executable-base, release-18e, release-18e-base, release-18e-pre1, release-18e-pre2, remove_negative_zero_not_zero, snapshot-2003-10, sparc_gencgc, sparc_gencgc_merge
Branch point for: UNICODE-BRANCH, cold-pcl, dynamic-extent, lisp-executable, release-18e-branch, sparc_gencgc_branch
Changes since 1.7: +2 -2 lines
Diff to previous 1.7
Added specialised port to NetBSD (1.5.2) on x86.  Since the code-base
was already cleaned up with the OpenBSD port, this doesn't require
massive changes.

Since current NetBSD is ELF-based by default, we don't make use of the
ELF feature, or in other words:  The presence of the NetBSD feature
implies ELF, since there is no support for non-ELF NetBSD.

Revision 1.7 - (view) (annotate) - [select for diffs]
Thu Dec 6 19:15:45 2001 UTC (12 years, 4 months ago) by pmai
Branch: MAIN
Changes since 1.6: +2 -2 lines
Diff to previous 1.6
Added specialised port to OpenBSD (2.9).  Many parts of the original
code which were previously conditionalized on :FreeBSD, are now
conditionalized on :BSD instead, with the :BSD feature now implying a
4.4BSD(lite2) derived OS.  This should make future BSD-ports easier.
FreeBSD and OpenBSD are differentiated by having either :FreeBSD or
:OpenBSD on the features list.

Currently the OpenBSD port does not have working ELF support, because
OpenBSD 2.9 is still non-ELF by default.  So don't put ELF on the
features list when building for OpenBSD, or fix the code to work
correctly in this case instead.

Revision - (view) (annotate) - [select for diffs]
Tue May 23 16:38:29 2000 UTC (13 years, 11 months ago) by pw
Branch: RELENG_18
Changes since +1 -1 lines
Diff to previous , to branch point 1.3
This set of revisions brings the RELENG_18 branch up to HEAD in preparation
for an 18c release.

Revision 1.6 - (view) (annotate) - [select for diffs]
Mon Feb 22 11:45:59 1999 UTC (15 years, 2 months ago) by dtc
Branch: MAIN
Changes since 1.5: +1 -13 lines
Diff to previous 1.5
Remove alpha and __alpha__ defines hack. Such defines are more
appropriately included in the CFLAGS.

Revision 1.5 - (view) (annotate) - [select for diffs]
Sat Feb 20 15:54:44 1999 UTC (15 years, 2 months ago) by pw
Branch: MAIN
Changes since 1.4: +13 -1 lines
Diff to previous 1.4
Changes for Linux running on Alpha.
From: Julian Dolby <dolby@csag-226-8.UCSD.EDU>

  Enclosed below are diffs against the cvs repository as of Feb 12;
aside from minor changes like using different include files
(e.g. validate.h instead of x86-validate.h in Linux-os.c) and adding
alpha-linux specifics unix-glibc2.lisp, there are two code changes.

 The first is to signal handling. I had to put the POSIX-SIGS
ifdefs into places used by alpha but not by x86, and I ifdef'ed out
most of the linux #define kludges for signals for alpha linux, since
alpha linux uses OSF/1 signals rather than linux ones.

 The second is that the trick of or'ing 2 into the reg_ALLOC address
to cause faults does not work on alpha linux since the kernel traps
and handles the unaligned access; I did not find a way to change that
kernel behavior, so I changed the code to or (1<<63) into the address
to cause a seg fault, and then check, in the seg fault handler, to see
if the high-order address bits are set.

 One change I made is to the memory layout (lisp/alpha-validate.h and
compiler/alpha/parms.lisp); that change is not needed to make lisp run
on alpha linux, but is there because I wanted more heap space.

Revision - (view) (annotate) - [select for diffs]
Tue Jun 23 11:25:02 1998 UTC (15 years, 10 months ago) by pw
Branch: RELENG_18
Changes since +1 -1 lines
Diff to previous , to branch point 1.3
This (huge) revision brings the RELENG_18 branch up to the current HEAD.
Note code/unix-glib2.lisp not yet included -- not sure it is ready to go.

Revision - (view) (annotate) - [select for diffs]
Tue Sep 9 01:33:30 1997 UTC (16 years, 7 months ago) by dtc
Branch: RELENG_18
Changes since 1.3: +2 -2 lines
Diff to previous 1.3
Merge from 1.4.

Revision 1.4 - (view) (annotate) - [select for diffs]
Sat Aug 23 16:00:21 1997 UTC (16 years, 8 months ago) by pw
Branch: MAIN
Changes since 1.3: +2 -2 lines
Diff to previous 1.3
I just finished making load-foreign work on SGIs, along with fixing calling of
foreign functions taking floating-point arguments after integer arguments but
before the fourth argument (more or less; mips has unusual C calling
conventions), and making cmucl work on IRIX 6.2 on the Onyx (where the system
page size has changed). I've included the patches below, along with some
discussion of the changes and a couple of problems with cmucl's interaction with
dynamic loading. Also, there's a misc change to make ioctls work (I'm not sure
for what version the released code worked, but it doesn't work on anything I
have). The patches do not fix the R10000; cmucl continues to not work on it (O2
and Octane).

The fixes make cmucl on the sgi use shared libraries so it can use dlopen et al
in load-foreign; this is based on the solaris implementation. The problem with
this is that the addresses of foreign variables are included directly in the
dumped lisp image (without relocation on loading), which might result in a
problem if cmucl is run with newer shared libraries than those it was compiled
and dumped with. As far as I can tell, for the SGI at least, this does not
affect function calls because the addresses used (and included in the dumped
image) are those of stub routines that jump to the actual routines, thus are
located in the executable proper rather than in the shared libraries, and so
shouldn't be changed by a new version of the shared library.

Unfortunately, this is not the case for global variables. Fortunately, there
appear to only be two foreign variables used by cmucl in any of its system code
winding up in the dumped image: errno and tzname. Apparently, Solaris relocates
data references in dsos to match the program, while IRIX relocates data
references in the program to match the dso. Thus, on Solaris, you don't need to
do anything special for cmucl to work with a newer runtime libc, but on IRIX it
gets the wrong value of errno and tzname. Unfortunately, the address of errno is
different between irix 6.2, 6.3, and 6.4 (all of which we have to have because
SGI doesn't have a single cross-platform OS version yet), which would require a
different lisp.core for each machine (you just need to run mk-lisp, not
recompile) if it weren't for the hack below. But fortunately again, a lisp
compiled for one version seems to be able to run on another version well enough
to generate the new lisp.core (presumably the worst that would happen is that
error messages could be confusing). It would be really nice to avoid this
problem. Perhaps some kind of relocation table could be added to the dumped
image format? I don't know enough about the system to know how possible or
ridiculous that suggestion is, unfortunately. Is the Solaris behavior guaranteed
to be the same in future releases? If not, or if any other platforms have the
irix behavior, this might become a more general problem. In the meantime, we use
a hack: we *define* errno in undefineds.c rather than just referencing it; this
results in warnings from the linker, but it resolves the conflict in favor of
the definition in the program, relocating libc to match, thus fixing this
problem for errno. The other global variables, tzname et al, can't be fixed this
way as easily because they're listed as weak symbols, essentially aliases for
the real symbol, so redefining them wouldn't cause libc to reference the new
version. Thus, as long as you don't use tzname, there's no problem right now
(although there may be if any other library global variables are used in cmucl
in the future). The definition of tzname is in a progn preceeded by a comment
which says not to use it, so hopefully it's not in fact used and therefore not a

These patches have been tested on an R5000 O2 running irix 6.3 and a dual R4400
Onyx running irix 6.2. A previous version of these patches (for 17f) was tested
on the onyx when it was running 5.3 (I think, maybe 5.2). The patches here are
from the main branch of the CVS tar as of August 13. Incidentally, it was quite
painful figuring out how to compile and bootstrap the current sources under the
distributed irix 18a binary, even without trying :new-random or :signed-array
(which I haven't tried to do yet); it might be nice to put a newer binary up...

Revision 1.3 - (view) (annotate) - [select for diffs]
Tue Jan 21 00:28:13 1997 UTC (17 years, 3 months ago) by ram
Branch: MAIN
Branch point for: RELENG_18
Changes since 1.2: +8 -2 lines
Diff to previous 1.2
source kit 1.03.7

Revision 1.2 - (view) (annotate) - [select for diffs]
Sun Mar 27 15:27:35 1994 UTC (20 years, 1 month ago) by hallgren
Branch: MAIN
Changes since 1.1: +7 -1 lines
Diff to previous 1.1
Updated for the Alpha.

Revision 1.1 - (view) (annotate) - [select for diffs]
Tue Jul 28 20:14:40 1992 UTC (21 years, 9 months ago) by wlott
Branch: MAIN
Initial revision

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

  ViewVC Help
Powered by ViewVC 1.1.5