Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Log of /sml/trunk/src/compiler/FLINT/opt/collect.sml
[smlnj] / sml / trunk / src / compiler / FLINT / opt / collect.sml  
ViewVC logotype

Log of /sml/trunk/src/compiler/FLINT/opt/collect.sml

Parent Directory Parent Directory


Sticky Revision:
(Current path doesn't exist after revision 2161)

Revision 733 - (view) (download) (annotate) - [select for diffs]
Modified Fri Nov 17 05:13:45 2000 UTC (19 years, 7 months ago) by blume
File length: 13657 byte(s)
Diff to previous 651 , to selected 187
merged the big housecleaning patch (see HISTORY!)

Revision 651 - (view) (download) (annotate) - [select for diffs]
Modified Thu Jun 1 18:34:03 2000 UTC (20 years, 1 month ago) by monnier
File length: 13609 byte(s)
Diff to previous 506 , to selected 187
bring revisions from the vendor branch to the trunk

Revision 506 - (view) (download) (annotate) - [select for diffs]
Modified Fri Dec 10 00:15:35 1999 UTC (20 years, 7 months ago) by monnier
File length: 13609 byte(s)
Diff to previous 504 , to selected 187
The compiler now compiles to a fix point but "split" still
doesn't work because of a problem with the pickler.

Revision 504 - (view) (download) (annotate) - [select for diffs]
Modified Tue Dec 7 18:31:05 1999 UTC (20 years, 7 months ago) by monnier
File length: 13612 byte(s)
Diff to previous 422 , to selected 187
the 110.25 merge compiles

Revision 422 - (view) (download) (annotate) - [select for diffs]
Modified Sun Sep 5 22:49:38 1999 UTC (20 years, 10 months ago) by monnier
File length: 13610 byte(s)
Diff to previous 220 , to selected 187
merged in 110.19 and 110.20.
Conflicts resolved, but it probably doesn't compile yet.

Revision 220 - (view) (download) (annotate) - [select for diffs]
Modified Tue Mar 9 02:15:05 1999 UTC (21 years, 4 months ago) by monnier
File length: 13607 byte(s)
Diff to previous 204 , to selected 187
* opt/split.sml (sexp): don't split HANDLE (it's incorrect).
(funeffect): embryo to detect side-effect free APPs (non-functional).
(splitThreshold): to put a cap on inlining.
(stfn): don't bother splitting inlinable TFNs.
* opt/fixfix.sml (curry): fixed bug when uncurrying cooked functions.
* opt/fcontract.sml (fcFun):  fix bug when undertaking mut-rec functions.
* main/flintcomp.sml:  added `recover' to help debugging.
updated the fold to allow extraction of Fi and return it at the end.
* lsplit/ls-inline.sml (oneBranch): fixed the wrapper function.
* flint/flintutil.sml (freevars):  forgot to count the arg of SWITCH.
* flint/flint.sig:  added a tfkind to TFN (only inlining for now).
* main/control.sml: new file. Moved from TopLevel/viscomp/control.sml
(splitThreshold): new var.
* TopLevel/viscomp/control.sig (FLINT.printFctTypes): to reduce clutter.
(splitThreshold): to control splitting agressiveness.
* TopLevel/viscomp/control.sml:  moved substructs outside so that clients
  can refer to them directly (rather than through Control.Foo) to reduce
  spurious dependencies.
* TopLevel/main/{codes,compile}: call `split' from flintcomp, not compile.
* kernel/ltyextern.sml (tnarrow), reps/{reify,rttype,typeoper}.sml:
  flatten arguments when reifying them since the pretty-printer doesn't
  know how to deal with flattened reified TFNs.

Revision 204 - (view) (download) (annotate) - [select for diffs]
Modified Sun Dec 20 11:23:30 1998 UTC (21 years, 6 months ago) by monnier
File length: 13593 byte(s)
Diff to previous 202 , to selected 187
*** empty log message ***

Revision 202 - (view) (download) (annotate) - [select for diffs]
Modified Sun Dec 13 02:29:45 1998 UTC (21 years, 6 months ago) by monnier
File length: 13602 byte(s)
Diff to previous 199 , to selected 187
Added IH_MAYBE to allow more selective inlining.

Revision 199 - (view) (download) (annotate) - [select for diffs]
Modified Wed Nov 25 18:30:38 1998 UTC (21 years, 7 months ago) by monnier
File length: 13642 byte(s)
Diff to previous 197 , to selected 187
* opt/loopify.sml: improved tail-calls recognition.
Also be more careful about wrapping loops into functions (so contraction
is not needed to cleanup).
* opt/fixfix.sml: pretend loops are smaller to increase their inlining.
* kernel/ltyextern.sml: commented out Stats calls.
* flint/flint.sig: changed LK_WHILE to LK_TAIL.

Revision 197 - (view) (download) (annotate) - [select for diffs]
Modified Sun Nov 22 01:25:23 1998 UTC (21 years, 7 months ago) by monnier
File length: 13887 byte(s)
Diff to previous 190 , to selected 187
Merged in Bratin's typelifting and Chris' named tvars.
FLINT is now using tvars from the first lcontract all the way to cps.

* reps/rttype.sml: changes from Bratin.
(rtLexp): define the NVAR case (return the tvar as an lvar).
* opt/[fl]contract.sml: removed the restriction on inlining at the same
  deBruijn depth.
* opt/lift.sml: new file for typelifting.
* flint/flintutil.sml (copy): added tvar renaming.
* flint/tvarcvt.sml: new file for named tvar <-> deBruijn conversions.

Revision 190 - (view) (download) (annotate) - [select for diffs]
Modified Thu Nov 19 21:01:17 1998 UTC (21 years, 7 months ago) by monnier
File length: 13884 byte(s)
Diff to previous 189 , to selected 187
* opt/optutils.sml (id): removed.  That was stupid.
* opt/collect.sml: drop support for actuals (was only used for cstargs).
* opt/lcontract.sml (lpfd): reset the inline bit to a safe value.
* opt/fcontract.sml (cstargs): eliminated.  Might reappear in a
  specialization phase some day.
(inline): turned off unrolling because it's buggy.
(APP): use the new ifs, damit!

Revision 189 - (view) (download) (annotate) - [select for diffs]
Modified Sun Nov 15 22:29:42 1998 UTC (21 years, 7 months ago) by monnier
File length: 14374 byte(s)
Diff to previous 187
*** empty log message ***

Revision 187 - (view) (download) (annotate) - [selected]
Modified Wed Nov 11 07:04:24 1998 UTC (21 years, 7 months ago) by monnier
File length: 13783 byte(s)
Diff to previous 186
* opt/collect.sml(info): got rid of Transfer
(unuselexp): junk the fundec part.
(unuse): return a boolean instead of calling an undertaker.

Revision 186 - (view) (download) (annotate) - [select for diffs]
Modified Wed Nov 11 05:24:43 1998 UTC (21 years, 7 months ago) by monnier
File length: 14793 byte(s)
Diff to previous 185 , to selected 187
* 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.

Revision 185 - (view) (download) (annotate) - [select for diffs]
Modified Tue Nov 10 21:01:05 1998 UTC (21 years, 7 months ago) by monnier
File length: 16238 byte(s)
Diff to previous 184 , to selected 187
* 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).

Revision 184 - (view) (download) (annotate) - [select for diffs]
Modified Sun Nov 8 21:18:20 1998 UTC (21 years, 8 months ago) by monnier
File length: 16183 byte(s)
Diff to previous 164 , to selected 187
* added basic unrolling support
* 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.
* switched to a continuation passing style to implement the
  let-associativity rule in a better way.

Revision 164 - (view) (download) (annotate) - [select for diffs]
Modified Sat Oct 31 01:03:30 1998 UTC (21 years, 8 months ago) by monnier
File length: 16182 byte(s)
Diff to previous 163 , to selected 187
* opt/fcontract.sml (dropcstargs): replace constant args by the constant.

* 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.

Revision 163 - (view) (download) (annotate) - [select for diffs]
Modified Thu Oct 29 21:00:27 1998 UTC (21 years, 8 months ago) by monnier
File length: 13513 byte(s)
Diff to previous 159 , to selected 187
added dropping of dead-arguments

Revision 159 - (view) (download) (annotate) - [select for diffs]
Modified Mon Oct 12 02:45:03 1998 UTC (21 years, 8 months ago) by monnier
File length: 12603 byte(s)
Diff to previous 121 , to selected 187
detect inlining loops
eliminate Con(Decon c)
eliminate Record(Select, ...) when type is available
uncount var-use of dropped arms when SWITCH is optimized out

Revision 121 - (view) (download) (annotate) - [select for diffs]
Added Sat Jun 6 15:03:25 1998 UTC (22 years, 1 month ago) by monnier
File length: 12415 byte(s)
Diff to selected 187
re-added fcontract and collect

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0