1 #pragma once 2 #include <c10/util/Exception.h> 3 4 namespace at::native { 5 6 // Used as an interface between the different BLAS-like libraries 7 enum class TransposeType { 8 NoTranspose, 9 Transpose, 10 ConjTranspose, 11 }; 12 13 // Transforms TransposeType into the BLAS / LAPACK format to_blas(TransposeType trans)14static inline char to_blas(TransposeType trans) { 15 switch (trans) { 16 case TransposeType::Transpose: return 'T'; 17 case TransposeType::NoTranspose: return 'N'; 18 case TransposeType::ConjTranspose: return 'C'; 19 } 20 TORCH_INTERNAL_ASSERT(false, "Invalid transpose type"); 21 } 22 23 } // namespace at::native 24