Skip to content

Commit 4afc507

Browse files
committed
implement the new clInitLayerWithProperties interface
This is needed so recent ICD loaders will load layers without needing to set an environment variable.
1 parent 44f09c5 commit 4afc507

File tree

4 files changed

+67
-8
lines changed

4 files changed

+67
-8
lines changed

layers/00_example/main.cpp

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,11 +97,12 @@ CL_API_ENTRY cl_int CL_API_CALL clGetLayerInfo(
9797
return CL_SUCCESS;
9898
}
9999

100-
CL_API_ENTRY cl_int CL_API_CALL clInitLayer(
100+
CL_API_ENTRY cl_int CL_API_CALL clInitLayerWithProperties(
101101
cl_uint num_entries,
102102
const struct _cl_icd_dispatch* target_dispatch,
103103
cl_uint* num_entries_out,
104-
const struct _cl_icd_dispatch** layer_dispatch_ret)
104+
const struct _cl_icd_dispatch** layer_dispatch_ret,
105+
const cl_layer_properties* properties)
105106
{
106107
const size_t dispatchTableSize =
107108
sizeof(dispatch) / sizeof(dispatch.clGetPlatformIDs);
@@ -126,3 +127,16 @@ CL_API_ENTRY cl_int CL_API_CALL clInitLayer(
126127
return CL_SUCCESS;
127128
}
128129

130+
CL_API_ENTRY cl_int CL_API_CALL clInitLayer(
131+
cl_uint num_entries,
132+
const struct _cl_icd_dispatch* target_dispatch,
133+
cl_uint* num_entries_out,
134+
const struct _cl_icd_dispatch** layer_dispatch_ret)
135+
{
136+
return clInitLayerWithProperties(
137+
num_entries,
138+
target_dispatch,
139+
num_entries_out,
140+
layer_dispatch_ret,
141+
nullptr);
142+
}

layers/10_cmdbufemu/main.cpp

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,11 +266,12 @@ CL_API_ENTRY cl_int CL_API_CALL clGetLayerInfo(
266266
return CL_SUCCESS;
267267
}
268268

269-
CL_API_ENTRY cl_int CL_API_CALL clInitLayer(
269+
CL_API_ENTRY cl_int CL_API_CALL clInitLayerWithProperties(
270270
cl_uint num_entries,
271271
const struct _cl_icd_dispatch* target_dispatch,
272272
cl_uint* num_entries_out,
273-
const struct _cl_icd_dispatch** layer_dispatch_ret)
273+
const struct _cl_icd_dispatch** layer_dispatch_ret,
274+
const cl_layer_properties* properties)
274275
{
275276
const size_t dispatchTableSize =
276277
sizeof(dispatch) / sizeof(dispatch.clGetPlatformIDs);
@@ -297,3 +298,17 @@ CL_API_ENTRY cl_int CL_API_CALL clInitLayer(
297298

298299
return CL_SUCCESS;
299300
}
301+
302+
CL_API_ENTRY cl_int CL_API_CALL clInitLayer(
303+
cl_uint num_entries,
304+
const struct _cl_icd_dispatch* target_dispatch,
305+
cl_uint* num_entries_out,
306+
const struct _cl_icd_dispatch** layer_dispatch_ret)
307+
{
308+
return clInitLayerWithProperties(
309+
num_entries,
310+
target_dispatch,
311+
num_entries_out,
312+
layer_dispatch_ret,
313+
nullptr);
314+
}

layers/11_semaemu/main.cpp

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -225,11 +225,12 @@ CL_API_ENTRY cl_int CL_API_CALL clGetLayerInfo(
225225
return CL_SUCCESS;
226226
}
227227

228-
CL_API_ENTRY cl_int CL_API_CALL clInitLayer(
228+
CL_API_ENTRY cl_int CL_API_CALL clInitLayerWithProperties(
229229
cl_uint num_entries,
230230
const struct _cl_icd_dispatch* target_dispatch,
231231
cl_uint* num_entries_out,
232-
const struct _cl_icd_dispatch** layer_dispatch_ret)
232+
const struct _cl_icd_dispatch** layer_dispatch_ret,
233+
const cl_layer_properties* properties)
233234
{
234235
const size_t dispatchTableSize =
235236
sizeof(dispatch) / sizeof(dispatch.clGetPlatformIDs);
@@ -253,3 +254,17 @@ CL_API_ENTRY cl_int CL_API_CALL clInitLayer(
253254

254255
return CL_SUCCESS;
255256
}
257+
258+
CL_API_ENTRY cl_int CL_API_CALL clInitLayer(
259+
cl_uint num_entries,
260+
const struct _cl_icd_dispatch* target_dispatch,
261+
cl_uint* num_entries_out,
262+
const struct _cl_icd_dispatch** layer_dispatch_ret)
263+
{
264+
return clInitLayerWithProperties(
265+
num_entries,
266+
target_dispatch,
267+
num_entries_out,
268+
layer_dispatch_ret,
269+
nullptr);
270+
}

layers/12_spirvqueriesemu/main.cpp

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -128,11 +128,12 @@ CL_API_ENTRY cl_int CL_API_CALL clGetLayerInfo(
128128
return CL_SUCCESS;
129129
}
130130

131-
CL_API_ENTRY cl_int CL_API_CALL clInitLayer(
131+
CL_API_ENTRY cl_int CL_API_CALL clInitLayerWithProperties(
132132
cl_uint num_entries,
133133
const struct _cl_icd_dispatch* target_dispatch,
134134
cl_uint* num_entries_out,
135-
const struct _cl_icd_dispatch** layer_dispatch_ret)
135+
const struct _cl_icd_dispatch** layer_dispatch_ret,
136+
const cl_layer_properties* properties)
136137
{
137138
const size_t dispatchTableSize =
138139
sizeof(dispatch) / sizeof(dispatch.clGetPlatformIDs);
@@ -156,3 +157,17 @@ CL_API_ENTRY cl_int CL_API_CALL clInitLayer(
156157

157158
return CL_SUCCESS;
158159
}
160+
161+
CL_API_ENTRY cl_int CL_API_CALL clInitLayer(
162+
cl_uint num_entries,
163+
const struct _cl_icd_dispatch* target_dispatch,
164+
cl_uint* num_entries_out,
165+
const struct _cl_icd_dispatch** layer_dispatch_ret)
166+
{
167+
return clInitLayerWithProperties(
168+
num_entries,
169+
target_dispatch,
170+
num_entries_out,
171+
layer_dispatch_ret,
172+
nullptr);
173+
}

0 commit comments

Comments
 (0)