Lines Matching refs:perm
104 uint64_t rank, const uint64_t *perm, in assertPermutedSizesMatchShape() argument
106 assert(perm && shape); in assertPermutedSizesMatchShape()
109 assert((shape[r] == 0 || shape[r] == dimSizes[perm[r]]) && in assertPermutedSizesMatchShape()
226 const uint64_t *perm, in newSparseTensorCOO()
231 permsz[perm[r]] = dimSizes[r]; in newSparseTensorCOO()
267 const uint64_t *perm, const DimLevelType *sparsity) in SparseTensorStorageBase() argument
270 assert(perm && sparsity); in SparseTensorStorageBase()
282 rev[perm[r]] = r; in SparseTensorStorageBase()
395 const uint64_t *perm, const DimLevelType *sparsity) in SparseTensorStorage() argument
396 : SparseTensorStorageBase(dimSizes, perm, sparsity), pointers(getRank()), in SparseTensorStorage()
406 const uint64_t *perm, const DimLevelType *sparsity, in SparseTensorStorage() argument
408 : SparseTensorStorage(dimSizes, perm, sparsity) { in SparseTensorStorage()
452 const uint64_t *perm, const DimLevelType *sparsity,
520 const uint64_t *perm) const final { in newEnumerator()
521 *out = new SparseTensorEnumerator<P, I, V>(*this, rank, perm); in newEnumerator()
528 SparseTensorCOO<V> *toCOO(const uint64_t *perm) const { in toCOO()
530 newEnumerator(&enumerator, getRank(), perm); in toCOO()
552 newSparseTensor(uint64_t rank, const uint64_t *shape, const uint64_t *perm, in newSparseTensor() argument
557 assertPermutedSizesMatchShape(coosz, rank, perm, shape); in newSparseTensor()
558 n = new SparseTensorStorage<P, I, V>(coosz, perm, sparsity, coo); in newSparseTensor()
563 permsz[perm[r]] = shape[r]; in newSparseTensor()
566 n = new SparseTensorStorage<P, I, V>(permsz, perm, sparsity, coo); in newSparseTensor()
579 newSparseTensor(uint64_t rank, const uint64_t *shape, const uint64_t *perm, in newSparseTensor() argument
584 source->newEnumerator(&enumerator, rank, perm); in newSparseTensor()
586 assertPermutedSizesMatchShape(permsz, rank, perm, shape); in newSparseTensor()
588 new SparseTensorStorage<P, I, V>(permsz, perm, sparsity, *source); in newSparseTensor()
793 uint64_t rank, const uint64_t *perm) in SparseTensorEnumeratorBase() argument
796 assert(perm && "Received nullptr for permutation"); in SparseTensorEnumeratorBase()
801 uint64_t t = perm[rev[s]]; // `t` target-order in SparseTensorEnumeratorBase()
848 uint64_t rank, const uint64_t *perm) in SparseTensorEnumerator() argument
849 : Base(tensor, rank, perm) {} in SparseTensorEnumerator()
1012 const std::vector<uint64_t> &dimSizes, const uint64_t *perm, in SparseTensorStorage() argument
1014 : SparseTensorStorage(dimSizes, perm, sparsity) { in SparseTensorStorage()
1016 tensor.newEnumerator(&enumerator, getRank(), perm); in SparseTensorStorage()
1358 const uint64_t *perm, PrimaryType valTp) { in openSparseTensorCOO() argument
1377 perm, nnz); in openSparseTensorCOO()
1385 indices[perm[r]] = idx - 1; in openSparseTensorCOO()
1429 uint64_t *indices, uint64_t *perm, uint8_t *sparse) { in toMLIRSparseTensor() argument
1433 std::vector<uint64_t> order(perm, perm + rank); in toMLIRSparseTensor()
1447 auto *coo = SparseTensorCOO<V>::newSparseTensorCOO(rank, shape, perm, nse); in toMLIRSparseTensor()
1451 idx[perm[r]] = indices[base + r]; in toMLIRSparseTensor()
1457 rank, shape, perm, sparsity, coo); in toMLIRSparseTensor()
1471 std::vector<uint64_t> perm(rank); in fromMLIRSparseTensor() local
1472 std::iota(perm.begin(), perm.end(), 0); in fromMLIRSparseTensor()
1473 SparseTensorCOO<V> *coo = sparseTensor->toCOO(perm.data()); in fromMLIRSparseTensor()
1517 coo = openSparseTensorCOO<V>(filename, rank, shape, perm, v); \
1524 rank, shape, perm, sparsity, coo); \
1531 return SparseTensorStorage<P, I, V>::newSparseTensor(rank, shape, perm, \
1535 return SparseTensorCOO<V>::newSparseTensorCOO(rank, shape, perm); \
1536 coo = static_cast<SparseTensorStorage<P, I, V> *>(ptr)->toCOO(perm); \
1565 const index_type *perm = pref->data + pref->offset; in _mlir_ciface_newSparseTensor() local
1728 const index_type *perm = pref->data + pref->offset; \ in FOREVERY_O()
1732 indices[perm[r]] = indx[r]; \ in FOREVERY_O()
1854 uint64_t *indices, uint64_t *perm, uint8_t *sparse) { \
1855 return toMLIRSparseTensor<V>(rank, nse, shape, values, indices, perm, \