Difference: CallingCFunction (2 vs. 3)

Revision 32020-07-17 - PeterSchmid

Line: 1 to 1
 
META TOPICPARENT name="WebHome"

Calling C Functions from Forth and Vice Versa

Line: 7 to 7
  https://community.arm.com/developer/ip-products/processors/b/processors-ip-blog/posts/on-the-aapcs-with-an-application-to-efficient-parameter-passing
Changed:
<
<
Register AAPCS Purpose
<-- -->
Sorted 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 unused
r14 Link register (LR) Link register (LR)
r9 Platform register (usage defined by platform in use) unused
r15 Program counter (PC) Program counter (PC)
r13 Stack pointer (SP) Stack pointer (SP)
r4 Variable register 1 DO Index
r5 Variable register 2 DO Limit
r6 Variable register 3 Top Of Stack TOS
r7 Variable register 4 Data stack pointer
r8 Variable register 5 unused
r10 Variable register 7 unused
r11 Variable register 8 unused
>
>
Register AAPCS Purpose MECRISP Forth Purpose ISR Stacking
xPSR Processor Status Register, Flags Flags 1
r0 Argument, result, scratch register 1 Scratch 2
r1 Argument, result, scratch register 2 Scratch 3
r2 Argument, scratch register 3 Scratch 4
r3 Argument, scratch register 4 Scratch 5
r4 Variable register 1 DO Index  
r5 Variable register 2 DO Limit  
r6 Variable register 3 Top Of Stack TOS  
r7 Variable register 4 Data stack pointer  
r8 Variable register 5 unused  
r9 Platform register (usage defined by platform in use) unused  
r10 Variable register 7 unused  
r11 Variable register 8 unused  
r12 Intra-procedure-call scratch register unused 6
r13 Stack pointer (SP) Stack pointer (SP)  
r14 Link register (LR) Link register (LR) 7
r15 Program counter (PC) Program counter (PC) 0
 

VFP Register Usage

The VFP-v2 co-processor has 32 single-precision registers, s0-s31, which may also be accessed as 16
 
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