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/compiler/FLINT
ViewVC logotype

Log of /sml/trunk/compiler/FLINT

View Directory Listing Directory Listing


Sticky Revision:

Revision 4949 - Directory Listing
Modified Sun Apr 7 12:50:20 2019 UTC (9 months, 1 week ago) by jhr
  Split CPS out from the FLINT directory into its own subdirectory.  This change
  includes replacing the FLINTComp functor with a FLINTOpt structure and a CPSComp
  functor.

Revision 4886 - Directory Listing
Modified Wed Oct 10 16:54:46 2018 UTC (15 months, 1 week ago) by jhr
  Removed several unsupported primitive operators from the compiler.
  See the changelog for details.


Revision 4846 - Directory Listing
Modified Mon Sep 24 10:59:58 2018 UTC (15 months, 3 weeks ago) by jhr
  code layout

Revision 4844 - Directory Listing
Modified Sun Sep 23 23:38:49 2018 UTC (15 months, 3 weeks ago) by jhr
remove dead code

Revision 4842 - Directory Listing
Modified Sun Sep 23 23:37:18 2018 UTC (15 months, 3 weeks ago) by jhr
  Change CPS operators for wrapping/unwrapping integer and float values to
  be word-size flexible.  We now use a single `wrap` (and `unwrap`) operator
  that is parameterized by a `numkind` value.

Revision 4841 - Directory Listing
Modified Sun Sep 23 15:33:36 2018 UTC (15 months, 3 weeks ago) by jhr
  Changed CPS pure operators `wrap` and `unwrap` to `box` and `unbox` to avoid
  colflict with new names for `iwrap`, etc.

Revision 4832 - Directory Listing
Modified Sat Sep 22 11:29:28 2018 UTC (15 months, 4 weeks ago) by jhr
trailing whitespace

Revision 4828 - Directory Listing
Modified Thu Sep 13 19:37:20 2018 UTC (16 months ago) by jhr
code formatting

Revision 4824 - Directory Listing
Modified Thu Sep 13 17:17:18 2018 UTC (16 months ago) by jhr
removed Semant/statenv directory

Revision 4823 - Directory Listing
Modified Thu Sep 13 17:05:13 2018 UTC (16 months ago) by jhr
  Remove unused primopmap.sml file from FLINT/trans.

Revision 4822 - Directory Listing
Modified Thu Sep 13 16:43:57 2018 UTC (16 months ago) by dbm
64BIT fixes to pequal.sml, equal.sml, etc.

Revision 4821 - Directory Listing
Modified Thu Sep 13 16:41:59 2018 UTC (16 months ago) by jhr
adding some comments

Revision 4813 - Directory Listing
Modified Wed Sep 12 23:55:25 2018 UTC (16 months, 1 week ago) by jhr
  merging in changes from the arith64 branch: mostly removal of the broken
  CPS checking code plus more "64BIT:" comments.

Revision 4811 - Directory Listing
Modified Wed Sep 12 21:53:53 2018 UTC (16 months, 1 week ago) by jhr
remove unused expandNEW.sml file

Revision 4804 - Directory Listing
Modified Wed Sep 12 19:08:32 2018 UTC (16 months, 1 week ago) by jhr
  some code formatting and merged in 64-bit cleanup of IntInfCnv (nee InfCnv)  module.

Revision 4799 - Directory Listing
Modified Tue Sep 11 22:07:00 2018 UTC (16 months, 1 week ago) by jhr
  Replace the implementation of switch with a cleaner version.

Revision 4794 - Directory Listing
Modified Tue Sep 11 21:46:05 2018 UTC (16 months, 1 week ago) by dbm
fixed (most) 64BIT issues in FLINT/trans/translate.sml

Revision 4793 - Directory Listing
Modified Sun Sep 9 23:22:11 2018 UTC (16 months, 1 week ago) by dbm
minor updates to FLINT/MAP

Revision 4791 - Directory Listing
Modified Sun Sep 9 22:54:55 2018 UTC (16 months, 1 week ago) by dbm
64BIT fix for FLINT/trans/pequal.sml

Revision 4717 - Directory Listing
Modified Mon Sep 3 00:48:43 2018 UTC (16 months, 2 weeks ago) by jhr
  better error messages

Revision 4676 - Directory Listing
Modified Sat Jun 16 19:37:32 2018 UTC (19 months ago) by jhr
  Working on code cleanup for 64-bit support.

Revision 4669 - Directory Listing
Modified Wed Jun 13 17:28:50 2018 UTC (19 months, 1 week ago) by jhr
  change representation of integer types in FLINT to be target-word-size
  independent

Revision 4668 - Directory Listing
Modified Tue Jun 12 21:57:04 2018 UTC (19 months, 1 week ago) by jhr
  remove OBJECT constructor from CPS.value datatype, since it is not used

Revision 4667 - Directory Listing
Modified Tue Jun 12 18:46:48 2018 UTC (19 months, 1 week ago) by jhr
remove condmove primop from CPS

Revision 4666 - Directory Listing
Modified Tue Jun 12 18:46:20 2018 UTC (19 months, 1 week ago) by jhr
add FIXME comment

Revision 4627 - Directory Listing
Modified Tue May 29 23:15:38 2018 UTC (19 months, 3 weeks ago) by dbm
cleanup, documentation, and debugging support for match compiler (FLINT/trans/matchcomp.sml, etc.)

Revision 4570 - Directory Listing
Modified Mon May 7 13:11:08 2018 UTC (20 months, 1 week ago) by jhr
added FIXME comment

Revision 4565 - Directory Listing
Modified Sun May 6 17:26:08 2018 UTC (20 months, 2 weeks ago) by jhr
adding comments

Revision 4564 - Directory Listing
Modified Sat May 5 18:45:18 2018 UTC (20 months, 2 weeks ago) by dbm
removed FLINT/const-arith directory

Revision 4563 - Directory Listing
Modified Sat May 5 18:44:12 2018 UTC (20 months, 2 weeks ago) by dbm
removed all files in FLINT/const-arith

Revision 4561 - Directory Listing
Modified Sat May 5 12:47:13 2018 UTC (20 months, 2 weeks ago) by jhr
  Cleanup switch code a bit.

Revision 4560 - Directory Listing
Modified Fri May 4 23:00:31 2018 UTC (20 months, 2 weeks ago) by jhr
  Switch CPS to use IntInf.int to represent integer/word values

Revision 4558 - Directory Listing
Modified Fri May 4 15:02:34 2018 UTC (20 months, 2 weeks ago) by jhr
code layout

Revision 4556 - Directory Listing
Modified Thu May 3 20:34:31 2018 UTC (20 months, 2 weeks ago) by jhr
code formatting

Revision 4553 - Directory Listing
Modified Wed May 2 15:51:09 2018 UTC (20 months, 2 weeks ago) by jhr
const-arith moved to MiscUtil

Revision 4552 - Directory Listing
Modified Wed May 2 15:43:07 2018 UTC (20 months, 2 weeks ago) by jhr
  Switch FLINT IR to use IntInf.int for integer and word constants.

Revision 4551 - Directory Listing
Modified Wed May 2 01:16:33 2018 UTC (20 months, 2 weeks ago) by dbm
resolved tree conflict on FLINT/const-arith

Revision 4550 - Directory Listing
Modified Tue May 1 17:14:02 2018 UTC (20 months, 2 weeks ago) by jhr
  working on numeric constants

Revision 4549 - Directory Listing
Modified Tue May 1 13:07:26 2018 UTC (20 months, 2 weeks ago) by jhr
  Added contraction rules for unsigned *, +, and -

Revision 4548 - Directory Listing
Modified Tue May 1 11:34:10 2018 UTC (20 months, 2 weeks ago) by jhr
  moved const-arith into MiscUtil so that it is available to the
  CodeGen phase (in addition to cpsopt).

Revision 4545 - Directory Listing
Modified Sat Apr 28 15:50:00 2018 UTC (20 months, 3 weeks ago) by jhr
  Changed representation of integer/word constants in PLambda to
  use IntInf.int.

Revision 4544 - Directory Listing
Modified Sat Apr 28 13:27:19 2018 UTC (20 months, 3 weeks ago) by jhr
  Switch to using IntInf.int to represent object descriptors in
  the code generator.  Part of the transition toward 64 bits.

Revision 4542 - Directory Listing
Modified Fri Apr 27 18:39:43 2018 UTC (20 months, 3 weeks ago) by dbm
deleted PACKexp from Absyn and other files referring to it

Revision 4541 - Directory Listing
Modified Fri Apr 27 12:52:29 2018 UTC (20 months, 3 weeks ago) by jhr
  Working on integer/word literals stuff

Revision 4540 - Directory Listing
Modified Wed Apr 25 17:06:35 2018 UTC (20 months, 3 weeks ago) by jhr
  Use RealConst.t representation in FLINT and CPS IRs.

Revision 4538 - Directory Listing
Modified Sat Apr 21 17:12:11 2018 UTC (20 months, 4 weeks ago) by jhr
  Propogate the source string for numeric literals into the
  Absyn so that it can be used in error messages.

Revision 4537 - Directory Listing
Modified Sat Apr 21 14:19:56 2018 UTC (20 months, 4 weeks ago) by jhr
  moved literal-to-num.sml to the FLINT/trans directory, since that is
  the only place that it is used.

Revision 4536 - Directory Listing
Modified Sat Apr 21 13:25:42 2018 UTC (20 months, 4 weeks ago) by jhr
  Changed Absyn representation of real constants to prepare
  for eventual 32-bit float support.

Revision 4535 - Directory Listing
Modified Fri Apr 20 14:10:47 2018 UTC (21 months ago) by jhr
  code formatting and comments

Revision 4531 - Directory Listing
Modified Fri Apr 20 13:32:28 2018 UTC (21 months ago) by jhr
  Adding library to support constant integer/word arithmetic at
  arbitrary precisions.

Revision 4527 - Directory Listing
Modified Sat Apr 14 14:41:11 2018 UTC (21 months ago) by jhr
  Switched the representation of real literals from strings to the
  RealLit.t type.  This change is the first step toward fixing
  bug #191 and supporting 32-bit reals.

Revision 4523 - Directory Listing
Modified Fri Apr 13 14:41:33 2018 UTC (21 months, 1 week ago) by jhr
  Removed real patterns from Absyn and FLINT, since they are not allowed by SML'93.

Revision 4516 - Directory Listing
Modified Sat Oct 28 17:51:15 2017 UTC (2 years, 2 months ago) by jhr
  adding some documentation

Revision 4512 - Directory Listing
Modified Sun Oct 22 14:23:27 2017 UTC (2 years, 2 months ago) by jhr
  Some documentation and simplified the interface to the Literals
  module in FLINT.

Revision 4498 - Directory Listing
Modified Mon Oct 16 17:27:17 2017 UTC (2 years, 3 months ago) by jhr
  No longer compiler the file FLINT/opt/abcopt.sml, since its optimization
  is never enabled.

Revision 4494 - Directory Listing
Modified Sun Oct 15 03:04:17 2017 UTC (2 years, 3 months ago) by jhr
  Working on change in integer/word literal representation.
  Stage 1 -- changed representation in Absyn.

Revision 4456 - Directory Listing
Modified Thu Sep 21 20:09:47 2017 UTC (2 years, 3 months ago) by jhr
minor code cleanup

Revision 4454 - Directory Listing
Modified Thu Sep 21 18:25:19 2017 UTC (2 years, 3 months ago) by jhr
  Changed representation of CPS.cty to track sizes of untagged integer
  and float types.

Revision 4452 - Directory Listing
Modified Thu Sep 21 16:37:47 2017 UTC (2 years, 3 months ago) by dbm
changed cty in FLINT/cps/cps.{sig,sml}

Revision 4446 - Directory Listing
Modified Wed Sep 20 23:40:53 2017 UTC (2 years, 3 months ago) by jhr
  Bug fix.  Also add headers and remove trailing whitespace.

Revision 4439 - Directory Listing
Modified Wed Sep 20 18:45:26 2017 UTC (2 years, 3 months ago) by jhr
  Working towards 64-bit support.  Added Target module, which specifies the
  properties of the target (e.g., size in bits of default int type).  Reworked
  generation of InlineT structure to be target specific.  Some cleanup for
  primop bindings and FLINT's primtycs.

Revision 4438 - Directory Listing
Modified Wed Sep 20 16:44:18 2017 UTC (2 years, 3 months ago) by dbm
minor edits of primtyc.sig and pickmod.sml

Revision 4437 - Directory Listing
Modified Wed Sep 20 00:08:57 2017 UTC (2 years, 4 months ago) by dbm
getting rid of ptnum stuff

Revision 4432 - Directory Listing
Modified Tue Sep 19 21:40:38 2017 UTC (2 years, 4 months ago) by jhr
  Working on new primops.  We've moved a bunch of code from Semant to ElabData
  and we've changed the representation of primop IDs in structures.

Revision 4430 - Directory Listing
Modified Tue Sep 19 18:29:03 2017 UTC (2 years, 4 months ago) by dbm
updated FLINT/trans/translate for new primop-bindings

Revision 4428 - Directory Listing
Modified Tue Sep 19 17:42:58 2017 UTC (2 years, 4 months ago) by dbm
moved primop.{sig/sml} from FLINT/kernel to Semant/prim

Revision 4423 - Directory Listing
Modified Tue Sep 19 16:54:52 2017 UTC (2 years, 4 months ago) by dbm
comment editiing in FLINT/kernel/primop.sml

Revision 4422 - Directory Listing
Modified Tue Sep 19 16:43:12 2017 UTC (2 years, 4 months ago) by jhr
new primop representation

Revision 4419 - Directory Listing
Modified Mon Sep 18 21:53:44 2017 UTC (2 years, 4 months ago) by jhr
  remove BOXEDUPDATE primop, since it is the same as UPDATE.

Revision 4418 - Directory Listing
Modified Mon Sep 18 21:35:55 2017 UTC (2 years, 4 months ago) by jhr
  Removed unused primops (GETRUNVEC, DEFLVAR, USELVAR)

Revision 4416 - Directory Listing
Modified Mon Sep 18 20:39:57 2017 UTC (2 years, 4 months ago) by dbm
fix for bug 123, updated documentation for primops

Revision 4328 - Directory Listing
Modified Fri Apr 14 17:51:54 2017 UTC (2 years, 9 months ago) by jhr
  removing trailing spaces

Revision 4314 - Directory Listing
Modified Thu Sep 15 22:46:20 2016 UTC (3 years, 4 months ago) by dbm
Further cleanup of FLINT stuff in front end. module-plists.sml moved to FLINT/trans

Revision 4309 - Directory Listing
Modified Thu Sep 15 01:31:46 2016 UTC (3 years, 4 months ago) by dbm
removed remaining dependencies on PlambdaType from front-end

Revision 4304 - Directory Listing
Modified Tue Sep 13 22:14:18 2016 UTC (3 years, 4 months ago) by jhr
  Added support for Successor ML 'do' declaration support.  There are still some open
  bugs with respect to explicit type variables.

Revision 4297 - Directory Listing
Modified Mon Sep 12 17:10:10 2016 UTC (3 years, 4 months ago) by dbm
fix for bug 149: added boolean stripped field to DATATYPE tyckind. requires -rebuild option on makeml because of change of static env pickles

Revision 4158 - Directory Listing
Modified Sun Oct 4 15:20:08 2015 UTC (4 years, 3 months ago) by jhr
patch for bug #140

Revision 4153 - Directory Listing
Modified Tue Sep 29 13:30:46 2015 UTC (4 years, 3 months ago) by jhr
  removed debugging code

Revision 4149 - Directory Listing
Modified Mon Sep 28 22:40:45 2015 UTC (4 years, 3 months ago) by jhr
better internal error reporting

Revision 4148 - Directory Listing
Modified Mon Sep 28 22:38:28 2015 UTC (4 years, 3 months ago) by jhr
switch to IntRedBlackMap

Revision 4130 - Directory Listing
Modified Fri Sep 25 19:00:24 2015 UTC (4 years, 3 months ago) by jhr
  preparing to switch from IntBinaryMao to IntRedBlackMap.

Revision 4124 - Directory Listing
Modified Thu Sep 24 22:04:30 2015 UTC (4 years, 3 months ago) by jhr
fixing the indentation

Revision 4123 - Directory Listing
Modified Thu Sep 24 20:26:44 2015 UTC (4 years, 3 months ago) by jhr
  update header comment.  Note that bug #45 was fixed by previous commit (r4121)

Revision 4121 - Directory Listing
Modified Thu Sep 24 20:15:43 2015 UTC (4 years, 3 months ago) by jhr
  Removed ListPair_all, since it is the same as the Basis function ListPair.allEq.

Revision 4120 - Directory Listing
Modified Thu Sep 24 20:14:38 2015 UTC (4 years, 3 months ago) by jhr
  Expose toStringValue function for debugging

Revision 4119 - Directory Listing
Modified Thu Sep 24 20:13:59 2015 UTC (4 years, 3 months ago) by jhr
switch from BinaryMap to RedBlackMap

Revision 4000 - Directory Listing
Modified Fri Dec 19 22:33:49 2014 UTC (5 years, 1 month ago) by dbm
Fix for bug #52. Major revision of the mechanism for overloading resolution that uses a common basis for overloaded operators and literals.

Revision 3901 - Directory Listing
Modified Thu Aug 14 21:14:55 2014 UTC (5 years, 5 months ago) by jhr
  Fixed bug #119 (conversion from tuples to vectors)

Revision 3652 - Directory Listing
Modified Thu Jan 12 21:49:32 2012 UTC (8 years ago) by dbm
added showTypeErrorCulprit flag in ElabControl (Elaborator/main/elabcontrol.s??)

Revision 3648 - Directory Listing
Modified Fri Jan 6 19:55:25 2012 UTC (8 years ago) by dbm
fix of lexer off-by-one bug, change of SourceMap interface, slight cleanup of match compiler, preliminary modification of type checker to add culprit tracking

Revision 3401 - Directory Listing
Modified Fri Jun 12 16:00:45 2009 UTC (10 years, 7 months ago) by blume
fix for 64-bit pattern match bug

Revision 3117 - Directory Listing
Modified Thu Jul 17 03:31:51 2008 UTC (11 years, 6 months ago) by dbm
ported changes from sml/branches/temi-branch -r 3005:3116 into trunk

Revision 2954 - Directory Listing
Modified Mon Feb 25 15:43:35 2008 UTC (11 years, 10 months ago) by gkuan
propagate VARty OPEN's eq property in LBOUND, bugfix for equality type signature matching bug

Revision 2951 - Directory Listing
Modified Sun Feb 24 17:34:00 2008 UTC (11 years, 10 months ago) by gkuan
fixed equality type signature matching bug

Revision 2773 - Directory Listing
Modified Sat Sep 15 05:58:06 2007 UTC (12 years, 4 months ago) by gkuan
fixed performance bugs: seqdecl inserts into staticenv now does lazy consolidation and flintnm lexps2values debugging print eliminated (had quadratic behavior)

Revision 2732 - Directory Listing
Modified Sat Jul 28 06:14:28 2007 UTC (12 years, 5 months ago) by gkuan
Added f64sgn signbit primop

Revision 2650 - Directory Listing
Modified Thu May 31 19:57:03 2007 UTC (12 years, 7 months ago) by dbm
merge from primop-branch-3 (base) into trunk (2603:2649)

Revision 2645 - Directory Listing
Modified Thu May 31 16:39:53 2007 UTC (12 years, 7 months ago) by blume
bug fixes to translate.sml

Revision 2642 - Directory Listing
Modified Thu May 31 01:03:20 2007 UTC (12 years, 7 months ago) by blume
fixed bug in DIV/MOD/REM/QUOT code (translate);
the wrong lambdatype was inserted into the primop causing
Word32.mod (0w22, 0w11) to crash

Revision 2624 - Directory Listing
Modified Tue May 29 23:00:44 2007 UTC (12 years, 7 months ago) by blume
added explicit test for divide-by-0 to translate phase for all div/mod/quot/rem ops

Revision 2603 - Directory Listing
Modified Wed May 23 21:50:42 2007 UTC (12 years, 8 months ago) by dbm
merge of primop3/base branch -r2492:2602 into trunk

Revision 2492 - Directory Listing
Modified Fri May 4 03:39:10 2007 UTC (12 years, 8 months ago) by dbm
merge revisions 2221:2491 from primop-branch-3

Revision 2162 - Directory Listing
Modified Thu Nov 2 21:20:47 2006 UTC (13 years, 2 months ago) by blume
eliminated src dir

Revision 1886 - Directory Listing
Modified Tue Feb 14 23:31:16 2006 UTC (13 years, 11 months ago) by mblume
Original Path: sml/trunk/src/compiler/FLINT
hooked intel mac abi code into main system

Revision 1838 - Directory Listing
Modified Fri Oct 14 21:24:05 2005 UTC (14 years, 3 months ago) by jhr
Original Path: sml/trunk/src/compiler/FLINT
Add Zhong Shao's fix for datatype equality functions.

Revision 1755 - Directory Listing
Modified Thu Feb 10 23:54:06 2005 UTC (14 years, 11 months ago) by mblume
Original Path: sml/trunk/src/compiler/FLINT
long long results implemented

Revision 1688 - Directory Listing
Modified Fri Nov 12 22:19:51 2004 UTC (15 years, 2 months ago) by mblume
Original Path: sml/trunk/src/compiler/FLINT
fixed an issue with polyequal

Revision 1684 - Directory Listing
Modified Thu Nov 11 06:15:33 2004 UTC (15 years, 2 months ago) by mblume
Original Path: sml/trunk/src/compiler/FLINT
most of 64-bit word support is there now

Revision 1683 - Directory Listing
Modified Thu Nov 11 00:12:41 2004 UTC (15 years, 2 months ago) by mblume
Original Path: sml/trunk/src/compiler/FLINT
more 64-bit hacking (still in the middle of it, though)

Revision 1682 - Directory Listing
Modified Tue Nov 9 23:48:09 2004 UTC (15 years, 2 months ago) by mblume
Original Path: sml/trunk/src/compiler/FLINT
started building support for 64-bit types

Revision 1641 - Directory Listing
Modified Wed Oct 6 20:18:55 2004 UTC (15 years, 3 months ago) by mblume
Original Path: sml/trunk/src/compiler/FLINT
minor cleanup in absyn and btrace

Revision 1374 - Directory Listing
Modified Mon Sep 15 22:17:10 2003 UTC (16 years, 4 months ago) by macqueen
Original Path: sml/trunk/src/compiler/FLINT
undoing accidental commit of files intended for primop-branch

Revision 1371 - Directory Listing
Modified Mon Sep 15 03:43:47 2003 UTC (16 years, 4 months ago) by macqueen
Original Path: sml/trunk/src/compiler/FLINT
eliminate type from inline info

Revision 1347 - Directory Listing
Modified Thu Aug 28 21:59:15 2003 UTC (16 years, 4 months ago) by mblume
Original Path: sml/trunk/src/compiler/FLINT
implemented IntInf in Basis and compiler;
new version number; new bootfiles

Revision 1344 - Directory Listing
Modified Wed Aug 13 18:04:08 2003 UTC (16 years, 5 months ago) by macqueen
Original Path: sml/trunk/src/compiler/FLINT
merged changes from mcz-branch (tag: dbm-20030813-mcz-merge1)

Revision 1335 - Directory Listing
Modified Tue May 27 21:54:23 2003 UTC (16 years, 7 months ago) by mblume
Original Path: sml/trunk/src/compiler/FLINT
eliminated many cases of poly-eq

Revision 1334 - Directory Listing
Modified Thu May 22 22:46:30 2003 UTC (16 years, 8 months ago) by mblume
Original Path: sml/trunk/src/compiler/FLINT
major cleanup: eliminate all non-exhaustive pattern matches

Revision 1332 - Directory Listing
Modified Sun May 18 03:21:16 2003 UTC (16 years, 8 months ago) by mblume
Original Path: sml/trunk/src/compiler/FLINT
added IF/WHILE/ANDALSO/ORELSE to Absyn (to improve error messages)

Revision 1249 - Directory Listing
Modified Tue Jun 25 21:23:40 2002 UTC (17 years, 6 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
fixed bug in FP translation of INLMAX and INLMIN

Revision 1208 - Directory Listing
Modified Tue May 21 02:22:43 2002 UTC (17 years, 8 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
more controls cleanup; removed some wrongly-added things from config/preloads

Revision 1201 - Directory Listing
Modified Fri May 17 20:48:38 2002 UTC (17 years, 8 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
pushed new controls interface through compiler

Revision 1183 - Directory Listing
Modified Fri Mar 29 19:09:48 2002 UTC (17 years, 9 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
division primops, inline primops for min/max/abs

Revision 1180 - Directory Listing
Modified Tue Mar 26 22:24:24 2002 UTC (17 years, 9 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
improved implementation of div, mod, and rem

Revision 1178 - Directory Listing
Modified Mon Mar 25 20:51:48 2002 UTC (17 years, 9 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
raw-primop cleanup

Revision 1174 - Directory Listing
Modified Sat Mar 23 21:14:40 2002 UTC (17 years, 10 months ago) by leunga
Original Path: sml/trunk/src/compiler/FLINT

    Added some new primops for creating/manipulating temporary "C" objects
    allocated on the ml heap.

Revision 1145 - Directory Listing
Modified Fri Mar 15 02:30:53 2002 UTC (17 years, 10 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
moved Controls module into its own library;
changed Controls interface to make it saner;
made MLRISC independent of Controls;
minor changes to CM

Revision 1128 - Directory Listing
Modified Fri Mar 8 21:05:27 2002 UTC (17 years, 10 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
implemented entry points; NEW BOOTFILES

Revision 1126 - Directory Listing
Modified Thu Mar 7 21:16:28 2002 UTC (17 years, 10 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
implemented generic Controls module and used it for
all compiler flags/tuneable knobs/...;
more command-line options accepted (for setting the above controls);
some minor bug fixes

Revision 1123 - Directory Listing
Modified Thu Mar 7 19:13:25 2002 UTC (17 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 1122 - Directory Listing
Modified Thu Mar 7 19:13:17 2002 UTC (17 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
(FSplit.split.stfn): Check "split all" before checking
"split nothing" in case the TFN has nothing but RET[v].

Revision 1094 - Directory Listing
Modified Mon Feb 25 09:58:56 2002 UTC (17 years, 10 months ago) by leunga
Original Path: sml/trunk/src/compiler/FLINT

    A new CPS spill phase.  Compilation of large structures with over
1000 items can now finish before the heat death of the universe.

Revision 1078 - Directory Listing
Modified Tue Feb 19 21:26:48 2002 UTC (17 years, 11 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
a mix of changes to CM and FFI

Revision 1008 - Directory Listing
Modified Fri Dec 14 21:01:29 2001 UTC (18 years, 1 month ago) by shao
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 1007 - Directory Listing
Modified Fri Dec 14 16:00:02 2001 UTC (18 years, 1 month ago) by shao
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 1006 - Directory Listing
Modified Fri Dec 14 15:27:50 2001 UTC (18 years, 1 month ago) by shao
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 986 - Directory Listing
Modified Wed Nov 21 21:03:17 2001 UTC (18 years, 2 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
Release 110.37 -- see HISTORY

Revision 977 - Directory Listing
Modified Wed Nov 14 16:53:16 2001 UTC (18 years, 2 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
srcname routed to mlriscgen;
more fiddling with pgraph (portable library graph) code

Revision 940 - Directory Listing
Modified Thu Sep 27 20:31:52 2001 UTC (18 years, 3 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
(fcexp.fcFix.fcEta): Fix typo.

Revision 922 - Directory Listing
Modified Wed Sep 12 20:45:53 2001 UTC (18 years, 4 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
(loopify.lexp.cfun): Don't forget to empty TFS when TCP is not true.

Revision 904 - Directory Listing
Modified Mon Aug 20 19:50:05 2001 UTC (18 years, 5 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
fixed a minor slipup

Revision 903 - Directory Listing
Modified Mon Aug 20 19:34:06 2001 UTC (18 years, 5 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
library debugprof.cm extracted

Revision 902 - Directory Listing
Modified Wed Aug 15 21:17:05 2001 UTC (18 years, 5 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
new organization of compiler libraries

Revision 898 - Directory Listing
Modified Mon Aug 13 17:44:08 2001 UTC (18 years, 5 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
committed Zhongs fix

Revision 879 - Directory Listing
Modified Thu Jul 19 18:59:38 2001 UTC (18 years, 6 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
extensive organizational changes

Revision 826 - Directory Listing
Modified Wed May 9 20:32:17 2001 UTC (18 years, 8 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
bug fix for cpsopt/contract.sml

Revision 823 - Directory Listing
Modified Tue May 8 21:25:15 2001 UTC (18 years, 8 months ago) by george
Original Path: sml/trunk/src/compiler/FLINT
omit frame pointer optimization

Revision 818 - Directory Listing
Modified Fri May 4 20:58:47 2001 UTC (18 years, 8 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
merging changes from devel branch and fixing up some earlier mistakes
(see HISTORY)

Revision 777 - Directory Listing
Modified Fri Jan 12 12:17:38 2001 UTC (19 years ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
syncing with my private branch

Revision 774 - Directory Listing
Modified Wed Jan 10 12:50:56 2001 UTC (19 years ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
merging changes from private branch

Revision 773 - Directory Listing
Modified Mon Jan 8 16:18:37 2001 UTC (19 years ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
merging changes from private branch

Revision 772 - Directory Listing
Modified Thu Jan 4 15:36:41 2001 UTC (19 years ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
merging changes from private branch

Revision 771 - Directory Listing
Modified Sat Dec 30 13:06:09 2000 UTC (19 years ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
merging changes from private branch

Revision 754 - Directory Listing
Modified Mon Dec 11 17:38:33 2000 UTC (19 years, 1 month ago) by george
Original Path: sml/trunk/src/compiler/FLINT
fix for bug 1576

Revision 733 - Directory Listing
Modified Fri Nov 17 05:13:45 2000 UTC (19 years, 2 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
merged the big housecleaning patch (see HISTORY!)

Revision 729 - Directory Listing
Modified Thu Nov 9 02:16:17 2000 UTC (19 years, 2 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
code duplication cleanup (merge from private branch)

Revision 717 - Directory Listing
Modified Sun Nov 5 15:07:51 2000 UTC (19 years, 2 months ago) by george
Original Path: sml/trunk/src/compiler/FLINT
support for sqrt and trig functions on the x86

Revision 699 - Directory Listing
Modified Mon Aug 21 22:13:39 2000 UTC (19 years, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
(FLINTComp.flintcomp): Convert named type vars
in `fi' back into deBruijn indices since this is still the
representation used outside of flintcomp (i.e. in LSplitInline).

Revision 668 - Directory Listing
Modified Fri Jun 16 17:40:42 2000 UTC (19 years, 7 months ago) by yx29
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 667 - Directory Listing
Modified Fri Jun 16 17:25:51 2000 UTC (19 years, 7 months ago) by yx29
Original Path: sml/trunk/src/compiler/FLINT
2000-06-16  Fixed the abcOpt phase. See FLINT/ChangeLog for details.

Revision 666 - Directory Listing
Modified Fri Jun 16 08:27:00 2000 UTC (19 years, 7 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
merging back my devel changes (anchor environments)

Revision 651 - Directory Listing
Modified Thu Jun 1 18:34:03 2000 UTC (19 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
bring revisions from the vendor branch to the trunk

Revision 626 - Directory Listing
Modified Sat Apr 22 23:24:24 2000 UTC (19 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* opt/flintopt.txt: New file.
* main/control.sml (phases): Move loopify+fixfix to before wrap.
* cpsopt/cpsopt.sml (zeroexpand): New function.
* TopLevel/viscomp/control.sml (cpsopt): Add `zeroexpand' to reduce
RA-blowup when compiling ml.grm.sml.

Revision 625 - Directory Listing
Modified Sat Apr 22 23:21:36 2000 UTC (19 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* opt/abcopt.sml: New file.
* main/flintcomp.sml: Change `Compiler' to `FLINT' or `CPS' in the
name of phases printed by Compiler.Stats.
(abcopt): New phase.
* viscomp-core.cm: Add FLINT.opt/abcopt.sml.

Revision 623 - Directory Listing
Modified Thu Apr 20 17:24:37 2000 UTC (19 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* TopLevel/viscomp/control.sml (cpsopt): Use last_contract rather than
first_contract because dropargs is needed to avoid blowing up
the register allocator.

Revision 622 - Directory Listing
Modified Wed Apr 19 22:47:11 2000 UTC (19 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* main/control.sml (phases): Move loopify (and its fixfix) to before
`reify' (while still keeping a fixfix after reify).
* TopLevel/viscomp/control.sml (cpsopt): Remove all but first_contract.
* TopLevel/interact/evalloop.sml (loop): Don't hide compiler errors.

Revision 621 - Directory Listing
Modified Wed Apr 19 22:44:30 2000 UTC (19 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
(curry): Make sure that uncurrying will not make a
function recursive, but allow uncurrying a mix of functor and function
in some restricted cases.
(uncurry): Properly handle the new functor/function case.
(SWITCH): Don't change the ordering while folding over the arms.
Plus some cosmetic code movements to avoid long lines.

Revision 604 - Directory Listing
Modified Fri Apr 7 13:53:08 2000 UTC (19 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* opt/switchoff.sml: Remove.
* reps/equal.sml: Rewritten to generate more CPS-like code.
* opt/fcontract.sml (fcLet): re-introduced the branch/switch code,
but without the deadly multiple traversals.
* */control.sml: Less flintopt and more cpsopt.

Revision 592 - Directory Listing
Modified Mon Apr 3 07:04:12 2000 UTC (19 years, 9 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
merging branch blume_devel_v110p26p2_1 (elimination of corenv)

Revision 587 - Directory Listing
Modified Thu Mar 30 09:01:52 2000 UTC (19 years, 9 months ago) by blume
Original Path: sml/trunk/src/compiler/FLINT
merging back development branch blume_devel_v110p26p1_3...
This involves changes to CM and the removal of CMStaticEnv from
the compiler.  See the HISTORY file for more information.

Revision 540 - Directory Listing
Modified Fri Feb 18 19:46:31 2000 UTC (19 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 533 - Directory Listing
Modified Thu Feb 10 21:57:43 2000 UTC (19 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 532 - Directory Listing
Modified Thu Feb 10 21:24:50 2000 UTC (19 years, 11 months ago) by dtelle
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 531 - Directory Listing
Modified Sat Feb 5 21:29:18 2000 UTC (19 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
(ilhint): Comment fix.

Revision 530 - Directory Listing
Modified Mon Jan 31 22:53:55 2000 UTC (19 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
(fcLet/cassoc): don't do a second pass over the output of the rewrite.
  It leads to quadratic behavior for `x1 andalso x2 ...'.

Revision 529 - Directory Listing
Modified Mon Jan 31 22:53:38 2000 UTC (19 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 523 - Directory Listing
Modified Wed Jan 12 22:03:45 2000 UTC (20 years ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 506 - Directory Listing
Modified Fri Dec 10 00:15:35 1999 UTC (20 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
The compiler now compiles to a fix point but "split" still
doesn't work because of a problem with the pickler.

Revision 504 - Directory Listing
Modified Tue Dec 7 18:31:05 1999 UTC (20 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
the 110.25 merge compiles

Revision 499 - Directory Listing
Modified Tue Dec 7 15:44:50 1999 UTC (20 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r498,
which included commits to RCS files with non-trunk default branches.

Revision 489 - Directory Listing
Modified Tue Nov 23 12:55:00 1999 UTC (20 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
somewhat functional

Revision 477 - Directory Listing
Modified Wed Nov 10 23:04:21 1999 UTC (20 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
auto-merged to 110.24

Revision 476 - Directory Listing
Modified Wed Nov 10 22:59:58 1999 UTC (20 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r475,
which included commits to RCS files with non-trunk default branches.

Revision 423 - Directory Listing
Modified Mon Sep 6 02:32:11 1999 UTC (20 years, 4 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
It now compiles

Revision 422 - Directory Listing
Modified Sun Sep 5 22:49:38 1999 UTC (20 years, 4 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
merged in 110.19 and 110.20.
Conflicts resolved, but it probably doesn't compile yet.

Revision 419 - Directory Listing
Modified Fri Sep 3 23:51:27 1999 UTC (20 years, 4 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r418,
which included commits to RCS files with non-trunk default branches.

Revision 412 - Directory Listing
Modified Fri Sep 3 00:25:03 1999 UTC (20 years, 4 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r411,
which included commits to RCS files with non-trunk default branches.

Revision 382 - Directory Listing
Modified Sun Jul 11 03:12:07 1999 UTC (20 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* opt/split.sml: don't burp when you can't split.

Revision 259 - Directory Listing
Modified Thu Apr 22 09:30:22 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
turned the CPS optimizer back on and tamed the FLINT inlining

Revision 257 - Directory Listing
Modified Wed Apr 21 02:45:08 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 256 - Directory Listing
Modified Wed Apr 21 01:28:39 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 255 - Directory Listing
Modified Wed Apr 21 00:34:12 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
up'd RAISE size estimate to discourage its inlining

Revision 254 - Directory Listing
Modified Wed Apr 21 00:01:13 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
add a space for `prPrimop *' so as to avoid printing `(*'.

Revision 253 - Directory Listing
Modified Tue Apr 20 17:31:38 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
cleanup non-exhaustive match warning

Revision 252 - Directory Listing
Modified Tue Apr 20 17:22:07 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
detect empty TFN/TAPP early

Revision 251 - Directory Listing
Modified Mon Apr 19 02:55:26 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
First try at a merge of 110.16

Revision 246 - Directory Listing
Modified Sat Apr 17 18:47:12 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r245,
which included commits to RCS files with non-trunk default branches.

Revision 244 - Directory Listing
Modified Sat Apr 17 18:41:51 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r243,
which included commits to RCS files with non-trunk default branches.

Revision 228 - Directory Listing
Modified Sat Apr 17 17:15:03 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r227,
which included commits to RCS files with non-trunk default branches.

Revision 224 - Directory Listing
Modified Sat Apr 17 16:27:01 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r223,
which included commits to RCS files with non-trunk default branches.

Revision 220 - Directory Listing
Modified Tue Mar 9 02:15:05 1999 UTC (20 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* 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 218 - Directory Listing
Modified Tue Mar 2 08:12:06 1999 UTC (20 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* Semant/pickle/pickmod.sml (mkPickleLty):
  alpha-rename was not applied to NVAR.
* Semant/pickle/unpickmod.sml (lvar): was improperly defined.
(tyc): TC_NVAR wasn't read correctly.
(tfundec): leading char was inconsistent with pickle.
* kernel/ltyextern.sml (tnarrow), reps/{reify,rttype,typeoper}.sml:
  don't unflatten arguments when reifying them.

Revision 217 - Directory Listing
Modified Sun Feb 28 23:41:30 1999 UTC (20 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* opt/fcontract.sml (fcEta): do the known->unknown eta-reduce if the
  `known' function is not locally defined (in which case the known/unknown
  distinction is pointless anyway).
(wrap):  don't forget to junk dead inlinable functions.

Revision 216 - Directory Listing
Modified Fri Feb 26 12:55:26 1999 UTC (20 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* opt/split.sml: seriously reworked.  Now splits TFNs as well.
* kernel/primop.sml (effect): removed DEREF and MAKEREF from the pure
  primops.
* flint/flintutil.sml (copy): sort the type-map since {lt,tc}_subst
  actually expects it to be sorted.
* kernel/ltyextern.{sml,sig} (lt_nvpoly): new function (digged from
  recover.sml to build a LT_POLY in the case of named tvars.
* opt/recover.sml: removed unused depth arguments left behind from before
  we switched to named tvars.
(addLty): added for the benefit of opt/split.sml
(lt_nvpoly): moved to ltyextern.sml

Revision 215 - Directory Listing
Modified Wed Feb 17 14:17:40 1999 UTC (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* opt/split.sml: new file.  Does the lambda-splitting for cross-module
  inlining.  Currently in a simplified form.
* opt/fcontract.sml (fcEta): bug with (mutually) recursive eta redexes.

Revision 213 - Directory Listing
Modified Fri Jan 15 21:18:35 1999 UTC (21 years ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
merged in 110.10

Revision 204 - Directory Listing
Modified Sun Dec 20 11:23:30 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 203 - Directory Listing
Modified Sat Dec 19 20:51:39 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* opt/fcontract.sml: turned fcFun into a foldable function.
* opt/loopify.sml: added loop-invariant arg removal.

Revision 202 - Directory Listing
Modified Sun Dec 13 02:29:45 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
Added IH_MAYBE to allow more selective inlining.

Revision 201 - Directory Listing
Modified Sat Nov 28 23:32:48 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* opt/fcontract.sml: (fcexp): straightforward split into functions
(fcLet): do the BRANCH thing after contraction (plus force an additional
  contraction, so the total is 3 passes for a fairly good handling of
  wrap's equality-primop compilation)
(fcLet): drop TAPP if the output is unused.

Revision 200 - Directory Listing
Modified Sat Nov 28 17:48:03 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* opt/fcontract.sml: generalized the BRANCH thing.
It should now be faster to detect and avoid potential code blowups while
applying to more cases.  But it requires one more pass to generate the
same code quality :-(

Revision 199 - Directory Listing
Modified Wed Nov 25 18:30:38 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* 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 198 - Directory Listing
Modified Sun Nov 22 02:11:29 1998 UTC (21 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 197 - Directory Listing
Modified Sun Nov 22 01:25:23 1998 UTC (21 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
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 191 - Directory Listing
Modified Fri Nov 20 02:01:27 1998 UTC (21 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* opt/loopify.sml: new file
* cps/convert.sml: added code to take advantage of LK_WHILE loops.

Revision 190 - Directory Listing
Modified Thu Nov 19 21:01:17 1998 UTC (21 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* 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 - Directory Listing
Modified Sun Nov 15 22:29:42 1998 UTC (21 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 187 - Directory Listing
Modified Wed Nov 11 07:04:24 1998 UTC (21 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* opt/collect.sml(info): got rid of Transfer
(unuselexp): junk the fundec part.
(unuse): return a boolean instead of calling an undertaker.

Revision 186 - Directory Listing
Modified Wed Nov 11 05:24:43 1998 UTC (21 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* 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 - Directory Listing
Modified Tue Nov 10 21:01:05 1998 UTC (21 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* 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 - Directory Listing
Modified Sun Nov 8 21:18:20 1998 UTC (21 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* 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 - Directory Listing
Modified Sat Oct 31 01:03:30 1998 UTC (21 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
* 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 - Directory Listing
Modified Thu Oct 29 21:00:27 1998 UTC (21 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
added dropping of dead-arguments

Revision 162 - Directory Listing
Modified Tue Oct 27 22:16:21 1998 UTC (21 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 161 - Directory Listing
Modified Mon Oct 12 03:40:02 1998 UTC (21 years, 3 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 160 - Directory Listing
Modified Mon Oct 12 03:31:38 1998 UTC (21 years, 3 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 159 - Directory Listing
Modified Mon Oct 12 02:45:03 1998 UTC (21 years, 3 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
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 158 - Directory Listing
Modified Mon Oct 12 02:41:33 1998 UTC (21 years, 3 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 154 - Directory Listing
Modified Sun Oct 11 22:22:47 1998 UTC (21 years, 3 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
use fcontract's copy

Revision 150 - Directory Listing
Modified Sun Oct 11 17:45:33 1998 UTC (21 years, 3 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
eliminated call to lcontract

Revision 149 - Directory Listing
Modified Sun Oct 11 17:44:55 1998 UTC (21 years, 3 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
eliminated use of CG.misc4 probably left over from debugging

Revision 140 - Directory Listing
Modified Mon Sep 7 21:11:35 1998 UTC (21 years, 4 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r139,
which included commits to RCS files with non-trunk default branches.

Revision 126 - Directory Listing
Modified Mon Sep 7 18:14:32 1998 UTC (21 years, 4 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r125,
which included commits to RCS files with non-trunk default branches.

Revision 122 - Directory Listing
Modified Sat Jun 6 15:05:38 1998 UTC (21 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
addition of fcontract and fixfix and Control.FLINT

Revision 121 - Directory Listing
Modified Sat Jun 6 15:03:25 1998 UTC (21 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
re-added fcontract and collect

Revision 120 - Directory Listing
Modified Sat Jun 6 14:41:33 1998 UTC (21 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
temporarily removed fcontract and collect

Revision 118 - Directory Listing
Modified Fri Jun 5 21:38:17 1998 UTC (21 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
merged in 110.7 changes

Revision 114 - Directory Listing
Modified Fri Jun 5 19:41:21 1998 UTC (21 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r113,
which included commits to RCS files with non-trunk default branches.

Revision 111 - Directory Listing
Modified Fri Jun 5 19:37:29 1998 UTC (21 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
Initial revision

Revision 109 - Directory Listing
Modified Fri May 29 02:12:55 1998 UTC (21 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
merged in 110.6 changes

Revision 107 - Directory Listing
Modified Thu May 28 21:30:17 1998 UTC (21 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r106,
which included commits to RCS files with non-trunk default branches.

Revision 102 - Directory Listing
Modified Thu May 14 05:53:10 1998 UTC (21 years, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
merged in 110.5.1 from Zhong

Revision 101 - Directory Listing
Modified Thu May 14 04:56:46 1998 UTC (21 years, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r100,
which included commits to RCS files with non-trunk default branches.

Revision 98 - Directory Listing
Modified Thu May 14 04:54:52 1998 UTC (21 years, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
Initial revision

Revision 95 - Directory Listing
Modified Wed May 13 00:49:12 1998 UTC (21 years, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
merged with 110.5

Revision 94 - Directory Listing
Modified Tue May 12 21:56:22 1998 UTC (21 years, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r93,
which included commits to RCS files with non-trunk default branches.

Revision 84 - Directory Listing
Modified Wed May 6 22:35:33 1998 UTC (21 years, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 82 - Directory Listing
Modified Sun May 3 00:00:24 1998 UTC (21 years, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 81 - Directory Listing
Modified Sat May 2 23:59:45 1998 UTC (21 years, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
added real inlining support (with alpha-renaming)
added limited type information

Revision 80 - Directory Listing
Modified Wed Apr 29 23:25:33 1998 UTC (21 years, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
Changed the semantics of "inline".

Revision 78 - Directory Listing
Modified Fri Apr 17 17:58:14 1998 UTC (21 years, 9 months ago) by league
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 76 - Directory Listing
Modified Sun Apr 12 02:23:26 1998 UTC (21 years, 9 months ago) by league
Original Path: sml/trunk/src/compiler/FLINT
changed max # elements to flatten to 5, to support x86 floating
points.  should be made machine dependent?

Revision 75 - Directory Listing
Modified Sun Apr 12 02:22:44 1998 UTC (21 years, 9 months ago) by league
Original Path: sml/trunk/src/compiler/FLINT
added checking for redefined lvars.

Revision 74 - Directory Listing
Modified Sat Apr 11 00:22:45 1998 UTC (21 years, 9 months ago) by league
Original Path: sml/trunk/src/compiler/FLINT
minimal checking for lvars in dict and conrep.

Revision 73 - Directory Listing
Modified Sun Apr 5 20:59:43 1998 UTC (21 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 72 - Directory Listing
Modified Sun Apr 5 19:07:40 1998 UTC (21 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
cleaned up the previous merge

Revision 71 - Directory Listing
Modified Fri Apr 3 01:57:57 1998 UTC (21 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
merged in Zhong's 110.4

Revision 70 - Directory Listing
Modified Fri Apr 3 00:06:55 1998 UTC (21 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r69,
which included commits to RCS files with non-trunk default branches.

Revision 66 - Directory Listing
Modified Fri Apr 3 00:06:13 1998 UTC (21 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
Initial revision

Revision 65 - Directory Listing
Modified Wed Apr 1 20:57:44 1998 UTC (21 years, 9 months ago) by league
Original Path: sml/trunk/src/compiler/FLINT
made changes to kind-checking so that enc_tvar need not be exported
by ltykernel.  one awkwardness is that the tkLookupFreeVars function
in ltykernel manipulates a tkindenv, which is technically not defined
until ltyextern.

Revision 64 - Directory Listing
Modified Tue Mar 31 05:26:51 1998 UTC (21 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
dummy

Revision 63 - Directory Listing
Modified Tue Mar 31 05:26:42 1998 UTC (21 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 61 - Directory Listing
Modified Mon Mar 30 19:27:36 1998 UTC (21 years, 9 months ago) by league
Original Path: sml/trunk/src/compiler/FLINT
just added a comment.  there is apparently a subtle bug in inlining
across different depths.  it causes a type error in a FIX node when
compiling CodeGen/cpscompile/mkRecord.sml.

Revision 60 - Directory Listing
Modified Mon Mar 30 19:25:56 1998 UTC (21 years, 9 months ago) by league
Original Path: sml/trunk/src/compiler/FLINT
major change to tc_eqv_gen and its clients; now they properly check
equivalence of two FIX nodes.

Revision 59 - Directory Listing
Modified Mon Mar 30 19:24:59 1998 UTC (21 years, 9 months ago) by league
Original Path: sml/trunk/src/compiler/FLINT
Renaming of Control.CG flags related to type-checking.  Now we have
`checkFlint', `checkKinds', and `checkDatatypes'.

Revision 58 - Directory Listing
Modified Mon Mar 30 01:11:18 1998 UTC (21 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 53 - Directory Listing
Modified Mon Mar 23 04:02:58 1998 UTC (21 years, 10 months ago) by league
Original Path: sml/trunk/src/compiler/FLINT
Type and kind-checking working and turned on by default.
Datatype equality still not implemented.

Revision 51 - Directory Listing
Modified Sun Mar 22 23:08:44 1998 UTC (21 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
split printLambda into printLambda and printFlint

Revision 50 - Directory Listing
Modified Sun Mar 22 23:05:33 1998 UTC (21 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
moved TAPP handling from `tolexp' to `tolvar' since it always
binds one and only one variable.

Revision 49 - Directory Listing
Modified Sun Mar 22 22:49:56 1998 UTC (21 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 47 - Directory Listing
Modified Sun Mar 22 21:53:07 1998 UTC (21 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 46 - Directory Listing
Modified Sun Mar 22 20:11:09 1998 UTC (21 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r45,
which included commits to RCS files with non-trunk default branches.

Revision 41 - Directory Listing
Modified Sun Mar 22 20:10:46 1998 UTC (21 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
Initial revision

Revision 40 - Directory Listing
Modified Sun Mar 22 19:26:12 1998 UTC (21 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
*** empty log message ***

Revision 25 - Directory Listing
Modified Thu Mar 12 00:49:58 1998 UTC (21 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
This commit was generated by cvs2svn to compensate for changes in r24,
which included commits to RCS files with non-trunk default branches.

Revision 21 - Directory Listing
Modified Thu Mar 12 00:49:41 1998 UTC (21 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
Initial revision

Revision 16 - Directory Listing
Added Wed Mar 11 21:00:04 1998 UTC (21 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler/FLINT
Initial revision

Sort log by:

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