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