diff --git a/kernels/optimized/cpu/op_exp.cpp b/kernels/optimized/cpu/op_exp.cpp index b1b4098525f..8c234d3d1da 100644 --- a/kernels/optimized/cpu/op_exp.cpp +++ b/kernels/optimized/cpu/op_exp.cpp @@ -26,9 +26,9 @@ template < typename CTYPE_IN, typename CTYPE_OUT, typename std::enable_if< - std::is_same::value && - !std::is_same::value && - !std::is_same::value, + std::is_same_v && + !std::is_same_v && + !std::is_same_v, int>::type = 0> void exp_data( const CTYPE_IN* in_data, @@ -46,9 +46,11 @@ template < typename CTYPE_IN, typename CTYPE_OUT, typename std::enable_if< - !std::is_same::value || - std::is_same::value || - std::is_same::value, + !std::is_same_v || + std::is_same_v || + std::is_same_v || + std::is_same_v || + std::is_same_v, int>::type = 0> void exp_data( const CTYPE_IN* in_data, @@ -76,13 +78,14 @@ Tensor& opt_exp_out(KernelRuntimeContext& ctx, const Tensor& in, Tensor& out) { ET_KERNEL_CHECK(ctx, tensor_is_floating_type(out), InvalidArgument, out); - ET_SWITCH_REALHB_TYPES(in.scalar_type(), ctx, "exp.out", CTYPE_IN, [&] { - ET_SWITCH_FLOATH_TYPES(out.scalar_type(), ctx, "exp.out", CTYPE_OUT, [&] { - exp_data( - in.const_data_ptr(), - in.numel(), - out.mutable_data_ptr()); - }); + ET_SWITCH_REALHBBF16_TYPES(in.scalar_type(), ctx, "exp.out", CTYPE_IN, [&] { + ET_SWITCH_FLOATHBF16_TYPES( + out.scalar_type(), ctx, "exp.out", CTYPE_OUT, [&] { + exp_data( + in.const_data_ptr(), + in.numel(), + out.mutable_data_ptr()); + }); }); return out;