beautypg.com

Zilog Z8F0130 User Manual

Page 102

background image

Using the Integrated Development Environment

UM013037-1212

78

Zilog Developer Studio II – Z8 Encore!
User Manual

and calls made with function pointers cannot be used with static frames, except by the
selective application of the

reentrant

keyword. To learn more about the trade-offs

between static and dynamic frames, see the

Call Frames

section on page 200.

Parameter Passing

When you select

Memory

, the parameters are placed on the stack for dynamic frame func-

tions. For static frame functions, the parameters are placed in static memory (register file).
See the

Function Call Mechanism: Dynamic Frame

section on page 215 and the

Function

Call Mechanism: Static Frame

section on page 216 for further details.

When you select

Register

, the working registers R8-R13 are used to place the scalar

parameters of function. The rest of the parameters are placed in memory. See the

Function

Call Mechanism: Register Parameter Passing

section on page 218 for further details.

In most cases, selecting

Register

results in a smaller overall code size for your applica-

tion, but this is not guaranteed; check your results using the map file to make certain. Also,
if your application uses both C and assembly code, and the assembly code accesses any
parameters to a C function, you must make sure that the location of those C parameters
that is assumed in the assembly code continues to match the option you have selected for
Parameter Passing. See the

Calling Conventions

section on page 215 for more details.

C: Listing Files Page

For Assembly Only projects, the Listing Files page is not available.

The options in the Listing Files page are described in this section.

Note: