The first part of the stack frame is the non-volatile register save area.
堆栈帧的第一个部分是非易失性寄存器保存区。
The link register save area is different from the other parts of the ABI.
链接寄存器保存区与 ABI的其他部分不同。
As I mentioned earlier, LR_OFFSET is the offset from the end of the stack to the link register save area.
正如我先前提到的,LR_OFFSET是堆栈末端到链接寄存器保存区的偏移量。
So, in this function, we are using the back chain pointer, the link register save area, and one local variable.
所以,在这个函数中,我们使用了回链指针、链接寄存器保存区和一个本地变量。
The link register save area holds the link register contents of the function being called, rather than for the current function.
链接寄存器保存区存有被调用函数(而非当前函数)的链接寄存器内容。
The local variable space is used as a general storage area for the function, and the register save area is used to save the values of non-volatile registers that the function USES.
本地变量空间用作该函数的通用存储空间,寄存器保存区用于保存函数所使用的非可变寄存器的值。
Functions must assume that for the first eight parameters, they are only passed by register, but they will still have a save area available if they need to be stored by the program.
函数必须假设对于自己的前8个参数,它们只会通过寄存器传递,但是如果需要在程序中对参数进行存储,就仍然需要一个可用的保存区。
Functions must assume that for the first eight parameters, they are only passed by register, but they will still have a save area available if they need to be stored by the program.
函数必须假设对于自己的前8个参数,它们只会通过寄存器传递,但是如果需要在程序中对参数进行存储,就仍然需要一个可用的保存区。
应用推荐