You copied the Doc URL to your clipboard.

Arm Compiler Migration and Compatibility Guide : Toolchain differences

Toolchain differences

Arm® Compiler 5 and Arm Compiler 6 share many of the same compilation tools. However, the main difference between the two toolchains is the compiler tool armclang, which is based on Clang and LLVM.

The table lists the individual compilation tools and the toolchain they apply to.

Table 2-1 List of compilation tools

Arm Compiler 5 Arm Compiler 6 Function
armcc armclang Compiles C and C++ language source files, including inline assembly.
armcc armclang Preprocessor.
armasm armasm Assembles assembly language source files written in armasm syntax.
Not available armclang. This is also called the armclang integrated assembler. Assembles assembly language source files written in GNU assembly syntax.
fromelf fromelf Converts Arm ELF images to binary formats and can also generate textual information about the input image, such as its disassembly and its code and data size.
armlink armlink Combines the contents of one or more object files with selected parts of one or more object libraries to produce an executable program.
armar armar Enables sets of ELF object files to be collected together and maintained in archives or libraries.

Arm Compiler 6 uses the compiler tool armclang instead of armcc. The command-line options for armclang are different to the command-line options for armcc. These differences are described in Migration of compiler command-line options from Arm® Compiler 5 to Arm® Compiler 6.

Arm Compiler 6 provides armasm, which you can use use to assemble your existing assembly language source files that are written in armasm syntax. Arm recommends you write new assembly code using the GNU assembly syntax, which you can assemble using the armclang integrated assembler. You can also migrate existing assembly language source files from armasm syntax to GNU syntax, and then assemble them using the armclang integrated assembler. For more information see Chapter 5 Migrating from armasm to the armclang integrated assembler.

Was this page helpful? Yes No