3.17.10 FRV Options
-
-mgpr-32 -
Only use the first 32 general purpose registers.
-
-mgpr-64 -
Use all 64 general purpose registers.
-
-mfpr-32 -
Use only the first 32 floating point registers.
-
-mfpr-64 -
Use all 64 floating point registers
-
-mhard-float -
Use hardware instructions for floating point operations.
-
-msoft-float -
Use library routines for floating point operations.
-
-malloc-cc -
Dynamically allocate condition code registers.
-
-mfixed-cc -
Do not try to dynamically allocate condition code registers, only use
icc0andfcc0.
-
-mdword -
Change ABI to use double word insns.
-
-mno-dword -
Do not use double word instructions.
-
-mdouble -
Use floating point double instructions.
-
-mno-double -
Do not use floating point double instructions.
-
-mmedia -
Use media instructions.
-
-mno-media -
Do not use media instructions.
-
-mmuladd -
Use multiply and add/subtract instructions.
-
-mno-muladd -
Do not use multiply and add/subtract instructions.
-
-mfdpic -
Select the FDPIC ABI, that uses function descriptors to represent pointers to functions. Without any PIC/PIE-related options, it implies
-fPIE
. With
-fpic
or
-fpie
, it assumes GOT entries and small data are within a 12-bit range from the GOT base address; with
-fPIC
or
-fPIE
, GOT offsets are computed with 32 bits.
-
-minline-plt -
Enable inlining of PLT entries in function calls to functions that are not known to bind locally. It has no effect without
-mfdpic
. It's enabled by default if optimizing for speed and compiling for shared libraries (i.e.,
-fPIC
or
-fpic
), or when an optimization option such as
-O3
or above is present in the command line.
-
-mTLS -
Assume a large TLS segment when generating thread-local code.
-
-mtls -
Do not assume a large TLS segment when generating thread-local code.
-
-mgprel-ro -
Enable the use of
GPRELrelocations in the FDPIC ABI for data that is known to be in read-only sections. It's enabled by default, except for -fpic or -fpie : even though it may help make the global offset table smaller, it trades 1 instruction for 4. With -fPIC or -fPIE , it trades 3 instructions for 4, one of which may be shared by multiple symbols, and it avoids the need for a GOT entry for the referenced symbol, so it's more likely to be a win. If it is not, -mno-gprel-ro can be used to disable it.
-
-multilib-library-pic -
Link with the (library, not FD) pic libraries. It's implied by
-mlibrary-pic
, as well as by
-fPIC
and
-fpic
without
-mfdpic
. You should never have to use it explicitly.
-
-mlinked-fp -
Follow the EABI requirement of always creating a frame pointer whenever a stack frame is allocated. This option is enabled by default and can be disabled with
-mno-linked-fp
.
-
-mlong-calls -
Use indirect addressing to call functions outside the current compilation unit. This allows the functions to be placed anywhere within the 32-bit address space.
-
-malign-labels -
Try to align labels to an 8-byte boundary by inserting nops into the previous packet. This option only has an effect when VLIW packing is enabled. It doesn't create new packets; it merely adds nops to existing ones.
-
-mlibrary-pic -
Generate position-independent EABI code.
-
-macc-4 -
Use only the first four media accumulator registers.
-
-macc-8 -
Use all eight media accumulator registers.
-
-mpack -
Pack VLIW instructions.
-
-mno-pack -
Do not pack VLIW instructions.
-
-mno-eflags -
Do not mark ABI switches in e_flags.
-
-mcond-move -
Enable the use of conditional-move instructions (default).
This switch is mainly for debugging the compiler and will likely be removed in a future version.
-
-mno-cond-move -
Disable the use of conditional-move instructions.
This switch is mainly for debugging the compiler and will likely be removed in a future version.
-
-mscc -
Enable the use of conditional set instructions (default).
This switch is mainly for debugging the compiler and will likely be removed in a future version.
-
-mno-scc -
Disable the use of conditional set instructions.
This switch is mainly for debugging the compiler and will likely be removed in a future version.
-
-mcond-exec -
Enable the use of conditional execution (default).
This switch is mainly for debugging the compiler and will likely be removed in a future version.
-
-mno-cond-exec -
Disable the use of conditional execution.
This switch is mainly for debugging the compiler and will likely be removed in a future version.
-
-mvliw-branch -
Run a pass to pack branches into VLIW instructions (default).
This switch is mainly for debugging the compiler and will likely be removed in a future version.
-
-mno-vliw-branch -
Do not run a pass to pack branches into VLIW instructions.
This switch is mainly for debugging the compiler and will likely be removed in a future version.
-
-mmulti-cond-exec -
Enable optimization of
&&and||in conditional execution (default).This switch is mainly for debugging the compiler and will likely be removed in a future version.
-
-mno-multi-cond-exec -
Disable optimization of
&&and||in conditional execution.This switch is mainly for debugging the compiler and will likely be removed in a future version.
-
-mnested-cond-exec -
Enable nested conditional execution optimizations (default).
This switch is mainly for debugging the compiler and will likely be removed in a future version.
-
-mno-nested-cond-exec -
Disable nested conditional execution optimizations.
This switch is mainly for debugging the compiler and will likely be removed in a future version.
-
-moptimize-membar -
This switch removes redundant
membarinstructions from the compiler generated code. It is enabled by default.
-
-mno-optimize-membar -
This switch disables the automatic removal of redundant
membarinstructions from the generated code.
-
-mtomcat-stats -
Cause gas to print out tomcat statistics.
-
-mcpu=cpu - Select the processor type for which to generate code. Possible values are ` frv ', ` fr550 ', ` tomcat ', ` fr500 ', ` fr450 ', ` fr405 ', ` fr400 ', ` fr300 ' and ` simple '.