The NEON Vector-SIMD (Single Instruction Multiple Data) architecture is a hybrid 64/128-bit SIMD architecture extension to the ARM v7-A profile targeted at multimedia applications. Positioning NEON within a processor allows it to share the CPU (central processing unit) resources for integer operation, loop control, and caching, significantly reducing the area and power cost compared with a CPU-plus-hardware-accelerator combination.


This paper provides a simple introduction to the NEON Vector-SIMD architecture and examines the compiler support for SIMD, both through automatic recognition and through the use of intrinsic functions.