summaryrefslogtreecommitdiff
path: root/middle_end/inlining_cost.ml
diff options
context:
space:
mode:
authorMark Shinwell <mshinwell@janestreet.com>2016-02-29 16:46:02 +0000
committerMark Shinwell <mshinwell@janestreet.com>2016-02-29 16:47:41 +0000
commit7f02ca33bf8ff5ced99203e5cc199a2ebdaf9c75 (patch)
treed24846ffb806bed2446d02acb35871bcf0bd4230 /middle_end/inlining_cost.ml
parentea6865d183e90dc8a7387ecd4c19df09a99ae5f0 (diff)
downloadocaml-7f02ca33bf8ff5ced99203e5cc199a2ebdaf9c75.tar.gz
Flambda: do not forget the default case when measuring the size of Switch
Diffstat (limited to 'middle_end/inlining_cost.ml')
-rw-r--r--middle_end/inlining_cost.ml3
1 files changed, 2 insertions, 1 deletions
diff --git a/middle_end/inlining_cost.ml b/middle_end/inlining_cost.ml
index c471cac74b..3256ffc477 100644
--- a/middle_end/inlining_cost.ml
+++ b/middle_end/inlining_cost.ml
@@ -92,7 +92,8 @@ let lambda_smaller' lam ~than:threshold =
let aux = function _::_::_ -> size := !size + 5 | _ -> () in
aux sw.consts; aux sw.blocks;
List.iter (fun (_, lam) -> lambda_size lam) sw.consts;
- List.iter (fun (_, lam) -> lambda_size lam) sw.blocks
+ List.iter (fun (_, lam) -> lambda_size lam) sw.blocks;
+ Misc.Stdlib.Option.iter lambda_size sw.failaction
| String_switch (_, sw, def) ->
List.iter (fun (_, lam) ->
size := !size + 2;