summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* New script language for ocamltest (#12185)Damien Doligez2023-04-251240-6705/+9929
| | | | New test script language, all tests translated automatically (see `tools/translate-all-tests`).
* HACKING.adoc: document the V=1 option of makefilesGabriel Scherer2023-04-251-1/+5
| | | | | I needed it this morning and failed to find it without going back to the PR.
* Merge pull request #11846 from dra27/win64-abiXavier Leroy2023-04-225-27/+35
|\ | | | | Simplify and fix the shadow store reservation on Win64
| * AMD64 emitter: replace a trivial `lea` by a `mov`Xavier Leroy2023-04-221-1/+1
| |
| * Place Win64 ABI shadow store in c_stack_linkDavid Allsopp2023-03-155-25/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Win64 ABI requires the caller to reserve a fixed 32 bytes of stack space prior to the call for the function to spill the four argument registers into (if it chooses). There are three ways C functions are called by OCaml programs. Under Windows, two of them were needlessly wasting space reserving this twice and the third was not reserving it at all. This implementation capitalises on the fact that OCaml 5 no longer uses the C stack for OCaml code and so adds the shadow store to the c_stack_link struct. When in OCaml code, the C stack is therefore left in exactly the required state to call a C function, which removes the need for the stack pointer computations from the backend. Simultaneously, this also fixes a bug, as the shadow store previously was not being reserved at all when calling noalloc C functions.
| * Fix register metadata for Win64 ABIDavid Allsopp2023-03-142-3/+6
| | | | | | | | | | | | | | rbx is normally preserved in the Win64 ABI (as for Unix), but OCaml 5 uses it to save the OCaml stack pointer for direct (noalloc) calls. The fact rbx is clobbered at C call was incorrectly missing in the Win64 register descriptions.
* | Check for syntax errors in test scripts instead of ignoring them. (#12194)Damien Doligez2023-04-223-21/+18
| | | | | | check that anything that starts with `(* TEST` is indeed a test script
* | Don't include stdbool.h systematically (#12196)Xavier Leroy2023-04-213-2/+2
| | | | | | | | It can cause problem with user code that defines its own `bool` type. Instead, use stdbool.h internally only, and only when really needed.
* | Merge pull request #12187 from damiendoligez/fix-ocamldoc-warningsFlorian Angeletti2023-04-194-6/+6
|\ \ | | | | | | Fix warnings emitted when compiling the documentation
| * | fix broken links in documentation commentsDamien Doligez2023-04-173-5/+5
| | |
| * | suppress spurious alert when compiling stdlib documentationDamien Doligez2023-04-171-1/+1
| | |
* | | Merge pull request #11876 from gadmm/echec_remove_global_roots_in_finalizerGabriel Scherer2023-04-182-15/+31
|\ \ \ | | | | | | | | Document the situation regarding `remove_global_root` inside custom finalizers
| * | | Document the situation regarding remove_global_root inside custom finalizersGuillaume Munch-Maccagnoni2023-04-182-15/+31
| | | |
* | | | Merge pull request #12190 from shindere/fix-zstd-support-detectionGabriel Scherer2023-04-182-8/+120
|\ \ \ \ | |/ / / |/| | | Take host into account when looking for pkg-config
| * | | Take host into account when looking for pkg-configSébastien Hinderer2023-04-182-2/+110
| | | | | | | | | | | | | | | | Try ${host}-pkg-config before falling back to pkg-config
| * | | configure: use a variable to refer to pkg-configSébastien Hinderer2023-04-182-8/+12
|/ / / | | | | | | | | | | | | This is to prepare the next commit: when cross-compiling the right pkg-config to use is the one giving information on the host system.
* | | Merge pull request #12170 from gasche/pthread_getaffinity-configure-fixGabriel Scherer2023-04-183-9/+27
|\ \ \ | | | | | | | | fix the configure check for pthread_getaffinity_np
| * | | fix the configure check for pthread_getaffinity_npDavid Allsopp2023-04-173-9/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | AC_COMPILE_IFELSE only compiles, but the lack of the function results in a linking error, not a compilation error. fixes #12101
* | | | Update GDB scripts to work with OCaml 5 (#12179)Nick Barnes2023-04-173-177/+275
|/ / / | | | | | | | | | Update gdb-macros and gdb_ocamlrun.py to work with OCaml 5.
* | | Merge pull request #12171 from askvortsov1/as/extern_state_refactorGabriel Scherer2023-04-172-26/+42
|\ \ \ | | | | | | | | extern.c: raise OOM instead of passing null in `caml_output_*` entrypoints
| * | | feat: refactor `extern_free_stack`Alexander Skvortsov2023-04-161-8/+11
| | | | | | | | | | | | | | | | | | | | | | | | Split out `extern_init_stack` into a separate function, so that the code for initializing and resetting the extern_state stack is not duplicated. Signed-off-by: Alexander Skvortsov <sasha.skvortsov109@gmail.com>
| * | | chore: adjust ChangesAlexander Skvortsov2023-04-161-0/+4
| | | | | | | | | | | | | | | | Signed-off-by: Alexander Skvortsov <sasha.skvortsov109@gmail.com>
| * | | feat: `caml_fatal_error` on misuse of serialize functionsAlexander Skvortsov2023-04-161-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | These should only be called from within a `caml_output_*` entrypoint context. Signed-off-by: Alexander Skvortsov <sasha.skvortsov109@gmail.com>
| * | | extern.c: for consistent style with `intern.c`, rename `extern_state` var to `s`Alexander Skvortsov2023-04-161-12/+11
| | | | | | | | | | | | | | | | Signed-off-by: Alexander Skvortsov <sasha.skvortsov109@gmail.com>
| * | | extern.c: raise OOM instead of passing null in `caml_output_*` entrypointsAlexander Skvortsov2023-04-161-10/+13
|/ / / | | | | | | | | | Signed-off-by: Alexander Skvortsov <sasha.skvortsov109@gmail.com>
* | | Merge pull request #12172 from gasche/major_gc_PAGE_MASKGabriel Scherer2023-04-131-21/+33
|\ \ \ | | | | | | | | major_gc.c: avoid using a PAGE_MASK macro
| * | | major_gc.c: turn macros into static inlineGabriel Scherer2023-04-101-9/+15
| | | | | | | | | | | | | | | | Co-authored-by: Stefan Muenzel <source@s.muenzel.net>
| * | | major_gc.c: rename PAGE into CHUNK to avoid the PAGE_MASK macroGabriel Scherer2023-04-081-19/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #12101 reports a build warning on android where a macro PAGE_MASK is already defined by the system. We rename this macro into CHUNK_MASK, along with some documentation of the representation of the compressed mark stack.
| * | | [minor] clarify the input type of major_gc.c:addr_mapGabriel Scherer2023-04-081-5/+5
| | | |
* | | | Merge pull request #12072 from jmid/sys-rename-docuGabriel Scherer2023-04-124-5/+42
|\ \ \ \ | | | | | | | | | | Document that Sys.rename works on directories too
| * | | | Add negative Sys.rename test with non-empty target dirJan Midtgaard2023-03-142-0/+9
| | | | |
| * | | | Add Changes entry for Sys.rename elaborationJan Midtgaard2023-03-091-0/+3
| | | | |
| * | | | Add Sys.rename dir testsJan Midtgaard2023-03-092-1/+25
| | | | |
| * | | | Document that Sys.rename works on directories tooJan Midtgaard2023-03-091-4/+5
| | | | |
* | | | | Merge pull request #12130 from NickBarnes/nick-11934-weak-get-copyGabriel Scherer2023-04-112-44/+79
|\ \ \ \ \ | | | | | | | | | | | | Fix #11934 with more conservative Weak.get_copy
| * | | | | Changes: add Francois Bobot as PR reviewer.Nick Barnes2023-03-291-1/+1
| | | | | |
| * | | | | Review response: simplify loop, separate copying function.Nick Barnes2023-03-291-31/+51
| | | | | |
| * | | | | Update Changes.Nick Barnes2023-03-231-0/+3
| | | | | |
| * | | | | Remove trailing whitespace.Nick Barnes2023-03-221-1/+1
| | | | | |
| * | | | | Fix infix closure handling.Nick Barnes2023-03-221-9/+17
| | | | | |
| * | | | | Much more conservative version of ephe_get_field_copy.Nick Barnes2023-03-221-43/+47
| | | | | |
* | | | | | Merge pull request #12178 from TheLortex/runtime-events-consumer-fixupGabriel Scherer2023-04-112-1/+4
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | | runtime events consumer: fix invalid value returned from runtime_events_read_poll
| * | | | | runtime events consumer: fix invalid value returned from ↵Lucas Pluvinage2023-04-112-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | runtime_events_read_poll
* | | | | | first commit after branching 5.1Florian Angeletti2023-04-116-31/+57
| | | | | |
* | | | | | last commit before branching 5.1Florian Angeletti2023-04-114-20/+20
| | | | | |
* | | | | | Bump magic numbers before branching 5.1Florian Angeletti2023-04-114-14/+14
|/ / / / /
* | | | | HACKING.adoc: recommend `make -j`Gabriel Scherer2023-04-081-1/+1
| | | | | | | | | | | | | | | `make -j` is now used by default in all opam installs, it should be fine for clean builds
* | | | | Merge pull request #12169 from gasche/no_reified_var_counterGabriel Scherer2023-04-084-18/+26
|\ \ \ \ \ | |_|_|/ / |/| | | | No reified var counter
| * | | | changesTakafumi Saikawa2023-04-081-0/+3
| | | | |
| * | | | use Misc.find_first_monoTakafumi Saikawa2023-04-081-9/+10
| | | | |