|Non-Confidential||PDF version||ARM DUI0477M|
|Home > fromelf Command-line Options > --cpu=name|
Affects the way machine code is disassembled by options such as
--disassemble, so that it is disassembled in the same way that the specified processor or architecture interprets it.
name is the name of a
processor or architecture:
is the name of a processor, enter it as
shown on ARM® data sheets, for example,
is the name of an architecture, it must
belong to the list of architectures shown in the following table.
Processor and architecture names are not case-sensitive.
Wildcard characters are not accepted.
The following table shows the supported architectures.
For a complete list of the supported architecture and processor names, specify the
Table 3-2 Supported ARM architectures
||ARMv4 without Thumb|
||ARMv4 with Thumb|
||ARMv5 with Thumb and interworking|
||ARMv5 with Thumb, interworking, DSP multiply, and double-word instructions|
ARMv5 with Thumb, interworking, DSP multiply, double-word instructions, and Jazelle® extensions
fromelf cannot generate Java bytecodes.
||ARMv6 with Thumb, interworking, DSP multiply, double-word instructions, unaligned and mixed-endian support, Jazelle, and media extensions.|
ARMv6 microcontroller profile with Thumb only, plus processor state instructions.
ARMv6 microcontroller profile with Thumb only, plus processor state instructions and OS extensions.
||ARMv6 with SMP extensions.|
||ARMv6 with Thumb (Thumb-2 technology).|
||ARMv6 with Security Extensions.|
||ARMv7 with Thumb (Thumb-2 technology) only, and without hardware divide.|
||ARMv7 application profile.|
||ARMv7-A architecture profile with the
ARMv7 real-time profile.
||ARMv7 microcontroller profile.|
||ARMv7-M architecture profile with DSP extension.|
ARMv7 is not an actual ARM architecture.
--cpu=7 denotes the
features that are common to the ARMv7-A, ARMv7-R, and ARMv7-M
architectures. By definition, any given feature used with
exists on the ARMv7-A, ARMv7-R, and ARMv7-M architectures.
7-A.security is not
an actual ARM architecture, but rather refers to
7-A plus Security Extensions.
The following general points apply to processor and architecture options:
Selecting the processor selects the appropriate architecture, Floating-Point Unit (FPU), and memory organization.
values include all current ARM product names or architecture versions.
Other ARM architecture-based processors, such as the Marvell Feroceon and the Marvell XScale, are also supported.
If you specify an architecture name for the
--cpu option, machine code
is disassembled by options such as
--disassemble for that architecture. If you
--disassemble, then the
disassembly can be assembled for any processor supporting that
--disassemble produces disassembly that can be
assembled for the Cortex®‑A7 processor.
Some specifications of
--cpu imply an
--fpuon the command line, overrides an implicit FPU.
--fpu option is specified and no
--cpu option is
--fpu=softvfp is used.
If you do not specify a
--cpu option, then
fromelf disassembles machine instructions in an
architecture-independent way. This means that fromelf
disassembles anything that it recognizes as an instruction by some architecture.
You cannot specify both a processor and an architecture on the same command-line.
To specify the Cortex‑M4 processor, use: