Using and Porting the GNU Compiler Collection (GCC)
These `-m' options are defined for the DEC Alpha implementations:
-mno-soft-float
-msoft-float
-msoft-float is specified,
functions in `libgcc1.c' will be used to perform floating-point
operations. Unless they are replaced by routines that emulate the
floating-point operations, or compiled in such a way as to call such
emulations routines, these routines will issue floating-point
operations. If you are compiling for an Alpha without floating-point
operations, you must ensure that the library is built so as not to call
them.
Note that Alpha implementations without floating-point operations are required to have floating-point registers.
-mfp-reg
-mno-fp-regs
-mno-fp-regs implies -msoft-float. If the floating-point
register set is not used, floating point operands are passed in integer
registers as if they were integers and floating-point results are passed
in $0 instead of $f0. This is a non-standard calling sequence, so any
function with a floating-point argument or return value called by code
compiled with -mno-fp-regs must also be compiled with that
option.
A typical use of this option is building a kernel that does not use, and hence need not save and restore, any floating-point registers.
-mieee
_IEEE_FP is defined
during compilation. The option is a shorthand for: `-D_IEEE_FP -mfp-trap-mode=su -mtrap-precision=i -mieee-conformant'. The resulting
code is less efficient but is able to correctly support denormalized
numbers and exceptional IEEE values such as not-a-number and plus/minus
infinity. Other Alpha compilers call this option
-ieee_with_no_inexact.
-mieee-with-inexact
-mieee' except the generated code also maintains the
IEEE inexact flag. Turning on this option causes the generated
code to implement fully-compliant IEEE math. The option is a shorthand
for `-D_IEEE_FP -D_IEEE_FP_INEXACT' plus the three following:
`-mieee-conformant',
`-mfp-trap-mode=sui',
and `-mtrap-precision=i'.
On some Alpha implementations the resulting code may execute
significantly slower than the code generated by default. Since there
is very little code that depends on the inexact flag, you should
normally not specify this option. Other Alpha compilers call this
option `-ieee_with_inexact'.
-mfp-trap-mode=trap mode
-fptm 'trap mode.
The trap mode can be set to one of four values:
n'
u'
n', underflow traps are enabled
as well.
su'
su', but the instructions are marked to be safe for software
completion (see Alpha architecture manual for details).
sui'
su', but inexact traps are enabled as well.
-mfp-rounding-mode=rounding mode
-fprm 'rounding mode. The rounding mode can be one
of:
n'
m'
c'
d'
d' corresponds to round towards plus infinity.
-mtrap-precision=trap precision
p'
f'
i'
Other Alpha compilers provide the equivalent options called
`-scope_safe' and `-resumption_safe'.
-mieee-conformant
-mtrap-precision=i' and either
`-mfp-trap-mode=su' or `-mfp-trap-mode=sui'. Its only effect
is to emit the line `.eflag 48' in the function prologue of the
generated assembly file. Under DEC Unix, this has the effect that
IEEE-conformant math library routines will be linked in.
-mbuild-constants
Use this option to require GCC to construct all integer constants using code, even if it takes more instructions (the maximum is six).
You would typically use this option to build a shared library dynamic loader. Itself a shared library, it must relocate itself in memory before it can find the variables and constants in its own data segment.
-malpha-as
-mgas
-malpha-as') or by the GNU assembler `-mgas'.
-mbwx
-mno-bwx
-mcix
-mno-cix
-mmax
-mno-max
-mcpu=' option or that
of the CPU on which GCC was built if none was specified.
-mcpu=cpu_type
EV' style name or the corresponding chip number. GCC
supports scheduling parameters for the EV4 and EV5 family of processors
and will choose the default values for the instruction set from
the processor you specify. If you do not specify a processor type,
GCC will default to the processor on which the compiler was built.
Supported values for cpu_type are
ev4'
21064'
ev5'
21164'
ev56'
21164a'
pca56'
21164pc'
21164PC'
ev6'
21264'
-mmemory-latency=time
Valid options for time are
number'
L1'
L2'
L3'
main'
Using and Porting the GNU Compiler Collection (GCC)
Packaging copyright © 1988-2000 OAR Corporation Context copyright by each document's author. See Free Software Foundation for information.