SW006015 Microchip Technology, SW006015 Datasheet - Page 43

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
© 2007 Microchip Technology Inc.
TABLE 1-15:
-finstrument-
-fno-ident
-fpack-struct
-fpcc-struct-
-fno-short-double
-fshort-enums
-fverbose-asm
-fno-verbose-asm
-fvolatile
-fvolatile-global
-fvolatile-static
functions
return
Option
CODE GENERATION CONVENTION OPTIONS (CONTINUED)
Generate instrumentation calls for entry and exit to functions. Just
after function entry and just before function exit, the following
profiling functions are called with the address of the current
function and its call site.
void
void
The first argument is the address of the start of the current
function, which may be looked up exactly in the symbol table.
The profiling functions should be provided by the user.
Function instrumentation requires the use of a Frame Pointer.
Some optimization levels disable the use of the Frame Pointer.
Using -fno-omit-frame-pointer prevents this.
This instrumentation is also done for functions expanded inline in
other functions. The profiling calls indicates where, conceptually,
the inline function is entered and exited. This means that
addressable versions of such functions must be available. If all
your uses of a function are expanded inline, this may mean an
additional expansion of code size. If you use extern inline in
your C code, an addressable version of such functions must be
provided.
A function may be given the attribute
no_instrument_function, in which case this instrumentation
is not done.
Ignore the #ident directive.
Pack all structure members together without holes. Usually you
would not want to use this option, since it makes the code
sub-optimal, and the offsets of structure members won’t agree with
system libraries.
Return short struct and union values in memory like longer
ones, rather than in registers. This convention is less efficient, but
it has the advantage of allowing capability between MPLAB C32
compiled files and files compiled with other compilers.
Short structures and unions are those whose size and alignment
match that of an integer type.
By default, the compiler uses a double type equivalent to float.
This option makes double equivalent to long double. Mixing
this option across modules can have unexpected results if
modules share double data either directly through argument
passage or indirectly through shared buffer space. Libraries
provided with the product function with either switch setting.
Allocate to an enum type only as many bytes as it needs for the
declared range of possible values. Specifically, the enum type is
equivalent to the smallest integer type which has enough room.
Put extra commentary information in the generated assembly code
to make it more readable.
-fno-verbose-asm, the default, causes the extra information to
be omitted and is useful when comparing two assembler files.
Consider all memory references through pointers to be volatile.
Consider all memory references to external and global data items
to be volatile. The use of this switch has no effect on static data.
Consider all memory references to static data to be volatile.
(void *this_fn, void *call_site);
(void *this_fn, void *call_site);
__
__
cyg_profile_func_enter
cyg_profile_func_exit
Definition
DS51686A-page 39

Related parts for SW006015