ieee754优化

Pep*_*lac 1 c optimization ieee-754

是否__ieee754_pow()可以使用-O选项或优化功能ffast-math.
是呼吁pow将改变呼吁cbrt,如果我们使用NEX代码:

double test (double x)
{
  return __ieee754_pow(x, 2./3.);
}
Run Code Online (Sandbox Code Playgroud)

如果答案是否定的,请解释原因.

R..*_*R.. 5

编译器无法知道语义__ieee754_pow,即无法知道它正在做什么"pow"操作.这是因为__ieee754_pow没有在任何地方指定名称; 它是系统数学库的内部实现细节.在任何情况下,你根本不应该使用它,甚至不应该知道它存在,除非你正在调试libm,所以我不明白这个问题的目的.

  • 不要射击信使.7.1.3:"所有以下划线开头的标识符以及大写字母或另一个下划线始终保留用于任何用途." 和"如果程序在保留它的上下文中声明或定义标识符(7.1.4允许的除外),或者将保留标识符定义为宏名称,则行为是未定义的." (5认同)