Skip to content

Commit a7d005a

Browse files
rleshchinskiyRoman Leshchinskiy
and
Roman Leshchinskiy
authored
flambda-backend: Lazy deserialization of cmi files (#1322)
* Lazy deserialization of cmi files * Preserve legacy API in cmi_format * make depend * bootstrap --------- Co-authored-by: Roman Leshchinskiy <rleshchinskiy@janestreet.com>
1 parent aa83fa3 commit a7d005a

File tree

18 files changed

+209
-100
lines changed

18 files changed

+209
-100
lines changed

.depend

+53-49
Original file line numberDiff line numberDiff line change
@@ -422,6 +422,7 @@ parsing/docstrings.cmi : \
422422
parsing/location.cmi
423423
parsing/extensions.cmo : \
424424
parsing/parsetree.cmi \
425+
parsing/longident.cmi \
425426
parsing/location.cmi \
426427
utils/language_extension.cmi \
427428
parsing/extensions_parsing.cmi \
@@ -430,6 +431,7 @@ parsing/extensions.cmo : \
430431
parsing/extensions.cmi
431432
parsing/extensions.cmx : \
432433
parsing/parsetree.cmi \
434+
parsing/longident.cmx \
433435
parsing/location.cmx \
434436
utils/language_extension.cmx \
435437
parsing/extensions_parsing.cmx \
@@ -438,6 +440,7 @@ parsing/extensions.cmx : \
438440
parsing/extensions.cmi
439441
parsing/extensions.cmi : \
440442
parsing/parsetree.cmi \
443+
parsing/longident.cmi \
441444
parsing/location.cmi \
442445
parsing/asttypes.cmi
443446
parsing/extensions_parsing.cmo : \
@@ -619,9 +622,9 @@ typing/btype.cmi : \
619622
typing/path.cmi \
620623
parsing/asttypes.cmi
621624
typing/cmt2annot.cmo : \
622-
typing/types.cmi \
623625
typing/typedtree.cmi \
624626
typing/tast_iterator.cmi \
627+
typing/subst.cmi \
625628
typing/stypes.cmi \
626629
typing/path.cmi \
627630
typing/oprint.cmi \
@@ -630,13 +633,12 @@ typing/cmt2annot.cmo : \
630633
typing/envaux.cmi \
631634
typing/env.cmi \
632635
file_formats/cmt_format.cmi \
633-
file_formats/cms_format.cmi \
634636
parsing/asttypes.cmi \
635637
typing/annot.cmi
636638
typing/cmt2annot.cmx : \
637-
typing/types.cmx \
638639
typing/typedtree.cmx \
639640
typing/tast_iterator.cmx \
641+
typing/subst.cmx \
640642
typing/stypes.cmx \
641643
typing/path.cmx \
642644
typing/oprint.cmx \
@@ -645,7 +647,6 @@ typing/cmt2annot.cmx : \
645647
typing/envaux.cmx \
646648
typing/env.cmx \
647649
file_formats/cmt_format.cmx \
648-
file_formats/cms_format.cmx \
649650
parsing/asttypes.cmi \
650651
typing/annot.cmi
651652
typing/ctype.cmo : \
@@ -725,6 +726,7 @@ typing/env.cmo : \
725726
typing/predef.cmi \
726727
typing/persistent_env.cmi \
727728
typing/path.cmi \
729+
parsing/parsetree.cmi \
728730
utils/misc.cmi \
729731
parsing/longident.cmi \
730732
parsing/location.cmi \
@@ -748,6 +750,7 @@ typing/env.cmx : \
748750
typing/predef.cmx \
749751
typing/persistent_env.cmx \
750752
typing/path.cmx \
753+
parsing/parsetree.cmi \
751754
utils/misc.cmx \
752755
parsing/longident.cmx \
753756
parsing/location.cmx \
@@ -769,6 +772,7 @@ typing/env.cmi : \
769772
typing/subst.cmi \
770773
typing/shape.cmi \
771774
typing/path.cmi \
775+
parsing/parsetree.cmi \
772776
utils/misc.cmi \
773777
parsing/longident.cmi \
774778
parsing/location.cmi \
@@ -912,7 +916,6 @@ typing/includemod.cmo : \
912916
utils/diffing.cmi \
913917
typing/ctype.cmi \
914918
file_formats/cmt_format.cmi \
915-
file_formats/cms_format.cmi \
916919
parsing/builtin_attributes.cmi \
917920
typing/btype.cmi \
918921
typing/includemod.cmi
@@ -936,7 +939,6 @@ typing/includemod.cmx : \
936939
utils/diffing.cmx \
937940
typing/ctype.cmx \
938941
file_formats/cmt_format.cmx \
939-
file_formats/cms_format.cmx \
940942
parsing/builtin_attributes.cmx \
941943
typing/btype.cmx \
942944
typing/includemod.cmi
@@ -1151,7 +1153,7 @@ typing/persistent_env.cmx : \
11511153
utils/clflags.cmx \
11521154
typing/persistent_env.cmi
11531155
typing/persistent_env.cmi : \
1154-
typing/types.cmi \
1156+
typing/subst.cmi \
11551157
utils/misc.cmi \
11561158
parsing/location.cmi \
11571159
utils/lazy_backtrack.cmi \
@@ -1403,7 +1405,6 @@ typing/subst.cmx : \
14031405
typing/subst.cmi : \
14041406
typing/types.cmi \
14051407
typing/path.cmi \
1406-
parsing/parsetree.cmi \
14071408
parsing/location.cmi \
14081409
typing/ident.cmi
14091410
typing/tast_iterator.cmo : \
@@ -1464,7 +1465,6 @@ typing/typeclass.cmo : \
14641465
typing/env.cmi \
14651466
typing/ctype.cmi \
14661467
file_formats/cmt_format.cmi \
1467-
file_formats/cms_format.cmi \
14681468
utils/clflags.cmi \
14691469
parsing/builtin_attributes.cmi \
14701470
typing/btype.cmi \
@@ -1493,7 +1493,6 @@ typing/typeclass.cmx : \
14931493
typing/env.cmx \
14941494
typing/ctype.cmx \
14951495
file_formats/cmt_format.cmx \
1496-
file_formats/cms_format.cmx \
14971496
utils/clflags.cmx \
14981497
parsing/builtin_attributes.cmx \
14991498
typing/btype.cmx \
@@ -1540,7 +1539,6 @@ typing/typecore.cmo : \
15401539
typing/env.cmi \
15411540
typing/ctype.cmi \
15421541
file_formats/cmt_format.cmi \
1543-
file_formats/cms_format.cmi \
15441542
utils/clflags.cmi \
15451543
parsing/builtin_attributes.cmi \
15461544
typing/btype.cmi \
@@ -1576,7 +1574,6 @@ typing/typecore.cmx : \
15761574
typing/env.cmx \
15771575
typing/ctype.cmx \
15781576
file_formats/cmt_format.cmx \
1579-
file_formats/cms_format.cmx \
15801577
utils/clflags.cmx \
15811578
parsing/builtin_attributes.cmx \
15821579
typing/btype.cmx \
@@ -1799,6 +1796,7 @@ typing/typemod.cmo : \
17991796
typing/subst.cmi \
18001797
typing/signature_group.cmi \
18011798
typing/shape.cmi \
1799+
utils/profile.cmi \
18021800
typing/printtyp.cmi \
18031801
typing/path.cmi \
18041802
parsing/parsetree.cmi \
@@ -1819,8 +1817,8 @@ typing/typemod.cmo : \
18191817
utils/config.cmi \
18201818
utils/compilation_unit.cmi \
18211819
file_formats/cmt_format.cmi \
1822-
file_formats/cms_format.cmi \
18231820
typing/cmt2annot.cmo \
1821+
file_formats/cms_format.cmi \
18241822
file_formats/cmi_format.cmi \
18251823
utils/clflags.cmi \
18261824
parsing/builtin_attributes.cmi \
@@ -1839,6 +1837,7 @@ typing/typemod.cmx : \
18391837
typing/subst.cmx \
18401838
typing/signature_group.cmx \
18411839
typing/shape.cmx \
1840+
utils/profile.cmx \
18421841
typing/printtyp.cmx \
18431842
typing/path.cmx \
18441843
parsing/parsetree.cmi \
@@ -1859,8 +1858,8 @@ typing/typemod.cmx : \
18591858
utils/config.cmx \
18601859
utils/compilation_unit.cmx \
18611860
file_formats/cmt_format.cmx \
1862-
file_formats/cms_format.cmx \
18631861
typing/cmt2annot.cmx \
1862+
file_formats/cms_format.cmx \
18641863
file_formats/cmi_format.cmx \
18651864
utils/clflags.cmx \
18661865
parsing/builtin_attributes.cmx \
@@ -3640,6 +3639,7 @@ lambda/lambda.cmo : \
36403639
typing/path.cmi \
36413640
utils/misc.cmi \
36423641
parsing/longident.cmi \
3642+
parsing/location.cmi \
36433643
typing/ident.cmi \
36443644
typing/env.cmi \
36453645
lambda/debuginfo.cmi \
@@ -3654,6 +3654,7 @@ lambda/lambda.cmx : \
36543654
typing/path.cmx \
36553655
utils/misc.cmx \
36563656
parsing/longident.cmx \
3657+
parsing/location.cmx \
36573658
typing/ident.cmx \
36583659
typing/env.cmx \
36593660
lambda/debuginfo.cmx \
@@ -3664,8 +3665,10 @@ lambda/lambda.cmx : \
36643665
lambda/lambda.cmi
36653666
lambda/lambda.cmi : \
36663667
typing/types.cmi \
3668+
typing/subst.cmi \
36673669
typing/primitive.cmi \
36683670
typing/path.cmi \
3671+
parsing/location.cmi \
36693672
typing/ident.cmi \
36703673
typing/env.cmi \
36713674
lambda/debuginfo.cmi \
@@ -3876,7 +3879,9 @@ lambda/translattribute.cmo : \
38763879
parsing/location.cmi \
38773880
lambda/lambda.cmi \
38783881
utils/config.cmi \
3882+
utils/clflags.cmi \
38793883
parsing/builtin_attributes.cmi \
3884+
parsing/asttypes.cmi \
38803885
lambda/translattribute.cmi
38813886
lambda/translattribute.cmx : \
38823887
utils/warnings.cmx \
@@ -3887,7 +3892,9 @@ lambda/translattribute.cmx : \
38873892
parsing/location.cmx \
38883893
lambda/lambda.cmx \
38893894
utils/config.cmx \
3895+
utils/clflags.cmx \
38903896
parsing/builtin_attributes.cmx \
3897+
parsing/asttypes.cmi \
38913898
lambda/translattribute.cmi
38923899
lambda/translattribute.cmi : \
38933900
typing/typedtree.cmi \
@@ -4157,6 +4164,7 @@ lambda/translprim.cmi : \
41574164
utils/compilation_unit.cmi
41584165
file_formats/cmi_format.cmo : \
41594166
typing/types.cmi \
4167+
typing/subst.cmi \
41604168
utils/misc.cmi \
41614169
parsing/location.cmi \
41624170
utils/import_info.cmi \
@@ -4165,14 +4173,15 @@ file_formats/cmi_format.cmo : \
41654173
file_formats/cmi_format.cmi
41664174
file_formats/cmi_format.cmx : \
41674175
typing/types.cmx \
4176+
typing/subst.cmx \
41684177
utils/misc.cmx \
41694178
parsing/location.cmx \
41704179
utils/import_info.cmx \
41714180
utils/config.cmx \
41724181
utils/compilation_unit.cmx \
41734182
file_formats/cmi_format.cmi
41744183
file_formats/cmi_format.cmi : \
4175-
typing/types.cmi \
4184+
typing/subst.cmi \
41764185
utils/misc.cmi \
41774186
utils/import_info.cmi \
41784187
utils/compilation_unit.cmi
@@ -4181,23 +4190,34 @@ file_formats/cmo_format.cmi : \
41814190
utils/import_info.cmi \
41824191
typing/ident.cmi \
41834192
utils/compilation_unit.cmi
4184-
file_formats/cmt_format.cmo : \
4185-
typing/types.cmi \
4186-
typing/typedtree.cmi \
4187-
typing/tast_mapper.cmi \
4193+
file_formats/cms_format.cmo : \
41884194
typing/shape.cmi \
4195+
parsing/parsetree.cmi \
41894196
utils/misc.cmi \
41904197
parsing/location.cmi \
4191-
utils/load_path.cmi \
41924198
parsing/lexer.cmi \
4193-
utils/import_info.cmi \
41944199
typing/env.cmi \
41954200
utils/config.cmi \
41964201
utils/compilation_unit.cmi \
4197-
file_formats/cmi_format.cmi \
41984202
utils/clflags.cmi \
4199-
file_formats/cmt_format.cmi
4200-
file_formats/cms_format.cmo : \
4203+
file_formats/cms_format.cmi
4204+
file_formats/cms_format.cmx : \
4205+
typing/shape.cmx \
4206+
parsing/parsetree.cmi \
4207+
utils/misc.cmx \
4208+
parsing/location.cmx \
4209+
parsing/lexer.cmx \
4210+
typing/env.cmx \
4211+
utils/config.cmx \
4212+
utils/compilation_unit.cmx \
4213+
utils/clflags.cmx \
4214+
file_formats/cms_format.cmi
4215+
file_formats/cms_format.cmi : \
4216+
typing/shape.cmi \
4217+
parsing/parsetree.cmi \
4218+
parsing/location.cmi \
4219+
utils/compilation_unit.cmi
4220+
file_formats/cmt_format.cmo : \
42014221
typing/types.cmi \
42024222
typing/typedtree.cmi \
42034223
typing/tast_mapper.cmi \
@@ -4212,7 +4232,7 @@ file_formats/cms_format.cmo : \
42124232
utils/compilation_unit.cmi \
42134233
file_formats/cmi_format.cmi \
42144234
utils/clflags.cmi \
4215-
file_formats/cms_format.cmi
4235+
file_formats/cmt_format.cmi
42164236
file_formats/cmt_format.cmx : \
42174237
typing/types.cmx \
42184238
typing/typedtree.cmx \
@@ -4229,22 +4249,6 @@ file_formats/cmt_format.cmx : \
42294249
file_formats/cmi_format.cmx \
42304250
utils/clflags.cmx \
42314251
file_formats/cmt_format.cmi
4232-
file_formats/cms_format.cmx : \
4233-
typing/types.cmx \
4234-
typing/typedtree.cmx \
4235-
typing/tast_mapper.cmx \
4236-
typing/shape.cmx \
4237-
utils/misc.cmx \
4238-
parsing/location.cmx \
4239-
utils/load_path.cmx \
4240-
parsing/lexer.cmx \
4241-
utils/import_info.cmx \
4242-
typing/env.cmx \
4243-
utils/config.cmx \
4244-
utils/compilation_unit.cmx \
4245-
file_formats/cmi_format.cmx \
4246-
utils/clflags.cmx \
4247-
file_formats/cms_format.cmi
42484252
file_formats/cmt_format.cmi : \
42494253
typing/types.cmi \
42504254
typing/typedtree.cmi \
@@ -4254,14 +4258,6 @@ file_formats/cmt_format.cmi : \
42544258
typing/env.cmi \
42554259
utils/compilation_unit.cmi \
42564260
file_formats/cmi_format.cmi
4257-
file_formats/cms_format.cmi : \
4258-
typing/types.cmi \
4259-
typing/typedtree.cmi \
4260-
typing/shape.cmi \
4261-
parsing/location.cmi \
4262-
typing/env.cmi \
4263-
utils/compilation_unit.cmi \
4264-
file_formats/cmi_format.cmi
42654261
file_formats/cmx_format.cmi : \
42664262
lambda/lambda.cmi \
42674263
utils/import_info.cmi \
@@ -4963,6 +4959,8 @@ middle_end/flambda/flambda_to_clambda.cmo : \
49634959
middle_end/flambda/base_types/static_exception.cmi \
49644960
middle_end/flambda/simple_value_approx.cmi \
49654961
middle_end/flambda/base_types/set_of_closures_id.cmi \
4962+
lambda/printlambda.cmi \
4963+
middle_end/printclambda.cmi \
49664964
typing/primitive.cmi \
49674965
middle_end/flambda/parameter.cmi \
49684966
utils/numbers.cmi \
@@ -4995,6 +4993,8 @@ middle_end/flambda/flambda_to_clambda.cmx : \
49954993
middle_end/flambda/base_types/static_exception.cmx \
49964994
middle_end/flambda/simple_value_approx.cmx \
49974995
middle_end/flambda/base_types/set_of_closures_id.cmx \
4996+
lambda/printlambda.cmx \
4997+
middle_end/printclambda.cmx \
49984998
typing/primitive.cmx \
49994999
middle_end/flambda/parameter.cmx \
50005000
utils/numbers.cmx \
@@ -6463,6 +6463,7 @@ driver/makedepend.cmo : \
64636463
utils/misc.cmi \
64646464
parsing/location.cmi \
64656465
parsing/lexer.cmi \
6466+
utils/language_extension.cmi \
64666467
parsing/depend.cmi \
64676468
utils/config.cmi \
64686469
driver/compenv.cmi \
@@ -6476,6 +6477,7 @@ driver/makedepend.cmx : \
64766477
utils/misc.cmx \
64776478
parsing/location.cmx \
64786479
parsing/lexer.cmx \
6480+
utils/language_extension.cmx \
64796481
parsing/depend.cmx \
64806482
utils/config.cmx \
64816483
driver/compenv.cmx \
@@ -6730,6 +6732,7 @@ toplevel/topdirs.cmo : \
67306732
typing/types.cmi \
67316733
toplevel/toploop.cmi \
67326734
toplevel/topeval.cmi \
6735+
typing/subst.cmi \
67336736
typing/printtyp.cmi \
67346737
typing/predef.cmi \
67356738
typing/path.cmi \
@@ -6754,6 +6757,7 @@ toplevel/topdirs.cmx : \
67546757
typing/types.cmx \
67556758
toplevel/toploop.cmx \
67566759
toplevel/topeval.cmi \
6760+
typing/subst.cmx \
67576761
typing/printtyp.cmx \
67586762
typing/predef.cmx \
67596763
typing/path.cmx \

boot/ocamlc

5.3 KB
Binary file not shown.

boot/ocamllex

0 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)