| #pragma once |
| |
| // See Note [hip-clang differences to hcc] |
| |
| #if defined(__CUDA_ARCH__) || defined(__HIP_DEVICE_COMPILE__) || \ |
| defined(__HIP__) || (defined(__clang__) && defined(__CUDA__)) |
| #define CONVERSIONS_DECL __host__ __device__ inline |
| #else |
| #define CONVERSIONS_DECL inline |
| #endif |
| |
| #ifdef _MSC_VER |
| #undef IN |
| #undef OUT |
| #endif |
| |
| namespace caffe2 { |
| |
| namespace convert { |
| |
| template <typename IN, typename OUT> |
| CONVERSIONS_DECL OUT To(const IN in) { |
| return static_cast<OUT>(in); |
| } |
| |
| template <typename OUT, typename IN> |
| CONVERSIONS_DECL OUT Get(IN x) { |
| return static_cast<OUT>(x); |
| } |
| |
| }; // namespace convert |
| |
| }; // namespace caffe2 |
| |
| #undef CONVERSIONS_DECL |