Skip to content

Commit db1d142

Browse files
committed
Fix abi break in dynamic parameter
1 parent 2571ea3 commit db1d142

File tree

7 files changed

+46
-15
lines changed

7 files changed

+46
-15
lines changed

sycl-jit/common/include/Kernel.h

Whitespace-only changes.

sycl/include/sycl/accessor.hpp

-3
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,6 @@
215215
namespace sycl {
216216
inline namespace _V1 {
217217
class stream;
218-
219218
namespace ext::intel::esimd::detail {
220219
// Forward declare a "back-door" access class to support ESIMD.
221220
class AccessorPrivateProxy;
@@ -349,7 +348,6 @@ class accessor_common {
349348
typename AccType =
350349
accessor<DataT, Dimensions, AccessMode, AccessTarget,
351350
IsPlaceholder, PropertyListT>>
352-
353351
class AccessorSubscript {
354352
static constexpr int Dims = Dimensions;
355353

@@ -2154,7 +2152,6 @@ class __SYCL_SPECIAL_CLASS local_accessor_base :
21542152
#endif
21552153
public detail::accessor_common<DataT, Dimensions, AccessMode,
21562154
access::target::local, IsPlaceholder> {
2157-
21582155
protected:
21592156
constexpr static int AdjustedDim = Dimensions == 0 ? 1 : Dimensions;
21602157

sycl/include/sycl/ext/oneapi/experimental/graph.hpp

+1-4
Original file line numberDiff line numberDiff line change
@@ -107,8 +107,6 @@ class node_impl;
107107
class graph_impl;
108108
class exec_graph_impl;
109109
class dynamic_parameter_impl;
110-
class dynamic_work_group_memory_impl;
111-
class dynamic_local_accessor_impl;
112110
class dynamic_command_group_impl;
113111
} // namespace detail
114112

@@ -730,8 +728,7 @@ __SYCL_TYPE(dynamic_local_accessor) dynamic_local_accessor
730728
}
731729

732730
private:
733-
local_accessor<DataT, Dimensions>
734-
LocalAccessor; // FIXME is this needed on the host?
731+
local_accessor<DataT, Dimensions> LocalAccessor;
735732

736733
#ifdef __SYCL_DEVICE_ONLY__
737734
void __init(typename local_accessor<DataT, Dimensions>::ConcreteASPtrType Ptr,

sycl/include/sycl/handler.hpp

+13-6
Original file line numberDiff line numberDiff line change
@@ -166,8 +166,6 @@ class dynamic_work_group_memory_base;
166166
class dynamic_local_accessor_base;
167167
class graph_impl;
168168
class dynamic_parameter_impl;
169-
class dynamic_work_group_memory_impl;
170-
class dynamic_local_accessor_impl;
171169
} // namespace ext::oneapi::experimental::detail
172170
namespace detail {
173171

@@ -710,12 +708,9 @@ class __SYCL_EXPORT handler {
710708
// Set the arg in the handler as normal
711709
setArgHelper(ArgIndex, std::move(ArgValue));
712710

713-
ext::oneapi::experimental::detail::dynamic_parameter_impl *DynParamImpl =
714-
detail::getSyclObjImpl(DynamicParam).get();
715-
716711
// Register the dynamic parameter with the handler for later association
717712
// with the node being added
718-
registerDynamicParameter(DynParamImpl, ArgIndex);
713+
registerDynamicParameter(DynamicParam, ArgIndex);
719714
}
720715

721716
void
@@ -752,6 +747,18 @@ class __SYCL_EXPORT handler {
752747
Arg.MArgSize, ArgIndex);
753748
}
754749

750+
#ifndef __INTEL_PREVIEW_BREAKING_CHANGES
751+
// TODO: Remove in the next ABI-breaking window.
752+
/// Registers a dynamic parameter with the handler for later association with
753+
/// the node being created
754+
/// @param DynamicParamBase
755+
/// @param ArgIndex
756+
void registerDynamicParameter(
757+
ext::oneapi::experimental::detail::dynamic_parameter_base
758+
&DynamicParamBase,
759+
int ArgIndex);
760+
#endif
761+
755762
/// Registers a dynamic parameter with the handler for later association with
756763
/// the node being created
757764
/// @param DynamicParamImpl

sycl/source/handler.cpp

+12
Original file line numberDiff line numberDiff line change
@@ -2223,6 +2223,18 @@ void handler::registerDynamicParameter(
22232223
impl->MDynamicParameters.emplace_back(DynamicParamImpl, ArgIndex);
22242224
}
22252225

2226+
#ifndef __INTEL_PREVIEW_BREAKING_CHANGES
2227+
// TODO: Remove in the next ABI-breaking window.
2228+
void handler::registerDynamicParameter(
2229+
ext::oneapi::experimental::detail::dynamic_parameter_base &DynamicParamBase,
2230+
int ArgIndex) {
2231+
ext::oneapi::experimental::detail::dynamic_parameter_impl *DynParamImpl =
2232+
detail::getSyclObjImpl(DynamicParamBase).get();
2233+
2234+
registerDynamicParameter(DynParamImpl, ArgIndex);
2235+
}
2236+
#endif
2237+
22262238
bool handler::eventNeeded() const { return impl->MEventNeeded; }
22272239

22282240
void *handler::storeRawArg(const void *Ptr, size_t Size) {

sycl/test/abi/sycl_symbols_linux.dump

+1
Original file line numberDiff line numberDiff line change
@@ -3575,6 +3575,7 @@ _ZN4sycl3_V17handler24ext_intel_read_host_pipeENS0_6detail11string_viewEPvmb
35753575
_ZN4sycl3_V17handler24ext_oneapi_memcpy2d_implEPvmPKvmmm
35763576
_ZN4sycl3_V17handler24ext_oneapi_memset2d_implEPvmimm
35773577
_ZN4sycl3_V17handler24registerDynamicParameterEPNS0_3ext6oneapi12experimental6detail22dynamic_parameter_implEi
3578+
_ZN4sycl3_V17handler24registerDynamicParameterERNS0_3ext6oneapi12experimental6detail22dynamic_parameter_baseEi
35783579
_ZN4sycl3_V17handler25ext_intel_write_host_pipeENS0_6detail11string_viewEPvmb
35793580
_ZN4sycl3_V17handler26associateWithHandlerCommonESt10shared_ptrINS0_6detail16AccessorImplHostEEi
35803581
_ZN4sycl3_V17handler26setNDRangeDescriptorPaddedENS0_5rangeILi3EEENS0_2idILi3EEEi

sycl/test/abi/sycl_symbols_windows.dump

+19-2
Original file line numberDiff line numberDiff line change
@@ -4344,6 +4344,7 @@
43444344
?reduGetMaxWGSize@detail@_V1@sycl@@YA_KV?$shared_ptr@Vqueue_impl@detail@_V1@sycl@@@std@@_K@Z
43454345
?reduGetPreferredWGSize@detail@_V1@sycl@@YA_KAEAV?$shared_ptr@Vqueue_impl@detail@_V1@sycl@@@std@@_K@Z
43464346
?registerDynamicParameter@handler@_V1@sycl@@AEAAXAEAVdynamic_parameter_base@detail@experimental@oneapi@ext@23@H@Z
4347+
?registerDynamicParameter@handler@_V1@sycl@@AEAAXPEAVdynamic_parameter_impl@detail@experimental@oneapi@ext@23@H@Z
43474348
?release_external_memory@experimental@oneapi@ext@_V1@sycl@@YAXUexternal_mem@12345@AEBVdevice@45@AEBVcontext@45@@Z
43484349
?release_external_memory@experimental@oneapi@ext@_V1@sycl@@YAXUexternal_mem@12345@AEBVqueue@45@@Z
43494350
?release_external_semaphore@experimental@oneapi@ext@_V1@sycl@@YAXUexternal_semaphore@12345@AEBVdevice@45@AEBVcontext@45@@Z
@@ -4369,7 +4370,6 @@
43694370
?select_device@filter_selector@oneapi@ext@_V1@sycl@@UEBA?AVdevice@45@XZ
43704371
?setArgHelper@handler@_V1@sycl@@AEAAXH$$QEAVraw_kernel_arg@experimental@oneapi@ext@23@@Z
43714372
?setArgHelper@handler@_V1@sycl@@AEAAXH$$QEAVsampler@23@@Z
4372-
?setArgHelper@handler@_V1@sycl@@AEAAXHAEAVdynamic_work_group_memory_base@detail@experimental@oneapi@ext@23@@Z
43734373
?setArgHelper@handler@_V1@sycl@@AEAAXHAEAVwork_group_memory_impl@detail@23@@Z
43744374
?setArgsHelper@handler@_V1@sycl@@AEAAXH@Z
43754375
?setArgsToAssociatedAccessors@handler@_V1@sycl@@AEAAXXZ
@@ -4449,7 +4449,24 @@
44494449
?updateAccessor@dynamic_parameter_base@detail@experimental@oneapi@ext@_V1@sycl@@IEAAXPEBVAccessorBaseHost@267@@Z
44504450
?updateValue@dynamic_parameter_base@detail@experimental@oneapi@ext@_V1@sycl@@IEAAXPEBVraw_kernel_arg@34567@_K@Z
44514451
?updateValue@dynamic_parameter_base@detail@experimental@oneapi@ext@_V1@sycl@@IEAAXPEBX_K@Z
4452-
?updateWorkGroupMem@dynamic_parameter_base@detail@experimental@oneapi@ext@_V1@sycl@@IEAAX_K@Z
4452+
??4dynamic_work_group_memory_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAAAEAV0123456@AEBV0123456@@Z
4453+
??0dynamic_local_accessor_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAA@V?$range@$02@56@HHAEBVproperty_list@56@@Z
4454+
??0dynamic_parameter_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAA@AEBV?$shared_ptr@Vdynamic_parameter_impl@detail@experimental@oneapi@ext@_V1@sycl@@@std@@@Z
4455+
??0dynamic_work_group_memory_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAA@$$QEAV0123456@@Z
4456+
??4dynamic_local_accessor_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAAAEAV0123456@$$QEAV0123456@@Z
4457+
??4dynamic_local_accessor_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAAAEAV0123456@AEBV0123456@@Z
4458+
??0dynamic_work_group_memory_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAA@XZ
4459+
??0dynamic_work_group_memory_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAA@V?$command_graph@$0A@@23456@_K@Z
4460+
?updateLocalAccessor@dynamic_local_accessor_base@detail@experimental@oneapi@ext@_V1@sycl@@IEAAXV?$range@$02@67@@Z
4461+
?setArgHelper@handler@_V1@sycl@@AEAAXHAEAVdynamic_local_accessor_base@detail@experimental@oneapi@ext@23@@Z
4462+
??0dynamic_local_accessor_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAA@$$QEAV0123456@@Z
4463+
??4dynamic_work_group_memory_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAAAEAV0123456@$$QEAV0123456@@Z
4464+
??0dynamic_local_accessor_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAA@AEBV0123456@@Z
4465+
??1dynamic_local_accessor_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAA@XZ
4466+
?updateWorkGroupMem@dynamic_work_group_memory_base@detail@experimental@oneapi@ext@_V1@sycl@@IEAAX_K@Z
4467+
??0dynamic_local_accessor_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAA@XZ
4468+
??1dynamic_work_group_memory_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAA@XZ
4469+
??0dynamic_work_group_memory_base@detail@experimental@oneapi@ext@_V1@sycl@@QEAA@AEBV0123456@@Z
44534470
?use_kernel_bundle@handler@_V1@sycl@@QEAAXAEBV?$kernel_bundle@$01@23@@Z
44544471
?verifyDeviceHasProgressGuarantee@handler@_V1@sycl@@AEAAXW4forward_progress_guarantee@experimental@oneapi@ext@23@W4execution_scope@56723@1@Z
44554472
?verifyReductionProps@detail@_V1@sycl@@YAXAEBVproperty_list@23@@Z

0 commit comments

Comments
 (0)