Commit Graph

9 Commits (master)

Author SHA1 Message Date
Stephen Dolan 41f0522df3
Use different symbol names for caml_do_local_roots on bytecode and native code (#9503) 2020-08-25 21:22:34 +01:00
Xavier Leroy 9476d5d232 Revised scanning of bytecode interpreter stack
In no-naked-pointers mode, recognize and skip code pointers present in
the stack of the bytecode interpreter.  This is needed only for
the scan at beginning of a major GC cycle, not for the scan done
at every minor GC.
2020-06-18 15:12:20 +02:00
Enguerrand Decorne b7f0494df5 Rewrite the instrumented runtime to store traces in the CTF format.
The instrumentation code in the instrumented runtime was replaced
with new APIs to gather runtime statistics and output them in a new format
(Common Trace Format).
This commit also exposes new functions in the Gc module to pause or resume
instrumentation during a program execution (Gc.eventlog_pause and
Gc.eventlog_resume).
2020-04-30 10:32:01 +02:00
Jacques-Henri Jourdan 7dbbfce890 New ephemeron-free API for Memprof.
The user can register several callbacks, which are called for various
events during the block's lifetime. We need to maintain a data
structure for tracked blocks in the runtime. When using threads,
callbacks can be called concurrently in a reentrant way, so the
functions manipulating this data structure need to be reentrant.
2019-12-21 10:21:48 +01:00
Jacques-Henri Jourdan c0dbbfdd71 Memprof: stop using C global roots, and use our own root system.
Registering and unregistering global C roots was time consuming.
2019-08-27 19:05:03 +02:00
KC Sivaramakrishnan 126383b2b2 Fix long lines 2019-08-23 09:50:05 +05:30
KC Sivaramakrishnan cededf23b9 Move local_roots, compare unorderd and gc request variables to domain state 2019-08-23 09:50:05 +05:30
KC Sivaramakrishnan 111f6af469 Move bytecode global variables to domain state 2019-08-23 09:50:05 +05:30
Sébastien Hinderer d3e73595e5 Merge the asmrun and byterun directories into the runtime directory 2018-06-28 17:50:33 +02:00