 RealView Compiler Reference Guide |
|
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 | ‑‑fpu=nameThis option enables you to determine the target FPU architecture. If you specify this option, it overrides any implicit FPU option that appears on the command line, for example, where you use the ‑‑device option. To obtain a full list of FPU architectures use the ‑‑fpu=list option.
--fpu=name
Where name is one of: noneSelects no floating‑point option. No floating‑point code is to be used. This produces an error if your code contains float types. vfpv3Selects hardware vector floating‑point unit conforming to architecture VFPv3. vfpv2Selects hardware vector floating‑point unit conforming to architecture VFPv2. This is the default if you specify ‑‑fpu=vfp. NoteIf you enter armcc ‑‑thumb ‑‑fpu=vfpv2 on the command line, the compiler compiles as much of the code using the Thumb instruction set as possible, but hard floating‑point sensitive functions are compiled to ARM code. In this case, the value of the predefine __thumb is not correct. If you specify either vfp or vfpv2 with the ‑‑arm option for ARM C code you must use the __softfp keyword to ensure that your interworking ARM code is compiled to use software floating‑point linkage. softvfpSelects software floating‑point linkage. This is the default if you do not specify a ‑‑fpu option, or if you select a device that does not have an FPU. In previous releases of RVCT, if you specified ‑‑fpu=softvfp and a CPU with implicit VFP hardware, the linker chose a library that implemented the software floating‑point calls using VFP instructions. This is no longer the case. If you require this legacy behavior, use ‑‑fpu=softvfp+vfp. softvfp+vfpv2Selects a floating‑point library with software floating‑point linkage that uses VFP instructions. Select this option if you are interworking Thumb code with ARM code on a system that implements a VFP unit. If you select this option: Compiling with ‑‑thumb behaves in a similar way to ‑‑fpu=softvfp except that it links with floating‑point libraries that use VFP instructions. Compiling with ‑‑arm behaves in a similar way to ‑‑fpu=vfpv2 except that all functions are given software floating‑point linkage. This means that functions pass and return floating‑point arguments and results in the same way as ‑‑fpu=softvfp, but use VFP instructions internally.
NoteIf you specify softvfp+vfpv2 with the ‑‑arm or ‑‑thumb option for C code, it ensures that your interworking floating‑point code is compiled to use software floating‑point linkage. softvfp+vfpv3Selects a floating‑point library with software floating‑point linkage that uses VFPv3 instructions. Select this option if you are interworking Thumb code with ARM code on a system that implements a VFPv3 unit.
|
|