-
Notifications
You must be signed in to change notification settings - Fork 100
Flambda 2 patches to the Lambda types #69
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
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
…caml#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.
Refactor all .sexp targets into flags.sexp.
* 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 <mshinwell@gmail.com>
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 <xclerc@janestreet.com>
Fix error "integer literal exceeds the range of representable integers of type nativeint" in the code that runs only on 64-bit targets, but need to compile on 32-bit target.
- 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 (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
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.