SDKZSPF LSI, SDKZSPF Datasheet - Page 69

no-image

SDKZSPF

Manufacturer Part Number
SDKZSPF
Description
Manufacturer
LSI
Datasheet

Specifications of SDKZSPF

Lead Free Status / Rohs Status
Supplier Unconfirmed
3.2.7.2 zdcc
void callee(int i1, long l1, int i2, long l2, long l3, long *p1, long l4, long l5,
long l6) {
}
void caller() {
}
long a=7;
callee(1,2,3,4,5,&a,7,8,9);
global = l5+l6;
i1 - r4
l1 - r7r6
i2 - r5
l2 - r3r2
l3 - a0
p1 - a1
l4 - a6
l5 - stack+1
l6 - stack+3
mov
std
mov
mov
std
std
mov
mov
mov
mov
mov
mov
mov
mov
mov
add
call
a1, 8
a0, 7
a1, 9
r6, 2
r7, 0
r2, 4
r3, 0
a0, 5
a1, a7, 1
a0, a7, 5
a1, a7, 3
a6, a0
r4, 0x1
r5, 0x3
a1, a7
a1, 5
_callee
The following C code:
The arguments are passed in the following locations:
The above code produces the following calling code sequence:
The function callee retrieves l5 and l6 from caller’s stack space by
loading the values from caller’s outgoing argument space. The first
Compiler Conventions
Copyright © 1999-2003 by LSI Logic Corporation. All rights reserved.
!l5, fifth 32-bit non-pointer parameter passed on stack
!l6, sixth 32-bit non-pointer parameter passed on stack
!l4, fourth 32-bit non-pointer parameter passed in a6
!i1, first 16-bit parameter passed in r4
!l1, first 32-bit non-pointer parameter passed in r7r6
!i2, second 16-bit parameter passed in r5
!l2, second 32-bit non-pointer parameter passed in r3r2
!l3, third 32-bit non-pointer parameter passed in a0
!p1, first pointer parameter passed in a1
3-15