xref: /aosp_15_r20/external/pytorch/aten/src/ATen/native/TransposeType.h (revision da0073e96a02ea20f0ac840b70461e3646d07c45)
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)14 static 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