三星soc平臺Exynos4412平臺裸機開發介紹(四)之APCS規則介紹

APCS規則介紹

1. 寄存器命名

1.1 r0到r3命名爲a1到a4

  • r0 ====> a1
  • r3 ====> a4

1.2 r4到r11命名爲v1到v8

  • r4 ====> v1
  • r11 ====> v8

1.3 r11爲fp、r12爲ip、r13爲sp、r14爲lr、r15爲pc

  • r11 ====> fp
  • r12 ====> ip
  • r13 ====> sp
  • r14 ====> lr
  • r15 ====> pc

2. 函數傳參

  • 參數小於4個用r0-r4進行傳參
  • 參數大於4個,使用棧進行傳遞
  • 規定r0用來接收返回值

3. 棧的使用規則

ARM規定,棧的使用規則爲滿減棧
入棧:stmfd sp!,{r0-r12,lr}
出棧:ldmfd sp!,{r0-r12,pc}^

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章