Next: , Previous: MLDS back-end (MLDS -> MLDS) optimization options, Up: Optimization options   [Contents][Index]


9.10.4 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 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-trie-switch-size size

The trie generated for a string switch must have at least this many entries (default: 16).


--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.


Next: , Previous: MLDS back-end (MLDS -> MLDS) optimization options, Up: Optimization options   [Contents][Index]