SW006012 Microchip Technology, SW006012 Datasheet - Page 56

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
DS51284F-page 50
®
C30 User’s Guide
TABLE 3-9:
Options of the form -fflag specify machine-independent flags. Most flags have both
positive and negative forms; the negative form of -ffoo would be -fno-foo. In the
table below, only one of the forms is listed (the one that is not the default.)
TABLE 3-10:
-fthread-jumps
-funroll-loops
-funroll-all-loops
-fforce-mem
-finline-functions
-finline-limit=n
Option
Option
SPECIFIC OPTIMIZATION OPTIONS (CONTINUED)
MACHINE-INDEPENDENT OPTIMIZATION OPTIONS
Perform optimizations where a check is made to see if a jump
branches to a location where another comparison subsumed
by the first is found. If so, the first branch is redirected to either
the destination of the second branch or a point immediately
following it, depending on whether the condition is known to
be true or false.
Perform the optimization of loop unrolling. This is only done
for loops whose number of iterations can be determined at
compile time or runtime. -funroll-loops implies both
-fstrength-reduce and -frerun-cse-after-loop.
Perform the optimization of loop unrolling. This is done for all
loops and usually makes programs run more slowly.
-funroll-all-loops implies -fstrength-reduce, as
well as -frerun-cse-after-loop.
Force memory operands to be copied into registers
before doing arithmetic on them. This produces better
code by making all memory references potential common
subexpressions. When they are not common subexpres-
sions, instruction combination should eliminate the
separate register-load. The -O2 option turns on this
option.
Integrate all simple functions into their callers. The
compiler heuristically decides which functions are simple
enough to be worth integrating in this way. If all calls to a
given function are integrated, and the function is declared
static, then the function is normally not output as
assembler code in its own right.
By default, MPLAB C30 limits the size of functions that
can be inlined. This flag allows the control of this limit for
functions that are explicitly marked as inline (i.e., marked
with the inline keyword). n is the size of functions that
can be inlined in number of pseudo instructions (not
counting parameter handling). The default value of n is
10000. Increasing this value can result in more inlined
code at the cost of compilation time and memory
consumption.
Decreasing usually makes the compilation faster and less
code will be inlined (which presumably means slower
programs). This option is particularly useful for programs
that use inlining.
Note: Pseudo instruction represents, in this particular
context, an abstract measurement of function's size. In no
way does it represent a count of assembly instructions
and as such, its exact meaning might change from one
release of the compiler to an another.
Definition
Definition
© 2007 Microchip Technology Inc.

Related parts for SW006012