/[cmucl]/src/compiler/knownfun.lisp
ViewVC logotype

Log of /src/compiler/knownfun.lisp

Parent Directory Parent Directory | Revision Log Revision Log


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

Revision 1.34 - (view) (annotate) - [select for diffs]
Tue Apr 20 17:57:46 2010 UTC (3 years, 11 months 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.33: +3 -3 lines
Diff to previous 1.33
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.33 - (view) (annotate) - [select for diffs]
Fri Mar 19 15:19:00 2010 UTC (4 years ago) by rtoy
Branch: MAIN
CVS Tags: post-merge-intl-branch, snapshot-2010-04
Changes since 1.32: +4 -3 lines
Diff to previous 1.32
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.32.34.1 - (view) (annotate) - [select for diffs]
Thu Feb 25 20:34:53 2010 UTC (4 years, 1 month ago) by rtoy
Branch: intl-2-branch
Changes since 1.32: +4 -3 lines
Diff to previous 1.32 , to next main 1.34
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.32.32.2 - (view) (annotate) - [select for diffs]
Thu Feb 11 01:33:01 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-11-1000, intl-branch-working-2010-02-19-1000
Changes since 1.32.32.1: +3 -3 lines
Diff to previous 1.32.32.1 , to branch point 1.32 , to next main 1.34
Mark translatable strings; regenerate cmucl.pot and ko/cmucl.po
accordingly.

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

Revision 1.26.8.2 - (view) (annotate) - [select for diffs]
Mon Dec 19 01:09:59 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.26.8.1: +86 -5 lines
Diff to previous 1.26.8.1 , to branch point 1.26 , to next main 1.34
Merge code from main branch of 2005-12-17 to ppc gencgc branch.  Still
doesn't work of course.

Revision 1.32 - (view) (annotate) - [select for diffs]
Wed Nov 9 19:08:06 2005 UTC (8 years, 5 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-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-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-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.31: +12 -10 lines
Diff to previous 1.31
Add more precise checking for results not used for functions like
NREVERSE and DELETE.  When given vectors, the vectors are modified
in-place, so we don't have to use the result.

compiler/fndb.lisp:
o Functions like NREVERSE and DELETE that take sequences need to check
  to see if the sequence might be a list or not before warning about
  if the result is not used.
o MERGE needs a fancier :result-not-used function, so disable that for
  now.

compiler/knownfun.lisp:
o LIST-FUNCTION-RESULT-NOT-USED creates a function to check is the
  specified arg is a list and determines if the result is used or not.

Revision 1.31 - (view) (annotate) - [select for diffs]
Wed Nov 9 16:01:27 2005 UTC (8 years, 5 months ago) by rtoy
Branch: MAIN
Changes since 1.30: +10 -8 lines
Diff to previous 1.30
Oops.  It helps actually to check to see if the result of SORT or
ADJUST-ARRAY is used or not.

Revision 1.30 - (view) (annotate) - [select for diffs]
Wed Nov 9 14:10:26 2005 UTC (8 years, 5 months ago) by rtoy
Branch: MAIN
Changes since 1.29: +3 -9 lines
Diff to previous 1.29
Oops.  Remove unused function, and make sure we have an array type
before asking if it's a complex array.

Revision 1.29 - (view) (annotate) - [select for diffs]
Wed Nov 9 01:48:22 2005 UTC (8 years, 5 months ago) by rtoy
Branch: MAIN
Changes since 1.28: +41 -9 lines
Diff to previous 1.28
Change how the important-result stuff is implemented.  We no longer
use an IR1 attribute but allow arbitrary functions to determine if the
result is used or not.  This allows us to handle SORT and ADJUST-ARRAY
depending on the args.

Use 19c/boot-2005-11-1.lisp to bootstrap this change.

compiler/knownfun.lisp:
o Remove IMPORTANT-RESULT attribute.
o Add new slot to function-info the hold the function to indicate if
  the result is not used.
o Adjust %defknown with a new keyword arg :result-not-used for the new
  slot.
o Add functions for the result-not-used arg for
  o SORT-RESULT-NOT-USED-P: non-NIL if the sequence might be a list.
  o ADJUST-ARRAY-RESULT-NOT-USED-P: non-NIL if the array is not known
    to be adjustable.
  o FUNCTION-RESULT-NOT-USED-P:  non-NIL if function result must be
    used (for functions like nreverse).

compiler/ir1opt.lisp:
o Remove now unused function CHECK-IMPORTANT-RESULT
o Add check in IR1-OPTIMIZE-COMBINATION to see if function result
  should be used.

compiler/fndb.lisp:
o Remove IMPORTANT-RESULT attribute and replace with :result-not-used.

Revision 1.28 - (view) (annotate) - [select for diffs]
Wed Oct 19 13:44:01 2005 UTC (8 years, 5 months ago) by rtoy
Branch: MAIN
CVS Tags: snapshot-2005-11
Changes since 1.27: +56 -5 lines
Diff to previous 1.27
Port SBCL'S support for detecting when destructive functions (such as
nreverse) modify constant args and for warning when the result of
destructive functions is not used.

Detecting modification of constant args is done by adding a new IR1
transformation that checks that a function is not destructively
modifying constants or literals.

A new IR1 attribute, important-result, is used to determine if the
result of a function should be used instead of discarded.  (Note:
this means some functions are not detected.  This should probably be
implemented as another transform so the compiler can detect those cases.)

code/error.lisp:
o Add new condition CONSTANT-MODIFIED.

compiler/fndb.lisp:
o Note destructive functions that should not modify constant args
o Note destructive functions whose results should be used.

compiler/ir1opt.lisp:
o Add new function CHECK-IMPORTANT-RESULT to check if the result is
  used.
o Update IR1-OPTIMIZE-COMBINATION to check if a function destructively
  modifies constant args or if the result of a destructive function is
  not used.

compiler/knownfun.lisp:
o Add new IR1 attribute, IMPORTANT-RESULT, to indicate that the result
  of a function should be used.
o Add new FUNCTION-INFO slot, DESTROYED-CONSTANT-ARGS.  This holds a
  function for computing the constant or literal arguments which are
  destructively modified by the function.
o Add support functions for DESTROYED-CONSTANT-ARGS functions.

Revision 1.26.8.1 - (view) (annotate) - [select for diffs]
Sun May 15 20:01:26 2005 UTC (8 years, 11 months ago) by rtoy
Branch: ppc_gencgc_branch
Changes since 1.26: +2 -2 lines
Diff to previous 1.26
Merge snapshot-2005-05 to this branch.

Revision 1.27 - (view) (annotate) - [select for diffs]
Tue Mar 22 14:33:53 2005 UTC (9 years ago) by rtoy
Branch: MAIN
CVS Tags: release-19b-base, release-19b-pre1, release-19b-pre2, release-19c, release-19c-base, release-19c-pre1, snapshot-2005-04, snapshot-2005-05, snapshot-2005-06, snapshot-2005-07, snapshot-2005-08, snapshot-2005-09, snapshot-2005-10
Branch point for: release-19b-branch, release-19c-branch
Changes since 1.26: +2 -2 lines
Diff to previous 1.26
Fix typo that prevented correct type derivation when
:IF-DOES-NOT-EXIST was given and was not a constant continuation.

See report from Stefan Scholl, cmucl-help, 2005-03-18.

Revision 1.26 - (view) (annotate) - [select for diffs]
Mon Aug 25 20:50:59 2003 UTC (10 years, 7 months ago) by gerd
Branch: MAIN
CVS Tags: amd64-merge-start, lisp-executable-base, 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, snapshot-2003-10, 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
Branch point for: lisp-executable, mod-arith-branch, ppc_gencgc_branch, release-19a-branch
Changes since 1.25: +5 -2 lines
Diff to previous 1.25
	Dynamic-extent support for x86.  Use boot16.lisp for
	bootstrapping.

	* src/bootfiles/18e/boot16.lisp: New file.

	* src/docs/cmu-user/extensions.tex (Dynamic-Extent Declarations):
	New section.

	* src/compiler/x86/macros.lisp (dynamic-extent-allocation):
	Rename from stack-allocation, save an instruction.
	(allocation): Don't call trust-dynamic-extent-declaration-p.

	* src/compiler/x86/alloc.lisp (%dynamic-extent-start)
	(%dynamic-extent-end): New vops.
	(list-or-list*): Add constant arg dynamic-extent.
	(fixed-alloc): Likewise.

	* src/compiler/generic/vm-ir2tran.lisp (do-fixed-alloc): Call
	fixed-alloc with dynamic-extent arg.

	* src/compiler/hppa/alloc.lisp (%dynamic-extent-start)
	(%dynamic-extent-end): Add dummy vops.
	* src/compiler/mips/alloc.lisp:
	* src/compiler/ppc/alloc.lisp:
	* src/compiler/alpha/alloc.lisp:
	* src/compiler/rt/alloc.lisp: Likewise.

	* src/compiler/seqtran.lisp (mapper-transform): Add dynamic-extent
	declarations.

	* src/compiler/node.lisp (continuation): Add slot
	dynamic-extent.
	(cleanup): Add :dynamic-extent to type of slot kind.

	* src/compiler/knownfun.lisp (dynamic-extent-closure-safe):
	New attribute.

	* src/compiler/ir2tran.lisp (ir2-stack-allocate): New function.
	(ir2-convert-closure): Handle dynamic-extent case differently.
	(%dynamic-extent, %dynamic-extent-start, %dynamic-extent-end)
	<ir2-convert>: New optimizers.
	(list, list*): Handle dynamic-extent.

	* src/compiler/ir1tran.lisp (*trust-dynamic-extent-declarations*)
	(*dynamic-extent-trace*): New variables.
	(trust-dynamic-extent-declaration-p): New function.
	(process-dynamic-extent-declaration)
	(dynamic-extent-allocation-p, dynamic-extent-closure-args)
	(gen-%dynamic-extent, with-dynamic-extent): New functions/macros.
	(ir1-convert-combination): Handle dynamic-extent closure args.
	(ir1-convert-combination-args): Add arg dynamic-extent-args.
	Set continuation-dynamic-extent for these args.
	(process-dynamic-extent-declaration): Rewritten.
	(ir1-convert-dynamic-extent-bindings): New function.
	(ir1-convert-special-bindings): Call it.
	(ir1-convert-lambda-body): Handle dynamic-extent rest lists.
	(let): Handle dynamic-extent vars.
	(let*): Call ir1-convert-dynamic-extent-bindings.

	* src/compiler/globaldb.lisp (*trust-dynamic-extent-declarations*)
	(trust-dynamic-extent-declaration-p): Remove.

	* src/compiler/fndb.lisp: Add dynamic-extent-closure-safe
	attribute to assorted functions.

	* src/compiler/envanal.lisp (environment-analyze): Call
	find-dynamic-extent-safe-closures.
	(emit-cleanups): Handle :dynamic-extent cleanups.
	(*suppress-dynamic-extent-closure-safe*): New variable.
	(mark-dynamic-extent-safe-closures)
	(find-dynamic-extent-safe-closures): New functions.

	* src/compiler/byte-comp.lisp (compute-produces-and-consumes):
	Treat :dynamic-extent like :tagbody cleanups.

	* src/code/exports.lisp ("C"): Export ir2-stack-allocate,
	%dynamic-extent, %dynamic-extent-start, %dynamic-extent-end.

	* src/code/byte-interp.lisp (%dynamic-extent):
	(%dynamic-extent-start, %dynamic-extent-end): New functions.
	(toplevel): Enable block compilation.

Revision 1.25.2.1 - (view) (annotate) - [select for diffs]
Thu Aug 14 11:29:37 2003 UTC (10 years, 8 months ago) by gerd
Branch: dynamic-extent
Changes since 1.25: +5 -2 lines
Diff to previous 1.25 , to next main 1.34
	* src/compiler/knownfun.lisp (dynamic-extent-closure-safe):
	New ir1 attribute.

	* src/compiler/ir1tran.lisp (dynamic-extent-closure-args):
	Test for called function having dynamic-extent-closure-args
	attribute.

	* src/compiler/fndb.lisp: Add dynamic-extent-closure-safe
	attributes.

	* src/compiler/eval-comp.lisp (%dynamic-extent)
	(%dynamic-extent-end): Dummies for interpreter.

	* src/compiler/byte-comp.lisp (%dynamic-extent)
	(%dynamic-extent-end): Dummies for byte compilation; not sure if
	needed.

Revision 1.25 - (view) (annotate) - [select for diffs]
Sat Aug 2 11:52:15 2003 UTC (10 years, 8 months ago) by gerd
Branch: MAIN
CVS Tags: dynamic-extent-base, sparc_gencgc, sparc_gencgc_merge
Branch point for: dynamic-extent, sparc_gencgc_branch
Changes since 1.24: +29 -2 lines
Diff to previous 1.24
	(deftype string-and-number () '(cons string (cons number null)))

	(defun bug1 (x)
	  (declare (type string-and-number x))
   	  (the number (car (reverse x))))

	(bug1 (list "one" 1))
	 => Type error 1 is not of type number.

	Reported by Luke Gorrie on cmucl-imp.

	* src/compiler/knownfun.lisp (result-type-first-arg/reverse)
	(reversed-cons-type): New functions.

	* src/compiler/fndb.lisp (nreverse, reverse): Use
	result-type-first-arg/reverse.

Revision 1.24 - (view) (annotate) - [select for diffs]
Wed Jul 30 15:33:05 2003 UTC (10 years, 8 months ago) by toy
Branch: MAIN
Changes since 1.23: +19 -2 lines
Diff to previous 1.23
Port of SBCL patch by Christophe Rhodes to make MAKE-SEQUENCE,
CONCATENATE, and MERGE derive their result types better.  Basically,
return type (VECTOR T) if VECTOR is given.

Revision 1.23 - (view) (annotate) - [select for diffs]
Fri Jun 6 16:23:46 2003 UTC (10 years, 10 months ago) by toy
Branch: MAIN
Changes since 1.22: +45 -1 lines
Diff to previous 1.22
Initial import of Paul Foley's simple-streams implmentation.  Some
functionality is still missing, but Lisp streams and Gray streams
should behave unchanged.

Revision 1.21.2.1 - (view) (annotate) - [select for diffs]
Fri Jul 7 09:34:24 2000 UTC (13 years, 9 months ago) by dtc
Branch: RELENG_18
CVS Tags: RELEASE_18c, RELEASE_18d
Changes since 1.21: +8 -8 lines
Diff to previous 1.21 , to next main 1.34
Flush unnecessary function proclaim's some of which had incorrect
return values, and replace them with function argument declarations
which the compiler move carefully checks.

Revision 1.22 - (view) (annotate) - [select for diffs]
Fri Jul 7 09:33:03 2000 UTC (13 years, 9 months ago) by dtc
Branch: MAIN
CVS Tags: LINKAGE_TABLE, PRE_LINKAGE_TABLE, UNICODE-BASE, cold-pcl-base, release-18e, release-18e-base, release-18e-pre1, release-18e-pre2, remove_negative_zero_not_zero
Branch point for: UNICODE-BRANCH, cold-pcl, release-18e-branch
Changes since 1.21: +8 -8 lines
Diff to previous 1.21
Flush unnecessary function proclaim's some of which had incorrect
return values, and replace them with function argument declarations
which the compiler move carefully checks.

Revision 1.21 - (view) (annotate) - [select for diffs]
Mon Oct 31 04:27:28 1994 UTC (19 years, 5 months ago) by ram
Branch: MAIN
CVS Tags: RELEASE_18a, RELEASE_18b
Branch point for: RELENG_18
Changes since 1.20: +1 -3 lines
Diff to previous 1.20
Fix headed boilerplate.

Revision 1.20 - (view) (annotate) - [select for diffs]
Thu May 13 12:52:31 1993 UTC (20 years, 11 months ago) by ram
Branch: MAIN
Changes since 1.19: +3 -2 lines
Diff to previous 1.19
If WHEN not supplied to %DEFTRANSFORM, defaults to :NATIVE, not NIL.

Revision 1.19 - (view) (annotate) - [select for diffs]
Tue May 11 13:55:34 1993 UTC (20 years, 11 months ago) by ram
Branch: MAIN
Changes since 1.18: +11 -7 lines
Diff to previous 1.18
Add support for When attribute of IR1 transforms.

Revision 1.18 - (view) (annotate) - [select for diffs]
Fri Feb 26 08:38:56 1993 UTC (21 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.17: +3 -2 lines
Diff to previous 1.17
new structure branch & tuning, see new_struct

Revision 1.17.1.1 - (view) (annotate) - [select for diffs] (vendor branch)
Tue Feb 23 13:24:50 1993 UTC (21 years, 1 month ago) by ram
Branch: new_struct
Changes since 1.17: +3 -2 lines
Diff to previous 1.17 , to next main 1.34
Make various compiler meta-info structures pure.

Revision 1.17 - (view) (annotate) - [select for diffs]
Sun Dec 13 07:32:00 1992 UTC (21 years, 4 months ago) by wlott
Branch: MAIN
Branch point for: new_struct
Changes since 1.16: +11 -10 lines
Diff to previous 1.16
Added :'s on the keyword names in %defknown's type proclaim.  Changed
%defknown to use the new optional argument to info instead of binding
*info-environment*.

Revision 1.16 - (view) (annotate) - [select for diffs]
Sat May 30 17:41:43 1992 UTC (21 years, 10 months ago) by wlott
Branch: MAIN
Changes since 1.15: +14 -3 lines
Diff to previous 1.15
Added byte-annotate and byte-compile slots to the function-info structure.

Revision 1.15 - (view) (annotate) - [select for diffs]
Wed Feb 19 16:14:21 1992 UTC (22 years, 2 months ago) by wlott
Branch: MAIN
Changes since 1.14: +13 -7 lines
Diff to previous 1.14
Added a :important keyword to deftransform that indicates that failure
notes should be printed even when speed==brevity.

Revision 1.14 - (view) (annotate) - [select for diffs]
Fri Jan 31 19:10:22 1992 UTC (22 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.13: +6 -4 lines
Diff to previous 1.13
When seeing to replace a transform, check that it has the same note as well as
the same type.  This provides a way to have more than one transform with the
same type signature.

Revision 1.13 - (view) (annotate) - [select for diffs]
Tue Nov 12 16:11:22 1991 UTC (22 years, 5 months ago) by ram
Branch: MAIN
Changes since 1.12: +14 -1 lines
Diff to previous 1.12
Added RESULT-TYPE-FLOAT-CONTAGION.

Revision 1.12 - (view) (annotate) - [select for diffs]
Tue Oct 8 15:49:28 1991 UTC (22 years, 6 months ago) by wlott
Branch: MAIN
Changes since 1.11: +3 -2 lines
Diff to previous 1.11
Fixed Rob's change to %deftransform.

Revision 1.11 - (view) (annotate) - [select for diffs]
Thu Oct 3 18:29:23 1991 UTC (22 years, 6 months ago) by ram
Branch: MAIN
Changes since 1.10: +27 -9 lines
Diff to previous 1.10
Changed IR1 transforms to be represented by TRANSFORM structures rather than an
alist.

Revision 1.10 - (view) (annotate) - [select for diffs]
Thu Apr 25 00:49:08 1991 UTC (22 years, 11 months ago) by ram
Branch: MAIN
Changes since 1.9: +31 -9 lines
Diff to previous 1.9
Generalized RESULT-TYPE-SPECIFIER-FIRST-ARG to be a functional that results a
closure for any Nth arg.  Added a similar SEQUENCE-RESULT-NTH-ARG which handles
sequence function result types.

Revision 1.9 - (view) (annotate) - [select for diffs]
Tue Apr 23 12:10:56 1991 UTC (23 years ago) by ram
Branch: MAIN
Changes since 1.8: +11 -3 lines
Diff to previous 1.8
Added Recursive and Explicit-Check attributes, which control compilation of the
function's definition.

Revision 1.8 - (view) (annotate) - [select for diffs]
Tue Apr 9 17:22:09 1991 UTC (23 years ago) by ram
Branch: MAIN
Changes since 1.7: +30 -3 lines
Diff to previous 1.7
Changed %DEFKNOWN not to ignore the derive-type methods.  Added some
generic derive-type methods for use with defknown.

Revision 1.7 - (view) (annotate) - [select for diffs]
Wed Feb 20 14:58:18 1991 UTC (23 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.6: +8 -4 lines
Diff to previous 1.6
New file header with RCS stuff.

Revision 1.6 - (view) (annotate) - [select for diffs]
Mon Feb 11 13:48:04 1991 UTC (23 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.5: +1 -1 lines
Diff to previous 1.5
Added use of REQUIRED-ARGUMENT.

Revision 1.5 - (view) (annotate) - [select for diffs]
Tue Nov 13 10:17:59 1990 UTC (23 years, 5 months ago) by wlott
Branch: MAIN
Changes since 1.4: +9 -4 lines
Diff to previous 1.4
Changed function-info-or-lose and %defknown to change the info environment
in *target-backend* if there is one.

Revision 1.4 - (view) (annotate) - [select for diffs]
Wed Nov 7 18:42:56 1990 UTC (23 years, 5 months ago) by wlott
Branch: MAIN
Changes since 1.3: +1 -1 lines
Diff to previous 1.3
typo.

Revision 1.3 - (view) (annotate) - [select for diffs]
Sat Nov 3 03:05:15 1990 UTC (23 years, 5 months ago) by wlott
Branch: MAIN
Changes since 1.2: +1 -0 lines
Diff to previous 1.2
Added export for all the attributes.

Revision 1.2 - (view) (annotate) - [select for diffs]
Fri Oct 12 01:17:29 1990 UTC (23 years, 6 months ago) by ram
Branch: MAIN
Changes since 1.1: +8 -2 lines
Diff to previous 1.1
Changed the comment in the IR1-ATTRIBUTES definition to reflect a new
conception of what UNSAFE means.  Also, clarified that functions which
are undefined on constant arguments (e.g. DELETE) are not FOLDABLE, 
even if they have no predictable side-effect.

Revision 1.1 - (view) (annotate) - [select for diffs]
Tue Feb 6 11:29:13 1990 UTC (24 years, 2 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