Next: Low-level (LLDS -> LLDS) optimization options, Previous: MLDS back-end (MLDS -> MLDS) optimization options, Up: Optimization options [Contents][Index]
These optimizations are applied during the process of generating low-level intermediate code from our high-level data structure.
--no-static-ground-termsDisable 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-indexingGenerate switches as simple if-then-else chains; disable string hashing and integer table-lookup indexing.
--dense-switch-req-density percentageThe jump table generated for an atomic switch must have at least this percentage of full slots (default: 25).
--dense-switch-size sizeThe jump table generated for an atomic switch must have at least this many entries (default: 4).
--lookup-switch-req-density percentageThe 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 sizeThe 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 sizeThe trie generated for a string switch must have at least this many entries (default: 16).
--string-hash-switch-size sizeThe hash table generated for a string switch must have at least this many entries (default: 8).
--string-binary-switch-size sizeThe binary search table generated for a string switch must have at least this many entries (default: 4).
--tag-switch-size sizeThe number of alternatives in a tag switch must be at least this number (default: 3).
--try-switch-size sizeThe number of alternatives in a try-chain switch must be at least this number (default: 3).
--binary-switch-size sizeThe number of alternatives in a binary search switch must be at least this number (default: 4).
--no-use-atomic-cellsDon’t use the atomic variants of the Boehm gc allocator calls, even when this would otherwise be possible.
--no-middle-recDisable the middle recursion optimization.
--no-simple-negDon’t generate simplified code for simple negations.