我目前正在将一个为 ARM 编写的编译器移植到另一个目标架构。ABI
我发现ARM存在两种不同的类型:APCS_ABI
和AAPCS_ABI
.
我用谷歌搜索并参考了 ARM 手册,但没有发现它们之间的区别。
然而,在编译器后端的实现中,这两种ABIs
处理方式不同,并且有不同的实现。
顺便说一下,APCS
是ARM Procedure Call Standard的缩写,是AAPCS
ARM Architecture的Procedure Call Standard的缩写。(他们的意思不是一样吗?)
APCS
那么和 和有什么区别AAPCS
呢?为什么定义了两种不同的类型ABIs
?