About the Unified Assembler Language
Unified Assembler Language (UAL) is a common syntax for ARM and Thumb instructions.
UAL supersedes earlier versions of both the ARM and Thumb assembler languages.
Code written using UAL can be assembled for ARM or Thumb for any ARM processor. The assembler faults the use of unavailable instructions.
RealView Compilation Tools (RVCT) v2.1 and earlier can only assemble the pre-UAL syntax. Later versions of RVCT and ARM Compiler toolchain can assemble code written in pre-UAL and UAL syntax.
You can use directives or command-line options to instruct the assembler whether you are
using UAL or pre-UAL syntax. By default, the assembler expects source code to be written in
UAL. If you use any of the
THUMBX directives, or if you assemble with any
--thumbx command-line options, the assembler accepts UAL syntax. The
assembler also accepts source code written in pre-UAL ARM assembly language when you use the
The assembler accepts source code written in pre-UAL Thumb assembly language when you
assemble using the
--16 command-line option, or you use the
CODE16 directive in the source code.
The pre-UAL Thumb assembly language does not support 32-bit Thumb instructions.