This instructs Mono to precompile code that has historically not been
precompiled with AOT.
.TP
+.I data-outfile=FILE.dll.aotdata
+.Sp
+This instructs the AOT code generator to output certain data
+constructs into a separate file. This can reduce the executable
+images some five to twenty percent. Developers need to then ship the
+resulting aotdata as a resource and register a hook to load the data
+on demand by using the
+.I mono_install_load_aot_data_hook
+method.
+.TP
.I direct-pinvoke
.Sp
When this option is specified, P/Invoke methods are invoked directly
llc compiler.
.TP
.I nimt-trampolines=[number]
-When compiling in full aot mode, the IMT trampolines must be precreated
+When compiling in full aot mthis data at startup
+usingode, the IMT trampolines must be precreated
in the AOT image. You can add additional method trampolines with this argument.
Defaults to 128.
.TP
The maintainer options are only used by those developing the runtime
itself, and not typically of interest to runtime users or developers.
.TP
+\fB--bisect=optimization:filename\fR
+This flag is used by the automatic optimization bug bisector. It
+takes an optimization flag and a filename of a file containing a list
+of full method names, one per line. When it compiles one of the
+methods in the file it will use the optimization given, in addition to
+the optimizations that are otherwise enabled. Note that if the
+optimization is enabled by default, you should disable it with `-O`,
+otherwise it will just apply to every method, whether it's in the file
+or not.
+.TP
\fB--break method\fR
Inserts a breakpoint before the method whose name is `method'
(namespace.class:methodname). Use `Main' as method name to insert a
this can be set to the name of a file system socket on which an egd or
prngd daemon is listening.
.TP
+\fBMONO_ENABLE_COOP\fR
+This makes the Mono runtime and the SGen garbage collector run in cooperative
+mode as opposed to run on preemptive mode. Preemptive mode is the mode
+that Mono has used historically, going back to the Boehm days, where the
+garbage collector would run at any point and suspend execution of all
+threads as required to perform a garbage collection. The cooperative mode
+on the other hand requires the cooperation of all threads to stop at a
+safe point. This makes for an easier to debug garbage collector. As
+of Mono 4.3.0 it is a work in progress, and while it works, it has not
+been used extensively. This option enabled the feature and allows us to
+find spots that need to be tuned for this mode of operation. Alternatively,
+this mode can be enabled at compile time by using the --with-cooperative-gc
+flag when calling configure.
+.TP
\fBMONO_ENABLE_SHM\fR
Unix only: Enable support for cross-process handles. Cross-process
handles are used to expose process handles, thread handles, named
This option will suspend the program when an exception occurs.
.TP
\fBsuspend-on-unhandled\fR
-This option will suspend the program when an unhadled exception occurs.
+This option will suspend the program when an unhandled exception occurs.
.ne
.RE
.TP