scratch寄存器作用说明
2012-09-27 21:17
1301 查看
ARM架构中使用R12作为子程序间的scratch寄存器 (ATPCS中规定)。
可以将R12 用于保存SP,在函数返回时使用该寄存器出栈,记作ip。
或者又比如:
Uboot程序中主程序调用 cpu_init_crit函数,在这个cpu_init_crit函数中有下面的代码:
mov ip, lr
bl lowlevel_init
mov lr, ip
mov pc, lr
这个代码在调用lowlevel_init函数之前,先将lr存储在R12,之后在lowlevel_init函数调用返回之后使用mov lr,ip将之前保存的返回地址再一次存储到lr寄存器。
可以将R12 用于保存SP,在函数返回时使用该寄存器出栈,记作ip。
或者又比如:
Uboot程序中主程序调用 cpu_init_crit函数,在这个cpu_init_crit函数中有下面的代码:
mov ip, lr
bl lowlevel_init
mov lr, ip
mov pc, lr
这个代码在调用lowlevel_init函数之前,先将lr存储在R12,之后在lowlevel_init函数调用返回之后使用mov lr,ip将之前保存的返回地址再一次存储到lr寄存器。
相关文章推荐
- Oracle 11gR2 Patchset 不同文件作用 说明
- Oracle 11gR2 Patchset 不同文件作用 说明
- display有哪些值?说明他们的作用?
- java学习(二)classpath的作用说明
- 详细说明JDK环境变量中dt.jar、tools.jar等变量值的作用(结合ClassLoader)
- Tomcat下的各个目录(文件)的作用说明
- Oracle中password file的作用及说明
- 事务管理的理解,事务管理的作用举例说明
- Windows API 类别详细说明,函数的作用
- sealed在C#中的作用说明
- android有关Home按键的TYPE_KEYGUARD作用的仿照及其流程说明
- SAP SD 定价过程的16个字段的作用说明
- 请说明Java中字符'\'的含义,有什么作用?
- 8-5 以下面四个在读写器作用范围内的电子标签为例说明二进制树型搜索算法选择电子标签的迭代过程。
- SQLserver 2005文件和文件组的作用说明
- VS2005中Ajax控件作用说明
- Ibatis.Net各类的作用说明(三)
- hadoop 二次排序 group函数的作用的说明
- ssh框架jar包作用说明
- 关于C#泛型作用的简单说明