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
ViewVC logotype

Log of /sml/trunk/compiler

View Directory Listing Directory Listing


Sticky Revision:

Revision 4316 - Directory Listing
Modified Fri Sep 16 04:37:36 2016 UTC (3 years, 1 month ago) by jhr
  preparing the way for 64-bits

Revision 4314 - Directory Listing
Modified Thu Sep 15 22:46:20 2016 UTC (3 years, 1 month 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, 1 month ago) by dbm
removed remaining dependencies on PlambdaType from front-end

Revision 4308 - Directory Listing
Modified Wed Sep 14 20:26:34 2016 UTC (3 years, 1 month ago) by jhr
  Fix bug in parser: allow '*' as a field label in record-punning patterns.

Revision 4307 - Directory Listing
Modified Wed Sep 14 18:34:19 2016 UTC (3 years, 1 month ago) by jhr
clean up printing code and fix DOdec typechecking

Revision 4305 - Directory Listing
Modified Wed Sep 14 16:19:50 2016 UTC (3 years, 1 month ago) by jhr
reducing use of 'open'

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

Revision 4303 - Directory Listing
Modified Tue Sep 13 18:47:33 2016 UTC (3 years, 1 month ago) by jhr
  Add Successor ML parser to CM file for when NO_PLUGINS is true

Revision 4302 - Directory Listing
Modified Tue Sep 13 18:39:46 2016 UTC (3 years, 1 month ago) by jhr
  define signature for TokenTable functor argument

Revision 4301 - Directory Listing
Modified Tue Sep 13 01:24:29 2016 UTC (3 years, 1 month ago) by jhr
  hide the RESET_PARSER exception from the REPL

Revision 4299 - Directory Listing
Modified Tue Sep 13 01:16:49 2016 UTC (3 years, 1 month ago) by jhr
  Changes to enable Succssor ML syntax support.  We now have two parser+lexer
  stacks and we select the parser based on the succML flag.  We have introduced
  a function (Control.setSuccML) to switch modes, which fixes bug #153 (Enabling
  Successor ML features is delayed)

Revision 4297 - Directory Listing
Modified Mon Sep 12 17:10:10 2016 UTC (3 years, 1 month 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 4259 - Directory Listing
Modified Tue Aug 16 15:12:58 2016 UTC (3 years, 2 months ago) by jhr
reverting changes

Revision 4258 - Directory Listing
Modified Tue Aug 16 15:10:45 2016 UTC (3 years, 2 months ago) by jhr
fixing bug 151 (Error installing from source on Mac OS X)

Revision 4251 - Directory Listing
Modified Tue Aug 9 19:00:06 2016 UTC (3 years, 2 months ago) by dbm
DBM: fixed bug 145 by adding OVLD_UB case to failMessage in unify.sml

Revision 4249 - Directory Listing
Modified Thu Aug 4 19:18:00 2016 UTC (3 years, 2 months ago) by jhr
  Change behavior of hexadecimal escapes so that values in the range 0..255 are mapped
  to characters and values larger than 255 are errors.

Revision 4242 - Directory Listing
Modified Fri Jul 1 13:11:46 2016 UTC (3 years, 3 months ago) by jhr
removing trailing blanks

Revision 4225 - Directory Listing
Modified Tue May 3 23:16:47 2016 UTC (3 years, 5 months ago) by jhr
  Fix for bug #156 (sml resumes after SIGSTOP with bogus exception report)

Revision 4219 - Directory Listing
Modified Thu Apr 7 11:58:24 2016 UTC (3 years, 6 months ago) by jhr
  Fixed printing of word literals in error messages (bug #155)

Revision 4218 - Directory Listing
Modified Thu Apr 7 11:56:36 2016 UTC (3 years, 6 months ago) by jhr
  Update header comments

Revision 4215 - Directory Listing
Modified Sat Apr 2 20:01:54 2016 UTC (3 years, 6 months ago) by jhr
  Better error messages for non-ascii characters

Revision 4203 - Directory Listing
Modified Mon Nov 9 15:33:36 2015 UTC (3 years, 11 months ago) by jhr
code cleanup for eval-loop functor

Revision 4202 - Directory Listing
Modified Mon Nov 9 15:32:18 2015 UTC (3 years, 11 months ago) by jhr
  Fixed bug #147 (Hexadecimal escapes in strings are not supported).  We previously
  did not support Unicode escapes in string literals.  We now do so, with non-ascii
  codepoints being mapped to the UTF-8 encoding.

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

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

Revision 4150 - Directory Listing
Modified Tue Sep 29 00:22:52 2015 UTC (4 years ago) by jhr
  fix sense of succML flag

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

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

Revision 4130 - Directory Listing
Modified Fri Sep 25 19:00:24 2015 UTC (4 years 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 ago) by jhr
fixing the indentation

Revision 4123 - Directory Listing
Modified Thu Sep 24 20:26:44 2015 UTC (4 years 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 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 ago) by jhr
  Expose toStringValue function for debugging

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

Revision 4106 - Directory Listing
Modified Mon Sep 21 16:35:31 2015 UTC (4 years ago) by jhr
allow multiple underscores in numeric literals

Revision 4090 - Directory Listing
Modified Fri Aug 14 08:54:34 2015 UTC (4 years, 2 months ago) by jhr
  code formatting

Revision 4082 - Directory Listing
Modified Thu Jul 9 10:45:07 2015 UTC (4 years, 3 months ago) by jhr
  Some code cleanup for AstUtil.  Removed open and other minor changes

Revision 4069 - Directory Listing
Modified Tue Jun 9 20:52:48 2015 UTC (4 years, 4 months ago) by jhr
  add lexer for SuccessorML lexical extensions

Revision 4061 - Directory Listing
Modified Fri May 29 08:10:37 2015 UTC (4 years, 4 months ago) by jhr
  Added second lexer that handles SuccessorML lexical extensions (line comments,
  binary literals, and "_" in numeric literals).

Revision 4059 - Directory Listing
Modified Mon Apr 20 20:04:00 2015 UTC (4 years, 6 months ago) by jhr
  add a flag to control Successor ML features (none yet supported)

Revision 4000 - Directory Listing
Modified Fri Dec 19 22:33:49 2014 UTC (4 years, 10 months 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 3991 - Directory Listing
Modified Sun Dec 14 06:20:36 2014 UTC (4 years, 10 months ago) by dbm
Simplifications in preparation for new overloading treatment.

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

Revision 3876 - Directory Listing
Modified Thu May 1 14:20:55 2014 UTC (5 years, 5 months ago) by jhr
  fixed minor issue in an error message; type variable name should be printed with leading '

Revision 3799 - Directory Listing
Modified Fri Nov 16 21:08:56 2012 UTC (6 years, 11 months ago) by dbm
fixed missing cases in expType in DebugProf/types/reconstruct.sml

Revision 3726 - Directory Listing
Modified Wed Apr 18 00:20:49 2012 UTC (7 years, 6 months ago) by jhr
  Minor formatting changes

Revision 3673 - Directory Listing
Modified Sat Jan 21 00:51:44 2012 UTC (7 years, 9 months ago) by jhr
  Fixed implementation of Real.signBit on little-endian machines.

Revision 3672 - Directory Listing
Modified Fri Jan 20 23:06:28 2012 UTC (7 years, 9 months ago) by dbm
fixed omission in cm/smlfile/skel-cvt.sml, and minor printing issue in typecheck.sml

Revision 3665 - Directory Listing
Modified Wed Jan 18 23:24:39 2012 UTC (7 years, 9 months ago) by dbm
fixes for bugs gf#77 and gf#60, and bump version to 110.74

Revision 3652 - Directory Listing
Modified Thu Jan 12 21:49:32 2012 UTC (7 years, 9 months 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 (7 years, 9 months 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, 4 months ago) by blume
fix for 64-bit pattern match bug

Revision 3324 - Directory Listing
Modified Thu May 7 23:20:21 2009 UTC (10 years, 5 months ago) by jriehl
"Unfixing" part of change made on 2009.04.28: removing parenthesis from 
a SeqExp that contains a nested FixAppExp can make the result ambiguous.  
The result will "round trip", but changes how the result will be 
compiled.  Added special case to fix this specific problem.

Revision 3305 - Directory Listing
Modified Tue Apr 28 18:42:17 2009 UTC (10 years, 5 months ago) by jriehl
Fixed some "bugs" in the PPAst pretty printer that were making "round 
trips" fail ((pp o parse o pp o parse) s != (pp o parse) s).  
Specifically:

   - The "fn" was not being prepended to FnExp's.

   - Removed parenthesis for sequence expressions of one
     subexpression.  (Iteratively sending this back to the parser kept
     adding nested parenthesis.)

   - A ">" was being appended after selector expressions ("#x" would
     pretty print as "#x>").

   - Fixed spelling error (was "stuct") and added whitespace between the
     structure body and the "end" keyword for BaseStr's.

   - Changed ":" to "=" for Strb's (note that constraints were not and
     are still not handled).

Revision 3266 - Directory Listing
Modified Tue Jan 13 20:04:31 2009 UTC (10 years, 9 months ago) by blume
more debugging error messages

Revision 3265 - Directory Listing
Modified Tue Jan 13 17:42:58 2009 UTC (10 years, 9 months ago) by blume
more details added to troublesome UnpickMod error message

Revision 3244 - Directory Listing
Modified Sat Dec 6 16:43:46 2008 UTC (10 years, 10 months ago) by jhr
  Re-enabled some CPS optimizations.

Revision 3234 - Directory Listing
Modified Fri Oct 31 02:39:39 2008 UTC (10 years, 11 months ago) by gkuan
Minor typo fix 

Revision 3233 - Directory Listing
Modified Fri Oct 31 02:24:24 2008 UTC (10 years, 11 months ago) by gkuan
fixed MARKty unifyTy performance bug

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

Revision 2955 - Directory Listing
Modified Fri Feb 29 23:09:05 2008 UTC (11 years, 7 months ago) by mrainey
  Updated the Sparc register assignments to comply with the V9 ABI.

Revision 2954 - Directory Listing
Modified Mon Feb 25 15:43:35 2008 UTC (11 years, 7 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, 7 months ago) by gkuan
fixed equality type signature matching bug

Revision 2930 - Directory Listing
Modified Wed Jan 23 23:23:57 2008 UTC (11 years, 8 months ago) by mrainey
  Updated the code generator to the new amd64 MLRISC interface.

Revision 2885 - Directory Listing
Modified Thu Nov 15 22:43:51 2007 UTC (11 years, 11 months ago) by gkuan
rolled back accidental ppkind change in pptype.sml

Revision 2882 - Directory Listing
Modified Thu Nov 15 22:32:11 2007 UTC (11 years, 11 months ago) by gkuan
merge from trunk into primop-branch-3 (2741:2881)

Revision 2839 - Directory Listing
Modified Sat Nov 3 20:39:45 2007 UTC (11 years, 11 months ago) by mrainey
  Sync up the amd64 code generator with MLRISC.

Revision 2816 - Directory Listing
Modified Tue Oct 30 18:39:53 2007 UTC (11 years, 11 months ago) by mrainey
  Added a dummy hook for floating point negation.  Will need to add code-gen support for this later.

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

Revision 2733 - Directory Listing
Modified Sun Jul 29 03:46:27 2007 UTC (12 years, 2 months ago) by gkuan
x86 signbit code fixed -- passes tests now

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

Revision 2726 - Directory Listing
Modified Thu Jul 5 13:23:45 2007 UTC (12 years, 3 months ago) by gkuan
realconst now keeps sign bit for ~0.0 around

Revision 2651 - Directory Listing
Modified Thu May 31 20:01:21 2007 UTC (12 years, 4 months ago) by dbm
updated DEVNOTES/primop3-revisions after merge

Revision 2650 - Directory Listing
Modified Thu May 31 19:57:03 2007 UTC (12 years, 4 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, 4 months ago) by blume
bug fixes to translate.sml

Revision 2642 - Directory Listing
Modified Thu May 31 01:03:20 2007 UTC (12 years, 4 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 2626 - Directory Listing
Modified Wed May 30 00:00:15 2007 UTC (12 years, 4 months ago) by blume
fixed Div regression using explicit test

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

Revision 2620 - Directory Listing
Modified Tue May 29 21:03:24 2007 UTC (12 years, 4 months ago) by mrainey
  Fixes for the new AMD64 code generator.

Revision 2609 - Directory Listing
Modified Thu May 24 01:19:36 2007 UTC (12 years, 5 months ago) by blume
use NO_PLUGINS to control whether plugin tools are needed for
bootstrap compilation

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

Revision 2602 - Directory Listing
Modified Wed May 23 20:23:25 2007 UTC (12 years, 5 months ago) by dbm
deleted compiler/DEVNOTES/FLINT to make way for Flint directory

Revision 2581 - Directory Listing
Modified Wed May 23 02:56:46 2007 UTC (12 years, 5 months ago) by blume
added explicit tool classes to lex and grm files
to avoid future conflicts with ml-ulex and ml-antlr

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

Revision 2354 - Directory Listing
Modified Tue Mar 13 19:48:46 2007 UTC (12 years, 7 months ago) by jhr
  Remove unused structure (AMD64Rewrite).

Revision 2288 - Directory Listing
Modified Wed Jan 31 00:17:34 2007 UTC (12 years, 8 months ago) by blume
partial solution for CM tool installation, not yet complete

Revision 2162 - Directory Listing
Modified Thu Nov 2 21:20:47 2006 UTC (12 years, 11 months ago) by blume
Copied from: sml/trunk/src/compiler revision 2161
eliminated src dir

Revision 2066 - Directory Listing
Modified Thu Oct 5 16:26:30 2006 UTC (13 years ago) by mblume
Original Path: sml/trunk/src/compiler
merged amd64 code from Mike Rainey

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

Revision 1885 - Directory Listing
Modified Mon Feb 13 22:17:29 2006 UTC (13 years, 8 months ago) by jhr
Original Path: sml/trunk/src/compiler
  Modified CCalls for partial support of MacOS X on Intel ABI.

Revision 1866 - Directory Listing
Modified Wed Nov 16 16:21:43 2005 UTC (13 years, 11 months ago) by mblume
Original Path: sml/trunk/src/compiler
fixed problem with bogus exn message when using btrace

Revision 1863 - Directory Listing
Modified Tue Nov 15 22:38:49 2005 UTC (13 years, 11 months ago) by mblume
Original Path: sml/trunk/src/compiler
improved the way certain libraries are bound into the compiler

Revision 1861 - Directory Listing
Modified Mon Nov 7 18:17:09 2005 UTC (13 years, 11 months ago) by jhr
Original Path: sml/trunk/src/compiler
  Remove Substring.all.

Revision 1855 - Directory Listing
Modified Wed Nov 2 21:12:31 2005 UTC (13 years, 11 months ago) by jhr
Original Path: sml/trunk/src/compiler
  Rename Pack* structures to PackWord*.

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

Revision 1792 - Directory Listing
Modified Tue May 17 04:46:12 2005 UTC (14 years, 5 months ago) by mblume
Original Path: sml/trunk/src/compiler
added mechanism for re-dumping heap image for interactive system

Revision 1785 - Directory Listing
Modified Wed May 4 15:51:20 2005 UTC (14 years, 5 months ago) by allenleung
Original Path: sml/trunk/src/compiler
     GC protocol checking phase added.

Revision 1760 - Directory Listing
Modified Fri Feb 25 20:46:23 2005 UTC (14 years, 7 months ago) by mblume
Original Path: sml/trunk/src/compiler
brought back SMLofNJ.Susp

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

Revision 1754 - Directory Listing
Modified Wed Feb 9 21:48:59 2005 UTC (14 years, 8 months ago) by mblume
Original Path: sml/trunk/src/compiler
long long args now seem to work

Revision 1753 - Directory Listing
Modified Mon Feb 7 22:16:58 2005 UTC (14 years, 8 months ago) by mblume
Original Path: sml/trunk/src/compiler
long long arguments to C functions (still not working properly)

Revision 1752 - Directory Listing
Modified Thu Feb 3 22:11:49 2005 UTC (14 years, 8 months ago) by mblume
Original Path: sml/trunk/src/compiler
experimental code for passing long long arguments via NLFFI (untested)

Revision 1712 - Directory Listing
Modified Tue Nov 23 20:44:10 2004 UTC (14 years, 10 months ago) by mblume
Original Path: sml/trunk/src/compiler
problem with unhelpful error messages addressed

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

Revision 1687 - Directory Listing
Modified Fri Nov 12 06:31:53 2004 UTC (14 years, 11 months ago) by mblume
Original Path: sml/trunk/src/compiler
added full implementation of Int64

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

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

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

Revision 1681 - Directory Listing
Modified Mon Nov 8 23:03:24 2004 UTC (14 years, 11 months ago) by mblume
Original Path: sml/trunk/src/compiler
some code cleanup

Revision 1655 - Directory Listing
Modified Mon Oct 18 21:45:30 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
eliminated group owners; added warning

Revision 1654 - Directory Listing
Modified Fri Oct 15 21:49:14 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
correct type of tdp_register

Revision 1653 - Directory Listing
Modified Fri Oct 15 20:45:02 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
further TDP reorganization; coverage tool added

Revision 1652 - Directory Listing
Modified Thu Oct 14 22:38:54 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
overhaul of Core and SMLofNJ support for TDP

Revision 1651 - Directory Listing
Modified Wed Oct 13 21:37:30 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
spelling error

Revision 1650 - Directory Listing
Modified Wed Oct 13 21:34:01 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
some renaming and cleanup (trace/debug/profile instrumentation)

Revision 1648 - Directory Listing
Modified Tue Oct 12 22:47:46 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
additional improvement to region info propagation

Revision 1647 - Directory Listing
Modified Tue Oct 12 02:45:22 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
more fiddling with imprecise region annotations

Revision 1646 - Directory Listing
Modified Mon Oct 11 22:57:55 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
eliminate unneeded argument

Revision 1645 - Directory Listing
Modified Mon Oct 11 21:37:17 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
better region info propagation in elaborator

Revision 1643 - Directory Listing
Modified Fri Oct 8 23:00:45 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
minor cleanup

Revision 1642 - Directory Listing
Modified Thu Oct 7 21:00:04 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
cleanup work

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

Revision 1639 - Directory Listing
Modified Thu Sep 30 15:53:06 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
cleanup of the auto-version stuff

Revision 1638 - Directory Listing
Modified Wed Sep 29 19:07:58 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
integrated versiontool

Revision 1637 - Directory Listing
Modified Wed Sep 29 18:50:52 2004 UTC (15 years ago) by mblume
Original Path: sml/trunk/src/compiler
automagic generation of version.sml

Revision 1622 - Directory Listing
Modified Mon Sep 13 21:50:40 2004 UTC (15 years, 1 month ago) by mblume
Original Path: sml/trunk/src/compiler
working version 110.49

Revision 1617 - Directory Listing
Modified Tue Aug 31 22:15:48 2004 UTC (15 years, 1 month ago) by mblume
Original Path: sml/trunk/src/compiler
added some exports to core.cm

Revision 1602 - Directory Listing
Modified Tue Aug 10 16:58:44 2004 UTC (15 years, 2 months ago) by mblume
Original Path: sml/trunk/src/compiler
freeze for Release 110.48

Revision 1581 - Directory Listing
Modified Wed Aug 4 19:00:53 2004 UTC (15 years, 2 months ago) by mblume
Original Path: sml/trunk/src/compiler
freeze for 110.47

Revision 1580 - Directory Listing
Modified Tue Aug 3 19:26:26 2004 UTC (15 years, 2 months ago) by mblume
Original Path: sml/trunk/src/compiler
added support for multiple C calling conventions

Revision 1551 - Directory Listing
Modified Fri Jul 16 03:26:38 2004 UTC (15 years, 3 months ago) by mblume
Original Path: sml/trunk/src/compiler
moved dummy implementation of c-calls into MLRISC tree

Revision 1549 - Directory Listing
Modified Wed Jul 14 23:07:35 2004 UTC (15 years, 3 months ago) by mblume
Original Path: sml/trunk/src/compiler
implemented C_UNION for ppc-macosx;
fixed bug in propagating C_UNION to backend

Revision 1548 - Directory Listing
Modified Wed Jul 14 21:25:43 2004 UTC (15 years, 3 months ago) by mblume
Original Path: sml/trunk/src/compiler
added C_UNION to c-types.sml

Revision 1540 - Directory Listing
Modified Tue Jul 13 20:15:55 2004 UTC (15 years, 3 months ago) by mblume
Original Path: sml/trunk/src/compiler
fixed bug in usage of paramAlloc

Revision 1537 - Directory Listing
Modified Tue Jul 13 18:49:54 2004 UTC (15 years, 3 months ago) by mblume
Original Path: sml/trunk/src/compiler
NLFFI-related code tweaks

Revision 1532 - Directory Listing
Modified Tue Jul 13 03:49:10 2004 UTC (15 years, 3 months ago) by mblume
Original Path: sml/trunk/src/compiler
nlffi under mac os x; NOW BOOTFILES; version 110.46.1

Revision 1526 - Directory Listing
Modified Fri Jul 9 03:48:36 2004 UTC (15 years, 3 months ago) by jhr
Original Path: sml/trunk/src/compiler
  Add missing components to C-calls stub.

Revision 1507 - Directory Listing
Modified Thu Jun 17 23:16:43 2004 UTC (15 years, 4 months ago) by mblume
Original Path: sml/trunk/src/compiler
bumped version number to 110.46

Revision 1505 - Directory Listing
Modified Thu Jun 17 20:41:47 2004 UTC (15 years, 4 months ago) by mblume
Original Path: sml/trunk/src/compiler
structure Timer now up to spec

Revision 1486 - Directory Listing
Modified Tue May 11 17:04:01 2004 UTC (15 years, 5 months ago) by mblume
Original Path: sml/trunk/src/compiler
extended some export lists

Revision 1481 - Directory Listing
Modified Fri Apr 23 22:13:27 2004 UTC (15 years, 6 months ago) by macqueen
Original Path: sml/trunk/src/compiler
minor revision of MAP file

Revision 1473 - Directory Listing
Modified Sun Apr 4 21:29:18 2004 UTC (15 years, 6 months ago) by macqueen
Original Path: sml/trunk/src/compiler
updated MAP and added INDEX in src/compiler

Revision 1466 - Directory Listing
Modified Thu Mar 4 23:33:35 2004 UTC (15 years, 7 months ago) by macqueen
Original Path: sml/trunk/src/compiler
adding comments

Revision 1455 - Directory Listing
Modified Fri Feb 13 20:42:49 2004 UTC (15 years, 8 months ago) by mblume
Original Path: sml/trunk/src/compiler
working version 110.45

Revision 1448 - Directory Listing
Modified Mon Jan 26 21:17:49 2004 UTC (15 years, 8 months ago) by mblume
Original Path: sml/trunk/src/compiler
improved handling of exceptions at interactive toplevel

Revision 1437 - Directory Listing
Modified Tue Jan 6 17:00:20 2004 UTC (15 years, 9 months ago) by jhr
Original Path: sml/trunk/src/compiler
  Added case for comparisons between int32 constants.

Revision 1425 - Directory Listing
Modified Tue Nov 18 21:06:42 2003 UTC (15 years, 11 months ago) by mblume
Original Path: sml/trunk/src/compiler
tentatively changed interface of Timer to what has been discussed
on the Basis mailing list

Revision 1414 - Directory Listing
Modified Thu Nov 6 17:54:56 2003 UTC (15 years, 11 months ago) by mblume
Original Path: sml/trunk/src/compiler
Working version 110.44

Revision 1394 - Directory Listing
Modified Fri Sep 26 19:56:20 2003 UTC (16 years ago) by mblume
Original Path: sml/trunk/src/compiler
minor version bump; new bootfiles

Revision 1393 - Directory Listing
Modified Fri Sep 26 17:00:32 2003 UTC (16 years ago) by mblume
Original Path: sml/trunk/src/compiler
implemented autoloading on behalf of prettyprinter

Revision 1387 - Directory Listing
Modified Mon Sep 22 17:10:40 2003 UTC (16 years, 1 month ago) by mblume
Original Path: sml/trunk/src/compiler
new interim version 110.43.2, new bootfiles

Revision 1384 - Directory Listing
Modified Thu Sep 18 20:35:34 2003 UTC (16 years, 1 month ago) by mblume
Original Path: sml/trunk/src/compiler
made interim version 110.43.1 (with new bootfiles)

Revision 1380 - Directory Listing
Modified Wed Sep 17 20:20:51 2003 UTC (16 years, 1 month ago) by mblume
Original Path: sml/trunk/src/compiler
code that actually implements int32->real64 (in code generator)

Revision 1379 - Directory Listing
Modified Wed Sep 17 19:59:47 2003 UTC (16 years, 1 month ago) by mblume
Original Path: sml/trunk/src/compiler
added primop for int32->real64 conversion

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

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

Revision 1370 - Directory Listing
Modified Mon Sep 15 03:38:25 2003 UTC (16 years, 1 month ago) by macqueen
Original Path: sml/trunk/src/compiler
eliminate types from primop info

Revision 1356 - Directory Listing
Modified Wed Sep 10 02:54:11 2003 UTC (16 years, 1 month ago) by mblume
Original Path: sml/trunk/src/compiler
Release_110_43

Revision 1350 - Directory Listing
Modified Fri Sep 5 21:34:27 2003 UTC (16 years, 1 month ago) by mblume
Original Path: sml/trunk/src/compiler
a lot of Basis hacking, among other things adding slices

Revision 1347 - Directory Listing
Modified Thu Aug 28 21:59:15 2003 UTC (16 years, 1 month ago) by mblume
Original Path: sml/trunk/src/compiler
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, 2 months ago) by macqueen
Original Path: sml/trunk/src/compiler
merged changes from mcz-branch (tag: dbm-20030813-mcz-merge1)

Revision 1342 - Directory Listing
Modified Mon Aug 11 20:46:00 2003 UTC (16 years, 2 months ago) by mblume
Original Path: sml/trunk/src/compiler
works under w32 again;
bug fix for ml-nlffigen; other bugfixes

Revision 1336 - Directory Listing
Modified Tue Jun 17 20:36:59 2003 UTC (16 years, 4 months ago) by macqueen
Original Path: sml/trunk/src/compiler
fixed bug 895

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

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

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

Revision 1288 - Directory Listing
Modified Tue Oct 29 14:48:54 2002 UTC (16 years, 11 months ago) by blume
Original Path: sml/trunk/src/compiler
exported Typecheck

Revision 1279 - Directory Listing
Modified Wed Oct 16 14:21:07 2002 UTC (17 years ago) by blume
Original Path: sml/trunk/src/compiler
Release_110_42

Revision 1270 - Directory Listing
Modified Thu Oct 10 14:48:48 2002 UTC (17 years ago) by george
Original Path: sml/trunk/src/compiler
From Allen: Added a flag to dump the cfg after back patching
            and delay slot filling.

Revision 1253 - Directory Listing
Modified Fri Jul 5 19:54:58 2002 UTC (17 years, 3 months ago) by blume
Original Path: sml/trunk/src/compiler
working version 110.41

Revision 1250 - Directory Listing
Modified Fri Jul 5 14:22:42 2002 UTC (17 years, 3 months ago) by blume
Original Path: sml/trunk/src/compiler
structure BTImp exported

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

Revision 1238 - Directory Listing
Modified Mon Jun 10 20:35:28 2002 UTC (17 years, 4 months ago) by blume
Original Path: sml/trunk/src/compiler
back-ported IEEEReal.fromString from idlbasis-devel branch;
small (and currently broken) update to ppDec wrt. printing of functor
signatures

Revision 1229 - Directory Listing
Modified Fri May 31 21:10:34 2002 UTC (17 years, 4 months ago) by blume
Original Path: sml/trunk/src/compiler
brought BTrace.mode back

Revision 1215 - Directory Listing
Modified Tue May 21 20:05:42 2002 UTC (17 years, 5 months ago) by blume
Original Path: sml/trunk/src/compiler
working version 110.40

Revision 1208 - Directory Listing
Modified Tue May 21 02:22:43 2002 UTC (17 years, 5 months ago) by blume
Original Path: sml/trunk/src/compiler
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, 5 months ago) by blume
Original Path: sml/trunk/src/compiler
pushed new controls interface through compiler

Revision 1192 - Directory Listing
Modified Wed May 15 14:02:06 2002 UTC (17 years, 5 months ago) by george
Original Path: sml/trunk/src/compiler
        All pseudo-ops emitted before the first segment declaration
such as TEXT, DATA, and BSS directives are assumed to be global
declarations and are emitted first in the assembly file. This is
useful in a number of situations where one has pseudo-ops that are not
specific to any segment, and also works around the constraint that one
cannot have client pseudo-ops in the TEXT segment.

        Because no segment is associated with these declarations it is
an error to allocate any space or objects before the first segment
directive and an exception will be raised. However, we cannot make
this check for client pseudo-ops.

        These top level declarations are a field in the CFG graph_info.
In theory you can continue to add to this field after the CFG has been
built -- provided you know what you are doing;-)

Revision 1190 - Directory Listing
Modified Mon May 13 20:39:05 2002 UTC (17 years, 5 months ago) by blume
Original Path: sml/trunk/src/compiler
some minor bugfixes

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

Revision 1181 - Directory Listing
Modified Wed Mar 27 21:27:27 2002 UTC (17 years, 6 months ago) by blume
Original Path: sml/trunk/src/compiler
provided MLRISC support for all four division ops (div/mod/quot/rem)

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

Revision 1179 - Directory Listing
Modified Tue Mar 26 03:04:46 2002 UTC (17 years, 6 months ago) by blume
Original Path: sml/trunk/src/compiler
fixed bug in cproto

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

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

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

Revision 1173 - Directory Listing
Modified Sat Mar 23 04:18:51 2002 UTC (17 years, 7 months ago) by george
Original Path: sml/trunk/src/compiler
Edge colors  during graphical viewing is based on
execution frequency of the edge. I used the same
color scale employed in yahoo weather maps.

Revision 1168 - Directory Listing
Modified Fri Mar 22 19:19:32 2002 UTC (17 years, 7 months ago) by george
Original Path: sml/trunk/src/compiler
Implemented the Ball-Larus branch prediction-heuristic, and
incorporated graphical viewers for control flow graphs.

Ball-Larus Heuristic:
---------------------
See the file compiler/CodeGen/cpscompile/cpsBranchProb.sml.

By design it uses the Dempster-Shafer theory for combining
probabilities.  For example, in the function:

    fun f(n,acc) = if n = 0 then acc else f(n-1, n*acc)

the ball-larus heuristics predicts that the n=0 is unlikely
(OH-heuristic), and the 'then' branch is unlikely because of the
RH-heuristic -- giving the 'then' branch an even lower combined
probability using the Dempster-Shater theory.

Finally, John Reppy's loop analysis in MLRISC, further lowers the
probability of the 'then' branch because of the loop in the else
branch.


Graphical Viewing:
------------------
I merely plugged in Allen's graphical viewers into the compiler. The
additional code is not much. At the top level, saying:

	Control.MLRISC.getFlag "cfg-graphical-view" := true;

will display the graphical view of the control flow graph just before
back-patching.  daVinci must be in your path for this to work. If
daVinci is not available, then the default viewer can be changed
using:

	Control.MLRISC.getString "viewer"

which can be set to "dot" or "vcg" for the corresponding viewers. Of
course, these viewers must be in your path.

The above will display the compilation unit at the level of clusters,
many of which are small, boring, and un-interesting. Also setting:

	Control.MLRISC.getInt "cfg-graphical-view_size"

will display clusters that are larger than the value set by the above.

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

Revision 1141 - Directory Listing
Modified Wed Mar 13 19:37:54 2002 UTC (17 years, 7 months ago) by george
Original Path: sml/trunk/src/compiler
  adapted to new jump chaining interface

Revision 1140 - Directory Listing
Modified Wed Mar 13 18:59:03 2002 UTC (17 years, 7 months ago) by blume
Original Path: sml/trunk/src/compiler
bug in installer fixed; overload tweaks

Revision 1137 - Directory Listing
Modified Tue Mar 12 22:28:55 2002 UTC (17 years, 7 months ago) by blume
Original Path: sml/trunk/src/compiler
implemented better, simpler PID allocation scheme;
binfile format has changed, version number is 110.39.2; NEW BOOTFILES

Revision 1136 - Directory Listing
Modified Tue Mar 12 19:44:02 2002 UTC (17 years, 7 months ago) by george
Original Path: sml/trunk/src/compiler
Integrated jump chaining and static block frequency into the
compiler. More details and numbers later.

Revision 1133 - Directory Listing
Modified Tue Mar 12 03:56:23 2002 UTC (17 years, 7 months ago) by george
Original Path: sml/trunk/src/compiler
Tested the jump chain elimination on all architectures (except the
hppa).  This is on by default right now and is profitable for the
alpha and x86, however, it may not be profitable for the sparc and ppc
when compiling the compiler.

The gc test will typically jump to a label at the end of the cluster,
where there is another jump to an external cluster containing the actual
code to invoke gc. This is to allow factoring of common gc invocation
sequences. That is to say, we generate:

	f:
	   testgc
	   ja	L1	% jump if above to L1

	L1:
	   jmp L2


After jump chain elimination the 'ja L1' instructions is converted to
'ja L2'. On the sparc and ppc, many of the 'ja L2' instructions may end
up being implemented in their long form (if L2 is far away) using:

	jbe	L3	% jump if below or equal to L3
        jmp 	L2
     L3:
	...


For large compilation units L2  may be far away.

Revision 1132 - Directory Listing
Modified Mon Mar 11 18:32:50 2002 UTC (17 years, 7 months ago) by blume
Original Path: sml/trunk/src/compiler
fixed problem with missing functor parameter

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

Revision 1126 - Directory Listing
Modified Thu Mar 7 21:16:28 2002 UTC (17 years, 7 months ago) by blume
Original Path: sml/trunk/src/compiler
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 1124 - Directory Listing
Modified Thu Mar 7 19:49:22 2002 UTC (17 years, 7 months ago) by george
Original Path: sml/trunk/src/compiler
Tested the weighted block placement optimization on all architectures
(except the hppa) using AMPL to generate the block and edge frequencies.
Changes were required in the machine properties to correctly
categorize trap instructions. There is an MLRISC flag
"weighted-block-placement" that can be used to enable weighted block
placement, but this will be ineffective without block/edge
frequencies (coming soon).

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

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

Revision 1121 - Directory Listing
Modified Wed Mar 6 19:58:56 2002 UTC (17 years, 7 months ago) by blume
Original Path: sml/trunk/src/compiler
fixed downstream problems caused by those Freq type change in MLRISC

Revision 1116 - Directory Listing
Modified Tue Mar 5 23:17:18 2002 UTC (17 years, 7 months ago) by george
Original Path: sml/trunk/src/compiler
In order to support the block placement optimization, the first
cluster that is generated (called the linkage cluster) contains a jump
to the entry point for the compilation unit. The linkage cluster
contains only one 'function', so block placement will have no effect on
the linkage cluster itself, but all the other clusters have full
freedom in the manner in which they reorder blocks or functions.

On the x86 the typical linkage code that is generated is:
   ----------------------
	.align 2
   L0:
        addl    $L1-L0, 72(%esp)
        jmp     L0


        .align  2
   L1:
   ----------------------

72(%esp) is the memory location for the stdlink register. This
must contain the address of the CPS function being called. In the
above example, it contains the address of  L0; before
calling L1 (the real entry point for the compilation unit), it
must contain the address for L1, and hence

	addl $L1-L0, 72(%esp)

I have tested this on all architectures except the hppa.The increase
in code size is of course negligible.

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

    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, 8 months ago) by blume
Original Path: sml/trunk/src/compiler
a mix of changes to CM and FFI

Revision 1069 - Directory Listing
Modified Fri Feb 15 21:00:05 2002 UTC (17 years, 8 months ago) by blume
Original Path: sml/trunk/src/compiler
Working release, version 110.39

Revision 1068 - Directory Listing
Modified Fri Feb 15 19:18:00 2002 UTC (17 years, 8 months ago) by blume
Original Path: sml/trunk/src/compiler
added CM.State.showBindings (and EnvRef.listBoundSymbols)

Revision 1058 - Directory Listing
Modified Fri Feb 8 20:02:56 2002 UTC (17 years, 8 months ago) by blume
Original Path: sml/trunk/src/compiler
110.38.1; new bootfiles; new PID generation scheme; installer improvements

Revision 1045 - Directory Listing
Modified Mon Jan 28 22:13:13 2002 UTC (17 years, 8 months ago) by blume
Original Path: sml/trunk/src/compiler
bug fix and minor improvement to sparc-c-calls

Revision 1044 - Directory Listing
Modified Mon Jan 28 21:36:08 2002 UTC (17 years, 8 months ago) by blume
Original Path: sml/trunk/src/compiler
c-calls API modification: paramAlloc callback

Revision 1033 - Directory Listing
Modified Thu Jan 24 05:45:18 2002 UTC (17 years, 9 months ago) by george
Original Path: sml/trunk/src/compiler
   There is a dramatic simplification in the interface to the
   register allocator for RISC architectures as a result of making
   parallel copy instructions explicit.

Revision 1028 - Directory Listing
Modified Fri Jan 18 18:57:53 2002 UTC (17 years, 9 months ago) by blume
Original Path: sml/trunk/src/compiler
turned x86-fp on

Revision 1016 - Directory Listing
Modified Tue Jan 15 23:10:06 2002 UTC (17 years, 9 months ago) by george
Original Path: sml/trunk/src/compiler
1. Since COPY instructions are no longer native to the architecture,
   a generic functor can be used to implement the expandCopies function.

2. Allowed EXPORT and IMPORT pseudo-op declarations to appear inside a
   TEXT segment.

Revision 1015 - Directory Listing
Modified Tue Jan 15 21:46:00 2002 UTC (17 years, 9 months ago) by blume
Original Path: sml/trunk/src/compiler
updates/bug fixes to FFI

Revision 1009 - Directory Listing
Modified Wed Jan 9 19:44:22 2002 UTC (17 years, 9 months ago) by george
Original Path: sml/trunk/src/compiler
	Removed the native COPY and FCOPY instructions
	from all the architectures and replaced it with the
	explicit COPY instruction from the previous commit.

	It is now possible to simplify many of the optimizations
	modules that manipulate copies. This has not been
	done in this change.

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

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

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

Revision 1003 - Directory Listing
Modified Fri Dec 7 02:45:32 2001 UTC (17 years, 10 months ago) by george
Original Path: sml/trunk/src/compiler
Changed the representation of instructions from being fully abstract
to being partially concrete. That is to say:

  from
	type instruction

  to
	type instr				(* machine instruction *)

	datatype instruction =
	    LIVE of {regs: C.cellset, spilled: C.cellset}
          | KILL of {regs: C.cellset, spilled: C.cellset}
          | COPYXXX of {k: CB.cellkind, dst: CB.cell list, src: CB.cell list}
          | ANNOTATION of {i: instruction, a: Annotations.annotation}
          | INSTR of instr

This makes the handling of certain special instructions that appear on
all architectures easier and uniform.

LIVE and KILL say that a list of registers are live or killed at the
program point where they appear. No spill code is generated when an
element of the 'regs' field is spilled, but the register is moved to
the 'spilled' (which is present, more for debugging than anything else).

LIVE replaces the (now deprecated) DEFFREG instruction on the alpha.
We used to generate:

	DEFFREG f1
	f1 := f2 + f3
        trapb

but now generate:

	f1 := f2 + f3
	trapb
	LIVE {regs=[f1,f2,f3], spilled=[]}

Furthermore, the DEFFREG (hack) required that all floating point instruction
use all registers mentioned in the instruction. Therefore f1 := f2 + f3,
defines f1 and uses [f1,f2,f3]! This hack is no longer required resulting
in a cleaner alpha implementation. (Hopefully, intel will not get rid of
this architecture).

COPYXXX is intended to replace the parallel COPY and FCOPY  available on
all the architectures. This will result in further simplification of the
register allocator that must be aware of them for coalescing purposes, and
will also simplify certain aspects of the machine description that provides
callbacks related to parallel copies.

ANNOTATION should be obvious, and now INSTR represents the honest to God
machine instruction set!

The <arch>/instructions/<arch>Instr.sml files define certain utility
functions for making porting easier -- essentially converting upper case
to lower case. All machine instructions (of type instr) are in upper case,
and the lower case form generates an MLRISC instruction. For example on
the alpha we have:

  datatype instr =
     LDA of {r:cell, b:cell, d:operand}
   | ...

  val lda : {r:cell, b:cell, d:operand} -> instruction
    ...

where lda is just (INSTR o LDA), etc.

Revision 991 - Directory Listing
Modified Thu Nov 22 14:25:12 2001 UTC (17 years, 11 months ago) by george
Original Path: sml/trunk/src/compiler
  Fixed a bug on non-x86 architectures related to backpatching
  and the new pseudo-ops.

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

Revision 984 - Directory Listing
Modified Wed Nov 21 19:00:08 2001 UTC (17 years, 11 months ago) by george
Original Path: sml/trunk/src/compiler
  Implemented a complete redesign of MLRISC pseudo-ops. Now there
  ought to never be any question of incompatabilities with
  pseudo-op syntax expected by host assemblers.

  For now, only modules supporting GAS syntax are implemented
  but more should follow, such as MASM, and vendor assembler
  syntax, e.g. IBM as, Sun as, etc.

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

Revision 972 - Directory Listing
Modified Sun Oct 28 00:37:02 2001 UTC (17 years, 11 months ago) by leunga
Original Path: sml/trunk/src/compiler

  Fixed the x86 c call fp bug described in blume-20010920-slowfp

Revision 951 - Directory Listing
Modified Tue Oct 9 13:54:40 2001 UTC (18 years ago) by george
Original Path: sml/trunk/src/compiler
Updated input to PERL scripts used to generate
MLRISC cm files.

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

Revision 938 - Directory Listing
Modified Thu Sep 20 21:27:33 2001 UTC (18 years, 1 month ago) by blume
Original Path: sml/trunk/src/compiler
x86-fast-fp turned off again

Revision 933 - Directory Listing
Modified Wed Sep 19 19:31:19 2001 UTC (18 years, 1 month ago) by george
Original Path: sml/trunk/src/compiler
  cleanup

Revision 928 - Directory Listing
Modified Tue Sep 18 13:38:46 2001 UTC (18 years, 1 month ago) by blume
Original Path: sml/trunk/src/compiler
version 110.36

Revision 927 - Directory Listing
Modified Fri Sep 14 20:19:53 2001 UTC (18 years, 1 month ago) by blume
Original Path: sml/trunk/src/compiler
set x86-fast-fp to true by default

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

Revision 916 - Directory Listing
Modified Fri Aug 24 21:13:58 2001 UTC (18 years, 2 months ago) by blume
Original Path: sml/trunk/src/compiler
Release_110_35

Revision 909 - Directory Listing
Modified Fri Aug 24 17:48:53 2001 UTC (18 years, 2 months ago) by george
Original Path: sml/trunk/src/compiler
removed clusters from MLRISC

Revision 905 - Directory Listing
Modified Thu Aug 23 21:53:02 2001 UTC (18 years, 2 months ago) by blume
Original Path: sml/trunk/src/compiler
updates to environments, envrefs, interactive loop

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

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

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

Revision 901 - Directory Listing
Modified Tue Aug 14 19:21:17 2001 UTC (18 years, 2 months ago) by george
Original Path: sml/trunk/src/compiler
  Converted sml/nj files to use the new CellSet

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

Revision 889 - Directory Listing
Modified Thu Jul 19 20:35:20 2001 UTC (18 years, 3 months ago) by george
Original Path: sml/trunk/src/compiler
Substantial simplification in the CELLS interface

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

Revision 875 - Directory Listing
Modified Tue Jul 10 21:19:41 2001 UTC (18 years, 3 months ago) by blume
Original Path: sml/trunk/src/compiler
working version 110.34

Revision 843 - Directory Listing
Modified Tue Jun 19 21:53:04 2001 UTC (18 years, 4 months ago) by blume
Original Path: sml/trunk/src/compiler
un-break fix for bug 1432

Revision 840 - Directory Listing
Modified Fri Jun 15 19:05:19 2001 UTC (18 years, 4 months ago) by blume
Original Path: sml/trunk/src/compiler
c-calls (and NLFFI) implementation for Sparc

Revision 839 - Directory Listing
Modified Thu Jun 7 20:28:44 2001 UTC (18 years, 4 months ago) by blume
Original Path: sml/trunk/src/compiler
several internal changes related to C calls

Revision 838 - Directory Listing
Modified Tue Jun 5 19:10:21 2001 UTC (18 years, 4 months ago) by blume
Original Path: sml/trunk/src/compiler
index-file generation in CM; small changes to c-calls API

Revision 834 - Directory Listing
Modified Wed May 23 18:30:31 2001 UTC (18 years, 5 months ago) by blume
Original Path: sml/trunk/src/compiler
Release_110_33

Revision 830 - Directory Listing
Modified Tue May 15 19:48:17 2001 UTC (18 years, 5 months ago) by george
Original Path: sml/trunk/src/compiler
Fixed core dump when profiling using the PPC.
The problem was that the PPC cannot distinguish between
div-by-zero and overflow.

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

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

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

Revision 815 - Directory Listing
Modified Fri May 4 05:09:10 2001 UTC (18 years, 5 months ago) by leunga
Original Path: sml/trunk/src/compiler

    Moby related MLRISC changes

Revision 812 - Directory Listing
Modified Fri Apr 20 15:07:30 2001 UTC (18 years, 6 months ago) by blume
Original Path: sml/trunk/src/compiler
merged changes from my devel branch (inML flag twiddling)

Revision 810 - Directory Listing
Modified Fri Apr 20 13:26:46 2001 UTC (18 years, 6 months ago) by george
Original Path: sml/trunk/src/compiler
Port to Mac OS X

Revision 808 - Directory Listing
Modified Wed Apr 18 15:43:09 2001 UTC (18 years, 6 months ago) by blume
Original Path: sml/trunk/src/compiler
merged changes from devel branch

Revision 804 - Directory Listing
Modified Thu Mar 22 19:37:34 2001 UTC (18 years, 7 months ago) by george
Original Path: sml/trunk/src/compiler
  support for new x86 FFI

Revision 801 - Directory Listing
Modified Mon Mar 19 22:53:00 2001 UTC (18 years, 7 months ago) by blume
Original Path: sml/trunk/src/compiler
parallel make works again

Revision 797 - Directory Listing
Modified Fri Mar 16 00:00:17 2001 UTC (18 years, 7 months ago) by leunga
Original Path: sml/trunk/src/compiler

   x86 optimizations for x := x op y where x is a memory location.

Revision 796 - Directory Listing
Modified Tue Mar 6 00:04:33 2001 UTC (18 years, 7 months ago) by leunga
Original Path: sml/trunk/src/compiler

   Support for alternative control-flow, exception handlers added.

Revision 794 - Directory Listing
Modified Thu Mar 1 22:16:59 2001 UTC (18 years, 7 months ago) by blume
Original Path: sml/trunk/src/compiler
removed now-redundant feedback-new.sml

Revision 793 - Directory Listing
Modified Thu Mar 1 20:41:30 2001 UTC (18 years, 7 months ago) by dbm
Original Path: sml/trunk/src/compiler
rename feedback.sml to feedback-old.sml, feedback-new.sml to feedback.sml

Revision 780 - Directory Listing
Modified Tue Jan 30 22:45:26 2001 UTC (18 years, 8 months ago) by blume
Original Path: sml/trunk/src/compiler
merging changes from private devel branch

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

Revision 775 - Directory Listing
Modified Fri Jan 12 01:17:51 2001 UTC (18 years, 9 months ago) by leunga
Original Path: sml/trunk/src/compiler

    Merging the types labexp and mltree.
    tag leunga-20010111-labexp=mltree

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

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

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

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

Revision 761 - Directory Listing
Modified Sat Dec 23 05:37:37 2000 UTC (18 years, 10 months ago) by george
Original Path: sml/trunk/src/compiler
infinite precision in MLRISC

Revision 757 - Directory Listing
Modified Thu Dec 21 14:54:56 2000 UTC (18 years, 10 months ago) by blume
Original Path: sml/trunk/src/compiler
merging changes from private branch

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

Revision 749 - Directory Listing
Modified Fri Dec 8 15:16:36 2000 UTC (18 years, 10 months ago) by george
Original Path: sml/trunk/src/compiler
release 110.31

Revision 744 - Directory Listing
Modified Fri Dec 8 04:11:42 2000 UTC (18 years, 10 months ago) by leunga
Original Path: sml/trunk/src/compiler

   A CVS update record!

   Changed type cell from int to datatype, and numerous other changes.
   Affect every client of MLRISC.  Lal says this can be bootstrapped on all
   machines.  See smlnj/HISTORY for details.

   Tag:  leunga-20001207-cell-monster-hack

Revision 742 - Directory Listing
Modified Thu Nov 30 14:09:32 2000 UTC (18 years, 10 months ago) by blume
Original Path: sml/trunk/src/compiler
merging changes from private branch

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

Revision 731 - Directory Listing
Modified Fri Nov 10 22:57:45 2000 UTC (18 years, 11 months ago) by leunga
Original Path: sml/trunk/src/compiler

A new x86 floating point code generator.  By default it is off.
See HISTORY for details.   CVS tag=leunga-20001110-new-x86-fp

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

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

Revision 715 - Directory Listing
Modified Thu Nov 2 07:51:04 2000 UTC (18 years, 11 months ago) by blume
Original Path: sml/trunk/src/compiler
added conditional compilation in init library; BOOTFILES

Revision 710 - Directory Listing
Modified Tue Oct 17 08:21:09 2000 UTC (19 years ago) by blume
Original Path: sml/trunk/src/compiler
merge my changes for 110.30; NOW BOOTFILES!

Revision 699 - Directory Listing
Modified Mon Aug 21 22:13:39 2000 UTC (19 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler
(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 698 - Directory Listing
Modified Mon Aug 21 22:05:47 2000 UTC (19 years, 2 months ago) by monnier
Original Path: sml/trunk/src/compiler
(CompileF.codegen): Remove dead code.
Enforce the `nosplit' directive by dropping inlineExp if requested.

Revision 686 - Directory Listing
Modified Tue Jul 18 08:58:50 2000 UTC (19 years, 3 months ago) by blume
Original Path: sml/trunk/src/compiler
built 110.29

Revision 679 - Directory Listing
Modified Thu Jun 29 07:03:20 2000 UTC (19 years, 3 months ago) by blume
Original Path: sml/trunk/src/compiler
even better BTrace;
modifications to how the yacc tool handles options

Revision 678 - Directory Listing
Modified Tue Jun 27 07:51:09 2000 UTC (19 years, 3 months ago) by blume
Original Path: sml/trunk/src/compiler
merging latest improvements (CM, BTrace)

Revision 677 - Directory Listing
Modified Mon Jun 26 00:56:56 2000 UTC (19 years, 3 months ago) by blume
Original Path: sml/trunk/src/compiler
merge CM and BTrace changes

Revision 675 - Directory Listing
Modified Fri Jun 23 09:18:18 2000 UTC (19 years, 4 months ago) by blume
Original Path: sml/trunk/src/compiler
new back-trace facility added; see HISTORY

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

Revision 667 - Directory Listing
Modified Fri Jun 16 17:25:51 2000 UTC (19 years, 4 months ago) by yx29
Original Path: sml/trunk/src/compiler
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, 4 months ago) by blume
Original Path: sml/trunk/src/compiler
merging back my devel changes (anchor environments)

Revision 657 - Directory Listing
Modified Fri Jun 9 05:20:54 2000 UTC (19 years, 4 months ago) by leunga
Original Path: sml/trunk/src/compiler

     None of these changes should affect SML/NJ.  See HISTORY file for details.
     CVS Tag=leunga-20000609-various

Revision 653 - Directory Listing
Modified Wed Jun 7 07:59:06 2000 UTC (19 years, 4 months ago) by blume
Original Path: sml/trunk/src/compiler
merge-back from my devel branch; see HISTORY

Revision 652 - Directory Listing
Modified Tue Jun 6 02:14:56 2000 UTC (19 years, 4 months ago) by blume
Original Path: sml/trunk/src/compiler
merging changes from devel branch; new boot files

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

Revision 645 - Directory Listing
Modified Mon May 15 07:17:30 2000 UTC (19 years, 5 months ago) by blume
Original Path: sml/trunk/src/compiler
merging changes from devel branch; see HISTORY

Revision 643 - Directory Listing
Modified Fri May 12 08:29:15 2000 UTC (19 years, 5 months ago) by blume
Original Path: sml/trunk/src/compiler
merged my path anchor changes into main trunk
more config/srcarchiveurl! YOU NEED NEW BINFILES more config/srcarchiveurl!
Read HISTORY and src/system/README!

Revision 641 - Directory Listing
Modified Thu May 11 01:16:45 2000 UTC (19 years, 5 months ago) by leunga
Original Path: sml/trunk/src/compiler

    Various bug fixes and new features for C--, Moby and MLRISC optimizations.
    See smlnj/HISTORY for details.  CVS tag: leunga-20000510-moby-c--ssa

Revision 635 - Directory Listing
Modified Tue May 2 15:09:12 2000 UTC (19 years, 5 months ago) by dbm
Original Path: sml/trunk/src/compiler
Version 110.28

Revision 633 - Directory Listing
Modified Sun Apr 30 16:44:09 2000 UTC (19 years, 5 months ago) by dbm
Original Path: sml/trunk/src/compiler
fixes for bugs 1498 and 1510

Revision 632 - Directory Listing
Modified Sat Apr 29 15:50:42 2000 UTC (19 years, 5 months ago) by blume
Original Path: sml/trunk/src/compiler
merged pending changes into main trunk; see HISTORY; new binfiles!!

Revision 626 - Directory Listing
Modified Sat Apr 22 23:24:24 2000 UTC (19 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 624 - Directory Listing
Modified Fri Apr 21 03:06:21 2000 UTC (19 years, 6 months ago) by leunga
Original Path: sml/trunk/src/compiler

   This update synchronizes my repository with Yale's.  Most of these
changes are related to C--, Moby, and my optimizations.  It should have
little impact on SML/NJ.

   CVS tag leunga-20000420-ssa-c---stuff

Revision 623 - Directory Listing
Modified Thu Apr 20 17:24:37 2000 UTC (19 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
(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 607 - Directory Listing
Modified Mon Apr 10 16:31:03 2000 UTC (19 years, 6 months ago) by dbm
Original Path: sml/trunk/src/compiler
Version 110.27

Revision 604 - Directory Listing
Modified Fri Apr 7 13:53:08 2000 UTC (19 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 602 - Directory Listing
Modified Thu Apr 6 05:31:24 2000 UTC (19 years, 6 months ago) by leunga
Original Path: sml/trunk/src/compiler

    Forgot these files in the last update

Revision 593 - Directory Listing
Modified Tue Apr 4 07:26:33 2000 UTC (19 years, 6 months ago) by leunga
Original Path: sml/trunk/src/compiler

    Fixes related to C--, Moby and my optimizations.
    CVS tag=leunga-20000404-C--Moby

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

Revision 591 - Directory Listing
Modified Mon Apr 3 01:19:20 2000 UTC (19 years, 6 months ago) by leunga
Original Path: sml/trunk/src/compiler

   1. Renamed the constructor CALL in MLTREE by popular demand.
   2. Added a bunch of files from my repository.  These are currently
      used by other non-SMLNJ backends.

Revision 590 - Directory Listing
Modified Sat Apr 1 02:24:08 2000 UTC (19 years, 6 months ago) by leunga
Original Path: sml/trunk/src/compiler

   This update contains a new module for extracting aliasing information.
   CVS tag: leunga-20000331-aliasing

Revision 588 - Directory Listing
Modified Fri Mar 31 09:00:02 2000 UTC (19 years, 6 months ago) by blume
Original Path: sml/trunk/src/compiler
changes to modmap generator and CM tool parameter mechanism (see HISTORY)

Revision 587 - Directory Listing
Modified Thu Mar 30 09:01:52 2000 UTC (19 years, 6 months ago) by blume
Original Path: sml/trunk/src/compiler
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 586 - Directory Listing
Modified Thu Mar 30 05:08:07 2000 UTC (19 years, 6 months ago) by leunga
Original Path: sml/trunk/src/compiler

   Fixed a slight problem with gc types annotations.

   To turn on gc types, do this:

       CM.autoload "sml/compiler.cm";
       Compiler.Control.MLRISC.getFlag "mlrisc-gc-types" := true;

Revision 585 - Directory Listing
Modified Wed Mar 29 23:55:35 2000 UTC (19 years, 6 months ago) by leunga
Original Path: sml/trunk/src/compiler

   This update contains major changes to the code generator and various
back ends.  Please see the entry leunga-20000327-mlriscGen_hppa_alpha_x86
in the file sml/HISTORY for details.

Revision 584 - Directory Listing
Modified Mon Mar 27 09:55:55 2000 UTC (19 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
(saveLvarNames): Set it back to false (for faster smaller compiler).

Revision 583 - Directory Listing
Modified Thu Mar 23 21:52:30 2000 UTC (19 years, 7 months ago) by leunga
Original Path: sml/trunk/src/compiler

1. X86 fixes/changes

   a.  The old code generated for SETcc was completely wrong.
       The Intel optimization guide is VERY misleading.

2. ALPHA fixes/changes

   a.  Added the instructions LDBU, LDWU, STB, STW as per Fermin's suggestion.
   b.  Added a new mode byteWordLoadStores to the functor parameter to Alpha()
   c.  Added reassociation code for address computation.

Revision 582 - Directory Listing
Modified Thu Mar 23 01:04:32 2000 UTC (19 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler
(ANDALSO, ORELSE): Change associativity to `right'.

Revision 579 - Directory Listing
Modified Wed Mar 22 06:33:08 2000 UTC (19 years, 7 months ago) by leunga
Original Path: sml/trunk/src/compiler


1. X86 fixes/changes

   a.  x86Rewrite bug with MUL3 (found by Lal)
   b.  Added the instructions FSTS, FSTL

2. PA-RISC fixes/changes

   a.  B label should not be a delay slot candidate!  Why did this work?
   b.  ADDT(32, REG(32, r), LI n) now generates one instruction instead of two,
       as it should be.
   c.  The assembly syntax for fstds and fstdd was wrong.
   d.  Added the composite instruction COMICLR/LDO, which is the immediate
       operand variant of COMCLR/LDO.

3. Generic MLRISC

   a.  shuffle.sml rewritten to be slightly more efficient
   b.  DIV bug in mltree-simplify fixed (found by Fermin)

4. Register Allocator

   a.  I now release the interference graph earlier during spilling.
       May improve memory usage.

Revision 576 - Directory Listing
Modified Fri Mar 10 07:27:16 2000 UTC (19 years, 7 months ago) by leunga
Original Path: sml/trunk/src/compiler

More assembly output problems involving the indexed addressing mode
on the x86 have been found and corrected. Thanks to Fermin Reig for the
fix.

The interface and implementation of the register allocator have been changed
slightly to accommodate the possibility to skip the register allocation
phases completely and go directly to memory allocation.  This is needed
for C-- use.

This fix only affects the x86 assembly output.

Revision 573 - Directory Listing
Modified Thu Mar 9 15:23:52 2000 UTC (19 years, 7 months ago) by blume
Original Path: sml/trunk/src/compiler
merging back changes from blume_devel_v110_26_2

Revision 569 - Directory Listing
Modified Tue Mar 7 04:01:07 2000 UTC (19 years, 7 months ago) by blume
Original Path: sml/trunk/src/compiler
- size info in BOOTLIST
     * no fixed upper limits for number of bootfiles or length of
       bootfile names in runtime
     * falling back to old behavior if no BOOTLIST size info found
- allocation size heuristics in .run-sml
     * tries to read cache size from /proc/cpuinfo (this is important for
        small-cache Celeron systems!)
- install.sh robustified
- CM manual updates
- paranoid mode
     * no more CMB.deliver() (i.e., all done by CMB.make())
     * can re-use existing sml.boot.* files
     * init.cmi now treated as library
     * library stamps for consistency checks
- sml.boot.<arch>-<os>/PIDMAP file
     * This file is read by the CM startup code.  This is used to minimize
       the amount of dynamic state that needs to be stowed away for the
       purpose of sharing between interactive system and user code.
- CM.Anchor.anchor instead of CM.Anchor.{set,cancel}
     * Upon request by Elsa.  Anchors now controlled by get-set-pair
       like most other CM state variables.
- Compiler.CMSA eliminated
     * No longer supported by CM anyway.
- fixed bugs in pickler that kept biting Stefan
     * past refs to past refs (was caused by the possibility that
       ad-hoc sharing is more discriminating than hash-cons sharing)
     * integer overflow on LargeInt.minInt
- ml-{lex,yacc} build scripts now use new mechanism
  for building standalone programs
- fixed several gcc -Wall warnings that were caused by missing header
  files, missing initializations, etc., in runtime (not all warnings
  eliminated, though)

Revision 564 - Directory Listing
Modified Fri Mar 3 16:55:03 2000 UTC (19 years, 7 months ago) by george
Original Path: sml/trunk/src/compiler
lal-20000303- deleted old callgc files

Revision 563 - Directory Listing
Modified Fri Mar 3 16:39:32 2000 UTC (19 years, 7 months ago) by george
Original Path: sml/trunk/src/compiler
lal-20000303-new mltree -- take II

Revision 555 - Directory Listing
Modified Fri Mar 3 16:10:30 2000 UTC (19 years, 7 months ago) by george
Original Path: sml/trunk/src/compiler
lal-20000303-new mltree -- take II

Revision 546 - Directory Listing
Modified Thu Feb 24 14:04:51 2000 UTC (19 years, 8 months ago) by george
Original Path: sml/trunk/src/compiler
  Changes to MLTREE

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

Revision 537 - Directory Listing
Modified Fri Feb 18 17:20:16 2000 UTC (19 years, 8 months ago) by blume
Original Path: sml/trunk/src/compiler
CM changes: standalone builds, better CMB.make/deliver, general improvements

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

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

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

Revision 530 - Directory Listing
Modified Mon Jan 31 22:53:55 2000 UTC (19 years, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler
(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, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

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

Revision 521 - Directory Listing
Modified Wed Jan 12 20:44:11 2000 UTC (19 years, 9 months ago) by dbm
Original Path: sml/trunk/src/compiler
Allen's fix for gc code generation problem

Revision 515 - Directory Listing
Modified Sun Jan 9 09:59:14 2000 UTC (19 years, 9 months ago) by blume
Original Path: sml/trunk/src/compiler
pickler bug fixes; some cosmetic changes

Revision 509 - Directory Listing
Modified Sun Dec 12 05:13:26 1999 UTC (19 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

Revision 508 - Directory Listing
Modified Fri Dec 10 20:35:54 1999 UTC (19 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

Revision 506 - Directory Listing
Modified Fri Dec 10 00:15:35 1999 UTC (19 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler
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 (19 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler
the 110.25 merge compiles

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

Revision 496 - Directory Listing
Modified Tue Dec 7 15:43:07 1999 UTC (19 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

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

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

Revision 473 - Directory Listing
Modified Wed Nov 10 22:54:26 1999 UTC (19 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

Revision 472 - Directory Listing
Modified Wed Nov 10 22:48:28 1999 UTC (19 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r471,
which included commits to RCS files with non-trunk default branches.

Revision 470 - Directory Listing
Modified Wed Nov 10 22:42:52 1999 UTC (19 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r469,
which included commits to RCS files with non-trunk default branches.

Revision 466 - Directory Listing
Modified Wed Nov 10 22:35:37 1999 UTC (19 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

Revision 440 - Directory Listing
Modified Wed Sep 15 16:37:27 1999 UTC (20 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r439,
which included commits to RCS files with non-trunk default branches.

Revision 431 - Directory Listing
Modified Wed Sep 8 12:02:54 1999 UTC (20 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
merged in 110.21.  It might compile but it should won't work.

Revision 430 - Directory Listing
Modified Wed Sep 8 09:47:00 1999 UTC (20 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r429,
which included commits to RCS files with non-trunk default branches.

Revision 427 - Directory Listing
Modified Wed Sep 8 09:40:08 1999 UTC (20 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

Revision 425 - Directory Listing
Modified Mon Sep 6 17:40:48 1999 UTC (20 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
unused

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

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

Revision 421 - Directory Listing
Modified Sat Sep 4 00:01:22 1999 UTC (20 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r420,
which included commits to RCS files with non-trunk default branches.

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

Revision 414 - Directory Listing
Modified Fri Sep 3 00:30:34 1999 UTC (20 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r413,
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, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r411,
which included commits to RCS files with non-trunk default branches.

Revision 409 - Directory Listing
Modified Fri Sep 3 00:21:52 1999 UTC (20 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

Revision 290 - Directory Listing
Modified Sat May 22 21:01:25 1999 UTC (20 years, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r289,
which included commits to RCS files with non-trunk default branches.

Revision 285 - Directory Listing
Modified Wed May 19 23:31:25 1999 UTC (20 years, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r284,
which included commits to RCS files with non-trunk default branches.

Revision 261 - Directory Listing
Modified Wed Apr 28 21:14:25 1999 UTC (20 years, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler
temporarily turned cpsopt back on

Revision 260 - Directory Listing
Modified Thu Apr 22 10:56:58 1999 UTC (20 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

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

Revision 258 - Directory Listing
Modified Wed Apr 21 23:58:52 1999 UTC (20 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

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

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

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

Revision 254 - Directory Listing
Modified Wed Apr 21 00:01:13 1999 UTC (20 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
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, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
cleanup non-exhaustive match warning

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

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

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

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

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

Revision 241 - Directory Listing
Modified Sat Apr 17 18:35:00 1999 UTC (20 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

Revision 237 - Directory Listing
Modified Sat Apr 17 18:26:03 1999 UTC (20 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

Revision 233 - Directory Listing
Modified Sat Apr 17 18:18:11 1999 UTC (20 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

Revision 229 - Directory Listing
Modified Sat Apr 17 18:10:40 1999 UTC (20 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

Revision 225 - Directory Listing
Modified Sat Apr 17 17:09:01 1999 UTC (20 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

Revision 221 - Directory Listing
Modified Sat Apr 17 16:19:57 1999 UTC (20 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

Revision 220 - Directory Listing
Modified Tue Mar 9 02:15:05 1999 UTC (20 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler
merged in 110.10

Revision 208 - Directory Listing
Modified Fri Jan 15 15:54:19 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r207,
which included commits to RCS files with non-trunk default branches.

Revision 205 - Directory Listing
Modified Fri Jan 15 15:53:56 1999 UTC (20 years, 9 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

Revision 203 - Directory Listing
Modified Sat Dec 19 20:51:39 1998 UTC (20 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 (20 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler
Added IH_MAYBE to allow more selective inlining.

Revision 201 - Directory Listing
Modified Sat Nov 28 23:32:48 1998 UTC (20 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 (20 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 (20 years, 10 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

Revision 197 - Directory Listing
Modified Sun Nov 22 01:25:23 1998 UTC (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
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 (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

Revision 187 - Directory Listing
Modified Wed Nov 11 07:04:24 1998 UTC (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 183 - Directory Listing
Modified Sun Nov 8 16:58:19 1998 UTC (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
merged in 110.9.1

Revision 177 - Directory Listing
Modified Sat Nov 7 22:42:44 1998 UTC (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

Revision 174 - Directory Listing
Modified Sat Nov 7 22:37:14 1998 UTC (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

Revision 171 - Directory Listing
Modified Sat Nov 7 22:24:50 1998 UTC (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

Revision 170 - Directory Listing
Modified Sat Nov 7 20:30:40 1998 UTC (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r169,
which included commits to RCS files with non-trunk default branches.

Revision 168 - Directory Listing
Modified Sat Nov 7 20:11:41 1998 UTC (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r167,
which included commits to RCS files with non-trunk default branches.

Revision 165 - Directory Listing
Modified Sat Nov 7 20:10:46 1998 UTC (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

Revision 164 - Directory Listing
Modified Sat Oct 31 01:03:30 1998 UTC (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
* 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 (20 years, 11 months ago) by monnier
Original Path: sml/trunk/src/compiler
added dropping of dead-arguments

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

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

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

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

Revision 157 - Directory Listing
Modified Mon Oct 12 01:50:35 1998 UTC (21 years ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

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

Revision 153 - Directory Listing
Modified Sun Oct 11 17:49:09 1998 UTC (21 years ago) by monnier
Original Path: sml/trunk/src/compiler
replaced debugFContract by misc and changed the default settings

Revision 152 - Directory Listing
Modified Sun Oct 11 17:48:39 1998 UTC (21 years ago) by monnier
Original Path: sml/trunk/src/compiler
removed debugFContract

Revision 151 - Directory Listing
Modified Sun Oct 11 17:46:21 1998 UTC (21 years ago) by monnier
Original Path: sml/trunk/src/compiler
added FLINT.misc for temporary debugging purposes (a la CG.misc4)

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

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

Revision 146 - Directory Listing
Modified Mon Sep 7 23:26:10 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

Revision 145 - Directory Listing
Modified Mon Sep 7 23:12:37 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
merged in changes upto 110.8.1

Revision 144 - Directory Listing
Modified Mon Sep 7 21:46:44 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r143,
which included commits to RCS files with non-trunk default branches.

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

Revision 134 - Directory Listing
Modified Mon Sep 7 21:02:07 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

Revision 133 - Directory Listing
Modified Mon Sep 7 19:48:36 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r132,
which included commits to RCS files with non-trunk default branches.

Revision 128 - Directory Listing
Modified Mon Sep 7 19:06:29 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r127,
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, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r125,
which included commits to RCS files with non-trunk default branches.

Revision 124 - Directory Listing
Modified Mon Sep 7 16:19:55 1998 UTC (21 years, 1 month ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r123,
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, 4 months ago) by monnier
Original Path: sml/trunk/src/compiler
addition of fcontract and fixfix and Control.FLINT

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

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

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

Revision 117 - Directory Listing
Modified Fri Jun 5 20:15:29 1998 UTC (21 years, 4 months ago) by monnier
Original Path: sml/trunk/src/compiler
This commit was generated by cvs2svn to compensate for changes in r116,
which included commits to RCS files with non-trunk default branches.

Revision 114 - Directory Listing
Modified Fri Jun 5 19:41:21 1998 UTC (21 years, 4 months ago) by monnier
Original Path: sml/trunk/src/compiler
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, 4 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

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

Revision 104 - Directory Listing
Modified Thu May 28 21:25:35 1998 UTC (21 years, 4 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

Revision 101 - Directory Listing
Modified Thu May 14 04:56:46 1998 UTC (21 years, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler
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, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

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

Revision 89 - Directory Listing
Modified Tue May 12 21:54:55 1998 UTC (21 years, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

Revision 88 - Directory Listing
Modified Thu May 7 01:19:15 1998 UTC (21 years, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

Revision 87 - Directory Listing
Modified Thu May 7 01:11:45 1998 UTC (21 years, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

Revision 86 - Directory Listing
Modified Thu May 7 00:24:39 1998 UTC (21 years, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

Revision 85 - Directory Listing
Modified Wed May 6 23:53:59 1998 UTC (21 years, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

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

Revision 83 - Directory Listing
Modified Wed May 6 22:23:51 1998 UTC (21 years, 5 months ago) by league
Original Path: sml/trunk/src/compiler
removing assert and rc-file changes for now.

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

Revision 81 - Directory Listing
Modified Sat May 2 23:59:45 1998 UTC (21 years, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler
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, 5 months ago) by monnier
Original Path: sml/trunk/src/compiler
Changed the semantics of "inline".

Revision 79 - Directory Listing
Modified Sat Apr 18 00:19:45 1998 UTC (21 years, 6 months ago) by league
Original Path: sml/trunk/src/compiler
assertions and .smlnjrc

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

Revision 77 - Directory Listing
Modified Tue Apr 14 05:21:45 1998 UTC (21 years, 6 months ago) by league
Original Path: sml/trunk/src/compiler
debugging code

Revision 76 - Directory Listing
Modified Sun Apr 12 02:23:26 1998 UTC (21 years, 6 months ago) by league
Original Path: sml/trunk/src/compiler
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, 6 months ago) by league
Original Path: sml/trunk/src/compiler
added checking for redefined lvars.

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

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

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

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

Revision 70 - Directory Listing
Modified Fri Apr 3 00:06:55 1998 UTC (21 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
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, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

Revision 65 - Directory Listing
Modified Wed Apr 1 20:57:44 1998 UTC (21 years, 6 months ago) by league
Original Path: sml/trunk/src/compiler
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, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
dummy

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

Revision 62 - Directory Listing
Modified Tue Mar 31 05:13:22 1998 UTC (21 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

Revision 61 - Directory Listing
Modified Mon Mar 30 19:27:36 1998 UTC (21 years, 6 months ago) by league
Original Path: sml/trunk/src/compiler
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, 6 months ago) by league
Original Path: sml/trunk/src/compiler
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, 6 months ago) by league
Original Path: sml/trunk/src/compiler
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, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

Revision 57 - Directory Listing
Modified Sun Mar 29 01:01:15 1998 UTC (21 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
undoing the hack that has been replaced by a proper fix

Revision 56 - Directory Listing
Modified Sun Mar 29 01:00:36 1998 UTC (21 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
properly newline-terminate the output when hitting eof

Revision 55 - Directory Listing
Modified Sun Mar 29 00:46:52 1998 UTC (21 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
properly newline-terminate xmakeml's output

Revision 54 - Directory Listing
Modified Sat Mar 28 23:13:01 1998 UTC (21 years, 6 months ago) by monnier
Original Path: sml/trunk/src/compiler
properly newline-terminate xmakeml's output

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

Revision 52 - Directory Listing
Modified Mon Mar 23 03:59:51 1998 UTC (21 years, 7 months ago) by league
Original Path: sml/trunk/src/compiler
buildcm -full and
xmakeml

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

Revision 50 - Directory Listing
Modified Sun Mar 22 23:05:33 1998 UTC (21 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler
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, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

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

Revision 46 - Directory Listing
Modified Sun Mar 22 20:11:09 1998 UTC (21 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler
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, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

Revision 25 - Directory Listing
Modified Thu Mar 12 00:49:58 1998 UTC (21 years, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler
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, 7 months ago) by monnier
Original Path: sml/trunk/src/compiler
Initial revision

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

Revision 15 - Directory Listing
Added Thu Feb 5 05:59:56 1998 UTC (21 years, 8 months ago) by monnier
Original Path: sml/trunk/src/compiler
*** empty log message ***

Sort log by:

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