SW006015 Microchip Technology, SW006015 Datasheet - Page 32

C COMPILER MPLAB C32

SW006015

Manufacturer Part Number
SW006015
Description
C COMPILER MPLAB C32
Manufacturer
Microchip Technology
Type
Compilerr
Series
PIC32r
Datasheets

Specifications of SW006015

Supported Families
PIC32MX5, MX6, And MX7
Core Architecture
PIC
Kit Contents
Software And Docs
Mcu Supported Families
PIC32 MCUs
Tool Function
Compiler
Supported Devices
PIC32 MCUs
Tool Type
Compiler
Processor Series
PIC32
Lead Free Status / RoHS Status
Not applicable / Not applicable
For Use With/related Products
PIC32
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
DS51686A-page 28
®
You can use the following flags in the rare cases when “fine-tuning” of optimizations to
be performed is desired.
TABLE 1-9:
-falign-functions
-falign-functions=n
-falign-labels
-falign-labels=n
-falign-loops
-falign-loops=n
-fcaller-saves
-fcse-follow-jumps
-fcse-skip-blocks
-fexpensive-
-ffunction-sections
-fdata-sections
-fgcse
optimizations
Option
SPECIFIC OPTIMIZATION OPTIONS
Align the start of functions to the next power-of-two greater
than n, skipping up to n bytes. For instance,
-falign-functions=32 aligns functions to the next
32-byte boundary, but -falign-functions=24 would align
to the next 32-byte boundary only if this can be done by
skipping 23 bytes or less.
-fno-align-functions and -falign-functions=1 are
equivalent and mean that functions are not aligned.
The assembler only supports this flag when n is a power of
two, so n is rounded up. If n is not specified, use a
machine-dependent default.
Align all branch targets to a power-of-two boundary, skipping
up to n bytes like -falign-functions. This option can
easily make code slower, because it must insert dummy
operations for when the branch target is reached in the usual
flow of the code.
If -falign-loops or -falign-jumps are applicable and
are greater than this value, then their values are used instead.
If n is not specified, use a machine-dependent default which is
very likely to be 1, meaning no alignment.
Align loops to a power-of-two boundary, skipping up to n bytes
like -falign-functions. The hope is that the loop is
executed many times, which makes up for any execution of
the dummy operations.
If n is not specified, use a machine-dependent default.
Enable values to be allocated in registers that are clobbered
by function calls, by emitting extra instructions to save and
restore the registers around such calls. Such allocation is
done only when it seems to result in better code than would
otherwise be produced.
In common subexpression elimination, scan through jump
instructions when the target of the jump is not reached by any
other path. For example, when CSE encounters an if
statement with an else clause, CSE follows the jump when
the condition tested is false.
This is similar to -fcse-follow-jumps, but causes CSE to
follow jumps which conditionally skip over blocks. When CSE
encounters a simple if statement with no else clause,
-fcse-skip-blocks causes CSE to follow the jump around
the body of the if.
Perform a number of minor optimizations that are relatively
expensive.
Place each function or data item into its own section in the
output file. The name of the function or the name of the data
item determines the section's name in the output file.
Only use these options when there are significant benefits for
doing so. When you specify these options, the assembler and
linker may create larger object and executable files and is also
slower.
Perform a global common subexpression elimination pass.
This pass also performs global constant and copy
propagation.
Definition
© 2007 Microchip Technology Inc.

Related parts for SW006015