cortex-m - gcc CortexM4 单精度 FPU:为什么使用例如。'powf' 双精度函数,例如 '__extendsfdf2' 或 '__aeabi_ddiv'
问题描述
在使用 GCC 编译列表文件检查 STM32F4 Cortex M4 时,我想知道为什么链接了许多双精度浮点函数,例如:
__aeabi_drsub
__aeabi_dsub
__subdf3
__aeabi_dadd
__adddf3
__floatunsidf
__aeabi_ui2d
__floatsidf
__aeabi_i2d
__aeabi_f2d
__extendsfdf2
__floatundidf
__aeabi_ul2d
__floatdidf
__aeabi_l2d
我使用标志来避免任何双重计算:-fsingle-precision-constant -Wdouble-promotion
我在每个常量后面添加了“f”,例如“2.3f”
有没有可能避免这种情况?
解决方案
推荐阅读
- python - 制作新 DataFrame 时 Pandas 中的倾斜 DataFrame
- terraform - terraform 文件中本地人的参考地图
- javascript - Javascript如何在单击按钮时跟踪事件
- xamarin.forms - 在 ios 中杀死应用程序实际上不会从操作系统中杀死
- asp.net - 添加到 JSON 对象的 ASP.NET (VB) 数组/列表项正在复制
- sql - SQL Server 查询不在另一个表中的位置
- ruby-on-rails - ajax 在 Rails 5 中不起作用
- java - 在 Java 中使用线程时获得两个打开的会话
- c# - 为什么 Mono 运行简单方法的速度较慢,而 RyuJIT 运行速度明显更快?
- aem - AEM 6 工作流程清除何时运行?