TI Arm Clang Compiler Tools User’s Guide - 1.3.0.LTS¶
The TI Arm® code generation tools support development of applications for TI Arm-based platforms featuring TI Arm Cortex-M and Cortex-R series devices. There are now two Arm C/C++ compiler toolchains available from TI:
- TI Arm Clang C/C++ Compiler Tools (tiarmclang)
- TI Arm C/C++ Compiler Tools (armcl)
This user’s guide documents the TI Arm Clang C/C++ Compiler Tools. The tiarmclang compiler is based on the open source LLVM compiler infrastructure and its Clang front-end. tiarmclang uses the TI Linker and C runtime for stability and reduced code size. Benefits of tiarmclang include:
- Excellent C/C++ standards support
- Source-based code coverage
- Support for migration from armcl
- Improved code size over armcl/gcc
- Ease of use with fast compiles and expressive diagnostic messages
- GCC compatibility
- Comprehensive documentation: Getting Started Guide, Migration Guide and Compiler Tools User Manual
- Compiler Qualification Kit to assist qualifying the compiler to functional safety standards such as ISO 26262 and IEC 61508.
While the tiarmclang toolchain serves the same purpose as armcl, there are behavioral differences that need to be accounted for when making the transition from developing C/C++ applications with armcl to tiarmclang. Please refer to the armcl to tiarmclang Migration Guide for detailed guidance on making a smooth transition from armcl to tiarmclang.
The TI Arm Clang C/C++ Compiler Tools replace the existing TI Arm C/C++ Compiler Tools. All new feature development will be done in the TI Arm Clang C/C++ Compiler Tools. The last feature release of the armcl compiler toolchain is v20.2.x.LTS, which will continue to be actively supported as long as necesaary. However, only bug fixes will be provided in maintenance releases of v20.2.x.LTS of the armcl.
Both toolchains can be used to compile and link C/C++ and assembly source files to build static executable applications. These applications can then be loaded and run on Arm Cortex-M and Cortex-R series devices. Depending on the device family you are using a specific compiler toolchain will be recommended. Please refer to the SDK for the device family for information on which toolchain to use.