Keil Logo

USERSTACKDPP3 Compiler Directive

Abbreviation

U3

Arguments

None.

Default

None.

µVision

Options — C166 — Misc Controls.

Description

The USERSTACKDPP3 directive changes compiler assumptions about accesses to the user stack area and affects the address generation of far, huge, and xhuge pointers. By default, the user stack is located in the NDATA memory class and is accessed using DPP2.

The USERSTACKDPP3 directive allows you to locate the user stack in the IDATA or SDATA memory classes which are accessed using DPP3. When relocating the user stack, some changes must be made to the definition of the ?C_USERSTACK section in the startup code (STARTUP.A66 or START167.A66) as follows.

?C_USERSTACK   SECTION   DATA PUBLIC 'IDATA'

or

?C_USERSTACK   SECTION   DATA PUBLIC 'SDATA'

In addition, you must change the following line:

MOV     R0,#DPP2:?C_USERSTKTOP

to:

MOV     R0,#DPP3:?C_USERSTKTOP
Example
C166 myfile.c USERSTACKDPP3
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.