comparison src/compiler.sml @ 1186:a4ac900d3085

Remove unpoly1
author Adam Chlipala <adamc@hcoop.net>
date Tue, 16 Mar 2010 15:39:16 -0400
parents 338be96f8533
children 5eac14322548
comparison
equal deleted inserted replaced
1185:338be96f8533 1186:a4ac900d3085
93 else 93 else
94 SOME v 94 SOME v
95 end, 95 end,
96 print = #print ph, 96 print = #print ph,
97 time = fn (input, pmap) => let 97 time = fn (input, pmap) => let
98 val () = if !debug then
99 print ("Starting " ^ name ^ "....\n")
100 else
101 ()
98 val befor = Time.now () 102 val befor = Time.now ()
99 val v = #func ph input 103 val v = #func ph input
100 val elapsed = Time.- (Time.now (), befor) 104 val elapsed = Time.- (Time.now (), befor)
101 in 105 in
106 if !debug then
107 print ("Finished " ^ name ^ ".\n")
108 else
109 ();
102 (if ErrorMsg.anyErrors () then 110 (if ErrorMsg.anyErrors () then
103 NONE 111 NONE
104 else 112 else
105 SOME v, 113 SOME v,
106 (name, elapsed) :: pmap) 114 (name, elapsed) :: pmap)
960 val toRpcify = transform rpcify "rpcify" o toShake1 968 val toRpcify = transform rpcify "rpcify" o toShake1
961 969
962 val toCore_untangle2 = transform core_untangle "core_untangle2" o toRpcify 970 val toCore_untangle2 = transform core_untangle "core_untangle2" o toRpcify
963 val toShake2 = transform shake "shake2" o toCore_untangle2 971 val toShake2 = transform shake "shake2" o toCore_untangle2
964 972
973 val toEspecialize1 = transform especialize "especialize1" o toShake2
974
975 val toCore_untangle3 = transform core_untangle "core_untangle3" o toEspecialize1
976 val toShake3 = transform shake "shake3" o toCore_untangle3
977
978 val tag = {
979 func = Tag.tag,
980 print = CorePrint.p_file CoreEnv.empty
981 }
982
983 val toTag = transform tag "tag" o toShake3
984
985 val reduce = {
986 func = Reduce.reduce,
987 print = CorePrint.p_file CoreEnv.empty
988 }
989
990 val toReduce = transform reduce "reduce" o toTag
991
992 val toShakey = transform shake "shakey" o toReduce
993
965 val unpoly = { 994 val unpoly = {
966 func = Unpoly.unpoly, 995 func = Unpoly.unpoly,
967 print = CorePrint.p_file CoreEnv.empty 996 print = CorePrint.p_file CoreEnv.empty
968 } 997 }
969 998
970 val toUnpoly1 = transform unpoly "unpoly1" o toShake2 999 val toUnpoly = transform unpoly "unpoly" o toShakey
971
972 val toEspecialize1 = transform especialize "especialize1" o toUnpoly1
973
974 val toCore_untangle3 = transform core_untangle "core_untangle3" o toEspecialize1
975 val toShake3 = transform shake "shake3" o toCore_untangle3
976
977 val tag = {
978 func = Tag.tag,
979 print = CorePrint.p_file CoreEnv.empty
980 }
981
982 val toTag = transform tag "tag" o toShake3
983
984 val reduce = {
985 func = Reduce.reduce,
986 print = CorePrint.p_file CoreEnv.empty
987 }
988
989 val toReduce = transform reduce "reduce" o toTag
990
991 val toUnpoly2 = transform unpoly "unpoly2" o toReduce
992 1000
993 val specialize = { 1001 val specialize = {
994 func = Specialize.specialize, 1002 func = Specialize.specialize,
995 print = CorePrint.p_file CoreEnv.empty 1003 print = CorePrint.p_file CoreEnv.empty
996 } 1004 }
997 1005
998 val toSpecialize = transform specialize "specialize" o toUnpoly2 1006 val toSpecialize = transform specialize "specialize" o toUnpoly
999 1007
1000 val toShake4 = transform shake "shake4" o toSpecialize 1008 val toShake4 = transform shake "shake4" o toSpecialize
1001 1009
1002 val toEspecialize2 = transform especialize "especialize2" o toShake4 1010 val toEspecialize2 = transform especialize "especialize2" o toShake4
1003 1011