diff options
author | Adam Chlipala <adam@chlipala.net> | 2011-01-13 18:15:04 -0500 |
---|---|---|
committer | Adam Chlipala <adam@chlipala.net> | 2011-01-13 18:15:04 -0500 |
commit | 434556a40833c8b3df8d4e857b4b9fa10521c758 (patch) | |
tree | 8b084eda74b40c5837e84f4fdd6cc82b57112fb6 /src/mono_reduce.sml | |
parent | c7447c954b5c45ccfa72c2877863d6ac99d5674a (diff) |
alwaysInline .urp setting
Diffstat (limited to 'src/mono_reduce.sml')
-rw-r--r-- | src/mono_reduce.sml | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/mono_reduce.sml b/src/mono_reduce.sml index f8b209d5..e61ed237 100644 --- a/src/mono_reduce.sml +++ b/src/mono_reduce.sml @@ -374,12 +374,13 @@ fun reduce file = TFun (t1, t2) => functionInside' t1 orelse functionInside t2 | _ => functionInside' t - fun mayInline (n, e, t) = + fun mayInline (n, e, t, s) = case IM.find (uses, n) of NONE => false | SOME count => count <= 1 orelse size e <= Settings.getMonoInline () orelse functionInside t + orelse Settings.checkAlwaysInline s fun summarize d (e, _) = let @@ -711,7 +712,7 @@ fun reduce file = let val eo = case eo of NONE => NONE - | SOME e => if mayInline (n, e, t) then + | SOME e => if mayInline (n, e, t, s) then SOME e else NONE |