What is the ABI for the ARM Architecture? Is it the same as the ARM EABI?

Question

What is the ABI for the ARM Architecture? Is it the same as the ARM EABI?

Answer

The ABI for the ARM Architecture is a standard developed by ARM and its partners that explains how compilers, assemblers, linkers, and other similar tools should generate object files and executable files.

Tools that correctly implement the ABI for the ARM Architecture can interoperate; i.e., object files built with one toolchain can be combined with object files built with another toolchain if both compilers use the ABI for the ARM Architecture and provided that the code compiled observes certain conventions.

CodeSourcery was an active participant in the design of the ABI for the ARM Architecture. (In fact, the C++ ABI used by ARM is derived from the Itanium C++ ABI co-designed by CodeSourcery.) CodeSourcery continues to work with ARM, Ltd. to validate interoperability between Sourcery CodeBench and ARM's proprietary tools.

The "ARM EABI" is an informal name for the ABI for the ARM Architecture.


This entry was last updated on 8 March 2013.