|Non-Confidential||PDF version||ARM DUI0375E|
|Home > Using the Inline and Embedded Assemblers of the ARM Compiler > Differences in compiler support for inline and embedded assembly code|
There are differences between the ways inline and embedded assembly are compiled.
Table 6-1 Differences between inline and embedded assembler
|Feature||Embedded assembler||Inline assembler|
|Instruction set||ARM and Thumb.||
ARM on all processors.
Thumb on processors with Thumb-2 technology.
|ARM assembler directives||All supported.||None supported.|
|ARMv6 instructions||All supported.||
Supports most instructions, with some exceptions, for example
|ARMv7 instructions||All supported.||Supports most instructions.|
|VFP instructions||All supported.||VFPv2 only.|
|C/C++ expressions||Constant expressions only.||Full C/C++ expressions.|
|Optimization of assembly code||No optimization.||Full optimization.|
|Register access||Specified physical registers are used. You can also use
Uses virtual registers. Using
|Return instructions||You must add them in your code.||Generated automatically. (The
||Supported directly.||Not supported.|