|
20 | 20 | #include "Kokkos_Core.hpp" //for LayoutLeft/LayoutRight |
21 | 21 | #include <KokkosKernels_config.h> //for all the ETI #cmakedefine macros |
22 | 22 |
|
| 23 | +// define a deprecated symbol = type in the global namespace |
| 24 | +// and a non-deprecated version in Kokkos Kernels |
| 25 | +// these deprecations were done in 4.4. |
| 26 | +#define KK_IMPL_MAKE_TYPE_ALIAS(symbol, type) \ |
| 27 | + using symbol [[deprecated("use KokkosKernels::" #type ".")]] = type; \ |
| 28 | + namespace KokkosKernels { \ |
| 29 | + using symbol = type; \ |
| 30 | + } |
| 31 | + |
23 | 32 | namespace KokkosKernels { |
24 | 33 |
|
25 | 34 | #if defined(KOKKOSKERNELS_INST_ORDINAL_INT) |
26 | | -using default_lno_t = int; |
| 35 | +KK_IMPL_MAKE_TYPE_ALIAS(default_lno_t, int) |
27 | 36 | #elif defined(KOKKOSKERNELS_INST_ORDINAL_INT64_T) |
28 | | -using default_lno_t = int64_t; |
| 37 | +KK_IMPL_MAKE_TYPE_ALIAS(default_lno_t, int64_t) |
29 | 38 | #else |
30 | 39 | // Non-ETI build: default to int |
31 | | -using default_lno_t = int; |
| 40 | +KK_IMPL_MAKE_TYPE_ALIAS(default_lno_t, int) |
32 | 41 | #endif |
33 | 42 | // Prefer int as the default offset type, because cuSPARSE doesn't support |
34 | 43 | // size_t for rowptrs. |
35 | 44 | #if defined(KOKKOSKERNELS_INST_OFFSET_INT) |
36 | | -using default_size_type = int; |
| 45 | +KK_IMPL_MAKE_TYPE_ALIAS(default_size_type, int) |
37 | 46 | #elif defined(KOKKOSKERNELS_INST_OFFSET_SIZE_T) |
38 | | -using default_size_type = size_t; |
| 47 | +KK_IMPL_MAKE_TYPE_ALIAS(default_size_type, size_t) |
39 | 48 | #else |
40 | 49 | // Non-ETI build: default to int |
41 | | -using default_size_type = int; |
| 50 | +KK_IMPL_MAKE_TYPE_ALIAS(default_size_type, int) |
42 | 51 | #endif |
43 | 52 |
|
44 | 53 | #if defined(KOKKOSKERNELS_INST_LAYOUTLEFT) |
45 | 54 | using default_layout = Kokkos::LayoutLeft; |
| 55 | +KK_IMPL_MAKE_TYPE_ALIAS(default_layout, Kokkos::LayoutLeft) |
46 | 56 | #elif defined(KOKKOSKERNELS_INST_LAYOUTRIGHT) |
47 | | -using default_layout = Kokkos::LayoutRight; |
| 57 | +KK_IMPL_MAKE_TYPE_ALIAS(default_layout, Kokkos::LayoutRight) |
48 | 58 | #else |
49 | | -using default_layout = Kokkos::LayoutLeft; |
| 59 | +KK_IMPL_MAKE_TYPE_ALIAS(default_layout, Kokkos::LayoutLeft) |
50 | 60 | #endif |
51 | 61 |
|
52 | 62 | #if defined(KOKKOSKERNELS_INST_DOUBLE) |
53 | | -using default_scalar = double; |
| 63 | +KK_IMPL_MAKE_TYPE_ALIAS(default_scalar, double) |
54 | 64 | #elif defined(KOKKOSKERNELS_INST_FLOAT) |
55 | | -using default_scalar = float; |
| 65 | +KK_IMPL_MAKE_TYPE_ALIAS(default_scalar, float) |
56 | 66 | #elif defined(KOKKOSKERNELS_INST_HALF) |
57 | | -using default_scalar = Kokkos::Experimental::half_t; |
| 67 | +KK_IMPL_MAKE_TYPE_ALIAS(default_scalar, Kokkos::Experimental::half_t) |
58 | 68 | #elif defined(KOKKOSKERNELS_INST_BHALF) |
59 | | -using default_scalar = Kokkos::Experimental::bhalf_t; |
| 69 | +KK_IMPL_MAKE_TYPE_ALIAS(default_scalar, Kokkos::Experimental::bhalf_t) |
60 | 70 | #else |
61 | | -using default_scalar = double; |
| 71 | +KK_IMPL_MAKE_TYPE_ALIAS(default_scalar, double) |
62 | 72 | #endif |
63 | 73 |
|
64 | 74 | #if defined(KOKKOS_ENABLE_CUDA) |
65 | | -using default_device = Kokkos::Cuda; |
| 75 | +KK_IMPL_MAKE_TYPE_ALIAS(default_device, Kokkos::Cuda) |
66 | 76 | #elif defined(KOKKOS_ENABLE_HIP) |
67 | | -using default_device = Kokkos::HIP; |
| 77 | +KK_IMPL_MAKE_TYPE_ALIAS(default_device, Kokkos::HIP) |
68 | 78 | #elif defined(KOKKOS_ENABLE_OPENMPTARGET) |
69 | | -using default_device = Kokkos::Experimental::OpenMPTarget; |
| 79 | +KK_IMPL_MAKE_TYPE_ALIAS(default_device, Kokkos::Experimental::OpenMPTarget) |
70 | 80 | #elif defined(KOKKOS_ENABLE_OPENMP) |
71 | | -using default_device = Kokkos::OpenMP; |
| 81 | +KK_IMPL_MAKE_TYPE_ALIAS(default_device, Kokkos::OpenMP) |
72 | 82 | #elif defined(KOKKOS_ENABLE_THREADS) |
73 | | -using default_device = Kokkos::Threads; |
| 83 | +KK_IMPL_MAKE_TYPE_ALIAS(default_device, Kokkos::Threads) |
74 | 84 | #else |
75 | | -using default_device = Kokkos::Serial; |
| 85 | +KK_IMPL_MAKE_TYPE_ALIAS(default_device, Kokkos::Serial) |
76 | 86 | #endif |
77 | 87 |
|
78 | 88 | } // namespace KokkosKernels |
79 | 89 |
|
| 90 | +#undef KK_IMPL_MAKE_TYPE_ALIAS |
| 91 | + |
80 | 92 | #endif // KOKKOSKERNELS_DEFAULT_TYPES_H |
0 commit comments