/[cmucl]/src/pcl/method-slot-access-optimization.lisp
ViewVC logotype

Log of /src/pcl/method-slot-access-optimization.lisp

Parent Directory Parent Directory | Revision Log Revision Log


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

Revision 1.9 - (view) (annotate) - [select for diffs]
Mon Apr 19 02:31:14 2010 UTC (4 years ago) by rtoy
Branch: MAIN
CVS Tags: GIT-CONVERSION, HEAD, RELEASE_20b, cross-sol-x86-2010-12-20, cross-sol-x86-base, cross-sol-x86-merged, 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, snapshot-2011-01, snapshot-2011-02, snapshot-2011-03, snapshot-2011-04, snapshot-2011-06, snapshot-2011-07, snapshot-2011-09, sparc-tramp-assem-2010-07-19, sparc-tramp-assem-base
Branch point for: RELEASE-20B-BRANCH, cross-sol-x86-branch, cross-sparc-branch, sparc-tramp-assem-branch
Changes since 1.8: +4 -4 lines
Diff to previous 1.8
Remove _N"" reader macro from docstrings when possible.

Revision 1.8 - (view) (annotate) - [select for diffs]
Fri Mar 19 15:19:03 2010 UTC (4 years, 1 month ago) by rtoy
Branch: MAIN
CVS Tags: post-merge-intl-branch, snapshot-2010-04
Changes since 1.7: +16 -15 lines
Diff to previous 1.7
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.7.36.1 - (view) (annotate) - [select for diffs]
Thu Feb 25 20:34:57 2010 UTC (4 years, 1 month ago) by rtoy
Branch: intl-2-branch
Changes since 1.7: +2 -1 lines
Diff to previous 1.7 , to next main 1.9
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.7.34.2 - (view) (annotate) - [select for diffs]
Sat Feb 13 01:28:04 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.7.34.1: +15 -15 lines
Diff to previous 1.7.34.1 , to branch point 1.7 , to next main 1.9
Mark translatable strings; regenerate cmucl.pot and cmucl.po

Revision 1.7.34.1 - (view) (annotate) - [select for diffs]
Mon Feb 8 17:15:53 2010 UTC (4 years, 2 months ago) by rtoy
Branch: intl-branch
CVS Tags: intl-branch-working-2010-02-11-1000
Changes since 1.7: +2 -1 lines
Diff to previous 1.7
Add (intl:textdomain "cmucl") to the files to set the textdomain.

Revision 1.6.6.1 - (view) (annotate) - [select for diffs]
Mon Dec 19 01:10:21 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.6: +3 -3 lines
Diff to previous 1.6 , to next main 1.9
Merge code from main branch of 2005-12-17 to ppc gencgc branch.  Still
doesn't work of course.

Revision 1.7 - (view) (annotate) - [select for diffs]
Tue Jun 14 12:34:59 2005 UTC (8 years, 10 months ago) by rtoy
Branch: MAIN
CVS Tags: RELEASE_19f, RELEASE_20a, amd64-dd-start, 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, intl-2-branch-base, intl-branch-base, 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, pre-merge-intl-branch, pre-telent-clx, 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, release-19f-base, release-19f-pre1, release-20a-base, release-20a-pre1, 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, 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, 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-snapshot-2009-06, unicode-string-buffer-base, unicode-string-buffer-impl-base, 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-extfmt-2009-06-11, 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-20A-BRANCH, amd64-dd-branch, double-double-array-branch, double-double-branch, double-double-reader-branch, intl-2-branch, intl-branch, portable-clx-branch, release-19c-branch, release-19d-branch, release-19e-branch, sse2-branch, sse2-packed-branch, unicode-string-buffer-branch, unicode-string-buffer-impl-branch, unicode-utf16-branch, unicode-utf16-extfmt-branch
Changes since 1.6: +3 -3 lines
Diff to previous 1.6
From Gerd, cmucl-imp, 2005/06/11:

    This week's fix is for something Lynn Quam reported 2004-10-18.

    (defclass a (b) ())

    (compile nil
	     (lambda ()
	       (defclass b ()
		 ((x :reader b-x)))
	       (defmethod f ((obj b))
		 (b-x obj))))
      => error during macro expansion

    The fix is:

	    * src/pcl/method-slot-access-optimization.lisp (check-inline-accessor-call-p):
	    Return nil for forward-referenced classes.

	    * src/pcl/info.lisp (decide-slot-type): Return nil for
	    forward-referenced classes.

Revision 1.6 - (view) (annotate) - [select for diffs]
Wed Oct 29 12:14:35 2003 UTC (10 years, 5 months ago) by gerd
Branch: MAIN
CVS Tags: amd64-merge-start, mod-arith-base, ppc_gencgc_snap_2005-05-14, prm-before-macosx-merge-tag, release-19a, release-19a-base, release-19a-pre1, release-19a-pre2, release-19a-pre3, release-19b-base, release-19b-pre1, release-19b-pre2, snapshot-2003-11, snapshot-2003-12, snapshot-2004-04, snapshot-2004-05, snapshot-2004-06, 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
Branch point for: mod-arith-branch, ppc_gencgc_branch, release-19a-branch, release-19b-branch
Changes since 1.5: +4 -12 lines
Diff to previous 1.5
	Suppress slot access and gf-call optimizations for method
	parameters that are being assigned to in the method body.
	Reported by Hans Chalupsky on cmucl-imp.

	* src/pcl/boot.lisp (method-parameter): New function, extracted
	from make-pv-call.
	(assigned-method-params): New function.
	(make-method-lambda-internal): Call it to disable optimizations
	on method parameters being assigned to.

	* src/pcl/method-slot-access-optimization.lisp
	(get-param/class-to-optimize): Use new function method-parameter.
	* src/pcl/gf-call-optimization.lisp (make-pv-call): Ditto.

	* src/pcl/std-class.lisp (ensure-class-using-class): Don't setq
	a method parameter.

Revision 1.5 - (view) (annotate) - [select for diffs]
Sun Jun 15 14:06:26 2003 UTC (10 years, 10 months ago) by gerd
Branch: MAIN
CVS Tags: dynamic-extent-base, lisp-executable-base, snapshot-2003-10, sparc_gencgc, sparc_gencgc_merge
Branch point for: dynamic-extent, lisp-executable, sparc_gencgc_branch
Changes since 1.4: +2 -2 lines
Diff to previous 1.4
	SLOT-VALUE, (SETF SLOT-VALUE), SLOT-BOUNDP, SLOT-MAKUNBOUND not
	returning values specified by the standard when
	SLOT-MISSING/SLOT-UNBOUND are called and return.  Found by Paul
	Dietz.

	* src/pcl/std-class.lisp (compute-effective-slot-definition):
	Return slot-unbound's primary value.

	* src/pcl/slots.lisp (slot-value): Return slot-missing's primary
	value.
	(set-slot-value): Always return the new value.
	(slot-boundp): Return a boolean equivalent of slot-missing's
	primary value.
	(slot-makunbound): Always return the instance.
	(slot-value-using-class): Return slot-unbound's primary value.
	(slot-unbound-internal): Likewise.

	* src/pcl/slots-boot.lisp (ensure-accessor): Return slot-missing's
	primary value for slot-value, a boolean equivalent of its primary
	value for slot-boundp, and always return the value for setf.
	(accessor-set-slot-value): Always return the new value.
	(make-optimized-std-reader-method-function): Return slot-unbound's
	primary value.
	(make-optimized-std-slot-value-using-class-method-function)
	(make-internal-reader-method-function): Likewise.

	* src/pcl/method-slot-access-optimization.lisp
	(inline-slot-unbound): Return slot-unbound's primary value.

Revision 1.4 - (view) (annotate) - [select for diffs]
Thu May 8 11:21:33 2003 UTC (10 years, 11 months ago) by gerd
Branch: MAIN
Changes since 1.3: +13 -6 lines
Diff to previous 1.3
	* src/pcl/method-slot-access-optimization.lisp (pv-slot-value):
	Execute more control of the code being generated; avoid
	jumps in the common case.

Revision 1.3 - (view) (annotate) - [select for diffs]
Sun May 4 13:11:21 2003 UTC (10 years, 11 months ago) by gerd
Branch: MAIN
Changes since 1.2: +3 -3 lines
Diff to previous 1.2
	Code cleanup.  Use EXTENSIONS package to reduce clutter.

	* src/pcl/defsys.lisp ("PCL", "WALKER"): Use ext.
	* src/pcl/pkg.lisp ("PCL", "WALKER"): Use ext.
	* src/pcl/*.lisp: Remove ext: prefixes.

	* src/pcl/low.lisp (symbolicate*): Renamed from symbolicate.
	* src/pcl/std-class.lisp (shared-initialize):
	* src/pcl/defs.lisp (get-built-in-class-symbol)
	(get-built-in-wrapper-symbol):
	* src/pcl/braid.lisp (initial-classes-and-wrappers)
	(bootstrap-meta-braid): Use symbolicate*.

	* src/pcl/macros.lisp (dolist-carefully): Removed.
	(true, false, zero): Moved to defclass.lisp.
	(printing-random-thing-internal): Removed.
	(printing-random-thing): Removed.
	(rassq): Removed.
	(*keyword-package*): Removed.
	(make-keyword): Removed; import from cl.
	(memq, delq, assq): Macros removed, import from ext.
	(get-declaration): Moved to boot.lisp, where it's used.

	* src/pcl/boot.lisp (get-declaration): Moved here from
	macros.lisp.

	* src/pcl/methods.lisp (named-object-print-function, print-object):
	* src/pcl/low.lisp (print-std-instance):
	* src/pcl/dfun.lisp (print-dfun-info):
	* src/pcl/cache.lisp (print-cache, print-wrapper):
	* src/pcl/boot.lisp (make-early-gf):
	Use print-unreadable-object instead of printing-random-thing.

	* src/pcl/defclass.lisp (true, false, zero): Moved here from
	macros.lisp.

	* src/pcl/methods.lisp (legal-qualifiers-p)
	(legal-specializers-p): Use dolist.

Revision 1.2 - (view) (annotate) - [select for diffs]
Sat Mar 22 16:15:16 2003 UTC (11 years, 1 month ago) by gerd
Branch: MAIN
CVS Tags: remove_negative_zero_not_zero
Changes since 1.1: +779 -0 lines
Diff to previous 1.1
* bootfiles/18e/boot[12].lisp: Bootstrap files for the lisp:class
= pcl:class part.  To get it booted from 18e, cross-compile using
boot1.lisp as bootstrap.lisp in pmai's build scripts, then do a
normal compile with boot2.lisp as bootstrap.lisp with the
resulting Lisp.

* code/byte-interp.lisp, code/defstruct.lisp, code/describe.lisp:
* code/error.lisp, code/exports.lisp, code/hash-new.lisp:
* code/hash.lisp, code/macros.lisp, code/misc.lisp:
* code/package.lisp, code/pred.lisp, code/sharpm.lisp, code/type.lisp:
* compiler/dump.lisp, compiler/fndb.lisp, compiler/globaldb.lisp:
* compiler/proclaim.lisp, compiler/typetran.lisp, compiler/xref.lisp:
* compiler/generic/primtype.lisp, compiler/generic/vm-type.lisp:
Changes for to use kernel::class etc.

* code/class.lisp (toplevel): Shadow class, built-in-class etc.
(class): Give it conc-name %class-.
(toplevel) [#+bootstrap-lisp-class=pcl-class]: Define old accessors.
(everywhere): Use new class accessors.

* compiler/generic/vm-fndb.lisp (%make-instance): Change from
unsafe to flushable and movable.

* code/ntrace.lisp (expand-trace, untrace): Changes for method
tracing.

* code/profile.lisp (profile, profile-all, unprofile): Method
profiling.

* pcl/*.text, pcl/bench.lisp, pcl/extensions.lisp:
* pcl/fast-init.lisp, pcl/precom1.lisp, pcl/precom4.lisp:
* pcl/structure-class.lisp, pcl/user-instances.lisp:
Removed.

* tools/pclcom.lisp: Changes for my PCL and lisp:class =
pcl::class.

Revision 1.1.2.2 - (view) (annotate) - [select for diffs]
Mon Mar 10 13:09:01 2003 UTC (11 years, 1 month ago) by gerd
Branch: cold-pcl
Changes since 1.1.2.1: +2 -2 lines
Diff to previous 1.1.2.1 , to branch point 1.1 , to next main 1.9
*** empty log message ***

Revision 1.1.2.1 - (view) (annotate) - [select for diffs]
Sun Mar 9 12:47:22 2003 UTC (11 years, 1 month ago) by gerd
Branch: cold-pcl
Changes since 1.1: +779 -0 lines
Diff to previous 1.1
*** empty log message ***

Revision 1.1
Sun Mar 9 12:47:22 2003 UTC (11 years, 1 month ago) by gerd
Branch: MAIN
Branch point for: cold-pcl
FILE REMOVED
file method-slot-access-optimization.lisp was initially added on branch cold-pcl.

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