Skip to content

Commit aa02e77

Browse files
romanovvladbader
authored andcommitted
[SYCL] Workaround for vec::load and vec::store
This is a workaround for vec::load and vec::store to avoid unaligned load and stores. Signed-off-by: Vlad Romanov <vlad.romanov@intel.com>
1 parent bd54af8 commit aa02e77

File tree

1 file changed

+0
-11
lines changed

1 file changed

+0
-11
lines changed

sycl/include/CL/sycl/types.hpp

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -596,23 +596,12 @@ template <typename Type, int NumElements> class vec {
596596
#endif
597597
#define __SYCL_LOADSTORE(Space) \
598598
void load(size_t Offset, multi_ptr<const DataT, Space> Ptr) { \
599-
if (NumElements != 3) { \
600-
m_Data = \
601-
*multi_ptr<const DataType, Space>(static_cast<const DataType *>( \
602-
static_cast<const void *>(Ptr + Offset * NumElements))); \
603-
return; \
604-
} \
605599
for (int I = 0; I < NumElements; I++) { \
606600
setValue( \
607601
I, *multi_ptr<const DataT, Space>(Ptr + Offset * NumElements + I)); \
608602
} \
609603
} \
610604
void store(size_t Offset, multi_ptr<DataT, Space> Ptr) const { \
611-
if (NumElements != 3) { \
612-
*multi_ptr<DataType, Space>(static_cast<DataType *>( \
613-
static_cast<void *>(Ptr + Offset * NumElements))) = m_Data; \
614-
return; \
615-
} \
616605
for (int I = 0; I < NumElements; I++) { \
617606
*multi_ptr<DataT, Space>(Ptr + Offset * NumElements + I) = getValue(I); \
618607
} \

0 commit comments

Comments
 (0)