Skip to content

Mirror intel/llvm commits #2816

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 7 commits into from
Jul 24, 2025
Merged

Mirror intel/llvm commits #2816

merged 7 commits into from
Jul 24, 2025

Conversation

kbenzie
Copy link
Contributor

@kbenzie kbenzie commented Jul 24, 2025

Automated changes by create-pull-request GitHub action

DBDuncan and others added 7 commits July 24, 2025 00:43
Added support for usm image max image width and height queries and
updated test to cover this

---------

Co-authored-by: Peter Žužek <peter@codeplay.com>
* Implemented device infos for event handles.
* Fixed event being deleted before it should have been.
* Make the tests consider profiling info optional.
We previously added support for building `libsycl` individually with
`libc++`. At that time, `libsycl` didn't link against `libLLVM` so they
did not need to be using the same STL implementation.

Now, `libsycl` does link against `libLLVM`, one example
[here](https://github.com/intel/llvm/blob/sycl/sycl/source/CMakeLists.txt#L98).

Remove all the code that was to support `libsycl` in particular and just
make it work with the normal option LLVM uses, `LLVM_ENABLE_LIBCXX`.
Most of the code I added actually checks `LLVM_LIBCXX_USED`, because
LLVM checks at configure time if `libc++` actually works even when
passed `LLVM_ENABLE_LIBCXX`, and if it fails, it falls back to
`libstdc++`, and most of the time we actually want to know if we are
actually using `libc++`.

I added a CMake option `SYCL_LIBDEVICE_CXX_FLAGS` to set the flags for
libdevice because it will be required if someone doesn't use the LLVM
option and just does it through `CMAKE_CXX_FLAGS`, as those aren't used
for libdevice but it still uses the STL.

The two changes in
`unified-runtime/source/loader/layers/sanitizer/msan/msan_libdevice.hpp`
and `sycl/source/builtins/common_functions.cpp` fix compile errors with
`libc++`.

I also plan to add a job to the nightly to lock this down.

intel/llvm#19347

---------

Signed-off-by: Sarnie, Nick <nick.sarnie@intel.com>
We were creating excessive numbers of threads. When we know we want a
given amount of threads, just divide the number of workgroups by the
number of threads and have each thread process that many workgroups.

This implementation also means we no longer need to resize workgroups,
which was not generally safe.
@kbenzie kbenzie requested a review from a team as a code owner July 24, 2025 00:43
Copy link
Contributor

Unified Runtime -> intel/llvm Repo Move Notice

Information

The source code of Unified Runtime has been moved to intel/llvm under the unified-runtime top-level directory,
all future development will now be carried out there. This was done in intel/llvm#17043.

The code will be mirrored to oneapi-src/unified-runtime and the specification will continue to be hosted at oneapi-src.github.io/unified-runtime.

The contribution guide will be updated with new instructions for contributing to Unified Runtime.

PR Migration

All open PRs including this one will be marked with the auto-close label and shall be automatically closed after 30 days.

Should you wish to continue with your PR you will need to migrate it to intel/llvm.
We have provided a script to help automate this process.

If your PR should remain open and not be closed automatically, you can remove the auto-close label.


This is an automated comment.

@kbenzie kbenzie merged commit a643758 into main Jul 24, 2025
@kbenzie kbenzie deleted the mirror-commits- branch July 24, 2025 08:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants