Source file ocaml_optcomp.ml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
module Afl_instrument = Afl_instrument
module Amd64_simd_defs = Amd64_simd_defs
module Amd64_simd_instrs = Amd64_simd_instrs
module Arch = Arch
module Arm64_ast = Arm64_ast
module Asm_targets = Asm_targets
module Asm_targets__Asm_directives = Asm_targets__Asm_directives
module Asm_targets__Asm_directives_dwarf = Asm_targets__Asm_directives_dwarf
module Asm_targets__Asm_label = Asm_targets__Asm_label
module Asm_targets__Asm_section = Asm_targets__Asm_section
module Asm_targets__Asm_symbol = Asm_targets__Asm_symbol
module Asmgen = Asmgen
module Asmlink = Asmlink
module Available_ranges_vars = Available_ranges_vars
module Backend_var = Backend_var
module Branch_relaxation = Branch_relaxation
module Build_igot_and_iplt = Build_igot_and_iplt
module Build_linker_args = Build_linker_args
module CSE = CSE
module Cfg = Cfg
module Cfg_available_regs = Cfg_available_regs
module Cfg_comballoc = Cfg_comballoc
module Cfg_cse = Cfg_cse
module Cfg_cse_target_intf = Cfg_cse_target_intf
module Cfg_dataflow = Cfg_dataflow
module Cfg_deadcode = Cfg_deadcode
module Cfg_dominators = Cfg_dominators
module Cfg_edge = Cfg_edge
module Cfg_format = Cfg_format
module Cfg_intf = Cfg_intf
module Cfg_invariants = Cfg_invariants
module Cfg_liveness = Cfg_liveness
module Cfg_loop_infos = Cfg_loop_infos
module Cfg_polling = Cfg_polling
module Cfg_prologue = Cfg_prologue
module Cfg_reducibility = Cfg_reducibility
module Cfg_selectgen = Cfg_selectgen
module Cfg_selectgen_target_intf = Cfg_selectgen_target_intf
module Cfg_selection = Cfg_selection
module Cfg_simplify = Cfg_simplify
module Cfg_stack_checks = Cfg_stack_checks
module Cfg_to_linear = Cfg_to_linear
module Cfg_to_linear_desc = Cfg_to_linear_desc
module Cfg_with_infos = Cfg_with_infos
module Cfg_with_layout = Cfg_with_layout
module Cm_bundle = Cm_bundle
module Cmm = Cmm
module Cmm_builtins = Cmm_builtins
module Cmm_helpers = Cmm_helpers
module Cmm_invariants = Cmm_invariants
module Cmm_peephole_engine = Cmm_peephole_engine
module Cmmgen_state = Cmmgen_state
module Compilenv = Compilenv
module Compiler_hooks = Compiler_hooks
module Compiler_owee = Compiler_owee
module Compiler_owee__Owee_archive = Compiler_owee__Owee_archive
module Compiler_owee__Owee_buf = Compiler_owee__Owee_buf
module Compiler_owee__Owee_debug_line = Compiler_owee__Owee_debug_line
module Compiler_owee__Owee_elf = Compiler_owee__Owee_elf
module Compiler_owee__Owee_elf_notes = Compiler_owee__Owee_elf_notes
module Compiler_owee__Owee_elf_relocation = Compiler_owee__Owee_elf_relocation
module Compiler_owee__Owee_elf_string_table = Compiler_owee__Owee_elf_string_table
module Compiler_owee__Owee_form = Compiler_owee__Owee_form
module Compiler_owee__Owee_graph = Compiler_owee__Owee_graph
module Compiler_owee__Owee_interval_map = Compiler_owee__Owee_interval_map
module Compiler_owee__Owee_linux_maps = Compiler_owee__Owee_linux_maps
module Compiler_owee__Owee_location = Compiler_owee__Owee_location
module Compiler_owee__Owee_macho = Compiler_owee__Owee_macho
module Compiler_owee__Owee_marker = Compiler_owee__Owee_marker
module Compiler_owee__Owee_traverse = Compiler_owee__Owee_traverse
module Compiler_owee__Unix_intf = Compiler_owee__Unix_intf
module Compute_ranges = Compute_ranges
module Compute_ranges_intf = Compute_ranges_intf
module Dissector = Dissector
module Dissector_log = Dissector_log
module Dwarf = Dwarf
module Dwarf_abstract_instances = Dwarf_abstract_instances
module Dwarf_compilation_unit = Dwarf_compilation_unit
module Dwarf_concrete_instances = Dwarf_concrete_instances
module Dwarf_flags = Dwarf_flags
module Dwarf_high = Dwarf_high
module Dwarf_high__Assign_abbrevs = Dwarf_high__Assign_abbrevs
module Dwarf_high__Dwarf_attribute_helpers = Dwarf_high__Dwarf_attribute_helpers
module Dwarf_high__Dwarf_world = Dwarf_high__Dwarf_world
module Dwarf_high__Operator_builder = Dwarf_high__Operator_builder
module Dwarf_high__Proto_die = Dwarf_high__Proto_die
module Dwarf_high__Simple_location_description_lang = Dwarf_high__Simple_location_description_lang
module Dwarf_inlined_frames = Dwarf_inlined_frames
module Dwarf_low = Dwarf_low
module Dwarf_low__Abbreviation_code = Dwarf_low__Abbreviation_code
module Dwarf_low__Abbreviations_table = Dwarf_low__Abbreviations_table
module Dwarf_low__Abbreviations_table_entry = Dwarf_low__Abbreviations_table_entry
module Dwarf_low__Address_index = Dwarf_low__Address_index
module Dwarf_low__Address_table = Dwarf_low__Address_table
module Dwarf_low__Aranges_table = Dwarf_low__Aranges_table
module Dwarf_low__Child_determination = Dwarf_low__Child_determination
module Dwarf_low__Composite_location_description = Dwarf_low__Composite_location_description
module Dwarf_low__Counted_location_description = Dwarf_low__Counted_location_description
module Dwarf_low__Debug_info_section = Dwarf_low__Debug_info_section
module Dwarf_low__Debug_loc_table = Dwarf_low__Debug_loc_table
module Dwarf_low__Debug_ranges_table = Dwarf_low__Debug_ranges_table
module Dwarf_low__Debugging_information_entry = Dwarf_low__Debugging_information_entry
module Dwarf_low__Dwarf_4_location_list = Dwarf_low__Dwarf_4_location_list
module Dwarf_low__Dwarf_4_location_list_entry = Dwarf_low__Dwarf_4_location_list_entry
module Dwarf_low__Dwarf_4_range_list = Dwarf_low__Dwarf_4_range_list
module Dwarf_low__Dwarf_4_range_list_entry = Dwarf_low__Dwarf_4_range_list_entry
module Dwarf_low__Dwarf_arch_sizes = Dwarf_low__Dwarf_arch_sizes
module Dwarf_low__Dwarf_attribute_values = Dwarf_low__Dwarf_attribute_values
module Dwarf_low__Dwarf_attributes = Dwarf_low__Dwarf_attributes
module Dwarf_low__Dwarf_emittable = Dwarf_low__Dwarf_emittable
module Dwarf_low__Dwarf_format = Dwarf_low__Dwarf_format
module Dwarf_low__Dwarf_int = Dwarf_low__Dwarf_int
module Dwarf_low__Dwarf_language = Dwarf_low__Dwarf_language
module Dwarf_low__Dwarf_operator = Dwarf_low__Dwarf_operator
module Dwarf_low__Dwarf_tag = Dwarf_low__Dwarf_tag
module Dwarf_low__Dwarf_value = Dwarf_low__Dwarf_value
module Dwarf_low__Dwarf_version = Dwarf_low__Dwarf_version
module Dwarf_low__Encoding_attribute = Dwarf_low__Encoding_attribute
module Dwarf_low__Initial_length = Dwarf_low__Initial_length
module Dwarf_low__Inline_code = Dwarf_low__Inline_code
module Dwarf_low__Location_list = Dwarf_low__Location_list
module Dwarf_low__Location_list_entry = Dwarf_low__Location_list_entry
module Dwarf_low__Location_list_table = Dwarf_low__Location_list_table
module Dwarf_low__Location_or_range_list = Dwarf_low__Location_or_range_list
module Dwarf_low__Location_or_range_list_entry = Dwarf_low__Location_or_range_list_entry
module Dwarf_low__Location_or_range_list_table = Dwarf_low__Location_or_range_list_table
module Dwarf_low__Range_list = Dwarf_low__Range_list
module Dwarf_low__Range_list_entry = Dwarf_low__Range_list_entry
module Dwarf_low__Range_list_table = Dwarf_low__Range_list_table
module Dwarf_low__Simple_location_description = Dwarf_low__Simple_location_description
module Dwarf_low__Single_location_description = Dwarf_low__Single_location_description
module Dwarf_low__Unit_type = Dwarf_low__Unit_type
module Dwarf_name_laundry = Dwarf_name_laundry
module Dwarf_reg_locations = Dwarf_reg_locations
module Dwarf_state = Dwarf_state
module Dwarf_type = Dwarf_type
module Dwarf_variables_and_parameters = Dwarf_variables_and_parameters
module Emit = Emit
module Emitaux = Emitaux
module Fdo_info = Fdo_info
module Flambda2 = Flambda2
module Flambda2_algorithms = Flambda2_algorithms
module Flambda2_algorithms__Channel = Flambda2_algorithms__Channel
module Flambda2_algorithms__Container_types = Flambda2_algorithms__Container_types
module Flambda2_algorithms__Container_types_intf = Flambda2_algorithms__Container_types_intf
module Flambda2_algorithms__Leapfrog = Flambda2_algorithms__Leapfrog
module Flambda2_algorithms__Lmap = Flambda2_algorithms__Lmap
module Flambda2_algorithms__Patricia_tree = Flambda2_algorithms__Patricia_tree
module Flambda2_algorithms__Table_by_int_id = Flambda2_algorithms__Table_by_int_id
module Flambda2_bound_identifiers = Flambda2_bound_identifiers
module Flambda2_bound_identifiers__Bound_continuation = Flambda2_bound_identifiers__Bound_continuation
module Flambda2_bound_identifiers__Bound_continuations = Flambda2_bound_identifiers__Bound_continuations
module Flambda2_bound_identifiers__Bound_for_function = Flambda2_bound_identifiers__Bound_for_function
module Flambda2_bound_identifiers__Bound_name = Flambda2_bound_identifiers__Bound_name
module Flambda2_bound_identifiers__Bound_parameter = Flambda2_bound_identifiers__Bound_parameter
module Flambda2_bound_identifiers__Bound_parameters = Flambda2_bound_identifiers__Bound_parameters
module Flambda2_bound_identifiers__Bound_pattern = Flambda2_bound_identifiers__Bound_pattern
module Flambda2_bound_identifiers__Bound_static = Flambda2_bound_identifiers__Bound_static
module Flambda2_bound_identifiers__Bound_var = Flambda2_bound_identifiers__Bound_var
module Flambda2_classic_mode_types = Flambda2_classic_mode_types
module Flambda2_classic_mode_types__Value_approximation = Flambda2_classic_mode_types__Value_approximation
module Flambda2_cmx = Flambda2_cmx
module Flambda2_cmx__Exported_code = Flambda2_cmx__Exported_code
module Flambda2_cmx__Flambda_cmx = Flambda2_cmx__Flambda_cmx
module Flambda2_cmx__Flambda_cmx_format = Flambda2_cmx__Flambda_cmx_format
module Flambda2_datalog = Flambda2_datalog
module Flambda2_datalog__ = Flambda2_datalog__
module Flambda2_datalog__Column = Flambda2_datalog__Column
module Flambda2_datalog__Cursor = Flambda2_datalog__Cursor
module Flambda2_datalog__Datalog = Flambda2_datalog__Datalog
module Flambda2_datalog__Datalog_imports = Flambda2_datalog__Datalog_imports
module Flambda2_datalog__Heterogenous_list = Flambda2_datalog__Heterogenous_list
module Flambda2_datalog__Schedule = Flambda2_datalog__Schedule
module Flambda2_datalog__Table = Flambda2_datalog__Table
module Flambda2_datalog__Trie = Flambda2_datalog__Trie
module Flambda2_datalog__Value = Flambda2_datalog__Value
module Flambda2_datalog__Virtual_machine = Flambda2_datalog__Virtual_machine
module Flambda2_floats = Flambda2_floats
module Flambda2_floats__Float32 = Flambda2_floats__Float32
module Flambda2_from_lambda = Flambda2_from_lambda
module Flambda2_from_lambda__Closure_conversion = Flambda2_from_lambda__Closure_conversion
module Flambda2_from_lambda__Closure_conversion_aux = Flambda2_from_lambda__Closure_conversion_aux
module Flambda2_from_lambda__Lambda_to_flambda = Flambda2_from_lambda__Lambda_to_flambda
module Flambda2_from_lambda__Lambda_to_flambda_env = Flambda2_from_lambda__Lambda_to_flambda_env
module Flambda2_from_lambda__Lambda_to_flambda_primitives = Flambda2_from_lambda__Lambda_to_flambda_primitives
module Flambda2_from_lambda__Lambda_to_flambda_primitives_helpers = Flambda2_from_lambda__Lambda_to_flambda_primitives_helpers
module Flambda2_from_lambda__Lambda_to_lambda_transforms = Flambda2_from_lambda__Lambda_to_lambda_transforms
module Flambda2_identifiers = Flambda2_identifiers
module Flambda2_identifiers__Apply_cont_rewrite_id = Flambda2_identifiers__Apply_cont_rewrite_id
module Flambda2_identifiers__Code_id = Flambda2_identifiers__Code_id
module Flambda2_identifiers__Code_id_or_name = Flambda2_identifiers__Code_id_or_name
module Flambda2_identifiers__Code_id_or_symbol = Flambda2_identifiers__Code_id_or_symbol
module Flambda2_identifiers__Coercion0 = Flambda2_identifiers__Coercion0
module Flambda2_identifiers__Continuation = Flambda2_identifiers__Continuation
module Flambda2_identifiers__Continuation_callsite_map = Flambda2_identifiers__Continuation_callsite_map
module Flambda2_identifiers__Flambda_debug_uid = Flambda2_identifiers__Flambda_debug_uid
module Flambda2_identifiers__Function_slot = Flambda2_identifiers__Function_slot
module Flambda2_identifiers__Int_ids = Flambda2_identifiers__Int_ids
module Flambda2_identifiers__Name = Flambda2_identifiers__Name
module Flambda2_identifiers__Named_rewrite_id = Flambda2_identifiers__Named_rewrite_id
module Flambda2_identifiers__Rec_info_expr0 = Flambda2_identifiers__Rec_info_expr0
module Flambda2_identifiers__Reg_width_const = Flambda2_identifiers__Reg_width_const
module Flambda2_identifiers__Slot = Flambda2_identifiers__Slot
module Flambda2_identifiers__Symbol = Flambda2_identifiers__Symbol
module Flambda2_identifiers__Value_slot = Flambda2_identifiers__Value_slot
module Flambda2_identifiers__Variable = Flambda2_identifiers__Variable
module Flambda2_import = Flambda2_import
module Flambda2_kinds = Flambda2_kinds
module Flambda2_kinds__Flambda_arity = Flambda2_kinds__Flambda_arity
module Flambda2_kinds__Flambda_kind = Flambda2_kinds__Flambda_kind
module Flambda2_kinds__Tag = Flambda2_kinds__Tag
module Flambda2_lattices = Flambda2_lattices
module Flambda2_lattices__Or_bottom = Flambda2_lattices__Or_bottom
module Flambda2_lattices__Or_unknown = Flambda2_lattices__Or_unknown
module Flambda2_lattices__Or_unknown_or_bottom = Flambda2_lattices__Or_unknown_or_bottom
module Flambda2_nominal = Flambda2_nominal
module Flambda2_nominal__Bindable = Flambda2_nominal__Bindable
module Flambda2_nominal__Contains_ids = Flambda2_nominal__Contains_ids
module Flambda2_nominal__Contains_names = Flambda2_nominal__Contains_names
module Flambda2_nominal__Ids_for_export = Flambda2_nominal__Ids_for_export
module Flambda2_nominal__Name_abstraction = Flambda2_nominal__Name_abstraction
module Flambda2_nominal__Name_mode = Flambda2_nominal__Name_mode
module Flambda2_nominal__Name_occurrences = Flambda2_nominal__Name_occurrences
module Flambda2_nominal__Num_occurrences = Flambda2_nominal__Num_occurrences
module Flambda2_nominal__Permutation = Flambda2_nominal__Permutation
module Flambda2_nominal__Renaming = Flambda2_nominal__Renaming
module Flambda2_numbers = Flambda2_numbers
module Flambda2_numbers__Numeric_types = Flambda2_numbers__Numeric_types
module Flambda2_numbers__One_bit_fewer = Flambda2_numbers__One_bit_fewer
module Flambda2_numbers__Or_infinity = Flambda2_numbers__Or_infinity
module Flambda2_numbers__Target_ocaml_int = Flambda2_numbers__Target_ocaml_int
module Flambda2_numbers__Targetint_32_64 = Flambda2_numbers__Targetint_32_64
module Flambda2_numbers__Vector_types = Flambda2_numbers__Vector_types
module Flambda2_parser = Flambda2_parser
module Flambda2_parser__Fexpr = Flambda2_parser__Fexpr
module Flambda2_parser__Fexpr_to_flambda = Flambda2_parser__Fexpr_to_flambda
module Flambda2_parser__Flambda_lex = Flambda2_parser__Flambda_lex
module Flambda2_parser__Flambda_parser = Flambda2_parser__Flambda_parser
module Flambda2_parser__Flambda_parser_messages = Flambda2_parser__Flambda_parser_messages
module Flambda2_parser__Flambda_to_fexpr = Flambda2_parser__Flambda_to_fexpr
module Flambda2_parser__Parse_flambda = Flambda2_parser__Parse_flambda
module Flambda2_parser__Print_fexpr = Flambda2_parser__Print_fexpr
module Flambda2_reaper = Flambda2_reaper
module Flambda2_reaper__Cofield = Flambda2_reaper__Cofield
module Flambda2_reaper__Dep_solver = Flambda2_reaper__Dep_solver
module Flambda2_reaper__Dot_printer = Flambda2_reaper__Dot_printer
module Flambda2_reaper__Field = Flambda2_reaper__Field
module Flambda2_reaper__Global_flow_graph = Flambda2_reaper__Global_flow_graph
module Flambda2_reaper__Reaper = Flambda2_reaper__Reaper
module Flambda2_reaper__Rebuild = Flambda2_reaper__Rebuild
module Flambda2_reaper__Rebuilt_expr = Flambda2_reaper__Rebuilt_expr
module Flambda2_reaper__Rev_expr = Flambda2_reaper__Rev_expr
module Flambda2_reaper__Traverse = Flambda2_reaper__Traverse
module Flambda2_reaper__Traverse_acc = Flambda2_reaper__Traverse_acc
module Flambda2_simplify = Flambda2_simplify
module Flambda2_simplify__Apply_cont_rewrite = Flambda2_simplify__Apply_cont_rewrite
module Flambda2_simplify__Are_lifting_conts = Flambda2_simplify__Are_lifting_conts
module Flambda2_simplify__Build_unboxing_denv = Flambda2_simplify__Build_unboxing_denv
module Flambda2_simplify__Call_site_inlining_decision = Flambda2_simplify__Call_site_inlining_decision
module Flambda2_simplify__Closure_info = Flambda2_simplify__Closure_info
module Flambda2_simplify__Common_subexpression_elimination = Flambda2_simplify__Common_subexpression_elimination
module Flambda2_simplify__Comparison_result = Flambda2_simplify__Comparison_result
module Flambda2_simplify__Continuation_extra_params_and_args = Flambda2_simplify__Continuation_extra_params_and_args
module Flambda2_simplify__Continuation_in_env = Flambda2_simplify__Continuation_in_env
module Flambda2_simplify__Continuation_shortcut = Flambda2_simplify__Continuation_shortcut
module Flambda2_simplify__Continuation_uses = Flambda2_simplify__Continuation_uses
module Flambda2_simplify__Continuation_uses_env = Flambda2_simplify__Continuation_uses_env
module Flambda2_simplify__Continuation_uses_env_intf = Flambda2_simplify__Continuation_uses_env_intf
module Flambda2_simplify__Control_flow_graph = Flambda2_simplify__Control_flow_graph
module Flambda2_simplify__Data_flow_graph = Flambda2_simplify__Data_flow_graph
module Flambda2_simplify__Dominator_graph = Flambda2_simplify__Dominator_graph
module Flambda2_simplify__Downwards_acc = Flambda2_simplify__Downwards_acc
module Flambda2_simplify__Downwards_env = Flambda2_simplify__Downwards_env
module Flambda2_simplify__Expr_builder = Flambda2_simplify__Expr_builder
module Flambda2_simplify__Flow = Flambda2_simplify__Flow
module Flambda2_simplify__Flow_acc = Flambda2_simplify__Flow_acc
module Flambda2_simplify__Flow_analysis = Flambda2_simplify__Flow_analysis
module Flambda2_simplify__Flow_types = Flambda2_simplify__Flow_types
module Flambda2_simplify__Function_decl_inlining_decision = Flambda2_simplify__Function_decl_inlining_decision
module Flambda2_simplify__Inlining_transforms = Flambda2_simplify__Inlining_transforms
module Flambda2_simplify__Is_unboxing_beneficial = Flambda2_simplify__Is_unboxing_beneficial
module Flambda2_simplify__Join_points = Flambda2_simplify__Join_points
module Flambda2_simplify__Lifted_constant = Flambda2_simplify__Lifted_constant
module Flambda2_simplify__Lifted_constant_state = Flambda2_simplify__Lifted_constant_state
module Flambda2_simplify__Lifted_cont_params = Flambda2_simplify__Lifted_cont_params
module Flambda2_simplify__Loopify_state = Flambda2_simplify__Loopify_state
module Flambda2_simplify__Mutable_unboxing = Flambda2_simplify__Mutable_unboxing
module Flambda2_simplify__Named_rewrite = Flambda2_simplify__Named_rewrite
module Flambda2_simplify__Non_constructed_code = Flambda2_simplify__Non_constructed_code
module Flambda2_simplify__Non_recursive_handler = Flambda2_simplify__Non_recursive_handler
module Flambda2_simplify__Number_adjuncts = Flambda2_simplify__Number_adjuncts
module Flambda2_simplify__One_continuation_use = Flambda2_simplify__One_continuation_use
module Flambda2_simplify__One_recursive_handler = Flambda2_simplify__One_recursive_handler
module Flambda2_simplify__Optimistic_unboxing_decision = Flambda2_simplify__Optimistic_unboxing_decision
module Flambda2_simplify__Original_handlers = Flambda2_simplify__Original_handlers
module Flambda2_simplify__Rebuilt_expr = Flambda2_simplify__Rebuilt_expr
module Flambda2_simplify__Rebuilt_static_const = Flambda2_simplify__Rebuilt_static_const
module Flambda2_simplify__Reification = Flambda2_simplify__Reification
module Flambda2_simplify__Replay_history = Flambda2_simplify__Replay_history
module Flambda2_simplify__Simplified_named = Flambda2_simplify__Simplified_named
module Flambda2_simplify__Simplify = Flambda2_simplify__Simplify
module Flambda2_simplify__Simplify_apply_cont_expr = Flambda2_simplify__Simplify_apply_cont_expr
module Flambda2_simplify__Simplify_apply_expr = Flambda2_simplify__Simplify_apply_expr
module Flambda2_simplify__Simplify_binary_primitive = Flambda2_simplify__Simplify_binary_primitive
module Flambda2_simplify__Simplify_coercion = Flambda2_simplify__Simplify_coercion
module Flambda2_simplify__Simplify_common = Flambda2_simplify__Simplify_common
module Flambda2_simplify__Simplify_expr = Flambda2_simplify__Simplify_expr
module Flambda2_simplify__Simplify_extcall = Flambda2_simplify__Simplify_extcall
module Flambda2_simplify__Simplify_import = Flambda2_simplify__Simplify_import
module Flambda2_simplify__Simplify_let_cont_expr = Flambda2_simplify__Simplify_let_cont_expr
module Flambda2_simplify__Simplify_let_expr = Flambda2_simplify__Simplify_let_expr
module Flambda2_simplify__Simplify_named = Flambda2_simplify__Simplify_named
module Flambda2_simplify__Simplify_named_result = Flambda2_simplify__Simplify_named_result
module Flambda2_simplify__Simplify_nullary_primitive = Flambda2_simplify__Simplify_nullary_primitive
module Flambda2_simplify__Simplify_primitive = Flambda2_simplify__Simplify_primitive
module Flambda2_simplify__Simplify_primitive_result = Flambda2_simplify__Simplify_primitive_result
module Flambda2_simplify__Simplify_quaternary_primitive = Flambda2_simplify__Simplify_quaternary_primitive
module Flambda2_simplify__Simplify_rec_info_expr = Flambda2_simplify__Simplify_rec_info_expr
module Flambda2_simplify__Simplify_set_of_closures = Flambda2_simplify__Simplify_set_of_closures
module Flambda2_simplify__Simplify_set_of_closures_context = Flambda2_simplify__Simplify_set_of_closures_context
module Flambda2_simplify__Simplify_simple = Flambda2_simplify__Simplify_simple
module Flambda2_simplify__Simplify_static_const = Flambda2_simplify__Simplify_static_const
module Flambda2_simplify__Simplify_switch_expr = Flambda2_simplify__Simplify_switch_expr
module Flambda2_simplify__Simplify_ternary_primitive = Flambda2_simplify__Simplify_ternary_primitive
module Flambda2_simplify__Simplify_unary_primitive = Flambda2_simplify__Simplify_unary_primitive
module Flambda2_simplify__Simplify_variadic_primitive = Flambda2_simplify__Simplify_variadic_primitive
module Flambda2_simplify__Specialization_cost = Flambda2_simplify__Specialization_cost
module Flambda2_simplify__Unbox_continuation_params = Flambda2_simplify__Unbox_continuation_params
module Flambda2_simplify__Unboxers = Flambda2_simplify__Unboxers
module Flambda2_simplify__Unboxing_epa = Flambda2_simplify__Unboxing_epa
module Flambda2_simplify__Unboxing_types = Flambda2_simplify__Unboxing_types
module Flambda2_simplify__Upwards_acc = Flambda2_simplify__Upwards_acc
module Flambda2_simplify__Upwards_env = Flambda2_simplify__Upwards_env
module Flambda2_simplify_shared = Flambda2_simplify_shared
module Flambda2_simplify_shared__Are_rebuilding_terms = Flambda2_simplify_shared__Are_rebuilding_terms
module Flambda2_simplify_shared__Call_site_inlining_decision_type = Flambda2_simplify_shared__Call_site_inlining_decision_type
module Flambda2_simplify_shared__Exported_offsets = Flambda2_simplify_shared__Exported_offsets
module Flambda2_simplify_shared__Inlining_helpers = Flambda2_simplify_shared__Inlining_helpers
module Flambda2_simplify_shared__Inlining_report = Flambda2_simplify_shared__Inlining_report
module Flambda2_simplify_shared__Slot_offsets = Flambda2_simplify_shared__Slot_offsets
module Flambda2_term_basics = Flambda2_term_basics
module Flambda2_term_basics__Alloc_mode = Flambda2_term_basics__Alloc_mode
module Flambda2_term_basics__Coercion = Flambda2_term_basics__Coercion
module Flambda2_term_basics__Continuation_use_kind = Flambda2_term_basics__Continuation_use_kind
module Flambda2_term_basics__Empty_array_kind = Flambda2_term_basics__Empty_array_kind
module Flambda2_term_basics__Inlined_debuginfo = Flambda2_term_basics__Inlined_debuginfo
module Flambda2_term_basics__Or_invalid = Flambda2_term_basics__Or_invalid
module Flambda2_term_basics__Or_variable = Flambda2_term_basics__Or_variable
module Flambda2_term_basics__Rec_info_expr = Flambda2_term_basics__Rec_info_expr
module Flambda2_term_basics__Scope = Flambda2_term_basics__Scope
module Flambda2_term_basics__Simple = Flambda2_term_basics__Simple
module Flambda2_term_basics__String_info = Flambda2_term_basics__String_info
module Flambda2_term_basics__Symbol_projection = Flambda2_term_basics__Symbol_projection
module Flambda2_term_basics__Tag_and_size = Flambda2_term_basics__Tag_and_size
module Flambda2_term_basics__Unit = Flambda2_term_basics__Unit
module Flambda2_term_basics__Value_slot_set = Flambda2_term_basics__Value_slot_set
module Flambda2_terms = Flambda2_terms
module Flambda2_terms__Apply_cont_expr = Flambda2_terms__Apply_cont_expr
module Flambda2_terms__Apply_expr = Flambda2_terms__Apply_expr
module Flambda2_terms__Call_kind = Flambda2_terms__Call_kind
module Flambda2_terms__Code = Flambda2_terms__Code
module Flambda2_terms__Code0 = Flambda2_terms__Code0
module Flambda2_terms__Code_metadata = Flambda2_terms__Code_metadata
module Flambda2_terms__Code_or_metadata = Flambda2_terms__Code_or_metadata
module Flambda2_terms__Code_size = Flambda2_terms__Code_size
module Flambda2_terms__Coeffects = Flambda2_terms__Coeffects
module Flambda2_terms__Cost_metrics = Flambda2_terms__Cost_metrics
module Flambda2_terms__Effects = Flambda2_terms__Effects
module Flambda2_terms__Effects_and_coeffects = Flambda2_terms__Effects_and_coeffects
module Flambda2_terms__Exn_continuation = Flambda2_terms__Exn_continuation
module Flambda2_terms__Expr_std = Flambda2_terms__Expr_std
module Flambda2_terms__Flambda = Flambda2_terms__Flambda
module Flambda2_terms__Flambda_primitive = Flambda2_terms__Flambda_primitive
module Flambda2_terms__Flambda_unit = Flambda2_terms__Flambda_unit
module Flambda2_terms__Function_decl_inlining_decision_type = Flambda2_terms__Function_decl_inlining_decision_type
module Flambda2_terms__Function_declarations = Flambda2_terms__Function_declarations
module Flambda2_terms__Inline_attribute = Flambda2_terms__Inline_attribute
module Flambda2_terms__Inlined_attribute = Flambda2_terms__Inlined_attribute
module Flambda2_terms__Inlining_arguments = Flambda2_terms__Inlining_arguments
module Flambda2_terms__Inlining_history = Flambda2_terms__Inlining_history
module Flambda2_terms__Inlining_state = Flambda2_terms__Inlining_state
module Flambda2_terms__Loopify_attribute = Flambda2_terms__Loopify_attribute
module Flambda2_terms__Mutability = Flambda2_terms__Mutability
module Flambda2_terms__Placement = Flambda2_terms__Placement
module Flambda2_terms__Poll_attribute = Flambda2_terms__Poll_attribute
module Flambda2_terms__Probe = Flambda2_terms__Probe
module Flambda2_terms__Recursive = Flambda2_terms__Recursive
module Flambda2_terms__Regalloc_attribute = Flambda2_terms__Regalloc_attribute
module Flambda2_terms__Regalloc_param_attribute = Flambda2_terms__Regalloc_param_attribute
module Flambda2_terms__Removed_operations = Flambda2_terms__Removed_operations
module Flambda2_terms__Result_types = Flambda2_terms__Result_types
module Flambda2_terms__Set_of_closures = Flambda2_terms__Set_of_closures
module Flambda2_terms__Static_const = Flambda2_terms__Static_const
module Flambda2_terms__Switch_expr = Flambda2_terms__Switch_expr
module Flambda2_terms__Trap_action = Flambda2_terms__Trap_action
module Flambda2_terms__Validity = Flambda2_terms__Validity
module Flambda2_terms__Zero_alloc_attribute = Flambda2_terms__Zero_alloc_attribute
module Flambda2_to_cmm = Flambda2_to_cmm
module Flambda2_to_cmm__To_cmm = Flambda2_to_cmm__To_cmm
module Flambda2_to_cmm__To_cmm_effects = Flambda2_to_cmm__To_cmm_effects
module Flambda2_to_cmm__To_cmm_env = Flambda2_to_cmm__To_cmm_env
module Flambda2_to_cmm__To_cmm_expr = Flambda2_to_cmm__To_cmm_expr
module Flambda2_to_cmm__To_cmm_primitive = Flambda2_to_cmm__To_cmm_primitive
module Flambda2_to_cmm__To_cmm_result = Flambda2_to_cmm__To_cmm_result
module Flambda2_to_cmm__To_cmm_set_of_closures = Flambda2_to_cmm__To_cmm_set_of_closures
module Flambda2_to_cmm__To_cmm_shared = Flambda2_to_cmm__To_cmm_shared
module Flambda2_to_cmm__To_cmm_static = Flambda2_to_cmm__To_cmm_static
module Flambda2_types = Flambda2_types
module Flambda2_types__ = Flambda2_types__
module Flambda2_types__Aliases = Flambda2_types__Aliases
module Flambda2_types__Binding_time = Flambda2_types__Binding_time
module Flambda2_types__Cached_level = Flambda2_types__Cached_level
module Flambda2_types__Code_age_relation = Flambda2_types__Code_age_relation
module Flambda2_types__Equal_types_for_debug = Flambda2_types__Equal_types_for_debug
module Flambda2_types__Expand_head = Flambda2_types__Expand_head
module Flambda2_types__Join_env = Flambda2_types__Join_env
module Flambda2_types__Join_levels = Flambda2_types__Join_levels
module Flambda2_types__Join_levels_old = Flambda2_types__Join_levels_old
module Flambda2_types__Meet = Flambda2_types__Meet
module Flambda2_types__Meet_and_join = Flambda2_types__Meet_and_join
module Flambda2_types__Meet_and_n_way_join = Flambda2_types__Meet_and_n_way_join
module Flambda2_types__Meet_env = Flambda2_types__Meet_env
module Flambda2_types__More_type_creators = Flambda2_types__More_type_creators
module Flambda2_types__Provers = Flambda2_types__Provers
module Flambda2_types__Reify = Flambda2_types__Reify
module Flambda2_types__Set_of_closures_contents = Flambda2_types__Set_of_closures_contents
module Flambda2_types__Traversals = Flambda2_types__Traversals
module Flambda2_types__Type_descr = Flambda2_types__Type_descr
module Flambda2_types__Type_grammar = Flambda2_types__Type_grammar
module Flambda2_types__Typing_env = Flambda2_types__Typing_env
module Flambda2_types__Typing_env_extension = Flambda2_types__Typing_env_extension
module Flambda2_types__Typing_env_level = Flambda2_types__Typing_env_level
module Flambda2_types__With_cached_free_names = Flambda2_types__With_cached_free_names
module Flambda2_ui = Flambda2_ui
module Flambda2_ui__Flambda_colours = Flambda2_ui__Flambda_colours
module Flambda2_ui__Flambda_features = Flambda2_ui__Flambda_features
module Form_rewrite_plan = Form_rewrite_plan
module Gc_timings = Gc_timings
module Generic_fns = Generic_fns
module Igot = Igot
module Inlined_frame_ranges = Inlined_frame_ranges
module InstructionId = InstructionId
module Internal_assembler = Internal_assembler
module Iplt = Iplt
module Is_parameter = Is_parameter
module Label = Label
module Linear = Linear
module Linear_format = Linear_format
module Linear_utils = Linear_utils
module Linkenv = Linkenv
module Linker_script = Linker_script
module Llvm_ir = Llvm_ir
module Llvmize = Llvmize
module Location_tracker_formatter = Location_tracker_formatter
module Measure_object_files = Measure_object_files
module Operation = Operation
module Optcomp_intf = Optcomp_intf
module Optcompile = Optcompile
module Opterrors = Opterrors
module Optlibrarian = Optlibrarian
module Optlink = Optlink
module Optmaindriver = Optmaindriver
module Optpackager = Optpackager
module Oxcaml_args = Oxcaml_args
module Oxcaml_flags = Oxcaml_flags
module Oxcaml_utils = Oxcaml_utils
module Oxcaml_utils__Doubly_linked_list = Oxcaml_utils__Doubly_linked_list
module Oxcaml_utils__File_sections = Oxcaml_utils__File_sections
module Oxcaml_utils__Lru = Oxcaml_utils__Lru
module Partial_link = Partial_link
module Partition = Partition
module Partition_object_files = Partition_object_files
module Peephole_optimize = Peephole_optimize
module Peephole_rules = Peephole_rules
module Peephole_utils = Peephole_utils
module Printast_with_mappings = Printast_with_mappings
module Printcmm = Printcmm
module Printlinear = Printlinear
module Printoperation = Printoperation
module Printreg = Printreg
module Probe_emission = Probe_emission
module Proc = Proc
module Reg = Reg
module Reg_availability_set = Reg_availability_set
module Reg_class = Reg_class
module Reg_class_utils = Reg_class_utils
module Reg_with_debug_info = Reg_with_debug_info
module Regalloc_affinity = Regalloc_affinity
module Regalloc_gi = Regalloc_gi
module Regalloc_gi_state = Regalloc_gi_state
module Regalloc_gi_utils = Regalloc_gi_utils
module Regalloc_invariants = Regalloc_invariants
module Regalloc_irc = Regalloc_irc
module Regalloc_irc_state = Regalloc_irc_state
module Regalloc_irc_utils = Regalloc_irc_utils
module Regalloc_ls = Regalloc_ls
module Regalloc_ls_state = Regalloc_ls_state
module Regalloc_ls_utils = Regalloc_ls_utils
module Regalloc_rewrite = Regalloc_rewrite
module Regalloc_split = Regalloc_split
module Regalloc_split_state = Regalloc_split_state
module Regalloc_split_utils = Regalloc_split_utils
module Regalloc_stack_operands = Regalloc_stack_operands
module Regalloc_stack_slots = Regalloc_stack_slots
module Regalloc_substitution = Regalloc_substitution
module Regalloc_utils = Regalloc_utils
module Regalloc_validate = Regalloc_validate
module Relocation_entry = Relocation_entry
module Relocation_table = Relocation_table
module Rewrite_sections = Rewrite_sections
module Section_table = Section_table
module Select_utils = Select_utils
module Simd = Simd
module Simd_proc = Simd_proc
module Simd_selection = Simd_selection
module Simplify_terminator = Simplify_terminator
module Stack_check = Stack_check
module Stack_class = Stack_class
module Stack_class_utils = Stack_class_utils
module Stack_reg_offset = Stack_reg_offset
module String_table = String_table
module Sub_cfg = Sub_cfg
module Symbol_entry = Symbol_entry
module Symbol_table = Symbol_table
module Vectorize = Vectorize
module Vectorize_specific = Vectorize_specific
module Vectorize_utils = Vectorize_utils
module X86_ast_utils = X86_ast_utils
module X86_binary_emitter = X86_binary_emitter
module X86_dsl = X86_dsl
module X86_gas = X86_gas
module X86_masm = X86_masm
module X86_proc = X86_proc
module Zero_alloc_checker = Zero_alloc_checker
module Zero_alloc_info = Zero_alloc_info