Skip to content

[sycl-post-link] Add a check for device globals with device_image_scope #5517

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 17 commits into from Feb 14, 2022
Merged

[sycl-post-link] Add a check for device globals with device_image_scope #5517

merged 17 commits into from Feb 14, 2022

Conversation

ghost
Copy link

@ghost ghost commented Feb 9, 2022

For device global variables with the 'device_image_scope' property,
the check that there are no usages of a single device global variable
from kernels grouped to different modules is required as it is
described in the design document [1].

[1] https://github.com/intel/llvm/blob/sycl/sycl/doc/DeviceGlobal.md#changes-to-the-sycl-post-link-tool

Pavel Samolysov added 5 commits February 7, 2022 16:59
@ghost ghost requested review from mlychkov, maksimsab and AlexeySachkov February 9, 2022 12:22
Pavel Samolysov and others added 8 commits February 11, 2022 12:00
Co-authored-by: Alexey Sachkov <alexey.sachkov@intel.com>
Signed-off-by: Pavel Samolysov <pavel.samolysov@intel.com>
Signed-off-by: Pavel Samolysov <pavel.samolysov@intel.com>
Signed-off-by: Pavel Samolysov <pavel.samolysov@intel.com>
Co-authored-by: Alexey Sachkov <alexey.sachkov@intel.com>
Pavel Samolysov and others added 3 commits February 11, 2022 18:08
Co-authored-by: Mikhail Lychkov <mikhail.lychkov@intel.com>
As it has been suggested by @mlychkov, the only responsibility of the
ModuleSplitter class should be splitting. Therefore, the class should
not group entry points by modules as well as do any checks if the
splitting is allowed at all. The following refactoring has been done:
all the checks and entry point grouping were removed from the class'
constructor. The class constructor takes the group map by value and
takes ownership through moving. If any check is failed, no instances
of the ModuleSplitter class are instantiated at all.
@ghost ghost marked this pull request as ready for review February 14, 2022 08:08
@ghost ghost self-requested a review as a code owner February 14, 2022 08:08
@bader bader merged commit bc3cf09 into intel:sycl Feb 14, 2022
alexbatashev added a commit to alexbatashev/llvm that referenced this pull request Feb 23, 2022
…/llvm into refactor_existing_workflows

* 'refactor_existing_workflows' of github.com:alexbatashev/llvm: (2051 commits)
  [SYCL][L0] Honor property::queue::enable_profiling (intel#5543)
  [SYCL][CI] Enable sccache on Windows (intel#5589)
  [SYCL][Doc] Move internal design docs (intel#5556)
  [sycl-post-link] Initialize the integer Value variable (intel#5585)
  [CI] Fix nightly builds (intel#5584)
  [SYCL][L0] Fix use of copy-engines in L0 interop queue (intel#5579)
  Update OpenCL headers tag to dcd5bed (intel#5575)
  [SYCL] Fix warning for InOrderQueueSyncCheck unit test build (intel#5577)
  [SYCL][HIP] Remove arch requirement for running lit tests (intel#5253)
  [SYCL][L0] Fix timestamp calculation (in ns) (intel#5555)
  [SYCL] Fix sync of host task vs kernel for in-order queue (intel#5551)
  [sycl-post-link] Add a check for device globals with device_image_scope (intel#5517)
  [SYCL] Fix SYCL Kernel Body Check (intel#5546)
  [SYCL] Add support for SYCL 2020 in class group (intel#5447)
  Fix tests after 1c729d7 Use align attribute for kernel pointer arg alignment
  Fix tests after 18834dc Mark pointer-typed kernel arguments as ABI aligned
  [CI] Add experimental Windows build to GitHub Actions nightly (intel#5560)
  [sycl-post-link][NFC] Address clang-tidy concerns in the sycl-post-link (intel#5552)
  Fix lit test after changes in Clang
  Improve backward compatibility for DISubRange
  ...
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.

4 participants