/[cmucl]/src/code/alieneval.lisp
ViewVC logotype

Log of /src/code/alieneval.lisp

Parent Directory Parent Directory | Revision Log Revision Log


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

Revision 1.70 - (view) (annotate) - [select for diffs]
Sun Dec 5 15:55:53 2010 UTC (3 years, 4 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, 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
Changes since 1.69: +15 -14 lines
Diff to previous 1.69
No functional changes.  Just update examples.

o Fix typo in callback examples.
o Add package qualifiers so the examples can be used in CL-USER.

Revision 1.69 - (view) (annotate) - [select for diffs]
Tue Apr 20 17:57:43 2010 UTC (3 years, 11 months ago) by rtoy
Branch: MAIN
CVS Tags: RELEASE_20b, cross-sparc-branch-base, release-20b-pre1, release-20b-pre2, snapshot-2010-05, snapshot-2010-06, snapshot-2010-07, snapshot-2010-08, snapshot-2010-11, snapshot-2010-12, sparc-tramp-assem-2010-07-19, sparc-tramp-assem-base
Branch point for: RELEASE-20B-BRANCH, cross-sparc-branch, sparc-tramp-assem-branch
Changes since 1.68: +61 -61 lines
Diff to previous 1.68
Change uses of _"foo" to (intl:gettext "foo").  This is because slime
may get confused with source locations if the reader macros are
installed.

Revision 1.68 - (view) (annotate) - [select for diffs]
Mon Apr 19 02:18:03 2010 UTC (4 years ago) by rtoy
Branch: MAIN
Changes since 1.67: +28 -28 lines
Diff to previous 1.67
Remove _N"" reader macro from docstrings when possible.

Revision 1.67 - (view) (annotate) - [select for diffs]
Fri Mar 19 15:18:58 2010 UTC (4 years, 1 month ago) by rtoy
Branch: MAIN
CVS Tags: post-merge-intl-branch, snapshot-2010-04
Changes since 1.66: +88 -86 lines
Diff to previous 1.66
Merge intl-branch 2010-03-18 to HEAD.  To build, you need to use
boot-2010-02-1 as the bootstrap file.  You should probably also use
the new -P option for build.sh to generate and update the po files
while building.

Revision 1.66.14.1 - (view) (annotate) - [select for diffs]
Thu Feb 25 20:34:48 2010 UTC (4 years, 1 month ago) by rtoy
Branch: intl-2-branch
Changes since 1.66: +87 -85 lines
Diff to previous 1.66 , to next main 1.70
Restart internalization work.  This new branch starts with code from
the intl-branch on date 2010-02-12 18:00:00+0500.  This version works
and

LANG=en@piglatin bin/lisp

works (once the piglatin translation is added).

Revision 1.66.12.4 - (view) (annotate) - [select for diffs]
Sun Feb 14 03:06:41 2010 UTC (4 years, 2 months ago) by rtoy
Branch: intl-branch
CVS Tags: intl-branch-2010-03-18-1300, intl-branch-working-2010-02-19-1000
Changes since 1.66.12.3: +2 -2 lines
Diff to previous 1.66.12.3 , to branch point 1.66 , to next main 1.70
o Marking more translatable strings that were previously missed.
o Regenerated cmucl.pot and cmucl.po's.
o Fixed some problems with ko/cmucl.po introduced in last checkin.

Revision 1.66.12.3 - (view) (annotate) - [select for diffs]
Tue Feb 9 14:56:37 2010 UTC (4 years, 2 months ago) by rtoy
Branch: intl-branch
CVS Tags: intl-branch-working-2010-02-11-1000
Changes since 1.66.12.2: +3 -3 lines
Diff to previous 1.66.12.2 , to branch point 1.66
Mark translatable strings; update cmucl.pot and ko/cmucl.po
accordingly.

Revision 1.66.12.2 - (view) (annotate) - [select for diffs]
Tue Feb 9 03:43:35 2010 UTC (4 years, 2 months ago) by rtoy
Branch: intl-branch
Changes since 1.66.12.1: +87 -87 lines
Diff to previous 1.66.12.1 , to branch point 1.66
code/alieneval.lisp
code/backq.lisp
code/bignum.lisp
code/bit-bash.lisp
code/bsd-os.lisp
code/byte-interp.lisp
code/char.lisp
o Mark translatable strings

i18n/locale/cmucl.pot
i18n/locale/ko/LC_MESSAGES/cmucl.po
o Update

Revision 1.66.12.1 - (view) (annotate) - [select for diffs]
Mon Feb 8 17:15:46 2010 UTC (4 years, 2 months ago) by rtoy
Branch: intl-branch
Changes since 1.66: +3 -1 lines
Diff to previous 1.66
Add (intl:textdomain "cmucl") to the files to set the textdomain.

Revision 1.66 - (view) (annotate) - [select for diffs]
Thu Jun 11 16:03:56 2009 UTC (4 years, 10 months ago) by rtoy
Branch: MAIN
CVS Tags: RELEASE_20a, amd64-dd-start, intl-2-branch-base, intl-branch-base, merged-unicode-utf16-extfmt-2009-06-11, portable-clx-base, portable-clx-import-2009-06-16, pre-merge-intl-branch, release-20a-base, release-20a-pre1, snapshot-2009-07, snapshot-2009-08, snapshot-2009-11, snapshot-2009-12, snapshot-2010-01, snapshot-2010-02, snapshot-2010-03, unicode-string-buffer-base, unicode-string-buffer-impl-base
Branch point for: RELEASE-20A-BRANCH, amd64-dd-branch, intl-2-branch, intl-branch, portable-clx-branch, unicode-string-buffer-branch, unicode-string-buffer-impl-branch
Changes since 1.65: +22 -22 lines
Diff to previous 1.65
Merge Unicode work to trunk.  From label
unicode-utf16-extfmt-2009-06-11.

Revision 1.65.6.1 - (view) (annotate) - [select for diffs]
Tue May 12 16:31:48 2009 UTC (4 years, 11 months ago) by rtoy
Branch: unicode-utf16-extfmt-branch
CVS Tags: unicode-snapshot-2009-06, unicode-utf16-extfmt-2009-06-11
Changes since 1.65: +22 -22 lines
Diff to previous 1.65 , to next main 1.70
o Lots of spelling fixes from Paul.
o Add unicode codepoints in final-sigma.lisp (in case the characters
  there don't show up correctly).
o Support partial-fill in READ-INTO-STRING.

Revision 1.65 - (view) (annotate) - [select for diffs]
Fri Nov 9 19:24:35 2007 UTC (6 years, 5 months ago) by rtoy
Branch: MAIN
CVS Tags: RELEASE_19f, label-2009-03-16, label-2009-03-25, merge-sse2-packed, merge-with-19f, release-19e, release-19e-base, release-19e-pre1, release-19e-pre2, release-19f-base, release-19f-pre1, 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, snapshot-2008-12, snapshot-2009-01, snapshot-2009-02, snapshot-2009-04, snapshot-2009-05, sse2-base, sse2-checkpoint-2008-10-01, sse2-merge-with-2008-10, sse2-merge-with-2008-11, sse2-packed-2008-11-12, sse2-packed-base, unicode-snapshot-2009-05, unicode-utf16-base, unicode-utf16-char-support-2009-03-25, unicode-utf16-char-support-2009-03-26, unicode-utf16-extfmt-2009-03-27, unicode-utf16-extfmts-pre-sync-2008-11, unicode-utf16-extfmts-sync-2008-12, unicode-utf16-string-support, unicode-utf16-sync-2008-07, unicode-utf16-sync-2008-09, unicode-utf16-sync-2008-11, unicode-utf16-sync-2008-12, unicode-utf16-sync-label-2009-03-16
Branch point for: RELEASE-19F-BRANCH, release-19e-branch, sse2-branch, sse2-packed-branch, unicode-utf16-branch, unicode-utf16-extfmt-branch
Changes since 1.64: +12 -1 lines
Diff to previous 1.64
Lynn Quam noted that callbacks did not work on his system.  This
happened because the callback trampoline used malloc'ed space which
were not executable by default.  Change this so that the trampoline is
executable.

code/unix.lisp, code/unix-glibc2.lisp:
o Add UNIX-MPROTECT

code/exports.lisp:
o Export UNIX-MPROTECT

code/alieneval.lisp:
o Make sure the malloc'ed trampoline area is executable.

general-info/release-19e.txt:
o Update

Revision 1.62.2.1 - (view) (annotate) - [select for diffs]
Mon Dec 19 01:09:48 2005 UTC (8 years, 4 months ago) by rtoy
Branch: ppc_gencgc_branch
CVS Tags: ppc_gencgc_snap_2005-12-17, ppc_gencgc_snap_2006-01-06
Changes since 1.62: +43 -8 lines
Diff to previous 1.62 , to next main 1.70
Merge code from main branch of 2005-12-17 to ppc gencgc branch.  Still
doesn't work of course.

Revision 1.64 - (view) (annotate) - [select for diffs]
Fri Nov 11 22:30:38 2005 UTC (8 years, 5 months ago) by rtoy
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, pre-telent-clx, release-19d, release-19d-base, release-19d-pre1, release-19d-pre2, 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
Branch point for: double-double-array-branch, double-double-branch, double-double-reader-branch, release-19d-branch
Changes since 1.63: +25 -4 lines
Diff to previous 1.63
Alignment of objects inside of structures is weird on Mac OS X.  The
first slot gets the natural alignment, but all subsequent slots get
4-byte alignment, even if the object is a double or long long.

o Add EMBEDDED-ALIGNMENT to compute this alignment of embedded
  objects.
o Modify PARSE-ALIEN-RECORD-FIELDS to cause the appropriate alignment
  of slots in a struct.

Revision 1.63 - (view) (annotate) - [select for diffs]
Tue Aug 30 21:18:17 2005 UTC (8 years, 7 months ago) by rtoy
Branch: MAIN
CVS Tags: release-19c, release-19c-base, release-19c-pre1, snapshot-2005-10, snapshot-2005-11
Branch point for: release-19c-branch
Changes since 1.62: +19 -5 lines
Diff to previous 1.62
Fix for bug in alien enum types reported by Nicolas Neuss, cmucl-imp,
2004/11/09.  An example illustrating the bug is:

    (use-package "ALIEN")
    (use-package "C-CALL")

    (def-alien-type yes_no_t (enum yes_no_t :NO :YES))
    (def-alien-type nil
	(struct foo
		(arg1 yes_no_t)
		(arg2 yes_no_t)))

    (def-alien-routine "set_default_options" void
      (options (* (struct foo))))

Modified alien-type-translator for enum so that if the enum type is
known and it's the same type as before we skip the call to (setf
auxiliary-alien-type).  This fixes the problem.

Revision 1.62 - (view) (annotate) - [select for diffs]
Fri Dec 24 15:05:26 2004 UTC (9 years, 3 months ago) by rtoy
Branch: MAIN
CVS Tags: ppc_gencgc_snap_2005-05-14, release-19b-base, release-19b-pre1, release-19b-pre2, 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
Branch point for: ppc_gencgc_branch, release-19b-branch
Changes since 1.61: +3 -2 lines
Diff to previous 1.61
Export CALLBACK-FUNCALL and document it.

Revision 1.61 - (view) (annotate) - [select for diffs]
Sun Oct 24 16:58:52 2004 UTC (9 years, 5 months ago) by rtoy
Branch: MAIN
CVS Tags: snapshot-2004-11, snapshot-2004-12
Changes since 1.60: +35 -34 lines
Diff to previous 1.60
Port Thomas Burdick's port of cmucl's callbacks to sbcl/ppc.

* alieneval.lisp:
  o The CALLBACK defstruct holds the entire alien function type
  o COMPATIBLE-RETURN-TYPES-P renamed to COMPATIBLE-FUNCTION-TYPES-P and
    and made specific to each backend.
  o Adjust code appropriately.

ppc/c-call.lisp:
  o Port Thomas Burdick's callback code to ppc.

sparc/c-call.lisp:
x86/c-call.lisp:
  o Adjust code appropriately for new callback structure.
  o Implement COMPATIBLE-FUNCTION-TYPES-P, like original
    COMPATIBLE-RETURN-TYPES-P

Revision 1.60 - (view) (annotate) - [select for diffs]
Sat Oct 23 15:33:43 2004 UTC (9 years, 5 months ago) by rtoy
Branch: MAIN
Changes since 1.59: +5 -3 lines
Diff to previous 1.59
The generated callback function was not doing a very good job in
converting the sp-fixnum and ret-addr args---a call to ash was
generated.  Use bignum:%ashl to get it nicely inlined.

Revision 1.59 - (view) (annotate) - [select for diffs]
Mon May 24 23:28:21 2004 UTC (9 years, 10 months ago) by cwang
Branch: MAIN
CVS Tags: prm-before-macosx-merge-tag, snapshot-2004-06, snapshot-2004-07, snapshot-2004-08, snapshot-2004-09, snapshot-2004-10
Changes since 1.58: +18 -1 lines
Diff to previous 1.58
amd64 changes

Revision 1.58 - (view) (annotate) - [select for diffs]
Thu May 6 13:19:53 2004 UTC (9 years, 11 months ago) by rtoy
Branch: MAIN
CVS Tags: amd64-merge-start
Changes since 1.57: +44 -56 lines
Diff to previous 1.57
From Helmut Eller:

the following enters an infinite recursion if it gets compiled two
times:

(def-alien-type nil (struct foo
			    (f (* (function (values) (* (struct foo)))))))

During the second compile, the existing type is compared with the to
be defined type.  This enters a recursion because (struct foo) is
recursive and the comparison is done again.  The current code has a
"depth" counter and simply returns true if it exceeds 10.  But it only
works for pointers to records and loops forever for function pointers.

The patch below should fix this.  It keeps a hashtable of the already
compared types and returns true if a pair is already in the hashtable.

Revision 1.57 - (view) (annotate) - [select for diffs]
Mon May 19 16:13:58 2003 UTC (10 years, 11 months ago) by toy
Branch: MAIN
CVS Tags: dynamic-extent-base, lisp-executable-base, mod-arith-base, release-19a, release-19a-base, release-19a-pre1, release-19a-pre2, release-19a-pre3, snapshot-2003-10, snapshot-2003-11, snapshot-2003-12, snapshot-2004-04, snapshot-2004-05, sparc_gencgc, sparc_gencgc_merge
Branch point for: dynamic-extent, lisp-executable, mod-arith-branch, release-19a-branch, sparc_gencgc_branch
Changes since 1.56: +4 -4 lines
Diff to previous 1.56
Correct the type declaration for lisp-fn in the callback defstruct.
The lisp-fn takes 2 fixnum args, not 1.  (Noted by Eric Marsden.)

Revision 1.56 - (view) (annotate) - [select for diffs]
Thu May 15 21:40:13 2003 UTC (10 years, 11 months ago) by toy
Branch: MAIN
Changes since 1.55: +26 -24 lines
Diff to previous 1.55
o Remove unneeded ALIEN package prefix.
o Add support for doc-strings and declarations for callback
  functions.  The declarations apply to the entire callback function,
  not just to the body.
o Remove an unneeded sap+ when returning the value from the callback.

Revision 1.55 - (view) (annotate) - [select for diffs]
Wed May 14 14:38:38 2003 UTC (10 years, 11 months ago) by toy
Branch: MAIN
Changes since 1.54: +1 -42 lines
Diff to previous 1.54
Remove some unused code left over from earlier experiments.

Revision 1.54 - (view) (annotate) - [select for diffs]
Wed May 14 13:22:16 2003 UTC (10 years, 11 months ago) by toy
Branch: MAIN
Changes since 1.53: +320 -2 lines
Diff to previous 1.53
Incorporate Helmut Eller's callback support.

code/alieneval.lisp:
	o Main callback support

code/exports.lisp:
	o Export DEF-CALLBACK and CALLBACK.
	o Export CALLBACK-ACCESSOR-FORM and MAKE-CALLBACK-TRAMPOLINE
	o Reindent a few items.

x86/c-call.lisp:
	o Helmut's MAKE-CALLBACK-TRAMPOLINE for x86.

sparc/c-call.lisp:
	o MAKE-CALLBACK-TRAMPOLINE for sparc.

Revision 1.53 - (view) (annotate) - [select for diffs]
Thu Jan 23 21:05:33 2003 UTC (11 years, 2 months ago) by toy
Branch: MAIN
CVS Tags: cold-pcl-base, release-18e, release-18e-base, release-18e-pre1, release-18e-pre2, remove_negative_zero_not_zero
Branch point for: cold-pcl, release-18e-branch
Changes since 1.52: +3 -3 lines
Diff to previous 1.52
From Eric Marsden:

    fix typos in comments, signal more specific error types, remove
    some stale code, fix a few compiler warnings in the runtime.

Revision 1.52 - (view) (annotate) - [select for diffs]
Tue Aug 27 22:18:23 2002 UTC (11 years, 7 months ago) by moore
Branch: MAIN
CVS Tags: LINKAGE_TABLE, UNICODE-BASE
Branch point for: UNICODE-BRANCH
Changes since 1.51: +18 -9 lines
Diff to previous 1.51
On x86 FreeBSD and Linux, change the way foreign symbol addresses are resolved.
They now go through a table -- effectively a new space in the core file.
Function references are resolved lazily, data references are resolved on startup
and when a .so is loaded.  The end result is that cores can be dumped that
contain references to symbols in shared libraries.  Also, the dependence of the core on addresses in the Lisp runtime is broken.

The linkage table feature is controlled by :linkage-table and LINKAGE_TABLE in C
runtime.  Several foreign symbols are now Lisp static symbols, so a cross
compile is required whether or not the new stuff is used.  I've checked in
boot4-cross-foreign-linkage.lisp that builds the compiler for linkage table; do whatever you usually do for the non-linkage table case:)  Seriously, lets start
a discussion on standardizing "cross compilation," not to mention the general
build procedure.

Revision 1.39.2.4 - (view) (annotate) - [select for diffs]
Sat Mar 23 18:49:50 2002 UTC (12 years ago) by pw
Branch: RELENG_18
CVS Tags: RELEASE_18d
Changes since 1.39.2.3: +2 -2 lines
Diff to previous 1.39.2.3 , to branch point 1.39 , to next main 1.70
Mega commit to bring RELENG_18 branch in sync with HEAD in preparation
for release tagging 18d.

Revision 1.51 - (view) (annotate) - [select for diffs]
Fri Jun 1 12:49:39 2001 UTC (12 years, 10 months ago) by toy
Branch: MAIN
CVS Tags: PRE_LINKAGE_TABLE
Changes since 1.50: +1 -5 lines
Diff to previous 1.50
Revert previous change.  Use a deftransform instead.

Revision 1.50 - (view) (annotate) - [select for diffs]
Thu May 31 16:42:06 2001 UTC (12 years, 10 months ago) by toy
Branch: MAIN
Changes since 1.49: +5 -1 lines
Diff to previous 1.49
Declare %sap-alien and alien-sap as maybe-inline functions.  Helps
code generation for alien types.

Revision 1.49 - (view) (annotate) - [select for diffs]
Tue Mar 13 16:52:13 2001 UTC (13 years, 1 month ago) by pw
Branch: MAIN
Changes since 1.48: +2 -2 lines
Diff to previous 1.48
Change calls to obsolete define-setf-method to define-setf-expander.

Revision 1.39.2.3 - (view) (annotate) - [select for diffs]
Tue May 23 16:36:09 2000 UTC (13 years, 10 months ago) by pw
Branch: RELENG_18
CVS Tags: RELEASE_18c
Changes since 1.39.2.2: +3 -3 lines
Diff to previous 1.39.2.2 , to branch point 1.39
This set of revisions brings the RELENG_18 branch up to HEAD in preparation
for an 18c release.

Revision 1.48 - (view) (annotate) - [select for diffs]
Wed Sep 15 15:14:45 1999 UTC (14 years, 7 months ago) by dtc
Branch: MAIN
Changes since 1.47: +3 -3 lines
Diff to previous 1.47
Enable 64-bit alien integers on all ports.

Revision 1.39.2.2 - (view) (annotate) - [select for diffs]
Tue Jun 23 11:21:30 1998 UTC (15 years, 9 months ago) by pw
Branch: RELENG_18
CVS Tags: RELEASE_18b
Changes since 1.39.2.1: +84 -30 lines
Diff to previous 1.39.2.1 , to branch point 1.39
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 1.47 - (view) (annotate) - [select for diffs]
Sat Mar 21 10:27:41 1998 UTC (16 years, 1 month ago) by dtc
Branch: MAIN
Changes since 1.46: +2 -2 lines
Diff to previous 1.46
Alien long-float type is 128 bits on the sparc.

Revision 1.46 - (view) (annotate) - [select for diffs]
Sat Mar 21 08:11:47 1998 UTC (16 years, 1 month ago) by dtc
Branch: MAIN
Changes since 1.45: +18 -3 lines
Diff to previous 1.45
Long-float support.

Revision 1.45 - (view) (annotate) - [select for diffs]
Fri Feb 20 07:44:10 1998 UTC (16 years, 2 months ago) by dtc
Branch: MAIN
Changes since 1.44: +2 -2 lines
Diff to previous 1.44
For the x86 the default alignment of alien double-floats should be 32
bits but was 64 bits.

Revision 1.44 - (view) (annotate) - [select for diffs]
Sun Feb 8 16:20:59 1998 UTC (16 years, 2 months ago) by dtc
Branch: MAIN
Changes since 1.43: +4 -4 lines
Diff to previous 1.43
Correct the compiler-let binding spec within the with-alien macro.

Revision 1.43 - (view) (annotate) - [select for diffs]
Fri Feb 6 19:48:01 1998 UTC (16 years, 2 months ago) by dtc
Branch: MAIN
Changes since 1.42: +53 -19 lines
Diff to previous 1.42
Re-write record-fields-match which is used in the testing of alien
type equivalence.  Cyclic record and pointer types, which CMUCL
supports, could cause the algorithm to infinitely recurse and overflow
the stack. The fixed limits the depth of the search by assuming
pointer types are equivalent beyond a certain depth.

Revision 1.42 - (view) (annotate) - [select for diffs]
Tue Jan 13 21:16:34 1998 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.41: +10 -5 lines
Diff to previous 1.41
The alien object finalizer was being placed on the alien info, but
this info may be shared among many alien objects making cancellation
of the finalisation upon alien object deallocation
problematic. Probably for this reason this cancellation had been
disabled, however this often resulted in objects being freed twice and
possibly live objects being freed. To fix this, the finalizer is now
placed on the alien object rather than the alien info, and this
finalizer is cancelled before the deallocation of the alien object to
prevent repeated freeing. Problem tracked down thanks to a bug report
and some experimentation by Andrei V. Elkin.

Revision 1.41 - (view) (annotate) - [select for diffs]
Tue Sep 16 08:44:55 1997 UTC (16 years, 7 months ago) by dtc
Branch: MAIN
Changes since 1.40: +2 -2 lines
Diff to previous 1.40
The arguments to the boolean deport method were backwards causing it
to always deport 1.

Revision 1.39.2.1 - (view) (annotate) - [select for diffs]
Sun Aug 24 03:18:28 1997 UTC (16 years, 7 months ago) by dtc
Branch: RELENG_18
CVS Tags: RELEASE_18a
Changes since 1.39: +2 -2 lines
Diff to previous 1.39
The alien pointer subtype relationship was returning NIL for
(subtypep '(alien (* t)) '(alien (* t)))
which caused other failures in the type system.

Revision 1.40 - (view) (annotate) - [select for diffs]
Sun Aug 24 03:15:48 1997 UTC (16 years, 7 months ago) by dtc
Branch: MAIN
Changes since 1.39: +2 -2 lines
Diff to previous 1.39
The alien pointer subtype relationship was returning NIL for
(subtypep '(alien (* t)) '(alien (* t)))
which caused other failures in the type system.

Revision 1.39 - (view) (annotate) - [select for diffs]
Sat Feb 22 19:19:50 1997 UTC (17 years, 1 month ago) by dtc
Branch: MAIN
Branch point for: RELENG_18
Changes since 1.38: +3 -9 lines
Diff to previous 1.38
Use a separate stack for alien value allocation on the x86. It had
been sharing the control stack with the compiler which could cause
trouble (pushes and pops out of order, holes in arguments built up on
the stack, exposed stack that can be written over on interrupt, etc)

Assigned a static symbol, x86::*alien-stack*, and by default set it to
the old C stack. A program many rebind this if it needs more room or
wants the allocation elsewhere.

The *alien-stack* is saved with the dynamic environment so is restored
with a non-local exist. It's not save on function entry/exit so you
need to take care to match an allocation with a deallocation.

Makes use of new VOPs which are already in place.

Backout an old alien stack deallocation hack.

Revision 1.38 - (view) (annotate) - [select for diffs]
Sat Jan 18 14:30:58 1997 UTC (17 years, 3 months ago) by ram
Branch: MAIN
Changes since 1.37: +10 -2 lines
Diff to previous 1.37
Werkowskis source kit 1.03.7

Revision 1.37 - (view) (annotate) - [select for diffs]
Fri Jul 12 20:51:51 1996 UTC (17 years, 9 months ago) by ram
Branch: MAIN
Changes since 1.36: +5 -1 lines
Diff to previous 1.36
Add an error check in def-alien-routine for pointer-like types being used with
:out or :in-out.  It sort of worked with c-string, but ended up passing in a
pointer to the string data, which is confusing to the uninitiated.

Revision 1.36 - (view) (annotate) - [select for diffs]
Mon Oct 31 04:11:27 1994 UTC (19 years, 5 months ago) by ram
Branch: MAIN
Changes since 1.35: +1 -3 lines
Diff to previous 1.35
Fix headed boilerplate.

Revision 1.33.1.1 - (view) (annotate) - [select for diffs] (vendor branch)
Wed Oct 19 23:17:11 1994 UTC (19 years, 6 months ago) by ram
Branch: solaris_patch
Changes since 1.33: +3 -1 lines
Diff to previous 1.33 , to next main 1.70
Solaris patches.

Revision 1.35 - (view) (annotate) - [select for diffs]
Sat Oct 1 00:46:57 1994 UTC (19 years, 6 months ago) by ram
Branch: MAIN
Changes since 1.34: +4 -4 lines
Diff to previous 1.34
Fix documented order of the list form of alien names to agree with what was
implemented: (string symbol)

Revision 1.34 - (view) (annotate) - [select for diffs]
Wed Apr 6 16:59:05 1994 UTC (20 years ago) by hallgren
Branch: MAIN
Changes since 1.33: +10 -5 lines
Diff to previous 1.33
Added alpha support.

Revision 1.33 - (view) (annotate) - [select for diffs]
Thu Aug 26 15:27:02 1993 UTC (20 years, 7 months ago) by wlott
Branch: MAIN
Branch point for: solaris_patch
Changes since 1.32: +6 -8 lines
Diff to previous 1.32
Moved alien-value into struct.lisp.

Revision 1.32 - (view) (annotate) - [select for diffs]
Wed Aug 18 21:47:25 1993 UTC (20 years, 8 months ago) by ram
Branch: MAIN
Changes since 1.31: +2 -2 lines
Diff to previous 1.31
Fix from Mike Clarkson.  In the alien type= method for function, call
ALIEN-TYPE-= instead of calling ALIEN-TYPE-P with two args.

Revision 1.31 - (view) (annotate) - [select for diffs]
Fri Feb 12 19:05:40 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.30: +11 -7 lines
Diff to previous 1.30
One more try at the BOA constructors, this time handling inclusion.

Revision 1.30 - (view) (annotate) - [select for diffs]
Thu Feb 11 14:12:26 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.29: +3 -3 lines
Diff to previous 1.29
missing comma

Revision 1.29 - (view) (annotate) - [select for diffs]
Thu Feb 11 14:09:16 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.28: +3 -2 lines
Diff to previous 1.28
Add another keyword BOA so that we can look at other arg values.

Revision 1.28 - (view) (annotate) - [select for diffs]
Wed Feb 10 22:29:31 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.27: +14 -3 lines
Diff to previous 1.27
Changed the alien-type structures to explicitly specify an &key BOA 
constructor, since the default constructor uses gensym arg names, and
we can't reference the other slot values in the default.

Revision 1.27 - (view) (annotate) - [select for diffs]
Wed Nov 11 02:33:52 1992 UTC (21 years, 5 months ago) by wlott
Branch: MAIN
Changes since 1.26: +7 -7 lines
Diff to previous 1.26
Changed enums to always take up an int to be compatable with C.  Also, sort
the from-alist so that enum aliens are unparsed in a canonical format.

Revision 1.26 - (view) (annotate) - [select for diffs]
Thu May 14 23:17:06 1992 UTC (21 years, 11 months ago) by ram
Branch: MAIN
Changes since 1.25: +3 -1 lines
Diff to previous 1.25
Inline expand %MAKE-ALIEN and FREE-ALIEN to avoid spurious Alien-value consing.

Revision 1.25 - (view) (annotate) - [select for diffs]
Tue Mar 10 12:52:31 1992 UTC (22 years, 1 month ago) by wlott
Branch: MAIN
Changes since 1.24: +51 -31 lines
Diff to previous 1.24
Added a few more exports from alien-internals.  Renamed the sap
alien-type-class to be system-area-pointer.  Added a :subtypep method and
changed alien-subtype-p to use it.

Revision 1.24 - (view) (annotate) - [select for diffs]
Tue Mar 10 11:24:05 1992 UTC (22 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.23: +11 -3 lines
Diff to previous 1.23
FREEZE-TYPE ALIEN-VALUE, and make a half-assed fix to ALIEN-SUBTYPEP of
array types.

Revision 1.23 - (view) (annotate) - [select for diffs]
Sat Mar 7 08:34:52 1992 UTC (22 years, 1 month ago) by wlott
Branch: MAIN
Changes since 1.22: +42 -1 lines
Diff to previous 1.22
Given that the symbols we are exporting from ALIEN-INTERNALS actually live
in ALIEN, import them before trying to export them.

Revision 1.22 - (view) (annotate) - [select for diffs]
Wed Mar 4 18:52:26 1992 UTC (22 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.21: +59 -3 lines
Diff to previous 1.21
Added NULL-ALIEN and many doc-strings.

Revision 1.21 - (view) (annotate) - [select for diffs]
Wed Mar 4 17:50:58 1992 UTC (22 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.20: +19 -16 lines
Diff to previous 1.20
Export SYSTEM-AREA-POINTER from ALIEN for consistency.
Export MAKE-ALIEN and FREE-ALIEN from ALIEN.
Export ALIEN-VALUE-TYPE from ALIEN-INTERNALS so that TYPE-OF can use it.
Changed ALIEN-VALUE printer to be less verbose.
Implemented %MAKE-ALIEN and FREE-ALIEN using malloc/free.  Changed MAKE-ALIEN
to accept an alien-type object as well as an Alien type descriptor.
Now that we've implemented FREE-ALIEN, finalize the Aliens created by
interpreted WITH-ALIEN. 
Added an (OPTIMIZE-INTERFACE (SAFETY 2)) declaration on %CAST so that we get a
better type error message.

Revision 1.20 - (view) (annotate) - [select for diffs]
Wed Mar 4 09:05:53 1992 UTC (22 years, 1 month ago) by wlott
Branch: MAIN
Changes since 1.19: +114 -74 lines
Diff to previous 1.19
Fixed a major bug in def-alien-type where the macroexpansion wouldn't
include the code to define the type if the type was defined at compile
time.  Also added some (optimize (inhibit-warnings 3)) to suppress warnings
that the interpreter stubs can't be optimally compiled.

Revision 1.19 - (view) (annotate) - [select for diffs]
Fri Feb 28 15:12:20 1992 UTC (22 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.18: +11 -2 lines
Diff to previous 1.18
Added some dimension type checking to array type parser.

Revision 1.18 - (view) (annotate) - [select for diffs]
Mon Feb 24 01:43:41 1992 UTC (22 years, 1 month ago) by wlott
Branch: MAIN
Changes since 1.17: +3 -3 lines
Diff to previous 1.17
Added sizes for single-float and double-float.

Revision 1.17 - (view) (annotate) - [select for diffs]
Sat Feb 22 02:54:51 1992 UTC (22 years, 2 months ago) by wlott
Branch: MAIN
Changes since 1.16: +2 -2 lines
Diff to previous 1.16
Changed the default alien-rep type to be * instead of NIL.

Revision 1.16 - (view) (annotate) - [select for diffs]
Fri Feb 21 21:59:32 1992 UTC (22 years, 2 months ago) by wlott
Branch: MAIN
Changes since 1.15: +16 -13 lines
Diff to previous 1.15
Changed all SAP-REF-mumble functions to take the offset in bytes.

Revision 1.15 - (view) (annotate) - [select for diffs]
Thu Feb 20 21:06:15 1992 UTC (22 years, 2 months ago) by wlott
Branch: MAIN
Changes since 1.14: +3 -5 lines
Diff to previous 1.14
Don't generate argument decls in DEF-ALIEN-ROUTINE, because this inhibits
the utility of the automatic lisp->alien conversion typecases, etc.  If
we could get a better idea of what the type was, it would be a good idea,
but until then, it's not.

Revision 1.14 - (view) (annotate) - [select for diffs]
Wed Feb 19 03:04:20 1992 UTC (22 years, 2 months ago) by wlott
Branch: MAIN
Changes since 1.13: +14 -12 lines
Diff to previous 1.13
Fixed DEF-ALIEN-ROUTINE to only make local alien variables with WITH-ALIEN
for things we need to take the address of.  Otherwise, just pass in the
argument.

Revision 1.13 - (view) (annotate) - [select for diffs]
Fri Feb 14 23:44:11 1992 UTC (22 years, 2 months ago) by wlott
Branch: MAIN
Changes since 1.12: +1578 -1252 lines
Diff to previous 1.12
Merged new-alien changes onto trunk.

Revision 1.12.1.1 - (view) (annotate) - [select for diffs] (vendor branch)
Sat Jan 25 05:24:57 1992 UTC (22 years, 2 months ago) by wlott
Changes since 1.12: +1578 -1252 lines
Diff to previous 1.12 , to next main 1.70
Complete rewrite for new aliens.

Revision 1.12 - (view) (annotate) - [select for diffs]
Wed Nov 6 15:47:51 1991 UTC (22 years, 5 months ago) by ram
Branch: MAIN
Changes since 1.11: +15 -2 lines
Diff to previous 1.11
Added DEFTYPE for PERQ-STRING and NULL-TERMINATED-STRING.  FIxed VECTOR-SAP to
be a function call rather than %PRIMITIVE.

Revision 1.11 - (view) (annotate) - [select for diffs]
Tue May 21 22:18:05 1991 UTC (22 years, 11 months ago) by ram
Branch: MAIN
Changes since 1.10: +13 -14 lines
Diff to previous 1.10
Made bits, bytes, etc., be defined in the null environment so that they can be
inline expanded.

Revision 1.10 - (view) (annotate) - [select for diffs]
Fri Feb 8 13:30:36 1991 UTC (23 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.9: +9 -5 lines
Diff to previous 1.9
New file header with RCS header FILE-COMMENT.

Revision 1.9 - (view) (annotate) - [select for diffs]
Sun Nov 18 17:09:54 1990 UTC (23 years, 5 months ago) by wlott
Branch: MAIN
Changes since 1.8: +5 -5 lines
Diff to previous 1.8
typo

Revision 1.8 - (view) (annotate) - [select for diffs]
Tue Nov 13 23:36:34 1990 UTC (23 years, 5 months ago) by wlott
Branch: MAIN
Changes since 1.7: +2 -2 lines
Diff to previous 1.7
typo.

Revision 1.7 - (view) (annotate) - [select for diffs]
Tue Nov 13 23:25:24 1990 UTC (23 years, 5 months ago) by wlott
Branch: MAIN
Changes since 1.6: +16 -12 lines
Diff to previous 1.6
Added exports for kernel:%set-sap-ref-{sap,32,16,8,dingle,double}.

Revision 1.6 - (view) (annotate) - [select for diffs]
Tue Nov 6 14:04:03 1990 UTC (23 years, 5 months ago) by wlott
Branch: MAIN
Changes since 1.5: +5 -5 lines
Diff to previous 1.5
use (c:backend-byte-order *backend*) instead of vm:target-byte-order.

Revision 1.5 - (view) (annotate) - [select for diffs]
Wed Oct 3 15:15:55 1990 UTC (23 years, 6 months ago) by ram
Branch: MAIN
Changes since 1.4: +29 -28 lines
Diff to previous 1.4
Changed DEFOPERATOR to represent the function definition of an operator
as a closure rather than as a function that must be compiled for each
operator.

Revision 1.4 - (view) (annotate) - [select for diffs]
Wed Oct 3 15:01:15 1990 UTC (23 years, 6 months ago) by ram
Branch: MAIN
Changes since 1.3: +27 -25 lines
Diff to previous 1.3
Fixed some problems with interpreted alien access.

Revision 1.3 - (view) (annotate) - [select for diffs]
Fri Aug 24 18:09:34 1990 UTC (23 years, 7 months ago) by wlott
Branch: MAIN
Changes since 1.2: +380 -239 lines
Diff to previous 1.2
Moved MIPS branch onto trunk; no merge necessary.

Revision 1.1.1.21 - (view) (annotate) - [select for diffs] (vendor branch)
Wed Aug 15 17:45:03 1990 UTC (23 years, 8 months ago) by wlott
Changes since 1.1.1.20: +27 -1 lines
Diff to previous 1.1.1.20 , to next main 1.70
Wrote reallocate-system-memory.

Revision 1.1.1.20 - (view) (annotate) - [select for diffs] (vendor branch)
Sat Jul 7 00:51:37 1990 UTC (23 years, 9 months ago) by wlott
Changes since 1.1.1.19: +34 -41 lines
Diff to previous 1.1.1.19
Added sap-ref-single, sap-ref-double, and their setf methods.  Added
alien-access stuff for single-floats and double-floats.

Revision 1.1.1.19 - (view) (annotate) - [select for diffs] (vendor branch)
Sun Jun 24 19:35:15 1990 UTC (23 years, 9 months ago) by wlott
Changes since 1.1.1.18: +4 -2 lines
Diff to previous 1.1.1.18
Added a hack to get (setf sap-ref-32) to work.  Basically, the result type
has to be asserted as more restrictive than the defknown, 'cause there is
no primitive type that covers (or (signed-byte 32) (unsigned-byte 32)).

Revision 1.1.1.18 - (view) (annotate) - [select for diffs] (vendor branch)
Mon Jun 11 02:25:52 1990 UTC (23 years, 10 months ago) by wlott
Changes since 1.1.1.17: +2 -2 lines
Diff to previous 1.1.1.17
typo.

Revision 1.1.1.17 - (view) (annotate) - [select for diffs] (vendor branch)
Mon Jun 11 01:18:06 1990 UTC (23 years, 10 months ago) by wlott
Changes since 1.1.1.16: +27 -27 lines
Diff to previous 1.1.1.16
Moved defsetfs for sap-ref-mumble from alieneval.lisp to macros.lisp.
Rewrote part of naturalize-integer to make it slightly tenser.

Revision 1.1.1.16 - (view) (annotate) - [select for diffs] (vendor branch)
Fri Jun 8 17:59:56 1990 UTC (23 years, 10 months ago) by wlott
Changes since 1.1.1.15: +4 -5 lines
Diff to previous 1.1.1.15
Don't compile dispose-alien in the old compiler, 'cause we have uninterned
pointer< and pointer>, so we can't %primitive them.

Revision 1.1.1.15 - (view) (annotate) - [select for diffs] (vendor branch)
Sat Jun 2 16:41:43 1990 UTC (23 years, 10 months ago) by wlott
Changes since 1.1.1.14: +6 -4 lines
Diff to previous 1.1.1.14
Put the %primitives back in undef #-new-compiler.  Forgot that this file
gets loaded into the compiler also.

Revision 1.1.1.14 - (view) (annotate) - [select for diffs] (vendor branch)
Sat Jun 2 16:10:04 1990 UTC (23 years, 10 months ago) by wlott
Changes since 1.1.1.13: +14 -4 lines
Diff to previous 1.1.1.13
Added pointer< and pointer> as functions and changed uses of %primitive
to them instead.

Revision 1.1.1.13 - (view) (annotate) - [select for diffs] (vendor branch)
Sat May 26 22:55:36 1990 UTC (23 years, 10 months ago) by wlott
Changes since 1.1.1.12: +18 -14 lines
Diff to previous 1.1.1.12
Fixed the simple-string/null-terminated alien-access expert.  It wasn't
taking into account the offset when determining the length by looking for
the nul.

Revision 1.1.1.12 - (view) (annotate) - [select for diffs] (vendor branch)
Fri May 25 20:11:43 1990 UTC (23 years, 10 months ago) by wlott
Changes since 1.1.1.11: +38 -17 lines
Diff to previous 1.1.1.11
Changed setf functions for sap-ref-mumble to be setf macros.
Replaced do-validate with allocate-system-memory and added deallocate-system-memory.

Revision 1.1.1.11 - (view) (annotate) - [select for diffs] (vendor branch)
Mon Apr 30 00:33:38 1990 UTC (23 years, 11 months ago) by wlott
Changes since 1.1.1.10: +3 -4 lines
Diff to previous 1.1.1.10
Put #+new-compiler in front of defparameters for system-space-start and
alien-allocation-end so that we don't trash them.

Revision 1.1.1.10 - (view) (annotate) - [select for diffs] (vendor branch)
Sun Apr 29 23:30:47 1990 UTC (23 years, 11 months ago) by wlott
Changes since 1.1.1.9: +11 -11 lines
Diff to previous 1.1.1.9
typo in sap-.
Nuked call to %primitive make-immeidate-type.
Nuked a few numeric constants in favor of symbol ones.
Changed assq and memq to assoc and member with :test #'eq.

Revision 1.1.1.9 - (view) (annotate) - [select for diffs] (vendor branch)
Sun Apr 29 03:07:20 1990 UTC (23 years, 11 months ago) by wlott
Changes since 1.1.1.8: +2 -0 lines
Diff to previous 1.1.1.8
Added #+new-compiler in a few places to keep from clobbering stuff in the
running lisp.

Revision 1.1.1.8 - (view) (annotate) - [select for diffs] (vendor branch)
Fri Apr 27 19:32:15 1990 UTC (23 years, 11 months ago) by wlott
Changes since 1.1.1.7: +22 -15 lines
Diff to previous 1.1.1.7
Replaced several %primitives.
Added a type decl to the pointer alien-access expert.

Revision 1.1.1.7 - (view) (annotate) - [select for diffs] (vendor branch)
Thu Apr 26 21:35:29 1990 UTC (23 years, 11 months ago) by wlott
Changes since 1.1.1.6: +2 -1 lines
Diff to previous 1.1.1.6
Added #+new-compiler in front of system-area-pointer so that the old
compiler will not compile it incorrectly.

Revision 1.1.1.6 - (view) (annotate) - [select for diffs] (vendor branch)
Thu Apr 26 19:59:37 1990 UTC (23 years, 11 months ago) by wlott
Changes since 1.1.1.5: +11 -2 lines
Diff to previous 1.1.1.5
Changed the pointer alien-access expert back to correct semantics now that
I understand what that are supposed to be.  You cannot read them, but
writing them with a lisp object causes the ``correct'' sap to be written.

Revision 1.1.1.5 - (view) (annotate) - [select for diffs] (vendor branch)
Wed Apr 25 21:48:19 1990 UTC (23 years, 11 months ago) by wlott
Changes since 1.1.1.4: +60 -36 lines
Diff to previous 1.1.1.4
many fixes.

Revision 1.1.1.4 - (view) (annotate) - [select for diffs] (vendor branch)
Tue Apr 10 12:40:35 1990 UTC (24 years ago) by wlott
Changes since 1.1.1.3: +2 -2 lines
Diff to previous 1.1.1.3
*** empty log message ***

Revision 1.1.1.3 - (view) (annotate) - [select for diffs] (vendor branch)
Tue Apr 10 12:29:02 1990 UTC (24 years ago) by wlott
Changes since 1.1.1.2: +30 -26 lines
Diff to previous 1.1.1.2
*** empty log message ***

Revision 1.1.1.2 - (view) (annotate) - [select for diffs] (vendor branch)
Tue Mar 13 11:56:10 1990 UTC (24 years, 1 month ago) by wlott
Changes since 1.1.1.1: +2 -1 lines
Diff to previous 1.1.1.1
Forgot to have the stub function for sap-ref-sap do anything.  Oops.

Revision 1.1.1.1 - (view) (annotate) - [select for diffs] (vendor branch)
Mon Mar 12 22:43:53 1990 UTC (24 years, 1 month ago) by wlott
Changes since 1.1: +149 -101 lines
Diff to previous 1.1
Initial MIPS version.

Revision 1.2 - (view) (annotate) - [select for diffs]
Fri Feb 23 12:20:42 1990 UTC (24 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.1: +11 -0 lines
Diff to previous 1.1
.../systems-work/code/alieneval.lisp, 22-Oct-89 22:36:51, Edit by Wlott.
  Moved DO-VALIDATE from machio.lisp to here, cause machio.lisp is going away.

Revision 1.1 - (view) (annotate) - [select for diffs]
Tue Feb 6 17:22:41 1990 UTC (24 years, 2 months ago) by ram
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