小编10s*_*nds的帖子

为什么我的具有基于 ARMv8 的 CPU 内核 (Exynos 7 Octa 7870) 的 Android 设备不支持 arm64-v8a ABI 或 64 位指令集?

我有一台 Android 设备(SAMSUNG Galaxy Tab Active2 SM-T397U),配有Exynos 7870 SoC。Exynos 7870使用 8 个实现Armv8-A 架构的Cortex A-53内核不过,它不支持arm64-v8 ABI,也不清楚它支持哪种指令集。

有多个 Android 应用程序可以提取设备的系统 CPU 和 SoC 信息。


使用这样一个应用程序(AIDA64),它将指令集列为“64位ARM”,但支持的ABI仅列为armeabi-v7a和armeabi(下面的屏幕截图)。

AIDA64 屏幕截图列出了 SoC 模型和支持的指令集


另一个应用程序 (DroidInfo) 将 CPU 架构列为“ARMv7-A”,指令集也列为“armeabi-v7a”和“armeabi”(下面的屏幕截图)

DroidInfo 列出 SoC 模型和支持的指令集的屏幕截图


我的印象是,实现 v8a 架构的 CPU 核心能够利用armeabi-v8a ABI 来实现最优化的性能。

如果是这种情况,我想了解为什么该 SoC 仅支持 armeabi-v7a ABI 而不是 arm64-v8a ABI。ABI 上的 Android 开发人员页面针对 arm64-v8a ABI 进行了说明:

“此 ABI 适用于支持 AArch64 的基于 ARMv8 的 CPU。” …

android arm cpu-architecture abi arm64

5
推荐指数
0
解决办法
4057
查看次数

标签 统计

abi ×1

android ×1

arm ×1

arm64 ×1

cpu-architecture ×1