Skip to content

编译器选项:-fpmode


选择更快(精度较低)或更慢(精度更高)的浮点数学运算。

语法

-fpmode <mode>

参数

mode

浮点模式:FAST | PRECISE

描述

-fpmode 编译器选项指定浮点数学运算中速度和精度哪个更重要。如果未指定此选项,默认为 -fpmode PRECISE

-fpmode FAST 将为某些浮点运算生成更快、精度较低的指令。

-fpmode PRECISE 将生成标准浮点指令,以所选浮点单元的默认速度和精度运行。

目前,使用 -fpmode FAST 时行为不同的浮点运算仅包括:sin()cos()、倒数和倒数平方根,这些都必须对 Single 精度值进行运算。

为了规范化 NaN(非数字)的处理以在工具链和平台间获得一致的结果,进行了一些更改,但这需要额外的代码,因此 -fpmode FAST 的目的是允许用户在需要时跳过那些额外的代码生成(用户自行承担跨平台工作或不工作的责任)。

注意:

  • 对于 x86 和 x86_64,默认为 -fpu x87 -fpmode PRECISE

  • -fpmode FAST|PRECISE 仅控制 fbc 的代码生成

  • 要使用 -gen gcc 后端进行优化,请使用 -Wc -ffast-math

版本

  • 在 fbc-1.20.0 之前,如果 -fpmode FAST-fpu SSE 以外的选项一起使用,会显示错误消息。

另请参阅

返回 目录

基于 FreeBASIC 官方文档翻译 如有侵权请联系我们删除
FreeBASIC 是开源项目,与微软公司无隶属关系