如果我们为-mfpu定义了错误的标志会怎么样?

时间:2017-11-14 08:58:15

标签: gcc simd

例如,如果我有一个芯片-mcpu=cortex-a7,我应该定义-mfpu=neon-vfpv4,而不是-mfpu=neon。但是,我想知道如果我在Cortex-A7上定义 - mfpu=neon会发生什么?它会忽略标志而不做SIMD,或者它会用错误的标志做什么?

2 个答案:

答案 0 :(得分:2)

它将使用较旧的一组NEON指令(-mfpu=neon用于选择Cortex-A8内核上可用的NEON指令)。例如,它不包括VFMA指令。

请注意,从GCC 8(仍处于开发阶段),您将能够使用-mfpu=auto或完全省略-mfpu并让编译器为{选择最佳FPU设置您选择的{1}}选项

答案 1 :(得分:0)

如果您这样做,编译器将不会使用VFPv4指令并可能生成次优代码。