|  | #ifndef HIP_VECTOR_COMPATIBILITY_H | 
|  | #define HIP_VECTOR_COMPATIBILITY_H | 
|  |  | 
|  | namespace hip_impl { | 
|  | template <typename, typename, unsigned int> struct Scalar_accessor; | 
|  | }   // end namespace hip_impl | 
|  |  | 
|  | #include "./InternalHeaderCheck.h" | 
|  |  | 
|  | namespace Eigen { | 
|  | namespace internal { | 
|  |  | 
|  | #define HIP_SCALAR_ACCESSOR_BUILDER(NAME) \ | 
|  | template <typename T, typename U, unsigned int n> \ | 
|  | struct NAME <hip_impl::Scalar_accessor<T, U, n>> : NAME <T> {}; | 
|  |  | 
|  | #define HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(NAME) \ | 
|  | template <typename T, typename U, unsigned int n> \ | 
|  | struct NAME##_impl <hip_impl::Scalar_accessor<T, U, n>> : NAME##_impl <T> {}; \ | 
|  | template <typename T, typename U, unsigned int n> \ | 
|  | struct NAME##_retval <hip_impl::Scalar_accessor<T, U, n>> : NAME##_retval <T> {}; | 
|  |  | 
|  | #define HIP_SCALAR_ACCESSOR_BUILDER_IGAMMA(NAME) \ | 
|  | template <typename T, typename U, unsigned int n, IgammaComputationMode mode> \ | 
|  | struct NAME <hip_impl::Scalar_accessor<T, U, n>, mode> : NAME <T, mode> {}; | 
|  |  | 
|  | #if EIGEN_HAS_C99_MATH | 
|  | HIP_SCALAR_ACCESSOR_BUILDER(betainc_helper) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER(incbeta_cfe) | 
|  |  | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(erf) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(erfc) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(igammac) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(lgamma) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(ndtri) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(polygamma) | 
|  |  | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_IGAMMA(igamma_generic_impl) | 
|  | #endif | 
|  |  | 
|  | HIP_SCALAR_ACCESSOR_BUILDER(digamma_impl_maybe_poly) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER(zeta_impl_series) | 
|  |  | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(bessel_i0) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(bessel_i0e) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(bessel_i1) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(bessel_i1e) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(bessel_j0) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(bessel_j1) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(bessel_k0) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(bessel_k0e) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(bessel_k1) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(bessel_k1e) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(bessel_y0) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(bessel_y1) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(betainc) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(digamma) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(gamma_sample_der_alpha) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(igamma_der_a) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(igamma) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_RETVAL(zeta) | 
|  |  | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_IGAMMA(igamma_series_impl) | 
|  | HIP_SCALAR_ACCESSOR_BUILDER_IGAMMA(igammac_cf_impl) | 
|  |  | 
|  | }  // end namespace internal | 
|  | }  // end namespace Eigen | 
|  |  | 
|  | #endif  // HIP_VECTOR_COMPATIBILITY_H |