c++ - GNU ARM C++ 中未定义 __fp16 类型

标签 c++ gcc arm half-precision-float

我试图在使用 GNU ARM C++ 编译器编译的程序中使用类型 __fp16 (半精度 float ),但是每当我尝试声明此类型的变量时,我都会收到错误消息 __fp16未声明。我认为这是由于我缺少一些头文件而引起的,但我无法找到它可能位于哪个头文件上的任何数据。有谁知道它的定义在哪里/我应该包括什么?

最佳答案

是的,目标支持半精度运算;它不支持 double 。

我收到了 GNU 团队的回复。解决办法是添加编译命令-mfp16-format=ieee。这将 __fp16 定义为 ieee 标准(请参阅 https://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html )

关于c++ - GNU ARM C++ 中未定义 __fp16 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31242106/

相关文章:

c++ - 海湾合作委员会错误 "expected ' )' before ' [' token"

c++ - LabVIEW 和 C++ DLL

c++ - 如何为数据类型创建捕获

c++ - 模板参数列表太少问题

c - 如何编译C程序?

java - 片段着色器行为异常(测试网格)

c++ - 在并行区域内使用 "throw exception"可以吗?

assembly - 为什么 ARM7 上 MUL 表达式的前两个参数不能相同?

c - ARM 平台上没有来自 SIGABRT 信号的回溯?

c - 线程还是进程?拥有与数据无关的任务,使用什么更好?