summaryrefslogtreecommitdiffstats
path: root/asmcomp/closure.ml
diff options
context:
space:
mode:
Diffstat (limited to 'asmcomp/closure.ml')
-rw-r--r--asmcomp/closure.ml7
1 files changed, 5 insertions, 2 deletions
diff --git a/asmcomp/closure.ml b/asmcomp/closure.ml
index 6ab5098cb..d4ff4e223 100644
--- a/asmcomp/closure.ml
+++ b/asmcomp/closure.ml
@@ -110,7 +110,8 @@ let lambda_smaller lam threshold =
if !size > threshold then raise Exit;
match lam with
Uvar v -> ()
- | Uconst(Const_base(Const_int _ | Const_char _ | Const_float _) |
+ | Uconst(Const_base(Const_int _ | Const_char _ | Const_float _ |
+ Const_int32 _ | Const_int64 _ | Const_nativeint _) |
Const_pointer _) -> incr size
| Uconst _ ->
raise Exit (* avoid duplication of structured constants *)
@@ -312,7 +313,9 @@ let rec substitute sb ulam =
let is_simple_argument = function
Uvar _ -> true
- | Uconst(Const_base(Const_int _ | Const_char _ | Const_float _)) -> true
+ | Uconst(Const_base(Const_int _ | Const_char _ | Const_float _ |
+ Const_int32 _ | Const_int64 _ | Const_nativeint _)) ->
+ true
| Uconst(Const_pointer _) -> true
| _ -> false