gcc.info: NS32K Options
Go backward to ARC Options
Go up to Submodel Options
Go to the top op gcc
NS32K Options
These are the `-m' options defined for the 32000 series. The default
values for these options depends on which style of 32000 was selected
when the compiler was configured; the defaults for the most common
choices are given below.
`-m32032'
`-m32032'
Generate output for a 32032. This is the default when the
compiler is configured for 32032 and 32016 based systems.
`-m32332'
`-m32332'
Generate output for a 32332. This is the default when the
compiler is configured for 32332-based systems.
`-m32532'
`-m32532'
Generate output for a 32532. This is the default when the
compiler is configured for 32532-based systems.
`-m32081'
Generate output containing 32081 instructions for floating point.
This is the default for all systems.
`-m32381'
Generate output containing 32381 instructions for floating point.
This also implies `-m32081'. The 32381 is only compatible with the
32332 and 32532 cpus. This is the default for the pc532-netbsd
configuration.
`-mmulti-add'
Try and generate multiply-add floating point instructions `polyF'
and `dotF'. This option is only available if the `-m32381' option
is in effect. Using these instructions requires changes to to
register allocation which generally has a negative impact on
performance. This option should only be enabled when compiling
code particularly likely to make heavy use of multiply-add
instructions.
`-mnomulti-add'
Do not try and generate multiply-add floating point instructions
`polyF' and `dotF'. This is the default on all platforms.
`-msoft-float'
Generate output containing library calls for floating point.
*Warning:* the requisite libraries may not be available.
`-mnobitfield'
Do not use the bit-field instructions. On some machines it is
faster to use shifting and masking operations. This is the default
for the pc532.
`-mbitfield'
Do use the bit-field instructions. This is the default for all
platforms except the pc532.
`-mrtd'
Use a different function-calling convention, in which functions
that take a fixed number of arguments return pop their arguments
on return with the `ret' instruction.
This calling convention is incompatible with the one normally used
on Unix, so you cannot use it if you need to call libraries
compiled with the Unix compiler.
Also, you must provide function prototypes for all functions that
take variable numbers of arguments (including `printf'); otherwise
incorrect code will be generated for calls to those functions.
In addition, seriously incorrect code will result if you call a
function with too many arguments. (Normally, extra arguments are
harmlessly ignored.)
This option takes its name from the 680x0 `rtd' instruction.
`-mregparam'
Use a different function-calling convention where the first two
arguments are passed in registers.
This calling convention is incompatible with the one normally used
on Unix, so you cannot use it if you need to call libraries
compiled with the Unix compiler.
`-mnoregparam'
Do not pass any arguments in registers. This is the default for all
targets.
`-msb'
It is OK to use the sb as an index register which is always loaded
with zero. This is the default for the pc532-netbsd target.
`-mnosb'
The sb register is not available for use or has not been
initialized to zero by the run time system. This is the default
for all targets except the pc532-netbsd. It is also implied
whenever `-mhimem' or `-fpic' is set.
`-mhimem'
Many ns32000 series addressing modes use displacements of up to
512MB. If an address is above 512MB then displacements from zero
can not be used. This option causes code to be generated which
can be loaded above 512MB. This may be useful for operating
systems or ROM code.
`-mnohimem'
Assume code will be loaded in the first 512MB of virtual address
space. This is the default for all platforms.
Created Wed Sep 1 16:42:18 2004 on bee with info_to_html version 0.9.6.