[MLton-commit] r4663
Matthew Fluet
MLton@mlton.org
Sat, 24 Jun 2006 07:53:57 -0700
Merge trunk revisions 4634:4662 into x86_64 branch
----------------------------------------------------------------------
U mlton/branches/on-20050822-x86_64-branch/doc/changelog
U mlton/branches/on-20050822-x86_64-branch/mlton/atoms/prim.sig
U mlton/branches/on-20050822-x86_64-branch/mlton/codegen/x86-codegen/x86-codegen.fun
U mlton/branches/on-20050822-x86_64-branch/mlton/ssa/deep-flatten.fun
U mlton/branches/on-20050822-x86_64-branch/mlton/ssa/ref-flatten.fun
----------------------------------------------------------------------
Modified: mlton/branches/on-20050822-x86_64-branch/doc/changelog
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/doc/changelog 2006-06-24 14:46:43 UTC (rev 4662)
+++ mlton/branches/on-20050822-x86_64-branch/doc/changelog 2006-06-24 14:53:54 UTC (rev 4663)
@@ -1,5 +1,9 @@
Here are the changes since version 20051202.
+* 2006-06-24
+ - Fixed a bug in pass to flatten data structures. Thanks to Joe Hurd
+ for the bug report.
+
* 2006-06-08
- Fixed a bug in the native codegen's implementation of the C-calling
convention.
Modified: mlton/branches/on-20050822-x86_64-branch/mlton/atoms/prim.sig
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/mlton/atoms/prim.sig 2006-06-24 14:46:43 UTC (rev 4662)
+++ mlton/branches/on-20050822-x86_64-branch/mlton/atoms/prim.sig 2006-06-24 14:53:54 UTC (rev 4663)
@@ -62,7 +62,7 @@
*)
| MLton_bug (* ssa to rssa *)
| MLton_deserialize (* unused *)
- | MLton_eq (* codegen *)
+ | MLton_eq (* ssa to rssa *)
| MLton_equal (* polymorphic equality *)
| MLton_halt (* ssa to rssa *)
(* MLton_handlesSignals and MLton_installSignalHandler work together
Modified: mlton/branches/on-20050822-x86_64-branch/mlton/codegen/x86-codegen/x86-codegen.fun
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/mlton/codegen/x86-codegen/x86-codegen.fun 2006-06-24 14:46:43 UTC (rev 4662)
+++ mlton/branches/on-20050822-x86_64-branch/mlton/codegen/x86-codegen/x86-codegen.fun 2006-06-24 14:53:54 UTC (rev 4663)
@@ -80,9 +80,8 @@
= let
val reserveEsp =
(* There is no sigaltstack on cygwin, we need to reserve %esp to
- * hold the C stack pointer. We need to do this even in programs
- * that don't handle signals, since signals get used under the hood
- * in Cygwin.
+ * hold the C stack pointer. We only need to do this in programs
+ * that handle signals.
*)
handlesSignals andalso let open Control in !targetOS = Cygwin end
Modified: mlton/branches/on-20050822-x86_64-branch/mlton/ssa/deep-flatten.fun
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/mlton/ssa/deep-flatten.fun 2006-06-24 14:46:43 UTC (rev 4662)
+++ mlton/branches/on-20050822-x86_64-branch/mlton/ssa/deep-flatten.fun 2006-06-24 14:53:54 UTC (rev 4663)
@@ -668,6 +668,7 @@
; result ())
fun equal () =
(Value.unify (arg 0, arg 1)
+ ; Value.dontFlatten (arg 0)
; result ())
in
case Prim.name prim of
@@ -909,13 +910,7 @@
end
end
end)
- | PrimApp {args, prim} =>
- let
- val () = simpleTree ()
- in
- doit (PrimApp {args = replaceVars args,
- prim = prim})
- end
+ | PrimApp {args, prim} => simple ()
| Select {base, offset} =>
(case var of
NONE => none ()
Modified: mlton/branches/on-20050822-x86_64-branch/mlton/ssa/ref-flatten.fun
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/mlton/ssa/ref-flatten.fun 2006-06-24 14:46:43 UTC (rev 4662)
+++ mlton/branches/on-20050822-x86_64-branch/mlton/ssa/ref-flatten.fun 2006-06-24 14:53:54 UTC (rev 4663)
@@ -511,7 +511,7 @@
* r: (t ref) = (t)
* ... <no uses of r> ...
* x: (... * (t ref) * ...) = (..., r, ...)
- * ... <othere assignments to r> ...
+ * ... <other assignments to r> ...
*
*)
datatype z = datatype VarInfo.t