llvm_unreachable("Unknown OverheadType");
}
+OverheadType mlir::sparse_tensor::pointerOverheadTypeEncoding(
+ const SparseTensorEncodingAttr &enc) {
+ return overheadTypeEncoding(enc.getPointerBitWidth());
+}
+
+OverheadType mlir::sparse_tensor::indexOverheadTypeEncoding(
+ const SparseTensorEncodingAttr &enc) {
+ return overheadTypeEncoding(enc.getIndexBitWidth());
+}
+
Type mlir::sparse_tensor::getPointerOverheadType(
Builder &builder, const SparseTensorEncodingAttr &enc) {
- return getOverheadType(builder,
- overheadTypeEncoding(enc.getPointerBitWidth()));
+ return getOverheadType(builder, pointerOverheadTypeEncoding(enc));
}
Type mlir::sparse_tensor::getIndexOverheadType(
Builder &builder, const SparseTensorEncodingAttr &enc) {
- return getOverheadType(builder, overheadTypeEncoding(enc.getIndexBitWidth()));
+ return getOverheadType(builder, indexOverheadTypeEncoding(enc));
}
StringRef mlir::sparse_tensor::overheadTypeFunctionSuffix(OverheadType ot) {
/// Converts the internal type-encoding for overhead storage to an mlir::Type.
Type getOverheadType(Builder &builder, OverheadType ot);
+/// Returns the OverheadType for pointer overhead storage.
+OverheadType pointerOverheadTypeEncoding(const SparseTensorEncodingAttr &enc);
+
+/// Returns the OverheadType for index overhead storage.
+OverheadType indexOverheadTypeEncoding(const SparseTensorEncodingAttr &enc);
+
/// Returns the mlir::Type for pointer overhead storage.
Type getPointerOverheadType(Builder &builder,
const SparseTensorEncodingAttr &enc);