JavaScript is not currently enabled, but is required for full CodeSonar manual search and browse functionality.
If you are viewing this file in your hub's Web GUI, enable JavaScript in your browser: you will also need it for GUI functionality.
If you opened this file directly from disk, your browser may be directly suppressing JavaScript functionality: certain browsers perform this suppression on local files (but not files delivered by web servers) for security reasons.
| CodeSonar® 9.2p0 | CONFIDENTIAL | CodeSecure Inc |
Unlike the other compilers modeled by CodeSonar, ecomppc is not a compiler driver and is not called directly.
| Compiler model |
Modeled native compiler | Source file extensions | Description |
|---|---|---|---|
| ecomppc | ecomppc | .c, .i, .C, .cc, .cpp, .cxx |
Green Hills Internal Compiler.
Source file extensions indicate the source language. An extension of c or i indicates the C language; the other extensions indicate C++. |
| Platform Availability | The ecomppc compiler model is available for all platforms. | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Default Recognition/Handling | By default, compilations
are recognized and handled as follows.
|
||||||||||||||||||||||||
| Specifying Additional Mappings | If your compiler executable has a different name, specify a corresponding COMPILER_MODELS rule to map your executable name to the ecomppc model. |
For full details of all native compilers recognized by CodeSonar by default, see section Compilers Recognized by CodeSonar.
The native ecomppc compiler
should never be called directly. Instead, call gbuild, ccppc
(a Green Hills compiler driver), or use MULTI, which will take care of translating the
command line options.
We discuss the handling of command line options to ecomppc here for the sake of completeness.
Unless otherwise noted, options are passed to the native compiler invocation.
| Option | Additional Treatment in Model | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @file | Extracts the options specified in file and appends them to the modeled command line. This option is not passed through to the front end or to the native compiler invocation. | ||||||||||||||
| -A | Specifies front end option --strict, models compilation in C mode. | ||||||||||||||
| -a | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| -act_like=arg | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| -bsc=arg | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| -bsl=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| -bsp arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --c | Specifies front end option --c, models compilation in C mode. | ||||||||||||||
| --c11 | Specifies front end option --c11, models compilation in C mode. | ||||||||||||||
| --c89 | Specifies front end option --c89, models compilation in C mode. | ||||||||||||||
| --c99 | Specifies front end option --c99, models compilation in C mode. | ||||||||||||||
| --c_and_cpp_functions_are_distinct | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --check=arg | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --coding_standard=arg --coding_standard arg |
Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --config arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| -cpu=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --create_fp | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --cxx_include_directory arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| -D
macro -Dmacro |
Specifies front end option -D macro.
|
||||||||||||||
| -Dmacro=defn -D macro=defn |
Specifies front end option -D macro=defn.
|
||||||||||||||
| --dwarf2 | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| -E | Passed to native compiler invocation. No additional handling in model. | ||||||||||||||
| --embedded_c | Specifies front end option --embedded_c, models compilation in C mode. | ||||||||||||||
| --errmax=num | Passed to native compiler invocation if num starts with one or more decimal digits, otherwise ignored. No additional handling in model. | ||||||||||||||
| -g | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --gcc | Specifies front end option --gcc, models compilation in C mode. | ||||||||||||||
| --gh_md=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --gh_oname=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --gh_outbin=file --gh_outbin file |
file will be treated as an object file. This option is not passed through to the front end or to the native compiler invocation. | ||||||||||||||
| --gh_out arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --ghs_xref=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| -globalreg=num | Passed to native compiler invocation if num starts with one or more decimal digits, otherwise ignored. No additional handling in model. | ||||||||||||||
| --gnu=arg |
Handling depends on arg as follows.
|
||||||||||||||
| --graph_prof | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| -I- | For all occurrences of -Idir before before -I-, dir is searched only for include files specified with #include "fname" (not #include <fname>). | ||||||||||||||
| -Iarg -I arg |
Specifies front end option -Iarg. | ||||||||||||||
| -ident=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --ii_file arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --include=fname --include fname |
Specifies front end option --preinclude fname. | ||||||||||||||
| --include_once | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --include_never | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --inline_file arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --inlining | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| -K | Specifies front end option --old_c, models compilation in C mode. | ||||||||||||||
| -M | Passed to native compiler invocation. No additional handling in model. | ||||||||||||||
| -maxcomplexity=num | Passed to native compiler invocation if num starts with one or more decimal digits, otherwise ignored. No additional handling in model. | ||||||||||||||
| --max_inlining | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --misra_suff | All options of this form are passed to native compiler invocation if the suffix suff contains at least one character, otherwise ignored. No additional handling in model. | ||||||||||||||
| -n | Passed to native compiler invocation. No additional handling in model. | ||||||||||||||
| -nm_util=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --no_c_and_cpp_functions_are_distinct | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --no_inlining | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --no_include_once | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --no_include_never | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --no_unsafe_predefines | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| -OL | Passed to native compiler invocation. No additional handling in model. | ||||||||||||||
| -OLM -OLMsuff |
All options of this form are passed to native compiler invocation. No additional handling in model. | ||||||||||||||
| -OM | Passed to native compiler invocation. No additional handling in model. | ||||||||||||||
| -OMS -OMSsuff |
All options of this form are passed to native compiler invocation. No additional handling in model. | ||||||||||||||
| -option=-num -option=num |
Passed to native compiler invocation if num starts with one or more decimal digits, otherwise ignored. No additional handling in model. | ||||||||||||||
| -OS | Passed to native compiler invocation. No additional handling in model. | ||||||||||||||
| -P | Passed to native compiler invocation. No additional handling in model. | ||||||||||||||
| -p | Passed to native compiler invocation. No additional handling in model. | ||||||||||||||
| -pg | Passed to native compiler invocation. No additional handling in model. | ||||||||||||||
| --pragma_diag_level=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --procinfo | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --QI arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --QL arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --runtime_uses_namespaces | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --saferc=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --saferc_adv=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --saferc_is_misra_2004 | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --saferc_req=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| -sda=num | Passed to native compiler invocation if num starts with one or more decimal digits, otherwise ignored. No additional handling in model. | ||||||||||||||
| -STD | Does not specify front end option --cs_static_assert (always specified otherwise). | ||||||||||||||
| --svr4 | Specifies front end option --svr4, models compilation in C mode. | ||||||||||||||
| -sym=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| --sys_include arg | Specifies front end option --sys_include arg. | ||||||||||||||
| --sys_cxx_include_directory arg | Specifies front end option --sys_include arg in C++ mode. | ||||||||||||||
| -T | Passed to native compiler invocation. No additional handling in model. | ||||||||||||||
| --template_info_file arg | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --this_inline_file arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| -U
macro -Umacro |
Specifies front end option -U macro. | ||||||||||||||
| --unsafe_predefines | Passed to native compiler invocation, no additional handling in model. | ||||||||||||||
| --upc | Specifies front end option --upc, models compilation in C mode. | ||||||||||||||
| -Xsuff | All options of this form are passed to native compiler invocation if the suffix suff contains at least one character, otherwise ignored. No additional handling in model. | ||||||||||||||
| -Znum | Passed to native compiler invocation if num starts with one or more decimal digits, otherwise ignored. No additional handling in model. | ||||||||||||||
| --zda=arg | Passed to native compiler invocation if arg is nonempty, otherwise ignored. No additional handling in model. | ||||||||||||||
| other options recognized by EDG | Options that are recognized by EDG but do not have individual entries in this table are passed both to the front end and to the native compiler invocation. |
The compilation mode is the mode in which the ecomppc compiler model is invoked, and controls some of the front end options specified by the model. Compilation mode depends on the modeled build command as follows.
If any of the following are specified, CodeSonar will ignore the compilation and will not generate any corresponding internal representation. If a CodeSonar project is based only on ignored compilations, it will have no contents and so will not be finalized.
The ecomppc compiler model attempts to invoke the modeled native compiler to obtain its predefined macros. If successful, all of these macro definitions are passed to the compiler model except for the following.
The following table lists the front end options specified by the model.
| Front End
Options Conditionally Specified |
|
|---|
To report problems with this documentation, please visit https://support.codesecure.com/.