Extraction intrinsics enable lanes to be selected from vector and accumulator types.
More...
Extraction intrinsics enable lanes to be selected from vector and accumulator types.
Extract from lane specified through either idx parameter or number in intrinsic name.
store_hi and store_lo intrinsic functions
Store the 48/80 bit from the accumulator sign extended in a 64/128 bit integer. store_lo takes the lower lanes of the accumulator and store_hi the higher ones.
ext_hi and ext_lo intrinsic functions
Extract the top half or bottom half of the lanes within a data type.
ext_v(,<N>,) intrinsic functions
ext_v(,0...7,)
extract successive 128-bit lanes from a 256-bit(lanes 0-1), 512-bit(lanes 0-3) or 1024-bit(lanes 0-7) vector.
ext_w(,<N>,) intrinsic functions
ext_w(,0...3,)
extract successive 256-bit lanes from a large vector.
ext_x(,<N>,) intrinsic functions
ext_x(,0...1,)
extract successive 512-bit lanes from a 1024-bit vector.
|
v4int64 | store_lo (v8acc48 acc) |
| Store the 48 bit from the accumulator sign extended in a 64 bit integer. This is done for the 4 lower lanes.
|
|
v4int64 | store_hi (v8acc48 acc) |
| Store the 48 bit from the accumulator sign extended in a 64 bit integer. This is done for the 4 higher lanes.
|
|
v2cint64 | store_lo (v4cacc48 acc) |
| Store the 48 bit from the accumulator sign extended in a 64 bit integer. This is done for the 2 lower lanes.
|
|
v2cint64 | store_hi (v4cacc48 acc) |
| Store the 48 bit from the accumulator sign extended in a 64 bit integer. This is done for the 2 higher lanes.
|
|
v2int128 | store_lo (v4acc80 acc) |
| Store the 80 bit from the accumulator sign extended in a 128 bit integer. This is done for the 2 lower lanes.
|
|
v2int128 | store_hi (v4acc80 acc) |
| Store the 80 bit from the accumulator sign extended in a 128 bit integer. This is done for the 2 higher lanes.
|
|
v1cint128 | store_lo (v2cacc80 acc) |
| Store the 80 bit from the accumulator sign extended in a 128 bit integer. This is done for the 1 lower lanes.
|
|
v1cint128 | store_hi (v2cacc80 acc) |
| Store the 80 bit from the accumulator sign extended in a 128 bit integer. This is done for the 1 higher lanes.
|
|
|
v16int8 | pack (v16int16 vec) |
| Pack vectors and store to memory These intrinsics use the saturation value from the control register here: Control Register. Rounding is not done. No status flags are updated. These intrinsics can only be used coupled with a memory access operation. Ex: v16int8* ptr = pack(vec);//vec if of type v16int16.
|
|
v16uint8 | upack (v16int16 vec) |
| Pack vectors and store to memory These intrinsics use the saturation value from the control register here: Control Register. Rounding is not done. No status flags are updated. These intrinsics can only be used coupled with a memory access operation. Ex: v16int8* ptr = pack(vec);//vec if of type v16int16.
|
|
v32int8 | pack (v32int16 vec) |
| Pack vectors and store to memory These intrinsics use the saturation value from the control register here: Control Register. Rounding is not done. No status flags are updated. These intrinsics can only be used coupled with a memory access operation. Ex: v16int8* ptr = pack(vec);//vec if of type v16int16.
|
|
v32uint8 | upack (v32int16 vec) |
| Pack vectors and store to memory These intrinsics use the saturation value from the control register here: Control Register. Rounding is not done. No status flags are updated. These intrinsics can only be used coupled with a memory access operation. Ex: v16int8* ptr = pack(vec);//vec if of type v16int16.
|
|
|
v16int8 | ext_v (v32int8 buf, int idx) |
| Extract a v16int8 vector from a v32int8 vector.
|
|
v16uint8 | ext_v (v32uint8 buf, int idx) |
| Extract a v16uint8 vector from a v32uint8 vector.
|
|
v8int16 | ext_v (v16int16 buf, int idx) |
| Extract a v8int16 vector from a v16int16 vector.
|
|
v4cint16 | ext_v (v8cint16 buf, int idx) |
| Extract a v4cint16 vector from a v8cint16 vector.
|
|
v4int32 | ext_v (v8int32 buf, int idx) |
| Extract a v4int32 vector from a v8int32 vector.
|
|
v2cint32 | ext_v (v4cint32 buf, int idx) |
| Extract a v2cint32 vector from a v4cint32 vector.
|
|
v4float | ext_v (v8float buf, int idx) |
| Extract a v4float vector from a v8float vector.
|
|
v2cfloat | ext_v (v4cfloat buf, int idx) |
| Extract a v2cfloat vector from a v4cfloat vector.
|
|
|
v16int8 | ext_v (v64int8 buf, int idx) |
| Extract a v16int8 vector from a v64int8 vector.
|
|
v16uint8 | ext_v (v64uint8 buf, int idx) |
| Extract a v16uint8 vector from a v64uint8 vector.
|
|
v8int16 | ext_v (v32int16 buf, int idx) |
| Extract a v8int16 vector from a v32int16 vector.
|
|
v4cint16 | ext_v (v16cint16 buf, int idx) |
| Extract a v4cint16 vector from a v16cint16 vector.
|
|
v4int32 | ext_v (v16int32 buf, int idx) |
| Extract a v4int32 vector from a v16int32 vector.
|
|
v2cint32 | ext_v (v8cint32 buf, int idx) |
| Extract a v2cint32 vector from a v8cint32 vector.
|
|
v4float | ext_v (v16float buf, int idx) |
| Extract a v4float vector from a v16float vector.
|
|
v2cfloat | ext_v (v8cfloat buf, int idx) |
| Extract a v2cfloat vector from a v8cfloat vector.
|
|
|
v16int8 | ext_v (v128int8 buf, int idx) |
| Extract a v16int8 vector from a v128int8 vector.
|
|
v16uint8 | ext_v (v128uint8 buf, int idx) |
| Extract a v16uint8 vector from a v128uint8 vector.
|
|
v8int16 | ext_v (v64int16 buf, int idx) |
| Extract a v8int16 vector from a v64int16 vector.
|
|
v4cint16 | ext_v (v32cint16 buf, int idx) |
| Extract a v4cint16 vector from a v32cint16 vector.
|
|
v4int32 | ext_v (v32int32 buf, int idx) |
| Extract a v4int32 vector from a v32int32 vector.
|
|
v2cint32 | ext_v (v16cint32 buf, int idx) |
| Extract a v2cint32 vector from a v16cint32 vector.
|
|
v4float | ext_v (v32float buf, int idx) |
| Extract a v4float vector from a v32float vector.
|
|
v2cfloat | ext_v (v16cfloat buf, int idx) |
| Extract a v2cfloat vector from a v16cfloat vector.
|
|
|
v32int8 | ext_w (v64int8 buf, int idx) |
| Extract a v32int8 vector from a v64int8 vector.
|
|
v32uint8 | ext_w (v64uint8 buf, int idx) |
| Extract a v32uint8 vector from a v64uint8 vector.
|
|
v16int16 | ext_w (v32int16 buf, int idx) |
| Extract a v16int16 vector from a v32int16 vector.
|
|
v8cint16 | ext_w (v16cint16 buf, int idx) |
| Extract a v8cint16 vector from a v16cint16 vector.
|
|
v8int32 | ext_w (v16int32 buf, int idx) |
| Extract a v8int32 vector from a v16int32 vector.
|
|
v4cint32 | ext_w (v8cint32 buf, int idx) |
| Extract a v4cint32 vector from a v8cint32 vector.
|
|
v8float | ext_w (v16float buf, int idx) |
| Extract a v8float vector from a v16float vector.
|
|
v4cfloat | ext_w (v8cfloat buf, int idx) |
| Extract a v4cfloat vector from a v8cfloat vector.
|
|
|
v32int8 | ext_w (v128int8 buf, int idx) |
| Extract a v32int8 vector from a v128int8 vector.
|
|
v32uint8 | ext_w (v128uint8 buf, int idx) |
| Extract a v32uint8 vector from a v128uint8 vector.
|
|
v16int16 | ext_w (v64int16 buf, int idx) |
| Extract a v16int16 vector from a v64int16 vector.
|
|
v8cint16 | ext_w (v32cint16 buf, int idx) |
| Extract a v8cint16 vector from a v32cint16 vector.
|
|
v8int32 | ext_w (v32int32 buf, int idx) |
| Extract a v8int32 vector from a v32int32 vector.
|
|
v4cint32 | ext_w (v16cint32 buf, int idx) |
| Extract a v4cint32 vector from a v16cint32 vector.
|
|
v8float | ext_w (v32float buf, int idx) |
| Extract a v8float vector from a v32float vector.
|
|
v4cfloat | ext_w (v16cfloat buf, int idx) |
| Extract a v4cfloat vector from a v16cfloat vector.
|
|
|
v64int8 | ext_x (v128int8 buf, int idx) |
| Extract a v64int8 vector from a v128int8 vector.
|
|
v64uint8 | ext_x (v128uint8 buf, int idx) |
| Extract a v64uint8 vector from a v128uint8 vector.
|
|
v32int16 | ext_x (v64int16 buf, int idx) |
| Extract a v32int16 vector from a v64int16 vector.
|
|
v16cint16 | ext_x (v32cint16 buf, int idx) |
| Extract a v16cint16 vector from a v32cint16 vector.
|
|
v16int32 | ext_x (v32int32 buf, int idx) |
| Extract a v16int32 vector from a v32int32 vector.
|
|
v8cint32 | ext_x (v16cint32 buf, int idx) |
| Extract a v8cint32 vector from a v16cint32 vector.
|
|
v16float | ext_x (v32float buf, int idx) |
| Extract a v16float vector from a v32float vector.
|
|
v8cfloat | ext_x (v16cfloat buf, int idx) |
| Extract a v8cfloat vector from a v16cfloat vector.
|
|
|
v8acc48 | ext_lo (v16acc48 buf) |
| Extract the low or high v8acc48 vector from a v16acc48 vector.
|
|
v8acc48 | ext_hi (v16acc48 buf) |
| Extract the low or high v8acc48 vector from a v16acc48 vector.
|
|
v4cacc48 | ext_lo (v8cacc48 buf) |
| Extract the low or high v4cacc48 vector from a v8cacc48 vector.
|
|
v4cacc48 | ext_hi (v8cacc48 buf) |
| Extract the low or high v4cacc48 vector from a v8cacc48 vector.
|
|
v4acc80 | ext_lo (v8acc80 buf) |
| Extract the low or high v4acc80 vector from a v8acc80 vector.
|
|
v4acc80 | ext_hi (v8acc80 buf) |
| Extract the low or high v4acc80 vector from a v8acc80 vector.
|
|
v2cacc80 | ext_lo (v4cacc80 buf) |
| Extract the low or high v2cacc80 vector from a v4cacc80 vector.
|
|
v2cacc80 | ext_hi (v4cacc80 buf) |
| Extract the low or high v2cacc80 vector from a v4cacc80 vector.
|
|
|
unsigned int | ext0 (mac_idx) |
|
unsigned int | ext1 (mac_idx) |
|
unsigned int | ext0 (pmx_idx) |
|
unsigned int | ext1 (pmx_idx) |
|
unsigned int | ext2 (pmx_idx) |
|
◆ ext0() [1/2]
unsigned int ext0 |
( |
mac_idx |
| ) |
|
◆ ext0() [2/2]
unsigned int ext0 |
( |
pmx_idx |
| ) |
|
◆ ext1() [1/2]
unsigned int ext1 |
( |
mac_idx |
| ) |
|
◆ ext1() [2/2]
unsigned int ext1 |
( |
pmx_idx |
| ) |
|
◆ ext2()
unsigned int ext2 |
( |
pmx_idx |
| ) |
|
◆ ext_hi() [1/8]
v8acc48 ext_hi |
( |
v16acc48 |
buf | ) |
|
Extract the low or high v8acc48 vector from a v16acc48 vector.
- Parameters
-
- Returns
- Extracted sub-vector
◆ ext_hi() [2/8]
◆ ext_hi() [3/8]
◆ ext_hi() [4/8]
◆ ext_hi() [5/8]
v2cacc80 ext_hi |
( |
v4cacc80 |
buf | ) |
|
Extract the low or high v2cacc80 vector from a v4cacc80 vector.
- Parameters
-
- Returns
- Extracted sub-vector
◆ ext_hi() [6/8]
v4acc80 ext_hi |
( |
v8acc80 |
buf | ) |
|
Extract the low or high v4acc80 vector from a v8acc80 vector.
- Parameters
-
- Returns
- Extracted sub-vector
◆ ext_hi() [7/8]
◆ ext_hi() [8/8]
v4cacc48 ext_hi |
( |
v8cacc48 |
buf | ) |
|
Extract the low or high v4cacc48 vector from a v8cacc48 vector.
- Parameters
-
- Returns
- Extracted sub-vector
◆ ext_lo() [1/10]
v8acc48 ext_lo |
( |
v16acc48 |
buf | ) |
|
Extract the low or high v8acc48 vector from a v16acc48 vector.
- Parameters
-
- Returns
- Extracted sub-vector
◆ ext_lo() [2/10]
◆ ext_lo() [3/10]
◆ ext_lo() [4/10]
◆ ext_lo() [5/10]
v2cacc80 ext_lo |
( |
v4cacc80 |
buf | ) |
|
Extract the low or high v2cacc80 vector from a v4cacc80 vector.
- Parameters
-
- Returns
- Extracted sub-vector
◆ ext_lo() [6/10]
◆ ext_lo() [7/10]
v4acc80 ext_lo |
( |
v8acc80 |
buf | ) |
|
Extract the low or high v4acc80 vector from a v8acc80 vector.
- Parameters
-
- Returns
- Extracted sub-vector
◆ ext_lo() [8/10]
◆ ext_lo() [9/10]
v4cacc48 ext_lo |
( |
v8cacc48 |
buf | ) |
|
Extract the low or high v4cacc48 vector from a v8cacc48 vector.
- Parameters
-
- Returns
- Extracted sub-vector
◆ ext_lo() [10/10]
◆ ext_v() [1/24]
v16int8 ext_v |
( |
v128int8 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v16int8 vector from a v128int8 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [2/24]
v16uint8 ext_v |
( |
v128uint8 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v16uint8 vector from a v128uint8 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [3/24]
v2cfloat ext_v |
( |
v16cfloat |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v2cfloat vector from a v16cfloat vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [4/24]
v4cint16 ext_v |
( |
v16cint16 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4cint16 vector from a v16cint16 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [5/24]
v2cint32 ext_v |
( |
v16cint32 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v2cint32 vector from a v16cint32 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [6/24]
v4float ext_v |
( |
v16float |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4float vector from a v16float vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [7/24]
v8int16 ext_v |
( |
v16int16 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v8int16 vector from a v16int16 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [8/24]
v4int32 ext_v |
( |
v16int32 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4int32 vector from a v16int32 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [9/24]
v4cint16 ext_v |
( |
v32cint16 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4cint16 vector from a v32cint16 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [10/24]
v4float ext_v |
( |
v32float |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4float vector from a v32float vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [11/24]
v8int16 ext_v |
( |
v32int16 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v8int16 vector from a v32int16 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [12/24]
v4int32 ext_v |
( |
v32int32 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4int32 vector from a v32int32 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [13/24]
v16int8 ext_v |
( |
v32int8 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v16int8 vector from a v32int8 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [14/24]
v16uint8 ext_v |
( |
v32uint8 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v16uint8 vector from a v32uint8 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [15/24]
v2cfloat ext_v |
( |
v4cfloat |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v2cfloat vector from a v4cfloat vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [16/24]
v2cint32 ext_v |
( |
v4cint32 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v2cint32 vector from a v4cint32 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [17/24]
v8int16 ext_v |
( |
v64int16 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v8int16 vector from a v64int16 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [18/24]
v16int8 ext_v |
( |
v64int8 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v16int8 vector from a v64int8 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [19/24]
v16uint8 ext_v |
( |
v64uint8 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v16uint8 vector from a v64uint8 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [20/24]
v2cfloat ext_v |
( |
v8cfloat |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v2cfloat vector from a v8cfloat vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [21/24]
v4cint16 ext_v |
( |
v8cint16 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4cint16 vector from a v8cint16 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [22/24]
v2cint32 ext_v |
( |
v8cint32 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v2cint32 vector from a v8cint32 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [23/24]
v4float ext_v |
( |
v8float |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4float vector from a v8float vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_v() [24/24]
v4int32 ext_v |
( |
v8int32 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4int32 vector from a v8int32 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [1/16]
v32int8 ext_w |
( |
v128int8 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v32int8 vector from a v128int8 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [2/16]
v32uint8 ext_w |
( |
v128uint8 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v32uint8 vector from a v128uint8 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [3/16]
v4cfloat ext_w |
( |
v16cfloat |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4cfloat vector from a v16cfloat vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [4/16]
v8cint16 ext_w |
( |
v16cint16 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v8cint16 vector from a v16cint16 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [5/16]
v4cint32 ext_w |
( |
v16cint32 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4cint32 vector from a v16cint32 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [6/16]
v8float ext_w |
( |
v16float |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v8float vector from a v16float vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [7/16]
v8int32 ext_w |
( |
v16int32 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v8int32 vector from a v16int32 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [8/16]
v8cint16 ext_w |
( |
v32cint16 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v8cint16 vector from a v32cint16 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [9/16]
v8float ext_w |
( |
v32float |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v8float vector from a v32float vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [10/16]
v16int16 ext_w |
( |
v32int16 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v16int16 vector from a v32int16 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [11/16]
v8int32 ext_w |
( |
v32int32 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v8int32 vector from a v32int32 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [12/16]
v16int16 ext_w |
( |
v64int16 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v16int16 vector from a v64int16 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [13/16]
v32int8 ext_w |
( |
v64int8 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v32int8 vector from a v64int8 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [14/16]
v32uint8 ext_w |
( |
v64uint8 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v32uint8 vector from a v64uint8 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [15/16]
v4cfloat ext_w |
( |
v8cfloat |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4cfloat vector from a v8cfloat vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_w() [16/16]
v4cint32 ext_w |
( |
v8cint32 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v4cint32 vector from a v8cint32 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_x() [1/8]
v64int8 ext_x |
( |
v128int8 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v64int8 vector from a v128int8 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_x() [2/8]
v64uint8 ext_x |
( |
v128uint8 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v64uint8 vector from a v128uint8 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_x() [3/8]
v8cfloat ext_x |
( |
v16cfloat |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v8cfloat vector from a v16cfloat vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_x() [4/8]
v8cint32 ext_x |
( |
v16cint32 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v8cint32 vector from a v16cint32 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_x() [5/8]
v16cint16 ext_x |
( |
v32cint16 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v16cint16 vector from a v32cint16 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_x() [6/8]
v16float ext_x |
( |
v32float |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v16float vector from a v32float vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_x() [7/8]
v16int32 ext_x |
( |
v32int32 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v16int32 vector from a v32int32 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ ext_x() [8/8]
v32int16 ext_x |
( |
v64int16 |
buf, |
|
|
int |
idx |
|
) |
| |
Extract a v32int16 vector from a v64int16 vector.
- Parameters
-
buf | Source vector |
idx | Defines which part of the source vector is extracted. Must be a compile-time constant. |
- Returns
- Extracted sub-vector
◆ pack() [1/2]
v16int8 pack |
( |
v16int16 |
vec | ) |
|
Pack vectors and store to memory These intrinsics use the saturation value from the control register here: Control Register. Rounding is not done. No status flags are updated. These intrinsics can only be used coupled with a memory access operation. Ex: v16int8* ptr = pack(vec);//vec if of type v16int16.
◆ pack() [2/2]
v32int8 pack |
( |
v32int16 |
vec | ) |
|
Pack vectors and store to memory These intrinsics use the saturation value from the control register here: Control Register. Rounding is not done. No status flags are updated. These intrinsics can only be used coupled with a memory access operation. Ex: v16int8* ptr = pack(vec);//vec if of type v16int16.
◆ store_hi() [1/4]
Store the 80 bit from the accumulator sign extended in a 128 bit integer. This is done for the 1 higher lanes.
- Parameters
-
- Returns
- Output vector
◆ store_hi() [2/4]
v2int128 store_hi |
( |
v4acc80 |
acc | ) |
|
Store the 80 bit from the accumulator sign extended in a 128 bit integer. This is done for the 2 higher lanes.
- Parameters
-
- Returns
- Output vector
◆ store_hi() [3/4]
v2cint64 store_hi |
( |
v4cacc48 |
acc | ) |
|
Store the 48 bit from the accumulator sign extended in a 64 bit integer. This is done for the 2 higher lanes.
- Parameters
-
- Returns
- Output vector
◆ store_hi() [4/4]
v4int64 store_hi |
( |
v8acc48 |
acc | ) |
|
Store the 48 bit from the accumulator sign extended in a 64 bit integer. This is done for the 4 higher lanes.
- Parameters
-
- Returns
- Output vector
◆ store_lo() [1/4]
Store the 80 bit from the accumulator sign extended in a 128 bit integer. This is done for the 1 lower lanes.
- Parameters
-
- Returns
- Output vector
◆ store_lo() [2/4]
v2int128 store_lo |
( |
v4acc80 |
acc | ) |
|
Store the 80 bit from the accumulator sign extended in a 128 bit integer. This is done for the 2 lower lanes.
- Parameters
-
- Returns
- Output vector
◆ store_lo() [3/4]
v2cint64 store_lo |
( |
v4cacc48 |
acc | ) |
|
Store the 48 bit from the accumulator sign extended in a 64 bit integer. This is done for the 2 lower lanes.
- Parameters
-
- Returns
- Output vector
◆ store_lo() [4/4]
v4int64 store_lo |
( |
v8acc48 |
acc | ) |
|
Store the 48 bit from the accumulator sign extended in a 64 bit integer. This is done for the 4 lower lanes.
- Parameters
-
- Returns
- Output vector
◆ upack() [1/2]
v16uint8 upack |
( |
v16int16 |
vec | ) |
|
Pack vectors and store to memory These intrinsics use the saturation value from the control register here: Control Register. Rounding is not done. No status flags are updated. These intrinsics can only be used coupled with a memory access operation. Ex: v16int8* ptr = pack(vec);//vec if of type v16int16.
◆ upack() [2/2]
v32uint8 upack |
( |
v32int16 |
vec | ) |
|
Pack vectors and store to memory These intrinsics use the saturation value from the control register here: Control Register. Rounding is not done. No status flags are updated. These intrinsics can only be used coupled with a memory access operation. Ex: v16int8* ptr = pack(vec);//vec if of type v16int16.