Using and Porting GNU CC
3.14.13: Intel 960 Options
These `-m
' options are defined for the Intel 960 implementations:
-mcpu type
-
Assume the defaults for the machine type cpu type for some of
the other options, including instruction scheduling, floating point
support, and addressing modes. The choices for cpu type are
`
ka
', `kb
', `mc
', `ca
', `cf
',
`sa
', and `sb
'.
The default is
`kb
'.
-mnumerics
-msoft-float
-
The `
-mnumerics
' option indicates that the processor does support
floating-point instructions. The `-msoft-float
' option indicates
that floating-point support should not be assumed.
-mleaf-procedures
-mno-leaf-procedures
-
Do (or do not) attempt to alter leaf procedures to be callable with the
bal
instruction as well as call
. This will result in more
efficient code for explicit calls when the bal
instruction can be
substituted by the assembler or linker, but less efficient code in other
cases, such as calls via function pointers, or using a linker that doesn't
support this optimization.
-mtail-call
-mno-tail-call
-
Do (or do not) make additional attempts (beyond those of the
machine-independent portions of the compiler) to optimize tail-recursive
calls into branches. You may not want to do this because the detection of
cases where this is not valid is not totally complete. The default is
`
-mno-tail-call
'.
-mcomplex-addr
-mno-complex-addr
-
Assume (or do not assume) that the use of a complex addressing mode is a
win on this implementation of the i960. Complex addressing modes may not
be worthwhile on the K-series, but they definitely are on the C-series.
The default is currently `
-mcomplex-addr
' for all processors except
the CB and CC.
-mcode-align
-mno-code-align
-
Align code to 8-byte boundaries for faster fetching (or don't bother).
Currently turned on by default for C-series implementations only.
-mic-compat
-mic2.0-compat
-mic3.0-compat
-
Enable compatibility with iC960 v2.0 or v3.0.
-masm-compat
-mintel-asm
-
Enable compatibility with the iC960 assembler.
-mstrict-align
-mno-strict-align
-
Do not permit (do permit) unaligned accesses.
-mold-align
-
Enable structure-alignment compatibility with Intel's gcc release version
1.3 (based on gcc 1.37). Currently this is buggy in that `
#pragma align 1
' is always assumed as well, and cannot be turned off.