SW006012 Microchip Technology, SW006012 Datasheet - Page 84

C COMPILER FOR DSPIC30F FAMILY

SW006012

Manufacturer Part Number
SW006012
Description
C COMPILER FOR DSPIC30F FAMILY
Manufacturer
Microchip Technology
Type
MPLAB® C30 Compilerr
Series
PIC24 & DsPICr
Datasheets

Specifications of SW006012

Supported Families
PIC24, DsPIC30F And DsPIC33F
Core Architecture
PIC, DsPIC
Kit Contents
Software And Docs
Mcu Supported Families
PIC24 MCUs And DsPIC DSCs
Tool Type
Compiler
Processor Series
PIC24, dsPIC
Lead Free Status / RoHS Status
Not applicable / Not applicable
For Use With/related Products
dsPIC30F
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
MPLAB
4.13
DS51284F-page 78
REGISTER CONVENTIONS
®
C30 User’s Guide
4.12.3
The compiler arranges for registers W8-W15 to be preserved across ordinary function
calls. Registers W0-W7 are available as scratch registers. For interrupt functions, the
compiler arranges for all necessary registers to be preserved, namely W0-W15 and
RCOUNT.
Specific registers play specific roles in the C runtime environment. Register variables
use one or more working registers, as shown in Table 4-4.
TABLE 4-4:
char, signed char, unsigned char W0-W13, and W14 if not used as a Frame
short, signed short, unsigned
short
int, signed int,unsigned int
void * (or any pointer)
long, signed long, unsigned long A pair of contiguous registers, the first of which
long long, signed long long,
unsigned long long
float
double*
long double
* double is equivalent to long double if -fno-short-double is used.
Preserving Registers Across Function Calls
REGISTER CONVENTIONS
Variable
Pointer.
W0-W13, and W14 if not used as a Frame
Pointer.
W0-W13, and W14 if not used as a Frame
Pointer.
W0-W13, and W14 if not used as a Frame
Pointer.
is a register from the set {W0, W2, W4, W6, W8,
W10, W12}. The lower-numbered register
contains the least significant 16-bits of the value.
A quadruplet of contiguous registers, the first of
which is a register from the set {W0, W4, W8}.
The lower-numbered register contains the least
significant 16-bits of the value. Successively
higher-numbered registers contain successively
more significant bits.
A pair of contiguous registers, the first of which
is a register from the set {W0, W2, W4, W6, W8,
W10, W12}. The lower-numbered register
contains the least significant 16-bits of the
significant.
A pair of contiguous registers, the first of which
is a register from the set {W0, W2, W4, W6, W8,
W10, W12}. The lower-numbered register
contains the least significant 16-bits of the
significant.
A quadruplet of contiguous registers, the first of
which is a register from the set {W0, W4, W8}.
The lower-numbered register contains the least
significant 16-bits of the significant.
Working Register
© 2007 Microchip Technology Inc.

Related parts for SW006012