Calling C Functions from Forth and Vice Versa

Procedure Call Standard for the ARM Architecture AAPCS

https://community.arm.com/developer/ip-products/processors/b/processors-ip-blog/posts/on-the-aapcs-with-an-application-to-efficient-parameter-passing

Register AAPCS PurposeSorted ascending MECRISP Forth Purpose
r0 Argument, result, scratch register 1 Scratch
r1 Argument, result, scratch register 2 Scratch
r2 Argument, scratch register 3 Scratch
r3 Argument, scratch register 4 Scratch
r12 Intra-procedure-call scratch register  
r14 Link register (LR) Link register (LR)
r9 Platform register (usage defined by platform in use)  
r15 Program counter (PC) Program counter (PC)
r13 Stack pointer (SP) Stack pointer (SP)
r4 Variable register 1  
r5 Variable register 2  
r6 Variable register 3 Top Of Stack TOS
r7 Variable register 4 Data Stack
r8 Variable register 5  
r10 Variable register 7  
r11 Variable register 8  

-- Peter Schmid - 2020-07-13

Comments

Edit | Attach | Watch | Print version | History: r7 | r4 < r3 < r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r1 - 2020-07-13 - PeterSchmid
 
  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback