Next: , Previous: ARM iWMMXt Built-in Functions, Up: Target Builtins


6.55.3 ARM NEON Intrinsics

These built-in intrinsics for the ARM Advanced SIMD extension are available when the -mfpu=neon switch is used:

6.55.3.1 Addition
6.55.3.2 Multiplication
6.55.3.3 Multiply-accumulate
6.55.3.4 Multiply-subtract
6.55.3.5 Subtraction
6.55.3.6 Comparison (equal-to)
6.55.3.7 Comparison (greater-than-or-equal-to)
6.55.3.8 Comparison (less-than-or-equal-to)
6.55.3.9 Comparison (greater-than)
6.55.3.10 Comparison (less-than)
6.55.3.11 Comparison (absolute greater-than-or-equal-to)
6.55.3.12 Comparison (absolute less-than-or-equal-to)
6.55.3.13 Comparison (absolute greater-than)
6.55.3.14 Comparison (absolute less-than)
6.55.3.15 Test bits
6.55.3.16 Absolute difference
6.55.3.17 Absolute difference and accumulate
6.55.3.18 Maximum
6.55.3.19 Minimum
6.55.3.20 Pairwise add
6.55.3.21 Pairwise add, single_opcode widen and accumulate
6.55.3.22 Folding maximum
6.55.3.23 Folding minimum
6.55.3.24 Reciprocal step
6.55.3.25 Vector shift left
6.55.3.26 Vector shift left by constant
6.55.3.27 Vector shift right by constant
6.55.3.28 Vector shift right by constant and accumulate
6.55.3.29 Vector shift right and insert
6.55.3.30 Vector shift left and insert
6.55.3.31 Absolute value
6.55.3.32 Negation
6.55.3.33 Bitwise not
6.55.3.34 Count leading sign bits
6.55.3.35 Count leading zeros
6.55.3.36 Count number of set bits
6.55.3.37 Reciprocal estimate
6.55.3.38 Reciprocal square-root estimate
6.55.3.39 Get lanes from a vector
6.55.3.40 Set lanes in a vector
6.55.3.41 Create vector from literal bit pattern
6.55.3.42 Set all lanes to the same value
6.55.3.43 Combining vectors
6.55.3.44 Splitting vectors
6.55.3.45 Conversions
6.55.3.46 Move, single_opcode narrowing
6.55.3.47 Move, single_opcode long
6.55.3.48 Table lookup
6.55.3.49 Extended table lookup
6.55.3.50 Multiply, lane
6.55.3.51 Long multiply, lane
6.55.3.52 Saturating doubling long multiply, lane
6.55.3.53 Saturating doubling multiply high, lane
6.55.3.54 Multiply-accumulate, lane
6.55.3.55 Multiply-subtract, lane
6.55.3.56 Vector multiply by scalar
6.55.3.57 Vector long multiply by scalar
6.55.3.58 Vector saturating doubling long multiply by scalar
6.55.3.59 Vector saturating doubling multiply high by scalar
6.55.3.60 Vector multiply-accumulate by scalar
6.55.3.61 Vector multiply-subtract by scalar
6.55.3.62 Vector extract
6.55.3.63 Reverse elements
6.55.3.64 Bit selection
6.55.3.65 Transpose elements
6.55.3.66 Zip elements
6.55.3.67 Unzip elements
6.55.3.68 Element/structure loads, VLD1 variants
6.55.3.69 Element/structure stores, VST1 variants
6.55.3.70 Element/structure loads, VLD2 variants
6.55.3.71 Element/structure stores, VST2 variants
6.55.3.72 Element/structure loads, VLD3 variants
6.55.3.73 Element/structure stores, VST3 variants
6.55.3.74 Element/structure loads, VLD4 variants
6.55.3.75 Element/structure stores, VST4 variants
6.55.3.76 Logical operations (AND)
6.55.3.77 Logical operations (OR)
6.55.3.78 Logical operations (exclusive OR)
6.55.3.79 Logical operations (AND-NOT)
6.55.3.80 Logical operations (OR-NOT)
6.55.3.81 Reinterpret casts