Specifications

CAVR-4
292
AVR® IAR C/C++ Compiler
Reference Guide
new (keyword) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
new (library header file) . . . . . . . . . . . . . . . . . . . . . . . . . . 246
new.h (library header file) . . . . . . . . . . . . . . . . . . . . . . . . . 246
non-initialized variables . . . . . . . . . . . . . . . . . . . . . . . . . . 134
non-scalar parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
non-volatile memory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
NOP (assembler instruction). . . . . . . . . . . . . . . . . . . . . . . 240
_ _noreturn (extended keyword) . . . . . . . . . . . . . . . . . . . . 211
using in pragma directives . . . . . . . . . . . . . . . . . . . . . . 221
--no_code_motion (compiler option) . . . . . . . . . . . . . . . . 189
--no_cse (compiler option) . . . . . . . . . . . . . . . . . . . . . . . . 190
_ _no_init (extended keyword) . . . . . . . . . . . . . . . . . 134, 211
using in pragma directives . . . . . . . . . . . . . . . . . . . . . . 220
--no_inline (compiler option) . . . . . . . . . . . . . . . . . . 190191
_ _no_operation (intrinsic function) . . . . . . . . . . . . . . . . . 240
_ _no_rampd (runtime model attribute) . . . . . . . . . . . . . . . 79
compiler options
--no_typedefs_in_diagnostics (compiler option)
. . . . . 191
--no_warnings (compiler option) . . . . . . . . . . . . . . . . . . . 191
--no_wrap_diagnostics (compiler option) . . . . . . . . . . . . . 192
NULL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
numeric (STL header file). . . . . . . . . . . . . . . . . . . . . . . . . 247
O
-o (compiler option) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
object filename, specifying . . . . . . . . . . . . . . . . . . . . . . . . 192
object module name, specifying . . . . . . . . . . . . . . . . . . . . 188
object_attribute (pragma directive) . . . . . . . . . . . . . . 134, 220
offsetof . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
--omit_types (compiler option) . . . . . . . . . . . . . . . . . . . . . 192
--only_stdout (compiler option) . . . . . . . . . . . . . . . . . . . . 193
_ _open (library function) . . . . . . . . . . . . . . . . . . . . . . . . . . 70
operators
@
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28, 4849
__memory_of(class) . . . . . . . . . . . . . . . . . . . . . . . . . . 113
optimization
clustering, disabling
. . . . . . . . . . . . . . . . . . . . . . . . . . . 189
code motion, disabling . . . . . . . . . . . . . . . . . . . . . . . . . 189
common sub-expression elimination, disabling . . . . . . 190
configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
cross-call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
function inlining, disabling . . . . . . . . . . . . . . . . . 190191
hints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
size, specifying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
speed, specifying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
types and levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
type-based alias analysis . . . . . . . . . . . . . . . . . . . . . . . 124
optimization techniques . . . . . . . . . . . . . . . . . . . . . . . . . . 123
optimize (pragma directive) . . . . . . . . . . . . . . . . . . . . . . . 221
options summary, compiler. . . . . . . . . . . . . . . . . . . . . . . . 169
ostream (library header file) . . . . . . . . . . . . . . . . . . . . . . . 246
output
specifying
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
specifying file name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
output files, from XLINK . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
multiple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
output, preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
P
pack (pragma directive) . . . . . . . . . . . . . . . . . . . . . . . . . . 222
parameters
function
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
hidden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
non-scalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
register vs stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
specifying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
stack. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102, 104
typographic convention . . . . . . . . . . . . . . . . . . . . . . . . xxii
permanent registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
placement of code and data. . . . . . . . . . . . . . . . . . . . . . . . 149
pointer types, differences between . . . . . . . . . . . . . . . . . . . 21
pointers
casting
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10, 141
function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141