Warning, file /include/Vc/sse/helperimpl.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028 #ifndef VC_SSE_DEINTERLEAVE_H_
0029 #define VC_SSE_DEINTERLEAVE_H_
0030
0031 #include "macros.h"
0032
0033 namespace Vc_VERSIONED_NAMESPACE
0034 {
0035 namespace Detail
0036 {
0037 template <typename A>
0038 inline void deinterleave(SSE::float_v &, SSE::float_v &, const float *, A);
0039 template <typename A>
0040 inline void deinterleave(SSE::float_v &, SSE::float_v &, const short *, A);
0041 template <typename A>
0042 inline void deinterleave(SSE::float_v &, SSE::float_v &, const ushort *, A);
0043 template <typename A>
0044 inline void deinterleave(SSE::double_v &, SSE::double_v &, const double *, A);
0045 template <typename A>
0046 inline void deinterleave(SSE::int_v &, SSE::int_v &, const int *, A);
0047 template <typename A>
0048 inline void deinterleave(SSE::int_v &, SSE::int_v &, const short *, A);
0049 template <typename A>
0050 inline void deinterleave(SSE::uint_v &, SSE::uint_v &, const uint *, A);
0051 template <typename A>
0052 inline void deinterleave(SSE::uint_v &, SSE::uint_v &, const ushort *, A);
0053 template <typename A>
0054 inline void deinterleave(SSE::short_v &, SSE::short_v &, const short *, A);
0055 template <typename A>
0056 inline void deinterleave(SSE::ushort_v &, SSE::ushort_v &, const ushort *, A);
0057
0058 Vc_ALWAYS_INLINE_L void prefetchForOneRead(const void *addr, VectorAbi::Sse) Vc_ALWAYS_INLINE_R;
0059 Vc_ALWAYS_INLINE_L void prefetchForModify(const void *addr, VectorAbi::Sse) Vc_ALWAYS_INLINE_R;
0060 Vc_ALWAYS_INLINE_L void prefetchClose(const void *addr, VectorAbi::Sse) Vc_ALWAYS_INLINE_R;
0061 Vc_ALWAYS_INLINE_L void prefetchMid(const void *addr, VectorAbi::Sse) Vc_ALWAYS_INLINE_R;
0062 Vc_ALWAYS_INLINE_L void prefetchFar(const void *addr, VectorAbi::Sse) Vc_ALWAYS_INLINE_R;
0063 }
0064 }
0065
0066 #include "deinterleave.tcc"
0067 #include "prefetches.tcc"
0068
0069 #endif