Grid 0.7.0
Tensor_extract_merge.h File Reference
#include <string.h>

Go to the source code of this file.

Typedefs

template<class __T>
using ExtractPointerArray
template<class __T>
using ExtractBuffer

Functions

 NAMESPACE_BEGIN (Grid)
template<class vobj, class sobj>
accelerator void extract (const vobj &vec, ExtractBuffer< sobj > &extracted)
template<class vobj, class sobj>
accelerator void merge (vobj &vec, ExtractBuffer< sobj > &extracted)
template<class vobj>
accelerator_inline vobj::scalar_object extractLane (int lane, const vobj &__restrict__ vec)
template<class vobj>
accelerator_inline void insertLane (int lane, vobj &__restrict__ vec, const typename vobj::scalar_object &__restrict__ extracted)
template<class vobj, class sobj>
accelerator void extract (const vobj &vec, const ExtractPointerArray< sobj > &extracted, int offset)
template<class vobj, class sobj>
accelerator void merge (vobj &vec, const ExtractPointerArray< sobj > &extracted, int offset)
template<class vobjOut, class vobjIn>
accelerator_inline void copyLane (vobjOut &__restrict__ vecOut, int lane_out, const vobjIn &__restrict__ vecIn, int lane_in)
 NAMESPACE_END (Grid)

Typedef Documentation

◆ ExtractPointerArray

template<class __T>
using ExtractPointerArray

Definition at line 44 of file Tensor_extract_merge.h.

◆ ExtractBuffer

template<class __T>
using ExtractBuffer

Definition at line 45 of file Tensor_extract_merge.h.

Function Documentation

◆ NAMESPACE_BEGIN()

NAMESPACE_BEGIN ( Grid )

◆ extract() [1/2]

◆ merge() [1/2]

◆ extractLane()

template<class vobj>
accelerator_inline vobj::scalar_object extractLane ( int lane,
const vobj &__restrict__ vec )

◆ insertLane()

template<class vobj>
accelerator_inline void insertLane ( int lane,
vobj &__restrict__ vec,
const typename vobj::scalar_object &__restrict__ extracted )

◆ extract() [2/2]

template<class vobj, class sobj>
accelerator void extract ( const vobj & vec,
const ExtractPointerArray< sobj > & extracted,
int offset )

◆ merge() [2/2]

template<class vobj, class sobj>
accelerator void merge ( vobj & vec,
const ExtractPointerArray< sobj > & extracted,
int offset )

◆ copyLane()

template<class vobjOut, class vobjIn>
accelerator_inline void copyLane ( vobjOut &__restrict__ vecOut,
int lane_out,
const vobjIn &__restrict__ vecIn,
int lane_in )

Definition at line 222 of file Tensor_extract_merge.h.

◆ NAMESPACE_END()

NAMESPACE_END ( Grid )