X-Git-Url: http://git.joshuawise.com/snipe.git/blobdiff_plain/1144856ba9d6018d9922c6ede7e97779a0fe6373..5c79bb689ab446551bc7ec4497e6c9b75582837e:/optimize/feckful.sml diff --git a/optimize/feckful.sml b/optimize/feckful.sml new file mode 100644 index 0000000..ec6bdc5 --- /dev/null +++ b/optimize/feckful.sml @@ -0,0 +1,13 @@ +structure FeckfulnessAnalysis :> OPTIMIZATION = +struct + structure T = Tree + structure TU = TreeUtils + + fun feckstm (a as T.EFFECT e) = + if (TU.effect e) + then [a] + else [] + | feckstm a = [a] + + val optimizer = { shortname = "feckfulness", description = "Removes simple side effect statements that have no effect", func = Optimizer.IRSTM feckstm } +end