Technical Support On-Line Manuals RealView Compiler Reference Guide Preface Introduction Compiler Command-line Options Command-line options ‑Aopt ‑‑[no_]alternative_tokens ‑‑[no_]anachronisms --apcs=qualifer...qualifier ‑‑arm ‑‑asm ‑‑[no_]autoinline ‑‑bigend ‑‑[no_]brief_diagnostics --bss_threshold=num ‑c ‑C ‑‑c90 ‑‑c99 ‑‑[no_]code_gen --[no_]compile_all_input ‑‑cpp ‑‑create_pch=filename ‑Dname[(parm-list)][=def] ‑‑[no_]data_reorder ‑‑[no_]debug ‑‑[no_]debug_macros ‑‑default_extension=ext ‑‑[no_]dep_name ‑‑depend=filename ‑‑depend_format=string --[no_]depend_system_headers ‑‑device=list ‑‑device=name --device_opt=option ‑‑diag_error=tag[,tag,...] ‑‑diag_remark=tag[,tag,... ] ‑‑diag_style={arm|ide|gnu} ‑‑diag_suppress=tag[,tag,...] --diag_suppress=optimizations ‑‑diag_warning=tag[,tag,...] --diag_warning=optimizations ‑‑[no_]dollar ‑‑dwarf2 ‑‑dwarf3 ‑E ‑‑enum_is_int ‑‑errors=filename ‑‑[no_]exceptions ‑‑[no_]exceptions_unwind ‑‑[no_]export_all_vtbl ‑‑[no_]export_defs_implicitly --[no_]extended_initializers ‑‑feedback=filename --[no_]force_new_nothrow ‑‑forceinline ‑‑fpmode=model ‑‑fpu=list ‑‑fpu=name ‑‑[no_]friend_injection ‑‑gnu ‑‑[no_]guiding_decls ‑‑help ‑‑[no_]hide_all ‑Idir[,dir,...] ‑‑[no_]implicit_include --[no_]implicit_include_searches ‑‑[no_]implicit_typename ‑‑info=totals ‑‑[no_]inline ‑‑interleave ‑Jdir[,dir,...] ‑‑kandr_include ‑Lopt ‑‑library_interface=lib --library_type=lib ‑‑list ‑‑littleend ‑‑locale=lang_country ‑‑loose_implicit_cast ‑‑[no_]lower_ropi ‑‑[no_]lower_rwpi ‑M ‑‑md ‑‑message_locale=lang_country[.codepage] ‑‑min_array_alignment=opt ‑‑[no_]multibyte_chars ‑‑[no_]multifile ‑‑[no_]nonstd_qualifier_deduction ‑o filename ‑Onum ‑‑[no_]old_specializations -‑omf_browse ‑Ospace ‑Otime ‑‑[no_]parse_templates ‑‑pch ‑‑pch_dir=dir ‑‑[no_]pch_messages ‑‑[no_]pch_verbose ‑‑pending_instantiations=n ‑‑pointer_alignment=num --[no_]project=filename ‑‑preinclude=filename --[no_]reduce_paths --reinitialize_workdir ‑‑remarks ‑‑[no_]restrict ‑‑[no_]rtti ‑S ‑‑[un]signed_bitfields ‑‑[un]signed_chars ‑‑show_cmdline ‑‑split_ldm ‑‑split_sections ‑‑[no_]strict ‑‑strict_warnings ‑‑sys_include ‑‑thumb ‑Uname ‑‑[no_]unaligned_access ‑‑use_pch=filename ‑‑[no_]using_std ‑‑[no_]vfe ‑‑via=filename --[no_]vla ‑‑vsn ‑W --wchar16 --wchar32 --workdir=directory ‑‑[no_]wrap_diagnostics Language Extensions Compiler-specific Features C and C++ Implementation Details Via File Syntax Standard C Implementation Definition Standard C++ Implementation Definition C and C++ Compiler Implementation Limits | ‑‑device=name2.1.29. â€'â€'device=nameThis option selects the device for which the compiler must generate code. Table 2.2 lists the devices and their available processor settings. NoteYou must specify a device using this command line option. Otherwise, the compiler generates an error.
--device=name
where name is a device name listed in Table 2.2. To get a full list of the available devices, use the --device=list option. Table 2.2. Devices | Device Name | Device Options | Processor | Endianness | Floating-point architecture |
|---|
| DARMAD | Â | Analog Devices ADuC7000 | --li
| none, softvfp (default) | | DARMAT | Â | Atmel AT91xxxx | --li
| none, softvfp (default) | | DARMATS | Â | Atmel AT91SAM7xxx | --li
| none, softvfp (default) | | DARMMAC7 | Â | Actel MCore7 | --bi
| none, softvfp (default) | | DARMO | Â | OKI ARM based | --li
| none, softvfp (default) | | DARMP | Â | NXP LPC2000 | --li
| none, softvfp (default) | | DARMP9 | Â | NXP LPC2917 & LPC2919 | --li
| none, softvfp (default) | | DARMS | Â | Samsung | --li
| none, softvfp (default) | | DARMSH | Â | Sharp | --li
| none, softvfp (default) | | DARMSSC | Â | Samsung SmartCards | --li, --bi (default)
| none, softvfp (default) | | DARMST | Â | ST STR7 series | --li
| none, softvfp (default) | | DARMTMS | Â | TI TMS470 | --bi
| none, softvfp (default) | | DARMATS9 | Â | Atmel AT91SAM9xxx | --li
| none, softvfp (default) | | DARMO9 | Â | OKI ARM9 based | --li
| none, softvfp (default) | | DARMP3 | Â | NXP LPC3000 | --li
| none, softvfp (default), softvfp+vfpv2, vfpv2 | | DARMSS9 | Â | Samsung ARM9 based | --li (default), --bi
| none, softvfp (default) | | DARMSSC9 | Â | Samsung SmartCards ARM9 based | --li, --bi (default)
| none, softvfp (default) | | DARMST9 | Â | ST STR9 series | --li
| none, softvfp (default) | | DARMCM1 | no_os_extension, os_extension (default) | FPGA Cortex-M1 | --li
| none, softvfp (default) | | DLM | rev0 (default), rev1 | Luminary | --li
| none, softvfp (default) | | DARMSTM | Â | ST STM series | --li
| none, softvfp (default) |
Selection of a device automatically selects the processor (CPU), the default floating-point architecture, and the default endianness. You can use additional options to change the default settings: Use --device_opt to select a revision or device extension if applicable. Use --fpu to change the target floating-point architecture. Use --bi or --li to change the endianness if applicable.
NoteSpecifying a device that supports Thumb instructions, such as â€'â€'device=DARMP, does not make the compiler generate Thumb code. It only enables features of the processor to be used, such as long multiply. Use the â€'â€'thumb option to generate Thumb code. If you compile for Thumb, that is with the --thumb option on the command line, the compiler compiles as much of the code as possible using the Thumb instruction set. However, the compiler might generate ARM code for some parts of the compilation. For example, if you are compiling code for a Thumbâ€'1 processor and using VFP, any function containing floatingâ€'point operations is compiled for ARM. If you are compiling code for ARMv7-M, for example â€'â€'device=DARMSTM, you do not need to specify â€'â€'thumb on the command line, because ARMv7â€'M supports Thumbâ€'2 only.
|