AI Engine Intrinsics User Guide (AIE) v2024.2
|
These intrinsics allow inserting or extracting of an individual element into/from a vector. More...
These intrinsics allow inserting or extracting of an individual element into/from a vector.
Inserting can be done either by pushing in a new value at one end of the vector and shifting or replacing a specific element.
Update element in a vector with a value | |
v64int16 | upd_elem (v64int16 a, unsigned idx, int b) |
Update element determined by idx in vector a by value b. | |
v32int16 | upd_elem (v32int16 a, unsigned idx, int b) |
Update element determined by idx in vector a by value b. | |
v16int16 | upd_elem (v16int16 a, unsigned idx, int b) |
Update element determined by idx in vector a by value b. | |
v8int16 | upd_elem (v8int16 a, unsigned idx, int b) |
Update element determined by idx in vector a by value b. | |
v32int32 | upd_elem (v32int32 a, unsigned idx, int b) |
Update element determined by idx in vector a by value b. | |
v16int32 | upd_elem (v16int32 a, unsigned idx, int b) |
Update element determined by idx in vector a by value b. | |
v8int32 | upd_elem (v8int32 a, unsigned idx, int b) |
Update element determined by idx in vector a by value b. | |
v4int32 | upd_elem (v4int32 a, unsigned idx, int b) |
Update element determined by idx in vector a by value b. | |
v32cint16 | upd_elem (v32cint16 a, unsigned idx, cint16 b) |
Update element determined by idx in vector a by value b. | |
v16cint16 | upd_elem (v16cint16 a, unsigned idx, cint16 b) |
Update element determined by idx in vector a by value b. | |
v8cint16 | upd_elem (v8cint16 a, unsigned idx, cint16 b) |
Update element determined by idx in vector a by value b. | |
v4cint16 | upd_elem (v4cint16 a, unsigned idx, cint16 b) |
Update element determined by idx in vector a by value b. | |
v32float | upd_elem (v32float a, unsigned idx, float b) |
Update element determined by idx in vector a by value b. | |
v16float | upd_elem (v16float a, unsigned idx, float b) |
Update element determined by idx in vector a by value b. | |
v8float | upd_elem (v8float a, unsigned idx, float b) |
Update element determined by idx in vector a by value b. | |
v4float | upd_elem (v4float a, unsigned idx, float b) |
Update element determined by idx in vector a by value b. | |
Update elements in a vector with two 32 bit values | |
v32int32 | upd_elem (v32int32 a, unsigned idx, int b0, int b1) |
Update elements determined by idx in vector a by values b0 and b1. | |
v16int32 | upd_elem (v16int32 a, unsigned idx, int b0, int b1) |
Update elements determined by idx in vector a by values b0 and b1. | |
v8int32 | upd_elem (v8int32 a, unsigned idx, int b0, int b1) |
Update elements determined by idx in vector a by values b0 and b1. | |
v4int32 | upd_elem (v4int32 a, unsigned idx, int b0, int b1) |
Update elements determined by idx in vector a by values b0 and b1. | |
v32cint16 | upd_elem (v32cint16 a, unsigned idx, cint16 b0, cint16 b1) |
Update elements determined by idx in vector a by values b0 and b1. | |
v16cint16 | upd_elem (v16cint16 a, unsigned idx, cint16 b0, cint16 b1) |
Update elements determined by idx in vector a by values b0 and b1. | |
v8cint16 | upd_elem (v8cint16 a, unsigned idx, cint16 b0, cint16 b1) |
Update elements determined by idx in vector a by values b0 and b1. | |
v4cint16 | upd_elem (v4cint16 a, unsigned idx, cint16 b0, cint16 b1) |
Update elements determined by idx in vector a by values b0 and b1. | |
v32float | upd_elem (v32float a, unsigned idx, float b0, float b1) |
Update elements determined by idx in vector a by values b0 and b1. | |
v16float | upd_elem (v16float a, unsigned idx, float b0, float b1) |
Update elements determined by idx in vector a by values b0 and b1. | |
v8float | upd_elem (v8float a, unsigned idx, float b0, float b1) |
Update elements determined by idx in vector a by values b0 and b1. | |
v4float | upd_elem (v4float a, unsigned idx, float b0, float b1) |
Update elements determined by idx in vector a by values b0 and b1. | |
Update element in a vector with a complex 32-bit value | |
v16cint32 | upd_elem (v16cint32 a, unsigned idx, cint32 b) |
Update element determined by idx in vector a by value b. | |
v8cint32 | upd_elem (v8cint32 a, unsigned idx, cint32 b) |
Update element determined by idx in vector a by value b. | |
v4cint32 | upd_elem (v4cint32 a, unsigned idx, cint32 b) |
Update element determined by idx in vector a by value b. | |
v2cint32 | upd_elem (v2cint32 a, unsigned idx, cint32 b) |
Update element determined by idx in vector a by value b. | |
v16cfloat | upd_elem (v16cfloat a, unsigned idx, cfloat b) |
Update element determined by idx in vector a by value b. | |
v8cfloat | upd_elem (v8cfloat a, unsigned idx, cfloat b) |
Update element determined by idx in vector a by value b. | |
v4cfloat | upd_elem (v4cfloat a, unsigned idx, cfloat b) |
Update element determined by idx in vector a by value b. | |
v2cfloat | upd_elem (v2cfloat a, unsigned idx, cfloat b) |
Update element determined by idx in vector a by value b. | |
Extract an element from a vector | |
int | ext_elem (v64int16 a, unsigned idx) |
Extract element determined by idx from vector a. | |
int | ext_elem (v32int16 a, unsigned idx) |
Extract element determined by idx from vector a. | |
int | ext_elem (v16int16 a, unsigned idx) |
Extract element determined by idx from vector a. | |
int | ext_elem (v8int16 a, unsigned idx) |
Extract element determined by idx from vector a. | |
int | ext_elem (v32int32 a, unsigned idx) |
Extract element determined by idx from vector a. | |
int | ext_elem (v16int32 a, unsigned idx) |
Extract element determined by idx from vector a. | |
int | ext_elem (v8int32 a, unsigned idx) |
Extract element determined by idx from vector a. | |
int | ext_elem (v4int32 a, unsigned idx) |
Extract element determined by idx from vector a. | |
cint16 | ext_elem (v32cint16 a, unsigned idx) |
Extract element determined by idx from vector a. | |
cint16 | ext_elem (v16cint16 a, unsigned idx) |
Extract element determined by idx from vector a. | |
cint16 | ext_elem (v8cint16 a, unsigned idx) |
Extract element determined by idx from vector a. | |
cint16 | ext_elem (v4cint16 a, unsigned idx) |
Extract element determined by idx from vector a. | |
cint32 | ext_elem (v16cint32 a, unsigned idx) |
Extract element determined by idx from vector a. | |
cint32 | ext_elem (v8cint32 a, unsigned idx) |
Extract element determined by idx from vector a. | |
cint32 | ext_elem (v4cint32 a, unsigned idx) |
Extract element determined by idx from vector a. | |
cint32 | ext_elem (v2cint32 a, unsigned idx) |
Extract element determined by idx from vector a. | |
float | ext_elem (v32float a, unsigned idx) |
Extract element determined by idx from vector a. | |
float | ext_elem (v16float a, unsigned idx) |
Extract element determined by idx from vector a. | |
float | ext_elem (v8float a, unsigned idx) |
Extract element determined by idx from vector a. | |
float | ext_elem (v4float a, unsigned idx) |
Extract element determined by idx from vector a. | |
cfloat | ext_elem (v16cfloat a, unsigned idx) |
Extract element determined by idx from vector a. | |
cfloat | ext_elem (v8cfloat a, unsigned idx) |
Extract element determined by idx from vector a. | |
cfloat | ext_elem (v4cfloat a, unsigned idx) |
Extract element determined by idx from vector a. | |
cfloat | ext_elem (v2cfloat a, unsigned idx) |
Extract element determined by idx from vector a. | |
Extract a 20 bit element from a vector | |
addr_t | ext_addr (v32int32 a, unsigned idx) |
Extract element determined by idx from vector a. | |
addr_t | ext_addr (v16int32 a, unsigned idx) |
Extract element determined by idx from vector a. | |
addr_t | ext_addr (v8int32 a, unsigned idx) |
Extract element determined by idx from vector a. | |
addr_t | ext_addr (v4int32 a, unsigned idx) |
Extract element determined by idx from vector a. | |
Extract two 20 bit elements from a vector | |
void | ext_addr (v32int32 a, unsigned idx, addr_t &b0, addr_t &b1) |
Extract element determined by idx from vector a. | |
void | ext_addr (v16int32 a, unsigned idx, addr_t &b0, addr_t &b1) |
Extract element determined by idx from vector a. | |
void | ext_addr (v8int32 a, unsigned idx, addr_t &b0, addr_t &b1) |
Extract element determined by idx from vector a. | |
void | ext_addr (v4int32 a, unsigned idx, addr_t &b0, addr_t &b1) |
Extract element determined by idx from vector a. | |
Shift elements into a vector | |
v8int16 | shft_elem (v8int16 vec, int n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v4cint16 | shft_elem (v4cint16 vec, cint16 n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v4int32 | shft_elem (v4int32 vec, int n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v4float | shft_elem (v4float vec, float n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v2cint32 | shft_elem (v2cint32 vec, cint32 n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v2cfloat | shft_elem (v2cfloat vec, cfloat n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v16int16 | shft_elem (v16int16 vec, int n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v8cint16 | shft_elem (v8cint16 vec, cint16 n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v8int32 | shft_elem (v8int32 vec, int n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v8float | shft_elem (v8float vec, float n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v4cint32 | shft_elem (v4cint32 vec, cint32 n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v4cfloat | shft_elem (v4cfloat vec, cfloat n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v32int16 | shft_elem (v32int16 vec, int n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v16cint16 | shft_elem (v16cint16 vec, cint16 n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v16int32 | shft_elem (v16int32 vec, int n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v16float | shft_elem (v16float vec, float n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v8cint32 | shft_elem (v8cint32 vec, cint32 n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
v8cfloat | shft_elem (v8cfloat vec, cfloat n) |
Insert a new element at the beginning of a vector by shifting the other elements. | |
addr_t ext_addr | ( | v16int32 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
void ext_addr | ( | v16int32 | a, |
unsigned | idx, | ||
addr_t & | b0, | ||
addr_t & | b1 | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
b0 | 20 bit value |
b1 | 20 bit value |
Extracts 2 20 bit values from the vector and places the lower indexed (2*idx) element into b0 and the higher indexed (2*idx + 1) into b1. The lower 20 bits of a 32 bit vector element are stored in b0/b1.
addr_t ext_addr | ( | v32int32 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
void ext_addr | ( | v32int32 | a, |
unsigned | idx, | ||
addr_t & | b0, | ||
addr_t & | b1 | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
b0 | 20 bit value |
b1 | 20 bit value |
Extracts 2 20 bit values from the vector and places the lower indexed (2*idx) element into b0 and the higher indexed (2*idx + 1) into b1. The lower 20 bits of a 32 bit vector element are stored in b0/b1.
addr_t ext_addr | ( | v4int32 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
void ext_addr | ( | v4int32 | a, |
unsigned | idx, | ||
addr_t & | b0, | ||
addr_t & | b1 | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
b0 | 20 bit value |
b1 | 20 bit value |
Extracts 2 20 bit values from the vector and places the lower indexed (2*idx) element into b0 and the higher indexed (2*idx + 1) into b1. The lower 20 bits of a 32 bit vector element are stored in b0/b1.
addr_t ext_addr | ( | v8int32 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
void ext_addr | ( | v8int32 | a, |
unsigned | idx, | ||
addr_t & | b0, | ||
addr_t & | b1 | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
b0 | 20 bit value |
b1 | 20 bit value |
Extracts 2 20 bit values from the vector and places the lower indexed (2*idx) element into b0 and the higher indexed (2*idx + 1) into b1. The lower 20 bits of a 32 bit vector element are stored in b0/b1.
cfloat ext_elem | ( | v16cfloat | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
cint16 ext_elem | ( | v16cint16 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
cint32 ext_elem | ( | v16cint32 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
float ext_elem | ( | v16float | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
int ext_elem | ( | v16int16 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
int ext_elem | ( | v16int32 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
cfloat ext_elem | ( | v2cfloat | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
cint32 ext_elem | ( | v2cint32 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
cint16 ext_elem | ( | v32cint16 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
float ext_elem | ( | v32float | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
int ext_elem | ( | v32int16 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
int ext_elem | ( | v32int32 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
cfloat ext_elem | ( | v4cfloat | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
cint16 ext_elem | ( | v4cint16 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
cint32 ext_elem | ( | v4cint32 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
float ext_elem | ( | v4float | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
int ext_elem | ( | v4int32 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
int ext_elem | ( | v64int16 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
cfloat ext_elem | ( | v8cfloat | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
cint16 ext_elem | ( | v8cint16 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
cint32 ext_elem | ( | v8cint32 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
float ext_elem | ( | v8float | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
int ext_elem | ( | v8int16 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
int ext_elem | ( | v8int32 | a, |
unsigned | idx | ||
) |
Extract element determined by idx from vector a.
a | The vector from which the element will be extracted from |
idx | Index used to choose element in vector |
v16cint16 shft_elem | ( | v16cint16 | vec, |
cint16 | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v16float shft_elem | ( | v16float | vec, |
float | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v16int16 shft_elem | ( | v16int16 | vec, |
int | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v16int32 shft_elem | ( | v16int32 | vec, |
int | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v2cfloat shft_elem | ( | v2cfloat | vec, |
cfloat | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v2cint32 shft_elem | ( | v2cint32 | vec, |
cint32 | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v32int16 shft_elem | ( | v32int16 | vec, |
int | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v4cfloat shft_elem | ( | v4cfloat | vec, |
cfloat | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v4cint16 shft_elem | ( | v4cint16 | vec, |
cint16 | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v4cint32 shft_elem | ( | v4cint32 | vec, |
cint32 | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v4float shft_elem | ( | v4float | vec, |
float | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v4int32 shft_elem | ( | v4int32 | vec, |
int | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v8cfloat shft_elem | ( | v8cfloat | vec, |
cfloat | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v8cint16 shft_elem | ( | v8cint16 | vec, |
cint16 | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v8cint32 shft_elem | ( | v8cint32 | vec, |
cint32 | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v8float shft_elem | ( | v8float | vec, |
float | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v8int16 shft_elem | ( | v8int16 | vec, |
int | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v8int32 shft_elem | ( | v8int32 | vec, |
int | n | ||
) |
Insert a new element at the beginning of a vector by shifting the other elements.
These intrinsics shift all elements of a vector up by one element, therefore losing the highest element and insert a new element in the first position and then returns the vector. The following code demonstrates this operation:
vec | Vector to be shifted and into which the new value is inserted. |
n | New value that will be inserted into the vector. |
Within the DPD, this intrinsic is used to feed the incoming streams into the corresponding vectors. For example, it might be used like this:
v16cfloat upd_elem | ( | v16cfloat | a, |
unsigned | idx, | ||
cfloat | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v16cint16 upd_elem | ( | v16cint16 | a, |
unsigned | idx, | ||
cint16 | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v16cint16 upd_elem | ( | v16cint16 | a, |
unsigned | idx, | ||
cint16 | b0, | ||
cint16 | b1 | ||
) |
Update elements determined by idx in vector a by values b0 and b1.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b0 | 32 bit value |
b1 | 32 bit value |
32 bits from both b0 and b1 are used to update two consecutive 32 bit elements of vector a. The elements are grouped into pairs such as 0+1, 2+3, etc. and idx is used to select which pair is updated. b0 goes in the lower bits (idx*2) and b1 goes in the higher bits (idx*2 + 1). An idx of 5 would select the 5th pairing which would be elements 10 and 11.
v16cint32 upd_elem | ( | v16cint32 | a, |
unsigned | idx, | ||
cint32 | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v16float upd_elem | ( | v16float | a, |
unsigned | idx, | ||
float | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v16float upd_elem | ( | v16float | a, |
unsigned | idx, | ||
float | b0, | ||
float | b1 | ||
) |
Update elements determined by idx in vector a by values b0 and b1.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b0 | 32 bit value |
b1 | 32 bit value |
32 bits from both b0 and b1 are used to update two consecutive 32 bit elements of vector a. The elements are grouped into pairs such as 0+1, 2+3, etc. and idx is used to select which pair is updated. b0 goes in the lower bits (idx*2) and b1 goes in the higher bits (idx*2 + 1). An idx of 5 would select the 5th pairing which would be elements 10 and 11.
v16int16 upd_elem | ( | v16int16 | a, |
unsigned | idx, | ||
int | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v16int32 upd_elem | ( | v16int32 | a, |
unsigned | idx, | ||
int | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v16int32 upd_elem | ( | v16int32 | a, |
unsigned | idx, | ||
int | b0, | ||
int | b1 | ||
) |
Update elements determined by idx in vector a by values b0 and b1.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b0 | 32 bit value |
b1 | 32 bit value |
32 bits from both b0 and b1 are used to update two consecutive 32 bit elements of vector a. The elements are grouped into pairs such as 0+1, 2+3, etc. and idx is used to select which pair is updated. b0 goes in the lower bits (idx*2) and b1 goes in the higher bits (idx*2 + 1). An idx of 5 would select the 5th pairing which would be elements 10 and 11.
v2cfloat upd_elem | ( | v2cfloat | a, |
unsigned | idx, | ||
cfloat | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v2cint32 upd_elem | ( | v2cint32 | a, |
unsigned | idx, | ||
cint32 | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v32cint16 upd_elem | ( | v32cint16 | a, |
unsigned | idx, | ||
cint16 | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v32cint16 upd_elem | ( | v32cint16 | a, |
unsigned | idx, | ||
cint16 | b0, | ||
cint16 | b1 | ||
) |
Update elements determined by idx in vector a by values b0 and b1.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b0 | 32 bit value |
b1 | 32 bit value |
32 bits from both b0 and b1 are used to update two consecutive 32 bit elements of vector a. The elements are grouped into pairs such as 0+1, 2+3, etc. and idx is used to select which pair is updated. b0 goes in the lower bits (idx*2) and b1 goes in the higher bits (idx*2 + 1). An idx of 5 would select the 5th pairing which would be elements 10 and 11.
v32float upd_elem | ( | v32float | a, |
unsigned | idx, | ||
float | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v32float upd_elem | ( | v32float | a, |
unsigned | idx, | ||
float | b0, | ||
float | b1 | ||
) |
Update elements determined by idx in vector a by values b0 and b1.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b0 | 32 bit value |
b1 | 32 bit value |
32 bits from both b0 and b1 are used to update two consecutive 32 bit elements of vector a. The elements are grouped into pairs such as 0+1, 2+3, etc. and idx is used to select which pair is updated. b0 goes in the lower bits (idx*2) and b1 goes in the higher bits (idx*2 + 1). An idx of 5 would select the 5th pairing which would be elements 10 and 11.
v32int16 upd_elem | ( | v32int16 | a, |
unsigned | idx, | ||
int | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v32int32 upd_elem | ( | v32int32 | a, |
unsigned | idx, | ||
int | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v32int32 upd_elem | ( | v32int32 | a, |
unsigned | idx, | ||
int | b0, | ||
int | b1 | ||
) |
Update elements determined by idx in vector a by values b0 and b1.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b0 | 32 bit value |
b1 | 32 bit value |
32 bits from both b0 and b1 are used to update two consecutive 32 bit elements of vector a. The elements are grouped into pairs such as 0+1, 2+3, etc. and idx is used to select which pair is updated. b0 goes in the lower bits (idx*2) and b1 goes in the higher bits (idx*2 + 1). An idx of 5 would select the 5th pairing which would be elements 10 and 11.
v4cfloat upd_elem | ( | v4cfloat | a, |
unsigned | idx, | ||
cfloat | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v4cint16 upd_elem | ( | v4cint16 | a, |
unsigned | idx, | ||
cint16 | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v4cint16 upd_elem | ( | v4cint16 | a, |
unsigned | idx, | ||
cint16 | b0, | ||
cint16 | b1 | ||
) |
Update elements determined by idx in vector a by values b0 and b1.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b0 | 32 bit value |
b1 | 32 bit value |
32 bits from both b0 and b1 are used to update two consecutive 32 bit elements of vector a. The elements are grouped into pairs such as 0+1, 2+3, etc. and idx is used to select which pair is updated. b0 goes in the lower bits (idx*2) and b1 goes in the higher bits (idx*2 + 1). An idx of 5 would select the 5th pairing which would be elements 10 and 11.
v4cint32 upd_elem | ( | v4cint32 | a, |
unsigned | idx, | ||
cint32 | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v4float upd_elem | ( | v4float | a, |
unsigned | idx, | ||
float | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v4float upd_elem | ( | v4float | a, |
unsigned | idx, | ||
float | b0, | ||
float | b1 | ||
) |
Update elements determined by idx in vector a by values b0 and b1.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b0 | 32 bit value |
b1 | 32 bit value |
32 bits from both b0 and b1 are used to update two consecutive 32 bit elements of vector a. The elements are grouped into pairs such as 0+1, 2+3, etc. and idx is used to select which pair is updated. b0 goes in the lower bits (idx*2) and b1 goes in the higher bits (idx*2 + 1). An idx of 5 would select the 5th pairing which would be elements 10 and 11.
v4int32 upd_elem | ( | v4int32 | a, |
unsigned | idx, | ||
int | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v4int32 upd_elem | ( | v4int32 | a, |
unsigned | idx, | ||
int | b0, | ||
int | b1 | ||
) |
Update elements determined by idx in vector a by values b0 and b1.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b0 | 32 bit value |
b1 | 32 bit value |
32 bits from both b0 and b1 are used to update two consecutive 32 bit elements of vector a. The elements are grouped into pairs such as 0+1, 2+3, etc. and idx is used to select which pair is updated. b0 goes in the lower bits (idx*2) and b1 goes in the higher bits (idx*2 + 1). An idx of 5 would select the 5th pairing which would be elements 10 and 11.
v64int16 upd_elem | ( | v64int16 | a, |
unsigned | idx, | ||
int | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v8cfloat upd_elem | ( | v8cfloat | a, |
unsigned | idx, | ||
cfloat | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v8cint16 upd_elem | ( | v8cint16 | a, |
unsigned | idx, | ||
cint16 | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v8cint16 upd_elem | ( | v8cint16 | a, |
unsigned | idx, | ||
cint16 | b0, | ||
cint16 | b1 | ||
) |
Update elements determined by idx in vector a by values b0 and b1.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b0 | 32 bit value |
b1 | 32 bit value |
32 bits from both b0 and b1 are used to update two consecutive 32 bit elements of vector a. The elements are grouped into pairs such as 0+1, 2+3, etc. and idx is used to select which pair is updated. b0 goes in the lower bits (idx*2) and b1 goes in the higher bits (idx*2 + 1). An idx of 5 would select the 5th pairing which would be elements 10 and 11.
v8cint32 upd_elem | ( | v8cint32 | a, |
unsigned | idx, | ||
cint32 | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v8float upd_elem | ( | v8float | a, |
unsigned | idx, | ||
float | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v8float upd_elem | ( | v8float | a, |
unsigned | idx, | ||
float | b0, | ||
float | b1 | ||
) |
Update elements determined by idx in vector a by values b0 and b1.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b0 | 32 bit value |
b1 | 32 bit value |
32 bits from both b0 and b1 are used to update two consecutive 32 bit elements of vector a. The elements are grouped into pairs such as 0+1, 2+3, etc. and idx is used to select which pair is updated. b0 goes in the lower bits (idx*2) and b1 goes in the higher bits (idx*2 + 1). An idx of 5 would select the 5th pairing which would be elements 10 and 11.
v8int16 upd_elem | ( | v8int16 | a, |
unsigned | idx, | ||
int | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v8int32 upd_elem | ( | v8int32 | a, |
unsigned | idx, | ||
int | b | ||
) |
Update element determined by idx in vector a by value b.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b | value to update. |
v8int32 upd_elem | ( | v8int32 | a, |
unsigned | idx, | ||
int | b0, | ||
int | b1 | ||
) |
Update elements determined by idx in vector a by values b0 and b1.
a | The vector containing the element to be updated |
idx | Index used to choose where to update in vector a |
b0 | 32 bit value |
b1 | 32 bit value |
32 bits from both b0 and b1 are used to update two consecutive 32 bit elements of vector a. The elements are grouped into pairs such as 0+1, 2+3, etc. and idx is used to select which pair is updated. b0 goes in the lower bits (idx*2) and b1 goes in the higher bits (idx*2 + 1). An idx of 5 would select the 5th pairing which would be elements 10 and 11.