我知道“目标”是二进制文件所在的机器。
但是因为手臂有很多芯片,所以gcc中有一个-march选项。
今天,有Aarch64和Aarch64工具链。 Gcc没有做出像-march = Aarch64
这样的新选项当我找到这个帖子(https://gcc.gnu.org/ml/gcc-help/2014-10/msg00143.html)时,我变得更加困惑。
目标定义是什么?为什么gcc没有使用arm-none-linux-eabi -march = Aarch64但是制作了Aarch64-none-linux-eabi?
答案 0 :(得分:1)
当核心处于AArch64状态时使用的A64指令集不是现有A32 / T32指令集的扩展,而是一个全新的指令集。因此,虽然从技术上讲,可能已经将AArch32和AArch64指令集填充到相同的gcc编译器二进制文件中,但gcc开发人员认为这不值得。
可能还会看到this answer了解更多详情。