manpagez: man pages & more
info gcc
Home | html | info | man
[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.17.26 SH Options

These ‘-m’ options are defined for the SH implementations:

@gcctabopt -m1

Generate code for the SH1.

@gcctabopt -m2

Generate code for the SH2.

@gcctabopt -m2e

Generate code for the SH2e.

@gcctabopt -m3

Generate code for the SH3.

@gcctabopt -m3e

Generate code for the SH3e.

@gcctabopt -m4-nofpu

Generate code for the SH4 without a floating-point unit.

@gcctabopt -m4-single-only

Generate code for the SH4 with a floating-point unit that only supports single-precision arithmetic.

@gcctabopt -m4-single

Generate code for the SH4 assuming the floating-point unit is in single-precision mode by default.

@gcctabopt -m4

Generate code for the SH4.

@gcctabopt -m4a-nofpu

Generate code for the SH4al-dsp, or for a SH4a in such a way that the floating-point unit is not used.

@gcctabopt -m4a-single-only

Generate code for the SH4a, in such a way that no double-precision floating point operations are used.

@gcctabopt -m4a-single

Generate code for the SH4a assuming the floating-point unit is in single-precision mode by default.

@gcctabopt -m4a

Generate code for the SH4a.

@gcctabopt -m4al

Same as ‘-m4a-nofpu’, except that it implicitly passes ‘-dsp’ to the assembler. GCC doesn't generate any DSP instructions at the moment.

@gcctabopt -mb

Compile code for the processor in big endian mode.

@gcctabopt -ml

Compile code for the processor in little endian mode.

@gcctabopt -mdalign

Align doubles at 64-bit boundaries. Note that this changes the calling conventions, and thus some functions from the standard C library will not work unless you recompile it first with ‘-mdalign’.

@gcctabopt -mrelax

Shorten some address references at link time, when possible; uses the linker option ‘-relax’.

@gcctabopt -mbigtable

Use 32-bit offsets in switch tables. The default is to use 16-bit offsets.

@gcctabopt -mfmovd

Enable the use of the instruction fmovd.

@gcctabopt -mhitachi

Comply with the calling conventions defined by Renesas.

@gcctabopt -mrenesas

Comply with the calling conventions defined by Renesas.

@gcctabopt -mno-renesas

Comply with the calling conventions defined for GCC before the Renesas conventions were available. This option is the default for all targets of the SH toolchain except for ‘sh-symbianelf’.

@gcctabopt -mnomacsave

Mark the MAC register as call-clobbered, even if ‘-mhitachi’ is given.

@gcctabopt -mieee

Increase IEEE-compliance of floating-point code.

@gcctabopt -misize

Dump instruction size and location in the assembly code.

@gcctabopt -mpadstruct

This option is deprecated. It pads structures to multiple of 4 bytes, which is incompatible with the SH ABI.

@gcctabopt -mspace

Optimize for space instead of speed. Implied by ‘-Os’.

@gcctabopt -mprefergot

When generating position-independent code, emit function calls using the Global Offset Table instead of the Procedure Linkage Table.

@gcctabopt -musermode

Generate a library function call to invalidate instruction cache entries, after fixing up a trampoline. This library function call doesn't assume it can write to the whole memory address space. This is the default when the target is sh-*-linux*.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]