Contents
Welcome to the IAR C/C++ Development documentation—with detailed reference information that can help you to use the build tools to best suit your application requirements, and provides suggestions on coding techniques so that you can develop applications with maximum efficiency. Below is a brief outline and summary of the contents.
Using the build tools
Introduction to the IAR build tools gives an introduction to the IAR build tools, which includes an overview of the tools, the programming languages, the available device support, and extensions provided for supporting specific features of the RX microcontroller.
Developing embedded applications gives the information you need to get started developing your embedded software using the IAR build tools.
Data storage describes how to store data in memory.
Functions gives a brief overview of function-related extensions—mechanisms for controlling functions—and describes some of these mechanisms in more detail.
Linking using ILINK describes the linking process using the IAR ILINK Linker and the related concepts.
Linking your application lists aspects that you must consider when linking your application, including using ILINK options and tailoring the linker configuration file.
The DLIB runtime environment describes the DLIB runtime environment in which an application executes. It covers how you can modify it by setting options, overriding default library modules, or building your own library. The chapter also describes system initialization introducing the file
cstartup.s, how to use modules for locale, and file I/O.Assembler language interface contains information required when parts of an application are written in assembler language. This includes the calling convention.
Using C gives an overview of the two supported variants of the C language, and an overview of the compiler extensions, such as extensions to Standard C.
Using C++ gives an overview of the level of C++ support.
Application-related considerations discusses a selected range of application issues related to using the compiler and linker.
Efficient coding for embedded applications gives hints about how to write code that compiles to efficient code for an embedded application.
Reference information
External interface details provides reference information about how the compiler and linker interact with their environment—the invocation syntax, methods for passing options to the compiler and linker, environment variables, the include file search procedure, and the different types of compiler and linker output. The chapter also describes how the diagnostic system works.
Compiler options explains how to set options, gives a summary of the options, and contains detailed reference information for each compiler option.
Linker options gives a summary of the options, and contains detailed reference information for each linker option.
Data representation describes the available data types, pointers, and structure types. This chapter also gives information about type and object attributes.
Extended keywords gives reference information about each of the RX-specific keywords that are extensions to the standard C/C++ language.
Pragma directives gives reference information about the pragma directives.
Intrinsic functions gives reference information about functions to use for accessing RX-specific low-level features.
The preprocessor gives a brief overview of the preprocessor, including reference information about the different preprocessor directives, symbols, and other related information.
C/C++ standard library functions gives an introduction to the C or C++ library functions, and summarizes the header files.
The linker configuration file describes the purpose of the linker configuration file, and describes its contents.
Section reference gives reference information about the use of sections.
The stack usage control file describes the syntax and semantics of stack usage control files.
IAR utilities describes the IAR utilities that handle the ELF and DWARF object formats.
Implementation-defined behavior for Standard C++ describes how the compiler handles the implementation-defined areas of Standard C++.
Implementation-defined behavior for Standard C describes how the compiler handles the implementation-defined areas of Standard C.
Implementation-defined behavior for C89 describes how the compiler handles the implementation-defined areas of the C language standard C89.