You've already forked linux-packaging-mono
Imported Upstream version 4.2.0.179
Former-commit-id: 0a113cb3a6feb7873f632839b1307cc6033cd595
This commit is contained in:
committed by
Jo Shields
parent
183bba2c9a
commit
6992685b86
85
man/mono.1
85
man/mono.1
@@ -146,6 +146,13 @@ Defaults to 128.
|
||||
.I nodebug
|
||||
Instructs the AOT compiler to not output any debugging information.
|
||||
.TP
|
||||
.I no-direct-calls
|
||||
This prevents the AOT compiler from generating a direct calls to a
|
||||
method. The AOT compiler usually generates direct calls for certain
|
||||
methods that do not require going through the PLT (for example,
|
||||
methods that are known to not require a hook like a static
|
||||
constructor) or call into simple internal calls.
|
||||
.TP
|
||||
.I dwarfdebug
|
||||
Instructs the AOT compiler to emit DWARF debugging information. When
|
||||
used together with the nodebug option, only DWARF debugging
|
||||
@@ -333,31 +340,31 @@ In general, Mono has been tuned to use the default set of flags,
|
||||
before using these flags for a deployment setting, you might want to
|
||||
actually measure the benefits of using them.
|
||||
.Sp
|
||||
The following optimizations are implemented:
|
||||
The following optimization flags are implemented in the core engine:
|
||||
.nf
|
||||
abcrem Array bound checks removal
|
||||
all Turn on all optimizations
|
||||
peephole Peephole postpass
|
||||
aot Usage of Ahead Of Time compiled code
|
||||
branch Branch optimizations
|
||||
inline Inline method calls
|
||||
cfold Constant folding
|
||||
cmov Conditional moves [arch-dependency]
|
||||
deadce Dead code elimination
|
||||
consprop Constant propagation
|
||||
copyprop Copy propagation
|
||||
deadce Dead code elimination
|
||||
linears Linear scan global reg allocation
|
||||
cmov Conditional moves [arch-dependency]
|
||||
shared Emit per-domain code
|
||||
sched Instruction scheduling
|
||||
intrins Intrinsic method implementations
|
||||
tailc Tail recursion and tail calls
|
||||
loop Loop related optimizations
|
||||
fcmov Fast x86 FP compares [arch-dependency]
|
||||
leaf Leaf procedures optimizations
|
||||
aot Usage of Ahead Of Time compiled code
|
||||
precomp Precompile all methods before executing Main
|
||||
abcrem Array bound checks removal
|
||||
ssapre SSA based Partial Redundancy Elimination
|
||||
sse2 SSE2 instructions on x86 [arch-dependency]
|
||||
float32 Perform 32-bit float arithmetic using 32-bit operations
|
||||
gshared Enable generic code sharing.
|
||||
inline Inline method calls
|
||||
intrins Intrinsic method implementations
|
||||
linears Linear scan global reg allocation
|
||||
leaf Leaf procedures optimizations
|
||||
loop Loop related optimizations
|
||||
peephole Peephole postpass
|
||||
precomp Precompile all methods before executing Main
|
||||
sched Instruction scheduling
|
||||
shared Emit per-domain code
|
||||
sse2 SSE2 instructions on x86 [arch-dependency]
|
||||
tailc Tail recursion and tail calls
|
||||
.fi
|
||||
.Sp
|
||||
For example, to enable all the optimization but dead code
|
||||
@@ -370,6 +377,23 @@ The flags that are flagged with [arch-dependency] indicate that the
|
||||
given option if used in combination with Ahead of Time compilation
|
||||
(--aot flag) would produce pre-compiled code that will depend on the
|
||||
current CPU and might not be safely moved to another computer.
|
||||
.RS
|
||||
.ne 8
|
||||
.PP
|
||||
The following optimizations are supported
|
||||
.TP
|
||||
.I float32
|
||||
Requests that the runtime performn 32-bit floating point operations
|
||||
using only 32-bits. By default the Mono runtime tries to use the
|
||||
highest precision available for floating point operations, but while
|
||||
this might render better results, the code might run slower. This
|
||||
options also affects the code generated by the LLVM backend.
|
||||
.TP
|
||||
.I inline
|
||||
Controls whether the runtime should attempt to inline (the default),
|
||||
or not inline methods invocations
|
||||
.ne
|
||||
.RE
|
||||
.TP
|
||||
\fB--runtime=VERSION\fR
|
||||
Mono supports different runtime versions. The version used depends on the program
|
||||
@@ -393,10 +417,6 @@ Using security without parameters is equivalent as calling it with the
|
||||
"cas" parameter.
|
||||
.PP
|
||||
The following modes are supported:
|
||||
.TP
|
||||
.I cas
|
||||
This allows mono to support declarative security attributes,
|
||||
e.g. execution of Code Access Security (CAS) or non-CAS demands.
|
||||
.TP
|
||||
.I core-clr
|
||||
Enables the core-clr security system, typically used for
|
||||
@@ -1122,9 +1142,16 @@ to 100 percent. A value of 0 turns evacuation off.
|
||||
.TP
|
||||
\fB(no-)lazy-sweep\fR
|
||||
Enables or disables lazy sweep for the Mark&Sweep collector. If
|
||||
enabled, the sweep phase of the garbage collection is done piecemeal
|
||||
whenever the need arises, typically during nursery collections. Lazy
|
||||
sweeping is enabled by default.
|
||||
enabled, the sweeping of individual major heap blocks is done
|
||||
piecemeal whenever the need arises, typically during nursery
|
||||
collections. Lazy sweeping is enabled by default.
|
||||
.TP
|
||||
\fB(no-)concurrent-sweep\fR
|
||||
Enables or disables concurrent sweep for the Mark&Sweep collector. If
|
||||
enabled, the iteration of all major blocks to determine which ones can
|
||||
be freed and which ones have to be kept and swept, is done
|
||||
concurrently with the running program. Concurrent sweeping is enabled
|
||||
by default.
|
||||
.TP
|
||||
\fBstack-mark=\fImark-mode\fR
|
||||
Specifies how application threads should be scanned. Options are
|
||||
@@ -1283,14 +1310,13 @@ work, Mono needs to be compiled with the BINARY_PROTOCOL define on
|
||||
sgen-gc.c. You can then use this command to explore the output
|
||||
.nf
|
||||
sgen-grep-binprot 0x1234 0x5678 < file
|
||||
.fi
|
||||
.TP
|
||||
\fBnursery-canaries\fR
|
||||
If set, objects allocated in the nursery are suffixed with a canary (guard)
|
||||
word, which is checked on each minor collection. Can be used to detect/debug
|
||||
heap corruption issues.
|
||||
.fi
|
||||
.ne
|
||||
.RE
|
||||
|
||||
.TP
|
||||
\fBdo-not-finalize\fR
|
||||
If enabled, finalizers will not be run. Everything else will be
|
||||
@@ -1298,7 +1324,10 @@ unaffected: finalizable objects will still be put into the
|
||||
finalization queue where they survive until they're scheduled to
|
||||
finalize. Once they're not in the queue anymore they will be
|
||||
collected regularly.
|
||||
.fi
|
||||
|
||||
.TP
|
||||
\fBlog-finalizers\fR
|
||||
Log verbosely around the finalization process to aid debugging.
|
||||
.ne
|
||||
.RE
|
||||
.TP
|
||||
|
||||
Reference in New Issue
Block a user