E.2. 向量数据类型

定义了以下类型来表示向量。 根据以下模式命名了 NEON 向量数据类型:


 <类型><大小>x<向量线条数>_t

例如,int16x4_t 是一个包含四条向量线的向量,每条向量线包含一个有符号 16 位整数。Table E.1 列出了向量数据类型。

Table E.1. 向量数据类型

int8x8_t int8x16_t
int16x4_t int16x8_t
int32x2_t int32x4_t
int64x1_t int64x2_t
uint8x8_t uint8x16_t
uint16x4_t uint16x8_t
uint32x2_t uint32x4_t
uint64x1_t uint64x2_t
float32x2_t float32x4_t
poly8x8_t poly8x16_t
poly16x4_t poly16x8_t

某些内在函数使用以下格式的向量类型数组:


<类型><大小>x<向量线条数>x<数组长度>_t 

这些类型被视为包含名为 val 的单个元素的普通 C 结构。

以下是一个结构定义示例:


	struct int16x4x2_t

	{

	    int16x4_t val[2];

	};

为长度为 2 至 4 的数组定义了数组类型,其向量类型为以上列出的任何一种。

Copyright © 2007 ARM Limited. All rights reserved. ARM DUI 0348AC
Non-Confidential