Skip to content

Commit 337d4a0

Browse files
authored
flambda-backend: Parse zero_alloc attributes into the typed tree (#2400)
Check for [@zero_alloc] earlier, record it in the typed tree
1 parent dd9c221 commit 337d4a0

36 files changed

+1038
-1559
lines changed

.depend

Lines changed: 25 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -400,6 +400,7 @@ parsing/attr_helper.cmi : \
400400
parsing/location.cmi \
401401
parsing/asttypes.cmi
402402
parsing/builtin_attributes.cmo : \
403+
utils/zero_alloc_utils.cmi \
403404
utils/warnings.cmi \
404405
parsing/parsetree.cmi \
405406
utils/misc.cmi \
@@ -412,6 +413,7 @@ parsing/builtin_attributes.cmo : \
412413
parsing/ast_helper.cmi \
413414
parsing/builtin_attributes.cmi
414415
parsing/builtin_attributes.cmx : \
416+
utils/zero_alloc_utils.cmx \
415417
utils/warnings.cmx \
416418
parsing/parsetree.cmi \
417419
utils/misc.cmx \
@@ -424,6 +426,7 @@ parsing/builtin_attributes.cmx : \
424426
parsing/ast_helper.cmx \
425427
parsing/builtin_attributes.cmi
426428
parsing/builtin_attributes.cmi : \
429+
utils/zero_alloc_utils.cmi \
427430
parsing/parsetree.cmi \
428431
utils/misc.cmi \
429432
parsing/location.cmi
@@ -1452,6 +1455,7 @@ typing/printtyp.cmi : \
14521455
typing/env.cmi \
14531456
parsing/asttypes.cmi
14541457
typing/printtyped.cmo : \
1458+
utils/zero_alloc_utils.cmi \
14551459
typing/types.cmi \
14561460
typing/typedtree.cmi \
14571461
parsing/printast.cmi \
@@ -1468,6 +1472,7 @@ typing/printtyped.cmo : \
14681472
parsing/asttypes.cmi \
14691473
typing/printtyped.cmi
14701474
typing/printtyped.cmx : \
1475+
utils/zero_alloc_utils.cmx \
14711476
typing/types.cmx \
14721477
typing/typedtree.cmx \
14731478
parsing/printast.cmx \
@@ -1731,6 +1736,7 @@ typing/typeclass.cmi : \
17311736
typing/ctype.cmi \
17321737
parsing/asttypes.cmi
17331738
typing/typecore.cmo : \
1739+
utils/zero_alloc_utils.cmi \
17341740
utils/warnings.cmi \
17351741
typing/untypeast.cmi \
17361742
typing/uniqueness_analysis.cmi \
@@ -1773,6 +1779,7 @@ typing/typecore.cmo : \
17731779
parsing/ast_helper.cmi \
17741780
typing/typecore.cmi
17751781
typing/typecore.cmx : \
1782+
utils/zero_alloc_utils.cmx \
17761783
utils/warnings.cmx \
17771784
typing/untypeast.cmx \
17781785
typing/uniqueness_analysis.cmx \
@@ -1994,6 +2001,7 @@ typing/typedecl_variance.cmi : \
19942001
typing/env.cmi \
19952002
parsing/asttypes.cmi
19962003
typing/typedtree.cmo : \
2004+
utils/zero_alloc_utils.cmi \
19972005
typing/types.cmi \
19982006
typing/shape.cmi \
19992007
typing/primitive.cmi \
@@ -2007,9 +2015,11 @@ typing/typedtree.cmo : \
20072015
parsing/jane_asttypes.cmi \
20082016
typing/ident.cmi \
20092017
typing/env.cmi \
2018+
parsing/builtin_attributes.cmi \
20102019
parsing/asttypes.cmi \
20112020
typing/typedtree.cmi
20122021
typing/typedtree.cmx : \
2022+
utils/zero_alloc_utils.cmx \
20132023
typing/types.cmx \
20142024
typing/shape.cmx \
20152025
typing/primitive.cmx \
@@ -2023,9 +2033,11 @@ typing/typedtree.cmx : \
20232033
parsing/jane_asttypes.cmx \
20242034
typing/ident.cmx \
20252035
typing/env.cmx \
2036+
parsing/builtin_attributes.cmx \
20262037
parsing/asttypes.cmi \
20272038
typing/typedtree.cmi
20282039
typing/typedtree.cmi : \
2040+
utils/zero_alloc_utils.cmi \
20292041
typing/types.cmi \
20302042
typing/shape.cmi \
20312043
typing/primitive.cmi \
@@ -2039,6 +2051,7 @@ typing/typedtree.cmi : \
20392051
parsing/jane_asttypes.cmi \
20402052
typing/ident.cmi \
20412053
typing/env.cmi \
2054+
parsing/builtin_attributes.cmi \
20422055
parsing/asttypes.cmi
20432056
typing/typemod.cmo : \
20442057
utils/warnings.cmi \
@@ -3958,36 +3971,28 @@ middle_end/variable.cmi : \
39583971
utils/identifiable.cmi \
39593972
typing/ident.cmi \
39603973
utils/compilation_unit.cmi
3961-
lambda/assume_info.cmo : \
3962-
utils/zero_alloc_utils.cmi \
3963-
lambda/assume_info.cmi
3964-
lambda/assume_info.cmx : \
3965-
utils/zero_alloc_utils.cmx \
3966-
lambda/assume_info.cmi
3967-
lambda/assume_info.cmi : \
3968-
utils/zero_alloc_utils.cmi
39693974
lambda/debuginfo.cmo : \
3975+
utils/zero_alloc_utils.cmi \
39703976
parsing/location.cmi \
39713977
utils/int_replace_polymorphic_compare.cmi \
39723978
typing/ident.cmi \
39733979
utils/compilation_unit.cmi \
39743980
parsing/asttypes.cmi \
3975-
lambda/assume_info.cmi \
39763981
lambda/debuginfo.cmi
39773982
lambda/debuginfo.cmx : \
3983+
utils/zero_alloc_utils.cmx \
39783984
parsing/location.cmx \
39793985
utils/int_replace_polymorphic_compare.cmx \
39803986
typing/ident.cmx \
39813987
utils/compilation_unit.cmx \
39823988
parsing/asttypes.cmi \
3983-
lambda/assume_info.cmx \
39843989
lambda/debuginfo.cmi
39853990
lambda/debuginfo.cmi : \
3991+
utils/zero_alloc_utils.cmi \
39863992
parsing/location.cmi \
39873993
typing/ident.cmi \
39883994
utils/compilation_unit.cmi \
3989-
parsing/asttypes.cmi \
3990-
lambda/assume_info.cmi
3995+
parsing/asttypes.cmi
39913996
lambda/lambda.cmo : \
39923997
typing/types.cmi \
39933998
typing/typedtree.cmi \
@@ -4003,6 +4008,7 @@ lambda/lambda.cmo : \
40034008
utils/config.cmi \
40044009
utils/compilation_unit.cmi \
40054010
utils/clflags.cmi \
4011+
parsing/builtin_attributes.cmi \
40064012
parsing/asttypes.cmi \
40074013
lambda/lambda.cmi
40084014
lambda/lambda.cmx : \
@@ -4020,6 +4026,7 @@ lambda/lambda.cmx : \
40204026
utils/config.cmx \
40214027
utils/compilation_unit.cmx \
40224028
utils/clflags.cmx \
4029+
parsing/builtin_attributes.cmx \
40234030
parsing/asttypes.cmi \
40244031
lambda/lambda.cmi
40254032
lambda/lambda.cmi : \
@@ -4034,6 +4041,7 @@ lambda/lambda.cmi : \
40344041
typing/env.cmi \
40354042
lambda/debuginfo.cmi \
40364043
utils/compilation_unit.cmi \
4044+
parsing/builtin_attributes.cmi \
40374045
parsing/asttypes.cmi
40384046
lambda/matching.cmo : \
40394047
typing/types.cmi \
@@ -4249,36 +4257,25 @@ lambda/translattribute.cmo : \
42494257
utils/warnings.cmi \
42504258
typing/typedtree.cmi \
42514259
parsing/parsetree.cmi \
4252-
utils/misc.cmi \
4253-
parsing/longident.cmi \
42544260
parsing/location.cmi \
42554261
lambda/lambda.cmi \
42564262
utils/config.cmi \
4257-
utils/clflags.cmi \
42584263
parsing/builtin_attributes.cmi \
4259-
parsing/asttypes.cmi \
4260-
lambda/assume_info.cmi \
42614264
lambda/translattribute.cmi
42624265
lambda/translattribute.cmx : \
42634266
utils/warnings.cmx \
42644267
typing/typedtree.cmx \
42654268
parsing/parsetree.cmi \
4266-
utils/misc.cmx \
4267-
parsing/longident.cmx \
42684269
parsing/location.cmx \
42694270
lambda/lambda.cmx \
42704271
utils/config.cmx \
4271-
utils/clflags.cmx \
42724272
parsing/builtin_attributes.cmx \
4273-
parsing/asttypes.cmi \
4274-
lambda/assume_info.cmx \
42754273
lambda/translattribute.cmi
42764274
lambda/translattribute.cmi : \
42774275
typing/typedtree.cmi \
42784276
parsing/parsetree.cmi \
42794277
parsing/location.cmi \
4280-
lambda/lambda.cmi \
4281-
lambda/assume_info.cmi
4278+
lambda/lambda.cmi
42824279
lambda/translclass.cmo : \
42834280
typing/types.cmi \
42844281
typing/typeopt.cmi \
@@ -4323,6 +4320,7 @@ lambda/translclass.cmi : \
43234320
lambda/debuginfo.cmi \
43244321
parsing/asttypes.cmi
43254322
lambda/translcore.cmo : \
4323+
utils/zero_alloc_utils.cmi \
43264324
typing/types.cmi \
43274325
typing/typeopt.cmi \
43284326
typing/typedtree.cmi \
@@ -4352,11 +4350,12 @@ lambda/translcore.cmo : \
43524350
typing/ctype.cmi \
43534351
utils/config.cmi \
43544352
utils/clflags.cmi \
4353+
parsing/builtin_attributes.cmi \
43554354
typing/btype.cmi \
43564355
parsing/asttypes.cmi \
4357-
lambda/assume_info.cmi \
43584356
lambda/translcore.cmi
43594357
lambda/translcore.cmx : \
4358+
utils/zero_alloc_utils.cmx \
43604359
typing/types.cmx \
43614360
typing/typeopt.cmx \
43624361
typing/typedtree.cmx \
@@ -4386,9 +4385,9 @@ lambda/translcore.cmx : \
43864385
typing/ctype.cmx \
43874386
utils/config.cmx \
43884387
utils/clflags.cmx \
4388+
parsing/builtin_attributes.cmx \
43894389
typing/btype.cmx \
43904390
parsing/asttypes.cmi \
4391-
lambda/assume_info.cmx \
43924391
lambda/translcore.cmi
43934392
lambda/translcore.cmi : \
43944393
typing/types.cmi \

boot/ocamlc

-2.3 KB
Binary file not shown.

compilerlibs/Makefile.compilerlibs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,6 @@ TYPING = \
125125
typing/typedecl_properties.cmo \
126126
typing/typedecl_variance.cmo \
127127
typing/typedecl_separability.cmo \
128-
lambda/assume_info.cmo \
129128
lambda/debuginfo.cmo lambda/lambda.cmo \
130129
typing/typedecl.cmo \
131130
typing/typeopt.cmo \

dune

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@
9999
annot outcometree
100100

101101
;; lambda/
102-
assume_info debuginfo lambda matching printlambda runtimedef runtimetags tmc simplif switch
102+
debuginfo lambda matching printlambda runtimedef runtimetags tmc simplif switch
103103
translmode
104104
transl_comprehension_utils
105105
transl_array_comprehension transl_list_comprehension
@@ -330,7 +330,6 @@
330330
(annot.mli as compiler-libs/annot.mli)
331331
(outcometree.mli as compiler-libs/outcometree.mli)
332332
(debuginfo.mli as compiler-libs/debuginfo.mli)
333-
(assume_info.mli as compiler-libs/assume_info.mli)
334333
(lambda.mli as compiler-libs/lambda.mli)
335334
(matching.mli as compiler-libs/matching.mli)
336335
(printlambda.mli as compiler-libs/printlambda.mli)

lambda/assume_info.ml

Lines changed: 0 additions & 91 deletions
This file was deleted.

lambda/assume_info.mli

Lines changed: 0 additions & 37 deletions
This file was deleted.

0 commit comments

Comments
 (0)