tune的参数有这些:
9694 `-mcpu=NAME'
9695 This specifies the name of the target ARM processor. GCC uses
9696 this name to determine what kind of instructions it can emit when
9697 generating assembly code. Permissible names are: `arm2', `arm250',
9698 `arm3', `arm6', `arm60', `arm600', `arm610', `arm620', `arm7',
9699 `arm7m', `arm7d', `arm7dm', `arm7di', `arm7dmi', `arm70', `arm700',
9700 `arm700i', `arm710', `arm710c', `arm7100', `arm720', `arm7500',
9701 `arm7500fe', `arm7tdmi', `arm7tdmi-s', `arm710t', `arm720t',
9702 `arm740t', `strongarm', `strongarm110', `strongarm1100',
9703 `strongarm1110', `arm8', `arm810', `arm9', `arm9e', `arm920',
9704 `arm920t', `arm922t', `arm946e-s', `arm966e-s', `arm968e-s',
9705 `arm926ej-s', `arm940t', `arm9tdmi', `arm10tdmi', `arm1020t',
9706 `arm1026ej-s', `arm10e', `arm1020e', `arm1022e', `arm1136j-s',
9707 `arm1136jf-s', `mpcore', `mpcorenovfp', `arm1156t2-s',
9708 `arm1156t2f-s', `arm1176jz-s', `arm1176jzf-s', `cortex-a5',
9709 `cortex-a8', `cortex-a9', `cortex-r4', `cortex-r4f', `cortex-m3',
9710 `cortex-m1', `cortex-m0', `xscale', `iwmmxt', `iwmmxt2', `ep9312'.
arch的参数:
9722 `-march=NAME'
9723 This specifies the name of the target ARM architecture. GCC uses
9724 this name to determine what kind of instructions it can emit when
9725 generating assembly code. This option can be used in conjunction
9726 with or instead of the `-mcpu=' option. Permissible names are:
9727 `armv2', `armv2a', `armv3', `armv3m', `armv4', `armv4t', `armv5',
9728 `armv5t', `armv5e', `armv5te', `armv6', `armv6j', `armv6t2',
9729 `armv6z', `armv6zk', `armv6-m', `armv7', `armv7-a', `armv7-r',
9730 `armv7-m', `iwmmxt', `iwmmxt2', `ep9312'.
vfp似乎也分很多类
9732 `-mfpu=NAME'
9733 `-mfpe=NUMBER'
9734 `-mfp=NUMBER'
9735 This specifies what floating point hardware (or hardware
9736 emulation) is available on the target. Permissible names are:
9737 `fpa', `fpe2', `fpe3', `maverick', `vfp', `vfpv3', `vfpv3-fp16',
9738 `vfpv3-d16', `vfpv3-d16-fp16', `vfpv3xd', `vfpv3xd-fp16', `neon',
9739 `neon-fp16', `vfpv4', `vfpv4-d16', `fpv4-sp-d16' and `neon-vfpv4'.
9740 `-mfp' and `-mfpe' are synonyms for `-mfpu'=`fpe'NUMBER, for
9741 compatibility with older versions of GCC.
Full software floating point - compiler should refuse to generate a real FPU instruction and -mfpu= is ignored.
* FPU operations are emulated by the compiler
* Function calls are generated to pass FP arguments (float, double) in integer registers (one for float, a pair of registers for double)
"softfp"
*
Hardware floating point using the soft floating point ABI
* To reiterate, function calls are generated to pass FP arguments in integer registers
*
Compiler can make smart choices about when and if it generates emulated or real FPU instructions depending on chosen FPU type (-mfpu=)
*