marvell gcc compiler option, 2009q1-18 release version
2010/07/21
The document describes the command line options of GCC created by Marvell in addition to original options.
2009q1-18 release version
-mcpu=marvell-f
It's the default setting for CPU selection for Marvell's dual-issue processor.
Do not specify -mcpu=name or -mtune=name to other processor unless you intend
to generate code for that target.
[##_kaAmo_##]
Note that the gcc will pass -mcpu=marvell-f to assembler, so please use the
assembler from the binutils come with our package.
Other supported Marvell cpu names are:
marvell-fv6
marvell-fv6t2
marvell-fv7
-mmarvell-div
Generate hardware integer division instructions supported by some Marvell cores.
-mforce-word-length
Force the move length to be word unit
-mtry-ldrd-strd
Use LDRD and STRD instead of LDM and STM as possible
-mtune-prologue-epilogue
Tune function prologue and epilogue as possible
-mmrvl-min-array-align=
Use -mmrvl-min-array-align=<number> to set the minimal array alignment to <number>byte.
It also set the constant string alignment to double word.
-mmrvl-min-pointer-align
Set the minimal pointer alignment to be the same as -mmrvl-set-min-array-align.
This should be used when -mmrvl-min-array-align is set
-mmrvl-tune-mla-cost
Tune RTX costs to generate MLA insn by Marvell
-mexpand-strcmp
Expand mrvl built-in strcmp (8-byte alignment version), enabled only when -mmrvl-min-array-align >= 8 is set
-mmrvl-no-ldmpc
To prevent ldm {pc} instructions in function epilogue, use ldm {lr}; bx lr instead.
i
Support IWMMXT insns in Marvell processors
-mno-cond-exec
Do not generate conditional execution instructions for Marvell processors
-mmrvl-use-unsupported-cpu
Use Marvell unsupported CPU names
-fipa-reguse
Interprocedural register allocation
-fsimple-ipaa
Try-run the simple interprocedural argument analysis for &var argument.
-funsafe-rtl-peel-loop
Try to remove the cmp and bx insn when peeling loops in rtl level
-fforce-unroll-loops
Try to unroll loops with <= 2 branches inside it
-ftree-vectorize -mmrvl-use-iwmmxt
Turn on auto vectorization for iwmmxt. (Should be used with -O1, -O2 or -O3)
-ftree-vectorize -mmrvl-use-iwmmxt -ftree-vectorizer-verbose=3 (or 4, 5, 6, 7)
Turn on auto vectorization for iwmmxt with verbose diagnositc messages. (Should be used with -O1, -O2 or -O3)
-Wcoverage-mismatch
Warn instead of error in case profiles in -fprofile-use do not match
-fprofile-correction
Enable correction of flow inconsistent profile data input
[t:/] is not "technology - root". dawnsea, rss