From 17260c1fcb1778217df23b5e1c1271642d8aab80 Mon Sep 17 00:00:00 2001 From: Adam Chlipala Date: Thu, 27 Nov 2008 12:04:54 -0500 Subject: Untangle and shake within Especialize loop --- src/especialize.sml | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'src/especialize.sml') diff --git a/src/especialize.sml b/src/especialize.sml index 220b48bd..c2a763ea 100644 --- a/src/especialize.sml +++ b/src/especialize.sml @@ -349,15 +349,22 @@ fun specialize' file = fun specialize file = let (*val () = Print.prefaces "Intermediate" [("file", CorePrint.p_file CoreEnv.empty file)];*) - val file = ReduceLocal.reduce file + (*val file = ReduceLocal.reduce file*) val (changed, file) = specialize' file - val file = ReduceLocal.reduce file - (*val file = CoreUntangle.untangle file + (*val file = ReduceLocal.reduce file + val file = CoreUntangle.untangle file val file = Shake.shake file*) in (*print "Round over\n";*) if changed then - specialize file + let + val file = ReduceLocal.reduce file + val file = CoreUntangle.untangle file + val file = Shake.shake file + in + (*print "Again!\n";*) + specialize file + end else file end -- cgit v1.2.3