Add functions to access values of ThreadStatic fields from another threads.
[mono.git] / man / mono.1
index d1703201732421c7767e84e922fbebae7f908d35..08b3012e9e7eb6a9c75fd3f7ca33a8ef42860235 100644 (file)
@@ -1009,12 +1009,18 @@ thread scan, it might be faster to enable remset.
 .TP
 \fBevacuation-threshold=\fIthreshold\fR
 Sets the evacuation threshold in percent.  This option is only available
 .TP
 \fBevacuation-threshold=\fIthreshold\fR
 Sets the evacuation threshold in percent.  This option is only available
-on the non-parallel Mark&Sweep major collectors.  The value must be an
+on the Mark&Sweep major collectors.  The value must be an
 integer in the range 0 to 100.  The default is 66.  If the sweep phase of
 the collection finds that the occupancy of a specific heap block type is
 less than this percentage, it will do a copying collection for that block
 type in the next major collection, thereby restoring occupancy to close
 to 100 percent.  A value of 0 turns evacuation off.
 integer in the range 0 to 100.  The default is 66.  If the sweep phase of
 the collection finds that the occupancy of a specific heap block type is
 less than this percentage, it will do a copying collection for that block
 type in the next major collection, thereby restoring occupancy to close
 to 100 percent.  A value of 0 turns evacuation off.
+.TP
+\fB(no-)concurrent-sweep\fR
+Enables or disables concurrent sweep for the Mark&Sweep collector.  If
+enabled, the sweep phase of the garbage collection is done in a thread
+concurrently with the application.  Concurrent sweep is disabled by
+default.
 .ne
 .RE
 .TP
 .ne
 .RE
 .TP
@@ -1287,11 +1293,36 @@ trading off the small leaks for the increased performance
 unload the application domains on production systems, it is worth
 using this feature). 
 .TP
 unload the application domains on production systems, it is worth
 using this feature). 
 .TP
+\fBdyn-runtime-invoke\fR
+Instructs the runtime to try to use a generic runtime-invoke wrapper
+instead of creating one invoke wrapper.
+.TP
+\fBgdb\fR 
+Equivalent to setting the \fBMONO_XDEBUG\fR variable, this emits
+symbols into a shared library as the code is JITed that can be loaded
+into GDB to inspect symbols.
+.TP
+\fBgen-seq-points\fR 
+Automatically generates sequence points where the
+IL stack is empty.  These are places where the debugger can set a
+breakpoint.
+.TP
+\fBexplicit-null-checks\fR
+Makes the JIT generate an explicit NULL check on variable dereferences
+instead of depending on the operating system to raise a SIGSEGV or
+another form of trap event when an invalid memory location is
+accessed. 
+.TP
 \fBhandle-sigint\fR
 Captures the interrupt signal (Control-C) and displays a stack trace
 when pressed.  Useful to find out where the program is executing at a
 given point.  This only displays the stack trace of a single thread. 
 .TP
 \fBhandle-sigint\fR
 Captures the interrupt signal (Control-C) and displays a stack trace
 when pressed.  Useful to find out where the program is executing at a
 given point.  This only displays the stack trace of a single thread. 
 .TP
+\fBinit-stacks\FR 
+Instructs the runtime to initialize the stack with
+some known values (0x2a on x86-64) at the start of a method to assist
+in debuggin the JIT engine.
+.TP
 \fBkeep-delegates\fR
 This option will leak delegate trampolines that are no longer
 referenced as to present the user with more information about a
 \fBkeep-delegates\fR
 This option will leak delegate trampolines that are no longer
 referenced as to present the user with more information about a
@@ -1315,7 +1346,6 @@ This option will disable the GDB backtrace emitted by the runtime
 after a SIGSEGV or SIGABRT in unmanaged code.
 .TP
 \fBsuspend-on-sigsegv\fR
 after a SIGSEGV or SIGABRT in unmanaged code.
 .TP
 \fBsuspend-on-sigsegv\fR
-
 This option will suspend the program when a native SIGSEGV is received.
 This is useful for debugging crashes which do not happen under gdb,
 since a live process contains more information than a core file.
 This option will suspend the program when a native SIGSEGV is received.
 This is useful for debugging crashes which do not happen under gdb,
 since a live process contains more information than a core file.
@@ -1410,7 +1440,7 @@ Mono JIT by default turns this on.
 \fBMONO_XDEBUG\fR
 When the the MONO_XDEBUG env var is set, debugging info for JITted
 code is emitted into a shared library, loadable into gdb. This enables,
 \fBMONO_XDEBUG\fR
 When the the MONO_XDEBUG env var is set, debugging info for JITted
 code is emitted into a shared library, loadable into gdb. This enables,
-for example, to see managed frame names on gdb backtraces.
+for example, to see managed frame names on gdb backtraces.   
 .TP
 \fBMONO_VERBOSE_METHOD\fR
 Enables the maximum JIT verbosity for the specified method. This is
 .TP
 \fBMONO_VERBOSE_METHOD\fR
 Enables the maximum JIT verbosity for the specified method. This is