File tree 1 file changed +10
-1
lines changed
middle_end/flambda/simplify
1 file changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -349,11 +349,20 @@ module Simplify_int_conv_naked_int64 = Make_simplify_int_conv (A.For_int64s)
349
349
module Simplify_int_conv_naked_nativeint =
350
350
Make_simplify_int_conv (A. For_nativeints )
351
351
352
- let simplify_boolean_not dacc ~original_term ~arg : _ ~arg_ty ~result_var =
352
+ let simplify_boolean_not dacc ~original_term ~arg ~arg_ty ~result_var =
353
353
let result = Name. var (Var_in_binding_pos. var result_var) in
354
354
let denv = DA. denv dacc in
355
355
let typing_env = DE. typing_env denv in
356
356
let proof = T. prove_equals_tagged_immediates typing_env arg_ty in
357
+ let dacc =
358
+ DA. map_denv dacc ~f: (fun denv ->
359
+ let prim : P.t =
360
+ Unary (Boolean_not ,
361
+ Simple. var (Var_in_binding_pos. var result_var))
362
+ in
363
+ DE. add_cse denv (P.Eligible_for_cse. create_exn prim)
364
+ ~bound_to: arg)
365
+ in
357
366
let result_unknown () =
358
367
let ty = T. unknown K. value in
359
368
let env_extension = TEE. one_equation result ty in
You can’t perform that action at this time.
0 commit comments