9.10.5 Medium-level (HLDS -> LLDS) optimization options
These optimizations are applied during the process of generating
low-level intermediate code from our high-level data structure.
--no-static-ground-terms- Disable the optimization of constructing constant ground terms
at compile time and storing them as static constants.
Note that auxiliary data structures created by the compiler
for purposes such as debugging
will still be created as static constants.
--no-smart-indexing- Generate switches as a simple if-then-else chains;
disable string hashing and integer table-lookup indexing.
--dense-switch-req-density percentage- The jump table generated for an atomic switch
must have at least this percentage of full slots (default: 25).
--dense-switch-size size- The jump table generated for an atomic switch
must have at least this many entries (default: 4).
--lookup-switch-req-density percentage- The lookup tables generated for an atomic switch
in which all the outputs are constant terms
must have at least this percentage of full slots (default: 25).
--lookup-switch-size size- The lookup tables generated for an atomic switch
in which all the outputs are constant terms
must have at least this many entries (default: 4).
--string-hash-switch-size size- The hash table generated for a string switch
must have at least this many entries (default: 8).
--string-binary-switch-size size- The binary search table generated for a string switch
must have at least this many entries (default: 4).
--tag-switch-size size- The number of alternatives in a tag switch
must be at least this number (default: 3).
--try-switch-size size- The number of alternatives in a try-chain switch
must be at least this number (default: 3).
--binary-switch-size size- The number of alternatives in a binary search switch
must be at least this number (default: 4).
--no-use-atomic-cells- Don't use the atomic variants of the Boehm gc allocator calls,
even when this would otherwise be possible.
--no-middle-rec- Disable the middle recursion optimization.
--no-simple-neg- Don't generate simplified code for simple negations.