You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Noticed while working on #18258. Some ESIMD tests fails if the functor isn't decomposed. The only difference in emitted code will be the usm pointer never goes through an address space cast to generic (it passed directly as a pointer to generic instead).
The patch implements a flags that forces the non decomposition of the functor, but the behaviour can also be highlighted by simply wrapping the kernel in a lambda.
Describe the bug
Noticed while working on #18258. Some ESIMD tests fails if the functor isn't decomposed. The only difference in emitted code will be the usm pointer never goes through an address space cast to generic (it passed directly as a pointer to generic instead).
The patch implements a flags that forces the non decomposition of the functor, but the behaviour can also be highlighted by simply wrapping the kernel in a lambda.
Affected tests:
SYCL :: ESIMD/lsc/lsc_load_store_2d_smoke.cpp
SYCL :: ESIMD/unified_memory_api/scatter_usm.cpp
SYCL :: ESIMD/usm_gather_scatter_rgba.cpp
SYCL :: ESIMD/usm_gather_scatter_rgba_64.cpp
SYCL :: ESIMD/vadd_raw_send_gen12.cpp
To reproduce
If the patch wasn't merged, wrap the kernel in a lambda. For instance, extracting the base test of
scatter_usm.cpp
:this force the parameter to be passed as
<{ ptr addrspace(4), i32, [4 x i8] }>
Environment
clang++ --version
]sycl-ls --verbose
]Additional context
No response
The text was updated successfully, but these errors were encountered: