|
| RealView ARM C CompilerPreprocessor Symbols- Define
- Sets preprocessor symbols which may be checked with #if, #ifdef and #ifndef. The defined names are copied exactly as they are entered (case-sensitive). Each name may get optionally a value. Define: Check, NoExtRam, X1=1+5 is identical to the following C preprocessor #define statements:
#define Check #define NoExtRam #define X1 1+5 - Undefine
- Clears previous Define assignments that are entered in the options dialog of a higher Target or Group level.
Language / Code Generation- Enable ARM/Thumb Interworking
- Generates code that may be called in any CPU mode (ARM or Thumb).
- Optimization
- Control compiler code optimization for the generated code:
- Default: Use the compiler default or the setting of a higher Target or Group level.
- Level 0 (-O0): Turn off all optimization, except some simple source transformations.
- Level 1 (-O1): Turn off optimizations that seriously degrade the debug view.
- Level 2 (-O2): High optimization (default level). The debug view might be less satisfactory because the mapping of object code to source code is not always clear.
- Level 3 (-O3): Maximum optimization. Note that Level 3 in combination with Optimize for Time may generate more code that Level 2 since it may unroll loops.
- Optimize for Time
- Reduce execution time at the possible expense of a larger code size.
- Split Load and Store Multiple
- Instructs the compiler to split LDM and STM instructions into two or more LDM or STM instructions to reduce interrupt latency. When the LDM/STM have more than 5 (more than 4 when the PC is changed) CPU registers, several LDM/STM instructions are generated.
- One ELF Section per Function
- Generate one ELF section for each function in source file. Output sections are named with the same name as the function that generates the section. Allows to optimize code or to locate each function on individual memory addresses.
- Strict ANSI C
- Check for strict ANSI C conformance of the source file.
- Enum Container always int
- When disabled, the data type container for enum is optimize according the value range. When enabled, the data type container for enum is always signed int.
- Plain Char is Signed
- Instructs the Compiler to treat all variables declared with plain char as signed char variables.
- Read-Only Position Independent
- Generate position independent code for const (ROM) accesses.
- Read-Write Position Independent
- Generate position independent code for variable (RAM) accesses.
- Warnings
- Control generation of warning messages.
- Thumb Mode
- Select explicit Thumb or ARM code for a file or file group. Note in the Target dialog Code Generation selects the default.
- Include Paths
- Allows you to supply one or more (separated by semi-colon) paths to search for header files. For #include "filename.h" the Compiler searches first the current folder and then folder of the source file. When this fails or when #include <filename.h> is used, the paths specified in the include paths box are searched. When this still fails, the paths specified in for the INC folder under Project — Components, Environment, Books ... are used.
- Misc Controls
- Specify any directive for which there is no individual dialog control.
- Compiler Control String
- Displays the current directives at the Compiler command line.
|
|