Skip to content

Conversation

@sarnex
Copy link
Contributor

@sarnex sarnex commented Jun 3, 2024

Couldn't do this earlier because of a driver issue.

Signed-off-by: Sarnie, Nick <nick.sarnie@intel.com>
@sarnex sarnex temporarily deployed to WindowsCILock July 3, 2024 20:35 — with GitHub Actions Inactive
@sarnex sarnex temporarily deployed to WindowsCILock July 3, 2024 23:09 — with GitHub Actions Inactive
@sarnex sarnex marked this pull request as ready for review July 8, 2024 15:17
@sarnex sarnex requested a review from a team as a code owner July 8, 2024 15:17
@sarnex sarnex merged commit 1f1be9c into intel:sycl Jul 8, 2024
AlexeySachkov added a commit to AlexeySachkov/llvm that referenced this pull request Jul 26, 2024
sarnex pushed a commit that referenced this pull request Jul 29, 2024
ESIMD headers declare some of `__spirv_ocl_*` built-ins as template
functions, but those built-ins are also automatically declared by the
compiler implicitly when used.

On Windows, redeclarations in headers cause compilation issues, because
by some reason they take priority, but template arguments for them
couldn't be inferred.

This commit effectively introduces new tests to cover affected scenarios
and reverts a couple of ESIMD commits to fix the issue:
- #14020 is completely reverted
- #13383 is partially reverted to preserve new interfaces and
tests, but stop declaring `__spirv_ocl_*` built-ins

I suppose that both PRs were made in attempt to move away from custom
ESIMD intrinsic to standard SPIR-V ones, but that should be done without
manually declaring the latter. A bigger refactoring might be needed to
use auto-declared SPIR-V built-ins in ESIMD because of presence and
usage of single-element vectors in ESIMD (which do not exist in SPIR-V).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants