-
Notifications
You must be signed in to change notification settings - Fork 89
Flambda 2 patches to the Lambda types #69
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
Conversation
git-subtree-dir: ocaml git-subtree-split: ae3e5528f45f084a5f2984d81ecc635ba8c38f31
…b6f1a67704cdec) Change the default policy to best-fit and space overhead to 100
Ensure that string representations of scopes are shared.
…bs/systhreads/, toplevel/toploop.ml
…ops files (still needs .gitignore + way of generating these files)
Used `replace` instead of `add` on the interfaces Hash table (which is being used as a set), to avoid duplicate entries. The duplicate entries lead to enormous `caml_globals_map` values. Also use `replace` instead of `add` on another hash table usage, not because it was causing any problems but because it seems like `add` should be avoided outside unusual situations.
git-subtree-dir: external/memtrace git-subtree-split: ad4099fd60562dc3e1d9a33812da54491f9dbadc
…aml-flambda#30) Use the same options as in the upstream Makefiles, based on ocaml/Makefile.config This fixes the missing -ffunction-sections in compilation of C stubs. We should disable dune behavior of taking C compiler options from "ocamlc -config" when we move to dune 2.8.
* Add intrinsics for ext_pointer and native_pointer * Add two_args * remove XCR * Add intrinisics for storing and loading int64,int32,nativeint Fix up names * Remove "unsafe" from the name of one of the intrinsics * Address review comments Use Word_int instead of Word_val for {load,store}_immediate intrinsics Co-authored-by: Mark Shinwell <[email protected]>
Reduces peak memory usage, which is important when a build system tries to run many large links in parallel.
* Import the code of ocamlcfg. * Fix imported code. * Optionally go through ocamlcfg. * Merge in the latest CFG version * Fix compilation warning 18. * Add copyright header to cfg files. The head is a copy of the LICENSE file at the root of ocamlcfg library Co-authored-by: xclerc <[email protected]>
- Mutability on field reads - Tag and size (if known) on field reads - Tag and size on switch block branches
I was envisaging only trying to upstream the However I fear that the remainder of this patch won't be acceptable upstream at the present time, although it looks like a lot less work to submit these changes together. @lthls @stedolan what do you both think? |
c703f5f Incorporate upstream comments into type-variable refactor (ocaml-flambda#121) 362ba23 Constrain curry modes to increase along applications (ocaml-flambda#108) b1f0cf9 Simplify the extension handling (ocaml-flambda#114) 4fd53a1 Remove pat_mode from typedtree (ocaml-flambda#105) cf6fcbc Handle attributes on lambdas with locally abstract types (ocaml-flambda#120) 5fa80fe Don't track attributes inside attributes for warning 53 (ocaml-flambda#115) 8a69777 Handle unclosed `[: ... :]` patterns (via `Generic_array` machinery) (ocaml-flambda#117) b0737f4 Add promote-one Makefile target (ocaml-flambda#118) c6ad684 Refactoring and fixes around module lookup (ocaml-flambda#107) b0a6495 Add documentation for global constructor arguments (ocaml-flambda#69) dd79aec Print `nlocal` in the `-d(raw)lambda` output (ocaml-flambda#112) 8035026 Fix `nlocal` in the generated Lambda for list comprehensions (ocaml-flambda#113) afbcdf0 Immutable arrays (ocaml-flambda#47) bfe1490 fix several issues when removing exp_mode (ocaml-flambda#110) 8f46060 Better error message for under-applied functions (ocaml-flambda#74) 27331d8 Consistently use Lmutvar or Lvar in comprehensions (ocaml-flambda#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 (ocaml-flambda#109) 947cf89 List and array comprehensions (ocaml-flambda#46) bd9e051 remove exp_mode from typedtree (ocaml-flambda#100) a9268d2 Fix misplaced attribute warning when using external parser (and some cleanup) (ocaml-flambda#101) 2b33f24 Refactor toplevel local escape check (ocaml-flambda#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 (ocaml-flambda#97) aa25ab9 Fix version number (ocaml-flambda#94) d01ffa0 Fix .depend file (ocaml-flambda#93) 942f2ab Bootstrap (ocaml-flambda#92) 05f7e38 Check Menhir version (ocaml-flambda#91) 1569b58 Move the CI jobs from 4.12 to 4.14. (ocaml-flambda#90) git-subtree-dir: ocaml git-subtree-split: c703f5f
The first commit combines several modifications to the
Pfield
primitive, plus a change toLswitch
structures (that I could split if needed).The second commit handles the addition of
Immutable_unique
toLmbda.mutable_flag
, used for extension constructors.