Skip to content

Import Flambda 2 #90

New issue

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

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

Already on GitHub? Sign in to your account

Merged
merged 15 commits into from
Jul 22, 2021
Merged

Import Flambda 2 #90

merged 15 commits into from
Jul 22, 2021

Conversation

mshinwell
Copy link
Collaborator

This imports the Flambda 2 code from https://github.com/ocaml-flambda/ocaml at revision 068eb9fb992782e8086a42b168aef1bc70d39324 (this is the changeset called "Fexpr support for rec info, coercions (#567)").

This currently depends on some other PRs already submitted to this repo which are cherry-picked here.

The plan is to get this to compile, without wiring it in at the edges, then merge. The parts around the edges can be dealt with subsequently.

@mshinwell mshinwell marked this pull request as draft July 20, 2021 08:34
@mshinwell mshinwell force-pushed the import-flambda2 branch 5 times, most recently from 8254b28 to d55f04f Compare July 21, 2021 15:36
@mshinwell mshinwell marked this pull request as ready for review July 22, 2021 09:48
Copy link
Collaborator

@lpw25 lpw25 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've checked that this just adds new libraries and links two of them into the flambda compiler. Assuming that there are no toplevel side-effects that mess with things this should be safe. Mark assures me that there aren't and I can't face checking 664 files to make sure.

@mshinwell mshinwell merged commit 2eaac08 into oxcaml:4.12 Jul 22, 2021
mshinwell added a commit to mshinwell/oxcaml that referenced this pull request Aug 4, 2021
Import middle_end/flambda2 from ocaml-flambda/ocaml rev 068eb9fb992782e8086a42b168aef1bc70d39324 (Fexpr support for rec info, coercions (oxcaml#567)) squashed with the following fixes (from mshinwell/flambda-backend branch import-flambda2):

* Fix inlining attributes in middle_end/flambda2/compilenv_deps/patricia_tree.ml
* Fix inlining attributes in middle_end/flambda2/naming/name_abstraction.ml
* Update Lambda_conversions to cope with the removal of the size+tag propagation
* dune file fixes for Flambda 2 compilation in the Flambda backend
* Stub out Flambda_features temporarily
* Fixes for Immutable_unique and tag/size removal patch
* is_c_builtin
* probes
* Support for probes and C builtins (as used for intrinisics)
* Removal of Double_u, use Double instead
* Use exhaustive match in close_c_call
* menhir version change in middle_end/flambda2/parser/flambda_parser.ml
* Avoid Location.print_compact
* Avoid Lambda.print_scoped_location
ccasin added a commit to ccasin/flambda-backend that referenced this pull request Jan 2, 2023
6c2b0b30d0 Merge flambda-backend changes
7a86bede3c for test merge
7ab71c613b bootstrap
a4a23dbe37 Layouts version 1
b8946d8930 Make immediacy part of type_kind (backport PR #10041)
724026d2a5 Move type_unboxed.unboxed into type_kind (backport PR #10252)
aa25ab9 Fix version number (oxcaml#94)
d01ffa0 Fix .depend file (oxcaml#93)
942f2ab Bootstrap (oxcaml#92)
05f7e38 Check Menhir version (oxcaml#91)
1569b58 Move the CI jobs from 4.12 to 4.14. (oxcaml#90)

git-subtree-dir: ocaml
git-subtree-split: 6c2b0b30d0819dae3f0a6f68dd5b6a55cbb6a074
poechsel added a commit to poechsel/flambda-backend that referenced this pull request Jan 11, 2023
d78ff6d Make immediate64 things mode cross (oxcaml#97)
aa25ab9 Fix version number (oxcaml#94)
d01ffa0 Fix .depend file (oxcaml#93)
942f2ab Bootstrap (oxcaml#92)
05f7e38 Check Menhir version (oxcaml#91)
1569b58 Move the CI jobs from 4.12 to 4.14. (oxcaml#90)

git-subtree-dir: ocaml
git-subtree-split: d78ff6d
ccasin added a commit to ccasin/flambda-backend that referenced this pull request Jan 30, 2023
aaed145833 Merge flambda-backend changes
12306e8092 script changes for jane
a9268d2 Fix misplaced attribute warning when using external parser (and some cleanup) (oxcaml#101)
2b33f24 Refactor toplevel local escape check (oxcaml#104)
ed2aec6 Comment functions exported from TyVarEnv.
87838ba Move new variable creation into TyVarEnv.
a3f60ab Encapsulate functions that work with tyvars
43d83a6 Prevent possibility of forgetting to re-widen
2f3dd34 Encapsulate context when narrowing type env't
d78ff6d Make immediate64 things mode cross (oxcaml#97)
aa25ab9 Fix version number (oxcaml#94)
d01ffa0 Fix .depend file (oxcaml#93)
942f2ab Bootstrap (oxcaml#92)
05f7e38 Check Menhir version (oxcaml#91)
1569b58 Move the CI jobs from 4.12 to 4.14. (oxcaml#90)

git-subtree-dir: ocaml
git-subtree-split: aaed1458333ac63be3c0523f8ff0c7d64d29dc09
riaqn added a commit to riaqn/flambda-backend that referenced this pull request Feb 23, 2023
c703f5f Incorporate upstream comments into type-variable refactor (oxcaml#121)
362ba23 Constrain curry modes to increase along applications (oxcaml#108)
b1f0cf9 Simplify the extension handling (oxcaml#114)
4fd53a1 Remove pat_mode from typedtree (oxcaml#105)
cf6fcbc Handle attributes on lambdas with locally abstract types (oxcaml#120)
5fa80fe Don't track attributes inside attributes for warning 53 (oxcaml#115)
8a69777 Handle unclosed `[: ... :]` patterns (via `Generic_array` machinery) (oxcaml#117)
b0737f4 Add promote-one Makefile target (oxcaml#118)
c6ad684 Refactoring and fixes around module lookup (oxcaml#107)
b0a6495 Add documentation for global constructor arguments (oxcaml#69)
dd79aec Print `nlocal` in the `-d(raw)lambda` output (oxcaml#112)
8035026 Fix `nlocal` in the generated Lambda for list comprehensions (oxcaml#113)
afbcdf0 Immutable arrays (oxcaml#47)
bfe1490 fix several issues when removing exp_mode (oxcaml#110)
8f46060 Better error message for under-applied functions (oxcaml#74)
27331d8 Consistently use Lmutvar or Lvar in comprehensions (oxcaml#111)
01e965b Skip failing test for now
0131357 Fix test case to use comprehensions_experimental
22a7368 Temporarily disable list comprehensions tests due to locals bug
e08377d Make `comprehensions` into `comprehensions_experimental` for now (oxcaml#109)
947cf89 List and array comprehensions (oxcaml#46)
bd9e051 remove exp_mode from typedtree (oxcaml#100)
a9268d2 Fix misplaced attribute warning when using external parser (and some cleanup) (oxcaml#101)
2b33f24 Refactor toplevel local escape check (oxcaml#104)
ed2aec6 Comment functions exported from TyVarEnv.
87838ba Move new variable creation into TyVarEnv.
a3f60ab Encapsulate functions that work with tyvars
43d83a6 Prevent possibility of forgetting to re-widen
2f3dd34 Encapsulate context when narrowing type env't
d78ff6d Make immediate64 things mode cross (oxcaml#97)
aa25ab9 Fix version number (oxcaml#94)
d01ffa0 Fix .depend file (oxcaml#93)
942f2ab Bootstrap (oxcaml#92)
05f7e38 Check Menhir version (oxcaml#91)
1569b58 Move the CI jobs from 4.12 to 4.14. (oxcaml#90)

git-subtree-dir: ocaml
git-subtree-split: c703f5f
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants