Skip to content

Commit 9f71e81

Browse files
committed
[SYCL] Re-add removed symbols breaking ABI
These symbols were accidentily removed in intel#18851
1 parent e98d8a0 commit 9f71e81

File tree

3 files changed

+86
-0
lines changed

3 files changed

+86
-0
lines changed

sycl/include/sycl/handler.hpp

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3716,6 +3716,9 @@ class __SYCL_EXPORT handler {
37163716
void setKernelIsCooperative(bool);
37173717

37183718
// Set using cuda thread block cluster launch flag and set the launch bounds.
3719+
#ifndef __INTEL_PREVIEW_BREAKING_CHANGES
3720+
void setKernelClusterLaunch(sycl::range<3> ClusterSize, int Dims);
3721+
#endif
37193722
void setKernelClusterLaunch(sycl::range<3> ClusterSize);
37203723
void setKernelClusterLaunch(sycl::range<2> ClusterSize);
37213724
void setKernelClusterLaunch(sycl::range<1> ClusterSize);
@@ -3819,6 +3822,16 @@ class __SYCL_EXPORT handler {
38193822
bool HasAssociatedAccessor(detail::AccessorImplHost *Req,
38203823
access::target AccessTarget) const;
38213824

3825+
#ifndef __INTEL_PREVIEW_BREAKING_CHANGES
3826+
void setNDRangeDescriptorPadded(sycl::range<3> N, bool SetNumWorkGroups,
3827+
int Dims);
3828+
void setNDRangeDescriptorPadded(sycl::range<3> NumWorkItems,
3829+
sycl::id<3> Offset, int Dims);
3830+
void setNDRangeDescriptorPadded(sycl::range<3> NumWorkItems,
3831+
sycl::range<3> LocalSize, sycl::id<3> Offset,
3832+
int Dims);
3833+
#endif
3834+
38223835
template <int Dims>
38233836
void setNDRangeDescriptor(sycl::range<Dims> N,
38243837
bool SetNumWorkGroups = false) {

sycl/source/handler.cpp

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2243,6 +2243,25 @@ void handler::setKernelIsCooperative(bool KernelIsCooperative) {
22432243
impl->MKernelIsCooperative = KernelIsCooperative;
22442244
}
22452245

2246+
#ifndef __INTEL_PREVIEW_BREAKING_CHANGES
2247+
void handler::setKernelClusterLaunch(sycl::range<3> ClusterSize, int Dims) {
2248+
throwIfGraphAssociated<
2249+
syclex::detail::UnsupportedGraphFeatures::
2250+
sycl_ext_oneapi_experimental_cuda_cluster_launch>();
2251+
impl->MKernelUsesClusterLaunch = true;
2252+
2253+
if (Dims == 1) {
2254+
sycl::range<1> ClusterSizeTrimmed = {ClusterSize[0]};
2255+
impl->MNDRDesc.setClusterDimensions(ClusterSizeTrimmed);
2256+
} else if (Dims == 2) {
2257+
sycl::range<2> ClusterSizeTrimmed = {ClusterSize[0], ClusterSize[1]};
2258+
impl->MNDRDesc.setClusterDimensions(ClusterSizeTrimmed);
2259+
} else if (Dims == 3) {
2260+
impl->MNDRDesc.setClusterDimensions(ClusterSize);
2261+
}
2262+
}
2263+
#endif
2264+
22462265
void handler::setKernelClusterLaunch(sycl::range<3> ClusterSize) {
22472266
throwIfGraphAssociated<
22482267
syclex::detail::UnsupportedGraphFeatures::
@@ -2419,6 +2438,56 @@ bool handler::HasAssociatedAccessor(detail::AccessorImplHost *Req,
24192438
void handler::setType(sycl::detail::CGType Type) { impl->MCGType = Type; }
24202439
sycl::detail::CGType handler::getType() const { return impl->MCGType; }
24212440

2441+
#ifndef __INTEL_PREVIEW_BREAKING_CHANGES
2442+
void handler::setNDRangeDescriptorPadded(sycl::range<3> N,
2443+
bool SetNumWorkGroups, int Dims) {
2444+
if (Dims == 1) {
2445+
sycl::range<1> Range = {N[0]};
2446+
impl->MNDRDesc = NDRDescT{Range, SetNumWorkGroups};
2447+
} else if (Dims == 2) {
2448+
sycl::range<2> Range = {N[0], N[1]};
2449+
impl->MNDRDesc = NDRDescT{Range, SetNumWorkGroups};
2450+
} else if (Dims == 3) {
2451+
impl->MNDRDesc = NDRDescT{N, SetNumWorkGroups};
2452+
}
2453+
}
2454+
2455+
void handler::setNDRangeDescriptorPadded(sycl::range<3> NumWorkItems,
2456+
sycl::id<3> Offset, int Dims) {
2457+
if (Dims == 1) {
2458+
sycl::range<1> NumWorkItemsTrimmed = {NumWorkItems[0]};
2459+
sycl::id<1> OffsetTrimmed = {Offset[0]};
2460+
impl->MNDRDesc = NDRDescT{NumWorkItemsTrimmed, OffsetTrimmed};
2461+
} else if (Dims == 2) {
2462+
sycl::range<2> NumWorkItemsTrimmed = {NumWorkItems[0], NumWorkItems[1]};
2463+
sycl::id<2> OffsetTrimmed = {Offset[0], Offset[1]};
2464+
impl->MNDRDesc = NDRDescT{NumWorkItemsTrimmed, OffsetTrimmed};
2465+
} else if (Dims == 3) {
2466+
impl->MNDRDesc = NDRDescT{NumWorkItems, Offset};
2467+
}
2468+
}
2469+
2470+
void handler::setNDRangeDescriptorPadded(sycl::range<3> NumWorkItems,
2471+
sycl::range<3> LocalSize,
2472+
sycl::id<3> Offset, int Dims) {
2473+
if (Dims == 1) {
2474+
sycl::range<1> NumWorkItemsTrimmed = {NumWorkItems[0]};
2475+
sycl::range<1> LocalSizeTrimmed = {LocalSize[0]};
2476+
sycl::id<1> OffsetTrimmed = {Offset[0]};
2477+
impl->MNDRDesc =
2478+
NDRDescT{NumWorkItemsTrimmed, LocalSizeTrimmed, OffsetTrimmed};
2479+
} else if (Dims == 2) {
2480+
sycl::range<2> NumWorkItemsTrimmed = {NumWorkItems[0], NumWorkItems[1]};
2481+
sycl::range<2> LocalSizeTrimmed = {LocalSize[0], LocalSize[1]};
2482+
sycl::id<2> OffsetTrimmed = {Offset[0], Offset[1]};
2483+
impl->MNDRDesc =
2484+
NDRDescT{NumWorkItemsTrimmed, LocalSizeTrimmed, OffsetTrimmed};
2485+
} else if (Dims == 3) {
2486+
impl->MNDRDesc = NDRDescT{NumWorkItems, LocalSize, Offset};
2487+
}
2488+
}
2489+
#endif
2490+
24222491
void handler::setNDRangeDescriptor(sycl::range<3> N, bool SetNumWorkGroups) {
24232492
impl->MNDRDesc = NDRDescT{N, SetNumWorkGroups};
24242493
}

sycl/test/abi/sycl_symbols_linux.dump

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3590,6 +3590,7 @@ _ZN4sycl3_V17handler22setHandlerKernelBundleERKSt10shared_ptrINS0_6detail18kerne
35903590
_ZN4sycl3_V17handler22setKernelClusterLaunchENS0_5rangeILi1EEE
35913591
_ZN4sycl3_V17handler22setKernelClusterLaunchENS0_5rangeILi2EEE
35923592
_ZN4sycl3_V17handler22setKernelClusterLaunchENS0_5rangeILi3EEE
3593+
_ZN4sycl3_V17handler22setKernelClusterLaunchENS0_5rangeILi3EEEi
35933594
_ZN4sycl3_V17handler22setKernelIsCooperativeEb
35943595
_ZN4sycl3_V17handler23instantiateKernelOnHostEPv
35953596
_ZN4sycl3_V17handler24GetRangeRoundingSettingsERmS2_S2_
@@ -3601,6 +3602,9 @@ _ZN4sycl3_V17handler24registerDynamicParameterERNS0_3ext6oneapi12experimental6de
36013602
_ZN4sycl3_V17handler25ext_intel_write_host_pipeENS0_6detail11string_viewEPvmb
36023603
_ZN4sycl3_V17handler26associateWithHandlerCommonESt10shared_ptrINS0_6detail16AccessorImplHostEEi
36033604
_ZN4sycl3_V17handler26setKernelNameBasedCachePtrEPNS0_6detail21KernelNameBasedCacheTE
3605+
_ZN4sycl3_V17handler26setNDRangeDescriptorPaddedENS0_5rangeILi3EEENS0_2idILi3EEEi
3606+
_ZN4sycl3_V17handler26setNDRangeDescriptorPaddedENS0_5rangeILi3EEES3_NS0_2idILi3EEEi
3607+
_ZN4sycl3_V17handler26setNDRangeDescriptorPaddedENS0_5rangeILi3EEEbi
36043608
_ZN4sycl3_V17handler27addLifetimeSharedPtrStorageESt10shared_ptrIKvE
36053609
_ZN4sycl3_V17handler27computeFallbackKernelBoundsEmm
36063610
_ZN4sycl3_V17handler28extractArgsAndReqsFromLambdaEPcPFNS0_6detail19kernel_param_desc_tEiEmb

0 commit comments

Comments
 (0)