Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Tracker SCM

SCM Repository

[smlnj] View of /sml/trunk/src/compiler/FLINT/ChangeLog
ViewVC logotype

View of /sml/trunk/src/compiler/FLINT/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log

Revision 187 - (download) (annotate)
Wed Nov 11 07:04:24 1998 UTC (23 years, 10 months ago) by monnier
File size: 2647 byte(s)
* opt/collect.sml(info): got rid of Transfer
(unuselexp): junk the fundec part.
(unuse): return a boolean instead of calling an undertaker.
1998-11-11  Stefan Monnier  <monnier@cs.yale.edu>

	* opt/collect.sml: switched back to a read-only collect phase.  Also try
	  to export the info to allow fcontract to circumvent some of the get calls.
	(info): got rid of Transfer by using the intmap for redirection.
	(unuselexp): junk the fundec part.
	(unuse): return a boolean instead of calling an undertaker.

1998-11-09  Stefan Monnier  <monnier@cs.yale.edu>

	* opt/fcontract.sml: take advantage of single-arm SWITCH (aka decon)
	(SWITCH(CON)): just compare the conreps because types may differ (?)
	(inlineWitness): ugly hack used to figure out if inlining happened,
	  in order to decide whether to keep the inline bit or not (in cfun).

1998-11-06  Stefan Monnier  <monnier@cs.yale.edu>

	* opt/fcontract.sml: added unrolling support

	* reps/coerce.sml: replaced FK_FCT by fkfct, itself defined "sanely"

	* opt/fixfix.sml: adapted to the new fkind and introduced unrolling

1998-11-05  Stefan Monnier  <monnier@cs.yale.edu>

	* flint/flint.sig: changed fkind to have most annotations valid on
	  functors as well.  It also adds a loopkind annotation as well as extends
	  the inline boolean into a three-way alternative.

1998-10-30  Stefan Monnier  <monnier@cs.yale.edu>

	* opt/fcontract.sml (dropcstargs): replace constant args by the constant.
	(cexp): switched to a continuation passing style to implement the
	  let-associativity rule in a better way.

	* opt/fixfix.sml (curry): correctly handle "imposible" cases.

	* opt/collect.sml: completely revisited:  no distinction between
	  internal/external uses, dead-code elimination done right away.  This
	  makes fcontract a little simpler.

1998-10-28  Stefan Monnier  <monnier@cs.yale.edu>

	* opt/fcontract.sml (inline): do simple inlining only for non-isrec
	  functions (to ensure we never silently turn external uses into internal
	  uses) and correspondingly change the agressive inlining to inline
	  non-inlinable functions as long as its their last use.
	(dropargs): new functions to drop unused arguments.

1998-10-27  Stefan Monnier  <monnier@cs.yale.edu>

	* opt/optutils.sml: trying to reuse code between fixfix and fcontract.

	* opt/collect.sml (called): added for eta-expand.

	* opt/fcontract.sml (inline): allow single inlining of FK_FCT.

	* lsplit/ls-inline.sml: don't call lcontract anymore.

1998-10-26  Stefan Monnier  <monnier@cs.yale.edu>

	* cps/cpstrans.sml (spillOut): fix from Zhong.

	* cpsopt/cpsopt.sml: use Control.CG.cpsopt and fold over it.

	* main/flintcomp.sml: use Control.FLINT.phases and fold over it.

	* opt/fixfix.sml (curry): use Control.FLINT.maxargs to bound the uncurrying

ViewVC Help
Powered by ViewVC 1.0.0