gcc: MMIX Options
1
1 3.18.27 MMIX Options
1 --------------------
1
1 These options are defined for the MMIX:
1
1 '-mlibfuncs'
1 '-mno-libfuncs'
1 Specify that intrinsic library functions are being compiled,
1 passing all values in registers, no matter the size.
1
1 '-mepsilon'
1 '-mno-epsilon'
1 Generate floating-point comparison instructions that compare with
1 respect to the 'rE' epsilon register.
1
1 '-mabi=mmixware'
1 '-mabi=gnu'
1 Generate code that passes function parameters and return values
1 that (in the called function) are seen as registers '$0' and up, as
1 opposed to the GNU ABI which uses global registers '$231' and up.
1
1 '-mzero-extend'
1 '-mno-zero-extend'
1 When reading data from memory in sizes shorter than 64 bits, use
1 (do not use) zero-extending load instructions by default, rather
1 than sign-extending ones.
1
1 '-mknuthdiv'
1 '-mno-knuthdiv'
1 Make the result of a division yielding a remainder have the same
1 sign as the divisor. With the default, '-mno-knuthdiv', the sign
1 of the remainder follows the sign of the dividend. Both methods
1 are arithmetically valid, the latter being almost exclusively used.
1
1 '-mtoplevel-symbols'
1 '-mno-toplevel-symbols'
1 Prepend (do not prepend) a ':' to all global symbols, so the
1 assembly code can be used with the 'PREFIX' assembly directive.
1
1 '-melf'
1 Generate an executable in the ELF format, rather than the default
1 'mmo' format used by the 'mmix' simulator.
1
1 '-mbranch-predict'
1 '-mno-branch-predict'
1 Use (do not use) the probable-branch instructions, when static
1 branch prediction indicates a probable branch.
1
1 '-mbase-addresses'
1 '-mno-base-addresses'
1 Generate (do not generate) code that uses _base addresses_. Using
1 a base address automatically generates a request (handled by the
1 assembler and the linker) for a constant to be set up in a global
1 register. The register is used for one or more base address
1 requests within the range 0 to 255 from the value held in the
1 register. The generally leads to short and fast code, but the
1 number of different data items that can be addressed is limited.
1 This means that a program that uses lots of static data may require
1 '-mno-base-addresses'.
1
1 '-msingle-exit'
1 '-mno-single-exit'
1 Force (do not force) generated code to have a single exit point in
1 each function.
1