компилятор C и C ++ проекта GNU (GNU project C and C++ compiler)
Параметры подробно (Options detail)
CRIS
These options are defined specifically for the CRIS ports.
-march=
architecture-type
-mcpu=
architecture-type
Generate code for the specified architecture. The choices
for architecture-type are v3
, v8
and v10
for respectively
ETRAX 4, ETRAX 100, and ETRAX 100 LX. Default is v0
except
for cris-axis-linux-gnu, where the default is v10
.
-mtune=
architecture-type
Tune to architecture-type everything applicable about the
generated code, except for the ABI and the set of available
instructions. The choices for architecture-type are the same
as for -march=
architecture-type.
-mmax-stack-frame=
n
Warn when the stack frame of a function exceeds n bytes.
-metrax4
-metrax100
The options -metrax4
and -metrax100
are synonyms for
-march=v3
and -march=v8
respectively.
-mmul-bug-workaround
-mno-mul-bug-workaround
Work around a bug in the "muls" and "mulu" instructions for
CPU models where it applies. This option is active by
default.
-mpdebug
Enable CRIS-specific verbose debug-related information in the
assembly code. This option also has the effect of turning
off the #NO_APP
formatted-code indicator to the assembler at
the beginning of the assembly file.
-mcc-init
Do not use condition-code results from previous instruction;
always emit compare and test instructions before use of
condition codes.
-mno-side-effects
Do not emit instructions with side effects in addressing
modes other than post-increment.
-mstack-align
-mno-stack-align
-mdata-align
-mno-data-align
-mconst-align
-mno-const-align
These options (no-
options) arrange (eliminate arrangements)
for the stack frame, individual data and constants to be
aligned for the maximum single data access size for the
chosen CPU model. The default is to arrange for 32-bit
alignment. ABI details such as structure layout are not
affected by these options.
-m32-bit
-m16-bit
-m8-bit
Similar to the stack- data- and const-align options above,
these options arrange for stack frame, writable data and
constants to all be 32-bit, 16-bit or 8-bit aligned. The
default is 32-bit alignment.
-mno-prologue-epilogue
-mprologue-epilogue
With -mno-prologue-epilogue
, the normal function prologue and
epilogue which set up the stack frame are omitted and no
return instructions or return sequences are generated in the
code. Use this option only together with visual inspection
of the compiled code: no warnings or errors are generated
when call-saved registers must be saved, or storage for local
variables needs to be allocated.
-mno-gotplt
-mgotplt
With -fpic
and -fPIC
, don't generate (do generate)
instruction sequences that load addresses for functions from
the PLT part of the GOT rather than (traditional on other
architectures) calls to the PLT. The default is -mgotplt
.
-melf
Legacy no-op option only recognized with the cris-axis-elf
and cris-axis-linux-gnu targets.
-mlinux
Legacy no-op option only recognized with the cris-axis-linux-
gnu target.
-sim
This option, recognized for the cris-axis-elf, arranges to
link with input-output functions from a simulator library.
Code, initialized data and zero-initialized data are
allocated consecutively.
-sim2
Like -sim
, but pass linker options to locate initialized data
at 0x40000000 and zero-initialized data at 0x80000000.