Skip to content

[NFC][SYCL] Ensure context_impl is always created via std::make_shared #18795

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 2 commits into from
Jun 4, 2025

Conversation

aelovikov-intel
Copy link
Contributor

And once that is guaranteed, inherit it from
std::enable_shared_from_this. Further simplifications based on [shared|weak]_from_this are left to subsequent PRs.

Earlier related PRs:
#18715 same for queue_impl
#18227 same for device_impl
#18141 similar for platform_impl

…ared`

And once that is guaranteed, inherit it from
`std::enable_shared_from_this`. Further simplifications based on
`[shared|weak]_from_this` are left to subsequent PRs.

Earlier related PRs:
intel#18715 same for `queue_impl`
intel#18227 same for `device_impl`
intel#18141 similar for `platform_impl`
@aelovikov-intel aelovikov-intel requested a review from a team as a code owner June 3, 2025 20:38
@aelovikov-intel aelovikov-intel requested a review from againull June 3, 2025 20:38
/// \param Device is an instance of SYCL device.
/// \param AsyncHandler is an instance of async_handler.
/// \param PropList is an instance of property_list.
context_impl(const device &Device, async_handler AsyncHandler,
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was unused before this PR.

@aelovikov-intel aelovikov-intel merged commit d26cdad into intel:sycl Jun 4, 2025
24 checks passed
@aelovikov-intel aelovikov-intel deleted the context_impl branch June 4, 2025 05:20
aelovikov-intel added a commit to aelovikov-intel/llvm that referenced this pull request Jun 16, 2025
aelovikov-intel added a commit to aelovikov-intel/llvm that referenced this pull request Jun 16, 2025
aelovikov-intel added a commit that referenced this pull request Jun 17, 2025
aelovikov-intel added a commit to aelovikov-intel/llvm that referenced this pull request Jun 17, 2025
aelovikov-intel added a commit to aelovikov-intel/llvm that referenced this pull request Jun 17, 2025
againull pushed a commit that referenced this pull request Jun 20, 2025
aelovikov-intel added a commit to aelovikov-intel/llvm that referenced this pull request Jun 24, 2025
…` ctor

Splitting into two PRs would result in unnecessary temporarily
adjustments and merge conflicts later on between these changes, so
perform in a single PR. They are both small enough anyway.

Continuation of the refactoring in
intel#18795
intel#18877
intel#18966
intel#18979
intel#18980
intel#18981
intel#19007
intel#19030
intel#19123
steffenlarsen pushed a commit that referenced this pull request Jun 25, 2025
aelovikov-intel added a commit that referenced this pull request Jun 25, 2025
…` ctor (#19126)

Splitting into two PRs would result in unnecessary temporarily
adjustments and merge conflicts later on between these changes, so
perform in a single PR. They are both small enough anyway.

Continuation of the refactoring in
#18795
#18877
#18966
#18979
#18980
#18981
#19007
#19030
#19123
aelovikov-intel added a commit to aelovikov-intel/llvm that referenced this pull request Jun 25, 2025
Subsequently, use `getContextImpl` instead of `getContextImplPtr` when
possible.

Continuation of the refactoring in
intel#18795
intel#18877
intel#18966
intel#18979
intel#18980
intel#18981
intel#19007
intel#19030
intel#19123
intel#19126
aelovikov-intel added a commit to aelovikov-intel/llvm that referenced this pull request Jun 25, 2025
Subsequently, use `getContextImpl` instead of `getContextImplPtr` when
possible.

Continuation of the refactoring in
intel#18795
intel#18877
intel#18966
intel#18979
intel#18980
intel#18981
intel#19007
intel#19030
intel#19123
intel#19126
aelovikov-intel added a commit to aelovikov-intel/llvm that referenced this pull request Jun 25, 2025
`SetArgBasedOnType` argument is only used to pass to the `sampler_impl`
ctor so update it.

`getCGKernelInfo` is only called in a function that also calls
`sampler_impl` ctor so updating its signuature allows to update that
caller's local `ContextImpl` variable, so makes sense to do as part of
this PR as well.

Continuation of the refactoring in
intel#18795
intel#18877
intel#18966
intel#18979
intel#18980
intel#18981
intel#19007
intel#19030
intel#19123
intel#19126
aelovikov-intel added a commit to aelovikov-intel/llvm that referenced this pull request Jun 25, 2025
`SetArgBasedOnType` argument is only used to pass to the `sampler_impl`
ctor so update it.

`getCGKernelInfo` is only called in a function that also calls
`sampler_impl` ctor so updating its signuature allows to update that
caller's local `ContextImpl` variable, so makes sense to do as part of
this PR as well.

Continuation of the refactoring in
intel#18795
intel#18877
intel#18966
intel#18979
intel#18980
intel#18981
intel#19007
intel#19030
intel#19123
intel#19126
againull pushed a commit that referenced this pull request Jun 25, 2025
…19153)

`SetArgBasedOnType` argument is only used to pass to the `sampler_impl`
ctor so update it.

`getCGKernelInfo` is only called in a function that also calls
`sampler_impl` ctor so updating its signuature allows to update that
caller's local `ContextImpl` variable, so makes sense to do as part of
this PR as well.

Continuation of the refactoring in
#18795
#18877
#18966
#18979
#18980
#18981
#19007
#19030
#19123
#19126
aelovikov-intel added a commit that referenced this pull request Jun 26, 2025
Subsequently, use `getContextImpl` instead of `getContextImplPtr` when
possible.

Continuation of the refactoring in
#18795
#18877
#18966
#18979
#18980
#18981
#19007
#19030
#19123
#19126
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