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
79
votes
8 answers

Mono on Raspberry Pi

I've seen a lot of talk about running Mono/.NET code on the Raspberry Pi. Has there been any success in actually running any Mono code on a Raspberry Pi? On their site, they list several Linux distributions that work on the device and some of these…
AngryHacker
  • 59,598
  • 102
  • 325
  • 594
78
votes
13 answers

ARM compilation error, VFP registers used by executable, not object file

I have been having this problem for the last few days and I can't get my head around what is really happening here, or what is the problem. I have a makefile with these flags: CC = arm-linux-gnueabihf-gcc-4.6 FLAGS = -O3 -march=armv7-a…
Jim
  • 3,236
  • 8
  • 33
  • 43
78
votes
8 answers

Docker on Mac M1 gives: "The requested image's platform (linux/amd64) does not match the detected host platform"

I want to run a docker container for Ganache on my MacBook M1, but get the following error: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested After this…
MrsBookik
  • 825
  • 1
  • 7
  • 6
78
votes
2 answers

Android Studio - How Can I Make an AVD With ARM Instead of HAXM?

I'm new to Android Studio. My computer doesn't support HAXM so it won't let me install that to use for virtualization. In some similar questions on this website people mention setting up a virtual device with an ARM instead of HAXM. How can I do…
user2636417
  • 2,357
  • 3
  • 15
  • 8
77
votes
13 answers

How to install SciPy on Apple Silicon (ARM / M1)

I have successfully installed python 3.9.1 with Numpy and Matplotlib on a new Mac mini with Apple Silicon. However, I cannot install SciPy : I get compilation errors when using python3 -m pip install scipy I also tried installing everything from…
David Sénéchal
  • 937
  • 1
  • 7
  • 4
76
votes
6 answers

How to detect 386, amd64, arm, or arm64 OS architecture via shell/bash

I'm looking for a POSIX shell/bash command to determine if the OS architecture is 386, amd64, arm, or arm64?
Justin
  • 42,716
  • 77
  • 201
  • 296
74
votes
5 answers

Android Studio : Missing Strip Tool

I am constantly getting this warning while building my android studio code using terminal command gradle clean assembleRelease: Unable to strip library 'lib.so' due to missing strip tool for ABI 'ARMEABI'. Packaging it as is. Please help me on how…
Sanket B
  • 1,070
  • 1
  • 9
  • 23
74
votes
6 answers

What is the difference between the ARM, Thumb and Thumb 2 instruction encodings?

I am a bit confused about instruction sets. There are Thumb, ARM and Thumb 2. From what I have read Thumb instructions are all 16-bit but inside the ARMv7M user manual (page vi) there are Thumb 16-bit and Thumb 32-bit instructions mentioned. Now I…
71GA
  • 1,132
  • 6
  • 36
  • 69
74
votes
1 answer

What is the difference between arm-linux-gcc and arm-none-linux-gnueabi

What is the difference between arm-linux-gcc and arm-none-linux-gnueabi and arm-linux-gnueabi toolchains? Do they compile differently?
user1891109
  • 741
  • 1
  • 6
  • 3
69
votes
1 answer

Difference between arm-eabi arm-gnueabi and gnueabi-hf compilers

What is the difference between arm-eabi, gnueabi and gnueabi-hf cross compilers?
preetam
  • 1,451
  • 1
  • 17
  • 43
68
votes
6 answers

What is the use of ARM EABI v7a System image in android?

What for do we need ARM EABI v7a System image in Android development? What is the purpose of that particular image?
Sunil Gandham
  • 707
  • 1
  • 6
  • 6
68
votes
3 answers

What is the booting process for ARM?

As we know, for X86 architecture: After we press the power button, machine starts to execute code at 0xFFFFFFF0, then it starts to execute code in BIOS in order to do hardware initialization. After BIOS execution, it use bootloader to load the OS…
Fengwei Zhang
  • 1,027
  • 2
  • 10
  • 14
68
votes
1 answer

What is the ARM Thumb Instruction set?

under "The Thumb instruction set" in section 1-34 of "ARM11TechnicalRefManual" it said that: "The Thumb instruction set is a subset of the most commonly used 32-bit ARM instructions.Thumb instructions are 16 bits long,and have a corresponding…
Soroush
  • 989
  • 2
  • 10
  • 16
67
votes
4 answers

arm gcc toolchain as arm-elf or arm-none-eabi, what is the difference?

When you build a gcc toolchain there is the possibility to build it as arm-elf or as arm-none-eabi, but what is the difference? I use the eabi today, but that is just since everyone else seem to do that... but since that is a really bad argument,…
Johan
  • 20,067
  • 28
  • 92
  • 110
66
votes
6 answers

What registers to save in the ARM C calling convention?

It's been a while since I last coded arm assembler and I'm a little rusty on the details. If I call a C function from arm, I only have to worry about saving r0-r3 and lr, right? If the C function uses any other registers, is it responsible for…
richq
  • 55,548
  • 20
  • 150
  • 144