在 SAMA5D2 (Cortex-A5) 上支持 float128 的 Buildroot

问题描述 投票:0回答:1

我正在尝试将使用 float128(之前在 arm64 上运行)的应用程序移植到具有 SAMA5D2 (Cortex-A5) 的开发板,但似乎找不到启用对 float 128 的支持的方法。 在google上查看后,似乎并非所有架构都支持float128,但是对于arm32(此处理器)我找不到明确的答案,希望它支持它。 我的问题是,我需要启用哪些标志/包才能构建支持 float128 的工具链?

我已经尝试过硬浮点策略和软浮点策略(在目标选项上)但没有成功。 我发现最接近的补救方法是使用 boost 多精度库,但需要进行相当多的更改,并且希望不必采取这条路线

gcc buildroot
1个回答
0
投票

GCC 在不支持 128 位浮点的硬件上没有模拟。 ARM32 没有 128 位浮点运算指令,因此 GCC 也不提供。 float128 的 GCC 文档 没有提及 ARM,因此这应该是一个提示,并且 您可以向编译器检查

long double
是 8 个字节

您需要找到一个在软件中模拟 128 位浮点的库。但它会非常昂贵,以至于多精度库(如 gmp)可能会提供更好的性能。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.