Changeset View
Changeset View
Standalone View
Standalone View
mlir/test/CAPI/sparse_tensor.c
Show All 37 Lines | static int testRoundtripEncoding(MlirContext ctx) { | ||||
MlirAffineMap dimOrdering = | MlirAffineMap dimOrdering = | ||||
mlirSparseTensorEncodingAttrGetDimOrdering(originalAttr); | mlirSparseTensorEncodingAttrGetDimOrdering(originalAttr); | ||||
// CHECK: (d0, d1, d2) -> (d0, d1, d2) | // CHECK: (d0, d1, d2) -> (d0, d1, d2) | ||||
mlirAffineMapDump(dimOrdering); | mlirAffineMapDump(dimOrdering); | ||||
MlirAffineMap higherOrdering = | MlirAffineMap higherOrdering = | ||||
mlirSparseTensorEncodingAttrGetHigherOrdering(originalAttr); | mlirSparseTensorEncodingAttrGetHigherOrdering(originalAttr); | ||||
// CHECK: (d0, d1)[s0] -> (s0, d0, d1) | // CHECK: (d0, d1)[s0] -> (s0, d0, d1) | ||||
mlirAffineMapDump(higherOrdering); | mlirAffineMapDump(higherOrdering); | ||||
// CHECK: level_type: 0 | // CHECK: level_type: 4 | ||||
// CHECK: level_type: 1 | // CHECK: level_type: 8 | ||||
// CHECK: level_type: 1 | // CHECK: level_type: 8 | ||||
int numLevelTypes = mlirSparseTensorEncodingGetNumDimLevelTypes(originalAttr); | int numLevelTypes = mlirSparseTensorEncodingGetNumDimLevelTypes(originalAttr); | ||||
enum MlirSparseTensorDimLevelType *levelTypes = | enum MlirSparseTensorDimLevelType *levelTypes = | ||||
malloc(sizeof(enum MlirSparseTensorDimLevelType) * numLevelTypes); | malloc(sizeof(enum MlirSparseTensorDimLevelType) * numLevelTypes); | ||||
for (int i = 0; i < numLevelTypes; ++i) { | for (int i = 0; i < numLevelTypes; ++i) { | ||||
levelTypes[i] = | levelTypes[i] = | ||||
mlirSparseTensorEncodingAttrGetDimLevelType(originalAttr, i); | mlirSparseTensorEncodingAttrGetDimLevelType(originalAttr, i); | ||||
fprintf(stderr, "level_type: %d\n", levelTypes[i]); | fprintf(stderr, "level_type: %d\n", levelTypes[i]); | ||||
} | } | ||||
Show All 30 Lines |