gcc: M32R/D Options
1
1 3.18.21 M32R/D Options
1 ----------------------
1
1 These '-m' options are defined for Renesas M32R/D architectures:
1
1 '-m32r2'
1 Generate code for the M32R/2.
1
1 '-m32rx'
1 Generate code for the M32R/X.
1
1 '-m32r'
1 Generate code for the M32R. This is the default.
1
1 '-mmodel=small'
1 Assume all objects live in the lower 16MB of memory (so that their
1 addresses can be loaded with the 'ld24' instruction), and assume
1 all subroutines are reachable with the 'bl' instruction. This is
1 the default.
1
1 The addressability of a particular object can be set with the
1 'model' attribute.
1
1 '-mmodel=medium'
1 Assume objects may be anywhere in the 32-bit address space (the
1 compiler generates 'seth/add3' instructions to load their
1 addresses), and assume all subroutines are reachable with the 'bl'
1 instruction.
1
1 '-mmodel=large'
1 Assume objects may be anywhere in the 32-bit address space (the
1 compiler generates 'seth/add3' instructions to load their
1 addresses), and assume subroutines may not be reachable with the
1 'bl' instruction (the compiler generates the much slower
1 'seth/add3/jl' instruction sequence).
1
1 '-msdata=none'
1 Disable use of the small data area. Variables are put into one of
1 '.data', '.bss', or '.rodata' (unless the 'section' attribute has
1 been specified). This is the default.
1
1 The small data area consists of sections '.sdata' and '.sbss'.
1 Objects may be explicitly put in the small data area with the
1 'section' attribute using one of these sections.
1
1 '-msdata=sdata'
1 Put small global and static data in the small data area, but do not
1 generate special code to reference them.
1
1 '-msdata=use'
1 Put small global and static data in the small data area, and
1 generate special instructions to reference them.
1
1 '-G NUM'
1 Put global and static objects less than or equal to NUM bytes into
1 the small data or BSS sections instead of the normal data or BSS
1 sections. The default value of NUM is 8. The '-msdata' option
1 must be set to one of 'sdata' or 'use' for this option to have any
1 effect.
1
1 All modules should be compiled with the same '-G NUM' value.
1 Compiling with different values of NUM may or may not work; if it
1 doesn't the linker gives an error message--incorrect code is not
1 generated.
1
1 '-mdebug'
1 Makes the M32R-specific code in the compiler display some
1 statistics that might help in debugging programs.
1
1 '-malign-loops'
1 Align all loops to a 32-byte boundary.
1
1 '-mno-align-loops'
1 Do not enforce a 32-byte alignment for loops. This is the default.
1
1 '-missue-rate=NUMBER'
1 Issue NUMBER instructions per cycle. NUMBER can only be 1 or 2.
1
1 '-mbranch-cost=NUMBER'
1 NUMBER can only be 1 or 2. If it is 1 then branches are preferred
1 over conditional code, if it is 2, then the opposite applies.
1
1 '-mflush-trap=NUMBER'
1 Specifies the trap number to use to flush the cache. The default
1 is 12. Valid numbers are between 0 and 15 inclusive.
1
1 '-mno-flush-trap'
1 Specifies that the cache cannot be flushed by using a trap.
1
1 '-mflush-func=NAME'
1 Specifies the name of the operating system function to call to
1 flush the cache. The default is '_flush_cache', but a function
1 call is only used if a trap is not available.
1
1 '-mno-flush-func'
1 Indicates that there is no OS function for flushing the cache.
1