Questions tagged [arm]

This tag is used for questions related to the ARM (Advanced RISC Machine) family of computers; that is machines or electronics running on ARM processor cores or systems using an ARM core. For Azure-related questions, use [azure-resource-manager].

ARM (formerly Advanced RISC Machine and Acorn RISC Machine) is a reduced instruction set computer (RISC) instruction set architecture (ISA) developed by Acorn Computers and extended by ARM Holdings. The ARM architecture is the most widely used 32-bit instruction set architecture in numbers produced.

More information can be found in the Wikipedia article on ARM Architecture and the ARM Reference Documents.

There are many different variants of the ARM assembler that have evolved over time. The notation can be confusing. For instance, arm7 and armv7, are completely different. The first is a CPU implementation; the second is a CPU architecture. The architecture, also called a family, is a set of machine instructions (or ISA for instruction set architecture) that are generally compatible. See: Wikipedia's list of ARM microarchitectures for more.

Related tags:

  • - the first version consisted of a reduced set of 16bit instructions. thumb2, introduced with armv6, includes a mix of 16 and 32bit instructions, extended further in armv7 such that it can do most things the normal ARM ISA can.
  • - a SIMD extension for ARM CPUs
  • - an embedded ISA of the armv7 that only supports thumb2.
  • - the application version of armv7 ISA.
  • - the eighth arm architecture (armv8) includes 64bit registers.
  • - a security feature in some armv6, armv8 and armv7 CPUs.
  • - bus or interconnect specification used between CPUs and peripherals.
  • - SWD (Serial Wire Debug) is a light weight version of JTAG designed for ARM MCUs.

Do not create tags such as . Often those posts apply to other cortex-m CPUs and/or the difference between the versions is important to understand. Also newer future CPUs may extend a specific CPU and questions in that tag maybe relevant.

If you are only posting to the tag try to give some specifics about the system you are using.

12252 questions
27
votes
2 answers

Difference between Program header and Section Header in ELF

Q1 What is the difference between Program header and Section Header in ELF? Q1.1 What is the difference between segment and a section? I believe pheaders point to sections only. Q2. What is the difference between File Header and Program Header? As…
user435739
27
votes
2 answers

Clang Cross Compiling for ARM?

Is it possible to set up Clang for cross compiling for the ARM processor? The host will likely be on x86 ( AMD64 - Probably Ubuntu 12.04 ) and the target would be ARM ( Raspberry Pi as well as Pandaboard - will do separate compilations for each ), I…
haziz
  • 12,994
  • 16
  • 54
  • 75
27
votes
8 answers

How do I set a software breakpoint on an ARM processor?

How do I do the equivalent of an x86 software interrupt: asm( "int $3" ) on an ARM processor (specifically a Cortex A8) to generate an event that will break execution under gdb?
engie
  • 2,569
  • 3
  • 18
  • 13
27
votes
1 answer

Invalid constant after fixup?

For some reason, when I try to compile this bit of code, the compiler says syscall.s:72:invalid constant (0x172) after fixup: .globl _mach_msg_trap$MACH _mach_msg_trap$MACH: stmfd sp!, {r4,r7} mov r7, #370 /* this is line 72 */ svc 0 …
Kristina
  • 15,859
  • 29
  • 111
  • 181
26
votes
3 answers

Different Static Global Variables Share the Same Memory Address

Summary I have several C source files that all declare individual identically named static global variables. My understanding is that the static global variable in each file should be visible only within that file and should not have external…
helsmore
  • 263
  • 2
  • 8
26
votes
3 answers

An objcopy equivalent for Mac / iPhone?

I would like to rename symbols inside object files (.o) with something that would be the Mac equivalent of binutils' objcopy --redefine-syms tool. I found no arm-apple-darwin10-objcopy. I tried the MacPorts' arm-elf-binutils port and also tried to…
Gregory Pakosz
  • 69,011
  • 20
  • 139
  • 164
26
votes
4 answers

Simplest possible architecture that can be virtualized and run the Linux kernel

I've been inspired by Fabrice Bellard's implementation of an x86 virtual machine in Javascript, and I'd like to try writing the simplest possible virtual machine that is capable of running the Linux kernel. This is a purely educational endeavour,…
Richard Keller
  • 1,980
  • 2
  • 19
  • 32
25
votes
3 answers

Build Apple Silicon binary on Intel machine

How can I compile a C project on macOS 11 (Intel) to work on Silicon? My current build script is as simple as: ./configure make sudo make install I've tried using the --host and --target flags with aarch64-apple-darwin and arm-apple-darwin without…
Till
  • 1,107
  • 12
  • 28
25
votes
6 answers

What Java embedded VM do you suggest for ARM development?

There are a lot of Java embedded VMs. What do you suggest for ARM development? http://www.cacaovm.org/ http://www.rtjcom.com/main.php?p=home http://www.k-embedded-java.com/ http://jamvm.sourceforge.net/ I'm currently using the TINI platform from…
michelemarcon
  • 23,277
  • 17
  • 52
  • 68
25
votes
6 answers

Will Android Studio work on Mac with an ARM processor?

Will Android Studio work on Apple with arm chips ARM (the new Mac devices)?
amorenew
  • 10,760
  • 10
  • 47
  • 69
25
votes
5 answers

Why might one use the xzr register instead of the literal 0 on ARMv8?

I was reading the SVE whitepaper from ARM and came across something that struck me as odd (in a non-SVE example): mov x8, xzr I didn't know what this xzr register was, so I looked it up and found some content from ARM stating that it was, in many…
OMGtechy
  • 7,935
  • 8
  • 48
  • 83
25
votes
1 answer

What are .axf files?

I am new to arm architecture, I work on embedded software and was trying to learn about the .axf file which is present in my project binary's debug folder. Discovered that it is an arm executable format file generated by linker while the build…
Pravi
  • 599
  • 3
  • 6
  • 10
25
votes
1 answer

What does ABIs: armeabi-v7a in the android version detail mean? please provide the internal details of how this is used?

When running android list targets, I got ABIs: armeabi-v7a what does this mean? please provide the internal details of how this is used?
user1719747
  • 325
  • 1
  • 6
  • 12
25
votes
3 answers

ARM vs Thumb performance on iPhone 3GS, non floating point code

I was wondering if anyone had any hard numbers on ARM vs Thumb code performance on iPhone 3GS. Specifically for non-floating point (VFP or NEON) code - I'm aware of the issues with floating point performance in Thumb mode. Is there a point where the…
Justicle
  • 14,761
  • 17
  • 70
  • 94
25
votes
2 answers

How do I make an embedded Android OS with just one app?

I would like to make my own embedded system built on Android (ARM) just using devices distributed with Android but without their launcher. OR I want to start Android with my application launched on top and refuse to close it and shutdown Android…
xdonko
  • 269
  • 1
  • 3
  • 8