Specifications
CAVR-4
288
AVR® IAR C/C++ Compiler
Reference Guide
C++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
EC++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
errno.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
float.h. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
iccbutl.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
limits.h. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
math.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
setjmp.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
special function registers . . . . . . . . . . . . . . . . . . . . . . . 133
stdarg.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
stdbool.h . . . . . . . . . . . . . . . . . . . . . . . . . . . 138, 245, 249
stddef.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139, 249
stdio.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
stdlib.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
STL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
string.h. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
using as templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
--header_context (compiler option). . . . . . . . . . . . . . . . . . 183
heap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
changing default size (command line) . . . . . . . . . . . . . . 45
changing default size (IDE) . . . . . . . . . . . . . . . . . . . . . . 45
size. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42–45
storing data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
HEAP (segment). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44, 157
hidden parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
hints, optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
_ _huge (extended keyword) . . . . . . . . . . . . . . . . . . . . . . . 208
_ _hugeflash (extended keyword) . . . . . . . . . . . . . . . . . . . 209
HUGE_C (segment) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
HUGE_F (segment) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
HUGE_HEAP (segment) . . . . . . . . . . . . . . . . . . . . . . . . . 158
HUGE_I (segment). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
HUGE_ID (segment) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
HUGE_N (segment) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
HUGE_Z (segment) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
I
-I (compiler option). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
IAR Postlink (utility) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
IAR Technical Support . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
_ _IAR_SYSTEMS_ICC_ _ (predefined symbol) . . . . . . 232
_ _ICCAVR_ _ (predefined symbol) . . . . . . . . . . . . . . . . . 232
ICCA90, specifying calling convention . . . . . . . . . . . . . . 199
iccbutl.h (library header file). . . . . . . . . . . . . . . . . . . . . . . 249
identifiers, implementation-defined behavior . . . . . . . . . . 256
IEEE format, floating-point values . . . . . . . . . . . . . . . . . . 139
implementation, system startup. . . . . . . . . . . . . . . . . . . . . . 81
implementation-defined behavior . . . . . . . . . . . . . . . . . . . 255
include_alias (pragma directive) . . . . . . . . . . . . . . . . . . . . 219
_ _indirect_jump_to (intrinsic function) . . . . . . . . . . . . . . 239
inheritance, in Embedded C++ . . . . . . . . . . . . . . . . . . . . . 109
initialization
dynamic
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64, 88–89
initialization, description of segments. . . . . . . . . . . . . . . . 160
initialized data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
initializers, placing in flash memory . . . . . . . . . . . . . . . . . 184
INITTAB (segment) . . . . . . . . . . . . . . . . . . . . . . . . . . 47, 160
inline assembler . . . . . . . . . . . . . . . . . . . . . . . . . 95, 130, 271
See also assembler language interface
inline functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
inline (pragma directive). . . . . . . . . . . . . . . . . . . . . . . . . . 219
inlining of functions, in compiler . . . . . . . . . . . . . . . . . . . 123
instruction set, AVR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix
integer characteristics, adding . . . . . . . . . . . . . . . . . . . . . . . 83
integers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
casting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
implementation-defined behavior. . . . . . . . . . . . . . . . . 258
intptr_t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
ptrdiff_t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
size_t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
uintptr_t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
internal error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
_ _interrupt (extended keyword) . . . . . . . . . . . . . . . . . 29, 209
using in pragma directives . . . . . . . . . . . . . . . . . . . . . . 225
interrupt functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
placement in memory. . . . . . . . . . . . . . . . . . . . . . . . . . . 46
interrupt vector table. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29