21.02
|
Go to the source code of this file.
Macros | |||||||||||||||||||||||||
#define | COMPUTE_M0_START_ROW(y, M0, PARTIAL_STORE_M0) ((uint)(y * M0)) | ||||||||||||||||||||||||
STORE_ROW_n | |||||||||||||||||||||||||
Store the 0 to (n-1)th rows of the given variables
| |||||||||||||||||||||||||
#define | STORE_ROW_1(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_2(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_3(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_4(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_5(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_6(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_7(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_8(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_9(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_10(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_11(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_12(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_13(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_14(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_15(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_16(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
CONVERT_STORE_ROW_n | |||||||||||||||||||||||||
Convert and store the 0th to (n-1)th rows of the given variables
| |||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_1(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_2(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_3(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_4(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_5(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_6(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_7(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_8(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_9(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_10(N0, DATA, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_11(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_12(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_13(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_14(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_15(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_ROW_16(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
STORE_BLOCK | |||||||||||||||||||||||||
Store a block of the given size M0xN0 Supported cases are M0=1,2,3,...,16 and N0=2,3,4,8,16. The data to store is expected to have consecutive names for each row. E.g., for M0=3 and basename=c, the expected names are c0, c1 and c2. The Z offset is expected to have consecutive names. E.g., for M0=3 and Z=zin, the expected z offset names are zin0, zin1 and zin2.
| |||||||||||||||||||||||||
#define | STORE_BLOCK_STR(M0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) STORE_ROW_##M0(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_BLOCK(M0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) STORE_BLOCK_STR(M0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
CONVERT_STORE_BLOCK | |||||||||||||||||||||||||
Convert and store a block of the given size M0xN0 Supported cases are M0=1,2,3,...,16 and N0=2,3,4,8,16. The data to store is expected to have consecutive names for each row. E.g., for M0=3 and basename=c, the expected names are c0, c1 and c2. The Z offset is expected to have consecutive names. E.g., for M0=3 and Z=zin, the expected z offset names are zin0, zin1 and zin2.
| |||||||||||||||||||||||||
#define | CONVERT_STORE_BLOCK_STR(M0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) CONVERT_STORE_ROW_##M0(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | CONVERT_STORE_BLOCK(M0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) CONVERT_STORE_BLOCK_STR(M0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
STORE_ROW_PARTIAL_n | |||||||||||||||||||||||||
Partially store the 0 to (n-1)th rows of the given variables Within each row, store the lower
| |||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_1(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_2(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_3(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_4(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_5(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_6(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_7(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_8(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_9(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_10(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_11(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_12(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_13(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_14(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_15(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_ROW_PARTIAL_16(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
STORE_BLOCK_PARTIAL | |||||||||||||||||||||||||
Partially store a block of the given size STORE_M0xSTORE_N0
The data to store is expected to have consecutive names for each row. E.g., for STORE_M0=3 and basename=c, the expected names are c0, c1 and c2. The Z offset is expected to have consecutive names. E.g., for STORE_M0=3 and Z=zin, the expected z offset names are zin0, zin1 and zin2.
| |||||||||||||||||||||||||
#define | STORE_BLOCK_PARTIAL_STR(STORE_M0, STORE_N0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) STORE_ROW_PARTIAL_##STORE_M0(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_BLOCK_PARTIAL(STORE_M0, STORE_N0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) STORE_BLOCK_PARTIAL_STR(STORE_M0, STORE_N0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) | ||||||||||||||||||||||||
#define | STORE_BLOCK_PARTIAL_IN_X_AND_Y(M0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z, PARTIAL_STORE_M0, PARTIAL_STORE_N0, PARTIAL_COND_Y, PARTIAL_COND_X) | ||||||||||||||||||||||||
Store a block that can be partial in both x and y dimensions. More... | |||||||||||||||||||||||||
#define | STORE_BLOCK_PARTIAL_IN_X(M0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z, PARTIAL_STORE_N0, PARTIAL_COND_X) | ||||||||||||||||||||||||
Store a block that can only be partial in x but not y. More... | |||||||||||||||||||||||||
#define | STORE_BLOCK_PARTIAL_IN_Y(M0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z, PARTIAL_STORE_M0, PARTIAL_COND_Y) | ||||||||||||||||||||||||
Store a block that can only be partial in y but not x. More... | |||||||||||||||||||||||||
#define | STORE_VECTOR_SELECT(basename, data_type, ptr, vec_size, leftover, cond) STORE_BLOCK_PARTIAL_IN_X(1, vec_size, data_type, basename, ptr, 0, 0, leftover, cond) | ||||||||||||||||||||||||
Store a vector that can only be partial in x. More... | |||||||||||||||||||||||||
#define COMPUTE_M0_START_ROW | ( | y, | |
M0, | |||
PARTIAL_STORE_M0 | |||
) | ((uint)(y * M0)) |
Definition at line 564 of file load_store_utility.h.
#define CONVERT_STORE_BLOCK | ( | M0, | |
N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) | CONVERT_STORE_BLOCK_STR(M0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) |
Definition at line 249 of file load_store_utility.h.
#define CONVERT_STORE_BLOCK_STR | ( | M0, | |
N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) | CONVERT_STORE_ROW_##M0(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) |
Definition at line 248 of file load_store_utility.h.
#define CONVERT_STORE_ROW_1 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 127 of file load_store_utility.h.
#define CONVERT_STORE_ROW_10 | ( | N0, | |
DATA, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 171 of file load_store_utility.h.
#define CONVERT_STORE_ROW_11 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 176 of file load_store_utility.h.
#define CONVERT_STORE_ROW_12 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 181 of file load_store_utility.h.
#define CONVERT_STORE_ROW_13 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 186 of file load_store_utility.h.
#define CONVERT_STORE_ROW_14 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 191 of file load_store_utility.h.
#define CONVERT_STORE_ROW_15 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 196 of file load_store_utility.h.
#define CONVERT_STORE_ROW_16 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 201 of file load_store_utility.h.
#define CONVERT_STORE_ROW_2 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 131 of file load_store_utility.h.
#define CONVERT_STORE_ROW_3 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 136 of file load_store_utility.h.
#define CONVERT_STORE_ROW_4 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 141 of file load_store_utility.h.
#define CONVERT_STORE_ROW_5 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 146 of file load_store_utility.h.
#define CONVERT_STORE_ROW_6 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 151 of file load_store_utility.h.
#define CONVERT_STORE_ROW_7 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 156 of file load_store_utility.h.
#define CONVERT_STORE_ROW_8 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 161 of file load_store_utility.h.
#define CONVERT_STORE_ROW_9 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 166 of file load_store_utility.h.
#define STORE_BLOCK | ( | M0, | |
N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) | STORE_BLOCK_STR(M0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) |
Definition at line 227 of file load_store_utility.h.
#define STORE_BLOCK_PARTIAL | ( | STORE_M0, | |
STORE_N0, | |||
N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) | STORE_BLOCK_PARTIAL_STR(STORE_M0, STORE_N0, N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) |
Definition at line 369 of file load_store_utility.h.
#define STORE_BLOCK_PARTIAL_IN_X | ( | M0, | |
N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z, | |||
PARTIAL_STORE_N0, | |||
PARTIAL_COND_X | |||
) |
Store a block that can only be partial in x but not y.
N0
or PARTIAL_STORE_N0
!= 1, 2, 3, 4, 8, 16, extra vstore(s) will be invoked, thus incurring small performance penalty.The data to store is expected to have consecutive names for each row. E.g., for M0=3 and basename=c, the expected names are c0, c1 and c2. The Z offset is expected to have consecutive names. E.g., for M0=3 and Z=zin, the expected z offset names are zin0, zin1 and zin2.
[in] | M0 | The number of rows to store, for non-partial blocks. Supported: 1-16 |
[in] | N0 | The size of each vector, for non-partial blocks. Supported: 1, 2, 3, 4, 8, 16 |
[in] | DATA_TYPE | The data type of the vectors |
[in] | BASENAME | The basename of the variables |
[in] | PTR | The base pointer |
[in] | STRIDE_Y | The stride value in y-axis direction |
[in] | Z | The offset in z-axis direction |
[in] | PARTIAL_STORE_N0 | The partial size in x, for partial blocks. Supported range: [1, N0 ) |
[in] | PARTIAL_COND_X | Condition on the x axis to perform the partial store X. True to use PARTIAL_STORE_N0 rather than N0. |
Definition at line 427 of file load_store_utility.h.
#define STORE_BLOCK_PARTIAL_IN_X_AND_Y | ( | M0, | |
N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z, | |||
PARTIAL_STORE_M0, | |||
PARTIAL_STORE_N0, | |||
PARTIAL_COND_Y, | |||
PARTIAL_COND_X | |||
) |
Store a block that can be partial in both x and y dimensions.
PARTIAL_STORE_N0
!= 1, 2, 3, 4, 8, 16, extra vstore(s) will be invoked, thus incurring small performance penalty.The data to store is expected to have consecutive names for each row. E.g., for M0=3 and basename=c, the expected names are c0, c1 and c2. The Z offset is expected to have consecutive names. E.g., for M0=3 and Z=zin, the expected z offset names are zin0, zin1 and zin2.
[in] | M0 | The number of rows to store, for non-partial blocks. Supported: 1-16 |
[in] | N0 | The size of each vector, for non-partial blocks. Supported: 1, 2, 3, 4, 8, 16 |
[in] | DATA_TYPE | The data type of the vectors |
[in] | BASENAME | The basename of the variables |
[in] | PTR | The base pointer |
[in] | STRIDE_Y | The stride value in y-axis direction |
[in] | Z | The offset in z-axis direction |
[in] | PARTIAL_STORE_M0 | The partial size in y, for partial blocks. Supported range: [1, M0 ) |
[in] | PARTIAL_STORE_N0 | The partial size in x, for partial blocks. Supported range: [1, N0 ) |
[in] | PARTIAL_COND_Y | Condition on the y axis to perform the partial store Y. True to use PARTIAL_STORE_M0 rather than M0. |
[in] | PARTIAL_COND_X | Condition on the x axis to perform the partial store X. True to use PARTIAL_STORE_N0 rather than N0. |
Definition at line 391 of file load_store_utility.h.
#define STORE_BLOCK_PARTIAL_IN_Y | ( | M0, | |
N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z, | |||
PARTIAL_STORE_M0, | |||
PARTIAL_COND_Y | |||
) |
Store a block that can only be partial in y but not x.
N0
or PARTIAL_STORE_N0
!= 1, 2, 3, 4, 8, 16, extra vstore(s) will be invoked, thus incurring small performance penalty.The data to store is expected to have consecutive names for each row. E.g., for M0=3 and basename=c, the expected names are c0, c1 and c2. The Z offset is expected to have consecutive names. E.g., for M0=3 and Z=zin, the expected z offset names are zin0, zin1 and zin2.
[in] | M0 | The number of rows to store, for non-partial blocks. Supported: 1-16 |
[in] | N0 | The size of each vector, for non-partial blocks. Supported: 1, 2, 3, 4, 8, 16 |
[in] | DATA_TYPE | The data type of the vectors |
[in] | BASENAME | The basename of the variables |
[in] | PTR | The base pointer |
[in] | STRIDE_Y | The stride value in y-axis direction |
[in] | Z | The offset in z-axis direction |
[in] | PARTIAL_STORE_M0 | The partial size in y, for partial blocks. Supported range: [1, M0 ) |
[in] | PARTIAL_COND_Y | Condition on the y axis to perform the partial store Y. True to use PARTIAL_STORE_M0 rather than M0. |
Definition at line 455 of file load_store_utility.h.
#define STORE_BLOCK_PARTIAL_STR | ( | STORE_M0, | |
STORE_N0, | |||
N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) | STORE_ROW_PARTIAL_##STORE_M0(N0, STORE_N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) |
Definition at line 368 of file load_store_utility.h.
#define STORE_BLOCK_STR | ( | M0, | |
N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) | STORE_ROW_##M0(N0, DATA_TYPE, BASENAME, PTR, STRIDE_Y, Z) |
Definition at line 226 of file load_store_utility.h.
#define STORE_ROW_1 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 36 of file load_store_utility.h.
#define STORE_ROW_10 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 80 of file load_store_utility.h.
#define STORE_ROW_11 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 85 of file load_store_utility.h.
#define STORE_ROW_12 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 90 of file load_store_utility.h.
#define STORE_ROW_13 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 95 of file load_store_utility.h.
#define STORE_ROW_14 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 100 of file load_store_utility.h.
#define STORE_ROW_15 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 105 of file load_store_utility.h.
#define STORE_ROW_16 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 110 of file load_store_utility.h.
#define STORE_ROW_2 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 40 of file load_store_utility.h.
#define STORE_ROW_3 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 45 of file load_store_utility.h.
#define STORE_ROW_4 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 50 of file load_store_utility.h.
#define STORE_ROW_5 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 55 of file load_store_utility.h.
#define STORE_ROW_6 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 60 of file load_store_utility.h.
#define STORE_ROW_7 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 65 of file load_store_utility.h.
#define STORE_ROW_8 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 70 of file load_store_utility.h.
#define STORE_ROW_9 | ( | N0, | |
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 75 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_1 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 267 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_10 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 311 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_11 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 316 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_12 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 321 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_13 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 326 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_14 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 331 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_15 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 336 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_16 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 341 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_2 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 271 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_3 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 276 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_4 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 281 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_5 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 286 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_6 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 291 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_7 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 296 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_8 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 301 of file load_store_utility.h.
#define STORE_ROW_PARTIAL_9 | ( | N0, | |
STORE_N0, | |||
DATA_TYPE, | |||
BASENAME, | |||
PTR, | |||
STRIDE_Y, | |||
Z | |||
) |
Definition at line 306 of file load_store_utility.h.
#define STORE_VECTOR_SELECT | ( | basename, | |
data_type, | |||
ptr, | |||
vec_size, | |||
leftover, | |||
cond | |||
) | STORE_BLOCK_PARTIAL_IN_X(1, vec_size, data_type, basename, ptr, 0, 0, leftover, cond) |
Store a vector that can only be partial in x.
vec_size
or leftover
!= 1, 2, 3, 4, 8, 16, extra vstore(s) will be invoked, thus incurring small performance penalty.The data to store is expected to end in a 0. E.g., for basename=c, the expected name is c0.
[in] | basename | The name of the variable without trailing 0 |
[in] | data_type | The data type of the vector |
[in] | ptr | The base pointer |
[in] | vec_size | The vector size if cond = false. Supported: 1, 2, 3, 4, 8, 16 |
[in] | leftover | The vector size if cond = true. Supported range: [1, vec_size0 ) |
[in] | cond | Condition to select either vec_size0 or vec_size1 |
Definition at line 584 of file load_store_utility.h.
Referenced by convert_depth_down(), convert_depth_up(), and direct_convolution_nhwc().