25 #if defined(HIGHWAY_HWY_PRINT_INL_H_) == \
26 defined(HWY_TARGET_TOGGLE)
27 #ifdef HIGHWAY_HWY_PRINT_INL_H_
28 #undef HIGHWAY_HWY_PRINT_INL_H_
30 #define HIGHWAY_HWY_PRINT_INL_H_
37 template <
typename T, HWY_IF_LANE_SIZE(T, 1)>
40 CopyBytes<1>(&value, &
byte);
41 fprintf(stderr,
"0x%02X,",
byte);
47 CopyBytes<2>(&value, &bits);
48 fprintf(stderr,
"0x%02X,", bits);
52 template <
typename T, HWY_IF_NOT_LANE_SIZE(T, 1)>
54 fprintf(stderr,
"%g,",
double(value));
58 template <
class D,
class V = Vec<D>>
60 size_t max_lanes = 7) {
63 auto lanes = AllocateAligned<T>(
N);
66 const auto info = hwy::detail::MakeTypeInfo<T>();
#define HWY_NOINLINE
Definition: base.h:65
d
Definition: rvv-inl.h:1656
V VecArg
Definition: ops/shared-inl.h:301
HWY_NOINLINE void PrintValue(T value)
Definition: print-inl.h:38
HWY_API size_t Lanes(Simd< T, N, kPow2 > d)
Definition: arm_sve-inl.h:218
void Print(const D d, const char *caption, VecArg< V > v, size_t lane_u=0, size_t max_lanes=7)
Definition: print-inl.h:59
N
Definition: rvv-inl.h:1656
HWY_API void Store(Vec128< T, N > v, Simd< T, N, 0 > d, T *HWY_RESTRICT aligned)
Definition: arm_neon-inl.h:2397
const vfloat64m1_t v
Definition: rvv-inl.h:1656
typename D::T TFromD
Definition: ops/shared-inl.h:192
HWY_DLLEXPORT void PrintArray(const TypeInfo &info, const char *caption, const void *array_void, size_t N, size_t lane_u=0, size_t max_lanes=7)
Definition: aligned_allocator.h:27
#define HWY_NAMESPACE
Definition: set_macros-inl.h:80