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
C and C++


armclang Compiler Model

The armclang compiler model models the behavior of the Arm Compiler.




Overview

The armclang compiler model is based on the clang model (and thus transitively on the gcc model).

The only difference between the armclang model and the clang model is that the armclang model always specifies front end option --cs_armclang.

The following file extensions are supported.

Compiler
model
Modeled native compiler Source file extensions
armclang Arm Compiler Source file extensions indicate the source language unless the language is otherwise specified using the -x flag or --gpp_driver_mode=g++.
  • .c, .i (case sensitive)
C mode
  • .C (case sensitive)
  • .cc, .cpp, .cxx, .c++, .ii (case insensitive)
C++ mode

Availability

Platform Availability The armclang compiler model is available for all platforms.
Default Recognition/Handling By default, compilations are recognized and handled as follows.
Platform Native Compiler Model Used
All armclang(.exe) armclang
Specifying Additional Mappings If your compiler executable has a different name, specify a corresponding COMPILER_MODELS rule to map your executable name to the armclang model.

For full details of all native compilers recognized by CodeSonar by default, see section Compilers Recognized by CodeSonar.

Model Behavior

Model-Specific ABI Key Format The armclang compiler model is transitively based on the gcc model, so you can associate an ABI key in the gcc-model-specific format with any compilation handled by the armclang model. The key structure and interpretation are described in GNU Compiler Models: Model-Specific ABI Key Format.
Command Arguments Exactly the same as for the clang model, described in Clang Compiler Models: Command Arguments.
Compilation Mode The modeled compilation mode is determined exactly as it is for the clang model, described in Clang Compiler Models: Compilation Mode.
C and C++ Standards The applicable C or C++ standard for the modeled compilation is determined exactly as it is for the clang model, described in Clang Compiler Models: C and C++ standards.
No CodeSonar Build 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.
Predefined Macros, Include Paths, Front End Options With one exception, these are exactly the same as for the clang model, described in Clang Compiler Models: Predefined Macros, Include Paths, Front End Options.

The exception is that the armclang model always specifies front end option --cs_armclang.

 

To report problems with this documentation, please visit https://support.codesecure.com/.