Commit Graph

8 Commits (9e181ca8f446d238ba279bc22fef9d166d4f38b0)

Author SHA1 Message Date
Nicolás Ojeda Bär 540996d21e Remove Spacetime 2020-10-08 20:28:12 +02:00
David Allsopp da943eac54 Share generation code between ocamltest and utils
ocamltest/ocamltest_config.ml now generated using same make macros as
utils/config.ml.
2020-06-06 13:36:00 +01:00
Greta Yorsh 27a92a9445 Emit each function in a separate section (amd64,i386,arm,arm64)
Add --enable-function-sections option to configure. With this option,
the compiler will emit each function in a separate named text section,
on supported targets. This enables function reordering using a linker
script. With this option, the compiler also emits caml_hot__code_begin
and caml_hot__code_end sections. This allows a linker script to
move function sections outside of the segments they belong to,
without breaking caml_code_segments.
2019-07-15 10:25:26 +01:00
Xavier Leroy 8a8743f409 Improve quoting of parameters that are inserted in utils/config.ml
There were some issues in the way parameters from Makefile.config
are inserted in utils/config.mlp to produce utils/config.ml:
- Some of the make functions involved used parameter "$2" yet
  were called with only one argument, causing a warning by
  "make --warn-undefined-variables".
- Despite heroic attempts, special characters in the parameters
  were not always quoted or quoted enough.  For example,
  if FLEXDLL_DIR is C:\foo, the generated utils/config.ml
  contains "C:\foo", which is not a valid OCaml string literal.

This commit fixes these issues by:
- Revising and commenting the make functions that produce
  the properly-quoted sed substitution commands.
- Adding an extra round of quoting for variables used inside
  OCaml's string literals "..."  (function SUBST_STRING)
- Adding two round-trip tests (make test-subst, make test-subst-string)
  to make sure that all printable characters are properly quoted.
2019-05-02 19:43:17 +02:00
Mark Shinwell 2cc1ea26b9 Remove gprof support (#2314)
This commit removes support for gprof-based profiling (the -p option to ocamlopt).  It follows a discussion on the core developers' list, which indicated that removing gprof support was a reasonable thing to do. The rationale is that there are better easy-to-use profilers out there now, such as perf for Linux and Instruments on macOS; and the gprof support has always been patchy across targets. We save a whole build of the runtime and simplify some other parts of the codebase by removing it.
2019-03-16 19:56:53 +01:00
David Allsopp 8831395f32 Move FLEXDLL_DIR definition to utils/Makefile (#2259)
Missed in d68e0e207. Fixes second part of MPR#7923.
2019-02-28 11:21:52 +01:00
Thomas Refis e292cb97c5 correctly register dependencies 2018-10-11 17:13:22 +01:00
Thomas Refis d68e0e2077
Provide a way to build the bytecode compiler using Dune (#2093) 2018-10-10 16:16:00 +01:00