Atmel CAVR-4 Manual De Usuario

Descargar
Página de 323
CAVR-4
184
Descriptions of options
AVR® IAR C/C++ Compiler
Reference Guide
Then the following directories are searched in the order listed below for the file 
config.h
, which in this example is located in the 
dir\debugconfig
 directory:
dir\include
Current file.
dir\src
File including current file.
dir\include
As specified with the first 
-I
 option.
dir\debugconfig
As specified with the second 
-I
 option.
Use angle brackets for standard header files, like 
stdio.h
, and double quotes for files 
that are part of your application.
Note: Both 
\
 and 
/
 can be used as directory delimiters.
To set the equivalent option in IAR Embedded Workbench, select 
Project>Options>C/C++ Compiler>Preprocessor.
--initializers_in_flash
--initializers_in_flash
Use this option to place aggregate initializers in flash memory. These initializers are 
otherwise placed either in the external segments 
_C
 or in the initialized data segments if 
the compiler option 
-y
 was also specified.
For example:
void foo ()
{
  char buf[4] = { '1', 'd', 'g', 't' };
  ...
}
In other words: An aggregate initializer—an array or a struct—is constant data that is 
copied to the stack dynamically at runtime, in this case every time a function is entered.
The drawback of placing data in flash memory is that it takes more time to copy it; the 
advantage is that it does not occupy memory in the data space.
Local variables with aggregate initializers are copied from the segments:
This option is related to the Code options in the C/C++ Compiler category in IAR 
Embedded Workbench.
Data
Default
-y
--initializers_in_flash
auto aggregates
NEAR_C
NEAR_F
NEAR_F
Table 46: Accessing variables with aggregate initializers