Skip to content

First set of command-line flags for Flambda 2 #98

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 2 commits into from
Jul 23, 2021

Conversation

mshinwell
Copy link
Collaborator

This wires through some of the command-line flags for Flambda 2. It only deals with the ones that, in the old Flambda 2 dev branch, were in the Clflags.Flambda submodule (now called Clflags.Flambda2).

In due course we should try to refactor the driver so that the middle ends can add their own command-line flags, rather than having to touch the upstream subtree as here.

@mshinwell mshinwell added the flambda2 Prerequisite for, or part of, flambda2 label Jul 22, 2021
@mshinwell mshinwell force-pushed the flambda2-new-clflags branch 2 times, most recently from 197316e to dc7991e Compare July 22, 2021 17:29
@xclerc
Copy link
Contributor

xclerc commented Jul 23, 2021

Most comments (those about "default" values [1]) can very well be
ignored, in particular if the default is likely to change.

I was also wondering whether Compenv should be updated,
but that certainly sounds like a chore.

[1] The only comment not (only) about "default" is #98 (review)

@mshinwell
Copy link
Collaborator Author

All comments addressed, with defaults now indicated.

We should bring Compenv into sync, but that can wait a while. The most important options (e.g. -O2) are already there.

@mshinwell
Copy link
Collaborator Author

I've noticed some of the help texts are rather long, I will make a subsequent feature to break the lines.

@mshinwell mshinwell merged commit a3a87bc into ocaml-flambda:main Jul 23, 2021
mshinwell added a commit to mshinwell/flambda-backend that referenced this pull request Aug 4, 2021
poechsel pushed a commit to poechsel/flambda-backend that referenced this pull request Sep 3, 2021
stedolan added a commit to stedolan/flambda-backend that referenced this pull request Nov 11, 2021
5ff04aa1b Merge flambda-backend changes
1a8a32fd4 junk
3620c58 flambda-backend: Four small inliner fixes (ocaml-flambda#379)
2d165d2 flambda-backend: Regenerate ocaml/configure
3838b56 flambda-backend: Bump Menhir to version 20210419 (ocaml-flambda#362)
43c14d6 flambda-backend: Re-enable -flambda2-join-points (ocaml-flambda#374)
5cd2520 flambda-backend: Disable inlining of recursive functions by default (ocaml-flambda#372)
e98b277 flambda-backend: Import #10736 (stack limit increases) (ocaml-flambda#373)
82c8086 flambda-backend: Use hooks for type tree and parse tree (ocaml-flambda#363)
33bbc93 flambda-backend: Fix parsecmm.mly in ocaml subdirectory (ocaml-flambda#357)
9650034 flambda-backend: Right-to-left evaluation of arguments of String.get and friends (ocaml-flambda#354)
f7d3775 flambda-backend: Revert "Magic numbers" (ocaml-flambda#360)
0bd2fa6 flambda-backend: Add [@inline ready] attribute and remove [@inline hint] (not [@inlined hint]) (ocaml-flambda#351)
cee74af flambda-backend: Ensure that functions are evaluated after their arguments (ocaml-flambda#353)
954be59 flambda-backend: Bootstrap
dd5c299 flambda-backend: Change prefix of all magic numbers to avoid clashes with upstream.
c2b1355 flambda-backend: Fix wrong shift generation in Cmm_helpers (ocaml-flambda#347)
739243b flambda-backend: Add flambda_oclassic attribute (ocaml-flambda#348)
dc9b7fd flambda-backend: Only speculate during inlining if argument types have useful information (ocaml-flambda#343)
aa190ec flambda-backend: Backport fix from PR#10719 (ocaml-flambda#342)
c53a574 flambda-backend: Reduce max inlining depths at -O2 and -O3 (ocaml-flambda#334)
a2493dc flambda-backend: Tweak error messages in Compenv.
1c7b580 flambda-backend: Change Name_abstraction to use a parameterized type (ocaml-flambda#326)
07e0918 flambda-backend: Save cfg to file (ocaml-flambda#257)
9427a8d flambda-backend: Make inlining parameters more aggressive (ocaml-flambda#332)
fe0610f flambda-backend: Do not cache young_limit in a processor register (upstream PR 9876) (ocaml-flambda#315)
56f28b8 flambda-backend: Fix an overflow bug in major GC work computation (ocaml-flambda#310)
8e43a49 flambda-backend: Cmm invariants (port upstream PR 1400) (ocaml-flambda#258)
e901f16 flambda-backend: Add attributes effects and coeffects (ocaml-flambda#18)
aaa1cdb flambda-backend: Expose Flambda 2 flags via OCAMLPARAM (ocaml-flambda#304)
62db54f flambda-backend: Fix freshening substitutions
57231d2 flambda-backend: Evaluate signature substitutions lazily (upstream PR 10599) (ocaml-flambda#280)
a1a07de flambda-backend: Keep Sys.opaque_identity in Cmm and Mach (port upstream PR 9412) (ocaml-flambda#238)
faaf149 flambda-backend: Rename Un_cps -> To_cmm (ocaml-flambda#261)
ecb0201 flambda-backend: Add "-dcfg" flag to ocamlopt (ocaml-flambda#254)
32ec58a flambda-backend: Bypass Simplify (ocaml-flambda#162)
bd4ce4a flambda-backend: Revert "Semaphore without probes: dummy notes (ocaml-flambda#142)" (ocaml-flambda#242)
c98530f flambda-backend: Semaphore without probes: dummy notes (ocaml-flambda#142)
c9b6a04 flambda-backend: Remove hack for .depend from runtime/dune  (ocaml-flambda#170)
6e5d4cf flambda-backend: Build and install Semaphore (ocaml-flambda#183)
924eb60 flambda-backend: Special constructor for %sys_argv primitive (ocaml-flambda#166)
2ac6334 flambda-backend: Build ocamldoc (ocaml-flambda#157)
c6f7267 flambda-backend: Add -mbranches-within-32B to major_gc.c compilation (where supported)
a99fdee flambda-backend: Merge pull request ocaml#10195 from stedolan/mark-prefetching
bd72dcb flambda-backend: Prefetching optimisations for sweeping (ocaml#9934)
27fed7e flambda-backend: Add missing index param for Obj.field (ocaml-flambda#145)
cd48b2f flambda-backend: Fix camlinternalOO at -O3 with Flambda 2 (ocaml-flambda#132)
9d85430 flambda-backend: Fix testsuite execution (ocaml-flambda#125)
ac964ca flambda-backend: Comment out `[@inlined]` annotation. (ocaml-flambda#136)
ad4afce flambda-backend: Fix magic numbers (test suite) (ocaml-flambda#135)
9b033c7 flambda-backend: Disable the comparison of bytecode programs (`ocamltest`) (ocaml-flambda#128)
e650abd flambda-backend: Import flambda2 changes (`Asmpackager`) (ocaml-flambda#127)
14dcc38 flambda-backend: Fix error with Record_unboxed (bug in block kind patch) (ocaml-flambda#119)
2d35761 flambda-backend: Resurrect [@inline never] annotations in camlinternalMod (ocaml-flambda#121)
f5985ad flambda-backend: Magic numbers for cmx and cmxa files (ocaml-flambda#118)
0e8b9f0 flambda-backend: Extend conditions to include flambda2 (ocaml-flambda#115)
99870c8 flambda-backend: Fix Translobj assertions for Flambda 2 (ocaml-flambda#112)
5106317 flambda-backend: Minor fix for "lazy" compilation in Matching with Flambda 2 (ocaml-flambda#110)
dba922b flambda-backend: Oclassic/O2/O3 etc (ocaml-flambda#104)
f88af3e flambda-backend: Wire in the remaining Flambda 2 flags (ocaml-flambda#103)
678d647 flambda-backend: Wire in the Flambda 2 inlining flags (ocaml-flambda#100)
1a8febb flambda-backend: Formatting of help text for some Flambda 2 options (ocaml-flambda#101)
9ae1c7a flambda-backend: First set of command-line flags for Flambda 2 (ocaml-flambda#98)
bc0bc5e flambda-backend: Add config variables flambda_backend, flambda2 and probes (ocaml-flambda#99)
efb8304 flambda-backend: Build our own ocamlobjinfo from tools/objinfo/ at the root (ocaml-flambda#95)
d2cfaca flambda-backend: Add mutability annotations to Pfield etc. (ocaml-flambda#88)
5532555 flambda-backend: Lambda block kinds (ocaml-flambda#86)
0c597ba flambda-backend: Revert VERSION, etc. back to 4.12.0 (mostly reverts 822d0a0 from upstream 4.12) (ocaml-flambda#93)
037c3d0 flambda-backend: Float blocks
7a9d190 flambda-backend: Allow --enable-middle-end=flambda2 etc (ocaml-flambda#89)
9057474 flambda-backend: Root scanning fixes for Flambda 2 (ocaml-flambda#87)
08e02a3 flambda-backend: Ensure that Lifthenelse has a boolean-valued condition (ocaml-flambda#63)
77214b7 flambda-backend: Obj changes for Flambda 2 (ocaml-flambda#71)
ecfdd72 flambda-backend: Cherry-pick 9432cfd (ocaml-flambda#84)
d1a4396 flambda-backend: Add a `returns` field to `Cmm.Cextcall` (ocaml-flambda#74)
575dff5 flambda-backend: CMM traps (ocaml-flambda#72)
8a87272 flambda-backend: Remove Obj.set_tag and Obj.truncate (ocaml-flambda#73)
d9017ae flambda-backend: Merge pull request ocaml-flambda#80 from mshinwell/fb-backport-pr10205
3a4824e flambda-backend: Backport PR#10205 from upstream: Avoid overwriting closures while initialising recursive modules
f31890e flambda-backend: Install missing headers of ocaml/runtime/caml (ocaml-flambda#77)
83516f8 flambda-backend: Apply node created for probe should not be annotated as tailcall (ocaml-flambda#76)
bc430cb flambda-backend: Add Clflags.is_flambda2 (ocaml-flambda#62)
ed87247 flambda-backend: Preallocation of blocks in Translmod for value let rec w/ flambda2 (ocaml-flambda#59)
a4b04d5 flambda-backend: inline never on Gc.create_alarm (ocaml-flambda#56)
cef0bb6 flambda-backend: Config.flambda2 (ocaml-flambda#58)
ff0e4f7 flambda-backend: Pun labelled arguments with type constraint in function applications (ocaml-flambda#53)
d72c5fb flambda-backend: Remove Cmm.memory_chunk.Double_u (ocaml-flambda#42)
9d34d99 flambda-backend: Install missing artifacts
10146f2 flambda-backend: Add ocamlcfg (ocaml-flambda#34)
819d38a flambda-backend: Use OC_CFLAGS, OC_CPPFLAGS, and SHAREDLIB_CFLAGS for foreign libs (ocaml-flambda#30)
f98b564 flambda-backend: Pass -function-sections iff supported. (ocaml-flambda#29)
e0eef5e flambda-backend: Bootstrap (ocaml-flambda#11 part 2)
17374b4 flambda-backend: Add [@@Builtin] attribute to Primitives (ocaml-flambda#11 part 1)
85127ad flambda-backend: Add builtin, effects and coeffects fields to Cextcall (ocaml-flambda#12)
b670bcf flambda-backend: Replace tuple with record in Cextcall (ocaml-flambda#10)
db451b5 flambda-backend: Speedups in Asmlink (ocaml-flambda#8)
2fe489d flambda-backend: Cherry-pick upstream PR#10184 from upstream, dynlink invariant removal (rev 3dc3cd7 upstream)
d364bfa flambda-backend: Local patch against upstream: enable function sections in the Dune build
886b800 flambda-backend: Local patch against upstream: remove Raw_spacetime_lib (does not build with -m32)
1a7db7c flambda-backend: Local patch against upstream: make dune ignore ocamldoc/ directory
e411dd3 flambda-backend: Local patch against upstream: remove ocaml/testsuite/tests/tool-caml-tex/
1016d03 flambda-backend: Local patch against upstream: remove ocaml/dune-project and ocaml/ocaml-variants.opam
93785e3 flambda-backend: To upstream: export-dynamic for otherlibs/dynlink/ via the natdynlinkops files (still needs .gitignore + way of generating these files)
63db8c1 flambda-backend: To upstream: stop using -O3 in otherlibs/Makefile.otherlibs.common
eb2f1ed flambda-backend: To upstream: stop using -O3 for dynlink/
6682f8d flambda-backend: To upstream: use flambda_o3 attribute instead of -O3 in the Makefile for systhreads/
de197df flambda-backend: To upstream: renamed ocamltest_unix.xxx files for dune
bf3773d flambda-backend: To upstream: dune build fixes (depends on previous to-upstream patches)
6fbc80e flambda-backend: To upstream: refactor otherlibs/dynlink/, removing byte/ and native/
71a03ef flambda-backend: To upstream: fix to Ocaml_modifiers in ocamltest
686d6e3 flambda-backend: To upstream: fix dependency problem with Instruct
c311155 flambda-backend: To upstream: remove threadUnix
52e6e78 flambda-backend: To upstream: stabilise filenames used in backtraces: stdlib/, otherlibs/systhreads/, toplevel/toploop.ml
7d08e0e flambda-backend: To upstream: use flambda_o3 attribute in stdlib
403b82e flambda-backend: To upstream: flambda_o3 attribute support (includes bootstrap)
65032b1 flambda-backend: To upstream: use nolabels attribute instead of -nolabels for otherlibs/unix/
f533fad flambda-backend: To upstream: remove Compflags, add attributes, etc.
49fc1b5 flambda-backend: To upstream: Add attributes and bootstrap compiler
a4b9e0d flambda-backend: Already upstreamed: stdlib capitalisation patch
4c1c259 flambda-backend: ocaml#9748 from xclerc/share-ev_defname (cherry-pick 3e937fcb562)
00027c4 flambda-backend: permanent/default-to-best-fit (cherry-pick 64240fd716a9d0db57d779ebe5b6f1a67704cdec)
2561dd9 flambda-backend: permanent/reraise-by-default (cherry-pick 50e94902ca6bb84c33982db858b74322eefd9af8)
c0aa4f4 flambda-backend: permanent/gc-tuning (cherry-pick e9d6d2f145438dd6a82b56e9b41c8a01e752d81d)

git-subtree-dir: ocaml
git-subtree-split: 5ff04aa1b5f40bf1de19a10717bff62ee8d75ec1
stedolan added a commit to stedolan/flambda-backend that referenced this pull request Jan 18, 2022
23a7f73 flambda-backend: Fix some Debuginfo.t scopes in the frontend (ocaml-flambda#248)
33a04a6 flambda-backend: Attempt to shrink the heap before calling the assembler (ocaml-flambda#429)
8a36a16 flambda-backend: Fix to allow stage 2 builds in Flambda 2 -Oclassic mode (ocaml-flambda#442)
d828db6 flambda-backend: Rename -no-extensions flag to -disable-all-extensions (ocaml-flambda#425)
68c39d5 flambda-backend: Fix mistake with extension records (ocaml-flambda#423)
423f312 flambda-backend: Refactor -extension and -standard flags (ocaml-flambda#398)
585e023 flambda-backend: Improved simplification of array operations (ocaml-flambda#384)
faec6b1 flambda-backend: Typos (ocaml-flambda#407)
8914940 flambda-backend: Ensure allocations are initialised, even dead ones (ocaml-flambda#405)
6b58001 flambda-backend: Move compiler flag -dcfg out of ocaml/ subdirectory (ocaml-flambda#400)
4fd57cf flambda-backend: Use ghost loc for extension to avoid expressions with overlapping locations (ocaml-flambda#399)
8d993c5 flambda-backend: Let's fix instead of reverting flambda_backend_args (ocaml-flambda#396)
d29b133 flambda-backend: Revert "Move flambda-backend specific flags out of ocaml/ subdirectory (ocaml-flambda#382)" (ocaml-flambda#395)
d0cda93 flambda-backend: Revert ocaml-flambda#373 (ocaml-flambda#393)
1c6eee1 flambda-backend: Fix "make check_all_arches" in ocaml/ subdirectory (ocaml-flambda#388)
a7960dd flambda-backend: Move flambda-backend specific flags out of ocaml/ subdirectory (ocaml-flambda#382)
bf7b1a8 flambda-backend: List and Array Comprehensions (ocaml-flambda#147)
f2547de flambda-backend: Compile more stdlib files with -O3 (ocaml-flambda#380)
3620c58 flambda-backend: Four small inliner fixes (ocaml-flambda#379)
2d165d2 flambda-backend: Regenerate ocaml/configure
3838b56 flambda-backend: Bump Menhir to version 20210419 (ocaml-flambda#362)
43c14d6 flambda-backend: Re-enable -flambda2-join-points (ocaml-flambda#374)
5cd2520 flambda-backend: Disable inlining of recursive functions by default (ocaml-flambda#372)
e98b277 flambda-backend: Import #10736 (stack limit increases) (ocaml-flambda#373)
82c8086 flambda-backend: Use hooks for type tree and parse tree (ocaml-flambda#363)
33bbc93 flambda-backend: Fix parsecmm.mly in ocaml subdirectory (ocaml-flambda#357)
9650034 flambda-backend: Right-to-left evaluation of arguments of String.get and friends (ocaml-flambda#354)
f7d3775 flambda-backend: Revert "Magic numbers" (ocaml-flambda#360)
0bd2fa6 flambda-backend: Add [@inline ready] attribute and remove [@inline hint] (not [@inlined hint]) (ocaml-flambda#351)
cee74af flambda-backend: Ensure that functions are evaluated after their arguments (ocaml-flambda#353)
954be59 flambda-backend: Bootstrap
dd5c299 flambda-backend: Change prefix of all magic numbers to avoid clashes with upstream.
c2b1355 flambda-backend: Fix wrong shift generation in Cmm_helpers (ocaml-flambda#347)
739243b flambda-backend: Add flambda_oclassic attribute (ocaml-flambda#348)
dc9b7fd flambda-backend: Only speculate during inlining if argument types have useful information (ocaml-flambda#343)
aa190ec flambda-backend: Backport fix from PR#10719 (ocaml-flambda#342)
c53a574 flambda-backend: Reduce max inlining depths at -O2 and -O3 (ocaml-flambda#334)
a2493dc flambda-backend: Tweak error messages in Compenv.
1c7b580 flambda-backend: Change Name_abstraction to use a parameterized type (ocaml-flambda#326)
07e0918 flambda-backend: Save cfg to file (ocaml-flambda#257)
9427a8d flambda-backend: Make inlining parameters more aggressive (ocaml-flambda#332)
fe0610f flambda-backend: Do not cache young_limit in a processor register (upstream PR 9876) (ocaml-flambda#315)
56f28b8 flambda-backend: Fix an overflow bug in major GC work computation (ocaml-flambda#310)
8e43a49 flambda-backend: Cmm invariants (port upstream PR 1400) (ocaml-flambda#258)
e901f16 flambda-backend: Add attributes effects and coeffects (ocaml-flambda#18)
aaa1cdb flambda-backend: Expose Flambda 2 flags via OCAMLPARAM (ocaml-flambda#304)
62db54f flambda-backend: Fix freshening substitutions
57231d2 flambda-backend: Evaluate signature substitutions lazily (upstream PR 10599) (ocaml-flambda#280)
a1a07de flambda-backend: Keep Sys.opaque_identity in Cmm and Mach (port upstream PR 9412) (ocaml-flambda#238)
faaf149 flambda-backend: Rename Un_cps -> To_cmm (ocaml-flambda#261)
ecb0201 flambda-backend: Add "-dcfg" flag to ocamlopt (ocaml-flambda#254)
32ec58a flambda-backend: Bypass Simplify (ocaml-flambda#162)
bd4ce4a flambda-backend: Revert "Semaphore without probes: dummy notes (ocaml-flambda#142)" (ocaml-flambda#242)
c98530f flambda-backend: Semaphore without probes: dummy notes (ocaml-flambda#142)
c9b6a04 flambda-backend: Remove hack for .depend from runtime/dune  (ocaml-flambda#170)
6e5d4cf flambda-backend: Build and install Semaphore (ocaml-flambda#183)
924eb60 flambda-backend: Special constructor for %sys_argv primitive (ocaml-flambda#166)
2ac6334 flambda-backend: Build ocamldoc (ocaml-flambda#157)
c6f7267 flambda-backend: Add -mbranches-within-32B to major_gc.c compilation (where supported)
a99fdee flambda-backend: Merge pull request ocaml#10195 from stedolan/mark-prefetching
bd72dcb flambda-backend: Prefetching optimisations for sweeping (ocaml#9934)
27fed7e flambda-backend: Add missing index param for Obj.field (ocaml-flambda#145)
cd48b2f flambda-backend: Fix camlinternalOO at -O3 with Flambda 2 (ocaml-flambda#132)
9d85430 flambda-backend: Fix testsuite execution (ocaml-flambda#125)
ac964ca flambda-backend: Comment out `[@inlined]` annotation. (ocaml-flambda#136)
ad4afce flambda-backend: Fix magic numbers (test suite) (ocaml-flambda#135)
9b033c7 flambda-backend: Disable the comparison of bytecode programs (`ocamltest`) (ocaml-flambda#128)
e650abd flambda-backend: Import flambda2 changes (`Asmpackager`) (ocaml-flambda#127)
14dcc38 flambda-backend: Fix error with Record_unboxed (bug in block kind patch) (ocaml-flambda#119)
2d35761 flambda-backend: Resurrect [@inline never] annotations in camlinternalMod (ocaml-flambda#121)
f5985ad flambda-backend: Magic numbers for cmx and cmxa files (ocaml-flambda#118)
0e8b9f0 flambda-backend: Extend conditions to include flambda2 (ocaml-flambda#115)
99870c8 flambda-backend: Fix Translobj assertions for Flambda 2 (ocaml-flambda#112)
5106317 flambda-backend: Minor fix for "lazy" compilation in Matching with Flambda 2 (ocaml-flambda#110)
dba922b flambda-backend: Oclassic/O2/O3 etc (ocaml-flambda#104)
f88af3e flambda-backend: Wire in the remaining Flambda 2 flags (ocaml-flambda#103)
678d647 flambda-backend: Wire in the Flambda 2 inlining flags (ocaml-flambda#100)
1a8febb flambda-backend: Formatting of help text for some Flambda 2 options (ocaml-flambda#101)
9ae1c7a flambda-backend: First set of command-line flags for Flambda 2 (ocaml-flambda#98)
bc0bc5e flambda-backend: Add config variables flambda_backend, flambda2 and probes (ocaml-flambda#99)
efb8304 flambda-backend: Build our own ocamlobjinfo from tools/objinfo/ at the root (ocaml-flambda#95)
d2cfaca flambda-backend: Add mutability annotations to Pfield etc. (ocaml-flambda#88)
5532555 flambda-backend: Lambda block kinds (ocaml-flambda#86)
0c597ba flambda-backend: Revert VERSION, etc. back to 4.12.0 (mostly reverts 822d0a0 from upstream 4.12) (ocaml-flambda#93)
037c3d0 flambda-backend: Float blocks
7a9d190 flambda-backend: Allow --enable-middle-end=flambda2 etc (ocaml-flambda#89)
9057474 flambda-backend: Root scanning fixes for Flambda 2 (ocaml-flambda#87)
08e02a3 flambda-backend: Ensure that Lifthenelse has a boolean-valued condition (ocaml-flambda#63)
77214b7 flambda-backend: Obj changes for Flambda 2 (ocaml-flambda#71)
ecfdd72 flambda-backend: Cherry-pick 9432cfd (ocaml-flambda#84)
d1a4396 flambda-backend: Add a `returns` field to `Cmm.Cextcall` (ocaml-flambda#74)
575dff5 flambda-backend: CMM traps (ocaml-flambda#72)
8a87272 flambda-backend: Remove Obj.set_tag and Obj.truncate (ocaml-flambda#73)
d9017ae flambda-backend: Merge pull request ocaml-flambda#80 from mshinwell/fb-backport-pr10205
3a4824e flambda-backend: Backport PR#10205 from upstream: Avoid overwriting closures while initialising recursive modules
f31890e flambda-backend: Install missing headers of ocaml/runtime/caml (ocaml-flambda#77)
83516f8 flambda-backend: Apply node created for probe should not be annotated as tailcall (ocaml-flambda#76)
bc430cb flambda-backend: Add Clflags.is_flambda2 (ocaml-flambda#62)
ed87247 flambda-backend: Preallocation of blocks in Translmod for value let rec w/ flambda2 (ocaml-flambda#59)
a4b04d5 flambda-backend: inline never on Gc.create_alarm (ocaml-flambda#56)
cef0bb6 flambda-backend: Config.flambda2 (ocaml-flambda#58)
ff0e4f7 flambda-backend: Pun labelled arguments with type constraint in function applications (ocaml-flambda#53)
d72c5fb flambda-backend: Remove Cmm.memory_chunk.Double_u (ocaml-flambda#42)
9d34d99 flambda-backend: Install missing artifacts
10146f2 flambda-backend: Add ocamlcfg (ocaml-flambda#34)
819d38a flambda-backend: Use OC_CFLAGS, OC_CPPFLAGS, and SHAREDLIB_CFLAGS for foreign libs (ocaml-flambda#30)
f98b564 flambda-backend: Pass -function-sections iff supported. (ocaml-flambda#29)
e0eef5e flambda-backend: Bootstrap (ocaml-flambda#11 part 2)
17374b4 flambda-backend: Add [@@Builtin] attribute to Primitives (ocaml-flambda#11 part 1)
85127ad flambda-backend: Add builtin, effects and coeffects fields to Cextcall (ocaml-flambda#12)
b670bcf flambda-backend: Replace tuple with record in Cextcall (ocaml-flambda#10)
db451b5 flambda-backend: Speedups in Asmlink (ocaml-flambda#8)
2fe489d flambda-backend: Cherry-pick upstream PR#10184 from upstream, dynlink invariant removal (rev 3dc3cd7 upstream)
d364bfa flambda-backend: Local patch against upstream: enable function sections in the Dune build
886b800 flambda-backend: Local patch against upstream: remove Raw_spacetime_lib (does not build with -m32)
1a7db7c flambda-backend: Local patch against upstream: make dune ignore ocamldoc/ directory
e411dd3 flambda-backend: Local patch against upstream: remove ocaml/testsuite/tests/tool-caml-tex/
1016d03 flambda-backend: Local patch against upstream: remove ocaml/dune-project and ocaml/ocaml-variants.opam
93785e3 flambda-backend: To upstream: export-dynamic for otherlibs/dynlink/ via the natdynlinkops files (still needs .gitignore + way of generating these files)
63db8c1 flambda-backend: To upstream: stop using -O3 in otherlibs/Makefile.otherlibs.common
eb2f1ed flambda-backend: To upstream: stop using -O3 for dynlink/
6682f8d flambda-backend: To upstream: use flambda_o3 attribute instead of -O3 in the Makefile for systhreads/
de197df flambda-backend: To upstream: renamed ocamltest_unix.xxx files for dune
bf3773d flambda-backend: To upstream: dune build fixes (depends on previous to-upstream patches)
6fbc80e flambda-backend: To upstream: refactor otherlibs/dynlink/, removing byte/ and native/
71a03ef flambda-backend: To upstream: fix to Ocaml_modifiers in ocamltest
686d6e3 flambda-backend: To upstream: fix dependency problem with Instruct
c311155 flambda-backend: To upstream: remove threadUnix
52e6e78 flambda-backend: To upstream: stabilise filenames used in backtraces: stdlib/, otherlibs/systhreads/, toplevel/toploop.ml
7d08e0e flambda-backend: To upstream: use flambda_o3 attribute in stdlib
403b82e flambda-backend: To upstream: flambda_o3 attribute support (includes bootstrap)
65032b1 flambda-backend: To upstream: use nolabels attribute instead of -nolabels for otherlibs/unix/
f533fad flambda-backend: To upstream: remove Compflags, add attributes, etc.
49fc1b5 flambda-backend: To upstream: Add attributes and bootstrap compiler
a4b9e0d flambda-backend: Already upstreamed: stdlib capitalisation patch
4c1c259 flambda-backend: ocaml#9748 from xclerc/share-ev_defname (cherry-pick 3e937fcb562)
00027c4 flambda-backend: permanent/default-to-best-fit (cherry-pick 64240fd716a9d0db57d779ebe5b6f1a67704cdec)
2561dd9 flambda-backend: permanent/reraise-by-default (cherry-pick 50e94902ca6bb84c33982db858b74322eefd9af8)
c0aa4f4 flambda-backend: permanent/gc-tuning (cherry-pick e9d6d2f145438dd6a82b56e9b41c8a01e752d81d)

git-subtree-dir: ocaml
git-subtree-split: 23a7f73
stedolan added a commit that referenced this pull request Jan 25, 2022
23a7f73 flambda-backend: Fix some Debuginfo.t scopes in the frontend (#248)
33a04a6 flambda-backend: Attempt to shrink the heap before calling the assembler (#429)
8a36a16 flambda-backend: Fix to allow stage 2 builds in Flambda 2 -Oclassic mode (#442)
d828db6 flambda-backend: Rename -no-extensions flag to -disable-all-extensions (#425)
68c39d5 flambda-backend: Fix mistake with extension records (#423)
423f312 flambda-backend: Refactor -extension and -standard flags (#398)
585e023 flambda-backend: Improved simplification of array operations (#384)
faec6b1 flambda-backend: Typos (#407)
8914940 flambda-backend: Ensure allocations are initialised, even dead ones (#405)
6b58001 flambda-backend: Move compiler flag -dcfg out of ocaml/ subdirectory (#400)
4fd57cf flambda-backend: Use ghost loc for extension to avoid expressions with overlapping locations (#399)
8d993c5 flambda-backend: Let's fix instead of reverting flambda_backend_args (#396)
d29b133 flambda-backend: Revert "Move flambda-backend specific flags out of ocaml/ subdirectory (#382)" (#395)
d0cda93 flambda-backend: Revert #373 (#393)
1c6eee1 flambda-backend: Fix "make check_all_arches" in ocaml/ subdirectory (#388)
a7960dd flambda-backend: Move flambda-backend specific flags out of ocaml/ subdirectory (#382)
bf7b1a8 flambda-backend: List and Array Comprehensions (#147)
f2547de flambda-backend: Compile more stdlib files with -O3 (#380)
3620c58 flambda-backend: Four small inliner fixes (#379)
2d165d2 flambda-backend: Regenerate ocaml/configure
3838b56 flambda-backend: Bump Menhir to version 20210419 (#362)
43c14d6 flambda-backend: Re-enable -flambda2-join-points (#374)
5cd2520 flambda-backend: Disable inlining of recursive functions by default (#372)
e98b277 flambda-backend: Import #10736 (stack limit increases) (#373)
82c8086 flambda-backend: Use hooks for type tree and parse tree (#363)
33bbc93 flambda-backend: Fix parsecmm.mly in ocaml subdirectory (#357)
9650034 flambda-backend: Right-to-left evaluation of arguments of String.get and friends (#354)
f7d3775 flambda-backend: Revert "Magic numbers" (#360)
0bd2fa6 flambda-backend: Add [@inline ready] attribute and remove [@inline hint] (not [@inlined hint]) (#351)
cee74af flambda-backend: Ensure that functions are evaluated after their arguments (#353)
954be59 flambda-backend: Bootstrap
dd5c299 flambda-backend: Change prefix of all magic numbers to avoid clashes with upstream.
c2b1355 flambda-backend: Fix wrong shift generation in Cmm_helpers (#347)
739243b flambda-backend: Add flambda_oclassic attribute (#348)
dc9b7fd flambda-backend: Only speculate during inlining if argument types have useful information (#343)
aa190ec flambda-backend: Backport fix from PR#10719 (#342)
c53a574 flambda-backend: Reduce max inlining depths at -O2 and -O3 (#334)
a2493dc flambda-backend: Tweak error messages in Compenv.
1c7b580 flambda-backend: Change Name_abstraction to use a parameterized type (#326)
07e0918 flambda-backend: Save cfg to file (#257)
9427a8d flambda-backend: Make inlining parameters more aggressive (#332)
fe0610f flambda-backend: Do not cache young_limit in a processor register (upstream PR 9876) (#315)
56f28b8 flambda-backend: Fix an overflow bug in major GC work computation (#310)
8e43a49 flambda-backend: Cmm invariants (port upstream PR 1400) (#258)
e901f16 flambda-backend: Add attributes effects and coeffects (#18)
aaa1cdb flambda-backend: Expose Flambda 2 flags via OCAMLPARAM (#304)
62db54f flambda-backend: Fix freshening substitutions
57231d2 flambda-backend: Evaluate signature substitutions lazily (upstream PR 10599) (#280)
a1a07de flambda-backend: Keep Sys.opaque_identity in Cmm and Mach (port upstream PR 9412) (#238)
faaf149 flambda-backend: Rename Un_cps -> To_cmm (#261)
ecb0201 flambda-backend: Add "-dcfg" flag to ocamlopt (#254)
32ec58a flambda-backend: Bypass Simplify (#162)
bd4ce4a flambda-backend: Revert "Semaphore without probes: dummy notes (#142)" (#242)
c98530f flambda-backend: Semaphore without probes: dummy notes (#142)
c9b6a04 flambda-backend: Remove hack for .depend from runtime/dune  (#170)
6e5d4cf flambda-backend: Build and install Semaphore (#183)
924eb60 flambda-backend: Special constructor for %sys_argv primitive (#166)
2ac6334 flambda-backend: Build ocamldoc (#157)
c6f7267 flambda-backend: Add -mbranches-within-32B to major_gc.c compilation (where supported)
a99fdee flambda-backend: Merge pull request ocaml#10195 from stedolan/mark-prefetching
bd72dcb flambda-backend: Prefetching optimisations for sweeping (ocaml#9934)
27fed7e flambda-backend: Add missing index param for Obj.field (#145)
cd48b2f flambda-backend: Fix camlinternalOO at -O3 with Flambda 2 (#132)
9d85430 flambda-backend: Fix testsuite execution (#125)
ac964ca flambda-backend: Comment out `[@inlined]` annotation. (#136)
ad4afce flambda-backend: Fix magic numbers (test suite) (#135)
9b033c7 flambda-backend: Disable the comparison of bytecode programs (`ocamltest`) (#128)
e650abd flambda-backend: Import flambda2 changes (`Asmpackager`) (#127)
14dcc38 flambda-backend: Fix error with Record_unboxed (bug in block kind patch) (#119)
2d35761 flambda-backend: Resurrect [@inline never] annotations in camlinternalMod (#121)
f5985ad flambda-backend: Magic numbers for cmx and cmxa files (#118)
0e8b9f0 flambda-backend: Extend conditions to include flambda2 (#115)
99870c8 flambda-backend: Fix Translobj assertions for Flambda 2 (#112)
5106317 flambda-backend: Minor fix for "lazy" compilation in Matching with Flambda 2 (#110)
dba922b flambda-backend: Oclassic/O2/O3 etc (#104)
f88af3e flambda-backend: Wire in the remaining Flambda 2 flags (#103)
678d647 flambda-backend: Wire in the Flambda 2 inlining flags (#100)
1a8febb flambda-backend: Formatting of help text for some Flambda 2 options (#101)
9ae1c7a flambda-backend: First set of command-line flags for Flambda 2 (#98)
bc0bc5e flambda-backend: Add config variables flambda_backend, flambda2 and probes (#99)
efb8304 flambda-backend: Build our own ocamlobjinfo from tools/objinfo/ at the root (#95)
d2cfaca flambda-backend: Add mutability annotations to Pfield etc. (#88)
5532555 flambda-backend: Lambda block kinds (#86)
0c597ba flambda-backend: Revert VERSION, etc. back to 4.12.0 (mostly reverts 822d0a0 from upstream 4.12) (#93)
037c3d0 flambda-backend: Float blocks
7a9d190 flambda-backend: Allow --enable-middle-end=flambda2 etc (#89)
9057474 flambda-backend: Root scanning fixes for Flambda 2 (#87)
08e02a3 flambda-backend: Ensure that Lifthenelse has a boolean-valued condition (#63)
77214b7 flambda-backend: Obj changes for Flambda 2 (#71)
ecfdd72 flambda-backend: Cherry-pick 9432cfd (#84)
d1a4396 flambda-backend: Add a `returns` field to `Cmm.Cextcall` (#74)
575dff5 flambda-backend: CMM traps (#72)
8a87272 flambda-backend: Remove Obj.set_tag and Obj.truncate (#73)
d9017ae flambda-backend: Merge pull request #80 from mshinwell/fb-backport-pr10205
3a4824e flambda-backend: Backport PR#10205 from upstream: Avoid overwriting closures while initialising recursive modules
f31890e flambda-backend: Install missing headers of ocaml/runtime/caml (#77)
83516f8 flambda-backend: Apply node created for probe should not be annotated as tailcall (#76)
bc430cb flambda-backend: Add Clflags.is_flambda2 (#62)
ed87247 flambda-backend: Preallocation of blocks in Translmod for value let rec w/ flambda2 (#59)
a4b04d5 flambda-backend: inline never on Gc.create_alarm (#56)
cef0bb6 flambda-backend: Config.flambda2 (#58)
ff0e4f7 flambda-backend: Pun labelled arguments with type constraint in function applications (#53)
d72c5fb flambda-backend: Remove Cmm.memory_chunk.Double_u (#42)
9d34d99 flambda-backend: Install missing artifacts
10146f2 flambda-backend: Add ocamlcfg (#34)
819d38a flambda-backend: Use OC_CFLAGS, OC_CPPFLAGS, and SHAREDLIB_CFLAGS for foreign libs (#30)
f98b564 flambda-backend: Pass -function-sections iff supported. (#29)
e0eef5e flambda-backend: Bootstrap (#11 part 2)
17374b4 flambda-backend: Add [@@Builtin] attribute to Primitives (#11 part 1)
85127ad flambda-backend: Add builtin, effects and coeffects fields to Cextcall (#12)
b670bcf flambda-backend: Replace tuple with record in Cextcall (#10)
db451b5 flambda-backend: Speedups in Asmlink (#8)
2fe489d flambda-backend: Cherry-pick upstream PR#10184 from upstream, dynlink invariant removal (rev 3dc3cd7 upstream)
d364bfa flambda-backend: Local patch against upstream: enable function sections in the Dune build
886b800 flambda-backend: Local patch against upstream: remove Raw_spacetime_lib (does not build with -m32)
1a7db7c flambda-backend: Local patch against upstream: make dune ignore ocamldoc/ directory
e411dd3 flambda-backend: Local patch against upstream: remove ocaml/testsuite/tests/tool-caml-tex/
1016d03 flambda-backend: Local patch against upstream: remove ocaml/dune-project and ocaml/ocaml-variants.opam
93785e3 flambda-backend: To upstream: export-dynamic for otherlibs/dynlink/ via the natdynlinkops files (still needs .gitignore + way of generating these files)
63db8c1 flambda-backend: To upstream: stop using -O3 in otherlibs/Makefile.otherlibs.common
eb2f1ed flambda-backend: To upstream: stop using -O3 for dynlink/
6682f8d flambda-backend: To upstream: use flambda_o3 attribute instead of -O3 in the Makefile for systhreads/
de197df flambda-backend: To upstream: renamed ocamltest_unix.xxx files for dune
bf3773d flambda-backend: To upstream: dune build fixes (depends on previous to-upstream patches)
6fbc80e flambda-backend: To upstream: refactor otherlibs/dynlink/, removing byte/ and native/
71a03ef flambda-backend: To upstream: fix to Ocaml_modifiers in ocamltest
686d6e3 flambda-backend: To upstream: fix dependency problem with Instruct
c311155 flambda-backend: To upstream: remove threadUnix
52e6e78 flambda-backend: To upstream: stabilise filenames used in backtraces: stdlib/, otherlibs/systhreads/, toplevel/toploop.ml
7d08e0e flambda-backend: To upstream: use flambda_o3 attribute in stdlib
403b82e flambda-backend: To upstream: flambda_o3 attribute support (includes bootstrap)
65032b1 flambda-backend: To upstream: use nolabels attribute instead of -nolabels for otherlibs/unix/
f533fad flambda-backend: To upstream: remove Compflags, add attributes, etc.
49fc1b5 flambda-backend: To upstream: Add attributes and bootstrap compiler
a4b9e0d flambda-backend: Already upstreamed: stdlib capitalisation patch
4c1c259 flambda-backend: ocaml#9748 from xclerc/share-ev_defname (cherry-pick 3e937fcb562)
00027c4 flambda-backend: permanent/default-to-best-fit (cherry-pick 64240fd716a9d0db57d779ebe5b6f1a67704cdec)
2561dd9 flambda-backend: permanent/reraise-by-default (cherry-pick 50e94902ca6bb84c33982db858b74322eefd9af8)
c0aa4f4 flambda-backend: permanent/gc-tuning (cherry-pick e9d6d2f145438dd6a82b56e9b41c8a01e752d81d)

git-subtree-dir: ocaml
git-subtree-split: 23a7f73
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
flambda2 Prerequisite for, or part of, flambda2
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants