E.3. Intrinsics

The intrinsics described in this section map closely to NEON instructions. Each section begins with a list of function prototypes, with a comment specifying an equivalent assembler instruction. The compiler selects an instruction that has the required semantics, but there is no guarantee that the compiler produces the listed instruction.

The intrinsics use a naming scheme that is similar to the NEON unified assembler syntax. That is, each intrinsic has the form:

<opname><flags>_<type>

An additional q flag is provided to specify that the intrinsic operates on 128-bit vectors.

For example:

Note

The intrinsic function prototypes in this section use the following type annotations:

__const(n)

the argument n must be a compile-time constant

__constrange(min, max)

the argument must be a compile-time constant in the range min to max

__transfersize(n)

the intrinsic loads n bytes from this pointer.

Copyright © 2007, 2010 ARM Limited. All rights reserved.ARM DUI 0348A
Non-Confidential