Skip to content

Commit ab75bac

Browse files
authored
[SYCL][ESIMD] Use correct execSize in LSC functions (#11140)
It seemed to work before, but after cc3fd43 where we started to use execSize for the mask size, we hit a compile time assert because we try to make a 0-length mask. This is locked down with existing tests, but they run on PVC only. I manually confirmed this fixes it. --------- Signed-off-by: Sarnie, Nick <[email protected]>
1 parent b290e9f commit ab75bac

File tree

1 file changed

+3
-3
lines changed
  • sycl/include/sycl/ext/intel/experimental/esimd

1 file changed

+3
-3
lines changed

sycl/include/sycl/ext/intel/experimental/esimd/memory.hpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2881,7 +2881,7 @@ ESIMD_INLINE SYCL_ESIMD_FUNCTION __ESIMD_NS::simd<T, N> lsc_load_2d(
28812881
constexpr uint32_t exDesc = 0x0;
28822882
constexpr uint32_t desc =
28832883
base_desc | cache_mask | transformMask | transposeMask;
2884-
constexpr uint8_t execSize = 0x0;
2884+
constexpr uint8_t execSize = 1;
28852885
constexpr uint8_t sfid = 0xF;
28862886
constexpr uint8_t numSrc0 = 0x1;
28872887
constexpr uint8_t numDst = (N * sizeof(T)) / 64;
@@ -2946,7 +2946,7 @@ ESIMD_INLINE SYCL_ESIMD_FUNCTION void lsc_prefetch_2d(
29462946
constexpr uint32_t exDesc = 0x0;
29472947
constexpr uint32_t desc =
29482948
base_desc | cache_mask | transformMask | transposeMask;
2949-
constexpr uint8_t execSize = 0x0;
2949+
constexpr uint8_t execSize = 1;
29502950
constexpr uint8_t sfid = 0xF;
29512951
constexpr uint8_t numDst = (N * sizeof(T)) / 64;
29522952
raw_send<execSize, sfid, numDst>(payload.get_raw_data(), exDesc, desc);
@@ -2984,7 +2984,7 @@ lsc_store_2d(config_2d_mem_access<T, BlockWidth, BlockHeight, NBlocks> &payload,
29842984

29852985
constexpr uint32_t exDesc = 0x0;
29862986
constexpr uint32_t desc = base_desc | cache_mask;
2987-
constexpr uint8_t execSize = 0x0;
2987+
constexpr uint8_t execSize = 1;
29882988
constexpr uint8_t sfid = 0xF;
29892989
constexpr uint8_t numSrc0 = 0x1;
29902990
constexpr uint8_t numSrc1 = (N * sizeof(T)) / 64;

0 commit comments

Comments
 (0)