Skip to content

spirom/arm-linux-assembly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

This is a collection of ARM assembly self-education projects for Cortex-A based single board computers running various forms of Linux. They all make use of gcc and the associated assembler, and tend to use a C main that calls the assembly routines, as well as unit tests written in C.

Platforms

Raspberry Pi 3 Model B

Based on a quad-core Arm Cortex-A53 and running the Raspbian 9 (Stretch) operating system.

It is important to understand that, while this is a 64 bit CPU, conforming to the ARMv8-A architecture spec, Raspbian is a 32 bit operating system, making the CPU effectively conform to the ARMv7-A architecture spec. Supports both the ARM and Thumb instruction sets.

PINE64 ROCKPro64

The Rockip RK3399-based ROCKPro64 running Armbian Bionic. This is a rather odd big.LITTLE configuration with two Cortex-A72 and four Cortex-A53 cores as well as a Neon co-processor.

Features from `/proc/cpuinfo'

fp asimd evtstrm aes pmull sha1 sha2 crc32

Examples

Example Location
Ring Buffer ring-buffer
Vector Addition with NEON instructions neon

Reading Material

A Guide to ARM64 / AArch64 Assembly on Linux with Shellcodes and Cryptography

The A64 Instruction Set Version 1.0

About

ARM Cortex-A assembly projects for various Linux-based SBCs

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published