1 // Copyright (C) 2018 The Android Open Source Project
2 // Copyright (C) 2018 Google Inc.
3 //
4 // Licensed under the Apache License, Version 2.0 (the "License");
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 // http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15
16 // Autogenerated module goldfish_vk_reserved_marshaling_guest
17 //
18 // (impl) generated by scripts/genvk.py -registry ../../vulkan/registry/vk.xml -registryGfxstream
19 // xml/vk_gfxstream.xml cereal -o /tmp/
20 //
21 // Please do not modify directly;
22 // re-run mesa3d/src/gfxstream/codegen/generate-gfxstream-vulkan.sh,
23 // or directly from Python by defining:
24 // VULKAN_REGISTRY_XML_DIR : Directory containing vk.xml
25 // VULKAN_REGISTRY_SCRIPTS_DIR : Directory containing genvk.py
26 // CEREAL_OUTPUT_DIR: Where to put the generated sources.
27 //
28 // python3 $VULKAN_REGISTRY_SCRIPTS_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o
29 // $CEREAL_OUTPUT_DIR
30 //
31
32 #include "goldfish_vk_reserved_marshaling_guest.h"
33
34 #include <cstring>
35
36 #include "Resources.h"
37 #include "goldfish_vk_extension_structs_guest.h"
38 #include "goldfish_vk_private_defs.h"
39
40 namespace gfxstream {
41 namespace vk {
42
43 void reservedmarshal_extension_struct(VulkanStreamGuest* vkStream, VkStructureType rootType,
44 const void* structExtension, uint8_t** ptr);
45
46 void reservedunmarshal_extension_struct(VulkanStreamGuest* vkStream, VkStructureType rootType,
47 void* structExtension_out, uint8_t** ptr);
48
49 #ifdef VK_VERSION_1_0
reservedmarshal_VkExtent2D(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExtent2D * forMarshaling,uint8_t ** ptr)50 void reservedmarshal_VkExtent2D(VulkanStreamGuest* vkStream, VkStructureType rootType,
51 const VkExtent2D* forMarshaling, uint8_t** ptr) {
52 (void)vkStream;
53 (void)rootType;
54 memcpy(*ptr, (uint32_t*)&forMarshaling->width, sizeof(uint32_t));
55 *ptr += sizeof(uint32_t);
56 memcpy(*ptr, (uint32_t*)&forMarshaling->height, sizeof(uint32_t));
57 *ptr += sizeof(uint32_t);
58 }
59
reservedmarshal_VkExtent3D(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExtent3D * forMarshaling,uint8_t ** ptr)60 void reservedmarshal_VkExtent3D(VulkanStreamGuest* vkStream, VkStructureType rootType,
61 const VkExtent3D* forMarshaling, uint8_t** ptr) {
62 (void)vkStream;
63 (void)rootType;
64 memcpy(*ptr, (uint32_t*)&forMarshaling->width, sizeof(uint32_t));
65 *ptr += sizeof(uint32_t);
66 memcpy(*ptr, (uint32_t*)&forMarshaling->height, sizeof(uint32_t));
67 *ptr += sizeof(uint32_t);
68 memcpy(*ptr, (uint32_t*)&forMarshaling->depth, sizeof(uint32_t));
69 *ptr += sizeof(uint32_t);
70 }
71
reservedmarshal_VkOffset2D(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkOffset2D * forMarshaling,uint8_t ** ptr)72 void reservedmarshal_VkOffset2D(VulkanStreamGuest* vkStream, VkStructureType rootType,
73 const VkOffset2D* forMarshaling, uint8_t** ptr) {
74 (void)vkStream;
75 (void)rootType;
76 memcpy(*ptr, (int32_t*)&forMarshaling->x, sizeof(int32_t));
77 *ptr += sizeof(int32_t);
78 memcpy(*ptr, (int32_t*)&forMarshaling->y, sizeof(int32_t));
79 *ptr += sizeof(int32_t);
80 }
81
reservedmarshal_VkOffset3D(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkOffset3D * forMarshaling,uint8_t ** ptr)82 void reservedmarshal_VkOffset3D(VulkanStreamGuest* vkStream, VkStructureType rootType,
83 const VkOffset3D* forMarshaling, uint8_t** ptr) {
84 (void)vkStream;
85 (void)rootType;
86 memcpy(*ptr, (int32_t*)&forMarshaling->x, sizeof(int32_t));
87 *ptr += sizeof(int32_t);
88 memcpy(*ptr, (int32_t*)&forMarshaling->y, sizeof(int32_t));
89 *ptr += sizeof(int32_t);
90 memcpy(*ptr, (int32_t*)&forMarshaling->z, sizeof(int32_t));
91 *ptr += sizeof(int32_t);
92 }
93
reservedmarshal_VkRect2D(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRect2D * forMarshaling,uint8_t ** ptr)94 void reservedmarshal_VkRect2D(VulkanStreamGuest* vkStream, VkStructureType rootType,
95 const VkRect2D* forMarshaling, uint8_t** ptr) {
96 (void)vkStream;
97 (void)rootType;
98 reservedmarshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forMarshaling->offset), ptr);
99 reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->extent), ptr);
100 }
101
reservedmarshal_VkBaseInStructure(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBaseInStructure * forMarshaling,uint8_t ** ptr)102 void reservedmarshal_VkBaseInStructure(VulkanStreamGuest* vkStream, VkStructureType rootType,
103 const VkBaseInStructure* forMarshaling, uint8_t** ptr) {
104 (void)vkStream;
105 (void)rootType;
106 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
107 *ptr += sizeof(VkStructureType);
108 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
109 rootType = forMarshaling->sType;
110 }
111 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
112 }
113
reservedmarshal_VkBaseOutStructure(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBaseOutStructure * forMarshaling,uint8_t ** ptr)114 void reservedmarshal_VkBaseOutStructure(VulkanStreamGuest* vkStream, VkStructureType rootType,
115 const VkBaseOutStructure* forMarshaling, uint8_t** ptr) {
116 (void)vkStream;
117 (void)rootType;
118 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
119 *ptr += sizeof(VkStructureType);
120 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
121 rootType = forMarshaling->sType;
122 }
123 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
124 }
125
reservedmarshal_VkBufferMemoryBarrier(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferMemoryBarrier * forMarshaling,uint8_t ** ptr)126 void reservedmarshal_VkBufferMemoryBarrier(VulkanStreamGuest* vkStream, VkStructureType rootType,
127 const VkBufferMemoryBarrier* forMarshaling,
128 uint8_t** ptr) {
129 (void)vkStream;
130 (void)rootType;
131 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
132 *ptr += sizeof(VkStructureType);
133 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
134 rootType = forMarshaling->sType;
135 }
136 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
137 memcpy(*ptr, (VkAccessFlags*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags));
138 *ptr += sizeof(VkAccessFlags);
139 memcpy(*ptr, (VkAccessFlags*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags));
140 *ptr += sizeof(VkAccessFlags);
141 memcpy(*ptr, (uint32_t*)&forMarshaling->srcQueueFamilyIndex, sizeof(uint32_t));
142 *ptr += sizeof(uint32_t);
143 memcpy(*ptr, (uint32_t*)&forMarshaling->dstQueueFamilyIndex, sizeof(uint32_t));
144 *ptr += sizeof(uint32_t);
145 uint64_t cgen_var_0;
146 *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer));
147 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
148 *ptr += 1 * 8;
149 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize));
150 *ptr += sizeof(VkDeviceSize);
151 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
152 *ptr += sizeof(VkDeviceSize);
153 }
154
reservedmarshal_VkDispatchIndirectCommand(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDispatchIndirectCommand * forMarshaling,uint8_t ** ptr)155 void reservedmarshal_VkDispatchIndirectCommand(VulkanStreamGuest* vkStream,
156 VkStructureType rootType,
157 const VkDispatchIndirectCommand* forMarshaling,
158 uint8_t** ptr) {
159 (void)vkStream;
160 (void)rootType;
161 memcpy(*ptr, (uint32_t*)&forMarshaling->x, sizeof(uint32_t));
162 *ptr += sizeof(uint32_t);
163 memcpy(*ptr, (uint32_t*)&forMarshaling->y, sizeof(uint32_t));
164 *ptr += sizeof(uint32_t);
165 memcpy(*ptr, (uint32_t*)&forMarshaling->z, sizeof(uint32_t));
166 *ptr += sizeof(uint32_t);
167 }
168
reservedmarshal_VkDrawIndexedIndirectCommand(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDrawIndexedIndirectCommand * forMarshaling,uint8_t ** ptr)169 void reservedmarshal_VkDrawIndexedIndirectCommand(VulkanStreamGuest* vkStream,
170 VkStructureType rootType,
171 const VkDrawIndexedIndirectCommand* forMarshaling,
172 uint8_t** ptr) {
173 (void)vkStream;
174 (void)rootType;
175 memcpy(*ptr, (uint32_t*)&forMarshaling->indexCount, sizeof(uint32_t));
176 *ptr += sizeof(uint32_t);
177 memcpy(*ptr, (uint32_t*)&forMarshaling->instanceCount, sizeof(uint32_t));
178 *ptr += sizeof(uint32_t);
179 memcpy(*ptr, (uint32_t*)&forMarshaling->firstIndex, sizeof(uint32_t));
180 *ptr += sizeof(uint32_t);
181 memcpy(*ptr, (int32_t*)&forMarshaling->vertexOffset, sizeof(int32_t));
182 *ptr += sizeof(int32_t);
183 memcpy(*ptr, (uint32_t*)&forMarshaling->firstInstance, sizeof(uint32_t));
184 *ptr += sizeof(uint32_t);
185 }
186
reservedmarshal_VkDrawIndirectCommand(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDrawIndirectCommand * forMarshaling,uint8_t ** ptr)187 void reservedmarshal_VkDrawIndirectCommand(VulkanStreamGuest* vkStream, VkStructureType rootType,
188 const VkDrawIndirectCommand* forMarshaling,
189 uint8_t** ptr) {
190 (void)vkStream;
191 (void)rootType;
192 memcpy(*ptr, (uint32_t*)&forMarshaling->vertexCount, sizeof(uint32_t));
193 *ptr += sizeof(uint32_t);
194 memcpy(*ptr, (uint32_t*)&forMarshaling->instanceCount, sizeof(uint32_t));
195 *ptr += sizeof(uint32_t);
196 memcpy(*ptr, (uint32_t*)&forMarshaling->firstVertex, sizeof(uint32_t));
197 *ptr += sizeof(uint32_t);
198 memcpy(*ptr, (uint32_t*)&forMarshaling->firstInstance, sizeof(uint32_t));
199 *ptr += sizeof(uint32_t);
200 }
201
reservedmarshal_VkImageSubresourceRange(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageSubresourceRange * forMarshaling,uint8_t ** ptr)202 void reservedmarshal_VkImageSubresourceRange(VulkanStreamGuest* vkStream, VkStructureType rootType,
203 const VkImageSubresourceRange* forMarshaling,
204 uint8_t** ptr) {
205 (void)vkStream;
206 (void)rootType;
207 memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags));
208 *ptr += sizeof(VkImageAspectFlags);
209 memcpy(*ptr, (uint32_t*)&forMarshaling->baseMipLevel, sizeof(uint32_t));
210 *ptr += sizeof(uint32_t);
211 memcpy(*ptr, (uint32_t*)&forMarshaling->levelCount, sizeof(uint32_t));
212 *ptr += sizeof(uint32_t);
213 memcpy(*ptr, (uint32_t*)&forMarshaling->baseArrayLayer, sizeof(uint32_t));
214 *ptr += sizeof(uint32_t);
215 memcpy(*ptr, (uint32_t*)&forMarshaling->layerCount, sizeof(uint32_t));
216 *ptr += sizeof(uint32_t);
217 }
218
reservedmarshal_VkImageMemoryBarrier(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageMemoryBarrier * forMarshaling,uint8_t ** ptr)219 void reservedmarshal_VkImageMemoryBarrier(VulkanStreamGuest* vkStream, VkStructureType rootType,
220 const VkImageMemoryBarrier* forMarshaling,
221 uint8_t** ptr) {
222 (void)vkStream;
223 (void)rootType;
224 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
225 *ptr += sizeof(VkStructureType);
226 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
227 rootType = forMarshaling->sType;
228 }
229 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
230 memcpy(*ptr, (VkAccessFlags*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags));
231 *ptr += sizeof(VkAccessFlags);
232 memcpy(*ptr, (VkAccessFlags*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags));
233 *ptr += sizeof(VkAccessFlags);
234 memcpy(*ptr, (VkImageLayout*)&forMarshaling->oldLayout, sizeof(VkImageLayout));
235 *ptr += sizeof(VkImageLayout);
236 memcpy(*ptr, (VkImageLayout*)&forMarshaling->newLayout, sizeof(VkImageLayout));
237 *ptr += sizeof(VkImageLayout);
238 memcpy(*ptr, (uint32_t*)&forMarshaling->srcQueueFamilyIndex, sizeof(uint32_t));
239 *ptr += sizeof(uint32_t);
240 memcpy(*ptr, (uint32_t*)&forMarshaling->dstQueueFamilyIndex, sizeof(uint32_t));
241 *ptr += sizeof(uint32_t);
242 uint64_t cgen_var_0;
243 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image));
244 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
245 *ptr += 1 * 8;
246 reservedmarshal_VkImageSubresourceRange(
247 vkStream, rootType, (VkImageSubresourceRange*)(&forMarshaling->subresourceRange), ptr);
248 }
249
reservedmarshal_VkMemoryBarrier(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryBarrier * forMarshaling,uint8_t ** ptr)250 void reservedmarshal_VkMemoryBarrier(VulkanStreamGuest* vkStream, VkStructureType rootType,
251 const VkMemoryBarrier* forMarshaling, uint8_t** ptr) {
252 (void)vkStream;
253 (void)rootType;
254 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
255 *ptr += sizeof(VkStructureType);
256 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
257 rootType = forMarshaling->sType;
258 }
259 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
260 memcpy(*ptr, (VkAccessFlags*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags));
261 *ptr += sizeof(VkAccessFlags);
262 memcpy(*ptr, (VkAccessFlags*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags));
263 *ptr += sizeof(VkAccessFlags);
264 }
265
reservedmarshal_VkPipelineCacheHeaderVersionOne(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineCacheHeaderVersionOne * forMarshaling,uint8_t ** ptr)266 void reservedmarshal_VkPipelineCacheHeaderVersionOne(
267 VulkanStreamGuest* vkStream, VkStructureType rootType,
268 const VkPipelineCacheHeaderVersionOne* forMarshaling, uint8_t** ptr) {
269 (void)vkStream;
270 (void)rootType;
271 memcpy(*ptr, (uint32_t*)&forMarshaling->headerSize, sizeof(uint32_t));
272 *ptr += sizeof(uint32_t);
273 memcpy(*ptr, (VkPipelineCacheHeaderVersion*)&forMarshaling->headerVersion,
274 sizeof(VkPipelineCacheHeaderVersion));
275 *ptr += sizeof(VkPipelineCacheHeaderVersion);
276 memcpy(*ptr, (uint32_t*)&forMarshaling->vendorID, sizeof(uint32_t));
277 *ptr += sizeof(uint32_t);
278 memcpy(*ptr, (uint32_t*)&forMarshaling->deviceID, sizeof(uint32_t));
279 *ptr += sizeof(uint32_t);
280 memcpy(*ptr, (uint8_t*)forMarshaling->pipelineCacheUUID, VK_UUID_SIZE * sizeof(uint8_t));
281 *ptr += VK_UUID_SIZE * sizeof(uint8_t);
282 }
283
reservedmarshal_VkAllocationCallbacks(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkAllocationCallbacks * forMarshaling,uint8_t ** ptr)284 void reservedmarshal_VkAllocationCallbacks(VulkanStreamGuest* vkStream, VkStructureType rootType,
285 const VkAllocationCallbacks* forMarshaling,
286 uint8_t** ptr) {
287 (void)vkStream;
288 (void)rootType;
289 // WARNING PTR CHECK
290 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pUserData;
291 memcpy((*ptr), &cgen_var_0, 8);
292 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
293 *ptr += 8;
294 if (forMarshaling->pUserData) {
295 memcpy(*ptr, (void*)forMarshaling->pUserData, sizeof(uint8_t));
296 *ptr += sizeof(uint8_t);
297 }
298 uint64_t cgen_var_1 = (uint64_t)forMarshaling->pfnAllocation;
299 memcpy((*ptr), &cgen_var_1, 8);
300 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
301 *ptr += 8;
302 uint64_t cgen_var_2 = (uint64_t)forMarshaling->pfnReallocation;
303 memcpy((*ptr), &cgen_var_2, 8);
304 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
305 *ptr += 8;
306 uint64_t cgen_var_3 = (uint64_t)forMarshaling->pfnFree;
307 memcpy((*ptr), &cgen_var_3, 8);
308 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
309 *ptr += 8;
310 uint64_t cgen_var_4 = (uint64_t)forMarshaling->pfnInternalAllocation;
311 memcpy((*ptr), &cgen_var_4, 8);
312 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
313 *ptr += 8;
314 uint64_t cgen_var_5 = (uint64_t)forMarshaling->pfnInternalFree;
315 memcpy((*ptr), &cgen_var_5, 8);
316 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
317 *ptr += 8;
318 }
319
reservedmarshal_VkApplicationInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkApplicationInfo * forMarshaling,uint8_t ** ptr)320 void reservedmarshal_VkApplicationInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
321 const VkApplicationInfo* forMarshaling, uint8_t** ptr) {
322 (void)vkStream;
323 (void)rootType;
324 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
325 *ptr += sizeof(VkStructureType);
326 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
327 rootType = forMarshaling->sType;
328 }
329 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
330 if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_NULL_OPTIONAL_STRINGS_BIT) {
331 // WARNING PTR CHECK
332 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pApplicationName;
333 memcpy((*ptr), &cgen_var_0, 8);
334 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
335 *ptr += 8;
336 if (forMarshaling->pApplicationName) {
337 {
338 uint32_t l =
339 forMarshaling->pApplicationName ? strlen(forMarshaling->pApplicationName) : 0;
340 memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t));
341 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
342 *ptr += sizeof(uint32_t);
343 memcpy(*ptr, (char*)forMarshaling->pApplicationName, l);
344 *ptr += l;
345 }
346 }
347 } else {
348 {
349 uint32_t l =
350 forMarshaling->pApplicationName ? strlen(forMarshaling->pApplicationName) : 0;
351 memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t));
352 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
353 *ptr += sizeof(uint32_t);
354 memcpy(*ptr, (char*)forMarshaling->pApplicationName, l);
355 *ptr += l;
356 }
357 }
358 memcpy(*ptr, (uint32_t*)&forMarshaling->applicationVersion, sizeof(uint32_t));
359 *ptr += sizeof(uint32_t);
360 if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_NULL_OPTIONAL_STRINGS_BIT) {
361 // WARNING PTR CHECK
362 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pEngineName;
363 memcpy((*ptr), &cgen_var_0, 8);
364 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
365 *ptr += 8;
366 if (forMarshaling->pEngineName) {
367 {
368 uint32_t l = forMarshaling->pEngineName ? strlen(forMarshaling->pEngineName) : 0;
369 memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t));
370 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
371 *ptr += sizeof(uint32_t);
372 memcpy(*ptr, (char*)forMarshaling->pEngineName, l);
373 *ptr += l;
374 }
375 }
376 } else {
377 {
378 uint32_t l = forMarshaling->pEngineName ? strlen(forMarshaling->pEngineName) : 0;
379 memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t));
380 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
381 *ptr += sizeof(uint32_t);
382 memcpy(*ptr, (char*)forMarshaling->pEngineName, l);
383 *ptr += l;
384 }
385 }
386 memcpy(*ptr, (uint32_t*)&forMarshaling->engineVersion, sizeof(uint32_t));
387 *ptr += sizeof(uint32_t);
388 memcpy(*ptr, (uint32_t*)&forMarshaling->apiVersion, sizeof(uint32_t));
389 *ptr += sizeof(uint32_t);
390 }
391
reservedmarshal_VkFormatProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkFormatProperties * forMarshaling,uint8_t ** ptr)392 void reservedmarshal_VkFormatProperties(VulkanStreamGuest* vkStream, VkStructureType rootType,
393 const VkFormatProperties* forMarshaling, uint8_t** ptr) {
394 (void)vkStream;
395 (void)rootType;
396 memcpy(*ptr, (VkFormatFeatureFlags*)&forMarshaling->linearTilingFeatures,
397 sizeof(VkFormatFeatureFlags));
398 *ptr += sizeof(VkFormatFeatureFlags);
399 memcpy(*ptr, (VkFormatFeatureFlags*)&forMarshaling->optimalTilingFeatures,
400 sizeof(VkFormatFeatureFlags));
401 *ptr += sizeof(VkFormatFeatureFlags);
402 memcpy(*ptr, (VkFormatFeatureFlags*)&forMarshaling->bufferFeatures,
403 sizeof(VkFormatFeatureFlags));
404 *ptr += sizeof(VkFormatFeatureFlags);
405 }
406
reservedmarshal_VkImageFormatProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageFormatProperties * forMarshaling,uint8_t ** ptr)407 void reservedmarshal_VkImageFormatProperties(VulkanStreamGuest* vkStream, VkStructureType rootType,
408 const VkImageFormatProperties* forMarshaling,
409 uint8_t** ptr) {
410 (void)vkStream;
411 (void)rootType;
412 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->maxExtent), ptr);
413 memcpy(*ptr, (uint32_t*)&forMarshaling->maxMipLevels, sizeof(uint32_t));
414 *ptr += sizeof(uint32_t);
415 memcpy(*ptr, (uint32_t*)&forMarshaling->maxArrayLayers, sizeof(uint32_t));
416 *ptr += sizeof(uint32_t);
417 memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->sampleCounts, sizeof(VkSampleCountFlags));
418 *ptr += sizeof(VkSampleCountFlags);
419 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxResourceSize, sizeof(VkDeviceSize));
420 *ptr += sizeof(VkDeviceSize);
421 }
422
reservedmarshal_VkInstanceCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkInstanceCreateInfo * forMarshaling,uint8_t ** ptr)423 void reservedmarshal_VkInstanceCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
424 const VkInstanceCreateInfo* forMarshaling,
425 uint8_t** ptr) {
426 (void)vkStream;
427 (void)rootType;
428 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
429 *ptr += sizeof(VkStructureType);
430 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
431 rootType = forMarshaling->sType;
432 }
433 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
434 memcpy(*ptr, (VkInstanceCreateFlags*)&forMarshaling->flags, sizeof(VkInstanceCreateFlags));
435 *ptr += sizeof(VkInstanceCreateFlags);
436 // WARNING PTR CHECK
437 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pApplicationInfo;
438 memcpy((*ptr), &cgen_var_0, 8);
439 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
440 *ptr += 8;
441 if (forMarshaling->pApplicationInfo) {
442 reservedmarshal_VkApplicationInfo(
443 vkStream, rootType, (const VkApplicationInfo*)(forMarshaling->pApplicationInfo), ptr);
444 }
445 memcpy(*ptr, (uint32_t*)&forMarshaling->enabledLayerCount, sizeof(uint32_t));
446 *ptr += sizeof(uint32_t);
447 {
448 uint32_t c = 0;
449 if (forMarshaling) {
450 c = forMarshaling->enabledLayerCount;
451 }
452 memcpy(*ptr, (uint32_t*)&c, sizeof(uint32_t));
453 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
454 *ptr += sizeof(uint32_t);
455 for (uint32_t i = 0; i < c; ++i) {
456 uint32_t l = forMarshaling->ppEnabledLayerNames
457 ? strlen(forMarshaling->ppEnabledLayerNames[i])
458 : 0;
459 memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t));
460 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
461 *ptr += sizeof(uint32_t);
462 if (l) {
463 memcpy(*ptr, (char*)(forMarshaling->ppEnabledLayerNames[i]), l);
464 *ptr += l;
465 }
466 }
467 }
468 memcpy(*ptr, (uint32_t*)&forMarshaling->enabledExtensionCount, sizeof(uint32_t));
469 *ptr += sizeof(uint32_t);
470 {
471 uint32_t c = 0;
472 if (forMarshaling) {
473 c = forMarshaling->enabledExtensionCount;
474 }
475 memcpy(*ptr, (uint32_t*)&c, sizeof(uint32_t));
476 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
477 *ptr += sizeof(uint32_t);
478 for (uint32_t i = 0; i < c; ++i) {
479 uint32_t l = forMarshaling->ppEnabledExtensionNames
480 ? strlen(forMarshaling->ppEnabledExtensionNames[i])
481 : 0;
482 memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t));
483 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
484 *ptr += sizeof(uint32_t);
485 if (l) {
486 memcpy(*ptr, (char*)(forMarshaling->ppEnabledExtensionNames[i]), l);
487 *ptr += l;
488 }
489 }
490 }
491 }
492
reservedmarshal_VkMemoryHeap(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryHeap * forMarshaling,uint8_t ** ptr)493 void reservedmarshal_VkMemoryHeap(VulkanStreamGuest* vkStream, VkStructureType rootType,
494 const VkMemoryHeap* forMarshaling, uint8_t** ptr) {
495 (void)vkStream;
496 (void)rootType;
497 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
498 *ptr += sizeof(VkDeviceSize);
499 memcpy(*ptr, (VkMemoryHeapFlags*)&forMarshaling->flags, sizeof(VkMemoryHeapFlags));
500 *ptr += sizeof(VkMemoryHeapFlags);
501 }
502
reservedmarshal_VkMemoryType(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryType * forMarshaling,uint8_t ** ptr)503 void reservedmarshal_VkMemoryType(VulkanStreamGuest* vkStream, VkStructureType rootType,
504 const VkMemoryType* forMarshaling, uint8_t** ptr) {
505 (void)vkStream;
506 (void)rootType;
507 memcpy(*ptr, (VkMemoryPropertyFlags*)&forMarshaling->propertyFlags,
508 sizeof(VkMemoryPropertyFlags));
509 *ptr += sizeof(VkMemoryPropertyFlags);
510 memcpy(*ptr, (uint32_t*)&forMarshaling->heapIndex, sizeof(uint32_t));
511 *ptr += sizeof(uint32_t);
512 }
513
reservedmarshal_VkPhysicalDeviceFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceFeatures * forMarshaling,uint8_t ** ptr)514 void reservedmarshal_VkPhysicalDeviceFeatures(VulkanStreamGuest* vkStream, VkStructureType rootType,
515 const VkPhysicalDeviceFeatures* forMarshaling,
516 uint8_t** ptr) {
517 (void)vkStream;
518 (void)rootType;
519 memcpy(*ptr, (VkBool32*)&forMarshaling->robustBufferAccess, sizeof(VkBool32));
520 *ptr += sizeof(VkBool32);
521 memcpy(*ptr, (VkBool32*)&forMarshaling->fullDrawIndexUint32, sizeof(VkBool32));
522 *ptr += sizeof(VkBool32);
523 memcpy(*ptr, (VkBool32*)&forMarshaling->imageCubeArray, sizeof(VkBool32));
524 *ptr += sizeof(VkBool32);
525 memcpy(*ptr, (VkBool32*)&forMarshaling->independentBlend, sizeof(VkBool32));
526 *ptr += sizeof(VkBool32);
527 memcpy(*ptr, (VkBool32*)&forMarshaling->geometryShader, sizeof(VkBool32));
528 *ptr += sizeof(VkBool32);
529 memcpy(*ptr, (VkBool32*)&forMarshaling->tessellationShader, sizeof(VkBool32));
530 *ptr += sizeof(VkBool32);
531 memcpy(*ptr, (VkBool32*)&forMarshaling->sampleRateShading, sizeof(VkBool32));
532 *ptr += sizeof(VkBool32);
533 memcpy(*ptr, (VkBool32*)&forMarshaling->dualSrcBlend, sizeof(VkBool32));
534 *ptr += sizeof(VkBool32);
535 memcpy(*ptr, (VkBool32*)&forMarshaling->logicOp, sizeof(VkBool32));
536 *ptr += sizeof(VkBool32);
537 memcpy(*ptr, (VkBool32*)&forMarshaling->multiDrawIndirect, sizeof(VkBool32));
538 *ptr += sizeof(VkBool32);
539 memcpy(*ptr, (VkBool32*)&forMarshaling->drawIndirectFirstInstance, sizeof(VkBool32));
540 *ptr += sizeof(VkBool32);
541 memcpy(*ptr, (VkBool32*)&forMarshaling->depthClamp, sizeof(VkBool32));
542 *ptr += sizeof(VkBool32);
543 memcpy(*ptr, (VkBool32*)&forMarshaling->depthBiasClamp, sizeof(VkBool32));
544 *ptr += sizeof(VkBool32);
545 memcpy(*ptr, (VkBool32*)&forMarshaling->fillModeNonSolid, sizeof(VkBool32));
546 *ptr += sizeof(VkBool32);
547 memcpy(*ptr, (VkBool32*)&forMarshaling->depthBounds, sizeof(VkBool32));
548 *ptr += sizeof(VkBool32);
549 memcpy(*ptr, (VkBool32*)&forMarshaling->wideLines, sizeof(VkBool32));
550 *ptr += sizeof(VkBool32);
551 memcpy(*ptr, (VkBool32*)&forMarshaling->largePoints, sizeof(VkBool32));
552 *ptr += sizeof(VkBool32);
553 memcpy(*ptr, (VkBool32*)&forMarshaling->alphaToOne, sizeof(VkBool32));
554 *ptr += sizeof(VkBool32);
555 memcpy(*ptr, (VkBool32*)&forMarshaling->multiViewport, sizeof(VkBool32));
556 *ptr += sizeof(VkBool32);
557 memcpy(*ptr, (VkBool32*)&forMarshaling->samplerAnisotropy, sizeof(VkBool32));
558 *ptr += sizeof(VkBool32);
559 memcpy(*ptr, (VkBool32*)&forMarshaling->textureCompressionETC2, sizeof(VkBool32));
560 *ptr += sizeof(VkBool32);
561 memcpy(*ptr, (VkBool32*)&forMarshaling->textureCompressionASTC_LDR, sizeof(VkBool32));
562 *ptr += sizeof(VkBool32);
563 memcpy(*ptr, (VkBool32*)&forMarshaling->textureCompressionBC, sizeof(VkBool32));
564 *ptr += sizeof(VkBool32);
565 memcpy(*ptr, (VkBool32*)&forMarshaling->occlusionQueryPrecise, sizeof(VkBool32));
566 *ptr += sizeof(VkBool32);
567 memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineStatisticsQuery, sizeof(VkBool32));
568 *ptr += sizeof(VkBool32);
569 memcpy(*ptr, (VkBool32*)&forMarshaling->vertexPipelineStoresAndAtomics, sizeof(VkBool32));
570 *ptr += sizeof(VkBool32);
571 memcpy(*ptr, (VkBool32*)&forMarshaling->fragmentStoresAndAtomics, sizeof(VkBool32));
572 *ptr += sizeof(VkBool32);
573 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderTessellationAndGeometryPointSize,
574 sizeof(VkBool32));
575 *ptr += sizeof(VkBool32);
576 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderImageGatherExtended, sizeof(VkBool32));
577 *ptr += sizeof(VkBool32);
578 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageExtendedFormats, sizeof(VkBool32));
579 *ptr += sizeof(VkBool32);
580 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageMultisample, sizeof(VkBool32));
581 *ptr += sizeof(VkBool32);
582 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageReadWithoutFormat, sizeof(VkBool32));
583 *ptr += sizeof(VkBool32);
584 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageWriteWithoutFormat, sizeof(VkBool32));
585 *ptr += sizeof(VkBool32);
586 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformBufferArrayDynamicIndexing,
587 sizeof(VkBool32));
588 *ptr += sizeof(VkBool32);
589 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSampledImageArrayDynamicIndexing,
590 sizeof(VkBool32));
591 *ptr += sizeof(VkBool32);
592 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageBufferArrayDynamicIndexing,
593 sizeof(VkBool32));
594 *ptr += sizeof(VkBool32);
595 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageArrayDynamicIndexing,
596 sizeof(VkBool32));
597 *ptr += sizeof(VkBool32);
598 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderClipDistance, sizeof(VkBool32));
599 *ptr += sizeof(VkBool32);
600 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderCullDistance, sizeof(VkBool32));
601 *ptr += sizeof(VkBool32);
602 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderFloat64, sizeof(VkBool32));
603 *ptr += sizeof(VkBool32);
604 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInt64, sizeof(VkBool32));
605 *ptr += sizeof(VkBool32);
606 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInt16, sizeof(VkBool32));
607 *ptr += sizeof(VkBool32);
608 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderResourceResidency, sizeof(VkBool32));
609 *ptr += sizeof(VkBool32);
610 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderResourceMinLod, sizeof(VkBool32));
611 *ptr += sizeof(VkBool32);
612 memcpy(*ptr, (VkBool32*)&forMarshaling->sparseBinding, sizeof(VkBool32));
613 *ptr += sizeof(VkBool32);
614 memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidencyBuffer, sizeof(VkBool32));
615 *ptr += sizeof(VkBool32);
616 memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidencyImage2D, sizeof(VkBool32));
617 *ptr += sizeof(VkBool32);
618 memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidencyImage3D, sizeof(VkBool32));
619 *ptr += sizeof(VkBool32);
620 memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidency2Samples, sizeof(VkBool32));
621 *ptr += sizeof(VkBool32);
622 memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidency4Samples, sizeof(VkBool32));
623 *ptr += sizeof(VkBool32);
624 memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidency8Samples, sizeof(VkBool32));
625 *ptr += sizeof(VkBool32);
626 memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidency16Samples, sizeof(VkBool32));
627 *ptr += sizeof(VkBool32);
628 memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidencyAliased, sizeof(VkBool32));
629 *ptr += sizeof(VkBool32);
630 memcpy(*ptr, (VkBool32*)&forMarshaling->variableMultisampleRate, sizeof(VkBool32));
631 *ptr += sizeof(VkBool32);
632 memcpy(*ptr, (VkBool32*)&forMarshaling->inheritedQueries, sizeof(VkBool32));
633 *ptr += sizeof(VkBool32);
634 }
635
reservedmarshal_VkPhysicalDeviceLimits(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceLimits * forMarshaling,uint8_t ** ptr)636 void reservedmarshal_VkPhysicalDeviceLimits(VulkanStreamGuest* vkStream, VkStructureType rootType,
637 const VkPhysicalDeviceLimits* forMarshaling,
638 uint8_t** ptr) {
639 (void)vkStream;
640 (void)rootType;
641 memcpy(*ptr, (uint32_t*)&forMarshaling->maxImageDimension1D, sizeof(uint32_t));
642 *ptr += sizeof(uint32_t);
643 memcpy(*ptr, (uint32_t*)&forMarshaling->maxImageDimension2D, sizeof(uint32_t));
644 *ptr += sizeof(uint32_t);
645 memcpy(*ptr, (uint32_t*)&forMarshaling->maxImageDimension3D, sizeof(uint32_t));
646 *ptr += sizeof(uint32_t);
647 memcpy(*ptr, (uint32_t*)&forMarshaling->maxImageDimensionCube, sizeof(uint32_t));
648 *ptr += sizeof(uint32_t);
649 memcpy(*ptr, (uint32_t*)&forMarshaling->maxImageArrayLayers, sizeof(uint32_t));
650 *ptr += sizeof(uint32_t);
651 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTexelBufferElements, sizeof(uint32_t));
652 *ptr += sizeof(uint32_t);
653 memcpy(*ptr, (uint32_t*)&forMarshaling->maxUniformBufferRange, sizeof(uint32_t));
654 *ptr += sizeof(uint32_t);
655 memcpy(*ptr, (uint32_t*)&forMarshaling->maxStorageBufferRange, sizeof(uint32_t));
656 *ptr += sizeof(uint32_t);
657 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPushConstantsSize, sizeof(uint32_t));
658 *ptr += sizeof(uint32_t);
659 memcpy(*ptr, (uint32_t*)&forMarshaling->maxMemoryAllocationCount, sizeof(uint32_t));
660 *ptr += sizeof(uint32_t);
661 memcpy(*ptr, (uint32_t*)&forMarshaling->maxSamplerAllocationCount, sizeof(uint32_t));
662 *ptr += sizeof(uint32_t);
663 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->bufferImageGranularity, sizeof(VkDeviceSize));
664 *ptr += sizeof(VkDeviceSize);
665 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->sparseAddressSpaceSize, sizeof(VkDeviceSize));
666 *ptr += sizeof(VkDeviceSize);
667 memcpy(*ptr, (uint32_t*)&forMarshaling->maxBoundDescriptorSets, sizeof(uint32_t));
668 *ptr += sizeof(uint32_t);
669 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorSamplers, sizeof(uint32_t));
670 *ptr += sizeof(uint32_t);
671 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUniformBuffers, sizeof(uint32_t));
672 *ptr += sizeof(uint32_t);
673 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorStorageBuffers, sizeof(uint32_t));
674 *ptr += sizeof(uint32_t);
675 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorSampledImages, sizeof(uint32_t));
676 *ptr += sizeof(uint32_t);
677 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorStorageImages, sizeof(uint32_t));
678 *ptr += sizeof(uint32_t);
679 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorInputAttachments,
680 sizeof(uint32_t));
681 *ptr += sizeof(uint32_t);
682 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageResources, sizeof(uint32_t));
683 *ptr += sizeof(uint32_t);
684 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetSamplers, sizeof(uint32_t));
685 *ptr += sizeof(uint32_t);
686 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUniformBuffers, sizeof(uint32_t));
687 *ptr += sizeof(uint32_t);
688 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUniformBuffersDynamic,
689 sizeof(uint32_t));
690 *ptr += sizeof(uint32_t);
691 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetStorageBuffers, sizeof(uint32_t));
692 *ptr += sizeof(uint32_t);
693 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetStorageBuffersDynamic,
694 sizeof(uint32_t));
695 *ptr += sizeof(uint32_t);
696 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetSampledImages, sizeof(uint32_t));
697 *ptr += sizeof(uint32_t);
698 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetStorageImages, sizeof(uint32_t));
699 *ptr += sizeof(uint32_t);
700 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetInputAttachments, sizeof(uint32_t));
701 *ptr += sizeof(uint32_t);
702 memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexInputAttributes, sizeof(uint32_t));
703 *ptr += sizeof(uint32_t);
704 memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexInputBindings, sizeof(uint32_t));
705 *ptr += sizeof(uint32_t);
706 memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexInputAttributeOffset, sizeof(uint32_t));
707 *ptr += sizeof(uint32_t);
708 memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexInputBindingStride, sizeof(uint32_t));
709 *ptr += sizeof(uint32_t);
710 memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexOutputComponents, sizeof(uint32_t));
711 *ptr += sizeof(uint32_t);
712 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationGenerationLevel, sizeof(uint32_t));
713 *ptr += sizeof(uint32_t);
714 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationPatchSize, sizeof(uint32_t));
715 *ptr += sizeof(uint32_t);
716 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationControlPerVertexInputComponents,
717 sizeof(uint32_t));
718 *ptr += sizeof(uint32_t);
719 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationControlPerVertexOutputComponents,
720 sizeof(uint32_t));
721 *ptr += sizeof(uint32_t);
722 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationControlPerPatchOutputComponents,
723 sizeof(uint32_t));
724 *ptr += sizeof(uint32_t);
725 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationControlTotalOutputComponents,
726 sizeof(uint32_t));
727 *ptr += sizeof(uint32_t);
728 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationEvaluationInputComponents,
729 sizeof(uint32_t));
730 *ptr += sizeof(uint32_t);
731 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationEvaluationOutputComponents,
732 sizeof(uint32_t));
733 *ptr += sizeof(uint32_t);
734 memcpy(*ptr, (uint32_t*)&forMarshaling->maxGeometryShaderInvocations, sizeof(uint32_t));
735 *ptr += sizeof(uint32_t);
736 memcpy(*ptr, (uint32_t*)&forMarshaling->maxGeometryInputComponents, sizeof(uint32_t));
737 *ptr += sizeof(uint32_t);
738 memcpy(*ptr, (uint32_t*)&forMarshaling->maxGeometryOutputComponents, sizeof(uint32_t));
739 *ptr += sizeof(uint32_t);
740 memcpy(*ptr, (uint32_t*)&forMarshaling->maxGeometryOutputVertices, sizeof(uint32_t));
741 *ptr += sizeof(uint32_t);
742 memcpy(*ptr, (uint32_t*)&forMarshaling->maxGeometryTotalOutputComponents, sizeof(uint32_t));
743 *ptr += sizeof(uint32_t);
744 memcpy(*ptr, (uint32_t*)&forMarshaling->maxFragmentInputComponents, sizeof(uint32_t));
745 *ptr += sizeof(uint32_t);
746 memcpy(*ptr, (uint32_t*)&forMarshaling->maxFragmentOutputAttachments, sizeof(uint32_t));
747 *ptr += sizeof(uint32_t);
748 memcpy(*ptr, (uint32_t*)&forMarshaling->maxFragmentDualSrcAttachments, sizeof(uint32_t));
749 *ptr += sizeof(uint32_t);
750 memcpy(*ptr, (uint32_t*)&forMarshaling->maxFragmentCombinedOutputResources, sizeof(uint32_t));
751 *ptr += sizeof(uint32_t);
752 memcpy(*ptr, (uint32_t*)&forMarshaling->maxComputeSharedMemorySize, sizeof(uint32_t));
753 *ptr += sizeof(uint32_t);
754 memcpy(*ptr, (uint32_t*)forMarshaling->maxComputeWorkGroupCount, 3 * sizeof(uint32_t));
755 *ptr += 3 * sizeof(uint32_t);
756 memcpy(*ptr, (uint32_t*)&forMarshaling->maxComputeWorkGroupInvocations, sizeof(uint32_t));
757 *ptr += sizeof(uint32_t);
758 memcpy(*ptr, (uint32_t*)forMarshaling->maxComputeWorkGroupSize, 3 * sizeof(uint32_t));
759 *ptr += 3 * sizeof(uint32_t);
760 memcpy(*ptr, (uint32_t*)&forMarshaling->subPixelPrecisionBits, sizeof(uint32_t));
761 *ptr += sizeof(uint32_t);
762 memcpy(*ptr, (uint32_t*)&forMarshaling->subTexelPrecisionBits, sizeof(uint32_t));
763 *ptr += sizeof(uint32_t);
764 memcpy(*ptr, (uint32_t*)&forMarshaling->mipmapPrecisionBits, sizeof(uint32_t));
765 *ptr += sizeof(uint32_t);
766 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDrawIndexedIndexValue, sizeof(uint32_t));
767 *ptr += sizeof(uint32_t);
768 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDrawIndirectCount, sizeof(uint32_t));
769 *ptr += sizeof(uint32_t);
770 memcpy(*ptr, (float*)&forMarshaling->maxSamplerLodBias, sizeof(float));
771 *ptr += sizeof(float);
772 memcpy(*ptr, (float*)&forMarshaling->maxSamplerAnisotropy, sizeof(float));
773 *ptr += sizeof(float);
774 memcpy(*ptr, (uint32_t*)&forMarshaling->maxViewports, sizeof(uint32_t));
775 *ptr += sizeof(uint32_t);
776 memcpy(*ptr, (uint32_t*)forMarshaling->maxViewportDimensions, 2 * sizeof(uint32_t));
777 *ptr += 2 * sizeof(uint32_t);
778 memcpy(*ptr, (float*)forMarshaling->viewportBoundsRange, 2 * sizeof(float));
779 *ptr += 2 * sizeof(float);
780 memcpy(*ptr, (uint32_t*)&forMarshaling->viewportSubPixelBits, sizeof(uint32_t));
781 *ptr += sizeof(uint32_t);
782 uint64_t cgen_var_0 = (uint64_t)forMarshaling->minMemoryMapAlignment;
783 memcpy((*ptr), &cgen_var_0, 8);
784 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
785 *ptr += 8;
786 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->minTexelBufferOffsetAlignment,
787 sizeof(VkDeviceSize));
788 *ptr += sizeof(VkDeviceSize);
789 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->minUniformBufferOffsetAlignment,
790 sizeof(VkDeviceSize));
791 *ptr += sizeof(VkDeviceSize);
792 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->minStorageBufferOffsetAlignment,
793 sizeof(VkDeviceSize));
794 *ptr += sizeof(VkDeviceSize);
795 memcpy(*ptr, (int32_t*)&forMarshaling->minTexelOffset, sizeof(int32_t));
796 *ptr += sizeof(int32_t);
797 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTexelOffset, sizeof(uint32_t));
798 *ptr += sizeof(uint32_t);
799 memcpy(*ptr, (int32_t*)&forMarshaling->minTexelGatherOffset, sizeof(int32_t));
800 *ptr += sizeof(int32_t);
801 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTexelGatherOffset, sizeof(uint32_t));
802 *ptr += sizeof(uint32_t);
803 memcpy(*ptr, (float*)&forMarshaling->minInterpolationOffset, sizeof(float));
804 *ptr += sizeof(float);
805 memcpy(*ptr, (float*)&forMarshaling->maxInterpolationOffset, sizeof(float));
806 *ptr += sizeof(float);
807 memcpy(*ptr, (uint32_t*)&forMarshaling->subPixelInterpolationOffsetBits, sizeof(uint32_t));
808 *ptr += sizeof(uint32_t);
809 memcpy(*ptr, (uint32_t*)&forMarshaling->maxFramebufferWidth, sizeof(uint32_t));
810 *ptr += sizeof(uint32_t);
811 memcpy(*ptr, (uint32_t*)&forMarshaling->maxFramebufferHeight, sizeof(uint32_t));
812 *ptr += sizeof(uint32_t);
813 memcpy(*ptr, (uint32_t*)&forMarshaling->maxFramebufferLayers, sizeof(uint32_t));
814 *ptr += sizeof(uint32_t);
815 memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->framebufferColorSampleCounts,
816 sizeof(VkSampleCountFlags));
817 *ptr += sizeof(VkSampleCountFlags);
818 memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->framebufferDepthSampleCounts,
819 sizeof(VkSampleCountFlags));
820 *ptr += sizeof(VkSampleCountFlags);
821 memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->framebufferStencilSampleCounts,
822 sizeof(VkSampleCountFlags));
823 *ptr += sizeof(VkSampleCountFlags);
824 memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->framebufferNoAttachmentsSampleCounts,
825 sizeof(VkSampleCountFlags));
826 *ptr += sizeof(VkSampleCountFlags);
827 memcpy(*ptr, (uint32_t*)&forMarshaling->maxColorAttachments, sizeof(uint32_t));
828 *ptr += sizeof(uint32_t);
829 memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->sampledImageColorSampleCounts,
830 sizeof(VkSampleCountFlags));
831 *ptr += sizeof(VkSampleCountFlags);
832 memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->sampledImageIntegerSampleCounts,
833 sizeof(VkSampleCountFlags));
834 *ptr += sizeof(VkSampleCountFlags);
835 memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->sampledImageDepthSampleCounts,
836 sizeof(VkSampleCountFlags));
837 *ptr += sizeof(VkSampleCountFlags);
838 memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->sampledImageStencilSampleCounts,
839 sizeof(VkSampleCountFlags));
840 *ptr += sizeof(VkSampleCountFlags);
841 memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->storageImageSampleCounts,
842 sizeof(VkSampleCountFlags));
843 *ptr += sizeof(VkSampleCountFlags);
844 memcpy(*ptr, (uint32_t*)&forMarshaling->maxSampleMaskWords, sizeof(uint32_t));
845 *ptr += sizeof(uint32_t);
846 memcpy(*ptr, (VkBool32*)&forMarshaling->timestampComputeAndGraphics, sizeof(VkBool32));
847 *ptr += sizeof(VkBool32);
848 memcpy(*ptr, (float*)&forMarshaling->timestampPeriod, sizeof(float));
849 *ptr += sizeof(float);
850 memcpy(*ptr, (uint32_t*)&forMarshaling->maxClipDistances, sizeof(uint32_t));
851 *ptr += sizeof(uint32_t);
852 memcpy(*ptr, (uint32_t*)&forMarshaling->maxCullDistances, sizeof(uint32_t));
853 *ptr += sizeof(uint32_t);
854 memcpy(*ptr, (uint32_t*)&forMarshaling->maxCombinedClipAndCullDistances, sizeof(uint32_t));
855 *ptr += sizeof(uint32_t);
856 memcpy(*ptr, (uint32_t*)&forMarshaling->discreteQueuePriorities, sizeof(uint32_t));
857 *ptr += sizeof(uint32_t);
858 memcpy(*ptr, (float*)forMarshaling->pointSizeRange, 2 * sizeof(float));
859 *ptr += 2 * sizeof(float);
860 memcpy(*ptr, (float*)forMarshaling->lineWidthRange, 2 * sizeof(float));
861 *ptr += 2 * sizeof(float);
862 memcpy(*ptr, (float*)&forMarshaling->pointSizeGranularity, sizeof(float));
863 *ptr += sizeof(float);
864 memcpy(*ptr, (float*)&forMarshaling->lineWidthGranularity, sizeof(float));
865 *ptr += sizeof(float);
866 memcpy(*ptr, (VkBool32*)&forMarshaling->strictLines, sizeof(VkBool32));
867 *ptr += sizeof(VkBool32);
868 memcpy(*ptr, (VkBool32*)&forMarshaling->standardSampleLocations, sizeof(VkBool32));
869 *ptr += sizeof(VkBool32);
870 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->optimalBufferCopyOffsetAlignment,
871 sizeof(VkDeviceSize));
872 *ptr += sizeof(VkDeviceSize);
873 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->optimalBufferCopyRowPitchAlignment,
874 sizeof(VkDeviceSize));
875 *ptr += sizeof(VkDeviceSize);
876 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->nonCoherentAtomSize, sizeof(VkDeviceSize));
877 *ptr += sizeof(VkDeviceSize);
878 }
879
reservedmarshal_VkPhysicalDeviceMemoryProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMemoryProperties * forMarshaling,uint8_t ** ptr)880 void reservedmarshal_VkPhysicalDeviceMemoryProperties(
881 VulkanStreamGuest* vkStream, VkStructureType rootType,
882 const VkPhysicalDeviceMemoryProperties* forMarshaling, uint8_t** ptr) {
883 (void)vkStream;
884 (void)rootType;
885 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryTypeCount, sizeof(uint32_t));
886 *ptr += sizeof(uint32_t);
887 for (uint32_t i = 0; i < (uint32_t)VK_MAX_MEMORY_TYPES; ++i) {
888 reservedmarshal_VkMemoryType(vkStream, rootType,
889 (VkMemoryType*)(forMarshaling->memoryTypes + i), ptr);
890 }
891 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryHeapCount, sizeof(uint32_t));
892 *ptr += sizeof(uint32_t);
893 for (uint32_t i = 0; i < (uint32_t)VK_MAX_MEMORY_HEAPS; ++i) {
894 reservedmarshal_VkMemoryHeap(vkStream, rootType,
895 (VkMemoryHeap*)(forMarshaling->memoryHeaps + i), ptr);
896 }
897 }
898
reservedmarshal_VkPhysicalDeviceSparseProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceSparseProperties * forMarshaling,uint8_t ** ptr)899 void reservedmarshal_VkPhysicalDeviceSparseProperties(
900 VulkanStreamGuest* vkStream, VkStructureType rootType,
901 const VkPhysicalDeviceSparseProperties* forMarshaling, uint8_t** ptr) {
902 (void)vkStream;
903 (void)rootType;
904 memcpy(*ptr, (VkBool32*)&forMarshaling->residencyStandard2DBlockShape, sizeof(VkBool32));
905 *ptr += sizeof(VkBool32);
906 memcpy(*ptr, (VkBool32*)&forMarshaling->residencyStandard2DMultisampleBlockShape,
907 sizeof(VkBool32));
908 *ptr += sizeof(VkBool32);
909 memcpy(*ptr, (VkBool32*)&forMarshaling->residencyStandard3DBlockShape, sizeof(VkBool32));
910 *ptr += sizeof(VkBool32);
911 memcpy(*ptr, (VkBool32*)&forMarshaling->residencyAlignedMipSize, sizeof(VkBool32));
912 *ptr += sizeof(VkBool32);
913 memcpy(*ptr, (VkBool32*)&forMarshaling->residencyNonResidentStrict, sizeof(VkBool32));
914 *ptr += sizeof(VkBool32);
915 }
916
reservedmarshal_VkPhysicalDeviceProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceProperties * forMarshaling,uint8_t ** ptr)917 void reservedmarshal_VkPhysicalDeviceProperties(VulkanStreamGuest* vkStream,
918 VkStructureType rootType,
919 const VkPhysicalDeviceProperties* forMarshaling,
920 uint8_t** ptr) {
921 (void)vkStream;
922 (void)rootType;
923 memcpy(*ptr, (uint32_t*)&forMarshaling->apiVersion, sizeof(uint32_t));
924 *ptr += sizeof(uint32_t);
925 memcpy(*ptr, (uint32_t*)&forMarshaling->driverVersion, sizeof(uint32_t));
926 *ptr += sizeof(uint32_t);
927 memcpy(*ptr, (uint32_t*)&forMarshaling->vendorID, sizeof(uint32_t));
928 *ptr += sizeof(uint32_t);
929 memcpy(*ptr, (uint32_t*)&forMarshaling->deviceID, sizeof(uint32_t));
930 *ptr += sizeof(uint32_t);
931 memcpy(*ptr, (VkPhysicalDeviceType*)&forMarshaling->deviceType, sizeof(VkPhysicalDeviceType));
932 *ptr += sizeof(VkPhysicalDeviceType);
933 memcpy(*ptr, (char*)forMarshaling->deviceName, VK_MAX_PHYSICAL_DEVICE_NAME_SIZE * sizeof(char));
934 *ptr += VK_MAX_PHYSICAL_DEVICE_NAME_SIZE * sizeof(char);
935 memcpy(*ptr, (uint8_t*)forMarshaling->pipelineCacheUUID, VK_UUID_SIZE * sizeof(uint8_t));
936 *ptr += VK_UUID_SIZE * sizeof(uint8_t);
937 reservedmarshal_VkPhysicalDeviceLimits(vkStream, rootType,
938 (VkPhysicalDeviceLimits*)(&forMarshaling->limits), ptr);
939 reservedmarshal_VkPhysicalDeviceSparseProperties(
940 vkStream, rootType, (VkPhysicalDeviceSparseProperties*)(&forMarshaling->sparseProperties),
941 ptr);
942 }
943
reservedmarshal_VkQueueFamilyProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkQueueFamilyProperties * forMarshaling,uint8_t ** ptr)944 void reservedmarshal_VkQueueFamilyProperties(VulkanStreamGuest* vkStream, VkStructureType rootType,
945 const VkQueueFamilyProperties* forMarshaling,
946 uint8_t** ptr) {
947 (void)vkStream;
948 (void)rootType;
949 memcpy(*ptr, (VkQueueFlags*)&forMarshaling->queueFlags, sizeof(VkQueueFlags));
950 *ptr += sizeof(VkQueueFlags);
951 memcpy(*ptr, (uint32_t*)&forMarshaling->queueCount, sizeof(uint32_t));
952 *ptr += sizeof(uint32_t);
953 memcpy(*ptr, (uint32_t*)&forMarshaling->timestampValidBits, sizeof(uint32_t));
954 *ptr += sizeof(uint32_t);
955 reservedmarshal_VkExtent3D(vkStream, rootType,
956 (VkExtent3D*)(&forMarshaling->minImageTransferGranularity), ptr);
957 }
958
reservedmarshal_VkDeviceQueueCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceQueueCreateInfo * forMarshaling,uint8_t ** ptr)959 void reservedmarshal_VkDeviceQueueCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
960 const VkDeviceQueueCreateInfo* forMarshaling,
961 uint8_t** ptr) {
962 (void)vkStream;
963 (void)rootType;
964 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
965 *ptr += sizeof(VkStructureType);
966 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
967 rootType = forMarshaling->sType;
968 }
969 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
970 memcpy(*ptr, (VkDeviceQueueCreateFlags*)&forMarshaling->flags,
971 sizeof(VkDeviceQueueCreateFlags));
972 *ptr += sizeof(VkDeviceQueueCreateFlags);
973 memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndex, sizeof(uint32_t));
974 *ptr += sizeof(uint32_t);
975 memcpy(*ptr, (uint32_t*)&forMarshaling->queueCount, sizeof(uint32_t));
976 *ptr += sizeof(uint32_t);
977 memcpy(*ptr, (const float*)forMarshaling->pQueuePriorities,
978 forMarshaling->queueCount * sizeof(const float));
979 *ptr += forMarshaling->queueCount * sizeof(const float);
980 }
981
reservedmarshal_VkDeviceCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceCreateInfo * forMarshaling,uint8_t ** ptr)982 void reservedmarshal_VkDeviceCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
983 const VkDeviceCreateInfo* forMarshaling, uint8_t** ptr) {
984 (void)vkStream;
985 (void)rootType;
986 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
987 *ptr += sizeof(VkStructureType);
988 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
989 rootType = forMarshaling->sType;
990 }
991 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
992 memcpy(*ptr, (VkDeviceCreateFlags*)&forMarshaling->flags, sizeof(VkDeviceCreateFlags));
993 *ptr += sizeof(VkDeviceCreateFlags);
994 memcpy(*ptr, (uint32_t*)&forMarshaling->queueCreateInfoCount, sizeof(uint32_t));
995 *ptr += sizeof(uint32_t);
996 for (uint32_t i = 0; i < (uint32_t)forMarshaling->queueCreateInfoCount; ++i) {
997 reservedmarshal_VkDeviceQueueCreateInfo(
998 vkStream, rootType,
999 (const VkDeviceQueueCreateInfo*)(forMarshaling->pQueueCreateInfos + i), ptr);
1000 }
1001 memcpy(*ptr, (uint32_t*)&forMarshaling->enabledLayerCount, sizeof(uint32_t));
1002 *ptr += sizeof(uint32_t);
1003 {
1004 uint32_t c = 0;
1005 if (forMarshaling) {
1006 c = forMarshaling->enabledLayerCount;
1007 }
1008 memcpy(*ptr, (uint32_t*)&c, sizeof(uint32_t));
1009 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
1010 *ptr += sizeof(uint32_t);
1011 for (uint32_t i = 0; i < c; ++i) {
1012 uint32_t l = forMarshaling->ppEnabledLayerNames
1013 ? strlen(forMarshaling->ppEnabledLayerNames[i])
1014 : 0;
1015 memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t));
1016 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
1017 *ptr += sizeof(uint32_t);
1018 if (l) {
1019 memcpy(*ptr, (char*)(forMarshaling->ppEnabledLayerNames[i]), l);
1020 *ptr += l;
1021 }
1022 }
1023 }
1024 memcpy(*ptr, (uint32_t*)&forMarshaling->enabledExtensionCount, sizeof(uint32_t));
1025 *ptr += sizeof(uint32_t);
1026 {
1027 uint32_t c = 0;
1028 if (forMarshaling) {
1029 c = forMarshaling->enabledExtensionCount;
1030 }
1031 memcpy(*ptr, (uint32_t*)&c, sizeof(uint32_t));
1032 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
1033 *ptr += sizeof(uint32_t);
1034 for (uint32_t i = 0; i < c; ++i) {
1035 uint32_t l = forMarshaling->ppEnabledExtensionNames
1036 ? strlen(forMarshaling->ppEnabledExtensionNames[i])
1037 : 0;
1038 memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t));
1039 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
1040 *ptr += sizeof(uint32_t);
1041 if (l) {
1042 memcpy(*ptr, (char*)(forMarshaling->ppEnabledExtensionNames[i]), l);
1043 *ptr += l;
1044 }
1045 }
1046 }
1047 // WARNING PTR CHECK
1048 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pEnabledFeatures;
1049 memcpy((*ptr), &cgen_var_0, 8);
1050 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
1051 *ptr += 8;
1052 if (forMarshaling->pEnabledFeatures) {
1053 reservedmarshal_VkPhysicalDeviceFeatures(
1054 vkStream, rootType, (const VkPhysicalDeviceFeatures*)(forMarshaling->pEnabledFeatures),
1055 ptr);
1056 }
1057 }
1058
reservedmarshal_VkExtensionProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExtensionProperties * forMarshaling,uint8_t ** ptr)1059 void reservedmarshal_VkExtensionProperties(VulkanStreamGuest* vkStream, VkStructureType rootType,
1060 const VkExtensionProperties* forMarshaling,
1061 uint8_t** ptr) {
1062 (void)vkStream;
1063 (void)rootType;
1064 memcpy(*ptr, (char*)forMarshaling->extensionName, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char));
1065 *ptr += VK_MAX_EXTENSION_NAME_SIZE * sizeof(char);
1066 memcpy(*ptr, (uint32_t*)&forMarshaling->specVersion, sizeof(uint32_t));
1067 *ptr += sizeof(uint32_t);
1068 }
1069
reservedmarshal_VkLayerProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkLayerProperties * forMarshaling,uint8_t ** ptr)1070 void reservedmarshal_VkLayerProperties(VulkanStreamGuest* vkStream, VkStructureType rootType,
1071 const VkLayerProperties* forMarshaling, uint8_t** ptr) {
1072 (void)vkStream;
1073 (void)rootType;
1074 memcpy(*ptr, (char*)forMarshaling->layerName, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char));
1075 *ptr += VK_MAX_EXTENSION_NAME_SIZE * sizeof(char);
1076 memcpy(*ptr, (uint32_t*)&forMarshaling->specVersion, sizeof(uint32_t));
1077 *ptr += sizeof(uint32_t);
1078 memcpy(*ptr, (uint32_t*)&forMarshaling->implementationVersion, sizeof(uint32_t));
1079 *ptr += sizeof(uint32_t);
1080 memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
1081 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
1082 }
1083
reservedmarshal_VkSubmitInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubmitInfo * forMarshaling,uint8_t ** ptr)1084 void reservedmarshal_VkSubmitInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1085 const VkSubmitInfo* forMarshaling, uint8_t** ptr) {
1086 (void)vkStream;
1087 (void)rootType;
1088 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1089 *ptr += sizeof(VkStructureType);
1090 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1091 rootType = forMarshaling->sType;
1092 }
1093 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1094 memcpy(*ptr, (uint32_t*)&forMarshaling->waitSemaphoreCount, sizeof(uint32_t));
1095 *ptr += sizeof(uint32_t);
1096 if (forMarshaling->waitSemaphoreCount) {
1097 uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr);
1098 if (forMarshaling) {
1099 for (uint32_t k = 0; k < forMarshaling->waitSemaphoreCount; ++k) {
1100 uint64_t tmpval = get_host_u64_VkSemaphore(forMarshaling->pWaitSemaphores[k]);
1101 memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t));
1102 }
1103 }
1104 *ptr += 8 * forMarshaling->waitSemaphoreCount;
1105 }
1106 memcpy(*ptr, (const VkPipelineStageFlags*)forMarshaling->pWaitDstStageMask,
1107 forMarshaling->waitSemaphoreCount * sizeof(const VkPipelineStageFlags));
1108 *ptr += forMarshaling->waitSemaphoreCount * sizeof(const VkPipelineStageFlags);
1109 memcpy(*ptr, (uint32_t*)&forMarshaling->commandBufferCount, sizeof(uint32_t));
1110 *ptr += sizeof(uint32_t);
1111 if (forMarshaling->commandBufferCount) {
1112 uint8_t* cgen_var_1_ptr = (uint8_t*)(*ptr);
1113 if (forMarshaling) {
1114 for (uint32_t k = 0; k < forMarshaling->commandBufferCount; ++k) {
1115 uint64_t tmpval = get_host_u64_VkCommandBuffer(forMarshaling->pCommandBuffers[k]);
1116 memcpy(cgen_var_1_ptr + k * 8, &tmpval, sizeof(uint64_t));
1117 }
1118 }
1119 *ptr += 8 * forMarshaling->commandBufferCount;
1120 }
1121 memcpy(*ptr, (uint32_t*)&forMarshaling->signalSemaphoreCount, sizeof(uint32_t));
1122 *ptr += sizeof(uint32_t);
1123 if (forMarshaling->signalSemaphoreCount) {
1124 uint8_t* cgen_var_2_ptr = (uint8_t*)(*ptr);
1125 if (forMarshaling) {
1126 for (uint32_t k = 0; k < forMarshaling->signalSemaphoreCount; ++k) {
1127 uint64_t tmpval = get_host_u64_VkSemaphore(forMarshaling->pSignalSemaphores[k]);
1128 memcpy(cgen_var_2_ptr + k * 8, &tmpval, sizeof(uint64_t));
1129 }
1130 }
1131 *ptr += 8 * forMarshaling->signalSemaphoreCount;
1132 }
1133 }
1134
reservedmarshal_VkMappedMemoryRange(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMappedMemoryRange * forMarshaling,uint8_t ** ptr)1135 void reservedmarshal_VkMappedMemoryRange(VulkanStreamGuest* vkStream, VkStructureType rootType,
1136 const VkMappedMemoryRange* forMarshaling, uint8_t** ptr) {
1137 (void)vkStream;
1138 (void)rootType;
1139 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1140 *ptr += sizeof(VkStructureType);
1141 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1142 rootType = forMarshaling->sType;
1143 }
1144 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1145 uint64_t cgen_var_0;
1146 *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory));
1147 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
1148 *ptr += 1 * 8;
1149 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize));
1150 *ptr += sizeof(VkDeviceSize);
1151 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
1152 *ptr += sizeof(VkDeviceSize);
1153 }
1154
reservedmarshal_VkMemoryAllocateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryAllocateInfo * forMarshaling,uint8_t ** ptr)1155 void reservedmarshal_VkMemoryAllocateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1156 const VkMemoryAllocateInfo* forMarshaling,
1157 uint8_t** ptr) {
1158 (void)vkStream;
1159 (void)rootType;
1160 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1161 *ptr += sizeof(VkStructureType);
1162 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1163 rootType = forMarshaling->sType;
1164 }
1165 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1166 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->allocationSize, sizeof(VkDeviceSize));
1167 *ptr += sizeof(VkDeviceSize);
1168 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryTypeIndex, sizeof(uint32_t));
1169 *ptr += sizeof(uint32_t);
1170 }
1171
reservedmarshal_VkMemoryRequirements(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryRequirements * forMarshaling,uint8_t ** ptr)1172 void reservedmarshal_VkMemoryRequirements(VulkanStreamGuest* vkStream, VkStructureType rootType,
1173 const VkMemoryRequirements* forMarshaling,
1174 uint8_t** ptr) {
1175 (void)vkStream;
1176 (void)rootType;
1177 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
1178 *ptr += sizeof(VkDeviceSize);
1179 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->alignment, sizeof(VkDeviceSize));
1180 *ptr += sizeof(VkDeviceSize);
1181 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryTypeBits, sizeof(uint32_t));
1182 *ptr += sizeof(uint32_t);
1183 }
1184
reservedmarshal_VkSparseMemoryBind(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSparseMemoryBind * forMarshaling,uint8_t ** ptr)1185 void reservedmarshal_VkSparseMemoryBind(VulkanStreamGuest* vkStream, VkStructureType rootType,
1186 const VkSparseMemoryBind* forMarshaling, uint8_t** ptr) {
1187 (void)vkStream;
1188 (void)rootType;
1189 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->resourceOffset, sizeof(VkDeviceSize));
1190 *ptr += sizeof(VkDeviceSize);
1191 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
1192 *ptr += sizeof(VkDeviceSize);
1193 uint64_t cgen_var_0;
1194 *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory));
1195 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
1196 *ptr += 1 * 8;
1197 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->memoryOffset, sizeof(VkDeviceSize));
1198 *ptr += sizeof(VkDeviceSize);
1199 memcpy(*ptr, (VkSparseMemoryBindFlags*)&forMarshaling->flags, sizeof(VkSparseMemoryBindFlags));
1200 *ptr += sizeof(VkSparseMemoryBindFlags);
1201 }
1202
reservedmarshal_VkSparseBufferMemoryBindInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSparseBufferMemoryBindInfo * forMarshaling,uint8_t ** ptr)1203 void reservedmarshal_VkSparseBufferMemoryBindInfo(VulkanStreamGuest* vkStream,
1204 VkStructureType rootType,
1205 const VkSparseBufferMemoryBindInfo* forMarshaling,
1206 uint8_t** ptr) {
1207 (void)vkStream;
1208 (void)rootType;
1209 uint64_t cgen_var_0;
1210 *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer));
1211 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
1212 *ptr += 1 * 8;
1213 memcpy(*ptr, (uint32_t*)&forMarshaling->bindCount, sizeof(uint32_t));
1214 *ptr += sizeof(uint32_t);
1215 for (uint32_t i = 0; i < (uint32_t)forMarshaling->bindCount; ++i) {
1216 reservedmarshal_VkSparseMemoryBind(
1217 vkStream, rootType, (const VkSparseMemoryBind*)(forMarshaling->pBinds + i), ptr);
1218 }
1219 }
1220
reservedmarshal_VkSparseImageOpaqueMemoryBindInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSparseImageOpaqueMemoryBindInfo * forMarshaling,uint8_t ** ptr)1221 void reservedmarshal_VkSparseImageOpaqueMemoryBindInfo(
1222 VulkanStreamGuest* vkStream, VkStructureType rootType,
1223 const VkSparseImageOpaqueMemoryBindInfo* forMarshaling, uint8_t** ptr) {
1224 (void)vkStream;
1225 (void)rootType;
1226 uint64_t cgen_var_0;
1227 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image));
1228 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
1229 *ptr += 1 * 8;
1230 memcpy(*ptr, (uint32_t*)&forMarshaling->bindCount, sizeof(uint32_t));
1231 *ptr += sizeof(uint32_t);
1232 for (uint32_t i = 0; i < (uint32_t)forMarshaling->bindCount; ++i) {
1233 reservedmarshal_VkSparseMemoryBind(
1234 vkStream, rootType, (const VkSparseMemoryBind*)(forMarshaling->pBinds + i), ptr);
1235 }
1236 }
1237
reservedmarshal_VkImageSubresource(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageSubresource * forMarshaling,uint8_t ** ptr)1238 void reservedmarshal_VkImageSubresource(VulkanStreamGuest* vkStream, VkStructureType rootType,
1239 const VkImageSubresource* forMarshaling, uint8_t** ptr) {
1240 (void)vkStream;
1241 (void)rootType;
1242 memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags));
1243 *ptr += sizeof(VkImageAspectFlags);
1244 memcpy(*ptr, (uint32_t*)&forMarshaling->mipLevel, sizeof(uint32_t));
1245 *ptr += sizeof(uint32_t);
1246 memcpy(*ptr, (uint32_t*)&forMarshaling->arrayLayer, sizeof(uint32_t));
1247 *ptr += sizeof(uint32_t);
1248 }
1249
reservedmarshal_VkSparseImageMemoryBind(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSparseImageMemoryBind * forMarshaling,uint8_t ** ptr)1250 void reservedmarshal_VkSparseImageMemoryBind(VulkanStreamGuest* vkStream, VkStructureType rootType,
1251 const VkSparseImageMemoryBind* forMarshaling,
1252 uint8_t** ptr) {
1253 (void)vkStream;
1254 (void)rootType;
1255 reservedmarshal_VkImageSubresource(vkStream, rootType,
1256 (VkImageSubresource*)(&forMarshaling->subresource), ptr);
1257 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->offset), ptr);
1258 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->extent), ptr);
1259 uint64_t cgen_var_0;
1260 *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory));
1261 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
1262 *ptr += 1 * 8;
1263 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->memoryOffset, sizeof(VkDeviceSize));
1264 *ptr += sizeof(VkDeviceSize);
1265 memcpy(*ptr, (VkSparseMemoryBindFlags*)&forMarshaling->flags, sizeof(VkSparseMemoryBindFlags));
1266 *ptr += sizeof(VkSparseMemoryBindFlags);
1267 }
1268
reservedmarshal_VkSparseImageMemoryBindInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSparseImageMemoryBindInfo * forMarshaling,uint8_t ** ptr)1269 void reservedmarshal_VkSparseImageMemoryBindInfo(VulkanStreamGuest* vkStream,
1270 VkStructureType rootType,
1271 const VkSparseImageMemoryBindInfo* forMarshaling,
1272 uint8_t** ptr) {
1273 (void)vkStream;
1274 (void)rootType;
1275 uint64_t cgen_var_0;
1276 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image));
1277 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
1278 *ptr += 1 * 8;
1279 memcpy(*ptr, (uint32_t*)&forMarshaling->bindCount, sizeof(uint32_t));
1280 *ptr += sizeof(uint32_t);
1281 for (uint32_t i = 0; i < (uint32_t)forMarshaling->bindCount; ++i) {
1282 reservedmarshal_VkSparseImageMemoryBind(
1283 vkStream, rootType, (const VkSparseImageMemoryBind*)(forMarshaling->pBinds + i), ptr);
1284 }
1285 }
1286
reservedmarshal_VkBindSparseInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBindSparseInfo * forMarshaling,uint8_t ** ptr)1287 void reservedmarshal_VkBindSparseInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1288 const VkBindSparseInfo* forMarshaling, uint8_t** ptr) {
1289 (void)vkStream;
1290 (void)rootType;
1291 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1292 *ptr += sizeof(VkStructureType);
1293 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1294 rootType = forMarshaling->sType;
1295 }
1296 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1297 memcpy(*ptr, (uint32_t*)&forMarshaling->waitSemaphoreCount, sizeof(uint32_t));
1298 *ptr += sizeof(uint32_t);
1299 if (forMarshaling->waitSemaphoreCount) {
1300 uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr);
1301 if (forMarshaling) {
1302 for (uint32_t k = 0; k < forMarshaling->waitSemaphoreCount; ++k) {
1303 uint64_t tmpval = get_host_u64_VkSemaphore(forMarshaling->pWaitSemaphores[k]);
1304 memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t));
1305 }
1306 }
1307 *ptr += 8 * forMarshaling->waitSemaphoreCount;
1308 }
1309 memcpy(*ptr, (uint32_t*)&forMarshaling->bufferBindCount, sizeof(uint32_t));
1310 *ptr += sizeof(uint32_t);
1311 for (uint32_t i = 0; i < (uint32_t)forMarshaling->bufferBindCount; ++i) {
1312 reservedmarshal_VkSparseBufferMemoryBindInfo(
1313 vkStream, rootType,
1314 (const VkSparseBufferMemoryBindInfo*)(forMarshaling->pBufferBinds + i), ptr);
1315 }
1316 memcpy(*ptr, (uint32_t*)&forMarshaling->imageOpaqueBindCount, sizeof(uint32_t));
1317 *ptr += sizeof(uint32_t);
1318 for (uint32_t i = 0; i < (uint32_t)forMarshaling->imageOpaqueBindCount; ++i) {
1319 reservedmarshal_VkSparseImageOpaqueMemoryBindInfo(
1320 vkStream, rootType,
1321 (const VkSparseImageOpaqueMemoryBindInfo*)(forMarshaling->pImageOpaqueBinds + i), ptr);
1322 }
1323 memcpy(*ptr, (uint32_t*)&forMarshaling->imageBindCount, sizeof(uint32_t));
1324 *ptr += sizeof(uint32_t);
1325 for (uint32_t i = 0; i < (uint32_t)forMarshaling->imageBindCount; ++i) {
1326 reservedmarshal_VkSparseImageMemoryBindInfo(
1327 vkStream, rootType,
1328 (const VkSparseImageMemoryBindInfo*)(forMarshaling->pImageBinds + i), ptr);
1329 }
1330 memcpy(*ptr, (uint32_t*)&forMarshaling->signalSemaphoreCount, sizeof(uint32_t));
1331 *ptr += sizeof(uint32_t);
1332 if (forMarshaling->signalSemaphoreCount) {
1333 uint8_t* cgen_var_1_ptr = (uint8_t*)(*ptr);
1334 if (forMarshaling) {
1335 for (uint32_t k = 0; k < forMarshaling->signalSemaphoreCount; ++k) {
1336 uint64_t tmpval = get_host_u64_VkSemaphore(forMarshaling->pSignalSemaphores[k]);
1337 memcpy(cgen_var_1_ptr + k * 8, &tmpval, sizeof(uint64_t));
1338 }
1339 }
1340 *ptr += 8 * forMarshaling->signalSemaphoreCount;
1341 }
1342 }
1343
reservedmarshal_VkSparseImageFormatProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSparseImageFormatProperties * forMarshaling,uint8_t ** ptr)1344 void reservedmarshal_VkSparseImageFormatProperties(
1345 VulkanStreamGuest* vkStream, VkStructureType rootType,
1346 const VkSparseImageFormatProperties* forMarshaling, uint8_t** ptr) {
1347 (void)vkStream;
1348 (void)rootType;
1349 memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags));
1350 *ptr += sizeof(VkImageAspectFlags);
1351 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->imageGranularity),
1352 ptr);
1353 memcpy(*ptr, (VkSparseImageFormatFlags*)&forMarshaling->flags,
1354 sizeof(VkSparseImageFormatFlags));
1355 *ptr += sizeof(VkSparseImageFormatFlags);
1356 }
1357
reservedmarshal_VkSparseImageMemoryRequirements(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSparseImageMemoryRequirements * forMarshaling,uint8_t ** ptr)1358 void reservedmarshal_VkSparseImageMemoryRequirements(
1359 VulkanStreamGuest* vkStream, VkStructureType rootType,
1360 const VkSparseImageMemoryRequirements* forMarshaling, uint8_t** ptr) {
1361 (void)vkStream;
1362 (void)rootType;
1363 reservedmarshal_VkSparseImageFormatProperties(
1364 vkStream, rootType, (VkSparseImageFormatProperties*)(&forMarshaling->formatProperties),
1365 ptr);
1366 memcpy(*ptr, (uint32_t*)&forMarshaling->imageMipTailFirstLod, sizeof(uint32_t));
1367 *ptr += sizeof(uint32_t);
1368 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->imageMipTailSize, sizeof(VkDeviceSize));
1369 *ptr += sizeof(VkDeviceSize);
1370 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->imageMipTailOffset, sizeof(VkDeviceSize));
1371 *ptr += sizeof(VkDeviceSize);
1372 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->imageMipTailStride, sizeof(VkDeviceSize));
1373 *ptr += sizeof(VkDeviceSize);
1374 }
1375
reservedmarshal_VkFenceCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkFenceCreateInfo * forMarshaling,uint8_t ** ptr)1376 void reservedmarshal_VkFenceCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1377 const VkFenceCreateInfo* forMarshaling, uint8_t** ptr) {
1378 (void)vkStream;
1379 (void)rootType;
1380 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1381 *ptr += sizeof(VkStructureType);
1382 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1383 rootType = forMarshaling->sType;
1384 }
1385 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1386 memcpy(*ptr, (VkFenceCreateFlags*)&forMarshaling->flags, sizeof(VkFenceCreateFlags));
1387 *ptr += sizeof(VkFenceCreateFlags);
1388 }
1389
reservedmarshal_VkSemaphoreCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSemaphoreCreateInfo * forMarshaling,uint8_t ** ptr)1390 void reservedmarshal_VkSemaphoreCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1391 const VkSemaphoreCreateInfo* forMarshaling,
1392 uint8_t** ptr) {
1393 (void)vkStream;
1394 (void)rootType;
1395 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1396 *ptr += sizeof(VkStructureType);
1397 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1398 rootType = forMarshaling->sType;
1399 }
1400 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1401 memcpy(*ptr, (VkSemaphoreCreateFlags*)&forMarshaling->flags, sizeof(VkSemaphoreCreateFlags));
1402 *ptr += sizeof(VkSemaphoreCreateFlags);
1403 }
1404
reservedmarshal_VkEventCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkEventCreateInfo * forMarshaling,uint8_t ** ptr)1405 void reservedmarshal_VkEventCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1406 const VkEventCreateInfo* forMarshaling, uint8_t** ptr) {
1407 (void)vkStream;
1408 (void)rootType;
1409 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1410 *ptr += sizeof(VkStructureType);
1411 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1412 rootType = forMarshaling->sType;
1413 }
1414 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1415 memcpy(*ptr, (VkEventCreateFlags*)&forMarshaling->flags, sizeof(VkEventCreateFlags));
1416 *ptr += sizeof(VkEventCreateFlags);
1417 }
1418
reservedmarshal_VkQueryPoolCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkQueryPoolCreateInfo * forMarshaling,uint8_t ** ptr)1419 void reservedmarshal_VkQueryPoolCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1420 const VkQueryPoolCreateInfo* forMarshaling,
1421 uint8_t** ptr) {
1422 (void)vkStream;
1423 (void)rootType;
1424 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1425 *ptr += sizeof(VkStructureType);
1426 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1427 rootType = forMarshaling->sType;
1428 }
1429 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1430 memcpy(*ptr, (VkQueryPoolCreateFlags*)&forMarshaling->flags, sizeof(VkQueryPoolCreateFlags));
1431 *ptr += sizeof(VkQueryPoolCreateFlags);
1432 memcpy(*ptr, (VkQueryType*)&forMarshaling->queryType, sizeof(VkQueryType));
1433 *ptr += sizeof(VkQueryType);
1434 memcpy(*ptr, (uint32_t*)&forMarshaling->queryCount, sizeof(uint32_t));
1435 *ptr += sizeof(uint32_t);
1436 memcpy(*ptr, (VkQueryPipelineStatisticFlags*)&forMarshaling->pipelineStatistics,
1437 sizeof(VkQueryPipelineStatisticFlags));
1438 *ptr += sizeof(VkQueryPipelineStatisticFlags);
1439 }
1440
reservedmarshal_VkBufferCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferCreateInfo * forMarshaling,uint8_t ** ptr)1441 void reservedmarshal_VkBufferCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1442 const VkBufferCreateInfo* forMarshaling, uint8_t** ptr) {
1443 (void)vkStream;
1444 (void)rootType;
1445 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1446 *ptr += sizeof(VkStructureType);
1447 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1448 rootType = forMarshaling->sType;
1449 }
1450 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1451 memcpy(*ptr, (VkBufferCreateFlags*)&forMarshaling->flags, sizeof(VkBufferCreateFlags));
1452 *ptr += sizeof(VkBufferCreateFlags);
1453 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
1454 *ptr += sizeof(VkDeviceSize);
1455 memcpy(*ptr, (VkBufferUsageFlags*)&forMarshaling->usage, sizeof(VkBufferUsageFlags));
1456 *ptr += sizeof(VkBufferUsageFlags);
1457 memcpy(*ptr, (VkSharingMode*)&forMarshaling->sharingMode, sizeof(VkSharingMode));
1458 *ptr += sizeof(VkSharingMode);
1459 memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndexCount, sizeof(uint32_t));
1460 *ptr += sizeof(uint32_t);
1461 // WARNING PTR CHECK
1462 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pQueueFamilyIndices;
1463 memcpy((*ptr), &cgen_var_0, 8);
1464 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
1465 *ptr += 8;
1466 if (forMarshaling->pQueueFamilyIndices) {
1467 memcpy(*ptr, (const uint32_t*)forMarshaling->pQueueFamilyIndices,
1468 forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t));
1469 *ptr += forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t);
1470 }
1471 }
1472
reservedmarshal_VkBufferViewCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferViewCreateInfo * forMarshaling,uint8_t ** ptr)1473 void reservedmarshal_VkBufferViewCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1474 const VkBufferViewCreateInfo* forMarshaling,
1475 uint8_t** ptr) {
1476 (void)vkStream;
1477 (void)rootType;
1478 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1479 *ptr += sizeof(VkStructureType);
1480 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1481 rootType = forMarshaling->sType;
1482 }
1483 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1484 memcpy(*ptr, (VkBufferViewCreateFlags*)&forMarshaling->flags, sizeof(VkBufferViewCreateFlags));
1485 *ptr += sizeof(VkBufferViewCreateFlags);
1486 uint64_t cgen_var_0;
1487 *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer));
1488 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
1489 *ptr += 1 * 8;
1490 memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
1491 *ptr += sizeof(VkFormat);
1492 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize));
1493 *ptr += sizeof(VkDeviceSize);
1494 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->range, sizeof(VkDeviceSize));
1495 *ptr += sizeof(VkDeviceSize);
1496 }
1497
reservedmarshal_VkImageCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageCreateInfo * forMarshaling,uint8_t ** ptr)1498 void reservedmarshal_VkImageCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1499 const VkImageCreateInfo* forMarshaling, uint8_t** ptr) {
1500 (void)vkStream;
1501 (void)rootType;
1502 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1503 *ptr += sizeof(VkStructureType);
1504 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1505 rootType = forMarshaling->sType;
1506 }
1507 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1508 memcpy(*ptr, (VkImageCreateFlags*)&forMarshaling->flags, sizeof(VkImageCreateFlags));
1509 *ptr += sizeof(VkImageCreateFlags);
1510 memcpy(*ptr, (VkImageType*)&forMarshaling->imageType, sizeof(VkImageType));
1511 *ptr += sizeof(VkImageType);
1512 memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
1513 *ptr += sizeof(VkFormat);
1514 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->extent), ptr);
1515 memcpy(*ptr, (uint32_t*)&forMarshaling->mipLevels, sizeof(uint32_t));
1516 *ptr += sizeof(uint32_t);
1517 memcpy(*ptr, (uint32_t*)&forMarshaling->arrayLayers, sizeof(uint32_t));
1518 *ptr += sizeof(uint32_t);
1519 memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->samples, sizeof(VkSampleCountFlagBits));
1520 *ptr += sizeof(VkSampleCountFlagBits);
1521 memcpy(*ptr, (VkImageTiling*)&forMarshaling->tiling, sizeof(VkImageTiling));
1522 *ptr += sizeof(VkImageTiling);
1523 memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->usage, sizeof(VkImageUsageFlags));
1524 *ptr += sizeof(VkImageUsageFlags);
1525 memcpy(*ptr, (VkSharingMode*)&forMarshaling->sharingMode, sizeof(VkSharingMode));
1526 *ptr += sizeof(VkSharingMode);
1527 memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndexCount, sizeof(uint32_t));
1528 *ptr += sizeof(uint32_t);
1529 // WARNING PTR CHECK
1530 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pQueueFamilyIndices;
1531 memcpy((*ptr), &cgen_var_0, 8);
1532 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
1533 *ptr += 8;
1534 if (forMarshaling->pQueueFamilyIndices) {
1535 memcpy(*ptr, (const uint32_t*)forMarshaling->pQueueFamilyIndices,
1536 forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t));
1537 *ptr += forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t);
1538 }
1539 memcpy(*ptr, (VkImageLayout*)&forMarshaling->initialLayout, sizeof(VkImageLayout));
1540 *ptr += sizeof(VkImageLayout);
1541 }
1542
reservedmarshal_VkSubresourceLayout(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubresourceLayout * forMarshaling,uint8_t ** ptr)1543 void reservedmarshal_VkSubresourceLayout(VulkanStreamGuest* vkStream, VkStructureType rootType,
1544 const VkSubresourceLayout* forMarshaling, uint8_t** ptr) {
1545 (void)vkStream;
1546 (void)rootType;
1547 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize));
1548 *ptr += sizeof(VkDeviceSize);
1549 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
1550 *ptr += sizeof(VkDeviceSize);
1551 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->rowPitch, sizeof(VkDeviceSize));
1552 *ptr += sizeof(VkDeviceSize);
1553 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->arrayPitch, sizeof(VkDeviceSize));
1554 *ptr += sizeof(VkDeviceSize);
1555 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->depthPitch, sizeof(VkDeviceSize));
1556 *ptr += sizeof(VkDeviceSize);
1557 }
1558
reservedmarshal_VkComponentMapping(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkComponentMapping * forMarshaling,uint8_t ** ptr)1559 void reservedmarshal_VkComponentMapping(VulkanStreamGuest* vkStream, VkStructureType rootType,
1560 const VkComponentMapping* forMarshaling, uint8_t** ptr) {
1561 (void)vkStream;
1562 (void)rootType;
1563 memcpy(*ptr, (VkComponentSwizzle*)&forMarshaling->r, sizeof(VkComponentSwizzle));
1564 *ptr += sizeof(VkComponentSwizzle);
1565 memcpy(*ptr, (VkComponentSwizzle*)&forMarshaling->g, sizeof(VkComponentSwizzle));
1566 *ptr += sizeof(VkComponentSwizzle);
1567 memcpy(*ptr, (VkComponentSwizzle*)&forMarshaling->b, sizeof(VkComponentSwizzle));
1568 *ptr += sizeof(VkComponentSwizzle);
1569 memcpy(*ptr, (VkComponentSwizzle*)&forMarshaling->a, sizeof(VkComponentSwizzle));
1570 *ptr += sizeof(VkComponentSwizzle);
1571 }
1572
reservedmarshal_VkImageViewCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageViewCreateInfo * forMarshaling,uint8_t ** ptr)1573 void reservedmarshal_VkImageViewCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1574 const VkImageViewCreateInfo* forMarshaling,
1575 uint8_t** ptr) {
1576 (void)vkStream;
1577 (void)rootType;
1578 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1579 *ptr += sizeof(VkStructureType);
1580 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1581 rootType = forMarshaling->sType;
1582 }
1583 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1584 memcpy(*ptr, (VkImageViewCreateFlags*)&forMarshaling->flags, sizeof(VkImageViewCreateFlags));
1585 *ptr += sizeof(VkImageViewCreateFlags);
1586 uint64_t cgen_var_0;
1587 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image));
1588 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
1589 *ptr += 1 * 8;
1590 memcpy(*ptr, (VkImageViewType*)&forMarshaling->viewType, sizeof(VkImageViewType));
1591 *ptr += sizeof(VkImageViewType);
1592 memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
1593 *ptr += sizeof(VkFormat);
1594 reservedmarshal_VkComponentMapping(vkStream, rootType,
1595 (VkComponentMapping*)(&forMarshaling->components), ptr);
1596 reservedmarshal_VkImageSubresourceRange(
1597 vkStream, rootType, (VkImageSubresourceRange*)(&forMarshaling->subresourceRange), ptr);
1598 }
1599
reservedmarshal_VkShaderModuleCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkShaderModuleCreateInfo * forMarshaling,uint8_t ** ptr)1600 void reservedmarshal_VkShaderModuleCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1601 const VkShaderModuleCreateInfo* forMarshaling,
1602 uint8_t** ptr) {
1603 (void)vkStream;
1604 (void)rootType;
1605 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1606 *ptr += sizeof(VkStructureType);
1607 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1608 rootType = forMarshaling->sType;
1609 }
1610 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1611 memcpy(*ptr, (VkShaderModuleCreateFlags*)&forMarshaling->flags,
1612 sizeof(VkShaderModuleCreateFlags));
1613 *ptr += sizeof(VkShaderModuleCreateFlags);
1614 uint64_t cgen_var_0 = (uint64_t)forMarshaling->codeSize;
1615 memcpy((*ptr), &cgen_var_0, 8);
1616 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
1617 *ptr += 8;
1618 memcpy(*ptr, (const uint32_t*)forMarshaling->pCode,
1619 (forMarshaling->codeSize / 4) * sizeof(const uint32_t));
1620 *ptr += (forMarshaling->codeSize / 4) * sizeof(const uint32_t);
1621 }
1622
reservedmarshal_VkPipelineCacheCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineCacheCreateInfo * forMarshaling,uint8_t ** ptr)1623 void reservedmarshal_VkPipelineCacheCreateInfo(VulkanStreamGuest* vkStream,
1624 VkStructureType rootType,
1625 const VkPipelineCacheCreateInfo* forMarshaling,
1626 uint8_t** ptr) {
1627 (void)vkStream;
1628 (void)rootType;
1629 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1630 *ptr += sizeof(VkStructureType);
1631 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1632 rootType = forMarshaling->sType;
1633 }
1634 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1635 memcpy(*ptr, (VkPipelineCacheCreateFlags*)&forMarshaling->flags,
1636 sizeof(VkPipelineCacheCreateFlags));
1637 *ptr += sizeof(VkPipelineCacheCreateFlags);
1638 uint64_t cgen_var_0 = (uint64_t)forMarshaling->initialDataSize;
1639 memcpy((*ptr), &cgen_var_0, 8);
1640 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
1641 *ptr += 8;
1642 memcpy(*ptr, (const void*)forMarshaling->pInitialData,
1643 forMarshaling->initialDataSize * sizeof(const uint8_t));
1644 *ptr += forMarshaling->initialDataSize * sizeof(const uint8_t);
1645 }
1646
reservedmarshal_VkSpecializationMapEntry(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSpecializationMapEntry * forMarshaling,uint8_t ** ptr)1647 void reservedmarshal_VkSpecializationMapEntry(VulkanStreamGuest* vkStream, VkStructureType rootType,
1648 const VkSpecializationMapEntry* forMarshaling,
1649 uint8_t** ptr) {
1650 (void)vkStream;
1651 (void)rootType;
1652 memcpy(*ptr, (uint32_t*)&forMarshaling->constantID, sizeof(uint32_t));
1653 *ptr += sizeof(uint32_t);
1654 memcpy(*ptr, (uint32_t*)&forMarshaling->offset, sizeof(uint32_t));
1655 *ptr += sizeof(uint32_t);
1656 uint64_t cgen_var_0 = (uint64_t)forMarshaling->size;
1657 memcpy((*ptr), &cgen_var_0, 8);
1658 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
1659 *ptr += 8;
1660 }
1661
reservedmarshal_VkSpecializationInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSpecializationInfo * forMarshaling,uint8_t ** ptr)1662 void reservedmarshal_VkSpecializationInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
1663 const VkSpecializationInfo* forMarshaling,
1664 uint8_t** ptr) {
1665 (void)vkStream;
1666 (void)rootType;
1667 memcpy(*ptr, (uint32_t*)&forMarshaling->mapEntryCount, sizeof(uint32_t));
1668 *ptr += sizeof(uint32_t);
1669 for (uint32_t i = 0; i < (uint32_t)forMarshaling->mapEntryCount; ++i) {
1670 reservedmarshal_VkSpecializationMapEntry(
1671 vkStream, rootType, (const VkSpecializationMapEntry*)(forMarshaling->pMapEntries + i),
1672 ptr);
1673 }
1674 uint64_t cgen_var_0 = (uint64_t)forMarshaling->dataSize;
1675 memcpy((*ptr), &cgen_var_0, 8);
1676 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
1677 *ptr += 8;
1678 memcpy(*ptr, (const void*)forMarshaling->pData,
1679 forMarshaling->dataSize * sizeof(const uint8_t));
1680 *ptr += forMarshaling->dataSize * sizeof(const uint8_t);
1681 }
1682
reservedmarshal_VkPipelineShaderStageCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineShaderStageCreateInfo * forMarshaling,uint8_t ** ptr)1683 void reservedmarshal_VkPipelineShaderStageCreateInfo(
1684 VulkanStreamGuest* vkStream, VkStructureType rootType,
1685 const VkPipelineShaderStageCreateInfo* forMarshaling, uint8_t** ptr) {
1686 (void)vkStream;
1687 (void)rootType;
1688 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1689 *ptr += sizeof(VkStructureType);
1690 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1691 rootType = forMarshaling->sType;
1692 }
1693 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1694 memcpy(*ptr, (VkPipelineShaderStageCreateFlags*)&forMarshaling->flags,
1695 sizeof(VkPipelineShaderStageCreateFlags));
1696 *ptr += sizeof(VkPipelineShaderStageCreateFlags);
1697 memcpy(*ptr, (VkShaderStageFlagBits*)&forMarshaling->stage, sizeof(VkShaderStageFlagBits));
1698 *ptr += sizeof(VkShaderStageFlagBits);
1699 uint64_t cgen_var_0;
1700 *&cgen_var_0 = get_host_u64_VkShaderModule((*&forMarshaling->module));
1701 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
1702 *ptr += 1 * 8;
1703 {
1704 uint32_t l = forMarshaling->pName ? strlen(forMarshaling->pName) : 0;
1705 memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t));
1706 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
1707 *ptr += sizeof(uint32_t);
1708 memcpy(*ptr, (char*)forMarshaling->pName, l);
1709 *ptr += l;
1710 }
1711 // WARNING PTR CHECK
1712 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pSpecializationInfo;
1713 memcpy((*ptr), &cgen_var_1, 8);
1714 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
1715 *ptr += 8;
1716 if (forMarshaling->pSpecializationInfo) {
1717 reservedmarshal_VkSpecializationInfo(
1718 vkStream, rootType, (const VkSpecializationInfo*)(forMarshaling->pSpecializationInfo),
1719 ptr);
1720 }
1721 }
1722
reservedmarshal_VkComputePipelineCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkComputePipelineCreateInfo * forMarshaling,uint8_t ** ptr)1723 void reservedmarshal_VkComputePipelineCreateInfo(VulkanStreamGuest* vkStream,
1724 VkStructureType rootType,
1725 const VkComputePipelineCreateInfo* forMarshaling,
1726 uint8_t** ptr) {
1727 (void)vkStream;
1728 (void)rootType;
1729 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1730 *ptr += sizeof(VkStructureType);
1731 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1732 rootType = forMarshaling->sType;
1733 }
1734 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1735 memcpy(*ptr, (VkPipelineCreateFlags*)&forMarshaling->flags, sizeof(VkPipelineCreateFlags));
1736 *ptr += sizeof(VkPipelineCreateFlags);
1737 reservedmarshal_VkPipelineShaderStageCreateInfo(
1738 vkStream, rootType, (VkPipelineShaderStageCreateInfo*)(&forMarshaling->stage), ptr);
1739 uint64_t cgen_var_0;
1740 *&cgen_var_0 = get_host_u64_VkPipelineLayout((*&forMarshaling->layout));
1741 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
1742 *ptr += 1 * 8;
1743 uint64_t cgen_var_1;
1744 *&cgen_var_1 = get_host_u64_VkPipeline((*&forMarshaling->basePipelineHandle));
1745 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
1746 *ptr += 1 * 8;
1747 memcpy(*ptr, (int32_t*)&forMarshaling->basePipelineIndex, sizeof(int32_t));
1748 *ptr += sizeof(int32_t);
1749 }
1750
reservedmarshal_VkVertexInputBindingDescription(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkVertexInputBindingDescription * forMarshaling,uint8_t ** ptr)1751 void reservedmarshal_VkVertexInputBindingDescription(
1752 VulkanStreamGuest* vkStream, VkStructureType rootType,
1753 const VkVertexInputBindingDescription* forMarshaling, uint8_t** ptr) {
1754 (void)vkStream;
1755 (void)rootType;
1756 memcpy(*ptr, (uint32_t*)&forMarshaling->binding, sizeof(uint32_t));
1757 *ptr += sizeof(uint32_t);
1758 memcpy(*ptr, (uint32_t*)&forMarshaling->stride, sizeof(uint32_t));
1759 *ptr += sizeof(uint32_t);
1760 memcpy(*ptr, (VkVertexInputRate*)&forMarshaling->inputRate, sizeof(VkVertexInputRate));
1761 *ptr += sizeof(VkVertexInputRate);
1762 }
1763
reservedmarshal_VkVertexInputAttributeDescription(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkVertexInputAttributeDescription * forMarshaling,uint8_t ** ptr)1764 void reservedmarshal_VkVertexInputAttributeDescription(
1765 VulkanStreamGuest* vkStream, VkStructureType rootType,
1766 const VkVertexInputAttributeDescription* forMarshaling, uint8_t** ptr) {
1767 (void)vkStream;
1768 (void)rootType;
1769 memcpy(*ptr, (uint32_t*)&forMarshaling->location, sizeof(uint32_t));
1770 *ptr += sizeof(uint32_t);
1771 memcpy(*ptr, (uint32_t*)&forMarshaling->binding, sizeof(uint32_t));
1772 *ptr += sizeof(uint32_t);
1773 memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
1774 *ptr += sizeof(VkFormat);
1775 memcpy(*ptr, (uint32_t*)&forMarshaling->offset, sizeof(uint32_t));
1776 *ptr += sizeof(uint32_t);
1777 }
1778
reservedmarshal_VkPipelineVertexInputStateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineVertexInputStateCreateInfo * forMarshaling,uint8_t ** ptr)1779 void reservedmarshal_VkPipelineVertexInputStateCreateInfo(
1780 VulkanStreamGuest* vkStream, VkStructureType rootType,
1781 const VkPipelineVertexInputStateCreateInfo* forMarshaling, uint8_t** ptr) {
1782 (void)vkStream;
1783 (void)rootType;
1784 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1785 *ptr += sizeof(VkStructureType);
1786 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1787 rootType = forMarshaling->sType;
1788 }
1789 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1790 memcpy(*ptr, (VkPipelineVertexInputStateCreateFlags*)&forMarshaling->flags,
1791 sizeof(VkPipelineVertexInputStateCreateFlags));
1792 *ptr += sizeof(VkPipelineVertexInputStateCreateFlags);
1793 memcpy(*ptr, (uint32_t*)&forMarshaling->vertexBindingDescriptionCount, sizeof(uint32_t));
1794 *ptr += sizeof(uint32_t);
1795 for (uint32_t i = 0; i < (uint32_t)forMarshaling->vertexBindingDescriptionCount; ++i) {
1796 reservedmarshal_VkVertexInputBindingDescription(
1797 vkStream, rootType,
1798 (const VkVertexInputBindingDescription*)(forMarshaling->pVertexBindingDescriptions + i),
1799 ptr);
1800 }
1801 memcpy(*ptr, (uint32_t*)&forMarshaling->vertexAttributeDescriptionCount, sizeof(uint32_t));
1802 *ptr += sizeof(uint32_t);
1803 for (uint32_t i = 0; i < (uint32_t)forMarshaling->vertexAttributeDescriptionCount; ++i) {
1804 reservedmarshal_VkVertexInputAttributeDescription(
1805 vkStream, rootType,
1806 (const VkVertexInputAttributeDescription*)(forMarshaling->pVertexAttributeDescriptions +
1807 i),
1808 ptr);
1809 }
1810 }
1811
reservedmarshal_VkPipelineInputAssemblyStateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineInputAssemblyStateCreateInfo * forMarshaling,uint8_t ** ptr)1812 void reservedmarshal_VkPipelineInputAssemblyStateCreateInfo(
1813 VulkanStreamGuest* vkStream, VkStructureType rootType,
1814 const VkPipelineInputAssemblyStateCreateInfo* forMarshaling, uint8_t** ptr) {
1815 (void)vkStream;
1816 (void)rootType;
1817 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1818 *ptr += sizeof(VkStructureType);
1819 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1820 rootType = forMarshaling->sType;
1821 }
1822 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1823 memcpy(*ptr, (VkPipelineInputAssemblyStateCreateFlags*)&forMarshaling->flags,
1824 sizeof(VkPipelineInputAssemblyStateCreateFlags));
1825 *ptr += sizeof(VkPipelineInputAssemblyStateCreateFlags);
1826 memcpy(*ptr, (VkPrimitiveTopology*)&forMarshaling->topology, sizeof(VkPrimitiveTopology));
1827 *ptr += sizeof(VkPrimitiveTopology);
1828 memcpy(*ptr, (VkBool32*)&forMarshaling->primitiveRestartEnable, sizeof(VkBool32));
1829 *ptr += sizeof(VkBool32);
1830 }
1831
reservedmarshal_VkPipelineTessellationStateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineTessellationStateCreateInfo * forMarshaling,uint8_t ** ptr)1832 void reservedmarshal_VkPipelineTessellationStateCreateInfo(
1833 VulkanStreamGuest* vkStream, VkStructureType rootType,
1834 const VkPipelineTessellationStateCreateInfo* forMarshaling, uint8_t** ptr) {
1835 (void)vkStream;
1836 (void)rootType;
1837 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1838 *ptr += sizeof(VkStructureType);
1839 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1840 rootType = forMarshaling->sType;
1841 }
1842 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1843 memcpy(*ptr, (VkPipelineTessellationStateCreateFlags*)&forMarshaling->flags,
1844 sizeof(VkPipelineTessellationStateCreateFlags));
1845 *ptr += sizeof(VkPipelineTessellationStateCreateFlags);
1846 memcpy(*ptr, (uint32_t*)&forMarshaling->patchControlPoints, sizeof(uint32_t));
1847 *ptr += sizeof(uint32_t);
1848 }
1849
reservedmarshal_VkViewport(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkViewport * forMarshaling,uint8_t ** ptr)1850 void reservedmarshal_VkViewport(VulkanStreamGuest* vkStream, VkStructureType rootType,
1851 const VkViewport* forMarshaling, uint8_t** ptr) {
1852 (void)vkStream;
1853 (void)rootType;
1854 memcpy(*ptr, (float*)&forMarshaling->x, sizeof(float));
1855 *ptr += sizeof(float);
1856 memcpy(*ptr, (float*)&forMarshaling->y, sizeof(float));
1857 *ptr += sizeof(float);
1858 memcpy(*ptr, (float*)&forMarshaling->width, sizeof(float));
1859 *ptr += sizeof(float);
1860 memcpy(*ptr, (float*)&forMarshaling->height, sizeof(float));
1861 *ptr += sizeof(float);
1862 memcpy(*ptr, (float*)&forMarshaling->minDepth, sizeof(float));
1863 *ptr += sizeof(float);
1864 memcpy(*ptr, (float*)&forMarshaling->maxDepth, sizeof(float));
1865 *ptr += sizeof(float);
1866 }
1867
reservedmarshal_VkPipelineViewportStateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineViewportStateCreateInfo * forMarshaling,uint8_t ** ptr)1868 void reservedmarshal_VkPipelineViewportStateCreateInfo(
1869 VulkanStreamGuest* vkStream, VkStructureType rootType,
1870 const VkPipelineViewportStateCreateInfo* forMarshaling, uint8_t** ptr) {
1871 (void)vkStream;
1872 (void)rootType;
1873 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1874 *ptr += sizeof(VkStructureType);
1875 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1876 rootType = forMarshaling->sType;
1877 }
1878 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1879 memcpy(*ptr, (VkPipelineViewportStateCreateFlags*)&forMarshaling->flags,
1880 sizeof(VkPipelineViewportStateCreateFlags));
1881 *ptr += sizeof(VkPipelineViewportStateCreateFlags);
1882 memcpy(*ptr, (uint32_t*)&forMarshaling->viewportCount, sizeof(uint32_t));
1883 *ptr += sizeof(uint32_t);
1884 // WARNING PTR CHECK
1885 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pViewports;
1886 memcpy((*ptr), &cgen_var_0, 8);
1887 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
1888 *ptr += 8;
1889 if (forMarshaling->pViewports) {
1890 for (uint32_t i = 0; i < (uint32_t)forMarshaling->viewportCount; ++i) {
1891 reservedmarshal_VkViewport(vkStream, rootType,
1892 (const VkViewport*)(forMarshaling->pViewports + i), ptr);
1893 }
1894 }
1895 memcpy(*ptr, (uint32_t*)&forMarshaling->scissorCount, sizeof(uint32_t));
1896 *ptr += sizeof(uint32_t);
1897 // WARNING PTR CHECK
1898 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pScissors;
1899 memcpy((*ptr), &cgen_var_1, 8);
1900 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
1901 *ptr += 8;
1902 if (forMarshaling->pScissors) {
1903 for (uint32_t i = 0; i < (uint32_t)forMarshaling->scissorCount; ++i) {
1904 reservedmarshal_VkRect2D(vkStream, rootType,
1905 (const VkRect2D*)(forMarshaling->pScissors + i), ptr);
1906 }
1907 }
1908 }
1909
reservedmarshal_VkPipelineRasterizationStateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineRasterizationStateCreateInfo * forMarshaling,uint8_t ** ptr)1910 void reservedmarshal_VkPipelineRasterizationStateCreateInfo(
1911 VulkanStreamGuest* vkStream, VkStructureType rootType,
1912 const VkPipelineRasterizationStateCreateInfo* forMarshaling, uint8_t** ptr) {
1913 (void)vkStream;
1914 (void)rootType;
1915 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1916 *ptr += sizeof(VkStructureType);
1917 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1918 rootType = forMarshaling->sType;
1919 }
1920 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1921 memcpy(*ptr, (VkPipelineRasterizationStateCreateFlags*)&forMarshaling->flags,
1922 sizeof(VkPipelineRasterizationStateCreateFlags));
1923 *ptr += sizeof(VkPipelineRasterizationStateCreateFlags);
1924 memcpy(*ptr, (VkBool32*)&forMarshaling->depthClampEnable, sizeof(VkBool32));
1925 *ptr += sizeof(VkBool32);
1926 memcpy(*ptr, (VkBool32*)&forMarshaling->rasterizerDiscardEnable, sizeof(VkBool32));
1927 *ptr += sizeof(VkBool32);
1928 memcpy(*ptr, (VkPolygonMode*)&forMarshaling->polygonMode, sizeof(VkPolygonMode));
1929 *ptr += sizeof(VkPolygonMode);
1930 memcpy(*ptr, (VkCullModeFlags*)&forMarshaling->cullMode, sizeof(VkCullModeFlags));
1931 *ptr += sizeof(VkCullModeFlags);
1932 memcpy(*ptr, (VkFrontFace*)&forMarshaling->frontFace, sizeof(VkFrontFace));
1933 *ptr += sizeof(VkFrontFace);
1934 memcpy(*ptr, (VkBool32*)&forMarshaling->depthBiasEnable, sizeof(VkBool32));
1935 *ptr += sizeof(VkBool32);
1936 memcpy(*ptr, (float*)&forMarshaling->depthBiasConstantFactor, sizeof(float));
1937 *ptr += sizeof(float);
1938 memcpy(*ptr, (float*)&forMarshaling->depthBiasClamp, sizeof(float));
1939 *ptr += sizeof(float);
1940 memcpy(*ptr, (float*)&forMarshaling->depthBiasSlopeFactor, sizeof(float));
1941 *ptr += sizeof(float);
1942 memcpy(*ptr, (float*)&forMarshaling->lineWidth, sizeof(float));
1943 *ptr += sizeof(float);
1944 }
1945
reservedmarshal_VkPipelineMultisampleStateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineMultisampleStateCreateInfo * forMarshaling,uint8_t ** ptr)1946 void reservedmarshal_VkPipelineMultisampleStateCreateInfo(
1947 VulkanStreamGuest* vkStream, VkStructureType rootType,
1948 const VkPipelineMultisampleStateCreateInfo* forMarshaling, uint8_t** ptr) {
1949 (void)vkStream;
1950 (void)rootType;
1951 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
1952 *ptr += sizeof(VkStructureType);
1953 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
1954 rootType = forMarshaling->sType;
1955 }
1956 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
1957 memcpy(*ptr, (VkPipelineMultisampleStateCreateFlags*)&forMarshaling->flags,
1958 sizeof(VkPipelineMultisampleStateCreateFlags));
1959 *ptr += sizeof(VkPipelineMultisampleStateCreateFlags);
1960 memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->rasterizationSamples,
1961 sizeof(VkSampleCountFlagBits));
1962 *ptr += sizeof(VkSampleCountFlagBits);
1963 memcpy(*ptr, (VkBool32*)&forMarshaling->sampleShadingEnable, sizeof(VkBool32));
1964 *ptr += sizeof(VkBool32);
1965 memcpy(*ptr, (float*)&forMarshaling->minSampleShading, sizeof(float));
1966 *ptr += sizeof(float);
1967 // WARNING PTR CHECK
1968 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pSampleMask;
1969 memcpy((*ptr), &cgen_var_0, 8);
1970 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
1971 *ptr += 8;
1972 if (forMarshaling->pSampleMask) {
1973 memcpy(*ptr, (const VkSampleMask*)forMarshaling->pSampleMask,
1974 (((forMarshaling->rasterizationSamples) + 31) / 32) * sizeof(const VkSampleMask));
1975 *ptr += (((forMarshaling->rasterizationSamples) + 31) / 32) * sizeof(const VkSampleMask);
1976 }
1977 memcpy(*ptr, (VkBool32*)&forMarshaling->alphaToCoverageEnable, sizeof(VkBool32));
1978 *ptr += sizeof(VkBool32);
1979 memcpy(*ptr, (VkBool32*)&forMarshaling->alphaToOneEnable, sizeof(VkBool32));
1980 *ptr += sizeof(VkBool32);
1981 }
1982
reservedmarshal_VkStencilOpState(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkStencilOpState * forMarshaling,uint8_t ** ptr)1983 void reservedmarshal_VkStencilOpState(VulkanStreamGuest* vkStream, VkStructureType rootType,
1984 const VkStencilOpState* forMarshaling, uint8_t** ptr) {
1985 (void)vkStream;
1986 (void)rootType;
1987 memcpy(*ptr, (VkStencilOp*)&forMarshaling->failOp, sizeof(VkStencilOp));
1988 *ptr += sizeof(VkStencilOp);
1989 memcpy(*ptr, (VkStencilOp*)&forMarshaling->passOp, sizeof(VkStencilOp));
1990 *ptr += sizeof(VkStencilOp);
1991 memcpy(*ptr, (VkStencilOp*)&forMarshaling->depthFailOp, sizeof(VkStencilOp));
1992 *ptr += sizeof(VkStencilOp);
1993 memcpy(*ptr, (VkCompareOp*)&forMarshaling->compareOp, sizeof(VkCompareOp));
1994 *ptr += sizeof(VkCompareOp);
1995 memcpy(*ptr, (uint32_t*)&forMarshaling->compareMask, sizeof(uint32_t));
1996 *ptr += sizeof(uint32_t);
1997 memcpy(*ptr, (uint32_t*)&forMarshaling->writeMask, sizeof(uint32_t));
1998 *ptr += sizeof(uint32_t);
1999 memcpy(*ptr, (uint32_t*)&forMarshaling->reference, sizeof(uint32_t));
2000 *ptr += sizeof(uint32_t);
2001 }
2002
reservedmarshal_VkPipelineDepthStencilStateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineDepthStencilStateCreateInfo * forMarshaling,uint8_t ** ptr)2003 void reservedmarshal_VkPipelineDepthStencilStateCreateInfo(
2004 VulkanStreamGuest* vkStream, VkStructureType rootType,
2005 const VkPipelineDepthStencilStateCreateInfo* forMarshaling, uint8_t** ptr) {
2006 (void)vkStream;
2007 (void)rootType;
2008 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2009 *ptr += sizeof(VkStructureType);
2010 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2011 rootType = forMarshaling->sType;
2012 }
2013 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2014 memcpy(*ptr, (VkPipelineDepthStencilStateCreateFlags*)&forMarshaling->flags,
2015 sizeof(VkPipelineDepthStencilStateCreateFlags));
2016 *ptr += sizeof(VkPipelineDepthStencilStateCreateFlags);
2017 memcpy(*ptr, (VkBool32*)&forMarshaling->depthTestEnable, sizeof(VkBool32));
2018 *ptr += sizeof(VkBool32);
2019 memcpy(*ptr, (VkBool32*)&forMarshaling->depthWriteEnable, sizeof(VkBool32));
2020 *ptr += sizeof(VkBool32);
2021 memcpy(*ptr, (VkCompareOp*)&forMarshaling->depthCompareOp, sizeof(VkCompareOp));
2022 *ptr += sizeof(VkCompareOp);
2023 memcpy(*ptr, (VkBool32*)&forMarshaling->depthBoundsTestEnable, sizeof(VkBool32));
2024 *ptr += sizeof(VkBool32);
2025 memcpy(*ptr, (VkBool32*)&forMarshaling->stencilTestEnable, sizeof(VkBool32));
2026 *ptr += sizeof(VkBool32);
2027 reservedmarshal_VkStencilOpState(vkStream, rootType, (VkStencilOpState*)(&forMarshaling->front),
2028 ptr);
2029 reservedmarshal_VkStencilOpState(vkStream, rootType, (VkStencilOpState*)(&forMarshaling->back),
2030 ptr);
2031 memcpy(*ptr, (float*)&forMarshaling->minDepthBounds, sizeof(float));
2032 *ptr += sizeof(float);
2033 memcpy(*ptr, (float*)&forMarshaling->maxDepthBounds, sizeof(float));
2034 *ptr += sizeof(float);
2035 }
2036
reservedmarshal_VkPipelineColorBlendAttachmentState(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineColorBlendAttachmentState * forMarshaling,uint8_t ** ptr)2037 void reservedmarshal_VkPipelineColorBlendAttachmentState(
2038 VulkanStreamGuest* vkStream, VkStructureType rootType,
2039 const VkPipelineColorBlendAttachmentState* forMarshaling, uint8_t** ptr) {
2040 (void)vkStream;
2041 (void)rootType;
2042 memcpy(*ptr, (VkBool32*)&forMarshaling->blendEnable, sizeof(VkBool32));
2043 *ptr += sizeof(VkBool32);
2044 memcpy(*ptr, (VkBlendFactor*)&forMarshaling->srcColorBlendFactor, sizeof(VkBlendFactor));
2045 *ptr += sizeof(VkBlendFactor);
2046 memcpy(*ptr, (VkBlendFactor*)&forMarshaling->dstColorBlendFactor, sizeof(VkBlendFactor));
2047 *ptr += sizeof(VkBlendFactor);
2048 memcpy(*ptr, (VkBlendOp*)&forMarshaling->colorBlendOp, sizeof(VkBlendOp));
2049 *ptr += sizeof(VkBlendOp);
2050 memcpy(*ptr, (VkBlendFactor*)&forMarshaling->srcAlphaBlendFactor, sizeof(VkBlendFactor));
2051 *ptr += sizeof(VkBlendFactor);
2052 memcpy(*ptr, (VkBlendFactor*)&forMarshaling->dstAlphaBlendFactor, sizeof(VkBlendFactor));
2053 *ptr += sizeof(VkBlendFactor);
2054 memcpy(*ptr, (VkBlendOp*)&forMarshaling->alphaBlendOp, sizeof(VkBlendOp));
2055 *ptr += sizeof(VkBlendOp);
2056 memcpy(*ptr, (VkColorComponentFlags*)&forMarshaling->colorWriteMask,
2057 sizeof(VkColorComponentFlags));
2058 *ptr += sizeof(VkColorComponentFlags);
2059 }
2060
reservedmarshal_VkPipelineColorBlendStateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineColorBlendStateCreateInfo * forMarshaling,uint8_t ** ptr)2061 void reservedmarshal_VkPipelineColorBlendStateCreateInfo(
2062 VulkanStreamGuest* vkStream, VkStructureType rootType,
2063 const VkPipelineColorBlendStateCreateInfo* forMarshaling, uint8_t** ptr) {
2064 (void)vkStream;
2065 (void)rootType;
2066 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2067 *ptr += sizeof(VkStructureType);
2068 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2069 rootType = forMarshaling->sType;
2070 }
2071 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2072 memcpy(*ptr, (VkPipelineColorBlendStateCreateFlags*)&forMarshaling->flags,
2073 sizeof(VkPipelineColorBlendStateCreateFlags));
2074 *ptr += sizeof(VkPipelineColorBlendStateCreateFlags);
2075 memcpy(*ptr, (VkBool32*)&forMarshaling->logicOpEnable, sizeof(VkBool32));
2076 *ptr += sizeof(VkBool32);
2077 memcpy(*ptr, (VkLogicOp*)&forMarshaling->logicOp, sizeof(VkLogicOp));
2078 *ptr += sizeof(VkLogicOp);
2079 memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t));
2080 *ptr += sizeof(uint32_t);
2081 for (uint32_t i = 0; i < (uint32_t)forMarshaling->attachmentCount; ++i) {
2082 reservedmarshal_VkPipelineColorBlendAttachmentState(
2083 vkStream, rootType,
2084 (const VkPipelineColorBlendAttachmentState*)(forMarshaling->pAttachments + i), ptr);
2085 }
2086 memcpy(*ptr, (float*)forMarshaling->blendConstants, 4 * sizeof(float));
2087 *ptr += 4 * sizeof(float);
2088 }
2089
reservedmarshal_VkPipelineDynamicStateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineDynamicStateCreateInfo * forMarshaling,uint8_t ** ptr)2090 void reservedmarshal_VkPipelineDynamicStateCreateInfo(
2091 VulkanStreamGuest* vkStream, VkStructureType rootType,
2092 const VkPipelineDynamicStateCreateInfo* forMarshaling, uint8_t** ptr) {
2093 (void)vkStream;
2094 (void)rootType;
2095 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2096 *ptr += sizeof(VkStructureType);
2097 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2098 rootType = forMarshaling->sType;
2099 }
2100 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2101 memcpy(*ptr, (VkPipelineDynamicStateCreateFlags*)&forMarshaling->flags,
2102 sizeof(VkPipelineDynamicStateCreateFlags));
2103 *ptr += sizeof(VkPipelineDynamicStateCreateFlags);
2104 memcpy(*ptr, (uint32_t*)&forMarshaling->dynamicStateCount, sizeof(uint32_t));
2105 *ptr += sizeof(uint32_t);
2106 memcpy(*ptr, (const VkDynamicState*)forMarshaling->pDynamicStates,
2107 forMarshaling->dynamicStateCount * sizeof(const VkDynamicState));
2108 *ptr += forMarshaling->dynamicStateCount * sizeof(const VkDynamicState);
2109 }
2110
reservedmarshal_VkGraphicsPipelineCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkGraphicsPipelineCreateInfo * forMarshaling,uint8_t ** ptr)2111 void reservedmarshal_VkGraphicsPipelineCreateInfo(VulkanStreamGuest* vkStream,
2112 VkStructureType rootType,
2113 const VkGraphicsPipelineCreateInfo* forMarshaling,
2114 uint8_t** ptr) {
2115 (void)vkStream;
2116 (void)rootType;
2117 uint32_t hasRasterization = 1;
2118 if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) {
2119 hasRasterization =
2120 ((((0 == forMarshaling->pRasterizationState))
2121 ? (0)
2122 : (!((*(forMarshaling->pRasterizationState)).rasterizerDiscardEnable))) ||
2123 (((0 == forMarshaling->pDynamicState))
2124 ? (0)
2125 : (arrayany((*(forMarshaling->pDynamicState)).pDynamicStates, 0,
2126 (*(forMarshaling->pDynamicState)).dynamicStateCount,
2127 [](VkDynamicState s) {
2128 return (s == VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE);
2129 }))));
2130 uint32_t cgen_var_0 = (uint32_t)hasRasterization;
2131 memcpy((*ptr), &cgen_var_0, 4);
2132 gfxstream::aemu::Stream::toBe32((uint8_t*)(*ptr));
2133 *ptr += 4;
2134 }
2135 uint32_t hasTessellation = 1;
2136 if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) {
2137 hasTessellation =
2138 arrayany(forMarshaling->pStages, 0, forMarshaling->stageCount,
2139 [](VkPipelineShaderStageCreateInfo s) {
2140 return ((s.stage == VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT) ||
2141 (s.stage == VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT));
2142 });
2143 uint32_t cgen_var_0 = (uint32_t)hasTessellation;
2144 memcpy((*ptr), &cgen_var_0, 4);
2145 gfxstream::aemu::Stream::toBe32((uint8_t*)(*ptr));
2146 *ptr += 4;
2147 }
2148 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2149 *ptr += sizeof(VkStructureType);
2150 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2151 rootType = forMarshaling->sType;
2152 }
2153 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2154 memcpy(*ptr, (VkPipelineCreateFlags*)&forMarshaling->flags, sizeof(VkPipelineCreateFlags));
2155 *ptr += sizeof(VkPipelineCreateFlags);
2156 memcpy(*ptr, (uint32_t*)&forMarshaling->stageCount, sizeof(uint32_t));
2157 *ptr += sizeof(uint32_t);
2158 for (uint32_t i = 0; i < (uint32_t)forMarshaling->stageCount; ++i) {
2159 reservedmarshal_VkPipelineShaderStageCreateInfo(
2160 vkStream, rootType,
2161 (const VkPipelineShaderStageCreateInfo*)(forMarshaling->pStages + i), ptr);
2162 }
2163 // WARNING PTR CHECK
2164 if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) {
2165 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pVertexInputState;
2166 memcpy((*ptr), &cgen_var_0, 8);
2167 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2168 *ptr += 8;
2169 }
2170 if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) ||
2171 forMarshaling->pVertexInputState)) {
2172 reservedmarshal_VkPipelineVertexInputStateCreateInfo(
2173 vkStream, rootType,
2174 (const VkPipelineVertexInputStateCreateInfo*)(forMarshaling->pVertexInputState), ptr);
2175 }
2176 // WARNING PTR CHECK
2177 if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) {
2178 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pInputAssemblyState;
2179 memcpy((*ptr), &cgen_var_0, 8);
2180 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2181 *ptr += 8;
2182 }
2183 if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) ||
2184 forMarshaling->pInputAssemblyState)) {
2185 reservedmarshal_VkPipelineInputAssemblyStateCreateInfo(
2186 vkStream, rootType,
2187 (const VkPipelineInputAssemblyStateCreateInfo*)(forMarshaling->pInputAssemblyState),
2188 ptr);
2189 }
2190 // WARNING PTR CHECK
2191 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pTessellationState;
2192 memcpy((*ptr), &cgen_var_0, 8);
2193 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2194 *ptr += 8;
2195 if (forMarshaling->pTessellationState) {
2196 if (hasTessellation) {
2197 reservedmarshal_VkPipelineTessellationStateCreateInfo(
2198 vkStream, rootType,
2199 (const VkPipelineTessellationStateCreateInfo*)(forMarshaling->pTessellationState),
2200 ptr);
2201 }
2202 }
2203 // WARNING PTR CHECK
2204 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pViewportState;
2205 memcpy((*ptr), &cgen_var_1, 8);
2206 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2207 *ptr += 8;
2208 if (forMarshaling->pViewportState) {
2209 if (hasRasterization) {
2210 reservedmarshal_VkPipelineViewportStateCreateInfo(
2211 vkStream, rootType,
2212 (const VkPipelineViewportStateCreateInfo*)(forMarshaling->pViewportState), ptr);
2213 }
2214 }
2215 // WARNING PTR CHECK
2216 if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) {
2217 uint64_t cgen_var_1_0 = (uint64_t)(uintptr_t)forMarshaling->pRasterizationState;
2218 memcpy((*ptr), &cgen_var_1_0, 8);
2219 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2220 *ptr += 8;
2221 }
2222 if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) ||
2223 forMarshaling->pRasterizationState)) {
2224 reservedmarshal_VkPipelineRasterizationStateCreateInfo(
2225 vkStream, rootType,
2226 (const VkPipelineRasterizationStateCreateInfo*)(forMarshaling->pRasterizationState),
2227 ptr);
2228 }
2229 // WARNING PTR CHECK
2230 uint64_t cgen_var_2 = (uint64_t)(uintptr_t)forMarshaling->pMultisampleState;
2231 memcpy((*ptr), &cgen_var_2, 8);
2232 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2233 *ptr += 8;
2234 if (forMarshaling->pMultisampleState) {
2235 if (hasRasterization) {
2236 reservedmarshal_VkPipelineMultisampleStateCreateInfo(
2237 vkStream, rootType,
2238 (const VkPipelineMultisampleStateCreateInfo*)(forMarshaling->pMultisampleState),
2239 ptr);
2240 }
2241 }
2242 // WARNING PTR CHECK
2243 uint64_t cgen_var_3 = (uint64_t)(uintptr_t)forMarshaling->pDepthStencilState;
2244 memcpy((*ptr), &cgen_var_3, 8);
2245 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2246 *ptr += 8;
2247 if (forMarshaling->pDepthStencilState) {
2248 if (hasRasterization) {
2249 reservedmarshal_VkPipelineDepthStencilStateCreateInfo(
2250 vkStream, rootType,
2251 (const VkPipelineDepthStencilStateCreateInfo*)(forMarshaling->pDepthStencilState),
2252 ptr);
2253 }
2254 }
2255 // WARNING PTR CHECK
2256 uint64_t cgen_var_4 = (uint64_t)(uintptr_t)forMarshaling->pColorBlendState;
2257 memcpy((*ptr), &cgen_var_4, 8);
2258 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2259 *ptr += 8;
2260 if (forMarshaling->pColorBlendState) {
2261 if (hasRasterization) {
2262 reservedmarshal_VkPipelineColorBlendStateCreateInfo(
2263 vkStream, rootType,
2264 (const VkPipelineColorBlendStateCreateInfo*)(forMarshaling->pColorBlendState), ptr);
2265 }
2266 }
2267 // WARNING PTR CHECK
2268 uint64_t cgen_var_5 = (uint64_t)(uintptr_t)forMarshaling->pDynamicState;
2269 memcpy((*ptr), &cgen_var_5, 8);
2270 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2271 *ptr += 8;
2272 if (forMarshaling->pDynamicState) {
2273 reservedmarshal_VkPipelineDynamicStateCreateInfo(
2274 vkStream, rootType,
2275 (const VkPipelineDynamicStateCreateInfo*)(forMarshaling->pDynamicState), ptr);
2276 }
2277 uint64_t cgen_var_6;
2278 *&cgen_var_6 = get_host_u64_VkPipelineLayout((*&forMarshaling->layout));
2279 memcpy(*ptr, (uint64_t*)&cgen_var_6, 1 * 8);
2280 *ptr += 1 * 8;
2281 uint64_t cgen_var_7;
2282 *&cgen_var_7 = get_host_u64_VkRenderPass((*&forMarshaling->renderPass));
2283 memcpy(*ptr, (uint64_t*)&cgen_var_7, 1 * 8);
2284 *ptr += 1 * 8;
2285 memcpy(*ptr, (uint32_t*)&forMarshaling->subpass, sizeof(uint32_t));
2286 *ptr += sizeof(uint32_t);
2287 uint64_t cgen_var_8;
2288 *&cgen_var_8 = get_host_u64_VkPipeline((*&forMarshaling->basePipelineHandle));
2289 memcpy(*ptr, (uint64_t*)&cgen_var_8, 1 * 8);
2290 *ptr += 1 * 8;
2291 memcpy(*ptr, (int32_t*)&forMarshaling->basePipelineIndex, sizeof(int32_t));
2292 *ptr += sizeof(int32_t);
2293 }
2294
reservedmarshal_VkPushConstantRange(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPushConstantRange * forMarshaling,uint8_t ** ptr)2295 void reservedmarshal_VkPushConstantRange(VulkanStreamGuest* vkStream, VkStructureType rootType,
2296 const VkPushConstantRange* forMarshaling, uint8_t** ptr) {
2297 (void)vkStream;
2298 (void)rootType;
2299 memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->stageFlags, sizeof(VkShaderStageFlags));
2300 *ptr += sizeof(VkShaderStageFlags);
2301 memcpy(*ptr, (uint32_t*)&forMarshaling->offset, sizeof(uint32_t));
2302 *ptr += sizeof(uint32_t);
2303 memcpy(*ptr, (uint32_t*)&forMarshaling->size, sizeof(uint32_t));
2304 *ptr += sizeof(uint32_t);
2305 }
2306
reservedmarshal_VkPipelineLayoutCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineLayoutCreateInfo * forMarshaling,uint8_t ** ptr)2307 void reservedmarshal_VkPipelineLayoutCreateInfo(VulkanStreamGuest* vkStream,
2308 VkStructureType rootType,
2309 const VkPipelineLayoutCreateInfo* forMarshaling,
2310 uint8_t** ptr) {
2311 (void)vkStream;
2312 (void)rootType;
2313 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2314 *ptr += sizeof(VkStructureType);
2315 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2316 rootType = forMarshaling->sType;
2317 }
2318 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2319 memcpy(*ptr, (VkPipelineLayoutCreateFlags*)&forMarshaling->flags,
2320 sizeof(VkPipelineLayoutCreateFlags));
2321 *ptr += sizeof(VkPipelineLayoutCreateFlags);
2322 memcpy(*ptr, (uint32_t*)&forMarshaling->setLayoutCount, sizeof(uint32_t));
2323 *ptr += sizeof(uint32_t);
2324 if (forMarshaling->setLayoutCount) {
2325 uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr);
2326 if (forMarshaling) {
2327 for (uint32_t k = 0; k < forMarshaling->setLayoutCount; ++k) {
2328 uint64_t tmpval = get_host_u64_VkDescriptorSetLayout(forMarshaling->pSetLayouts[k]);
2329 memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t));
2330 }
2331 }
2332 *ptr += 8 * forMarshaling->setLayoutCount;
2333 }
2334 memcpy(*ptr, (uint32_t*)&forMarshaling->pushConstantRangeCount, sizeof(uint32_t));
2335 *ptr += sizeof(uint32_t);
2336 for (uint32_t i = 0; i < (uint32_t)forMarshaling->pushConstantRangeCount; ++i) {
2337 reservedmarshal_VkPushConstantRange(
2338 vkStream, rootType,
2339 (const VkPushConstantRange*)(forMarshaling->pPushConstantRanges + i), ptr);
2340 }
2341 }
2342
reservedmarshal_VkSamplerCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSamplerCreateInfo * forMarshaling,uint8_t ** ptr)2343 void reservedmarshal_VkSamplerCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
2344 const VkSamplerCreateInfo* forMarshaling, uint8_t** ptr) {
2345 (void)vkStream;
2346 (void)rootType;
2347 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2348 *ptr += sizeof(VkStructureType);
2349 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2350 rootType = forMarshaling->sType;
2351 }
2352 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2353 memcpy(*ptr, (VkSamplerCreateFlags*)&forMarshaling->flags, sizeof(VkSamplerCreateFlags));
2354 *ptr += sizeof(VkSamplerCreateFlags);
2355 memcpy(*ptr, (VkFilter*)&forMarshaling->magFilter, sizeof(VkFilter));
2356 *ptr += sizeof(VkFilter);
2357 memcpy(*ptr, (VkFilter*)&forMarshaling->minFilter, sizeof(VkFilter));
2358 *ptr += sizeof(VkFilter);
2359 memcpy(*ptr, (VkSamplerMipmapMode*)&forMarshaling->mipmapMode, sizeof(VkSamplerMipmapMode));
2360 *ptr += sizeof(VkSamplerMipmapMode);
2361 memcpy(*ptr, (VkSamplerAddressMode*)&forMarshaling->addressModeU, sizeof(VkSamplerAddressMode));
2362 *ptr += sizeof(VkSamplerAddressMode);
2363 memcpy(*ptr, (VkSamplerAddressMode*)&forMarshaling->addressModeV, sizeof(VkSamplerAddressMode));
2364 *ptr += sizeof(VkSamplerAddressMode);
2365 memcpy(*ptr, (VkSamplerAddressMode*)&forMarshaling->addressModeW, sizeof(VkSamplerAddressMode));
2366 *ptr += sizeof(VkSamplerAddressMode);
2367 memcpy(*ptr, (float*)&forMarshaling->mipLodBias, sizeof(float));
2368 *ptr += sizeof(float);
2369 memcpy(*ptr, (VkBool32*)&forMarshaling->anisotropyEnable, sizeof(VkBool32));
2370 *ptr += sizeof(VkBool32);
2371 memcpy(*ptr, (float*)&forMarshaling->maxAnisotropy, sizeof(float));
2372 *ptr += sizeof(float);
2373 memcpy(*ptr, (VkBool32*)&forMarshaling->compareEnable, sizeof(VkBool32));
2374 *ptr += sizeof(VkBool32);
2375 memcpy(*ptr, (VkCompareOp*)&forMarshaling->compareOp, sizeof(VkCompareOp));
2376 *ptr += sizeof(VkCompareOp);
2377 memcpy(*ptr, (float*)&forMarshaling->minLod, sizeof(float));
2378 *ptr += sizeof(float);
2379 memcpy(*ptr, (float*)&forMarshaling->maxLod, sizeof(float));
2380 *ptr += sizeof(float);
2381 memcpy(*ptr, (VkBorderColor*)&forMarshaling->borderColor, sizeof(VkBorderColor));
2382 *ptr += sizeof(VkBorderColor);
2383 memcpy(*ptr, (VkBool32*)&forMarshaling->unnormalizedCoordinates, sizeof(VkBool32));
2384 *ptr += sizeof(VkBool32);
2385 }
2386
reservedmarshal_VkCopyDescriptorSet(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCopyDescriptorSet * forMarshaling,uint8_t ** ptr)2387 void reservedmarshal_VkCopyDescriptorSet(VulkanStreamGuest* vkStream, VkStructureType rootType,
2388 const VkCopyDescriptorSet* forMarshaling, uint8_t** ptr) {
2389 (void)vkStream;
2390 (void)rootType;
2391 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2392 *ptr += sizeof(VkStructureType);
2393 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2394 rootType = forMarshaling->sType;
2395 }
2396 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2397 uint64_t cgen_var_0;
2398 *&cgen_var_0 = get_host_u64_VkDescriptorSet((*&forMarshaling->srcSet));
2399 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
2400 *ptr += 1 * 8;
2401 memcpy(*ptr, (uint32_t*)&forMarshaling->srcBinding, sizeof(uint32_t));
2402 *ptr += sizeof(uint32_t);
2403 memcpy(*ptr, (uint32_t*)&forMarshaling->srcArrayElement, sizeof(uint32_t));
2404 *ptr += sizeof(uint32_t);
2405 uint64_t cgen_var_1;
2406 *&cgen_var_1 = get_host_u64_VkDescriptorSet((*&forMarshaling->dstSet));
2407 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
2408 *ptr += 1 * 8;
2409 memcpy(*ptr, (uint32_t*)&forMarshaling->dstBinding, sizeof(uint32_t));
2410 *ptr += sizeof(uint32_t);
2411 memcpy(*ptr, (uint32_t*)&forMarshaling->dstArrayElement, sizeof(uint32_t));
2412 *ptr += sizeof(uint32_t);
2413 memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorCount, sizeof(uint32_t));
2414 *ptr += sizeof(uint32_t);
2415 }
2416
reservedmarshal_VkDescriptorBufferInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorBufferInfo * forMarshaling,uint8_t ** ptr)2417 void reservedmarshal_VkDescriptorBufferInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
2418 const VkDescriptorBufferInfo* forMarshaling,
2419 uint8_t** ptr) {
2420 (void)vkStream;
2421 (void)rootType;
2422 uint64_t cgen_var_0;
2423 *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer));
2424 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
2425 *ptr += 1 * 8;
2426 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize));
2427 *ptr += sizeof(VkDeviceSize);
2428 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->range, sizeof(VkDeviceSize));
2429 *ptr += sizeof(VkDeviceSize);
2430 }
2431
reservedmarshal_VkDescriptorImageInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorImageInfo * forMarshaling,uint8_t ** ptr)2432 void reservedmarshal_VkDescriptorImageInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
2433 const VkDescriptorImageInfo* forMarshaling,
2434 uint8_t** ptr) {
2435 (void)vkStream;
2436 (void)rootType;
2437 uint64_t cgen_var_0;
2438 *&cgen_var_0 = get_host_u64_VkSampler((*&forMarshaling->sampler));
2439 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
2440 *ptr += 1 * 8;
2441 uint64_t cgen_var_1;
2442 *&cgen_var_1 = get_host_u64_VkImageView((*&forMarshaling->imageView));
2443 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
2444 *ptr += 1 * 8;
2445 memcpy(*ptr, (VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout));
2446 *ptr += sizeof(VkImageLayout);
2447 }
2448
reservedmarshal_VkDescriptorPoolSize(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorPoolSize * forMarshaling,uint8_t ** ptr)2449 void reservedmarshal_VkDescriptorPoolSize(VulkanStreamGuest* vkStream, VkStructureType rootType,
2450 const VkDescriptorPoolSize* forMarshaling,
2451 uint8_t** ptr) {
2452 (void)vkStream;
2453 (void)rootType;
2454 memcpy(*ptr, (VkDescriptorType*)&forMarshaling->type, sizeof(VkDescriptorType));
2455 *ptr += sizeof(VkDescriptorType);
2456 memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorCount, sizeof(uint32_t));
2457 *ptr += sizeof(uint32_t);
2458 }
2459
reservedmarshal_VkDescriptorPoolCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorPoolCreateInfo * forMarshaling,uint8_t ** ptr)2460 void reservedmarshal_VkDescriptorPoolCreateInfo(VulkanStreamGuest* vkStream,
2461 VkStructureType rootType,
2462 const VkDescriptorPoolCreateInfo* forMarshaling,
2463 uint8_t** ptr) {
2464 (void)vkStream;
2465 (void)rootType;
2466 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2467 *ptr += sizeof(VkStructureType);
2468 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2469 rootType = forMarshaling->sType;
2470 }
2471 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2472 memcpy(*ptr, (VkDescriptorPoolCreateFlags*)&forMarshaling->flags,
2473 sizeof(VkDescriptorPoolCreateFlags));
2474 *ptr += sizeof(VkDescriptorPoolCreateFlags);
2475 memcpy(*ptr, (uint32_t*)&forMarshaling->maxSets, sizeof(uint32_t));
2476 *ptr += sizeof(uint32_t);
2477 memcpy(*ptr, (uint32_t*)&forMarshaling->poolSizeCount, sizeof(uint32_t));
2478 *ptr += sizeof(uint32_t);
2479 for (uint32_t i = 0; i < (uint32_t)forMarshaling->poolSizeCount; ++i) {
2480 reservedmarshal_VkDescriptorPoolSize(
2481 vkStream, rootType, (const VkDescriptorPoolSize*)(forMarshaling->pPoolSizes + i), ptr);
2482 }
2483 }
2484
reservedmarshal_VkDescriptorSetAllocateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorSetAllocateInfo * forMarshaling,uint8_t ** ptr)2485 void reservedmarshal_VkDescriptorSetAllocateInfo(VulkanStreamGuest* vkStream,
2486 VkStructureType rootType,
2487 const VkDescriptorSetAllocateInfo* forMarshaling,
2488 uint8_t** ptr) {
2489 (void)vkStream;
2490 (void)rootType;
2491 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2492 *ptr += sizeof(VkStructureType);
2493 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2494 rootType = forMarshaling->sType;
2495 }
2496 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2497 uint64_t cgen_var_0;
2498 *&cgen_var_0 = get_host_u64_VkDescriptorPool((*&forMarshaling->descriptorPool));
2499 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
2500 *ptr += 1 * 8;
2501 memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorSetCount, sizeof(uint32_t));
2502 *ptr += sizeof(uint32_t);
2503 if (forMarshaling->descriptorSetCount) {
2504 uint8_t* cgen_var_1_ptr = (uint8_t*)(*ptr);
2505 if (forMarshaling) {
2506 for (uint32_t k = 0; k < forMarshaling->descriptorSetCount; ++k) {
2507 uint64_t tmpval = get_host_u64_VkDescriptorSetLayout(forMarshaling->pSetLayouts[k]);
2508 memcpy(cgen_var_1_ptr + k * 8, &tmpval, sizeof(uint64_t));
2509 }
2510 }
2511 *ptr += 8 * forMarshaling->descriptorSetCount;
2512 }
2513 }
2514
reservedmarshal_VkDescriptorSetLayoutBinding(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorSetLayoutBinding * forMarshaling,uint8_t ** ptr)2515 void reservedmarshal_VkDescriptorSetLayoutBinding(VulkanStreamGuest* vkStream,
2516 VkStructureType rootType,
2517 const VkDescriptorSetLayoutBinding* forMarshaling,
2518 uint8_t** ptr) {
2519 (void)vkStream;
2520 (void)rootType;
2521 memcpy(*ptr, (uint32_t*)&forMarshaling->binding, sizeof(uint32_t));
2522 *ptr += sizeof(uint32_t);
2523 memcpy(*ptr, (VkDescriptorType*)&forMarshaling->descriptorType, sizeof(VkDescriptorType));
2524 *ptr += sizeof(VkDescriptorType);
2525 memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorCount, sizeof(uint32_t));
2526 *ptr += sizeof(uint32_t);
2527 memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->stageFlags, sizeof(VkShaderStageFlags));
2528 *ptr += sizeof(VkShaderStageFlags);
2529 // WARNING PTR CHECK
2530 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pImmutableSamplers;
2531 memcpy((*ptr), &cgen_var_0, 8);
2532 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2533 *ptr += 8;
2534 if (forMarshaling->pImmutableSamplers) {
2535 if (forMarshaling->descriptorCount) {
2536 uint8_t* cgen_var_0_0_ptr = (uint8_t*)(*ptr);
2537 if (forMarshaling) {
2538 for (uint32_t k = 0; k < forMarshaling->descriptorCount; ++k) {
2539 uint64_t tmpval = get_host_u64_VkSampler(forMarshaling->pImmutableSamplers[k]);
2540 memcpy(cgen_var_0_0_ptr + k * 8, &tmpval, sizeof(uint64_t));
2541 }
2542 }
2543 *ptr += 8 * forMarshaling->descriptorCount;
2544 }
2545 }
2546 }
2547
reservedmarshal_VkDescriptorSetLayoutCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorSetLayoutCreateInfo * forMarshaling,uint8_t ** ptr)2548 void reservedmarshal_VkDescriptorSetLayoutCreateInfo(
2549 VulkanStreamGuest* vkStream, VkStructureType rootType,
2550 const VkDescriptorSetLayoutCreateInfo* forMarshaling, uint8_t** ptr) {
2551 (void)vkStream;
2552 (void)rootType;
2553 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2554 *ptr += sizeof(VkStructureType);
2555 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2556 rootType = forMarshaling->sType;
2557 }
2558 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2559 memcpy(*ptr, (VkDescriptorSetLayoutCreateFlags*)&forMarshaling->flags,
2560 sizeof(VkDescriptorSetLayoutCreateFlags));
2561 *ptr += sizeof(VkDescriptorSetLayoutCreateFlags);
2562 memcpy(*ptr, (uint32_t*)&forMarshaling->bindingCount, sizeof(uint32_t));
2563 *ptr += sizeof(uint32_t);
2564 for (uint32_t i = 0; i < (uint32_t)forMarshaling->bindingCount; ++i) {
2565 reservedmarshal_VkDescriptorSetLayoutBinding(
2566 vkStream, rootType, (const VkDescriptorSetLayoutBinding*)(forMarshaling->pBindings + i),
2567 ptr);
2568 }
2569 }
2570
reservedmarshal_VkWriteDescriptorSet(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkWriteDescriptorSet * forMarshaling,uint8_t ** ptr)2571 void reservedmarshal_VkWriteDescriptorSet(VulkanStreamGuest* vkStream, VkStructureType rootType,
2572 const VkWriteDescriptorSet* forMarshaling,
2573 uint8_t** ptr) {
2574 (void)vkStream;
2575 (void)rootType;
2576 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2577 *ptr += sizeof(VkStructureType);
2578 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2579 rootType = forMarshaling->sType;
2580 }
2581 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2582 uint64_t cgen_var_0;
2583 *&cgen_var_0 = get_host_u64_VkDescriptorSet((*&forMarshaling->dstSet));
2584 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
2585 *ptr += 1 * 8;
2586 memcpy(*ptr, (uint32_t*)&forMarshaling->dstBinding, sizeof(uint32_t));
2587 *ptr += sizeof(uint32_t);
2588 memcpy(*ptr, (uint32_t*)&forMarshaling->dstArrayElement, sizeof(uint32_t));
2589 *ptr += sizeof(uint32_t);
2590 memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorCount, sizeof(uint32_t));
2591 *ptr += sizeof(uint32_t);
2592 memcpy(*ptr, (VkDescriptorType*)&forMarshaling->descriptorType, sizeof(VkDescriptorType));
2593 *ptr += sizeof(VkDescriptorType);
2594 // WARNING PTR CHECK
2595 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pImageInfo;
2596 memcpy((*ptr), &cgen_var_1, 8);
2597 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2598 *ptr += 8;
2599 if (forMarshaling->pImageInfo) {
2600 if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) ||
2601 ((VK_DESCRIPTOR_TYPE_SAMPLER == forMarshaling->descriptorType) ||
2602 (VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER == forMarshaling->descriptorType) ||
2603 (VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE == forMarshaling->descriptorType) ||
2604 (VK_DESCRIPTOR_TYPE_STORAGE_IMAGE == forMarshaling->descriptorType) ||
2605 (VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT == forMarshaling->descriptorType)))) {
2606 for (uint32_t i = 0; i < (uint32_t)forMarshaling->descriptorCount; ++i) {
2607 reservedmarshal_VkDescriptorImageInfo(
2608 vkStream, rootType,
2609 (const VkDescriptorImageInfo*)(forMarshaling->pImageInfo + i), ptr);
2610 }
2611 }
2612 }
2613 // WARNING PTR CHECK
2614 uint64_t cgen_var_2 = (uint64_t)(uintptr_t)forMarshaling->pBufferInfo;
2615 memcpy((*ptr), &cgen_var_2, 8);
2616 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2617 *ptr += 8;
2618 if (forMarshaling->pBufferInfo) {
2619 if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) ||
2620 ((VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER == forMarshaling->descriptorType) ||
2621 (VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC == forMarshaling->descriptorType) ||
2622 (VK_DESCRIPTOR_TYPE_STORAGE_BUFFER == forMarshaling->descriptorType) ||
2623 (VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC == forMarshaling->descriptorType)))) {
2624 for (uint32_t i = 0; i < (uint32_t)forMarshaling->descriptorCount; ++i) {
2625 reservedmarshal_VkDescriptorBufferInfo(
2626 vkStream, rootType,
2627 (const VkDescriptorBufferInfo*)(forMarshaling->pBufferInfo + i), ptr);
2628 }
2629 }
2630 }
2631 // WARNING PTR CHECK
2632 uint64_t cgen_var_3 = (uint64_t)(uintptr_t)forMarshaling->pTexelBufferView;
2633 memcpy((*ptr), &cgen_var_3, 8);
2634 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2635 *ptr += 8;
2636 if (forMarshaling->pTexelBufferView) {
2637 if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) ||
2638 ((VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER == forMarshaling->descriptorType) ||
2639 (VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER == forMarshaling->descriptorType)))) {
2640 if (forMarshaling->descriptorCount) {
2641 uint8_t* cgen_var_3_0_ptr = (uint8_t*)(*ptr);
2642 if (forMarshaling) {
2643 for (uint32_t k = 0; k < forMarshaling->descriptorCount; ++k) {
2644 uint64_t tmpval =
2645 get_host_u64_VkBufferView(forMarshaling->pTexelBufferView[k]);
2646 memcpy(cgen_var_3_0_ptr + k * 8, &tmpval, sizeof(uint64_t));
2647 }
2648 }
2649 *ptr += 8 * forMarshaling->descriptorCount;
2650 }
2651 }
2652 }
2653 }
2654
reservedmarshal_VkAttachmentDescription(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkAttachmentDescription * forMarshaling,uint8_t ** ptr)2655 void reservedmarshal_VkAttachmentDescription(VulkanStreamGuest* vkStream, VkStructureType rootType,
2656 const VkAttachmentDescription* forMarshaling,
2657 uint8_t** ptr) {
2658 (void)vkStream;
2659 (void)rootType;
2660 memcpy(*ptr, (VkAttachmentDescriptionFlags*)&forMarshaling->flags,
2661 sizeof(VkAttachmentDescriptionFlags));
2662 *ptr += sizeof(VkAttachmentDescriptionFlags);
2663 memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
2664 *ptr += sizeof(VkFormat);
2665 memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->samples, sizeof(VkSampleCountFlagBits));
2666 *ptr += sizeof(VkSampleCountFlagBits);
2667 memcpy(*ptr, (VkAttachmentLoadOp*)&forMarshaling->loadOp, sizeof(VkAttachmentLoadOp));
2668 *ptr += sizeof(VkAttachmentLoadOp);
2669 memcpy(*ptr, (VkAttachmentStoreOp*)&forMarshaling->storeOp, sizeof(VkAttachmentStoreOp));
2670 *ptr += sizeof(VkAttachmentStoreOp);
2671 memcpy(*ptr, (VkAttachmentLoadOp*)&forMarshaling->stencilLoadOp, sizeof(VkAttachmentLoadOp));
2672 *ptr += sizeof(VkAttachmentLoadOp);
2673 memcpy(*ptr, (VkAttachmentStoreOp*)&forMarshaling->stencilStoreOp, sizeof(VkAttachmentStoreOp));
2674 *ptr += sizeof(VkAttachmentStoreOp);
2675 memcpy(*ptr, (VkImageLayout*)&forMarshaling->initialLayout, sizeof(VkImageLayout));
2676 *ptr += sizeof(VkImageLayout);
2677 memcpy(*ptr, (VkImageLayout*)&forMarshaling->finalLayout, sizeof(VkImageLayout));
2678 *ptr += sizeof(VkImageLayout);
2679 }
2680
reservedmarshal_VkAttachmentReference(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkAttachmentReference * forMarshaling,uint8_t ** ptr)2681 void reservedmarshal_VkAttachmentReference(VulkanStreamGuest* vkStream, VkStructureType rootType,
2682 const VkAttachmentReference* forMarshaling,
2683 uint8_t** ptr) {
2684 (void)vkStream;
2685 (void)rootType;
2686 memcpy(*ptr, (uint32_t*)&forMarshaling->attachment, sizeof(uint32_t));
2687 *ptr += sizeof(uint32_t);
2688 memcpy(*ptr, (VkImageLayout*)&forMarshaling->layout, sizeof(VkImageLayout));
2689 *ptr += sizeof(VkImageLayout);
2690 }
2691
reservedmarshal_VkFramebufferCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkFramebufferCreateInfo * forMarshaling,uint8_t ** ptr)2692 void reservedmarshal_VkFramebufferCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
2693 const VkFramebufferCreateInfo* forMarshaling,
2694 uint8_t** ptr) {
2695 (void)vkStream;
2696 (void)rootType;
2697 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2698 *ptr += sizeof(VkStructureType);
2699 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2700 rootType = forMarshaling->sType;
2701 }
2702 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2703 memcpy(*ptr, (VkFramebufferCreateFlags*)&forMarshaling->flags,
2704 sizeof(VkFramebufferCreateFlags));
2705 *ptr += sizeof(VkFramebufferCreateFlags);
2706 uint64_t cgen_var_0;
2707 *&cgen_var_0 = get_host_u64_VkRenderPass((*&forMarshaling->renderPass));
2708 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
2709 *ptr += 1 * 8;
2710 memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t));
2711 *ptr += sizeof(uint32_t);
2712 if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) ||
2713 (((forMarshaling->flags & VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT) == 0)))) {
2714 if (forMarshaling->attachmentCount) {
2715 uint8_t* cgen_var_0_0_ptr = (uint8_t*)(*ptr);
2716 if (forMarshaling) {
2717 for (uint32_t k = 0; k < forMarshaling->attachmentCount; ++k) {
2718 uint64_t tmpval = get_host_u64_VkImageView(forMarshaling->pAttachments[k]);
2719 memcpy(cgen_var_0_0_ptr + k * 8, &tmpval, sizeof(uint64_t));
2720 }
2721 }
2722 *ptr += 8 * forMarshaling->attachmentCount;
2723 }
2724 }
2725 memcpy(*ptr, (uint32_t*)&forMarshaling->width, sizeof(uint32_t));
2726 *ptr += sizeof(uint32_t);
2727 memcpy(*ptr, (uint32_t*)&forMarshaling->height, sizeof(uint32_t));
2728 *ptr += sizeof(uint32_t);
2729 memcpy(*ptr, (uint32_t*)&forMarshaling->layers, sizeof(uint32_t));
2730 *ptr += sizeof(uint32_t);
2731 }
2732
reservedmarshal_VkSubpassDescription(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubpassDescription * forMarshaling,uint8_t ** ptr)2733 void reservedmarshal_VkSubpassDescription(VulkanStreamGuest* vkStream, VkStructureType rootType,
2734 const VkSubpassDescription* forMarshaling,
2735 uint8_t** ptr) {
2736 (void)vkStream;
2737 (void)rootType;
2738 memcpy(*ptr, (VkSubpassDescriptionFlags*)&forMarshaling->flags,
2739 sizeof(VkSubpassDescriptionFlags));
2740 *ptr += sizeof(VkSubpassDescriptionFlags);
2741 memcpy(*ptr, (VkPipelineBindPoint*)&forMarshaling->pipelineBindPoint,
2742 sizeof(VkPipelineBindPoint));
2743 *ptr += sizeof(VkPipelineBindPoint);
2744 memcpy(*ptr, (uint32_t*)&forMarshaling->inputAttachmentCount, sizeof(uint32_t));
2745 *ptr += sizeof(uint32_t);
2746 for (uint32_t i = 0; i < (uint32_t)forMarshaling->inputAttachmentCount; ++i) {
2747 reservedmarshal_VkAttachmentReference(
2748 vkStream, rootType,
2749 (const VkAttachmentReference*)(forMarshaling->pInputAttachments + i), ptr);
2750 }
2751 memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
2752 *ptr += sizeof(uint32_t);
2753 for (uint32_t i = 0; i < (uint32_t)forMarshaling->colorAttachmentCount; ++i) {
2754 reservedmarshal_VkAttachmentReference(
2755 vkStream, rootType,
2756 (const VkAttachmentReference*)(forMarshaling->pColorAttachments + i), ptr);
2757 }
2758 // WARNING PTR CHECK
2759 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pResolveAttachments;
2760 memcpy((*ptr), &cgen_var_0, 8);
2761 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2762 *ptr += 8;
2763 if (forMarshaling->pResolveAttachments) {
2764 for (uint32_t i = 0; i < (uint32_t)forMarshaling->colorAttachmentCount; ++i) {
2765 reservedmarshal_VkAttachmentReference(
2766 vkStream, rootType,
2767 (const VkAttachmentReference*)(forMarshaling->pResolveAttachments + i), ptr);
2768 }
2769 }
2770 // WARNING PTR CHECK
2771 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pDepthStencilAttachment;
2772 memcpy((*ptr), &cgen_var_1, 8);
2773 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2774 *ptr += 8;
2775 if (forMarshaling->pDepthStencilAttachment) {
2776 reservedmarshal_VkAttachmentReference(
2777 vkStream, rootType,
2778 (const VkAttachmentReference*)(forMarshaling->pDepthStencilAttachment), ptr);
2779 }
2780 memcpy(*ptr, (uint32_t*)&forMarshaling->preserveAttachmentCount, sizeof(uint32_t));
2781 *ptr += sizeof(uint32_t);
2782 memcpy(*ptr, (const uint32_t*)forMarshaling->pPreserveAttachments,
2783 forMarshaling->preserveAttachmentCount * sizeof(const uint32_t));
2784 *ptr += forMarshaling->preserveAttachmentCount * sizeof(const uint32_t);
2785 }
2786
reservedmarshal_VkSubpassDependency(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubpassDependency * forMarshaling,uint8_t ** ptr)2787 void reservedmarshal_VkSubpassDependency(VulkanStreamGuest* vkStream, VkStructureType rootType,
2788 const VkSubpassDependency* forMarshaling, uint8_t** ptr) {
2789 (void)vkStream;
2790 (void)rootType;
2791 memcpy(*ptr, (uint32_t*)&forMarshaling->srcSubpass, sizeof(uint32_t));
2792 *ptr += sizeof(uint32_t);
2793 memcpy(*ptr, (uint32_t*)&forMarshaling->dstSubpass, sizeof(uint32_t));
2794 *ptr += sizeof(uint32_t);
2795 memcpy(*ptr, (VkPipelineStageFlags*)&forMarshaling->srcStageMask, sizeof(VkPipelineStageFlags));
2796 *ptr += sizeof(VkPipelineStageFlags);
2797 memcpy(*ptr, (VkPipelineStageFlags*)&forMarshaling->dstStageMask, sizeof(VkPipelineStageFlags));
2798 *ptr += sizeof(VkPipelineStageFlags);
2799 memcpy(*ptr, (VkAccessFlags*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags));
2800 *ptr += sizeof(VkAccessFlags);
2801 memcpy(*ptr, (VkAccessFlags*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags));
2802 *ptr += sizeof(VkAccessFlags);
2803 memcpy(*ptr, (VkDependencyFlags*)&forMarshaling->dependencyFlags, sizeof(VkDependencyFlags));
2804 *ptr += sizeof(VkDependencyFlags);
2805 }
2806
reservedmarshal_VkRenderPassCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderPassCreateInfo * forMarshaling,uint8_t ** ptr)2807 void reservedmarshal_VkRenderPassCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
2808 const VkRenderPassCreateInfo* forMarshaling,
2809 uint8_t** ptr) {
2810 (void)vkStream;
2811 (void)rootType;
2812 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2813 *ptr += sizeof(VkStructureType);
2814 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2815 rootType = forMarshaling->sType;
2816 }
2817 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2818 memcpy(*ptr, (VkRenderPassCreateFlags*)&forMarshaling->flags, sizeof(VkRenderPassCreateFlags));
2819 *ptr += sizeof(VkRenderPassCreateFlags);
2820 memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t));
2821 *ptr += sizeof(uint32_t);
2822 for (uint32_t i = 0; i < (uint32_t)forMarshaling->attachmentCount; ++i) {
2823 reservedmarshal_VkAttachmentDescription(
2824 vkStream, rootType, (const VkAttachmentDescription*)(forMarshaling->pAttachments + i),
2825 ptr);
2826 }
2827 memcpy(*ptr, (uint32_t*)&forMarshaling->subpassCount, sizeof(uint32_t));
2828 *ptr += sizeof(uint32_t);
2829 for (uint32_t i = 0; i < (uint32_t)forMarshaling->subpassCount; ++i) {
2830 reservedmarshal_VkSubpassDescription(
2831 vkStream, rootType, (const VkSubpassDescription*)(forMarshaling->pSubpasses + i), ptr);
2832 }
2833 memcpy(*ptr, (uint32_t*)&forMarshaling->dependencyCount, sizeof(uint32_t));
2834 *ptr += sizeof(uint32_t);
2835 for (uint32_t i = 0; i < (uint32_t)forMarshaling->dependencyCount; ++i) {
2836 reservedmarshal_VkSubpassDependency(
2837 vkStream, rootType, (const VkSubpassDependency*)(forMarshaling->pDependencies + i),
2838 ptr);
2839 }
2840 }
2841
reservedmarshal_VkCommandPoolCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCommandPoolCreateInfo * forMarshaling,uint8_t ** ptr)2842 void reservedmarshal_VkCommandPoolCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
2843 const VkCommandPoolCreateInfo* forMarshaling,
2844 uint8_t** ptr) {
2845 (void)vkStream;
2846 (void)rootType;
2847 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2848 *ptr += sizeof(VkStructureType);
2849 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2850 rootType = forMarshaling->sType;
2851 }
2852 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2853 memcpy(*ptr, (VkCommandPoolCreateFlags*)&forMarshaling->flags,
2854 sizeof(VkCommandPoolCreateFlags));
2855 *ptr += sizeof(VkCommandPoolCreateFlags);
2856 memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndex, sizeof(uint32_t));
2857 *ptr += sizeof(uint32_t);
2858 }
2859
reservedmarshal_VkCommandBufferAllocateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCommandBufferAllocateInfo * forMarshaling,uint8_t ** ptr)2860 void reservedmarshal_VkCommandBufferAllocateInfo(VulkanStreamGuest* vkStream,
2861 VkStructureType rootType,
2862 const VkCommandBufferAllocateInfo* forMarshaling,
2863 uint8_t** ptr) {
2864 (void)vkStream;
2865 (void)rootType;
2866 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2867 *ptr += sizeof(VkStructureType);
2868 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2869 rootType = forMarshaling->sType;
2870 }
2871 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2872 uint64_t cgen_var_0;
2873 *&cgen_var_0 = get_host_u64_VkCommandPool((*&forMarshaling->commandPool));
2874 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
2875 *ptr += 1 * 8;
2876 memcpy(*ptr, (VkCommandBufferLevel*)&forMarshaling->level, sizeof(VkCommandBufferLevel));
2877 *ptr += sizeof(VkCommandBufferLevel);
2878 memcpy(*ptr, (uint32_t*)&forMarshaling->commandBufferCount, sizeof(uint32_t));
2879 *ptr += sizeof(uint32_t);
2880 }
2881
reservedmarshal_VkCommandBufferInheritanceInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCommandBufferInheritanceInfo * forMarshaling,uint8_t ** ptr)2882 void reservedmarshal_VkCommandBufferInheritanceInfo(
2883 VulkanStreamGuest* vkStream, VkStructureType rootType,
2884 const VkCommandBufferInheritanceInfo* forMarshaling, uint8_t** ptr) {
2885 (void)vkStream;
2886 (void)rootType;
2887 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2888 *ptr += sizeof(VkStructureType);
2889 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2890 rootType = forMarshaling->sType;
2891 }
2892 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2893 uint64_t cgen_var_0;
2894 *&cgen_var_0 = get_host_u64_VkRenderPass((*&forMarshaling->renderPass));
2895 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
2896 *ptr += 1 * 8;
2897 memcpy(*ptr, (uint32_t*)&forMarshaling->subpass, sizeof(uint32_t));
2898 *ptr += sizeof(uint32_t);
2899 uint64_t cgen_var_1;
2900 *&cgen_var_1 = get_host_u64_VkFramebuffer((*&forMarshaling->framebuffer));
2901 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
2902 *ptr += 1 * 8;
2903 memcpy(*ptr, (VkBool32*)&forMarshaling->occlusionQueryEnable, sizeof(VkBool32));
2904 *ptr += sizeof(VkBool32);
2905 memcpy(*ptr, (VkQueryControlFlags*)&forMarshaling->queryFlags, sizeof(VkQueryControlFlags));
2906 *ptr += sizeof(VkQueryControlFlags);
2907 memcpy(*ptr, (VkQueryPipelineStatisticFlags*)&forMarshaling->pipelineStatistics,
2908 sizeof(VkQueryPipelineStatisticFlags));
2909 *ptr += sizeof(VkQueryPipelineStatisticFlags);
2910 }
2911
reservedmarshal_VkCommandBufferBeginInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCommandBufferBeginInfo * forMarshaling,uint8_t ** ptr)2912 void reservedmarshal_VkCommandBufferBeginInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
2913 const VkCommandBufferBeginInfo* forMarshaling,
2914 uint8_t** ptr) {
2915 (void)vkStream;
2916 (void)rootType;
2917 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
2918 *ptr += sizeof(VkStructureType);
2919 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
2920 rootType = forMarshaling->sType;
2921 }
2922 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
2923 memcpy(*ptr, (VkCommandBufferUsageFlags*)&forMarshaling->flags,
2924 sizeof(VkCommandBufferUsageFlags));
2925 *ptr += sizeof(VkCommandBufferUsageFlags);
2926 // WARNING PTR CHECK
2927 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pInheritanceInfo;
2928 memcpy((*ptr), &cgen_var_0, 8);
2929 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
2930 *ptr += 8;
2931 if (forMarshaling->pInheritanceInfo) {
2932 reservedmarshal_VkCommandBufferInheritanceInfo(
2933 vkStream, rootType,
2934 (const VkCommandBufferInheritanceInfo*)(forMarshaling->pInheritanceInfo), ptr);
2935 }
2936 }
2937
reservedmarshal_VkBufferCopy(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferCopy * forMarshaling,uint8_t ** ptr)2938 void reservedmarshal_VkBufferCopy(VulkanStreamGuest* vkStream, VkStructureType rootType,
2939 const VkBufferCopy* forMarshaling, uint8_t** ptr) {
2940 (void)vkStream;
2941 (void)rootType;
2942 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->srcOffset, sizeof(VkDeviceSize));
2943 *ptr += sizeof(VkDeviceSize);
2944 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->dstOffset, sizeof(VkDeviceSize));
2945 *ptr += sizeof(VkDeviceSize);
2946 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
2947 *ptr += sizeof(VkDeviceSize);
2948 }
2949
reservedmarshal_VkImageSubresourceLayers(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageSubresourceLayers * forMarshaling,uint8_t ** ptr)2950 void reservedmarshal_VkImageSubresourceLayers(VulkanStreamGuest* vkStream, VkStructureType rootType,
2951 const VkImageSubresourceLayers* forMarshaling,
2952 uint8_t** ptr) {
2953 (void)vkStream;
2954 (void)rootType;
2955 memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags));
2956 *ptr += sizeof(VkImageAspectFlags);
2957 memcpy(*ptr, (uint32_t*)&forMarshaling->mipLevel, sizeof(uint32_t));
2958 *ptr += sizeof(uint32_t);
2959 memcpy(*ptr, (uint32_t*)&forMarshaling->baseArrayLayer, sizeof(uint32_t));
2960 *ptr += sizeof(uint32_t);
2961 memcpy(*ptr, (uint32_t*)&forMarshaling->layerCount, sizeof(uint32_t));
2962 *ptr += sizeof(uint32_t);
2963 }
2964
reservedmarshal_VkBufferImageCopy(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferImageCopy * forMarshaling,uint8_t ** ptr)2965 void reservedmarshal_VkBufferImageCopy(VulkanStreamGuest* vkStream, VkStructureType rootType,
2966 const VkBufferImageCopy* forMarshaling, uint8_t** ptr) {
2967 (void)vkStream;
2968 (void)rootType;
2969 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->bufferOffset, sizeof(VkDeviceSize));
2970 *ptr += sizeof(VkDeviceSize);
2971 memcpy(*ptr, (uint32_t*)&forMarshaling->bufferRowLength, sizeof(uint32_t));
2972 *ptr += sizeof(uint32_t);
2973 memcpy(*ptr, (uint32_t*)&forMarshaling->bufferImageHeight, sizeof(uint32_t));
2974 *ptr += sizeof(uint32_t);
2975 reservedmarshal_VkImageSubresourceLayers(
2976 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->imageSubresource), ptr);
2977 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->imageOffset), ptr);
2978 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->imageExtent), ptr);
2979 }
2980
reservedmarshal_VkClearColorValue(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkClearColorValue * forMarshaling,uint8_t ** ptr)2981 void reservedmarshal_VkClearColorValue(VulkanStreamGuest* vkStream, VkStructureType rootType,
2982 const VkClearColorValue* forMarshaling, uint8_t** ptr) {
2983 (void)vkStream;
2984 (void)rootType;
2985 memcpy(*ptr, (float*)forMarshaling->float32, 4 * sizeof(float));
2986 *ptr += 4 * sizeof(float);
2987 }
2988
reservedmarshal_VkClearDepthStencilValue(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkClearDepthStencilValue * forMarshaling,uint8_t ** ptr)2989 void reservedmarshal_VkClearDepthStencilValue(VulkanStreamGuest* vkStream, VkStructureType rootType,
2990 const VkClearDepthStencilValue* forMarshaling,
2991 uint8_t** ptr) {
2992 (void)vkStream;
2993 (void)rootType;
2994 memcpy(*ptr, (float*)&forMarshaling->depth, sizeof(float));
2995 *ptr += sizeof(float);
2996 memcpy(*ptr, (uint32_t*)&forMarshaling->stencil, sizeof(uint32_t));
2997 *ptr += sizeof(uint32_t);
2998 }
2999
reservedmarshal_VkClearValue(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkClearValue * forMarshaling,uint8_t ** ptr)3000 void reservedmarshal_VkClearValue(VulkanStreamGuest* vkStream, VkStructureType rootType,
3001 const VkClearValue* forMarshaling, uint8_t** ptr) {
3002 (void)vkStream;
3003 (void)rootType;
3004 reservedmarshal_VkClearColorValue(vkStream, rootType,
3005 (VkClearColorValue*)(&forMarshaling->color), ptr);
3006 }
3007
reservedmarshal_VkClearAttachment(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkClearAttachment * forMarshaling,uint8_t ** ptr)3008 void reservedmarshal_VkClearAttachment(VulkanStreamGuest* vkStream, VkStructureType rootType,
3009 const VkClearAttachment* forMarshaling, uint8_t** ptr) {
3010 (void)vkStream;
3011 (void)rootType;
3012 memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags));
3013 *ptr += sizeof(VkImageAspectFlags);
3014 memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachment, sizeof(uint32_t));
3015 *ptr += sizeof(uint32_t);
3016 reservedmarshal_VkClearValue(vkStream, rootType, (VkClearValue*)(&forMarshaling->clearValue),
3017 ptr);
3018 }
3019
reservedmarshal_VkClearRect(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkClearRect * forMarshaling,uint8_t ** ptr)3020 void reservedmarshal_VkClearRect(VulkanStreamGuest* vkStream, VkStructureType rootType,
3021 const VkClearRect* forMarshaling, uint8_t** ptr) {
3022 (void)vkStream;
3023 (void)rootType;
3024 reservedmarshal_VkRect2D(vkStream, rootType, (VkRect2D*)(&forMarshaling->rect), ptr);
3025 memcpy(*ptr, (uint32_t*)&forMarshaling->baseArrayLayer, sizeof(uint32_t));
3026 *ptr += sizeof(uint32_t);
3027 memcpy(*ptr, (uint32_t*)&forMarshaling->layerCount, sizeof(uint32_t));
3028 *ptr += sizeof(uint32_t);
3029 }
3030
reservedmarshal_VkImageBlit(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageBlit * forMarshaling,uint8_t ** ptr)3031 void reservedmarshal_VkImageBlit(VulkanStreamGuest* vkStream, VkStructureType rootType,
3032 const VkImageBlit* forMarshaling, uint8_t** ptr) {
3033 (void)vkStream;
3034 (void)rootType;
3035 reservedmarshal_VkImageSubresourceLayers(
3036 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->srcSubresource), ptr);
3037 for (uint32_t i = 0; i < (uint32_t)2; ++i) {
3038 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(forMarshaling->srcOffsets + i),
3039 ptr);
3040 }
3041 reservedmarshal_VkImageSubresourceLayers(
3042 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->dstSubresource), ptr);
3043 for (uint32_t i = 0; i < (uint32_t)2; ++i) {
3044 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(forMarshaling->dstOffsets + i),
3045 ptr);
3046 }
3047 }
3048
reservedmarshal_VkImageCopy(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageCopy * forMarshaling,uint8_t ** ptr)3049 void reservedmarshal_VkImageCopy(VulkanStreamGuest* vkStream, VkStructureType rootType,
3050 const VkImageCopy* forMarshaling, uint8_t** ptr) {
3051 (void)vkStream;
3052 (void)rootType;
3053 reservedmarshal_VkImageSubresourceLayers(
3054 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->srcSubresource), ptr);
3055 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->srcOffset), ptr);
3056 reservedmarshal_VkImageSubresourceLayers(
3057 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->dstSubresource), ptr);
3058 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->dstOffset), ptr);
3059 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->extent), ptr);
3060 }
3061
reservedmarshal_VkImageResolve(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageResolve * forMarshaling,uint8_t ** ptr)3062 void reservedmarshal_VkImageResolve(VulkanStreamGuest* vkStream, VkStructureType rootType,
3063 const VkImageResolve* forMarshaling, uint8_t** ptr) {
3064 (void)vkStream;
3065 (void)rootType;
3066 reservedmarshal_VkImageSubresourceLayers(
3067 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->srcSubresource), ptr);
3068 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->srcOffset), ptr);
3069 reservedmarshal_VkImageSubresourceLayers(
3070 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->dstSubresource), ptr);
3071 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->dstOffset), ptr);
3072 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->extent), ptr);
3073 }
3074
reservedmarshal_VkRenderPassBeginInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderPassBeginInfo * forMarshaling,uint8_t ** ptr)3075 void reservedmarshal_VkRenderPassBeginInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
3076 const VkRenderPassBeginInfo* forMarshaling,
3077 uint8_t** ptr) {
3078 (void)vkStream;
3079 (void)rootType;
3080 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3081 *ptr += sizeof(VkStructureType);
3082 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3083 rootType = forMarshaling->sType;
3084 }
3085 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3086 uint64_t cgen_var_0;
3087 *&cgen_var_0 = get_host_u64_VkRenderPass((*&forMarshaling->renderPass));
3088 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
3089 *ptr += 1 * 8;
3090 uint64_t cgen_var_1;
3091 *&cgen_var_1 = get_host_u64_VkFramebuffer((*&forMarshaling->framebuffer));
3092 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
3093 *ptr += 1 * 8;
3094 reservedmarshal_VkRect2D(vkStream, rootType, (VkRect2D*)(&forMarshaling->renderArea), ptr);
3095 memcpy(*ptr, (uint32_t*)&forMarshaling->clearValueCount, sizeof(uint32_t));
3096 *ptr += sizeof(uint32_t);
3097 // WARNING PTR CHECK
3098 uint64_t cgen_var_2 = (uint64_t)(uintptr_t)forMarshaling->pClearValues;
3099 memcpy((*ptr), &cgen_var_2, 8);
3100 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
3101 *ptr += 8;
3102 if (forMarshaling->pClearValues) {
3103 for (uint32_t i = 0; i < (uint32_t)forMarshaling->clearValueCount; ++i) {
3104 reservedmarshal_VkClearValue(
3105 vkStream, rootType, (const VkClearValue*)(forMarshaling->pClearValues + i), ptr);
3106 }
3107 }
3108 }
3109
3110 #endif
3111 #ifdef VK_VERSION_1_1
reservedmarshal_VkPhysicalDeviceSubgroupProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceSubgroupProperties * forMarshaling,uint8_t ** ptr)3112 void reservedmarshal_VkPhysicalDeviceSubgroupProperties(
3113 VulkanStreamGuest* vkStream, VkStructureType rootType,
3114 const VkPhysicalDeviceSubgroupProperties* forMarshaling, uint8_t** ptr) {
3115 (void)vkStream;
3116 (void)rootType;
3117 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3118 *ptr += sizeof(VkStructureType);
3119 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3120 rootType = forMarshaling->sType;
3121 }
3122 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3123 memcpy(*ptr, (uint32_t*)&forMarshaling->subgroupSize, sizeof(uint32_t));
3124 *ptr += sizeof(uint32_t);
3125 memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->supportedStages, sizeof(VkShaderStageFlags));
3126 *ptr += sizeof(VkShaderStageFlags);
3127 memcpy(*ptr, (VkSubgroupFeatureFlags*)&forMarshaling->supportedOperations,
3128 sizeof(VkSubgroupFeatureFlags));
3129 *ptr += sizeof(VkSubgroupFeatureFlags);
3130 memcpy(*ptr, (VkBool32*)&forMarshaling->quadOperationsInAllStages, sizeof(VkBool32));
3131 *ptr += sizeof(VkBool32);
3132 }
3133
reservedmarshal_VkBindBufferMemoryInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBindBufferMemoryInfo * forMarshaling,uint8_t ** ptr)3134 void reservedmarshal_VkBindBufferMemoryInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
3135 const VkBindBufferMemoryInfo* forMarshaling,
3136 uint8_t** ptr) {
3137 (void)vkStream;
3138 (void)rootType;
3139 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3140 *ptr += sizeof(VkStructureType);
3141 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3142 rootType = forMarshaling->sType;
3143 }
3144 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3145 uint64_t cgen_var_0;
3146 *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer));
3147 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
3148 *ptr += 1 * 8;
3149 uint64_t cgen_var_1;
3150 *&cgen_var_1 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory));
3151 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
3152 *ptr += 1 * 8;
3153 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->memoryOffset, sizeof(VkDeviceSize));
3154 *ptr += sizeof(VkDeviceSize);
3155 }
3156
reservedmarshal_VkBindImageMemoryInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBindImageMemoryInfo * forMarshaling,uint8_t ** ptr)3157 void reservedmarshal_VkBindImageMemoryInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
3158 const VkBindImageMemoryInfo* forMarshaling,
3159 uint8_t** ptr) {
3160 (void)vkStream;
3161 (void)rootType;
3162 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3163 *ptr += sizeof(VkStructureType);
3164 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3165 rootType = forMarshaling->sType;
3166 }
3167 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3168 uint64_t cgen_var_0;
3169 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image));
3170 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
3171 *ptr += 1 * 8;
3172 uint64_t cgen_var_1;
3173 *&cgen_var_1 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory));
3174 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
3175 *ptr += 1 * 8;
3176 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->memoryOffset, sizeof(VkDeviceSize));
3177 *ptr += sizeof(VkDeviceSize);
3178 }
3179
reservedmarshal_VkPhysicalDevice16BitStorageFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevice16BitStorageFeatures * forMarshaling,uint8_t ** ptr)3180 void reservedmarshal_VkPhysicalDevice16BitStorageFeatures(
3181 VulkanStreamGuest* vkStream, VkStructureType rootType,
3182 const VkPhysicalDevice16BitStorageFeatures* forMarshaling, uint8_t** ptr) {
3183 (void)vkStream;
3184 (void)rootType;
3185 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3186 *ptr += sizeof(VkStructureType);
3187 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3188 rootType = forMarshaling->sType;
3189 }
3190 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3191 memcpy(*ptr, (VkBool32*)&forMarshaling->storageBuffer16BitAccess, sizeof(VkBool32));
3192 *ptr += sizeof(VkBool32);
3193 memcpy(*ptr, (VkBool32*)&forMarshaling->uniformAndStorageBuffer16BitAccess, sizeof(VkBool32));
3194 *ptr += sizeof(VkBool32);
3195 memcpy(*ptr, (VkBool32*)&forMarshaling->storagePushConstant16, sizeof(VkBool32));
3196 *ptr += sizeof(VkBool32);
3197 memcpy(*ptr, (VkBool32*)&forMarshaling->storageInputOutput16, sizeof(VkBool32));
3198 *ptr += sizeof(VkBool32);
3199 }
3200
reservedmarshal_VkMemoryDedicatedRequirements(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryDedicatedRequirements * forMarshaling,uint8_t ** ptr)3201 void reservedmarshal_VkMemoryDedicatedRequirements(
3202 VulkanStreamGuest* vkStream, VkStructureType rootType,
3203 const VkMemoryDedicatedRequirements* forMarshaling, uint8_t** ptr) {
3204 (void)vkStream;
3205 (void)rootType;
3206 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3207 *ptr += sizeof(VkStructureType);
3208 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3209 rootType = forMarshaling->sType;
3210 }
3211 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3212 memcpy(*ptr, (VkBool32*)&forMarshaling->prefersDedicatedAllocation, sizeof(VkBool32));
3213 *ptr += sizeof(VkBool32);
3214 memcpy(*ptr, (VkBool32*)&forMarshaling->requiresDedicatedAllocation, sizeof(VkBool32));
3215 *ptr += sizeof(VkBool32);
3216 }
3217
reservedmarshal_VkMemoryDedicatedAllocateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryDedicatedAllocateInfo * forMarshaling,uint8_t ** ptr)3218 void reservedmarshal_VkMemoryDedicatedAllocateInfo(
3219 VulkanStreamGuest* vkStream, VkStructureType rootType,
3220 const VkMemoryDedicatedAllocateInfo* forMarshaling, uint8_t** ptr) {
3221 (void)vkStream;
3222 (void)rootType;
3223 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3224 *ptr += sizeof(VkStructureType);
3225 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3226 rootType = forMarshaling->sType;
3227 }
3228 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3229 uint64_t cgen_var_0;
3230 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image));
3231 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
3232 *ptr += 1 * 8;
3233 uint64_t cgen_var_1;
3234 *&cgen_var_1 = get_host_u64_VkBuffer((*&forMarshaling->buffer));
3235 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
3236 *ptr += 1 * 8;
3237 }
3238
reservedmarshal_VkMemoryAllocateFlagsInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryAllocateFlagsInfo * forMarshaling,uint8_t ** ptr)3239 void reservedmarshal_VkMemoryAllocateFlagsInfo(VulkanStreamGuest* vkStream,
3240 VkStructureType rootType,
3241 const VkMemoryAllocateFlagsInfo* forMarshaling,
3242 uint8_t** ptr) {
3243 (void)vkStream;
3244 (void)rootType;
3245 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3246 *ptr += sizeof(VkStructureType);
3247 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3248 rootType = forMarshaling->sType;
3249 }
3250 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3251 memcpy(*ptr, (VkMemoryAllocateFlags*)&forMarshaling->flags, sizeof(VkMemoryAllocateFlags));
3252 *ptr += sizeof(VkMemoryAllocateFlags);
3253 memcpy(*ptr, (uint32_t*)&forMarshaling->deviceMask, sizeof(uint32_t));
3254 *ptr += sizeof(uint32_t);
3255 }
3256
reservedmarshal_VkDeviceGroupRenderPassBeginInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceGroupRenderPassBeginInfo * forMarshaling,uint8_t ** ptr)3257 void reservedmarshal_VkDeviceGroupRenderPassBeginInfo(
3258 VulkanStreamGuest* vkStream, VkStructureType rootType,
3259 const VkDeviceGroupRenderPassBeginInfo* forMarshaling, uint8_t** ptr) {
3260 (void)vkStream;
3261 (void)rootType;
3262 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3263 *ptr += sizeof(VkStructureType);
3264 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3265 rootType = forMarshaling->sType;
3266 }
3267 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3268 memcpy(*ptr, (uint32_t*)&forMarshaling->deviceMask, sizeof(uint32_t));
3269 *ptr += sizeof(uint32_t);
3270 memcpy(*ptr, (uint32_t*)&forMarshaling->deviceRenderAreaCount, sizeof(uint32_t));
3271 *ptr += sizeof(uint32_t);
3272 for (uint32_t i = 0; i < (uint32_t)forMarshaling->deviceRenderAreaCount; ++i) {
3273 reservedmarshal_VkRect2D(vkStream, rootType,
3274 (const VkRect2D*)(forMarshaling->pDeviceRenderAreas + i), ptr);
3275 }
3276 }
3277
reservedmarshal_VkDeviceGroupCommandBufferBeginInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceGroupCommandBufferBeginInfo * forMarshaling,uint8_t ** ptr)3278 void reservedmarshal_VkDeviceGroupCommandBufferBeginInfo(
3279 VulkanStreamGuest* vkStream, VkStructureType rootType,
3280 const VkDeviceGroupCommandBufferBeginInfo* forMarshaling, uint8_t** ptr) {
3281 (void)vkStream;
3282 (void)rootType;
3283 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3284 *ptr += sizeof(VkStructureType);
3285 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3286 rootType = forMarshaling->sType;
3287 }
3288 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3289 memcpy(*ptr, (uint32_t*)&forMarshaling->deviceMask, sizeof(uint32_t));
3290 *ptr += sizeof(uint32_t);
3291 }
3292
reservedmarshal_VkDeviceGroupSubmitInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceGroupSubmitInfo * forMarshaling,uint8_t ** ptr)3293 void reservedmarshal_VkDeviceGroupSubmitInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
3294 const VkDeviceGroupSubmitInfo* forMarshaling,
3295 uint8_t** ptr) {
3296 (void)vkStream;
3297 (void)rootType;
3298 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3299 *ptr += sizeof(VkStructureType);
3300 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3301 rootType = forMarshaling->sType;
3302 }
3303 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3304 memcpy(*ptr, (uint32_t*)&forMarshaling->waitSemaphoreCount, sizeof(uint32_t));
3305 *ptr += sizeof(uint32_t);
3306 memcpy(*ptr, (const uint32_t*)forMarshaling->pWaitSemaphoreDeviceIndices,
3307 forMarshaling->waitSemaphoreCount * sizeof(const uint32_t));
3308 *ptr += forMarshaling->waitSemaphoreCount * sizeof(const uint32_t);
3309 memcpy(*ptr, (uint32_t*)&forMarshaling->commandBufferCount, sizeof(uint32_t));
3310 *ptr += sizeof(uint32_t);
3311 memcpy(*ptr, (const uint32_t*)forMarshaling->pCommandBufferDeviceMasks,
3312 forMarshaling->commandBufferCount * sizeof(const uint32_t));
3313 *ptr += forMarshaling->commandBufferCount * sizeof(const uint32_t);
3314 memcpy(*ptr, (uint32_t*)&forMarshaling->signalSemaphoreCount, sizeof(uint32_t));
3315 *ptr += sizeof(uint32_t);
3316 memcpy(*ptr, (const uint32_t*)forMarshaling->pSignalSemaphoreDeviceIndices,
3317 forMarshaling->signalSemaphoreCount * sizeof(const uint32_t));
3318 *ptr += forMarshaling->signalSemaphoreCount * sizeof(const uint32_t);
3319 }
3320
reservedmarshal_VkDeviceGroupBindSparseInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceGroupBindSparseInfo * forMarshaling,uint8_t ** ptr)3321 void reservedmarshal_VkDeviceGroupBindSparseInfo(VulkanStreamGuest* vkStream,
3322 VkStructureType rootType,
3323 const VkDeviceGroupBindSparseInfo* forMarshaling,
3324 uint8_t** ptr) {
3325 (void)vkStream;
3326 (void)rootType;
3327 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3328 *ptr += sizeof(VkStructureType);
3329 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3330 rootType = forMarshaling->sType;
3331 }
3332 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3333 memcpy(*ptr, (uint32_t*)&forMarshaling->resourceDeviceIndex, sizeof(uint32_t));
3334 *ptr += sizeof(uint32_t);
3335 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryDeviceIndex, sizeof(uint32_t));
3336 *ptr += sizeof(uint32_t);
3337 }
3338
reservedmarshal_VkBindBufferMemoryDeviceGroupInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBindBufferMemoryDeviceGroupInfo * forMarshaling,uint8_t ** ptr)3339 void reservedmarshal_VkBindBufferMemoryDeviceGroupInfo(
3340 VulkanStreamGuest* vkStream, VkStructureType rootType,
3341 const VkBindBufferMemoryDeviceGroupInfo* forMarshaling, uint8_t** ptr) {
3342 (void)vkStream;
3343 (void)rootType;
3344 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3345 *ptr += sizeof(VkStructureType);
3346 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3347 rootType = forMarshaling->sType;
3348 }
3349 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3350 memcpy(*ptr, (uint32_t*)&forMarshaling->deviceIndexCount, sizeof(uint32_t));
3351 *ptr += sizeof(uint32_t);
3352 memcpy(*ptr, (const uint32_t*)forMarshaling->pDeviceIndices,
3353 forMarshaling->deviceIndexCount * sizeof(const uint32_t));
3354 *ptr += forMarshaling->deviceIndexCount * sizeof(const uint32_t);
3355 }
3356
reservedmarshal_VkBindImageMemoryDeviceGroupInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBindImageMemoryDeviceGroupInfo * forMarshaling,uint8_t ** ptr)3357 void reservedmarshal_VkBindImageMemoryDeviceGroupInfo(
3358 VulkanStreamGuest* vkStream, VkStructureType rootType,
3359 const VkBindImageMemoryDeviceGroupInfo* forMarshaling, uint8_t** ptr) {
3360 (void)vkStream;
3361 (void)rootType;
3362 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3363 *ptr += sizeof(VkStructureType);
3364 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3365 rootType = forMarshaling->sType;
3366 }
3367 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3368 memcpy(*ptr, (uint32_t*)&forMarshaling->deviceIndexCount, sizeof(uint32_t));
3369 *ptr += sizeof(uint32_t);
3370 memcpy(*ptr, (const uint32_t*)forMarshaling->pDeviceIndices,
3371 forMarshaling->deviceIndexCount * sizeof(const uint32_t));
3372 *ptr += forMarshaling->deviceIndexCount * sizeof(const uint32_t);
3373 memcpy(*ptr, (uint32_t*)&forMarshaling->splitInstanceBindRegionCount, sizeof(uint32_t));
3374 *ptr += sizeof(uint32_t);
3375 for (uint32_t i = 0; i < (uint32_t)forMarshaling->splitInstanceBindRegionCount; ++i) {
3376 reservedmarshal_VkRect2D(vkStream, rootType,
3377 (const VkRect2D*)(forMarshaling->pSplitInstanceBindRegions + i),
3378 ptr);
3379 }
3380 }
3381
reservedmarshal_VkPhysicalDeviceGroupProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceGroupProperties * forMarshaling,uint8_t ** ptr)3382 void reservedmarshal_VkPhysicalDeviceGroupProperties(
3383 VulkanStreamGuest* vkStream, VkStructureType rootType,
3384 const VkPhysicalDeviceGroupProperties* forMarshaling, uint8_t** ptr) {
3385 (void)vkStream;
3386 (void)rootType;
3387 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3388 *ptr += sizeof(VkStructureType);
3389 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3390 rootType = forMarshaling->sType;
3391 }
3392 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3393 memcpy(*ptr, (uint32_t*)&forMarshaling->physicalDeviceCount, sizeof(uint32_t));
3394 *ptr += sizeof(uint32_t);
3395 memcpy(*ptr, (VkPhysicalDevice*)forMarshaling->physicalDevices,
3396 VK_MAX_DEVICE_GROUP_SIZE * sizeof(VkPhysicalDevice));
3397 *ptr += VK_MAX_DEVICE_GROUP_SIZE * sizeof(VkPhysicalDevice);
3398 memcpy(*ptr, (VkBool32*)&forMarshaling->subsetAllocation, sizeof(VkBool32));
3399 *ptr += sizeof(VkBool32);
3400 }
3401
reservedmarshal_VkDeviceGroupDeviceCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceGroupDeviceCreateInfo * forMarshaling,uint8_t ** ptr)3402 void reservedmarshal_VkDeviceGroupDeviceCreateInfo(
3403 VulkanStreamGuest* vkStream, VkStructureType rootType,
3404 const VkDeviceGroupDeviceCreateInfo* forMarshaling, uint8_t** ptr) {
3405 (void)vkStream;
3406 (void)rootType;
3407 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3408 *ptr += sizeof(VkStructureType);
3409 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3410 rootType = forMarshaling->sType;
3411 }
3412 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3413 memcpy(*ptr, (uint32_t*)&forMarshaling->physicalDeviceCount, sizeof(uint32_t));
3414 *ptr += sizeof(uint32_t);
3415 if (forMarshaling->physicalDeviceCount) {
3416 uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr);
3417 if (forMarshaling) {
3418 for (uint32_t k = 0; k < forMarshaling->physicalDeviceCount; ++k) {
3419 uint64_t tmpval = get_host_u64_VkPhysicalDevice(forMarshaling->pPhysicalDevices[k]);
3420 memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t));
3421 }
3422 }
3423 *ptr += 8 * forMarshaling->physicalDeviceCount;
3424 }
3425 }
3426
reservedmarshal_VkBufferMemoryRequirementsInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferMemoryRequirementsInfo2 * forMarshaling,uint8_t ** ptr)3427 void reservedmarshal_VkBufferMemoryRequirementsInfo2(
3428 VulkanStreamGuest* vkStream, VkStructureType rootType,
3429 const VkBufferMemoryRequirementsInfo2* forMarshaling, uint8_t** ptr) {
3430 (void)vkStream;
3431 (void)rootType;
3432 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3433 *ptr += sizeof(VkStructureType);
3434 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3435 rootType = forMarshaling->sType;
3436 }
3437 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3438 uint64_t cgen_var_0;
3439 *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer));
3440 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
3441 *ptr += 1 * 8;
3442 }
3443
reservedmarshal_VkImageMemoryRequirementsInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageMemoryRequirementsInfo2 * forMarshaling,uint8_t ** ptr)3444 void reservedmarshal_VkImageMemoryRequirementsInfo2(
3445 VulkanStreamGuest* vkStream, VkStructureType rootType,
3446 const VkImageMemoryRequirementsInfo2* forMarshaling, uint8_t** ptr) {
3447 (void)vkStream;
3448 (void)rootType;
3449 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3450 *ptr += sizeof(VkStructureType);
3451 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3452 rootType = forMarshaling->sType;
3453 }
3454 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3455 uint64_t cgen_var_0;
3456 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image));
3457 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
3458 *ptr += 1 * 8;
3459 }
3460
reservedmarshal_VkImageSparseMemoryRequirementsInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageSparseMemoryRequirementsInfo2 * forMarshaling,uint8_t ** ptr)3461 void reservedmarshal_VkImageSparseMemoryRequirementsInfo2(
3462 VulkanStreamGuest* vkStream, VkStructureType rootType,
3463 const VkImageSparseMemoryRequirementsInfo2* forMarshaling, uint8_t** ptr) {
3464 (void)vkStream;
3465 (void)rootType;
3466 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3467 *ptr += sizeof(VkStructureType);
3468 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3469 rootType = forMarshaling->sType;
3470 }
3471 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3472 uint64_t cgen_var_0;
3473 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image));
3474 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
3475 *ptr += 1 * 8;
3476 }
3477
reservedmarshal_VkMemoryRequirements2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryRequirements2 * forMarshaling,uint8_t ** ptr)3478 void reservedmarshal_VkMemoryRequirements2(VulkanStreamGuest* vkStream, VkStructureType rootType,
3479 const VkMemoryRequirements2* forMarshaling,
3480 uint8_t** ptr) {
3481 (void)vkStream;
3482 (void)rootType;
3483 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3484 *ptr += sizeof(VkStructureType);
3485 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3486 rootType = forMarshaling->sType;
3487 }
3488 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3489 reservedmarshal_VkMemoryRequirements(
3490 vkStream, rootType, (VkMemoryRequirements*)(&forMarshaling->memoryRequirements), ptr);
3491 }
3492
reservedmarshal_VkSparseImageMemoryRequirements2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSparseImageMemoryRequirements2 * forMarshaling,uint8_t ** ptr)3493 void reservedmarshal_VkSparseImageMemoryRequirements2(
3494 VulkanStreamGuest* vkStream, VkStructureType rootType,
3495 const VkSparseImageMemoryRequirements2* forMarshaling, uint8_t** ptr) {
3496 (void)vkStream;
3497 (void)rootType;
3498 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3499 *ptr += sizeof(VkStructureType);
3500 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3501 rootType = forMarshaling->sType;
3502 }
3503 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3504 reservedmarshal_VkSparseImageMemoryRequirements(
3505 vkStream, rootType, (VkSparseImageMemoryRequirements*)(&forMarshaling->memoryRequirements),
3506 ptr);
3507 }
3508
reservedmarshal_VkPhysicalDeviceFeatures2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceFeatures2 * forMarshaling,uint8_t ** ptr)3509 void reservedmarshal_VkPhysicalDeviceFeatures2(VulkanStreamGuest* vkStream,
3510 VkStructureType rootType,
3511 const VkPhysicalDeviceFeatures2* forMarshaling,
3512 uint8_t** ptr) {
3513 (void)vkStream;
3514 (void)rootType;
3515 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3516 *ptr += sizeof(VkStructureType);
3517 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3518 rootType = forMarshaling->sType;
3519 }
3520 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3521 reservedmarshal_VkPhysicalDeviceFeatures(
3522 vkStream, rootType, (VkPhysicalDeviceFeatures*)(&forMarshaling->features), ptr);
3523 }
3524
reservedmarshal_VkPhysicalDeviceProperties2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceProperties2 * forMarshaling,uint8_t ** ptr)3525 void reservedmarshal_VkPhysicalDeviceProperties2(VulkanStreamGuest* vkStream,
3526 VkStructureType rootType,
3527 const VkPhysicalDeviceProperties2* forMarshaling,
3528 uint8_t** ptr) {
3529 (void)vkStream;
3530 (void)rootType;
3531 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3532 *ptr += sizeof(VkStructureType);
3533 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3534 rootType = forMarshaling->sType;
3535 }
3536 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3537 reservedmarshal_VkPhysicalDeviceProperties(
3538 vkStream, rootType, (VkPhysicalDeviceProperties*)(&forMarshaling->properties), ptr);
3539 }
3540
reservedmarshal_VkFormatProperties2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkFormatProperties2 * forMarshaling,uint8_t ** ptr)3541 void reservedmarshal_VkFormatProperties2(VulkanStreamGuest* vkStream, VkStructureType rootType,
3542 const VkFormatProperties2* forMarshaling, uint8_t** ptr) {
3543 (void)vkStream;
3544 (void)rootType;
3545 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3546 *ptr += sizeof(VkStructureType);
3547 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3548 rootType = forMarshaling->sType;
3549 }
3550 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3551 reservedmarshal_VkFormatProperties(
3552 vkStream, rootType, (VkFormatProperties*)(&forMarshaling->formatProperties), ptr);
3553 }
3554
reservedmarshal_VkImageFormatProperties2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageFormatProperties2 * forMarshaling,uint8_t ** ptr)3555 void reservedmarshal_VkImageFormatProperties2(VulkanStreamGuest* vkStream, VkStructureType rootType,
3556 const VkImageFormatProperties2* forMarshaling,
3557 uint8_t** ptr) {
3558 (void)vkStream;
3559 (void)rootType;
3560 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3561 *ptr += sizeof(VkStructureType);
3562 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3563 rootType = forMarshaling->sType;
3564 }
3565 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3566 reservedmarshal_VkImageFormatProperties(
3567 vkStream, rootType, (VkImageFormatProperties*)(&forMarshaling->imageFormatProperties), ptr);
3568 }
3569
reservedmarshal_VkPhysicalDeviceImageFormatInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceImageFormatInfo2 * forMarshaling,uint8_t ** ptr)3570 void reservedmarshal_VkPhysicalDeviceImageFormatInfo2(
3571 VulkanStreamGuest* vkStream, VkStructureType rootType,
3572 const VkPhysicalDeviceImageFormatInfo2* forMarshaling, uint8_t** ptr) {
3573 (void)vkStream;
3574 (void)rootType;
3575 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3576 *ptr += sizeof(VkStructureType);
3577 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3578 rootType = forMarshaling->sType;
3579 }
3580 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3581 memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
3582 *ptr += sizeof(VkFormat);
3583 memcpy(*ptr, (VkImageType*)&forMarshaling->type, sizeof(VkImageType));
3584 *ptr += sizeof(VkImageType);
3585 memcpy(*ptr, (VkImageTiling*)&forMarshaling->tiling, sizeof(VkImageTiling));
3586 *ptr += sizeof(VkImageTiling);
3587 memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->usage, sizeof(VkImageUsageFlags));
3588 *ptr += sizeof(VkImageUsageFlags);
3589 memcpy(*ptr, (VkImageCreateFlags*)&forMarshaling->flags, sizeof(VkImageCreateFlags));
3590 *ptr += sizeof(VkImageCreateFlags);
3591 }
3592
reservedmarshal_VkQueueFamilyProperties2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkQueueFamilyProperties2 * forMarshaling,uint8_t ** ptr)3593 void reservedmarshal_VkQueueFamilyProperties2(VulkanStreamGuest* vkStream, VkStructureType rootType,
3594 const VkQueueFamilyProperties2* forMarshaling,
3595 uint8_t** ptr) {
3596 (void)vkStream;
3597 (void)rootType;
3598 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3599 *ptr += sizeof(VkStructureType);
3600 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3601 rootType = forMarshaling->sType;
3602 }
3603 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3604 reservedmarshal_VkQueueFamilyProperties(
3605 vkStream, rootType, (VkQueueFamilyProperties*)(&forMarshaling->queueFamilyProperties), ptr);
3606 }
3607
reservedmarshal_VkPhysicalDeviceMemoryProperties2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMemoryProperties2 * forMarshaling,uint8_t ** ptr)3608 void reservedmarshal_VkPhysicalDeviceMemoryProperties2(
3609 VulkanStreamGuest* vkStream, VkStructureType rootType,
3610 const VkPhysicalDeviceMemoryProperties2* forMarshaling, uint8_t** ptr) {
3611 (void)vkStream;
3612 (void)rootType;
3613 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3614 *ptr += sizeof(VkStructureType);
3615 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3616 rootType = forMarshaling->sType;
3617 }
3618 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3619 reservedmarshal_VkPhysicalDeviceMemoryProperties(
3620 vkStream, rootType, (VkPhysicalDeviceMemoryProperties*)(&forMarshaling->memoryProperties),
3621 ptr);
3622 }
3623
reservedmarshal_VkSparseImageFormatProperties2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSparseImageFormatProperties2 * forMarshaling,uint8_t ** ptr)3624 void reservedmarshal_VkSparseImageFormatProperties2(
3625 VulkanStreamGuest* vkStream, VkStructureType rootType,
3626 const VkSparseImageFormatProperties2* forMarshaling, uint8_t** ptr) {
3627 (void)vkStream;
3628 (void)rootType;
3629 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3630 *ptr += sizeof(VkStructureType);
3631 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3632 rootType = forMarshaling->sType;
3633 }
3634 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3635 reservedmarshal_VkSparseImageFormatProperties(
3636 vkStream, rootType, (VkSparseImageFormatProperties*)(&forMarshaling->properties), ptr);
3637 }
3638
reservedmarshal_VkPhysicalDeviceSparseImageFormatInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceSparseImageFormatInfo2 * forMarshaling,uint8_t ** ptr)3639 void reservedmarshal_VkPhysicalDeviceSparseImageFormatInfo2(
3640 VulkanStreamGuest* vkStream, VkStructureType rootType,
3641 const VkPhysicalDeviceSparseImageFormatInfo2* forMarshaling, uint8_t** ptr) {
3642 (void)vkStream;
3643 (void)rootType;
3644 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3645 *ptr += sizeof(VkStructureType);
3646 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3647 rootType = forMarshaling->sType;
3648 }
3649 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3650 memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
3651 *ptr += sizeof(VkFormat);
3652 memcpy(*ptr, (VkImageType*)&forMarshaling->type, sizeof(VkImageType));
3653 *ptr += sizeof(VkImageType);
3654 memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->samples, sizeof(VkSampleCountFlagBits));
3655 *ptr += sizeof(VkSampleCountFlagBits);
3656 memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->usage, sizeof(VkImageUsageFlags));
3657 *ptr += sizeof(VkImageUsageFlags);
3658 memcpy(*ptr, (VkImageTiling*)&forMarshaling->tiling, sizeof(VkImageTiling));
3659 *ptr += sizeof(VkImageTiling);
3660 }
3661
reservedmarshal_VkPhysicalDevicePointClippingProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePointClippingProperties * forMarshaling,uint8_t ** ptr)3662 void reservedmarshal_VkPhysicalDevicePointClippingProperties(
3663 VulkanStreamGuest* vkStream, VkStructureType rootType,
3664 const VkPhysicalDevicePointClippingProperties* forMarshaling, uint8_t** ptr) {
3665 (void)vkStream;
3666 (void)rootType;
3667 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3668 *ptr += sizeof(VkStructureType);
3669 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3670 rootType = forMarshaling->sType;
3671 }
3672 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3673 memcpy(*ptr, (VkPointClippingBehavior*)&forMarshaling->pointClippingBehavior,
3674 sizeof(VkPointClippingBehavior));
3675 *ptr += sizeof(VkPointClippingBehavior);
3676 }
3677
reservedmarshal_VkInputAttachmentAspectReference(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkInputAttachmentAspectReference * forMarshaling,uint8_t ** ptr)3678 void reservedmarshal_VkInputAttachmentAspectReference(
3679 VulkanStreamGuest* vkStream, VkStructureType rootType,
3680 const VkInputAttachmentAspectReference* forMarshaling, uint8_t** ptr) {
3681 (void)vkStream;
3682 (void)rootType;
3683 memcpy(*ptr, (uint32_t*)&forMarshaling->subpass, sizeof(uint32_t));
3684 *ptr += sizeof(uint32_t);
3685 memcpy(*ptr, (uint32_t*)&forMarshaling->inputAttachmentIndex, sizeof(uint32_t));
3686 *ptr += sizeof(uint32_t);
3687 memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags));
3688 *ptr += sizeof(VkImageAspectFlags);
3689 }
3690
reservedmarshal_VkRenderPassInputAttachmentAspectCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderPassInputAttachmentAspectCreateInfo * forMarshaling,uint8_t ** ptr)3691 void reservedmarshal_VkRenderPassInputAttachmentAspectCreateInfo(
3692 VulkanStreamGuest* vkStream, VkStructureType rootType,
3693 const VkRenderPassInputAttachmentAspectCreateInfo* forMarshaling, uint8_t** ptr) {
3694 (void)vkStream;
3695 (void)rootType;
3696 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3697 *ptr += sizeof(VkStructureType);
3698 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3699 rootType = forMarshaling->sType;
3700 }
3701 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3702 memcpy(*ptr, (uint32_t*)&forMarshaling->aspectReferenceCount, sizeof(uint32_t));
3703 *ptr += sizeof(uint32_t);
3704 for (uint32_t i = 0; i < (uint32_t)forMarshaling->aspectReferenceCount; ++i) {
3705 reservedmarshal_VkInputAttachmentAspectReference(
3706 vkStream, rootType,
3707 (const VkInputAttachmentAspectReference*)(forMarshaling->pAspectReferences + i), ptr);
3708 }
3709 }
3710
reservedmarshal_VkImageViewUsageCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageViewUsageCreateInfo * forMarshaling,uint8_t ** ptr)3711 void reservedmarshal_VkImageViewUsageCreateInfo(VulkanStreamGuest* vkStream,
3712 VkStructureType rootType,
3713 const VkImageViewUsageCreateInfo* forMarshaling,
3714 uint8_t** ptr) {
3715 (void)vkStream;
3716 (void)rootType;
3717 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3718 *ptr += sizeof(VkStructureType);
3719 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3720 rootType = forMarshaling->sType;
3721 }
3722 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3723 memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->usage, sizeof(VkImageUsageFlags));
3724 *ptr += sizeof(VkImageUsageFlags);
3725 }
3726
reservedmarshal_VkPipelineTessellationDomainOriginStateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineTessellationDomainOriginStateCreateInfo * forMarshaling,uint8_t ** ptr)3727 void reservedmarshal_VkPipelineTessellationDomainOriginStateCreateInfo(
3728 VulkanStreamGuest* vkStream, VkStructureType rootType,
3729 const VkPipelineTessellationDomainOriginStateCreateInfo* forMarshaling, uint8_t** ptr) {
3730 (void)vkStream;
3731 (void)rootType;
3732 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3733 *ptr += sizeof(VkStructureType);
3734 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3735 rootType = forMarshaling->sType;
3736 }
3737 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3738 memcpy(*ptr, (VkTessellationDomainOrigin*)&forMarshaling->domainOrigin,
3739 sizeof(VkTessellationDomainOrigin));
3740 *ptr += sizeof(VkTessellationDomainOrigin);
3741 }
3742
reservedmarshal_VkRenderPassMultiviewCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderPassMultiviewCreateInfo * forMarshaling,uint8_t ** ptr)3743 void reservedmarshal_VkRenderPassMultiviewCreateInfo(
3744 VulkanStreamGuest* vkStream, VkStructureType rootType,
3745 const VkRenderPassMultiviewCreateInfo* forMarshaling, uint8_t** ptr) {
3746 (void)vkStream;
3747 (void)rootType;
3748 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3749 *ptr += sizeof(VkStructureType);
3750 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3751 rootType = forMarshaling->sType;
3752 }
3753 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3754 memcpy(*ptr, (uint32_t*)&forMarshaling->subpassCount, sizeof(uint32_t));
3755 *ptr += sizeof(uint32_t);
3756 memcpy(*ptr, (const uint32_t*)forMarshaling->pViewMasks,
3757 forMarshaling->subpassCount * sizeof(const uint32_t));
3758 *ptr += forMarshaling->subpassCount * sizeof(const uint32_t);
3759 memcpy(*ptr, (uint32_t*)&forMarshaling->dependencyCount, sizeof(uint32_t));
3760 *ptr += sizeof(uint32_t);
3761 memcpy(*ptr, (const int32_t*)forMarshaling->pViewOffsets,
3762 forMarshaling->dependencyCount * sizeof(const int32_t));
3763 *ptr += forMarshaling->dependencyCount * sizeof(const int32_t);
3764 memcpy(*ptr, (uint32_t*)&forMarshaling->correlationMaskCount, sizeof(uint32_t));
3765 *ptr += sizeof(uint32_t);
3766 memcpy(*ptr, (const uint32_t*)forMarshaling->pCorrelationMasks,
3767 forMarshaling->correlationMaskCount * sizeof(const uint32_t));
3768 *ptr += forMarshaling->correlationMaskCount * sizeof(const uint32_t);
3769 }
3770
reservedmarshal_VkPhysicalDeviceMultiviewFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMultiviewFeatures * forMarshaling,uint8_t ** ptr)3771 void reservedmarshal_VkPhysicalDeviceMultiviewFeatures(
3772 VulkanStreamGuest* vkStream, VkStructureType rootType,
3773 const VkPhysicalDeviceMultiviewFeatures* forMarshaling, uint8_t** ptr) {
3774 (void)vkStream;
3775 (void)rootType;
3776 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3777 *ptr += sizeof(VkStructureType);
3778 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3779 rootType = forMarshaling->sType;
3780 }
3781 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3782 memcpy(*ptr, (VkBool32*)&forMarshaling->multiview, sizeof(VkBool32));
3783 *ptr += sizeof(VkBool32);
3784 memcpy(*ptr, (VkBool32*)&forMarshaling->multiviewGeometryShader, sizeof(VkBool32));
3785 *ptr += sizeof(VkBool32);
3786 memcpy(*ptr, (VkBool32*)&forMarshaling->multiviewTessellationShader, sizeof(VkBool32));
3787 *ptr += sizeof(VkBool32);
3788 }
3789
reservedmarshal_VkPhysicalDeviceMultiviewProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMultiviewProperties * forMarshaling,uint8_t ** ptr)3790 void reservedmarshal_VkPhysicalDeviceMultiviewProperties(
3791 VulkanStreamGuest* vkStream, VkStructureType rootType,
3792 const VkPhysicalDeviceMultiviewProperties* forMarshaling, uint8_t** ptr) {
3793 (void)vkStream;
3794 (void)rootType;
3795 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3796 *ptr += sizeof(VkStructureType);
3797 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3798 rootType = forMarshaling->sType;
3799 }
3800 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3801 memcpy(*ptr, (uint32_t*)&forMarshaling->maxMultiviewViewCount, sizeof(uint32_t));
3802 *ptr += sizeof(uint32_t);
3803 memcpy(*ptr, (uint32_t*)&forMarshaling->maxMultiviewInstanceIndex, sizeof(uint32_t));
3804 *ptr += sizeof(uint32_t);
3805 }
3806
reservedmarshal_VkPhysicalDeviceVariablePointersFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVariablePointersFeatures * forMarshaling,uint8_t ** ptr)3807 void reservedmarshal_VkPhysicalDeviceVariablePointersFeatures(
3808 VulkanStreamGuest* vkStream, VkStructureType rootType,
3809 const VkPhysicalDeviceVariablePointersFeatures* forMarshaling, uint8_t** ptr) {
3810 (void)vkStream;
3811 (void)rootType;
3812 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3813 *ptr += sizeof(VkStructureType);
3814 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3815 rootType = forMarshaling->sType;
3816 }
3817 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3818 memcpy(*ptr, (VkBool32*)&forMarshaling->variablePointersStorageBuffer, sizeof(VkBool32));
3819 *ptr += sizeof(VkBool32);
3820 memcpy(*ptr, (VkBool32*)&forMarshaling->variablePointers, sizeof(VkBool32));
3821 *ptr += sizeof(VkBool32);
3822 }
3823
reservedmarshal_VkPhysicalDeviceProtectedMemoryFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceProtectedMemoryFeatures * forMarshaling,uint8_t ** ptr)3824 void reservedmarshal_VkPhysicalDeviceProtectedMemoryFeatures(
3825 VulkanStreamGuest* vkStream, VkStructureType rootType,
3826 const VkPhysicalDeviceProtectedMemoryFeatures* forMarshaling, uint8_t** ptr) {
3827 (void)vkStream;
3828 (void)rootType;
3829 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3830 *ptr += sizeof(VkStructureType);
3831 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3832 rootType = forMarshaling->sType;
3833 }
3834 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3835 memcpy(*ptr, (VkBool32*)&forMarshaling->protectedMemory, sizeof(VkBool32));
3836 *ptr += sizeof(VkBool32);
3837 }
3838
reservedmarshal_VkPhysicalDeviceProtectedMemoryProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceProtectedMemoryProperties * forMarshaling,uint8_t ** ptr)3839 void reservedmarshal_VkPhysicalDeviceProtectedMemoryProperties(
3840 VulkanStreamGuest* vkStream, VkStructureType rootType,
3841 const VkPhysicalDeviceProtectedMemoryProperties* forMarshaling, uint8_t** ptr) {
3842 (void)vkStream;
3843 (void)rootType;
3844 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3845 *ptr += sizeof(VkStructureType);
3846 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3847 rootType = forMarshaling->sType;
3848 }
3849 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3850 memcpy(*ptr, (VkBool32*)&forMarshaling->protectedNoFault, sizeof(VkBool32));
3851 *ptr += sizeof(VkBool32);
3852 }
3853
reservedmarshal_VkDeviceQueueInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceQueueInfo2 * forMarshaling,uint8_t ** ptr)3854 void reservedmarshal_VkDeviceQueueInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType,
3855 const VkDeviceQueueInfo2* forMarshaling, uint8_t** ptr) {
3856 (void)vkStream;
3857 (void)rootType;
3858 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3859 *ptr += sizeof(VkStructureType);
3860 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3861 rootType = forMarshaling->sType;
3862 }
3863 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3864 memcpy(*ptr, (VkDeviceQueueCreateFlags*)&forMarshaling->flags,
3865 sizeof(VkDeviceQueueCreateFlags));
3866 *ptr += sizeof(VkDeviceQueueCreateFlags);
3867 memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndex, sizeof(uint32_t));
3868 *ptr += sizeof(uint32_t);
3869 memcpy(*ptr, (uint32_t*)&forMarshaling->queueIndex, sizeof(uint32_t));
3870 *ptr += sizeof(uint32_t);
3871 }
3872
reservedmarshal_VkProtectedSubmitInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkProtectedSubmitInfo * forMarshaling,uint8_t ** ptr)3873 void reservedmarshal_VkProtectedSubmitInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
3874 const VkProtectedSubmitInfo* forMarshaling,
3875 uint8_t** ptr) {
3876 (void)vkStream;
3877 (void)rootType;
3878 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3879 *ptr += sizeof(VkStructureType);
3880 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3881 rootType = forMarshaling->sType;
3882 }
3883 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3884 memcpy(*ptr, (VkBool32*)&forMarshaling->protectedSubmit, sizeof(VkBool32));
3885 *ptr += sizeof(VkBool32);
3886 }
3887
reservedmarshal_VkSamplerYcbcrConversionCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSamplerYcbcrConversionCreateInfo * forMarshaling,uint8_t ** ptr)3888 void reservedmarshal_VkSamplerYcbcrConversionCreateInfo(
3889 VulkanStreamGuest* vkStream, VkStructureType rootType,
3890 const VkSamplerYcbcrConversionCreateInfo* forMarshaling, uint8_t** ptr) {
3891 (void)vkStream;
3892 (void)rootType;
3893 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3894 *ptr += sizeof(VkStructureType);
3895 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3896 rootType = forMarshaling->sType;
3897 }
3898 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3899 memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
3900 *ptr += sizeof(VkFormat);
3901 memcpy(*ptr, (VkSamplerYcbcrModelConversion*)&forMarshaling->ycbcrModel,
3902 sizeof(VkSamplerYcbcrModelConversion));
3903 *ptr += sizeof(VkSamplerYcbcrModelConversion);
3904 memcpy(*ptr, (VkSamplerYcbcrRange*)&forMarshaling->ycbcrRange, sizeof(VkSamplerYcbcrRange));
3905 *ptr += sizeof(VkSamplerYcbcrRange);
3906 reservedmarshal_VkComponentMapping(vkStream, rootType,
3907 (VkComponentMapping*)(&forMarshaling->components), ptr);
3908 memcpy(*ptr, (VkChromaLocation*)&forMarshaling->xChromaOffset, sizeof(VkChromaLocation));
3909 *ptr += sizeof(VkChromaLocation);
3910 memcpy(*ptr, (VkChromaLocation*)&forMarshaling->yChromaOffset, sizeof(VkChromaLocation));
3911 *ptr += sizeof(VkChromaLocation);
3912 memcpy(*ptr, (VkFilter*)&forMarshaling->chromaFilter, sizeof(VkFilter));
3913 *ptr += sizeof(VkFilter);
3914 memcpy(*ptr, (VkBool32*)&forMarshaling->forceExplicitReconstruction, sizeof(VkBool32));
3915 *ptr += sizeof(VkBool32);
3916 }
3917
reservedmarshal_VkSamplerYcbcrConversionInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSamplerYcbcrConversionInfo * forMarshaling,uint8_t ** ptr)3918 void reservedmarshal_VkSamplerYcbcrConversionInfo(VulkanStreamGuest* vkStream,
3919 VkStructureType rootType,
3920 const VkSamplerYcbcrConversionInfo* forMarshaling,
3921 uint8_t** ptr) {
3922 (void)vkStream;
3923 (void)rootType;
3924 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3925 *ptr += sizeof(VkStructureType);
3926 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3927 rootType = forMarshaling->sType;
3928 }
3929 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3930 uint64_t cgen_var_0;
3931 *&cgen_var_0 = get_host_u64_VkSamplerYcbcrConversion((*&forMarshaling->conversion));
3932 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
3933 *ptr += 1 * 8;
3934 }
3935
reservedmarshal_VkBindImagePlaneMemoryInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBindImagePlaneMemoryInfo * forMarshaling,uint8_t ** ptr)3936 void reservedmarshal_VkBindImagePlaneMemoryInfo(VulkanStreamGuest* vkStream,
3937 VkStructureType rootType,
3938 const VkBindImagePlaneMemoryInfo* forMarshaling,
3939 uint8_t** ptr) {
3940 (void)vkStream;
3941 (void)rootType;
3942 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3943 *ptr += sizeof(VkStructureType);
3944 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3945 rootType = forMarshaling->sType;
3946 }
3947 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3948 memcpy(*ptr, (VkImageAspectFlagBits*)&forMarshaling->planeAspect,
3949 sizeof(VkImageAspectFlagBits));
3950 *ptr += sizeof(VkImageAspectFlagBits);
3951 }
3952
reservedmarshal_VkImagePlaneMemoryRequirementsInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImagePlaneMemoryRequirementsInfo * forMarshaling,uint8_t ** ptr)3953 void reservedmarshal_VkImagePlaneMemoryRequirementsInfo(
3954 VulkanStreamGuest* vkStream, VkStructureType rootType,
3955 const VkImagePlaneMemoryRequirementsInfo* forMarshaling, uint8_t** ptr) {
3956 (void)vkStream;
3957 (void)rootType;
3958 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3959 *ptr += sizeof(VkStructureType);
3960 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3961 rootType = forMarshaling->sType;
3962 }
3963 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3964 memcpy(*ptr, (VkImageAspectFlagBits*)&forMarshaling->planeAspect,
3965 sizeof(VkImageAspectFlagBits));
3966 *ptr += sizeof(VkImageAspectFlagBits);
3967 }
3968
reservedmarshal_VkPhysicalDeviceSamplerYcbcrConversionFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceSamplerYcbcrConversionFeatures * forMarshaling,uint8_t ** ptr)3969 void reservedmarshal_VkPhysicalDeviceSamplerYcbcrConversionFeatures(
3970 VulkanStreamGuest* vkStream, VkStructureType rootType,
3971 const VkPhysicalDeviceSamplerYcbcrConversionFeatures* forMarshaling, uint8_t** ptr) {
3972 (void)vkStream;
3973 (void)rootType;
3974 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3975 *ptr += sizeof(VkStructureType);
3976 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3977 rootType = forMarshaling->sType;
3978 }
3979 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3980 memcpy(*ptr, (VkBool32*)&forMarshaling->samplerYcbcrConversion, sizeof(VkBool32));
3981 *ptr += sizeof(VkBool32);
3982 }
3983
reservedmarshal_VkSamplerYcbcrConversionImageFormatProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSamplerYcbcrConversionImageFormatProperties * forMarshaling,uint8_t ** ptr)3984 void reservedmarshal_VkSamplerYcbcrConversionImageFormatProperties(
3985 VulkanStreamGuest* vkStream, VkStructureType rootType,
3986 const VkSamplerYcbcrConversionImageFormatProperties* forMarshaling, uint8_t** ptr) {
3987 (void)vkStream;
3988 (void)rootType;
3989 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
3990 *ptr += sizeof(VkStructureType);
3991 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
3992 rootType = forMarshaling->sType;
3993 }
3994 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
3995 memcpy(*ptr, (uint32_t*)&forMarshaling->combinedImageSamplerDescriptorCount, sizeof(uint32_t));
3996 *ptr += sizeof(uint32_t);
3997 }
3998
reservedmarshal_VkDescriptorUpdateTemplateEntry(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorUpdateTemplateEntry * forMarshaling,uint8_t ** ptr)3999 void reservedmarshal_VkDescriptorUpdateTemplateEntry(
4000 VulkanStreamGuest* vkStream, VkStructureType rootType,
4001 const VkDescriptorUpdateTemplateEntry* forMarshaling, uint8_t** ptr) {
4002 (void)vkStream;
4003 (void)rootType;
4004 memcpy(*ptr, (uint32_t*)&forMarshaling->dstBinding, sizeof(uint32_t));
4005 *ptr += sizeof(uint32_t);
4006 memcpy(*ptr, (uint32_t*)&forMarshaling->dstArrayElement, sizeof(uint32_t));
4007 *ptr += sizeof(uint32_t);
4008 memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorCount, sizeof(uint32_t));
4009 *ptr += sizeof(uint32_t);
4010 memcpy(*ptr, (VkDescriptorType*)&forMarshaling->descriptorType, sizeof(VkDescriptorType));
4011 *ptr += sizeof(VkDescriptorType);
4012 uint64_t cgen_var_0 = (uint64_t)forMarshaling->offset;
4013 memcpy((*ptr), &cgen_var_0, 8);
4014 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
4015 *ptr += 8;
4016 uint64_t cgen_var_1 = (uint64_t)forMarshaling->stride;
4017 memcpy((*ptr), &cgen_var_1, 8);
4018 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
4019 *ptr += 8;
4020 }
4021
reservedmarshal_VkDescriptorUpdateTemplateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorUpdateTemplateCreateInfo * forMarshaling,uint8_t ** ptr)4022 void reservedmarshal_VkDescriptorUpdateTemplateCreateInfo(
4023 VulkanStreamGuest* vkStream, VkStructureType rootType,
4024 const VkDescriptorUpdateTemplateCreateInfo* forMarshaling, uint8_t** ptr) {
4025 (void)vkStream;
4026 (void)rootType;
4027 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4028 *ptr += sizeof(VkStructureType);
4029 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4030 rootType = forMarshaling->sType;
4031 }
4032 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4033 memcpy(*ptr, (VkDescriptorUpdateTemplateCreateFlags*)&forMarshaling->flags,
4034 sizeof(VkDescriptorUpdateTemplateCreateFlags));
4035 *ptr += sizeof(VkDescriptorUpdateTemplateCreateFlags);
4036 memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorUpdateEntryCount, sizeof(uint32_t));
4037 *ptr += sizeof(uint32_t);
4038 for (uint32_t i = 0; i < (uint32_t)forMarshaling->descriptorUpdateEntryCount; ++i) {
4039 reservedmarshal_VkDescriptorUpdateTemplateEntry(
4040 vkStream, rootType,
4041 (const VkDescriptorUpdateTemplateEntry*)(forMarshaling->pDescriptorUpdateEntries + i),
4042 ptr);
4043 }
4044 memcpy(*ptr, (VkDescriptorUpdateTemplateType*)&forMarshaling->templateType,
4045 sizeof(VkDescriptorUpdateTemplateType));
4046 *ptr += sizeof(VkDescriptorUpdateTemplateType);
4047 uint64_t cgen_var_0;
4048 *&cgen_var_0 = get_host_u64_VkDescriptorSetLayout((*&forMarshaling->descriptorSetLayout));
4049 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
4050 *ptr += 1 * 8;
4051 memcpy(*ptr, (VkPipelineBindPoint*)&forMarshaling->pipelineBindPoint,
4052 sizeof(VkPipelineBindPoint));
4053 *ptr += sizeof(VkPipelineBindPoint);
4054 uint64_t cgen_var_1;
4055 *&cgen_var_1 = get_host_u64_VkPipelineLayout((*&forMarshaling->pipelineLayout));
4056 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
4057 *ptr += 1 * 8;
4058 memcpy(*ptr, (uint32_t*)&forMarshaling->set, sizeof(uint32_t));
4059 *ptr += sizeof(uint32_t);
4060 }
4061
reservedmarshal_VkExternalMemoryProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExternalMemoryProperties * forMarshaling,uint8_t ** ptr)4062 void reservedmarshal_VkExternalMemoryProperties(VulkanStreamGuest* vkStream,
4063 VkStructureType rootType,
4064 const VkExternalMemoryProperties* forMarshaling,
4065 uint8_t** ptr) {
4066 (void)vkStream;
4067 (void)rootType;
4068 memcpy(*ptr, (VkExternalMemoryFeatureFlags*)&forMarshaling->externalMemoryFeatures,
4069 sizeof(VkExternalMemoryFeatureFlags));
4070 *ptr += sizeof(VkExternalMemoryFeatureFlags);
4071 memcpy(*ptr, (VkExternalMemoryHandleTypeFlags*)&forMarshaling->exportFromImportedHandleTypes,
4072 sizeof(VkExternalMemoryHandleTypeFlags));
4073 *ptr += sizeof(VkExternalMemoryHandleTypeFlags);
4074 memcpy(*ptr, (VkExternalMemoryHandleTypeFlags*)&forMarshaling->compatibleHandleTypes,
4075 sizeof(VkExternalMemoryHandleTypeFlags));
4076 *ptr += sizeof(VkExternalMemoryHandleTypeFlags);
4077 }
4078
reservedmarshal_VkPhysicalDeviceExternalImageFormatInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceExternalImageFormatInfo * forMarshaling,uint8_t ** ptr)4079 void reservedmarshal_VkPhysicalDeviceExternalImageFormatInfo(
4080 VulkanStreamGuest* vkStream, VkStructureType rootType,
4081 const VkPhysicalDeviceExternalImageFormatInfo* forMarshaling, uint8_t** ptr) {
4082 (void)vkStream;
4083 (void)rootType;
4084 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4085 *ptr += sizeof(VkStructureType);
4086 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4087 rootType = forMarshaling->sType;
4088 }
4089 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4090 memcpy(*ptr, (VkExternalMemoryHandleTypeFlagBits*)&forMarshaling->handleType,
4091 sizeof(VkExternalMemoryHandleTypeFlagBits));
4092 *ptr += sizeof(VkExternalMemoryHandleTypeFlagBits);
4093 }
4094
reservedmarshal_VkExternalImageFormatProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExternalImageFormatProperties * forMarshaling,uint8_t ** ptr)4095 void reservedmarshal_VkExternalImageFormatProperties(
4096 VulkanStreamGuest* vkStream, VkStructureType rootType,
4097 const VkExternalImageFormatProperties* forMarshaling, uint8_t** ptr) {
4098 (void)vkStream;
4099 (void)rootType;
4100 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4101 *ptr += sizeof(VkStructureType);
4102 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4103 rootType = forMarshaling->sType;
4104 }
4105 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4106 reservedmarshal_VkExternalMemoryProperties(
4107 vkStream, rootType, (VkExternalMemoryProperties*)(&forMarshaling->externalMemoryProperties),
4108 ptr);
4109 }
4110
reservedmarshal_VkPhysicalDeviceExternalBufferInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceExternalBufferInfo * forMarshaling,uint8_t ** ptr)4111 void reservedmarshal_VkPhysicalDeviceExternalBufferInfo(
4112 VulkanStreamGuest* vkStream, VkStructureType rootType,
4113 const VkPhysicalDeviceExternalBufferInfo* forMarshaling, uint8_t** ptr) {
4114 (void)vkStream;
4115 (void)rootType;
4116 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4117 *ptr += sizeof(VkStructureType);
4118 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4119 rootType = forMarshaling->sType;
4120 }
4121 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4122 memcpy(*ptr, (VkBufferCreateFlags*)&forMarshaling->flags, sizeof(VkBufferCreateFlags));
4123 *ptr += sizeof(VkBufferCreateFlags);
4124 memcpy(*ptr, (VkBufferUsageFlags*)&forMarshaling->usage, sizeof(VkBufferUsageFlags));
4125 *ptr += sizeof(VkBufferUsageFlags);
4126 memcpy(*ptr, (VkExternalMemoryHandleTypeFlagBits*)&forMarshaling->handleType,
4127 sizeof(VkExternalMemoryHandleTypeFlagBits));
4128 *ptr += sizeof(VkExternalMemoryHandleTypeFlagBits);
4129 }
4130
reservedmarshal_VkExternalBufferProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExternalBufferProperties * forMarshaling,uint8_t ** ptr)4131 void reservedmarshal_VkExternalBufferProperties(VulkanStreamGuest* vkStream,
4132 VkStructureType rootType,
4133 const VkExternalBufferProperties* forMarshaling,
4134 uint8_t** ptr) {
4135 (void)vkStream;
4136 (void)rootType;
4137 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4138 *ptr += sizeof(VkStructureType);
4139 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4140 rootType = forMarshaling->sType;
4141 }
4142 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4143 reservedmarshal_VkExternalMemoryProperties(
4144 vkStream, rootType, (VkExternalMemoryProperties*)(&forMarshaling->externalMemoryProperties),
4145 ptr);
4146 }
4147
reservedmarshal_VkPhysicalDeviceIDProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceIDProperties * forMarshaling,uint8_t ** ptr)4148 void reservedmarshal_VkPhysicalDeviceIDProperties(VulkanStreamGuest* vkStream,
4149 VkStructureType rootType,
4150 const VkPhysicalDeviceIDProperties* forMarshaling,
4151 uint8_t** ptr) {
4152 (void)vkStream;
4153 (void)rootType;
4154 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4155 *ptr += sizeof(VkStructureType);
4156 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4157 rootType = forMarshaling->sType;
4158 }
4159 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4160 memcpy(*ptr, (uint8_t*)forMarshaling->deviceUUID, VK_UUID_SIZE * sizeof(uint8_t));
4161 *ptr += VK_UUID_SIZE * sizeof(uint8_t);
4162 memcpy(*ptr, (uint8_t*)forMarshaling->driverUUID, VK_UUID_SIZE * sizeof(uint8_t));
4163 *ptr += VK_UUID_SIZE * sizeof(uint8_t);
4164 memcpy(*ptr, (uint8_t*)forMarshaling->deviceLUID, VK_LUID_SIZE * sizeof(uint8_t));
4165 *ptr += VK_LUID_SIZE * sizeof(uint8_t);
4166 memcpy(*ptr, (uint32_t*)&forMarshaling->deviceNodeMask, sizeof(uint32_t));
4167 *ptr += sizeof(uint32_t);
4168 memcpy(*ptr, (VkBool32*)&forMarshaling->deviceLUIDValid, sizeof(VkBool32));
4169 *ptr += sizeof(VkBool32);
4170 }
4171
reservedmarshal_VkExternalMemoryImageCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExternalMemoryImageCreateInfo * forMarshaling,uint8_t ** ptr)4172 void reservedmarshal_VkExternalMemoryImageCreateInfo(
4173 VulkanStreamGuest* vkStream, VkStructureType rootType,
4174 const VkExternalMemoryImageCreateInfo* forMarshaling, uint8_t** ptr) {
4175 (void)vkStream;
4176 (void)rootType;
4177 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4178 *ptr += sizeof(VkStructureType);
4179 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4180 rootType = forMarshaling->sType;
4181 }
4182 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4183 memcpy(*ptr, (VkExternalMemoryHandleTypeFlags*)&forMarshaling->handleTypes,
4184 sizeof(VkExternalMemoryHandleTypeFlags));
4185 *ptr += sizeof(VkExternalMemoryHandleTypeFlags);
4186 }
4187
reservedmarshal_VkExternalMemoryBufferCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExternalMemoryBufferCreateInfo * forMarshaling,uint8_t ** ptr)4188 void reservedmarshal_VkExternalMemoryBufferCreateInfo(
4189 VulkanStreamGuest* vkStream, VkStructureType rootType,
4190 const VkExternalMemoryBufferCreateInfo* forMarshaling, uint8_t** ptr) {
4191 (void)vkStream;
4192 (void)rootType;
4193 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4194 *ptr += sizeof(VkStructureType);
4195 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4196 rootType = forMarshaling->sType;
4197 }
4198 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4199 memcpy(*ptr, (VkExternalMemoryHandleTypeFlags*)&forMarshaling->handleTypes,
4200 sizeof(VkExternalMemoryHandleTypeFlags));
4201 *ptr += sizeof(VkExternalMemoryHandleTypeFlags);
4202 }
4203
reservedmarshal_VkExportMemoryAllocateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExportMemoryAllocateInfo * forMarshaling,uint8_t ** ptr)4204 void reservedmarshal_VkExportMemoryAllocateInfo(VulkanStreamGuest* vkStream,
4205 VkStructureType rootType,
4206 const VkExportMemoryAllocateInfo* forMarshaling,
4207 uint8_t** ptr) {
4208 (void)vkStream;
4209 (void)rootType;
4210 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4211 *ptr += sizeof(VkStructureType);
4212 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4213 rootType = forMarshaling->sType;
4214 }
4215 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4216 memcpy(*ptr, (VkExternalMemoryHandleTypeFlags*)&forMarshaling->handleTypes,
4217 sizeof(VkExternalMemoryHandleTypeFlags));
4218 *ptr += sizeof(VkExternalMemoryHandleTypeFlags);
4219 }
4220
reservedmarshal_VkPhysicalDeviceExternalFenceInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceExternalFenceInfo * forMarshaling,uint8_t ** ptr)4221 void reservedmarshal_VkPhysicalDeviceExternalFenceInfo(
4222 VulkanStreamGuest* vkStream, VkStructureType rootType,
4223 const VkPhysicalDeviceExternalFenceInfo* forMarshaling, uint8_t** ptr) {
4224 (void)vkStream;
4225 (void)rootType;
4226 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4227 *ptr += sizeof(VkStructureType);
4228 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4229 rootType = forMarshaling->sType;
4230 }
4231 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4232 memcpy(*ptr, (VkExternalFenceHandleTypeFlagBits*)&forMarshaling->handleType,
4233 sizeof(VkExternalFenceHandleTypeFlagBits));
4234 *ptr += sizeof(VkExternalFenceHandleTypeFlagBits);
4235 }
4236
reservedmarshal_VkExternalFenceProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExternalFenceProperties * forMarshaling,uint8_t ** ptr)4237 void reservedmarshal_VkExternalFenceProperties(VulkanStreamGuest* vkStream,
4238 VkStructureType rootType,
4239 const VkExternalFenceProperties* forMarshaling,
4240 uint8_t** ptr) {
4241 (void)vkStream;
4242 (void)rootType;
4243 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4244 *ptr += sizeof(VkStructureType);
4245 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4246 rootType = forMarshaling->sType;
4247 }
4248 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4249 memcpy(*ptr, (VkExternalFenceHandleTypeFlags*)&forMarshaling->exportFromImportedHandleTypes,
4250 sizeof(VkExternalFenceHandleTypeFlags));
4251 *ptr += sizeof(VkExternalFenceHandleTypeFlags);
4252 memcpy(*ptr, (VkExternalFenceHandleTypeFlags*)&forMarshaling->compatibleHandleTypes,
4253 sizeof(VkExternalFenceHandleTypeFlags));
4254 *ptr += sizeof(VkExternalFenceHandleTypeFlags);
4255 memcpy(*ptr, (VkExternalFenceFeatureFlags*)&forMarshaling->externalFenceFeatures,
4256 sizeof(VkExternalFenceFeatureFlags));
4257 *ptr += sizeof(VkExternalFenceFeatureFlags);
4258 }
4259
reservedmarshal_VkExportFenceCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExportFenceCreateInfo * forMarshaling,uint8_t ** ptr)4260 void reservedmarshal_VkExportFenceCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
4261 const VkExportFenceCreateInfo* forMarshaling,
4262 uint8_t** ptr) {
4263 (void)vkStream;
4264 (void)rootType;
4265 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4266 *ptr += sizeof(VkStructureType);
4267 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4268 rootType = forMarshaling->sType;
4269 }
4270 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4271 memcpy(*ptr, (VkExternalFenceHandleTypeFlags*)&forMarshaling->handleTypes,
4272 sizeof(VkExternalFenceHandleTypeFlags));
4273 *ptr += sizeof(VkExternalFenceHandleTypeFlags);
4274 }
4275
reservedmarshal_VkExportSemaphoreCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExportSemaphoreCreateInfo * forMarshaling,uint8_t ** ptr)4276 void reservedmarshal_VkExportSemaphoreCreateInfo(VulkanStreamGuest* vkStream,
4277 VkStructureType rootType,
4278 const VkExportSemaphoreCreateInfo* forMarshaling,
4279 uint8_t** ptr) {
4280 (void)vkStream;
4281 (void)rootType;
4282 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4283 *ptr += sizeof(VkStructureType);
4284 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4285 rootType = forMarshaling->sType;
4286 }
4287 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4288 memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlags*)&forMarshaling->handleTypes,
4289 sizeof(VkExternalSemaphoreHandleTypeFlags));
4290 *ptr += sizeof(VkExternalSemaphoreHandleTypeFlags);
4291 }
4292
reservedmarshal_VkPhysicalDeviceExternalSemaphoreInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceExternalSemaphoreInfo * forMarshaling,uint8_t ** ptr)4293 void reservedmarshal_VkPhysicalDeviceExternalSemaphoreInfo(
4294 VulkanStreamGuest* vkStream, VkStructureType rootType,
4295 const VkPhysicalDeviceExternalSemaphoreInfo* forMarshaling, uint8_t** ptr) {
4296 (void)vkStream;
4297 (void)rootType;
4298 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4299 *ptr += sizeof(VkStructureType);
4300 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4301 rootType = forMarshaling->sType;
4302 }
4303 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4304 memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlagBits*)&forMarshaling->handleType,
4305 sizeof(VkExternalSemaphoreHandleTypeFlagBits));
4306 *ptr += sizeof(VkExternalSemaphoreHandleTypeFlagBits);
4307 }
4308
reservedmarshal_VkExternalSemaphoreProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkExternalSemaphoreProperties * forMarshaling,uint8_t ** ptr)4309 void reservedmarshal_VkExternalSemaphoreProperties(
4310 VulkanStreamGuest* vkStream, VkStructureType rootType,
4311 const VkExternalSemaphoreProperties* forMarshaling, uint8_t** ptr) {
4312 (void)vkStream;
4313 (void)rootType;
4314 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4315 *ptr += sizeof(VkStructureType);
4316 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4317 rootType = forMarshaling->sType;
4318 }
4319 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4320 memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlags*)&forMarshaling->exportFromImportedHandleTypes,
4321 sizeof(VkExternalSemaphoreHandleTypeFlags));
4322 *ptr += sizeof(VkExternalSemaphoreHandleTypeFlags);
4323 memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlags*)&forMarshaling->compatibleHandleTypes,
4324 sizeof(VkExternalSemaphoreHandleTypeFlags));
4325 *ptr += sizeof(VkExternalSemaphoreHandleTypeFlags);
4326 memcpy(*ptr, (VkExternalSemaphoreFeatureFlags*)&forMarshaling->externalSemaphoreFeatures,
4327 sizeof(VkExternalSemaphoreFeatureFlags));
4328 *ptr += sizeof(VkExternalSemaphoreFeatureFlags);
4329 }
4330
reservedmarshal_VkPhysicalDeviceMaintenance3Properties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMaintenance3Properties * forMarshaling,uint8_t ** ptr)4331 void reservedmarshal_VkPhysicalDeviceMaintenance3Properties(
4332 VulkanStreamGuest* vkStream, VkStructureType rootType,
4333 const VkPhysicalDeviceMaintenance3Properties* forMarshaling, uint8_t** ptr) {
4334 (void)vkStream;
4335 (void)rootType;
4336 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4337 *ptr += sizeof(VkStructureType);
4338 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4339 rootType = forMarshaling->sType;
4340 }
4341 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4342 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerSetDescriptors, sizeof(uint32_t));
4343 *ptr += sizeof(uint32_t);
4344 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxMemoryAllocationSize, sizeof(VkDeviceSize));
4345 *ptr += sizeof(VkDeviceSize);
4346 }
4347
reservedmarshal_VkDescriptorSetLayoutSupport(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorSetLayoutSupport * forMarshaling,uint8_t ** ptr)4348 void reservedmarshal_VkDescriptorSetLayoutSupport(VulkanStreamGuest* vkStream,
4349 VkStructureType rootType,
4350 const VkDescriptorSetLayoutSupport* forMarshaling,
4351 uint8_t** ptr) {
4352 (void)vkStream;
4353 (void)rootType;
4354 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4355 *ptr += sizeof(VkStructureType);
4356 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4357 rootType = forMarshaling->sType;
4358 }
4359 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4360 memcpy(*ptr, (VkBool32*)&forMarshaling->supported, sizeof(VkBool32));
4361 *ptr += sizeof(VkBool32);
4362 }
4363
reservedmarshal_VkPhysicalDeviceShaderDrawParametersFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceShaderDrawParametersFeatures * forMarshaling,uint8_t ** ptr)4364 void reservedmarshal_VkPhysicalDeviceShaderDrawParametersFeatures(
4365 VulkanStreamGuest* vkStream, VkStructureType rootType,
4366 const VkPhysicalDeviceShaderDrawParametersFeatures* forMarshaling, uint8_t** ptr) {
4367 (void)vkStream;
4368 (void)rootType;
4369 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4370 *ptr += sizeof(VkStructureType);
4371 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4372 rootType = forMarshaling->sType;
4373 }
4374 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4375 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDrawParameters, sizeof(VkBool32));
4376 *ptr += sizeof(VkBool32);
4377 }
4378
4379 #endif
4380 #ifdef VK_VERSION_1_2
reservedmarshal_VkPhysicalDeviceVulkan11Features(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVulkan11Features * forMarshaling,uint8_t ** ptr)4381 void reservedmarshal_VkPhysicalDeviceVulkan11Features(
4382 VulkanStreamGuest* vkStream, VkStructureType rootType,
4383 const VkPhysicalDeviceVulkan11Features* forMarshaling, uint8_t** ptr) {
4384 (void)vkStream;
4385 (void)rootType;
4386 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4387 *ptr += sizeof(VkStructureType);
4388 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4389 rootType = forMarshaling->sType;
4390 }
4391 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4392 memcpy(*ptr, (VkBool32*)&forMarshaling->storageBuffer16BitAccess, sizeof(VkBool32));
4393 *ptr += sizeof(VkBool32);
4394 memcpy(*ptr, (VkBool32*)&forMarshaling->uniformAndStorageBuffer16BitAccess, sizeof(VkBool32));
4395 *ptr += sizeof(VkBool32);
4396 memcpy(*ptr, (VkBool32*)&forMarshaling->storagePushConstant16, sizeof(VkBool32));
4397 *ptr += sizeof(VkBool32);
4398 memcpy(*ptr, (VkBool32*)&forMarshaling->storageInputOutput16, sizeof(VkBool32));
4399 *ptr += sizeof(VkBool32);
4400 memcpy(*ptr, (VkBool32*)&forMarshaling->multiview, sizeof(VkBool32));
4401 *ptr += sizeof(VkBool32);
4402 memcpy(*ptr, (VkBool32*)&forMarshaling->multiviewGeometryShader, sizeof(VkBool32));
4403 *ptr += sizeof(VkBool32);
4404 memcpy(*ptr, (VkBool32*)&forMarshaling->multiviewTessellationShader, sizeof(VkBool32));
4405 *ptr += sizeof(VkBool32);
4406 memcpy(*ptr, (VkBool32*)&forMarshaling->variablePointersStorageBuffer, sizeof(VkBool32));
4407 *ptr += sizeof(VkBool32);
4408 memcpy(*ptr, (VkBool32*)&forMarshaling->variablePointers, sizeof(VkBool32));
4409 *ptr += sizeof(VkBool32);
4410 memcpy(*ptr, (VkBool32*)&forMarshaling->protectedMemory, sizeof(VkBool32));
4411 *ptr += sizeof(VkBool32);
4412 memcpy(*ptr, (VkBool32*)&forMarshaling->samplerYcbcrConversion, sizeof(VkBool32));
4413 *ptr += sizeof(VkBool32);
4414 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDrawParameters, sizeof(VkBool32));
4415 *ptr += sizeof(VkBool32);
4416 }
4417
reservedmarshal_VkPhysicalDeviceVulkan11Properties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVulkan11Properties * forMarshaling,uint8_t ** ptr)4418 void reservedmarshal_VkPhysicalDeviceVulkan11Properties(
4419 VulkanStreamGuest* vkStream, VkStructureType rootType,
4420 const VkPhysicalDeviceVulkan11Properties* forMarshaling, uint8_t** ptr) {
4421 (void)vkStream;
4422 (void)rootType;
4423 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4424 *ptr += sizeof(VkStructureType);
4425 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4426 rootType = forMarshaling->sType;
4427 }
4428 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4429 memcpy(*ptr, (uint8_t*)forMarshaling->deviceUUID, VK_UUID_SIZE * sizeof(uint8_t));
4430 *ptr += VK_UUID_SIZE * sizeof(uint8_t);
4431 memcpy(*ptr, (uint8_t*)forMarshaling->driverUUID, VK_UUID_SIZE * sizeof(uint8_t));
4432 *ptr += VK_UUID_SIZE * sizeof(uint8_t);
4433 memcpy(*ptr, (uint8_t*)forMarshaling->deviceLUID, VK_LUID_SIZE * sizeof(uint8_t));
4434 *ptr += VK_LUID_SIZE * sizeof(uint8_t);
4435 memcpy(*ptr, (uint32_t*)&forMarshaling->deviceNodeMask, sizeof(uint32_t));
4436 *ptr += sizeof(uint32_t);
4437 memcpy(*ptr, (VkBool32*)&forMarshaling->deviceLUIDValid, sizeof(VkBool32));
4438 *ptr += sizeof(VkBool32);
4439 memcpy(*ptr, (uint32_t*)&forMarshaling->subgroupSize, sizeof(uint32_t));
4440 *ptr += sizeof(uint32_t);
4441 memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->subgroupSupportedStages,
4442 sizeof(VkShaderStageFlags));
4443 *ptr += sizeof(VkShaderStageFlags);
4444 memcpy(*ptr, (VkSubgroupFeatureFlags*)&forMarshaling->subgroupSupportedOperations,
4445 sizeof(VkSubgroupFeatureFlags));
4446 *ptr += sizeof(VkSubgroupFeatureFlags);
4447 memcpy(*ptr, (VkBool32*)&forMarshaling->subgroupQuadOperationsInAllStages, sizeof(VkBool32));
4448 *ptr += sizeof(VkBool32);
4449 memcpy(*ptr, (VkPointClippingBehavior*)&forMarshaling->pointClippingBehavior,
4450 sizeof(VkPointClippingBehavior));
4451 *ptr += sizeof(VkPointClippingBehavior);
4452 memcpy(*ptr, (uint32_t*)&forMarshaling->maxMultiviewViewCount, sizeof(uint32_t));
4453 *ptr += sizeof(uint32_t);
4454 memcpy(*ptr, (uint32_t*)&forMarshaling->maxMultiviewInstanceIndex, sizeof(uint32_t));
4455 *ptr += sizeof(uint32_t);
4456 memcpy(*ptr, (VkBool32*)&forMarshaling->protectedNoFault, sizeof(VkBool32));
4457 *ptr += sizeof(VkBool32);
4458 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerSetDescriptors, sizeof(uint32_t));
4459 *ptr += sizeof(uint32_t);
4460 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxMemoryAllocationSize, sizeof(VkDeviceSize));
4461 *ptr += sizeof(VkDeviceSize);
4462 }
4463
reservedmarshal_VkPhysicalDeviceVulkan12Features(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVulkan12Features * forMarshaling,uint8_t ** ptr)4464 void reservedmarshal_VkPhysicalDeviceVulkan12Features(
4465 VulkanStreamGuest* vkStream, VkStructureType rootType,
4466 const VkPhysicalDeviceVulkan12Features* forMarshaling, uint8_t** ptr) {
4467 (void)vkStream;
4468 (void)rootType;
4469 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4470 *ptr += sizeof(VkStructureType);
4471 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4472 rootType = forMarshaling->sType;
4473 }
4474 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4475 memcpy(*ptr, (VkBool32*)&forMarshaling->samplerMirrorClampToEdge, sizeof(VkBool32));
4476 *ptr += sizeof(VkBool32);
4477 memcpy(*ptr, (VkBool32*)&forMarshaling->drawIndirectCount, sizeof(VkBool32));
4478 *ptr += sizeof(VkBool32);
4479 memcpy(*ptr, (VkBool32*)&forMarshaling->storageBuffer8BitAccess, sizeof(VkBool32));
4480 *ptr += sizeof(VkBool32);
4481 memcpy(*ptr, (VkBool32*)&forMarshaling->uniformAndStorageBuffer8BitAccess, sizeof(VkBool32));
4482 *ptr += sizeof(VkBool32);
4483 memcpy(*ptr, (VkBool32*)&forMarshaling->storagePushConstant8, sizeof(VkBool32));
4484 *ptr += sizeof(VkBool32);
4485 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderBufferInt64Atomics, sizeof(VkBool32));
4486 *ptr += sizeof(VkBool32);
4487 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSharedInt64Atomics, sizeof(VkBool32));
4488 *ptr += sizeof(VkBool32);
4489 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderFloat16, sizeof(VkBool32));
4490 *ptr += sizeof(VkBool32);
4491 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInt8, sizeof(VkBool32));
4492 *ptr += sizeof(VkBool32);
4493 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorIndexing, sizeof(VkBool32));
4494 *ptr += sizeof(VkBool32);
4495 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInputAttachmentArrayDynamicIndexing,
4496 sizeof(VkBool32));
4497 *ptr += sizeof(VkBool32);
4498 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformTexelBufferArrayDynamicIndexing,
4499 sizeof(VkBool32));
4500 *ptr += sizeof(VkBool32);
4501 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageTexelBufferArrayDynamicIndexing,
4502 sizeof(VkBool32));
4503 *ptr += sizeof(VkBool32);
4504 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformBufferArrayNonUniformIndexing,
4505 sizeof(VkBool32));
4506 *ptr += sizeof(VkBool32);
4507 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSampledImageArrayNonUniformIndexing,
4508 sizeof(VkBool32));
4509 *ptr += sizeof(VkBool32);
4510 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageBufferArrayNonUniformIndexing,
4511 sizeof(VkBool32));
4512 *ptr += sizeof(VkBool32);
4513 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageArrayNonUniformIndexing,
4514 sizeof(VkBool32));
4515 *ptr += sizeof(VkBool32);
4516 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInputAttachmentArrayNonUniformIndexing,
4517 sizeof(VkBool32));
4518 *ptr += sizeof(VkBool32);
4519 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformTexelBufferArrayNonUniformIndexing,
4520 sizeof(VkBool32));
4521 *ptr += sizeof(VkBool32);
4522 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageTexelBufferArrayNonUniformIndexing,
4523 sizeof(VkBool32));
4524 *ptr += sizeof(VkBool32);
4525 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingUniformBufferUpdateAfterBind,
4526 sizeof(VkBool32));
4527 *ptr += sizeof(VkBool32);
4528 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingSampledImageUpdateAfterBind,
4529 sizeof(VkBool32));
4530 *ptr += sizeof(VkBool32);
4531 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingStorageImageUpdateAfterBind,
4532 sizeof(VkBool32));
4533 *ptr += sizeof(VkBool32);
4534 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingStorageBufferUpdateAfterBind,
4535 sizeof(VkBool32));
4536 *ptr += sizeof(VkBool32);
4537 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingUniformTexelBufferUpdateAfterBind,
4538 sizeof(VkBool32));
4539 *ptr += sizeof(VkBool32);
4540 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingStorageTexelBufferUpdateAfterBind,
4541 sizeof(VkBool32));
4542 *ptr += sizeof(VkBool32);
4543 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingUpdateUnusedWhilePending,
4544 sizeof(VkBool32));
4545 *ptr += sizeof(VkBool32);
4546 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingPartiallyBound, sizeof(VkBool32));
4547 *ptr += sizeof(VkBool32);
4548 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingVariableDescriptorCount,
4549 sizeof(VkBool32));
4550 *ptr += sizeof(VkBool32);
4551 memcpy(*ptr, (VkBool32*)&forMarshaling->runtimeDescriptorArray, sizeof(VkBool32));
4552 *ptr += sizeof(VkBool32);
4553 memcpy(*ptr, (VkBool32*)&forMarshaling->samplerFilterMinmax, sizeof(VkBool32));
4554 *ptr += sizeof(VkBool32);
4555 memcpy(*ptr, (VkBool32*)&forMarshaling->scalarBlockLayout, sizeof(VkBool32));
4556 *ptr += sizeof(VkBool32);
4557 memcpy(*ptr, (VkBool32*)&forMarshaling->imagelessFramebuffer, sizeof(VkBool32));
4558 *ptr += sizeof(VkBool32);
4559 memcpy(*ptr, (VkBool32*)&forMarshaling->uniformBufferStandardLayout, sizeof(VkBool32));
4560 *ptr += sizeof(VkBool32);
4561 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSubgroupExtendedTypes, sizeof(VkBool32));
4562 *ptr += sizeof(VkBool32);
4563 memcpy(*ptr, (VkBool32*)&forMarshaling->separateDepthStencilLayouts, sizeof(VkBool32));
4564 *ptr += sizeof(VkBool32);
4565 memcpy(*ptr, (VkBool32*)&forMarshaling->hostQueryReset, sizeof(VkBool32));
4566 *ptr += sizeof(VkBool32);
4567 memcpy(*ptr, (VkBool32*)&forMarshaling->timelineSemaphore, sizeof(VkBool32));
4568 *ptr += sizeof(VkBool32);
4569 memcpy(*ptr, (VkBool32*)&forMarshaling->bufferDeviceAddress, sizeof(VkBool32));
4570 *ptr += sizeof(VkBool32);
4571 memcpy(*ptr, (VkBool32*)&forMarshaling->bufferDeviceAddressCaptureReplay, sizeof(VkBool32));
4572 *ptr += sizeof(VkBool32);
4573 memcpy(*ptr, (VkBool32*)&forMarshaling->bufferDeviceAddressMultiDevice, sizeof(VkBool32));
4574 *ptr += sizeof(VkBool32);
4575 memcpy(*ptr, (VkBool32*)&forMarshaling->vulkanMemoryModel, sizeof(VkBool32));
4576 *ptr += sizeof(VkBool32);
4577 memcpy(*ptr, (VkBool32*)&forMarshaling->vulkanMemoryModelDeviceScope, sizeof(VkBool32));
4578 *ptr += sizeof(VkBool32);
4579 memcpy(*ptr, (VkBool32*)&forMarshaling->vulkanMemoryModelAvailabilityVisibilityChains,
4580 sizeof(VkBool32));
4581 *ptr += sizeof(VkBool32);
4582 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderOutputViewportIndex, sizeof(VkBool32));
4583 *ptr += sizeof(VkBool32);
4584 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderOutputLayer, sizeof(VkBool32));
4585 *ptr += sizeof(VkBool32);
4586 memcpy(*ptr, (VkBool32*)&forMarshaling->subgroupBroadcastDynamicId, sizeof(VkBool32));
4587 *ptr += sizeof(VkBool32);
4588 }
4589
reservedmarshal_VkConformanceVersion(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkConformanceVersion * forMarshaling,uint8_t ** ptr)4590 void reservedmarshal_VkConformanceVersion(VulkanStreamGuest* vkStream, VkStructureType rootType,
4591 const VkConformanceVersion* forMarshaling,
4592 uint8_t** ptr) {
4593 (void)vkStream;
4594 (void)rootType;
4595 memcpy(*ptr, (uint8_t*)&forMarshaling->major, sizeof(uint8_t));
4596 *ptr += sizeof(uint8_t);
4597 memcpy(*ptr, (uint8_t*)&forMarshaling->minor, sizeof(uint8_t));
4598 *ptr += sizeof(uint8_t);
4599 memcpy(*ptr, (uint8_t*)&forMarshaling->subminor, sizeof(uint8_t));
4600 *ptr += sizeof(uint8_t);
4601 memcpy(*ptr, (uint8_t*)&forMarshaling->patch, sizeof(uint8_t));
4602 *ptr += sizeof(uint8_t);
4603 }
4604
reservedmarshal_VkPhysicalDeviceVulkan12Properties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVulkan12Properties * forMarshaling,uint8_t ** ptr)4605 void reservedmarshal_VkPhysicalDeviceVulkan12Properties(
4606 VulkanStreamGuest* vkStream, VkStructureType rootType,
4607 const VkPhysicalDeviceVulkan12Properties* forMarshaling, uint8_t** ptr) {
4608 (void)vkStream;
4609 (void)rootType;
4610 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4611 *ptr += sizeof(VkStructureType);
4612 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4613 rootType = forMarshaling->sType;
4614 }
4615 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4616 memcpy(*ptr, (VkDriverId*)&forMarshaling->driverID, sizeof(VkDriverId));
4617 *ptr += sizeof(VkDriverId);
4618 memcpy(*ptr, (char*)forMarshaling->driverName, VK_MAX_DRIVER_NAME_SIZE * sizeof(char));
4619 *ptr += VK_MAX_DRIVER_NAME_SIZE * sizeof(char);
4620 memcpy(*ptr, (char*)forMarshaling->driverInfo, VK_MAX_DRIVER_INFO_SIZE * sizeof(char));
4621 *ptr += VK_MAX_DRIVER_INFO_SIZE * sizeof(char);
4622 reservedmarshal_VkConformanceVersion(
4623 vkStream, rootType, (VkConformanceVersion*)(&forMarshaling->conformanceVersion), ptr);
4624 memcpy(*ptr, (VkShaderFloatControlsIndependence*)&forMarshaling->denormBehaviorIndependence,
4625 sizeof(VkShaderFloatControlsIndependence));
4626 *ptr += sizeof(VkShaderFloatControlsIndependence);
4627 memcpy(*ptr, (VkShaderFloatControlsIndependence*)&forMarshaling->roundingModeIndependence,
4628 sizeof(VkShaderFloatControlsIndependence));
4629 *ptr += sizeof(VkShaderFloatControlsIndependence);
4630 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSignedZeroInfNanPreserveFloat16,
4631 sizeof(VkBool32));
4632 *ptr += sizeof(VkBool32);
4633 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSignedZeroInfNanPreserveFloat32,
4634 sizeof(VkBool32));
4635 *ptr += sizeof(VkBool32);
4636 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSignedZeroInfNanPreserveFloat64,
4637 sizeof(VkBool32));
4638 *ptr += sizeof(VkBool32);
4639 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormPreserveFloat16, sizeof(VkBool32));
4640 *ptr += sizeof(VkBool32);
4641 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormPreserveFloat32, sizeof(VkBool32));
4642 *ptr += sizeof(VkBool32);
4643 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormPreserveFloat64, sizeof(VkBool32));
4644 *ptr += sizeof(VkBool32);
4645 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormFlushToZeroFloat16, sizeof(VkBool32));
4646 *ptr += sizeof(VkBool32);
4647 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormFlushToZeroFloat32, sizeof(VkBool32));
4648 *ptr += sizeof(VkBool32);
4649 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormFlushToZeroFloat64, sizeof(VkBool32));
4650 *ptr += sizeof(VkBool32);
4651 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTEFloat16, sizeof(VkBool32));
4652 *ptr += sizeof(VkBool32);
4653 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTEFloat32, sizeof(VkBool32));
4654 *ptr += sizeof(VkBool32);
4655 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTEFloat64, sizeof(VkBool32));
4656 *ptr += sizeof(VkBool32);
4657 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTZFloat16, sizeof(VkBool32));
4658 *ptr += sizeof(VkBool32);
4659 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTZFloat32, sizeof(VkBool32));
4660 *ptr += sizeof(VkBool32);
4661 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTZFloat64, sizeof(VkBool32));
4662 *ptr += sizeof(VkBool32);
4663 memcpy(*ptr, (uint32_t*)&forMarshaling->maxUpdateAfterBindDescriptorsInAllPools,
4664 sizeof(uint32_t));
4665 *ptr += sizeof(uint32_t);
4666 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformBufferArrayNonUniformIndexingNative,
4667 sizeof(VkBool32));
4668 *ptr += sizeof(VkBool32);
4669 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSampledImageArrayNonUniformIndexingNative,
4670 sizeof(VkBool32));
4671 *ptr += sizeof(VkBool32);
4672 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageBufferArrayNonUniformIndexingNative,
4673 sizeof(VkBool32));
4674 *ptr += sizeof(VkBool32);
4675 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageArrayNonUniformIndexingNative,
4676 sizeof(VkBool32));
4677 *ptr += sizeof(VkBool32);
4678 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInputAttachmentArrayNonUniformIndexingNative,
4679 sizeof(VkBool32));
4680 *ptr += sizeof(VkBool32);
4681 memcpy(*ptr, (VkBool32*)&forMarshaling->robustBufferAccessUpdateAfterBind, sizeof(VkBool32));
4682 *ptr += sizeof(VkBool32);
4683 memcpy(*ptr, (VkBool32*)&forMarshaling->quadDivergentImplicitLod, sizeof(VkBool32));
4684 *ptr += sizeof(VkBool32);
4685 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindSamplers,
4686 sizeof(uint32_t));
4687 *ptr += sizeof(uint32_t);
4688 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindUniformBuffers,
4689 sizeof(uint32_t));
4690 *ptr += sizeof(uint32_t);
4691 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindStorageBuffers,
4692 sizeof(uint32_t));
4693 *ptr += sizeof(uint32_t);
4694 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindSampledImages,
4695 sizeof(uint32_t));
4696 *ptr += sizeof(uint32_t);
4697 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindStorageImages,
4698 sizeof(uint32_t));
4699 *ptr += sizeof(uint32_t);
4700 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindInputAttachments,
4701 sizeof(uint32_t));
4702 *ptr += sizeof(uint32_t);
4703 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageUpdateAfterBindResources, sizeof(uint32_t));
4704 *ptr += sizeof(uint32_t);
4705 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindSamplers,
4706 sizeof(uint32_t));
4707 *ptr += sizeof(uint32_t);
4708 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindUniformBuffers,
4709 sizeof(uint32_t));
4710 *ptr += sizeof(uint32_t);
4711 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindUniformBuffersDynamic,
4712 sizeof(uint32_t));
4713 *ptr += sizeof(uint32_t);
4714 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindStorageBuffers,
4715 sizeof(uint32_t));
4716 *ptr += sizeof(uint32_t);
4717 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindStorageBuffersDynamic,
4718 sizeof(uint32_t));
4719 *ptr += sizeof(uint32_t);
4720 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindSampledImages,
4721 sizeof(uint32_t));
4722 *ptr += sizeof(uint32_t);
4723 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindStorageImages,
4724 sizeof(uint32_t));
4725 *ptr += sizeof(uint32_t);
4726 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindInputAttachments,
4727 sizeof(uint32_t));
4728 *ptr += sizeof(uint32_t);
4729 memcpy(*ptr, (VkResolveModeFlags*)&forMarshaling->supportedDepthResolveModes,
4730 sizeof(VkResolveModeFlags));
4731 *ptr += sizeof(VkResolveModeFlags);
4732 memcpy(*ptr, (VkResolveModeFlags*)&forMarshaling->supportedStencilResolveModes,
4733 sizeof(VkResolveModeFlags));
4734 *ptr += sizeof(VkResolveModeFlags);
4735 memcpy(*ptr, (VkBool32*)&forMarshaling->independentResolveNone, sizeof(VkBool32));
4736 *ptr += sizeof(VkBool32);
4737 memcpy(*ptr, (VkBool32*)&forMarshaling->independentResolve, sizeof(VkBool32));
4738 *ptr += sizeof(VkBool32);
4739 memcpy(*ptr, (VkBool32*)&forMarshaling->filterMinmaxSingleComponentFormats, sizeof(VkBool32));
4740 *ptr += sizeof(VkBool32);
4741 memcpy(*ptr, (VkBool32*)&forMarshaling->filterMinmaxImageComponentMapping, sizeof(VkBool32));
4742 *ptr += sizeof(VkBool32);
4743 memcpy(*ptr, (uint64_t*)&forMarshaling->maxTimelineSemaphoreValueDifference, sizeof(uint64_t));
4744 *ptr += sizeof(uint64_t);
4745 memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->framebufferIntegerColorSampleCounts,
4746 sizeof(VkSampleCountFlags));
4747 *ptr += sizeof(VkSampleCountFlags);
4748 }
4749
reservedmarshal_VkImageFormatListCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageFormatListCreateInfo * forMarshaling,uint8_t ** ptr)4750 void reservedmarshal_VkImageFormatListCreateInfo(VulkanStreamGuest* vkStream,
4751 VkStructureType rootType,
4752 const VkImageFormatListCreateInfo* forMarshaling,
4753 uint8_t** ptr) {
4754 (void)vkStream;
4755 (void)rootType;
4756 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4757 *ptr += sizeof(VkStructureType);
4758 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4759 rootType = forMarshaling->sType;
4760 }
4761 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4762 memcpy(*ptr, (uint32_t*)&forMarshaling->viewFormatCount, sizeof(uint32_t));
4763 *ptr += sizeof(uint32_t);
4764 memcpy(*ptr, (const VkFormat*)forMarshaling->pViewFormats,
4765 forMarshaling->viewFormatCount * sizeof(const VkFormat));
4766 *ptr += forMarshaling->viewFormatCount * sizeof(const VkFormat);
4767 }
4768
reservedmarshal_VkAttachmentDescription2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkAttachmentDescription2 * forMarshaling,uint8_t ** ptr)4769 void reservedmarshal_VkAttachmentDescription2(VulkanStreamGuest* vkStream, VkStructureType rootType,
4770 const VkAttachmentDescription2* forMarshaling,
4771 uint8_t** ptr) {
4772 (void)vkStream;
4773 (void)rootType;
4774 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4775 *ptr += sizeof(VkStructureType);
4776 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4777 rootType = forMarshaling->sType;
4778 }
4779 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4780 memcpy(*ptr, (VkAttachmentDescriptionFlags*)&forMarshaling->flags,
4781 sizeof(VkAttachmentDescriptionFlags));
4782 *ptr += sizeof(VkAttachmentDescriptionFlags);
4783 memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
4784 *ptr += sizeof(VkFormat);
4785 memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->samples, sizeof(VkSampleCountFlagBits));
4786 *ptr += sizeof(VkSampleCountFlagBits);
4787 memcpy(*ptr, (VkAttachmentLoadOp*)&forMarshaling->loadOp, sizeof(VkAttachmentLoadOp));
4788 *ptr += sizeof(VkAttachmentLoadOp);
4789 memcpy(*ptr, (VkAttachmentStoreOp*)&forMarshaling->storeOp, sizeof(VkAttachmentStoreOp));
4790 *ptr += sizeof(VkAttachmentStoreOp);
4791 memcpy(*ptr, (VkAttachmentLoadOp*)&forMarshaling->stencilLoadOp, sizeof(VkAttachmentLoadOp));
4792 *ptr += sizeof(VkAttachmentLoadOp);
4793 memcpy(*ptr, (VkAttachmentStoreOp*)&forMarshaling->stencilStoreOp, sizeof(VkAttachmentStoreOp));
4794 *ptr += sizeof(VkAttachmentStoreOp);
4795 memcpy(*ptr, (VkImageLayout*)&forMarshaling->initialLayout, sizeof(VkImageLayout));
4796 *ptr += sizeof(VkImageLayout);
4797 memcpy(*ptr, (VkImageLayout*)&forMarshaling->finalLayout, sizeof(VkImageLayout));
4798 *ptr += sizeof(VkImageLayout);
4799 }
4800
reservedmarshal_VkAttachmentReference2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkAttachmentReference2 * forMarshaling,uint8_t ** ptr)4801 void reservedmarshal_VkAttachmentReference2(VulkanStreamGuest* vkStream, VkStructureType rootType,
4802 const VkAttachmentReference2* forMarshaling,
4803 uint8_t** ptr) {
4804 (void)vkStream;
4805 (void)rootType;
4806 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4807 *ptr += sizeof(VkStructureType);
4808 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4809 rootType = forMarshaling->sType;
4810 }
4811 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4812 memcpy(*ptr, (uint32_t*)&forMarshaling->attachment, sizeof(uint32_t));
4813 *ptr += sizeof(uint32_t);
4814 memcpy(*ptr, (VkImageLayout*)&forMarshaling->layout, sizeof(VkImageLayout));
4815 *ptr += sizeof(VkImageLayout);
4816 memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags));
4817 *ptr += sizeof(VkImageAspectFlags);
4818 }
4819
reservedmarshal_VkSubpassDescription2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubpassDescription2 * forMarshaling,uint8_t ** ptr)4820 void reservedmarshal_VkSubpassDescription2(VulkanStreamGuest* vkStream, VkStructureType rootType,
4821 const VkSubpassDescription2* forMarshaling,
4822 uint8_t** ptr) {
4823 (void)vkStream;
4824 (void)rootType;
4825 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4826 *ptr += sizeof(VkStructureType);
4827 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4828 rootType = forMarshaling->sType;
4829 }
4830 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4831 memcpy(*ptr, (VkSubpassDescriptionFlags*)&forMarshaling->flags,
4832 sizeof(VkSubpassDescriptionFlags));
4833 *ptr += sizeof(VkSubpassDescriptionFlags);
4834 memcpy(*ptr, (VkPipelineBindPoint*)&forMarshaling->pipelineBindPoint,
4835 sizeof(VkPipelineBindPoint));
4836 *ptr += sizeof(VkPipelineBindPoint);
4837 memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t));
4838 *ptr += sizeof(uint32_t);
4839 memcpy(*ptr, (uint32_t*)&forMarshaling->inputAttachmentCount, sizeof(uint32_t));
4840 *ptr += sizeof(uint32_t);
4841 for (uint32_t i = 0; i < (uint32_t)forMarshaling->inputAttachmentCount; ++i) {
4842 reservedmarshal_VkAttachmentReference2(
4843 vkStream, rootType,
4844 (const VkAttachmentReference2*)(forMarshaling->pInputAttachments + i), ptr);
4845 }
4846 memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
4847 *ptr += sizeof(uint32_t);
4848 for (uint32_t i = 0; i < (uint32_t)forMarshaling->colorAttachmentCount; ++i) {
4849 reservedmarshal_VkAttachmentReference2(
4850 vkStream, rootType,
4851 (const VkAttachmentReference2*)(forMarshaling->pColorAttachments + i), ptr);
4852 }
4853 // WARNING PTR CHECK
4854 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pResolveAttachments;
4855 memcpy((*ptr), &cgen_var_0, 8);
4856 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
4857 *ptr += 8;
4858 if (forMarshaling->pResolveAttachments) {
4859 for (uint32_t i = 0; i < (uint32_t)forMarshaling->colorAttachmentCount; ++i) {
4860 reservedmarshal_VkAttachmentReference2(
4861 vkStream, rootType,
4862 (const VkAttachmentReference2*)(forMarshaling->pResolveAttachments + i), ptr);
4863 }
4864 }
4865 // WARNING PTR CHECK
4866 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pDepthStencilAttachment;
4867 memcpy((*ptr), &cgen_var_1, 8);
4868 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
4869 *ptr += 8;
4870 if (forMarshaling->pDepthStencilAttachment) {
4871 reservedmarshal_VkAttachmentReference2(
4872 vkStream, rootType,
4873 (const VkAttachmentReference2*)(forMarshaling->pDepthStencilAttachment), ptr);
4874 }
4875 memcpy(*ptr, (uint32_t*)&forMarshaling->preserveAttachmentCount, sizeof(uint32_t));
4876 *ptr += sizeof(uint32_t);
4877 memcpy(*ptr, (const uint32_t*)forMarshaling->pPreserveAttachments,
4878 forMarshaling->preserveAttachmentCount * sizeof(const uint32_t));
4879 *ptr += forMarshaling->preserveAttachmentCount * sizeof(const uint32_t);
4880 }
4881
reservedmarshal_VkSubpassDependency2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubpassDependency2 * forMarshaling,uint8_t ** ptr)4882 void reservedmarshal_VkSubpassDependency2(VulkanStreamGuest* vkStream, VkStructureType rootType,
4883 const VkSubpassDependency2* forMarshaling,
4884 uint8_t** ptr) {
4885 (void)vkStream;
4886 (void)rootType;
4887 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4888 *ptr += sizeof(VkStructureType);
4889 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4890 rootType = forMarshaling->sType;
4891 }
4892 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4893 memcpy(*ptr, (uint32_t*)&forMarshaling->srcSubpass, sizeof(uint32_t));
4894 *ptr += sizeof(uint32_t);
4895 memcpy(*ptr, (uint32_t*)&forMarshaling->dstSubpass, sizeof(uint32_t));
4896 *ptr += sizeof(uint32_t);
4897 memcpy(*ptr, (VkPipelineStageFlags*)&forMarshaling->srcStageMask, sizeof(VkPipelineStageFlags));
4898 *ptr += sizeof(VkPipelineStageFlags);
4899 memcpy(*ptr, (VkPipelineStageFlags*)&forMarshaling->dstStageMask, sizeof(VkPipelineStageFlags));
4900 *ptr += sizeof(VkPipelineStageFlags);
4901 memcpy(*ptr, (VkAccessFlags*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags));
4902 *ptr += sizeof(VkAccessFlags);
4903 memcpy(*ptr, (VkAccessFlags*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags));
4904 *ptr += sizeof(VkAccessFlags);
4905 memcpy(*ptr, (VkDependencyFlags*)&forMarshaling->dependencyFlags, sizeof(VkDependencyFlags));
4906 *ptr += sizeof(VkDependencyFlags);
4907 memcpy(*ptr, (int32_t*)&forMarshaling->viewOffset, sizeof(int32_t));
4908 *ptr += sizeof(int32_t);
4909 }
4910
reservedmarshal_VkRenderPassCreateInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderPassCreateInfo2 * forMarshaling,uint8_t ** ptr)4911 void reservedmarshal_VkRenderPassCreateInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType,
4912 const VkRenderPassCreateInfo2* forMarshaling,
4913 uint8_t** ptr) {
4914 (void)vkStream;
4915 (void)rootType;
4916 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4917 *ptr += sizeof(VkStructureType);
4918 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4919 rootType = forMarshaling->sType;
4920 }
4921 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4922 memcpy(*ptr, (VkRenderPassCreateFlags*)&forMarshaling->flags, sizeof(VkRenderPassCreateFlags));
4923 *ptr += sizeof(VkRenderPassCreateFlags);
4924 memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t));
4925 *ptr += sizeof(uint32_t);
4926 for (uint32_t i = 0; i < (uint32_t)forMarshaling->attachmentCount; ++i) {
4927 reservedmarshal_VkAttachmentDescription2(
4928 vkStream, rootType, (const VkAttachmentDescription2*)(forMarshaling->pAttachments + i),
4929 ptr);
4930 }
4931 memcpy(*ptr, (uint32_t*)&forMarshaling->subpassCount, sizeof(uint32_t));
4932 *ptr += sizeof(uint32_t);
4933 for (uint32_t i = 0; i < (uint32_t)forMarshaling->subpassCount; ++i) {
4934 reservedmarshal_VkSubpassDescription2(
4935 vkStream, rootType, (const VkSubpassDescription2*)(forMarshaling->pSubpasses + i), ptr);
4936 }
4937 memcpy(*ptr, (uint32_t*)&forMarshaling->dependencyCount, sizeof(uint32_t));
4938 *ptr += sizeof(uint32_t);
4939 for (uint32_t i = 0; i < (uint32_t)forMarshaling->dependencyCount; ++i) {
4940 reservedmarshal_VkSubpassDependency2(
4941 vkStream, rootType, (const VkSubpassDependency2*)(forMarshaling->pDependencies + i),
4942 ptr);
4943 }
4944 memcpy(*ptr, (uint32_t*)&forMarshaling->correlatedViewMaskCount, sizeof(uint32_t));
4945 *ptr += sizeof(uint32_t);
4946 memcpy(*ptr, (const uint32_t*)forMarshaling->pCorrelatedViewMasks,
4947 forMarshaling->correlatedViewMaskCount * sizeof(const uint32_t));
4948 *ptr += forMarshaling->correlatedViewMaskCount * sizeof(const uint32_t);
4949 }
4950
reservedmarshal_VkSubpassBeginInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubpassBeginInfo * forMarshaling,uint8_t ** ptr)4951 void reservedmarshal_VkSubpassBeginInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
4952 const VkSubpassBeginInfo* forMarshaling, uint8_t** ptr) {
4953 (void)vkStream;
4954 (void)rootType;
4955 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4956 *ptr += sizeof(VkStructureType);
4957 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4958 rootType = forMarshaling->sType;
4959 }
4960 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4961 memcpy(*ptr, (VkSubpassContents*)&forMarshaling->contents, sizeof(VkSubpassContents));
4962 *ptr += sizeof(VkSubpassContents);
4963 }
4964
reservedmarshal_VkSubpassEndInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubpassEndInfo * forMarshaling,uint8_t ** ptr)4965 void reservedmarshal_VkSubpassEndInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
4966 const VkSubpassEndInfo* forMarshaling, uint8_t** ptr) {
4967 (void)vkStream;
4968 (void)rootType;
4969 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4970 *ptr += sizeof(VkStructureType);
4971 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4972 rootType = forMarshaling->sType;
4973 }
4974 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4975 }
4976
reservedmarshal_VkPhysicalDevice8BitStorageFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevice8BitStorageFeatures * forMarshaling,uint8_t ** ptr)4977 void reservedmarshal_VkPhysicalDevice8BitStorageFeatures(
4978 VulkanStreamGuest* vkStream, VkStructureType rootType,
4979 const VkPhysicalDevice8BitStorageFeatures* forMarshaling, uint8_t** ptr) {
4980 (void)vkStream;
4981 (void)rootType;
4982 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
4983 *ptr += sizeof(VkStructureType);
4984 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
4985 rootType = forMarshaling->sType;
4986 }
4987 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
4988 memcpy(*ptr, (VkBool32*)&forMarshaling->storageBuffer8BitAccess, sizeof(VkBool32));
4989 *ptr += sizeof(VkBool32);
4990 memcpy(*ptr, (VkBool32*)&forMarshaling->uniformAndStorageBuffer8BitAccess, sizeof(VkBool32));
4991 *ptr += sizeof(VkBool32);
4992 memcpy(*ptr, (VkBool32*)&forMarshaling->storagePushConstant8, sizeof(VkBool32));
4993 *ptr += sizeof(VkBool32);
4994 }
4995
reservedmarshal_VkPhysicalDeviceDriverProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceDriverProperties * forMarshaling,uint8_t ** ptr)4996 void reservedmarshal_VkPhysicalDeviceDriverProperties(
4997 VulkanStreamGuest* vkStream, VkStructureType rootType,
4998 const VkPhysicalDeviceDriverProperties* forMarshaling, uint8_t** ptr) {
4999 (void)vkStream;
5000 (void)rootType;
5001 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5002 *ptr += sizeof(VkStructureType);
5003 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5004 rootType = forMarshaling->sType;
5005 }
5006 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5007 memcpy(*ptr, (VkDriverId*)&forMarshaling->driverID, sizeof(VkDriverId));
5008 *ptr += sizeof(VkDriverId);
5009 memcpy(*ptr, (char*)forMarshaling->driverName, VK_MAX_DRIVER_NAME_SIZE * sizeof(char));
5010 *ptr += VK_MAX_DRIVER_NAME_SIZE * sizeof(char);
5011 memcpy(*ptr, (char*)forMarshaling->driverInfo, VK_MAX_DRIVER_INFO_SIZE * sizeof(char));
5012 *ptr += VK_MAX_DRIVER_INFO_SIZE * sizeof(char);
5013 reservedmarshal_VkConformanceVersion(
5014 vkStream, rootType, (VkConformanceVersion*)(&forMarshaling->conformanceVersion), ptr);
5015 }
5016
reservedmarshal_VkPhysicalDeviceShaderAtomicInt64Features(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceShaderAtomicInt64Features * forMarshaling,uint8_t ** ptr)5017 void reservedmarshal_VkPhysicalDeviceShaderAtomicInt64Features(
5018 VulkanStreamGuest* vkStream, VkStructureType rootType,
5019 const VkPhysicalDeviceShaderAtomicInt64Features* forMarshaling, uint8_t** ptr) {
5020 (void)vkStream;
5021 (void)rootType;
5022 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5023 *ptr += sizeof(VkStructureType);
5024 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5025 rootType = forMarshaling->sType;
5026 }
5027 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5028 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderBufferInt64Atomics, sizeof(VkBool32));
5029 *ptr += sizeof(VkBool32);
5030 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSharedInt64Atomics, sizeof(VkBool32));
5031 *ptr += sizeof(VkBool32);
5032 }
5033
reservedmarshal_VkPhysicalDeviceShaderFloat16Int8Features(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceShaderFloat16Int8Features * forMarshaling,uint8_t ** ptr)5034 void reservedmarshal_VkPhysicalDeviceShaderFloat16Int8Features(
5035 VulkanStreamGuest* vkStream, VkStructureType rootType,
5036 const VkPhysicalDeviceShaderFloat16Int8Features* forMarshaling, uint8_t** ptr) {
5037 (void)vkStream;
5038 (void)rootType;
5039 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5040 *ptr += sizeof(VkStructureType);
5041 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5042 rootType = forMarshaling->sType;
5043 }
5044 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5045 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderFloat16, sizeof(VkBool32));
5046 *ptr += sizeof(VkBool32);
5047 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInt8, sizeof(VkBool32));
5048 *ptr += sizeof(VkBool32);
5049 }
5050
reservedmarshal_VkPhysicalDeviceFloatControlsProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceFloatControlsProperties * forMarshaling,uint8_t ** ptr)5051 void reservedmarshal_VkPhysicalDeviceFloatControlsProperties(
5052 VulkanStreamGuest* vkStream, VkStructureType rootType,
5053 const VkPhysicalDeviceFloatControlsProperties* forMarshaling, uint8_t** ptr) {
5054 (void)vkStream;
5055 (void)rootType;
5056 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5057 *ptr += sizeof(VkStructureType);
5058 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5059 rootType = forMarshaling->sType;
5060 }
5061 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5062 memcpy(*ptr, (VkShaderFloatControlsIndependence*)&forMarshaling->denormBehaviorIndependence,
5063 sizeof(VkShaderFloatControlsIndependence));
5064 *ptr += sizeof(VkShaderFloatControlsIndependence);
5065 memcpy(*ptr, (VkShaderFloatControlsIndependence*)&forMarshaling->roundingModeIndependence,
5066 sizeof(VkShaderFloatControlsIndependence));
5067 *ptr += sizeof(VkShaderFloatControlsIndependence);
5068 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSignedZeroInfNanPreserveFloat16,
5069 sizeof(VkBool32));
5070 *ptr += sizeof(VkBool32);
5071 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSignedZeroInfNanPreserveFloat32,
5072 sizeof(VkBool32));
5073 *ptr += sizeof(VkBool32);
5074 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSignedZeroInfNanPreserveFloat64,
5075 sizeof(VkBool32));
5076 *ptr += sizeof(VkBool32);
5077 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormPreserveFloat16, sizeof(VkBool32));
5078 *ptr += sizeof(VkBool32);
5079 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormPreserveFloat32, sizeof(VkBool32));
5080 *ptr += sizeof(VkBool32);
5081 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormPreserveFloat64, sizeof(VkBool32));
5082 *ptr += sizeof(VkBool32);
5083 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormFlushToZeroFloat16, sizeof(VkBool32));
5084 *ptr += sizeof(VkBool32);
5085 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormFlushToZeroFloat32, sizeof(VkBool32));
5086 *ptr += sizeof(VkBool32);
5087 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormFlushToZeroFloat64, sizeof(VkBool32));
5088 *ptr += sizeof(VkBool32);
5089 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTEFloat16, sizeof(VkBool32));
5090 *ptr += sizeof(VkBool32);
5091 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTEFloat32, sizeof(VkBool32));
5092 *ptr += sizeof(VkBool32);
5093 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTEFloat64, sizeof(VkBool32));
5094 *ptr += sizeof(VkBool32);
5095 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTZFloat16, sizeof(VkBool32));
5096 *ptr += sizeof(VkBool32);
5097 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTZFloat32, sizeof(VkBool32));
5098 *ptr += sizeof(VkBool32);
5099 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTZFloat64, sizeof(VkBool32));
5100 *ptr += sizeof(VkBool32);
5101 }
5102
reservedmarshal_VkDescriptorSetLayoutBindingFlagsCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorSetLayoutBindingFlagsCreateInfo * forMarshaling,uint8_t ** ptr)5103 void reservedmarshal_VkDescriptorSetLayoutBindingFlagsCreateInfo(
5104 VulkanStreamGuest* vkStream, VkStructureType rootType,
5105 const VkDescriptorSetLayoutBindingFlagsCreateInfo* forMarshaling, uint8_t** ptr) {
5106 (void)vkStream;
5107 (void)rootType;
5108 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5109 *ptr += sizeof(VkStructureType);
5110 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5111 rootType = forMarshaling->sType;
5112 }
5113 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5114 memcpy(*ptr, (uint32_t*)&forMarshaling->bindingCount, sizeof(uint32_t));
5115 *ptr += sizeof(uint32_t);
5116 // WARNING PTR CHECK
5117 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pBindingFlags;
5118 memcpy((*ptr), &cgen_var_0, 8);
5119 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
5120 *ptr += 8;
5121 if (forMarshaling->pBindingFlags) {
5122 memcpy(*ptr, (const VkDescriptorBindingFlags*)forMarshaling->pBindingFlags,
5123 forMarshaling->bindingCount * sizeof(const VkDescriptorBindingFlags));
5124 *ptr += forMarshaling->bindingCount * sizeof(const VkDescriptorBindingFlags);
5125 }
5126 }
5127
reservedmarshal_VkPhysicalDeviceDescriptorIndexingFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceDescriptorIndexingFeatures * forMarshaling,uint8_t ** ptr)5128 void reservedmarshal_VkPhysicalDeviceDescriptorIndexingFeatures(
5129 VulkanStreamGuest* vkStream, VkStructureType rootType,
5130 const VkPhysicalDeviceDescriptorIndexingFeatures* forMarshaling, uint8_t** ptr) {
5131 (void)vkStream;
5132 (void)rootType;
5133 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5134 *ptr += sizeof(VkStructureType);
5135 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5136 rootType = forMarshaling->sType;
5137 }
5138 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5139 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInputAttachmentArrayDynamicIndexing,
5140 sizeof(VkBool32));
5141 *ptr += sizeof(VkBool32);
5142 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformTexelBufferArrayDynamicIndexing,
5143 sizeof(VkBool32));
5144 *ptr += sizeof(VkBool32);
5145 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageTexelBufferArrayDynamicIndexing,
5146 sizeof(VkBool32));
5147 *ptr += sizeof(VkBool32);
5148 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformBufferArrayNonUniformIndexing,
5149 sizeof(VkBool32));
5150 *ptr += sizeof(VkBool32);
5151 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSampledImageArrayNonUniformIndexing,
5152 sizeof(VkBool32));
5153 *ptr += sizeof(VkBool32);
5154 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageBufferArrayNonUniformIndexing,
5155 sizeof(VkBool32));
5156 *ptr += sizeof(VkBool32);
5157 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageArrayNonUniformIndexing,
5158 sizeof(VkBool32));
5159 *ptr += sizeof(VkBool32);
5160 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInputAttachmentArrayNonUniformIndexing,
5161 sizeof(VkBool32));
5162 *ptr += sizeof(VkBool32);
5163 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformTexelBufferArrayNonUniformIndexing,
5164 sizeof(VkBool32));
5165 *ptr += sizeof(VkBool32);
5166 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageTexelBufferArrayNonUniformIndexing,
5167 sizeof(VkBool32));
5168 *ptr += sizeof(VkBool32);
5169 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingUniformBufferUpdateAfterBind,
5170 sizeof(VkBool32));
5171 *ptr += sizeof(VkBool32);
5172 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingSampledImageUpdateAfterBind,
5173 sizeof(VkBool32));
5174 *ptr += sizeof(VkBool32);
5175 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingStorageImageUpdateAfterBind,
5176 sizeof(VkBool32));
5177 *ptr += sizeof(VkBool32);
5178 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingStorageBufferUpdateAfterBind,
5179 sizeof(VkBool32));
5180 *ptr += sizeof(VkBool32);
5181 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingUniformTexelBufferUpdateAfterBind,
5182 sizeof(VkBool32));
5183 *ptr += sizeof(VkBool32);
5184 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingStorageTexelBufferUpdateAfterBind,
5185 sizeof(VkBool32));
5186 *ptr += sizeof(VkBool32);
5187 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingUpdateUnusedWhilePending,
5188 sizeof(VkBool32));
5189 *ptr += sizeof(VkBool32);
5190 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingPartiallyBound, sizeof(VkBool32));
5191 *ptr += sizeof(VkBool32);
5192 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingVariableDescriptorCount,
5193 sizeof(VkBool32));
5194 *ptr += sizeof(VkBool32);
5195 memcpy(*ptr, (VkBool32*)&forMarshaling->runtimeDescriptorArray, sizeof(VkBool32));
5196 *ptr += sizeof(VkBool32);
5197 }
5198
reservedmarshal_VkPhysicalDeviceDescriptorIndexingProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceDescriptorIndexingProperties * forMarshaling,uint8_t ** ptr)5199 void reservedmarshal_VkPhysicalDeviceDescriptorIndexingProperties(
5200 VulkanStreamGuest* vkStream, VkStructureType rootType,
5201 const VkPhysicalDeviceDescriptorIndexingProperties* forMarshaling, uint8_t** ptr) {
5202 (void)vkStream;
5203 (void)rootType;
5204 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5205 *ptr += sizeof(VkStructureType);
5206 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5207 rootType = forMarshaling->sType;
5208 }
5209 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5210 memcpy(*ptr, (uint32_t*)&forMarshaling->maxUpdateAfterBindDescriptorsInAllPools,
5211 sizeof(uint32_t));
5212 *ptr += sizeof(uint32_t);
5213 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformBufferArrayNonUniformIndexingNative,
5214 sizeof(VkBool32));
5215 *ptr += sizeof(VkBool32);
5216 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSampledImageArrayNonUniformIndexingNative,
5217 sizeof(VkBool32));
5218 *ptr += sizeof(VkBool32);
5219 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageBufferArrayNonUniformIndexingNative,
5220 sizeof(VkBool32));
5221 *ptr += sizeof(VkBool32);
5222 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageArrayNonUniformIndexingNative,
5223 sizeof(VkBool32));
5224 *ptr += sizeof(VkBool32);
5225 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInputAttachmentArrayNonUniformIndexingNative,
5226 sizeof(VkBool32));
5227 *ptr += sizeof(VkBool32);
5228 memcpy(*ptr, (VkBool32*)&forMarshaling->robustBufferAccessUpdateAfterBind, sizeof(VkBool32));
5229 *ptr += sizeof(VkBool32);
5230 memcpy(*ptr, (VkBool32*)&forMarshaling->quadDivergentImplicitLod, sizeof(VkBool32));
5231 *ptr += sizeof(VkBool32);
5232 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindSamplers,
5233 sizeof(uint32_t));
5234 *ptr += sizeof(uint32_t);
5235 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindUniformBuffers,
5236 sizeof(uint32_t));
5237 *ptr += sizeof(uint32_t);
5238 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindStorageBuffers,
5239 sizeof(uint32_t));
5240 *ptr += sizeof(uint32_t);
5241 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindSampledImages,
5242 sizeof(uint32_t));
5243 *ptr += sizeof(uint32_t);
5244 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindStorageImages,
5245 sizeof(uint32_t));
5246 *ptr += sizeof(uint32_t);
5247 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindInputAttachments,
5248 sizeof(uint32_t));
5249 *ptr += sizeof(uint32_t);
5250 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageUpdateAfterBindResources, sizeof(uint32_t));
5251 *ptr += sizeof(uint32_t);
5252 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindSamplers,
5253 sizeof(uint32_t));
5254 *ptr += sizeof(uint32_t);
5255 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindUniformBuffers,
5256 sizeof(uint32_t));
5257 *ptr += sizeof(uint32_t);
5258 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindUniformBuffersDynamic,
5259 sizeof(uint32_t));
5260 *ptr += sizeof(uint32_t);
5261 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindStorageBuffers,
5262 sizeof(uint32_t));
5263 *ptr += sizeof(uint32_t);
5264 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindStorageBuffersDynamic,
5265 sizeof(uint32_t));
5266 *ptr += sizeof(uint32_t);
5267 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindSampledImages,
5268 sizeof(uint32_t));
5269 *ptr += sizeof(uint32_t);
5270 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindStorageImages,
5271 sizeof(uint32_t));
5272 *ptr += sizeof(uint32_t);
5273 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindInputAttachments,
5274 sizeof(uint32_t));
5275 *ptr += sizeof(uint32_t);
5276 }
5277
reservedmarshal_VkDescriptorSetVariableDescriptorCountAllocateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorSetVariableDescriptorCountAllocateInfo * forMarshaling,uint8_t ** ptr)5278 void reservedmarshal_VkDescriptorSetVariableDescriptorCountAllocateInfo(
5279 VulkanStreamGuest* vkStream, VkStructureType rootType,
5280 const VkDescriptorSetVariableDescriptorCountAllocateInfo* forMarshaling, uint8_t** ptr) {
5281 (void)vkStream;
5282 (void)rootType;
5283 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5284 *ptr += sizeof(VkStructureType);
5285 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5286 rootType = forMarshaling->sType;
5287 }
5288 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5289 memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorSetCount, sizeof(uint32_t));
5290 *ptr += sizeof(uint32_t);
5291 memcpy(*ptr, (const uint32_t*)forMarshaling->pDescriptorCounts,
5292 forMarshaling->descriptorSetCount * sizeof(const uint32_t));
5293 *ptr += forMarshaling->descriptorSetCount * sizeof(const uint32_t);
5294 }
5295
reservedmarshal_VkDescriptorSetVariableDescriptorCountLayoutSupport(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorSetVariableDescriptorCountLayoutSupport * forMarshaling,uint8_t ** ptr)5296 void reservedmarshal_VkDescriptorSetVariableDescriptorCountLayoutSupport(
5297 VulkanStreamGuest* vkStream, VkStructureType rootType,
5298 const VkDescriptorSetVariableDescriptorCountLayoutSupport* forMarshaling, uint8_t** ptr) {
5299 (void)vkStream;
5300 (void)rootType;
5301 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5302 *ptr += sizeof(VkStructureType);
5303 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5304 rootType = forMarshaling->sType;
5305 }
5306 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5307 memcpy(*ptr, (uint32_t*)&forMarshaling->maxVariableDescriptorCount, sizeof(uint32_t));
5308 *ptr += sizeof(uint32_t);
5309 }
5310
reservedmarshal_VkSubpassDescriptionDepthStencilResolve(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubpassDescriptionDepthStencilResolve * forMarshaling,uint8_t ** ptr)5311 void reservedmarshal_VkSubpassDescriptionDepthStencilResolve(
5312 VulkanStreamGuest* vkStream, VkStructureType rootType,
5313 const VkSubpassDescriptionDepthStencilResolve* forMarshaling, uint8_t** ptr) {
5314 (void)vkStream;
5315 (void)rootType;
5316 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5317 *ptr += sizeof(VkStructureType);
5318 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5319 rootType = forMarshaling->sType;
5320 }
5321 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5322 memcpy(*ptr, (VkResolveModeFlagBits*)&forMarshaling->depthResolveMode,
5323 sizeof(VkResolveModeFlagBits));
5324 *ptr += sizeof(VkResolveModeFlagBits);
5325 memcpy(*ptr, (VkResolveModeFlagBits*)&forMarshaling->stencilResolveMode,
5326 sizeof(VkResolveModeFlagBits));
5327 *ptr += sizeof(VkResolveModeFlagBits);
5328 // WARNING PTR CHECK
5329 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pDepthStencilResolveAttachment;
5330 memcpy((*ptr), &cgen_var_0, 8);
5331 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
5332 *ptr += 8;
5333 if (forMarshaling->pDepthStencilResolveAttachment) {
5334 reservedmarshal_VkAttachmentReference2(
5335 vkStream, rootType,
5336 (const VkAttachmentReference2*)(forMarshaling->pDepthStencilResolveAttachment), ptr);
5337 }
5338 }
5339
reservedmarshal_VkPhysicalDeviceDepthStencilResolveProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceDepthStencilResolveProperties * forMarshaling,uint8_t ** ptr)5340 void reservedmarshal_VkPhysicalDeviceDepthStencilResolveProperties(
5341 VulkanStreamGuest* vkStream, VkStructureType rootType,
5342 const VkPhysicalDeviceDepthStencilResolveProperties* forMarshaling, uint8_t** ptr) {
5343 (void)vkStream;
5344 (void)rootType;
5345 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5346 *ptr += sizeof(VkStructureType);
5347 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5348 rootType = forMarshaling->sType;
5349 }
5350 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5351 memcpy(*ptr, (VkResolveModeFlags*)&forMarshaling->supportedDepthResolveModes,
5352 sizeof(VkResolveModeFlags));
5353 *ptr += sizeof(VkResolveModeFlags);
5354 memcpy(*ptr, (VkResolveModeFlags*)&forMarshaling->supportedStencilResolveModes,
5355 sizeof(VkResolveModeFlags));
5356 *ptr += sizeof(VkResolveModeFlags);
5357 memcpy(*ptr, (VkBool32*)&forMarshaling->independentResolveNone, sizeof(VkBool32));
5358 *ptr += sizeof(VkBool32);
5359 memcpy(*ptr, (VkBool32*)&forMarshaling->independentResolve, sizeof(VkBool32));
5360 *ptr += sizeof(VkBool32);
5361 }
5362
reservedmarshal_VkPhysicalDeviceScalarBlockLayoutFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceScalarBlockLayoutFeatures * forMarshaling,uint8_t ** ptr)5363 void reservedmarshal_VkPhysicalDeviceScalarBlockLayoutFeatures(
5364 VulkanStreamGuest* vkStream, VkStructureType rootType,
5365 const VkPhysicalDeviceScalarBlockLayoutFeatures* forMarshaling, uint8_t** ptr) {
5366 (void)vkStream;
5367 (void)rootType;
5368 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5369 *ptr += sizeof(VkStructureType);
5370 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5371 rootType = forMarshaling->sType;
5372 }
5373 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5374 memcpy(*ptr, (VkBool32*)&forMarshaling->scalarBlockLayout, sizeof(VkBool32));
5375 *ptr += sizeof(VkBool32);
5376 }
5377
reservedmarshal_VkImageStencilUsageCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageStencilUsageCreateInfo * forMarshaling,uint8_t ** ptr)5378 void reservedmarshal_VkImageStencilUsageCreateInfo(
5379 VulkanStreamGuest* vkStream, VkStructureType rootType,
5380 const VkImageStencilUsageCreateInfo* forMarshaling, uint8_t** ptr) {
5381 (void)vkStream;
5382 (void)rootType;
5383 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5384 *ptr += sizeof(VkStructureType);
5385 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5386 rootType = forMarshaling->sType;
5387 }
5388 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5389 memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->stencilUsage, sizeof(VkImageUsageFlags));
5390 *ptr += sizeof(VkImageUsageFlags);
5391 }
5392
reservedmarshal_VkSamplerReductionModeCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSamplerReductionModeCreateInfo * forMarshaling,uint8_t ** ptr)5393 void reservedmarshal_VkSamplerReductionModeCreateInfo(
5394 VulkanStreamGuest* vkStream, VkStructureType rootType,
5395 const VkSamplerReductionModeCreateInfo* forMarshaling, uint8_t** ptr) {
5396 (void)vkStream;
5397 (void)rootType;
5398 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5399 *ptr += sizeof(VkStructureType);
5400 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5401 rootType = forMarshaling->sType;
5402 }
5403 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5404 memcpy(*ptr, (VkSamplerReductionMode*)&forMarshaling->reductionMode,
5405 sizeof(VkSamplerReductionMode));
5406 *ptr += sizeof(VkSamplerReductionMode);
5407 }
5408
reservedmarshal_VkPhysicalDeviceSamplerFilterMinmaxProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceSamplerFilterMinmaxProperties * forMarshaling,uint8_t ** ptr)5409 void reservedmarshal_VkPhysicalDeviceSamplerFilterMinmaxProperties(
5410 VulkanStreamGuest* vkStream, VkStructureType rootType,
5411 const VkPhysicalDeviceSamplerFilterMinmaxProperties* forMarshaling, uint8_t** ptr) {
5412 (void)vkStream;
5413 (void)rootType;
5414 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5415 *ptr += sizeof(VkStructureType);
5416 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5417 rootType = forMarshaling->sType;
5418 }
5419 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5420 memcpy(*ptr, (VkBool32*)&forMarshaling->filterMinmaxSingleComponentFormats, sizeof(VkBool32));
5421 *ptr += sizeof(VkBool32);
5422 memcpy(*ptr, (VkBool32*)&forMarshaling->filterMinmaxImageComponentMapping, sizeof(VkBool32));
5423 *ptr += sizeof(VkBool32);
5424 }
5425
reservedmarshal_VkPhysicalDeviceVulkanMemoryModelFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVulkanMemoryModelFeatures * forMarshaling,uint8_t ** ptr)5426 void reservedmarshal_VkPhysicalDeviceVulkanMemoryModelFeatures(
5427 VulkanStreamGuest* vkStream, VkStructureType rootType,
5428 const VkPhysicalDeviceVulkanMemoryModelFeatures* forMarshaling, uint8_t** ptr) {
5429 (void)vkStream;
5430 (void)rootType;
5431 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5432 *ptr += sizeof(VkStructureType);
5433 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5434 rootType = forMarshaling->sType;
5435 }
5436 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5437 memcpy(*ptr, (VkBool32*)&forMarshaling->vulkanMemoryModel, sizeof(VkBool32));
5438 *ptr += sizeof(VkBool32);
5439 memcpy(*ptr, (VkBool32*)&forMarshaling->vulkanMemoryModelDeviceScope, sizeof(VkBool32));
5440 *ptr += sizeof(VkBool32);
5441 memcpy(*ptr, (VkBool32*)&forMarshaling->vulkanMemoryModelAvailabilityVisibilityChains,
5442 sizeof(VkBool32));
5443 *ptr += sizeof(VkBool32);
5444 }
5445
reservedmarshal_VkPhysicalDeviceImagelessFramebufferFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceImagelessFramebufferFeatures * forMarshaling,uint8_t ** ptr)5446 void reservedmarshal_VkPhysicalDeviceImagelessFramebufferFeatures(
5447 VulkanStreamGuest* vkStream, VkStructureType rootType,
5448 const VkPhysicalDeviceImagelessFramebufferFeatures* forMarshaling, uint8_t** ptr) {
5449 (void)vkStream;
5450 (void)rootType;
5451 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5452 *ptr += sizeof(VkStructureType);
5453 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5454 rootType = forMarshaling->sType;
5455 }
5456 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5457 memcpy(*ptr, (VkBool32*)&forMarshaling->imagelessFramebuffer, sizeof(VkBool32));
5458 *ptr += sizeof(VkBool32);
5459 }
5460
reservedmarshal_VkFramebufferAttachmentImageInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkFramebufferAttachmentImageInfo * forMarshaling,uint8_t ** ptr)5461 void reservedmarshal_VkFramebufferAttachmentImageInfo(
5462 VulkanStreamGuest* vkStream, VkStructureType rootType,
5463 const VkFramebufferAttachmentImageInfo* forMarshaling, uint8_t** ptr) {
5464 (void)vkStream;
5465 (void)rootType;
5466 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5467 *ptr += sizeof(VkStructureType);
5468 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5469 rootType = forMarshaling->sType;
5470 }
5471 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5472 memcpy(*ptr, (VkImageCreateFlags*)&forMarshaling->flags, sizeof(VkImageCreateFlags));
5473 *ptr += sizeof(VkImageCreateFlags);
5474 memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->usage, sizeof(VkImageUsageFlags));
5475 *ptr += sizeof(VkImageUsageFlags);
5476 memcpy(*ptr, (uint32_t*)&forMarshaling->width, sizeof(uint32_t));
5477 *ptr += sizeof(uint32_t);
5478 memcpy(*ptr, (uint32_t*)&forMarshaling->height, sizeof(uint32_t));
5479 *ptr += sizeof(uint32_t);
5480 memcpy(*ptr, (uint32_t*)&forMarshaling->layerCount, sizeof(uint32_t));
5481 *ptr += sizeof(uint32_t);
5482 memcpy(*ptr, (uint32_t*)&forMarshaling->viewFormatCount, sizeof(uint32_t));
5483 *ptr += sizeof(uint32_t);
5484 memcpy(*ptr, (const VkFormat*)forMarshaling->pViewFormats,
5485 forMarshaling->viewFormatCount * sizeof(const VkFormat));
5486 *ptr += forMarshaling->viewFormatCount * sizeof(const VkFormat);
5487 }
5488
reservedmarshal_VkFramebufferAttachmentsCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkFramebufferAttachmentsCreateInfo * forMarshaling,uint8_t ** ptr)5489 void reservedmarshal_VkFramebufferAttachmentsCreateInfo(
5490 VulkanStreamGuest* vkStream, VkStructureType rootType,
5491 const VkFramebufferAttachmentsCreateInfo* forMarshaling, uint8_t** ptr) {
5492 (void)vkStream;
5493 (void)rootType;
5494 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5495 *ptr += sizeof(VkStructureType);
5496 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5497 rootType = forMarshaling->sType;
5498 }
5499 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5500 memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentImageInfoCount, sizeof(uint32_t));
5501 *ptr += sizeof(uint32_t);
5502 for (uint32_t i = 0; i < (uint32_t)forMarshaling->attachmentImageInfoCount; ++i) {
5503 reservedmarshal_VkFramebufferAttachmentImageInfo(
5504 vkStream, rootType,
5505 (const VkFramebufferAttachmentImageInfo*)(forMarshaling->pAttachmentImageInfos + i),
5506 ptr);
5507 }
5508 }
5509
reservedmarshal_VkRenderPassAttachmentBeginInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderPassAttachmentBeginInfo * forMarshaling,uint8_t ** ptr)5510 void reservedmarshal_VkRenderPassAttachmentBeginInfo(
5511 VulkanStreamGuest* vkStream, VkStructureType rootType,
5512 const VkRenderPassAttachmentBeginInfo* forMarshaling, uint8_t** ptr) {
5513 (void)vkStream;
5514 (void)rootType;
5515 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5516 *ptr += sizeof(VkStructureType);
5517 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5518 rootType = forMarshaling->sType;
5519 }
5520 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5521 memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t));
5522 *ptr += sizeof(uint32_t);
5523 if (forMarshaling->attachmentCount) {
5524 uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr);
5525 if (forMarshaling) {
5526 for (uint32_t k = 0; k < forMarshaling->attachmentCount; ++k) {
5527 uint64_t tmpval = get_host_u64_VkImageView(forMarshaling->pAttachments[k]);
5528 memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t));
5529 }
5530 }
5531 *ptr += 8 * forMarshaling->attachmentCount;
5532 }
5533 }
5534
reservedmarshal_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceUniformBufferStandardLayoutFeatures * forMarshaling,uint8_t ** ptr)5535 void reservedmarshal_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(
5536 VulkanStreamGuest* vkStream, VkStructureType rootType,
5537 const VkPhysicalDeviceUniformBufferStandardLayoutFeatures* forMarshaling, uint8_t** ptr) {
5538 (void)vkStream;
5539 (void)rootType;
5540 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5541 *ptr += sizeof(VkStructureType);
5542 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5543 rootType = forMarshaling->sType;
5544 }
5545 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5546 memcpy(*ptr, (VkBool32*)&forMarshaling->uniformBufferStandardLayout, sizeof(VkBool32));
5547 *ptr += sizeof(VkBool32);
5548 }
5549
reservedmarshal_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures * forMarshaling,uint8_t ** ptr)5550 void reservedmarshal_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(
5551 VulkanStreamGuest* vkStream, VkStructureType rootType,
5552 const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures* forMarshaling, uint8_t** ptr) {
5553 (void)vkStream;
5554 (void)rootType;
5555 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5556 *ptr += sizeof(VkStructureType);
5557 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5558 rootType = forMarshaling->sType;
5559 }
5560 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5561 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSubgroupExtendedTypes, sizeof(VkBool32));
5562 *ptr += sizeof(VkBool32);
5563 }
5564
reservedmarshal_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures * forMarshaling,uint8_t ** ptr)5565 void reservedmarshal_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(
5566 VulkanStreamGuest* vkStream, VkStructureType rootType,
5567 const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* forMarshaling, uint8_t** ptr) {
5568 (void)vkStream;
5569 (void)rootType;
5570 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5571 *ptr += sizeof(VkStructureType);
5572 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5573 rootType = forMarshaling->sType;
5574 }
5575 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5576 memcpy(*ptr, (VkBool32*)&forMarshaling->separateDepthStencilLayouts, sizeof(VkBool32));
5577 *ptr += sizeof(VkBool32);
5578 }
5579
reservedmarshal_VkAttachmentReferenceStencilLayout(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkAttachmentReferenceStencilLayout * forMarshaling,uint8_t ** ptr)5580 void reservedmarshal_VkAttachmentReferenceStencilLayout(
5581 VulkanStreamGuest* vkStream, VkStructureType rootType,
5582 const VkAttachmentReferenceStencilLayout* forMarshaling, uint8_t** ptr) {
5583 (void)vkStream;
5584 (void)rootType;
5585 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5586 *ptr += sizeof(VkStructureType);
5587 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5588 rootType = forMarshaling->sType;
5589 }
5590 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5591 memcpy(*ptr, (VkImageLayout*)&forMarshaling->stencilLayout, sizeof(VkImageLayout));
5592 *ptr += sizeof(VkImageLayout);
5593 }
5594
reservedmarshal_VkAttachmentDescriptionStencilLayout(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkAttachmentDescriptionStencilLayout * forMarshaling,uint8_t ** ptr)5595 void reservedmarshal_VkAttachmentDescriptionStencilLayout(
5596 VulkanStreamGuest* vkStream, VkStructureType rootType,
5597 const VkAttachmentDescriptionStencilLayout* forMarshaling, uint8_t** ptr) {
5598 (void)vkStream;
5599 (void)rootType;
5600 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5601 *ptr += sizeof(VkStructureType);
5602 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5603 rootType = forMarshaling->sType;
5604 }
5605 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5606 memcpy(*ptr, (VkImageLayout*)&forMarshaling->stencilInitialLayout, sizeof(VkImageLayout));
5607 *ptr += sizeof(VkImageLayout);
5608 memcpy(*ptr, (VkImageLayout*)&forMarshaling->stencilFinalLayout, sizeof(VkImageLayout));
5609 *ptr += sizeof(VkImageLayout);
5610 }
5611
reservedmarshal_VkPhysicalDeviceHostQueryResetFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceHostQueryResetFeatures * forMarshaling,uint8_t ** ptr)5612 void reservedmarshal_VkPhysicalDeviceHostQueryResetFeatures(
5613 VulkanStreamGuest* vkStream, VkStructureType rootType,
5614 const VkPhysicalDeviceHostQueryResetFeatures* forMarshaling, uint8_t** ptr) {
5615 (void)vkStream;
5616 (void)rootType;
5617 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5618 *ptr += sizeof(VkStructureType);
5619 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5620 rootType = forMarshaling->sType;
5621 }
5622 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5623 memcpy(*ptr, (VkBool32*)&forMarshaling->hostQueryReset, sizeof(VkBool32));
5624 *ptr += sizeof(VkBool32);
5625 }
5626
reservedmarshal_VkPhysicalDeviceTimelineSemaphoreFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceTimelineSemaphoreFeatures * forMarshaling,uint8_t ** ptr)5627 void reservedmarshal_VkPhysicalDeviceTimelineSemaphoreFeatures(
5628 VulkanStreamGuest* vkStream, VkStructureType rootType,
5629 const VkPhysicalDeviceTimelineSemaphoreFeatures* forMarshaling, uint8_t** ptr) {
5630 (void)vkStream;
5631 (void)rootType;
5632 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5633 *ptr += sizeof(VkStructureType);
5634 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5635 rootType = forMarshaling->sType;
5636 }
5637 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5638 memcpy(*ptr, (VkBool32*)&forMarshaling->timelineSemaphore, sizeof(VkBool32));
5639 *ptr += sizeof(VkBool32);
5640 }
5641
reservedmarshal_VkPhysicalDeviceTimelineSemaphoreProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceTimelineSemaphoreProperties * forMarshaling,uint8_t ** ptr)5642 void reservedmarshal_VkPhysicalDeviceTimelineSemaphoreProperties(
5643 VulkanStreamGuest* vkStream, VkStructureType rootType,
5644 const VkPhysicalDeviceTimelineSemaphoreProperties* forMarshaling, uint8_t** ptr) {
5645 (void)vkStream;
5646 (void)rootType;
5647 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5648 *ptr += sizeof(VkStructureType);
5649 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5650 rootType = forMarshaling->sType;
5651 }
5652 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5653 memcpy(*ptr, (uint64_t*)&forMarshaling->maxTimelineSemaphoreValueDifference, sizeof(uint64_t));
5654 *ptr += sizeof(uint64_t);
5655 }
5656
reservedmarshal_VkSemaphoreTypeCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSemaphoreTypeCreateInfo * forMarshaling,uint8_t ** ptr)5657 void reservedmarshal_VkSemaphoreTypeCreateInfo(VulkanStreamGuest* vkStream,
5658 VkStructureType rootType,
5659 const VkSemaphoreTypeCreateInfo* forMarshaling,
5660 uint8_t** ptr) {
5661 (void)vkStream;
5662 (void)rootType;
5663 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5664 *ptr += sizeof(VkStructureType);
5665 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5666 rootType = forMarshaling->sType;
5667 }
5668 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5669 memcpy(*ptr, (VkSemaphoreType*)&forMarshaling->semaphoreType, sizeof(VkSemaphoreType));
5670 *ptr += sizeof(VkSemaphoreType);
5671 memcpy(*ptr, (uint64_t*)&forMarshaling->initialValue, sizeof(uint64_t));
5672 *ptr += sizeof(uint64_t);
5673 }
5674
reservedmarshal_VkTimelineSemaphoreSubmitInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkTimelineSemaphoreSubmitInfo * forMarshaling,uint8_t ** ptr)5675 void reservedmarshal_VkTimelineSemaphoreSubmitInfo(
5676 VulkanStreamGuest* vkStream, VkStructureType rootType,
5677 const VkTimelineSemaphoreSubmitInfo* forMarshaling, uint8_t** ptr) {
5678 (void)vkStream;
5679 (void)rootType;
5680 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5681 *ptr += sizeof(VkStructureType);
5682 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5683 rootType = forMarshaling->sType;
5684 }
5685 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5686 memcpy(*ptr, (uint32_t*)&forMarshaling->waitSemaphoreValueCount, sizeof(uint32_t));
5687 *ptr += sizeof(uint32_t);
5688 // WARNING PTR CHECK
5689 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pWaitSemaphoreValues;
5690 memcpy((*ptr), &cgen_var_0, 8);
5691 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
5692 *ptr += 8;
5693 if (forMarshaling->pWaitSemaphoreValues) {
5694 memcpy(*ptr, (const uint64_t*)forMarshaling->pWaitSemaphoreValues,
5695 forMarshaling->waitSemaphoreValueCount * sizeof(const uint64_t));
5696 *ptr += forMarshaling->waitSemaphoreValueCount * sizeof(const uint64_t);
5697 }
5698 memcpy(*ptr, (uint32_t*)&forMarshaling->signalSemaphoreValueCount, sizeof(uint32_t));
5699 *ptr += sizeof(uint32_t);
5700 // WARNING PTR CHECK
5701 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pSignalSemaphoreValues;
5702 memcpy((*ptr), &cgen_var_1, 8);
5703 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
5704 *ptr += 8;
5705 if (forMarshaling->pSignalSemaphoreValues) {
5706 memcpy(*ptr, (const uint64_t*)forMarshaling->pSignalSemaphoreValues,
5707 forMarshaling->signalSemaphoreValueCount * sizeof(const uint64_t));
5708 *ptr += forMarshaling->signalSemaphoreValueCount * sizeof(const uint64_t);
5709 }
5710 }
5711
reservedmarshal_VkSemaphoreWaitInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSemaphoreWaitInfo * forMarshaling,uint8_t ** ptr)5712 void reservedmarshal_VkSemaphoreWaitInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
5713 const VkSemaphoreWaitInfo* forMarshaling, uint8_t** ptr) {
5714 (void)vkStream;
5715 (void)rootType;
5716 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5717 *ptr += sizeof(VkStructureType);
5718 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5719 rootType = forMarshaling->sType;
5720 }
5721 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5722 memcpy(*ptr, (VkSemaphoreWaitFlags*)&forMarshaling->flags, sizeof(VkSemaphoreWaitFlags));
5723 *ptr += sizeof(VkSemaphoreWaitFlags);
5724 memcpy(*ptr, (uint32_t*)&forMarshaling->semaphoreCount, sizeof(uint32_t));
5725 *ptr += sizeof(uint32_t);
5726 if (forMarshaling->semaphoreCount) {
5727 uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr);
5728 if (forMarshaling) {
5729 for (uint32_t k = 0; k < forMarshaling->semaphoreCount; ++k) {
5730 uint64_t tmpval = get_host_u64_VkSemaphore(forMarshaling->pSemaphores[k]);
5731 memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t));
5732 }
5733 }
5734 *ptr += 8 * forMarshaling->semaphoreCount;
5735 }
5736 memcpy(*ptr, (const uint64_t*)forMarshaling->pValues,
5737 forMarshaling->semaphoreCount * sizeof(const uint64_t));
5738 *ptr += forMarshaling->semaphoreCount * sizeof(const uint64_t);
5739 }
5740
reservedmarshal_VkSemaphoreSignalInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSemaphoreSignalInfo * forMarshaling,uint8_t ** ptr)5741 void reservedmarshal_VkSemaphoreSignalInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
5742 const VkSemaphoreSignalInfo* forMarshaling,
5743 uint8_t** ptr) {
5744 (void)vkStream;
5745 (void)rootType;
5746 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5747 *ptr += sizeof(VkStructureType);
5748 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5749 rootType = forMarshaling->sType;
5750 }
5751 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5752 uint64_t cgen_var_0;
5753 *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore));
5754 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
5755 *ptr += 1 * 8;
5756 memcpy(*ptr, (uint64_t*)&forMarshaling->value, sizeof(uint64_t));
5757 *ptr += sizeof(uint64_t);
5758 }
5759
reservedmarshal_VkPhysicalDeviceBufferDeviceAddressFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceBufferDeviceAddressFeatures * forMarshaling,uint8_t ** ptr)5760 void reservedmarshal_VkPhysicalDeviceBufferDeviceAddressFeatures(
5761 VulkanStreamGuest* vkStream, VkStructureType rootType,
5762 const VkPhysicalDeviceBufferDeviceAddressFeatures* forMarshaling, uint8_t** ptr) {
5763 (void)vkStream;
5764 (void)rootType;
5765 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5766 *ptr += sizeof(VkStructureType);
5767 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5768 rootType = forMarshaling->sType;
5769 }
5770 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5771 memcpy(*ptr, (VkBool32*)&forMarshaling->bufferDeviceAddress, sizeof(VkBool32));
5772 *ptr += sizeof(VkBool32);
5773 memcpy(*ptr, (VkBool32*)&forMarshaling->bufferDeviceAddressCaptureReplay, sizeof(VkBool32));
5774 *ptr += sizeof(VkBool32);
5775 memcpy(*ptr, (VkBool32*)&forMarshaling->bufferDeviceAddressMultiDevice, sizeof(VkBool32));
5776 *ptr += sizeof(VkBool32);
5777 }
5778
reservedmarshal_VkBufferDeviceAddressInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferDeviceAddressInfo * forMarshaling,uint8_t ** ptr)5779 void reservedmarshal_VkBufferDeviceAddressInfo(VulkanStreamGuest* vkStream,
5780 VkStructureType rootType,
5781 const VkBufferDeviceAddressInfo* forMarshaling,
5782 uint8_t** ptr) {
5783 (void)vkStream;
5784 (void)rootType;
5785 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5786 *ptr += sizeof(VkStructureType);
5787 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5788 rootType = forMarshaling->sType;
5789 }
5790 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5791 uint64_t cgen_var_0;
5792 *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer));
5793 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
5794 *ptr += 1 * 8;
5795 }
5796
reservedmarshal_VkBufferOpaqueCaptureAddressCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferOpaqueCaptureAddressCreateInfo * forMarshaling,uint8_t ** ptr)5797 void reservedmarshal_VkBufferOpaqueCaptureAddressCreateInfo(
5798 VulkanStreamGuest* vkStream, VkStructureType rootType,
5799 const VkBufferOpaqueCaptureAddressCreateInfo* forMarshaling, uint8_t** ptr) {
5800 (void)vkStream;
5801 (void)rootType;
5802 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5803 *ptr += sizeof(VkStructureType);
5804 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5805 rootType = forMarshaling->sType;
5806 }
5807 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5808 memcpy(*ptr, (uint64_t*)&forMarshaling->opaqueCaptureAddress, sizeof(uint64_t));
5809 *ptr += sizeof(uint64_t);
5810 }
5811
reservedmarshal_VkMemoryOpaqueCaptureAddressAllocateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryOpaqueCaptureAddressAllocateInfo * forMarshaling,uint8_t ** ptr)5812 void reservedmarshal_VkMemoryOpaqueCaptureAddressAllocateInfo(
5813 VulkanStreamGuest* vkStream, VkStructureType rootType,
5814 const VkMemoryOpaqueCaptureAddressAllocateInfo* forMarshaling, uint8_t** ptr) {
5815 (void)vkStream;
5816 (void)rootType;
5817 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5818 *ptr += sizeof(VkStructureType);
5819 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5820 rootType = forMarshaling->sType;
5821 }
5822 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5823 memcpy(*ptr, (uint64_t*)&forMarshaling->opaqueCaptureAddress, sizeof(uint64_t));
5824 *ptr += sizeof(uint64_t);
5825 }
5826
reservedmarshal_VkDeviceMemoryOpaqueCaptureAddressInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceMemoryOpaqueCaptureAddressInfo * forMarshaling,uint8_t ** ptr)5827 void reservedmarshal_VkDeviceMemoryOpaqueCaptureAddressInfo(
5828 VulkanStreamGuest* vkStream, VkStructureType rootType,
5829 const VkDeviceMemoryOpaqueCaptureAddressInfo* forMarshaling, uint8_t** ptr) {
5830 (void)vkStream;
5831 (void)rootType;
5832 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5833 *ptr += sizeof(VkStructureType);
5834 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5835 rootType = forMarshaling->sType;
5836 }
5837 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5838 uint64_t cgen_var_0;
5839 *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory));
5840 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
5841 *ptr += 1 * 8;
5842 }
5843
5844 #endif
5845 #ifdef VK_VERSION_1_3
reservedmarshal_VkPhysicalDeviceVulkan13Features(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVulkan13Features * forMarshaling,uint8_t ** ptr)5846 void reservedmarshal_VkPhysicalDeviceVulkan13Features(
5847 VulkanStreamGuest* vkStream, VkStructureType rootType,
5848 const VkPhysicalDeviceVulkan13Features* forMarshaling, uint8_t** ptr) {
5849 (void)vkStream;
5850 (void)rootType;
5851 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5852 *ptr += sizeof(VkStructureType);
5853 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5854 rootType = forMarshaling->sType;
5855 }
5856 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5857 memcpy(*ptr, (VkBool32*)&forMarshaling->robustImageAccess, sizeof(VkBool32));
5858 *ptr += sizeof(VkBool32);
5859 memcpy(*ptr, (VkBool32*)&forMarshaling->inlineUniformBlock, sizeof(VkBool32));
5860 *ptr += sizeof(VkBool32);
5861 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingInlineUniformBlockUpdateAfterBind,
5862 sizeof(VkBool32));
5863 *ptr += sizeof(VkBool32);
5864 memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineCreationCacheControl, sizeof(VkBool32));
5865 *ptr += sizeof(VkBool32);
5866 memcpy(*ptr, (VkBool32*)&forMarshaling->privateData, sizeof(VkBool32));
5867 *ptr += sizeof(VkBool32);
5868 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDemoteToHelperInvocation, sizeof(VkBool32));
5869 *ptr += sizeof(VkBool32);
5870 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderTerminateInvocation, sizeof(VkBool32));
5871 *ptr += sizeof(VkBool32);
5872 memcpy(*ptr, (VkBool32*)&forMarshaling->subgroupSizeControl, sizeof(VkBool32));
5873 *ptr += sizeof(VkBool32);
5874 memcpy(*ptr, (VkBool32*)&forMarshaling->computeFullSubgroups, sizeof(VkBool32));
5875 *ptr += sizeof(VkBool32);
5876 memcpy(*ptr, (VkBool32*)&forMarshaling->synchronization2, sizeof(VkBool32));
5877 *ptr += sizeof(VkBool32);
5878 memcpy(*ptr, (VkBool32*)&forMarshaling->textureCompressionASTC_HDR, sizeof(VkBool32));
5879 *ptr += sizeof(VkBool32);
5880 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderZeroInitializeWorkgroupMemory, sizeof(VkBool32));
5881 *ptr += sizeof(VkBool32);
5882 memcpy(*ptr, (VkBool32*)&forMarshaling->dynamicRendering, sizeof(VkBool32));
5883 *ptr += sizeof(VkBool32);
5884 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderIntegerDotProduct, sizeof(VkBool32));
5885 *ptr += sizeof(VkBool32);
5886 memcpy(*ptr, (VkBool32*)&forMarshaling->maintenance4, sizeof(VkBool32));
5887 *ptr += sizeof(VkBool32);
5888 }
5889
reservedmarshal_VkPhysicalDeviceVulkan13Properties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVulkan13Properties * forMarshaling,uint8_t ** ptr)5890 void reservedmarshal_VkPhysicalDeviceVulkan13Properties(
5891 VulkanStreamGuest* vkStream, VkStructureType rootType,
5892 const VkPhysicalDeviceVulkan13Properties* forMarshaling, uint8_t** ptr) {
5893 (void)vkStream;
5894 (void)rootType;
5895 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
5896 *ptr += sizeof(VkStructureType);
5897 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
5898 rootType = forMarshaling->sType;
5899 }
5900 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
5901 memcpy(*ptr, (uint32_t*)&forMarshaling->minSubgroupSize, sizeof(uint32_t));
5902 *ptr += sizeof(uint32_t);
5903 memcpy(*ptr, (uint32_t*)&forMarshaling->maxSubgroupSize, sizeof(uint32_t));
5904 *ptr += sizeof(uint32_t);
5905 memcpy(*ptr, (uint32_t*)&forMarshaling->maxComputeWorkgroupSubgroups, sizeof(uint32_t));
5906 *ptr += sizeof(uint32_t);
5907 memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->requiredSubgroupSizeStages,
5908 sizeof(VkShaderStageFlags));
5909 *ptr += sizeof(VkShaderStageFlags);
5910 memcpy(*ptr, (uint32_t*)&forMarshaling->maxInlineUniformBlockSize, sizeof(uint32_t));
5911 *ptr += sizeof(uint32_t);
5912 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorInlineUniformBlocks,
5913 sizeof(uint32_t));
5914 *ptr += sizeof(uint32_t);
5915 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks,
5916 sizeof(uint32_t));
5917 *ptr += sizeof(uint32_t);
5918 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetInlineUniformBlocks, sizeof(uint32_t));
5919 *ptr += sizeof(uint32_t);
5920 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindInlineUniformBlocks,
5921 sizeof(uint32_t));
5922 *ptr += sizeof(uint32_t);
5923 memcpy(*ptr, (uint32_t*)&forMarshaling->maxInlineUniformTotalSize, sizeof(uint32_t));
5924 *ptr += sizeof(uint32_t);
5925 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitUnsignedAccelerated,
5926 sizeof(VkBool32));
5927 *ptr += sizeof(VkBool32);
5928 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitSignedAccelerated,
5929 sizeof(VkBool32));
5930 *ptr += sizeof(VkBool32);
5931 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitMixedSignednessAccelerated,
5932 sizeof(VkBool32));
5933 *ptr += sizeof(VkBool32);
5934 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedUnsignedAccelerated,
5935 sizeof(VkBool32));
5936 *ptr += sizeof(VkBool32);
5937 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedSignedAccelerated,
5938 sizeof(VkBool32));
5939 *ptr += sizeof(VkBool32);
5940 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedMixedSignednessAccelerated,
5941 sizeof(VkBool32));
5942 *ptr += sizeof(VkBool32);
5943 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitUnsignedAccelerated,
5944 sizeof(VkBool32));
5945 *ptr += sizeof(VkBool32);
5946 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitSignedAccelerated,
5947 sizeof(VkBool32));
5948 *ptr += sizeof(VkBool32);
5949 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitMixedSignednessAccelerated,
5950 sizeof(VkBool32));
5951 *ptr += sizeof(VkBool32);
5952 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitUnsignedAccelerated,
5953 sizeof(VkBool32));
5954 *ptr += sizeof(VkBool32);
5955 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitSignedAccelerated,
5956 sizeof(VkBool32));
5957 *ptr += sizeof(VkBool32);
5958 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitMixedSignednessAccelerated,
5959 sizeof(VkBool32));
5960 *ptr += sizeof(VkBool32);
5961 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitUnsignedAccelerated,
5962 sizeof(VkBool32));
5963 *ptr += sizeof(VkBool32);
5964 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitSignedAccelerated,
5965 sizeof(VkBool32));
5966 *ptr += sizeof(VkBool32);
5967 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitMixedSignednessAccelerated,
5968 sizeof(VkBool32));
5969 *ptr += sizeof(VkBool32);
5970 memcpy(
5971 *ptr,
5972 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated,
5973 sizeof(VkBool32));
5974 *ptr += sizeof(VkBool32);
5975 memcpy(*ptr,
5976 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitSignedAccelerated,
5977 sizeof(VkBool32));
5978 *ptr += sizeof(VkBool32);
5979 memcpy(*ptr,
5980 (VkBool32*)&forMarshaling
5981 ->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated,
5982 sizeof(VkBool32));
5983 *ptr += sizeof(VkBool32);
5984 memcpy(*ptr,
5985 (VkBool32*)&forMarshaling
5986 ->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated,
5987 sizeof(VkBool32));
5988 *ptr += sizeof(VkBool32);
5989 memcpy(*ptr,
5990 (VkBool32*)&forMarshaling
5991 ->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated,
5992 sizeof(VkBool32));
5993 *ptr += sizeof(VkBool32);
5994 memcpy(*ptr,
5995 (VkBool32*)&forMarshaling
5996 ->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated,
5997 sizeof(VkBool32));
5998 *ptr += sizeof(VkBool32);
5999 memcpy(
6000 *ptr,
6001 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated,
6002 sizeof(VkBool32));
6003 *ptr += sizeof(VkBool32);
6004 memcpy(*ptr,
6005 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitSignedAccelerated,
6006 sizeof(VkBool32));
6007 *ptr += sizeof(VkBool32);
6008 memcpy(*ptr,
6009 (VkBool32*)&forMarshaling
6010 ->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated,
6011 sizeof(VkBool32));
6012 *ptr += sizeof(VkBool32);
6013 memcpy(
6014 *ptr,
6015 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated,
6016 sizeof(VkBool32));
6017 *ptr += sizeof(VkBool32);
6018 memcpy(*ptr,
6019 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitSignedAccelerated,
6020 sizeof(VkBool32));
6021 *ptr += sizeof(VkBool32);
6022 memcpy(*ptr,
6023 (VkBool32*)&forMarshaling
6024 ->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated,
6025 sizeof(VkBool32));
6026 *ptr += sizeof(VkBool32);
6027 memcpy(
6028 *ptr,
6029 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated,
6030 sizeof(VkBool32));
6031 *ptr += sizeof(VkBool32);
6032 memcpy(*ptr,
6033 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitSignedAccelerated,
6034 sizeof(VkBool32));
6035 *ptr += sizeof(VkBool32);
6036 memcpy(*ptr,
6037 (VkBool32*)&forMarshaling
6038 ->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated,
6039 sizeof(VkBool32));
6040 *ptr += sizeof(VkBool32);
6041 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->storageTexelBufferOffsetAlignmentBytes,
6042 sizeof(VkDeviceSize));
6043 *ptr += sizeof(VkDeviceSize);
6044 memcpy(*ptr, (VkBool32*)&forMarshaling->storageTexelBufferOffsetSingleTexelAlignment,
6045 sizeof(VkBool32));
6046 *ptr += sizeof(VkBool32);
6047 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->uniformTexelBufferOffsetAlignmentBytes,
6048 sizeof(VkDeviceSize));
6049 *ptr += sizeof(VkDeviceSize);
6050 memcpy(*ptr, (VkBool32*)&forMarshaling->uniformTexelBufferOffsetSingleTexelAlignment,
6051 sizeof(VkBool32));
6052 *ptr += sizeof(VkBool32);
6053 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxBufferSize, sizeof(VkDeviceSize));
6054 *ptr += sizeof(VkDeviceSize);
6055 }
6056
reservedmarshal_VkPipelineCreationFeedback(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineCreationFeedback * forMarshaling,uint8_t ** ptr)6057 void reservedmarshal_VkPipelineCreationFeedback(VulkanStreamGuest* vkStream,
6058 VkStructureType rootType,
6059 const VkPipelineCreationFeedback* forMarshaling,
6060 uint8_t** ptr) {
6061 (void)vkStream;
6062 (void)rootType;
6063 memcpy(*ptr, (VkPipelineCreationFeedbackFlags*)&forMarshaling->flags,
6064 sizeof(VkPipelineCreationFeedbackFlags));
6065 *ptr += sizeof(VkPipelineCreationFeedbackFlags);
6066 memcpy(*ptr, (uint64_t*)&forMarshaling->duration, sizeof(uint64_t));
6067 *ptr += sizeof(uint64_t);
6068 }
6069
reservedmarshal_VkPipelineCreationFeedbackCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineCreationFeedbackCreateInfo * forMarshaling,uint8_t ** ptr)6070 void reservedmarshal_VkPipelineCreationFeedbackCreateInfo(
6071 VulkanStreamGuest* vkStream, VkStructureType rootType,
6072 const VkPipelineCreationFeedbackCreateInfo* forMarshaling, uint8_t** ptr) {
6073 (void)vkStream;
6074 (void)rootType;
6075 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6076 *ptr += sizeof(VkStructureType);
6077 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6078 rootType = forMarshaling->sType;
6079 }
6080 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6081 reservedmarshal_VkPipelineCreationFeedback(
6082 vkStream, rootType, (VkPipelineCreationFeedback*)(forMarshaling->pPipelineCreationFeedback),
6083 ptr);
6084 memcpy(*ptr, (uint32_t*)&forMarshaling->pipelineStageCreationFeedbackCount, sizeof(uint32_t));
6085 *ptr += sizeof(uint32_t);
6086 for (uint32_t i = 0; i < (uint32_t)forMarshaling->pipelineStageCreationFeedbackCount; ++i) {
6087 reservedmarshal_VkPipelineCreationFeedback(
6088 vkStream, rootType,
6089 (VkPipelineCreationFeedback*)(forMarshaling->pPipelineStageCreationFeedbacks + i), ptr);
6090 }
6091 }
6092
reservedmarshal_VkPhysicalDeviceShaderTerminateInvocationFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceShaderTerminateInvocationFeatures * forMarshaling,uint8_t ** ptr)6093 void reservedmarshal_VkPhysicalDeviceShaderTerminateInvocationFeatures(
6094 VulkanStreamGuest* vkStream, VkStructureType rootType,
6095 const VkPhysicalDeviceShaderTerminateInvocationFeatures* forMarshaling, uint8_t** ptr) {
6096 (void)vkStream;
6097 (void)rootType;
6098 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6099 *ptr += sizeof(VkStructureType);
6100 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6101 rootType = forMarshaling->sType;
6102 }
6103 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6104 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderTerminateInvocation, sizeof(VkBool32));
6105 *ptr += sizeof(VkBool32);
6106 }
6107
reservedmarshal_VkPhysicalDeviceToolProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceToolProperties * forMarshaling,uint8_t ** ptr)6108 void reservedmarshal_VkPhysicalDeviceToolProperties(
6109 VulkanStreamGuest* vkStream, VkStructureType rootType,
6110 const VkPhysicalDeviceToolProperties* forMarshaling, uint8_t** ptr) {
6111 (void)vkStream;
6112 (void)rootType;
6113 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6114 *ptr += sizeof(VkStructureType);
6115 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6116 rootType = forMarshaling->sType;
6117 }
6118 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6119 memcpy(*ptr, (char*)forMarshaling->name, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char));
6120 *ptr += VK_MAX_EXTENSION_NAME_SIZE * sizeof(char);
6121 memcpy(*ptr, (char*)forMarshaling->version, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char));
6122 *ptr += VK_MAX_EXTENSION_NAME_SIZE * sizeof(char);
6123 memcpy(*ptr, (VkToolPurposeFlags*)&forMarshaling->purposes, sizeof(VkToolPurposeFlags));
6124 *ptr += sizeof(VkToolPurposeFlags);
6125 memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
6126 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
6127 memcpy(*ptr, (char*)forMarshaling->layer, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char));
6128 *ptr += VK_MAX_EXTENSION_NAME_SIZE * sizeof(char);
6129 }
6130
reservedmarshal_VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures * forMarshaling,uint8_t ** ptr)6131 void reservedmarshal_VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures(
6132 VulkanStreamGuest* vkStream, VkStructureType rootType,
6133 const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures* forMarshaling, uint8_t** ptr) {
6134 (void)vkStream;
6135 (void)rootType;
6136 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6137 *ptr += sizeof(VkStructureType);
6138 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6139 rootType = forMarshaling->sType;
6140 }
6141 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6142 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDemoteToHelperInvocation, sizeof(VkBool32));
6143 *ptr += sizeof(VkBool32);
6144 }
6145
reservedmarshal_VkPhysicalDevicePrivateDataFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePrivateDataFeatures * forMarshaling,uint8_t ** ptr)6146 void reservedmarshal_VkPhysicalDevicePrivateDataFeatures(
6147 VulkanStreamGuest* vkStream, VkStructureType rootType,
6148 const VkPhysicalDevicePrivateDataFeatures* forMarshaling, uint8_t** ptr) {
6149 (void)vkStream;
6150 (void)rootType;
6151 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6152 *ptr += sizeof(VkStructureType);
6153 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6154 rootType = forMarshaling->sType;
6155 }
6156 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6157 memcpy(*ptr, (VkBool32*)&forMarshaling->privateData, sizeof(VkBool32));
6158 *ptr += sizeof(VkBool32);
6159 }
6160
reservedmarshal_VkDevicePrivateDataCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDevicePrivateDataCreateInfo * forMarshaling,uint8_t ** ptr)6161 void reservedmarshal_VkDevicePrivateDataCreateInfo(
6162 VulkanStreamGuest* vkStream, VkStructureType rootType,
6163 const VkDevicePrivateDataCreateInfo* forMarshaling, uint8_t** ptr) {
6164 (void)vkStream;
6165 (void)rootType;
6166 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6167 *ptr += sizeof(VkStructureType);
6168 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6169 rootType = forMarshaling->sType;
6170 }
6171 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6172 memcpy(*ptr, (uint32_t*)&forMarshaling->privateDataSlotRequestCount, sizeof(uint32_t));
6173 *ptr += sizeof(uint32_t);
6174 }
6175
reservedmarshal_VkPrivateDataSlotCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPrivateDataSlotCreateInfo * forMarshaling,uint8_t ** ptr)6176 void reservedmarshal_VkPrivateDataSlotCreateInfo(VulkanStreamGuest* vkStream,
6177 VkStructureType rootType,
6178 const VkPrivateDataSlotCreateInfo* forMarshaling,
6179 uint8_t** ptr) {
6180 (void)vkStream;
6181 (void)rootType;
6182 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6183 *ptr += sizeof(VkStructureType);
6184 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6185 rootType = forMarshaling->sType;
6186 }
6187 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6188 memcpy(*ptr, (VkPrivateDataSlotCreateFlags*)&forMarshaling->flags,
6189 sizeof(VkPrivateDataSlotCreateFlags));
6190 *ptr += sizeof(VkPrivateDataSlotCreateFlags);
6191 }
6192
reservedmarshal_VkPhysicalDevicePipelineCreationCacheControlFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePipelineCreationCacheControlFeatures * forMarshaling,uint8_t ** ptr)6193 void reservedmarshal_VkPhysicalDevicePipelineCreationCacheControlFeatures(
6194 VulkanStreamGuest* vkStream, VkStructureType rootType,
6195 const VkPhysicalDevicePipelineCreationCacheControlFeatures* forMarshaling, uint8_t** ptr) {
6196 (void)vkStream;
6197 (void)rootType;
6198 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6199 *ptr += sizeof(VkStructureType);
6200 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6201 rootType = forMarshaling->sType;
6202 }
6203 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6204 memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineCreationCacheControl, sizeof(VkBool32));
6205 *ptr += sizeof(VkBool32);
6206 }
6207
reservedmarshal_VkMemoryBarrier2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryBarrier2 * forMarshaling,uint8_t ** ptr)6208 void reservedmarshal_VkMemoryBarrier2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6209 const VkMemoryBarrier2* forMarshaling, uint8_t** ptr) {
6210 (void)vkStream;
6211 (void)rootType;
6212 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6213 *ptr += sizeof(VkStructureType);
6214 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6215 rootType = forMarshaling->sType;
6216 }
6217 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6218 memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->srcStageMask,
6219 sizeof(VkPipelineStageFlags2));
6220 *ptr += sizeof(VkPipelineStageFlags2);
6221 memcpy(*ptr, (VkAccessFlags2*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags2));
6222 *ptr += sizeof(VkAccessFlags2);
6223 memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->dstStageMask,
6224 sizeof(VkPipelineStageFlags2));
6225 *ptr += sizeof(VkPipelineStageFlags2);
6226 memcpy(*ptr, (VkAccessFlags2*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags2));
6227 *ptr += sizeof(VkAccessFlags2);
6228 }
6229
reservedmarshal_VkBufferMemoryBarrier2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferMemoryBarrier2 * forMarshaling,uint8_t ** ptr)6230 void reservedmarshal_VkBufferMemoryBarrier2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6231 const VkBufferMemoryBarrier2* forMarshaling,
6232 uint8_t** ptr) {
6233 (void)vkStream;
6234 (void)rootType;
6235 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6236 *ptr += sizeof(VkStructureType);
6237 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6238 rootType = forMarshaling->sType;
6239 }
6240 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6241 memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->srcStageMask,
6242 sizeof(VkPipelineStageFlags2));
6243 *ptr += sizeof(VkPipelineStageFlags2);
6244 memcpy(*ptr, (VkAccessFlags2*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags2));
6245 *ptr += sizeof(VkAccessFlags2);
6246 memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->dstStageMask,
6247 sizeof(VkPipelineStageFlags2));
6248 *ptr += sizeof(VkPipelineStageFlags2);
6249 memcpy(*ptr, (VkAccessFlags2*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags2));
6250 *ptr += sizeof(VkAccessFlags2);
6251 memcpy(*ptr, (uint32_t*)&forMarshaling->srcQueueFamilyIndex, sizeof(uint32_t));
6252 *ptr += sizeof(uint32_t);
6253 memcpy(*ptr, (uint32_t*)&forMarshaling->dstQueueFamilyIndex, sizeof(uint32_t));
6254 *ptr += sizeof(uint32_t);
6255 uint64_t cgen_var_0;
6256 *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer));
6257 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
6258 *ptr += 1 * 8;
6259 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize));
6260 *ptr += sizeof(VkDeviceSize);
6261 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
6262 *ptr += sizeof(VkDeviceSize);
6263 }
6264
reservedmarshal_VkImageMemoryBarrier2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageMemoryBarrier2 * forMarshaling,uint8_t ** ptr)6265 void reservedmarshal_VkImageMemoryBarrier2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6266 const VkImageMemoryBarrier2* forMarshaling,
6267 uint8_t** ptr) {
6268 (void)vkStream;
6269 (void)rootType;
6270 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6271 *ptr += sizeof(VkStructureType);
6272 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6273 rootType = forMarshaling->sType;
6274 }
6275 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6276 memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->srcStageMask,
6277 sizeof(VkPipelineStageFlags2));
6278 *ptr += sizeof(VkPipelineStageFlags2);
6279 memcpy(*ptr, (VkAccessFlags2*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags2));
6280 *ptr += sizeof(VkAccessFlags2);
6281 memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->dstStageMask,
6282 sizeof(VkPipelineStageFlags2));
6283 *ptr += sizeof(VkPipelineStageFlags2);
6284 memcpy(*ptr, (VkAccessFlags2*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags2));
6285 *ptr += sizeof(VkAccessFlags2);
6286 memcpy(*ptr, (VkImageLayout*)&forMarshaling->oldLayout, sizeof(VkImageLayout));
6287 *ptr += sizeof(VkImageLayout);
6288 memcpy(*ptr, (VkImageLayout*)&forMarshaling->newLayout, sizeof(VkImageLayout));
6289 *ptr += sizeof(VkImageLayout);
6290 memcpy(*ptr, (uint32_t*)&forMarshaling->srcQueueFamilyIndex, sizeof(uint32_t));
6291 *ptr += sizeof(uint32_t);
6292 memcpy(*ptr, (uint32_t*)&forMarshaling->dstQueueFamilyIndex, sizeof(uint32_t));
6293 *ptr += sizeof(uint32_t);
6294 uint64_t cgen_var_0;
6295 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image));
6296 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
6297 *ptr += 1 * 8;
6298 reservedmarshal_VkImageSubresourceRange(
6299 vkStream, rootType, (VkImageSubresourceRange*)(&forMarshaling->subresourceRange), ptr);
6300 }
6301
reservedmarshal_VkDependencyInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDependencyInfo * forMarshaling,uint8_t ** ptr)6302 void reservedmarshal_VkDependencyInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
6303 const VkDependencyInfo* forMarshaling, uint8_t** ptr) {
6304 (void)vkStream;
6305 (void)rootType;
6306 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6307 *ptr += sizeof(VkStructureType);
6308 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6309 rootType = forMarshaling->sType;
6310 }
6311 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6312 memcpy(*ptr, (VkDependencyFlags*)&forMarshaling->dependencyFlags, sizeof(VkDependencyFlags));
6313 *ptr += sizeof(VkDependencyFlags);
6314 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryBarrierCount, sizeof(uint32_t));
6315 *ptr += sizeof(uint32_t);
6316 for (uint32_t i = 0; i < (uint32_t)forMarshaling->memoryBarrierCount; ++i) {
6317 reservedmarshal_VkMemoryBarrier2(
6318 vkStream, rootType, (const VkMemoryBarrier2*)(forMarshaling->pMemoryBarriers + i), ptr);
6319 }
6320 memcpy(*ptr, (uint32_t*)&forMarshaling->bufferMemoryBarrierCount, sizeof(uint32_t));
6321 *ptr += sizeof(uint32_t);
6322 for (uint32_t i = 0; i < (uint32_t)forMarshaling->bufferMemoryBarrierCount; ++i) {
6323 reservedmarshal_VkBufferMemoryBarrier2(
6324 vkStream, rootType,
6325 (const VkBufferMemoryBarrier2*)(forMarshaling->pBufferMemoryBarriers + i), ptr);
6326 }
6327 memcpy(*ptr, (uint32_t*)&forMarshaling->imageMemoryBarrierCount, sizeof(uint32_t));
6328 *ptr += sizeof(uint32_t);
6329 for (uint32_t i = 0; i < (uint32_t)forMarshaling->imageMemoryBarrierCount; ++i) {
6330 reservedmarshal_VkImageMemoryBarrier2(
6331 vkStream, rootType,
6332 (const VkImageMemoryBarrier2*)(forMarshaling->pImageMemoryBarriers + i), ptr);
6333 }
6334 }
6335
reservedmarshal_VkSemaphoreSubmitInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSemaphoreSubmitInfo * forMarshaling,uint8_t ** ptr)6336 void reservedmarshal_VkSemaphoreSubmitInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
6337 const VkSemaphoreSubmitInfo* forMarshaling,
6338 uint8_t** ptr) {
6339 (void)vkStream;
6340 (void)rootType;
6341 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6342 *ptr += sizeof(VkStructureType);
6343 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6344 rootType = forMarshaling->sType;
6345 }
6346 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6347 uint64_t cgen_var_0;
6348 *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore));
6349 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
6350 *ptr += 1 * 8;
6351 memcpy(*ptr, (uint64_t*)&forMarshaling->value, sizeof(uint64_t));
6352 *ptr += sizeof(uint64_t);
6353 memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->stageMask, sizeof(VkPipelineStageFlags2));
6354 *ptr += sizeof(VkPipelineStageFlags2);
6355 memcpy(*ptr, (uint32_t*)&forMarshaling->deviceIndex, sizeof(uint32_t));
6356 *ptr += sizeof(uint32_t);
6357 }
6358
reservedmarshal_VkCommandBufferSubmitInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCommandBufferSubmitInfo * forMarshaling,uint8_t ** ptr)6359 void reservedmarshal_VkCommandBufferSubmitInfo(VulkanStreamGuest* vkStream,
6360 VkStructureType rootType,
6361 const VkCommandBufferSubmitInfo* forMarshaling,
6362 uint8_t** ptr) {
6363 (void)vkStream;
6364 (void)rootType;
6365 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6366 *ptr += sizeof(VkStructureType);
6367 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6368 rootType = forMarshaling->sType;
6369 }
6370 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6371 uint64_t cgen_var_0;
6372 *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&forMarshaling->commandBuffer));
6373 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
6374 *ptr += 1 * 8;
6375 memcpy(*ptr, (uint32_t*)&forMarshaling->deviceMask, sizeof(uint32_t));
6376 *ptr += sizeof(uint32_t);
6377 }
6378
reservedmarshal_VkSubmitInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubmitInfo2 * forMarshaling,uint8_t ** ptr)6379 void reservedmarshal_VkSubmitInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6380 const VkSubmitInfo2* forMarshaling, uint8_t** ptr) {
6381 (void)vkStream;
6382 (void)rootType;
6383 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6384 *ptr += sizeof(VkStructureType);
6385 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6386 rootType = forMarshaling->sType;
6387 }
6388 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6389 memcpy(*ptr, (VkSubmitFlags*)&forMarshaling->flags, sizeof(VkSubmitFlags));
6390 *ptr += sizeof(VkSubmitFlags);
6391 memcpy(*ptr, (uint32_t*)&forMarshaling->waitSemaphoreInfoCount, sizeof(uint32_t));
6392 *ptr += sizeof(uint32_t);
6393 for (uint32_t i = 0; i < (uint32_t)forMarshaling->waitSemaphoreInfoCount; ++i) {
6394 reservedmarshal_VkSemaphoreSubmitInfo(
6395 vkStream, rootType,
6396 (const VkSemaphoreSubmitInfo*)(forMarshaling->pWaitSemaphoreInfos + i), ptr);
6397 }
6398 memcpy(*ptr, (uint32_t*)&forMarshaling->commandBufferInfoCount, sizeof(uint32_t));
6399 *ptr += sizeof(uint32_t);
6400 for (uint32_t i = 0; i < (uint32_t)forMarshaling->commandBufferInfoCount; ++i) {
6401 reservedmarshal_VkCommandBufferSubmitInfo(
6402 vkStream, rootType,
6403 (const VkCommandBufferSubmitInfo*)(forMarshaling->pCommandBufferInfos + i), ptr);
6404 }
6405 memcpy(*ptr, (uint32_t*)&forMarshaling->signalSemaphoreInfoCount, sizeof(uint32_t));
6406 *ptr += sizeof(uint32_t);
6407 for (uint32_t i = 0; i < (uint32_t)forMarshaling->signalSemaphoreInfoCount; ++i) {
6408 reservedmarshal_VkSemaphoreSubmitInfo(
6409 vkStream, rootType,
6410 (const VkSemaphoreSubmitInfo*)(forMarshaling->pSignalSemaphoreInfos + i), ptr);
6411 }
6412 }
6413
reservedmarshal_VkPhysicalDeviceSynchronization2Features(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceSynchronization2Features * forMarshaling,uint8_t ** ptr)6414 void reservedmarshal_VkPhysicalDeviceSynchronization2Features(
6415 VulkanStreamGuest* vkStream, VkStructureType rootType,
6416 const VkPhysicalDeviceSynchronization2Features* forMarshaling, uint8_t** ptr) {
6417 (void)vkStream;
6418 (void)rootType;
6419 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6420 *ptr += sizeof(VkStructureType);
6421 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6422 rootType = forMarshaling->sType;
6423 }
6424 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6425 memcpy(*ptr, (VkBool32*)&forMarshaling->synchronization2, sizeof(VkBool32));
6426 *ptr += sizeof(VkBool32);
6427 }
6428
reservedmarshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures * forMarshaling,uint8_t ** ptr)6429 void reservedmarshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures(
6430 VulkanStreamGuest* vkStream, VkStructureType rootType,
6431 const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures* forMarshaling, uint8_t** ptr) {
6432 (void)vkStream;
6433 (void)rootType;
6434 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6435 *ptr += sizeof(VkStructureType);
6436 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6437 rootType = forMarshaling->sType;
6438 }
6439 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6440 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderZeroInitializeWorkgroupMemory, sizeof(VkBool32));
6441 *ptr += sizeof(VkBool32);
6442 }
6443
reservedmarshal_VkPhysicalDeviceImageRobustnessFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceImageRobustnessFeatures * forMarshaling,uint8_t ** ptr)6444 void reservedmarshal_VkPhysicalDeviceImageRobustnessFeatures(
6445 VulkanStreamGuest* vkStream, VkStructureType rootType,
6446 const VkPhysicalDeviceImageRobustnessFeatures* forMarshaling, uint8_t** ptr) {
6447 (void)vkStream;
6448 (void)rootType;
6449 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6450 *ptr += sizeof(VkStructureType);
6451 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6452 rootType = forMarshaling->sType;
6453 }
6454 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6455 memcpy(*ptr, (VkBool32*)&forMarshaling->robustImageAccess, sizeof(VkBool32));
6456 *ptr += sizeof(VkBool32);
6457 }
6458
reservedmarshal_VkBufferCopy2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferCopy2 * forMarshaling,uint8_t ** ptr)6459 void reservedmarshal_VkBufferCopy2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6460 const VkBufferCopy2* forMarshaling, uint8_t** ptr) {
6461 (void)vkStream;
6462 (void)rootType;
6463 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6464 *ptr += sizeof(VkStructureType);
6465 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6466 rootType = forMarshaling->sType;
6467 }
6468 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6469 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->srcOffset, sizeof(VkDeviceSize));
6470 *ptr += sizeof(VkDeviceSize);
6471 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->dstOffset, sizeof(VkDeviceSize));
6472 *ptr += sizeof(VkDeviceSize);
6473 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
6474 *ptr += sizeof(VkDeviceSize);
6475 }
6476
reservedmarshal_VkCopyBufferInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCopyBufferInfo2 * forMarshaling,uint8_t ** ptr)6477 void reservedmarshal_VkCopyBufferInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6478 const VkCopyBufferInfo2* forMarshaling, uint8_t** ptr) {
6479 (void)vkStream;
6480 (void)rootType;
6481 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6482 *ptr += sizeof(VkStructureType);
6483 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6484 rootType = forMarshaling->sType;
6485 }
6486 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6487 uint64_t cgen_var_0;
6488 *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->srcBuffer));
6489 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
6490 *ptr += 1 * 8;
6491 uint64_t cgen_var_1;
6492 *&cgen_var_1 = get_host_u64_VkBuffer((*&forMarshaling->dstBuffer));
6493 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
6494 *ptr += 1 * 8;
6495 memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t));
6496 *ptr += sizeof(uint32_t);
6497 for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) {
6498 reservedmarshal_VkBufferCopy2(vkStream, rootType,
6499 (const VkBufferCopy2*)(forMarshaling->pRegions + i), ptr);
6500 }
6501 }
6502
reservedmarshal_VkImageCopy2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageCopy2 * forMarshaling,uint8_t ** ptr)6503 void reservedmarshal_VkImageCopy2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6504 const VkImageCopy2* forMarshaling, uint8_t** ptr) {
6505 (void)vkStream;
6506 (void)rootType;
6507 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6508 *ptr += sizeof(VkStructureType);
6509 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6510 rootType = forMarshaling->sType;
6511 }
6512 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6513 reservedmarshal_VkImageSubresourceLayers(
6514 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->srcSubresource), ptr);
6515 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->srcOffset), ptr);
6516 reservedmarshal_VkImageSubresourceLayers(
6517 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->dstSubresource), ptr);
6518 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->dstOffset), ptr);
6519 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->extent), ptr);
6520 }
6521
reservedmarshal_VkCopyImageInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCopyImageInfo2 * forMarshaling,uint8_t ** ptr)6522 void reservedmarshal_VkCopyImageInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6523 const VkCopyImageInfo2* forMarshaling, uint8_t** ptr) {
6524 (void)vkStream;
6525 (void)rootType;
6526 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6527 *ptr += sizeof(VkStructureType);
6528 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6529 rootType = forMarshaling->sType;
6530 }
6531 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6532 uint64_t cgen_var_0;
6533 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage));
6534 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
6535 *ptr += 1 * 8;
6536 memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout));
6537 *ptr += sizeof(VkImageLayout);
6538 uint64_t cgen_var_1;
6539 *&cgen_var_1 = get_host_u64_VkImage((*&forMarshaling->dstImage));
6540 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
6541 *ptr += 1 * 8;
6542 memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout));
6543 *ptr += sizeof(VkImageLayout);
6544 memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t));
6545 *ptr += sizeof(uint32_t);
6546 for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) {
6547 reservedmarshal_VkImageCopy2(vkStream, rootType,
6548 (const VkImageCopy2*)(forMarshaling->pRegions + i), ptr);
6549 }
6550 }
6551
reservedmarshal_VkBufferImageCopy2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferImageCopy2 * forMarshaling,uint8_t ** ptr)6552 void reservedmarshal_VkBufferImageCopy2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6553 const VkBufferImageCopy2* forMarshaling, uint8_t** ptr) {
6554 (void)vkStream;
6555 (void)rootType;
6556 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6557 *ptr += sizeof(VkStructureType);
6558 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6559 rootType = forMarshaling->sType;
6560 }
6561 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6562 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->bufferOffset, sizeof(VkDeviceSize));
6563 *ptr += sizeof(VkDeviceSize);
6564 memcpy(*ptr, (uint32_t*)&forMarshaling->bufferRowLength, sizeof(uint32_t));
6565 *ptr += sizeof(uint32_t);
6566 memcpy(*ptr, (uint32_t*)&forMarshaling->bufferImageHeight, sizeof(uint32_t));
6567 *ptr += sizeof(uint32_t);
6568 reservedmarshal_VkImageSubresourceLayers(
6569 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->imageSubresource), ptr);
6570 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->imageOffset), ptr);
6571 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->imageExtent), ptr);
6572 }
6573
reservedmarshal_VkCopyBufferToImageInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCopyBufferToImageInfo2 * forMarshaling,uint8_t ** ptr)6574 void reservedmarshal_VkCopyBufferToImageInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6575 const VkCopyBufferToImageInfo2* forMarshaling,
6576 uint8_t** ptr) {
6577 (void)vkStream;
6578 (void)rootType;
6579 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6580 *ptr += sizeof(VkStructureType);
6581 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6582 rootType = forMarshaling->sType;
6583 }
6584 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6585 uint64_t cgen_var_0;
6586 *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->srcBuffer));
6587 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
6588 *ptr += 1 * 8;
6589 uint64_t cgen_var_1;
6590 *&cgen_var_1 = get_host_u64_VkImage((*&forMarshaling->dstImage));
6591 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
6592 *ptr += 1 * 8;
6593 memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout));
6594 *ptr += sizeof(VkImageLayout);
6595 memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t));
6596 *ptr += sizeof(uint32_t);
6597 for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) {
6598 reservedmarshal_VkBufferImageCopy2(
6599 vkStream, rootType, (const VkBufferImageCopy2*)(forMarshaling->pRegions + i), ptr);
6600 }
6601 }
6602
reservedmarshal_VkCopyImageToBufferInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCopyImageToBufferInfo2 * forMarshaling,uint8_t ** ptr)6603 void reservedmarshal_VkCopyImageToBufferInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6604 const VkCopyImageToBufferInfo2* forMarshaling,
6605 uint8_t** ptr) {
6606 (void)vkStream;
6607 (void)rootType;
6608 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6609 *ptr += sizeof(VkStructureType);
6610 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6611 rootType = forMarshaling->sType;
6612 }
6613 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6614 uint64_t cgen_var_0;
6615 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage));
6616 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
6617 *ptr += 1 * 8;
6618 memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout));
6619 *ptr += sizeof(VkImageLayout);
6620 uint64_t cgen_var_1;
6621 *&cgen_var_1 = get_host_u64_VkBuffer((*&forMarshaling->dstBuffer));
6622 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
6623 *ptr += 1 * 8;
6624 memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t));
6625 *ptr += sizeof(uint32_t);
6626 for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) {
6627 reservedmarshal_VkBufferImageCopy2(
6628 vkStream, rootType, (const VkBufferImageCopy2*)(forMarshaling->pRegions + i), ptr);
6629 }
6630 }
6631
reservedmarshal_VkImageBlit2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageBlit2 * forMarshaling,uint8_t ** ptr)6632 void reservedmarshal_VkImageBlit2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6633 const VkImageBlit2* forMarshaling, uint8_t** ptr) {
6634 (void)vkStream;
6635 (void)rootType;
6636 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6637 *ptr += sizeof(VkStructureType);
6638 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6639 rootType = forMarshaling->sType;
6640 }
6641 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6642 reservedmarshal_VkImageSubresourceLayers(
6643 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->srcSubresource), ptr);
6644 for (uint32_t i = 0; i < (uint32_t)2; ++i) {
6645 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(forMarshaling->srcOffsets + i),
6646 ptr);
6647 }
6648 reservedmarshal_VkImageSubresourceLayers(
6649 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->dstSubresource), ptr);
6650 for (uint32_t i = 0; i < (uint32_t)2; ++i) {
6651 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(forMarshaling->dstOffsets + i),
6652 ptr);
6653 }
6654 }
6655
reservedmarshal_VkBlitImageInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBlitImageInfo2 * forMarshaling,uint8_t ** ptr)6656 void reservedmarshal_VkBlitImageInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6657 const VkBlitImageInfo2* forMarshaling, uint8_t** ptr) {
6658 (void)vkStream;
6659 (void)rootType;
6660 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6661 *ptr += sizeof(VkStructureType);
6662 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6663 rootType = forMarshaling->sType;
6664 }
6665 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6666 uint64_t cgen_var_0;
6667 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage));
6668 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
6669 *ptr += 1 * 8;
6670 memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout));
6671 *ptr += sizeof(VkImageLayout);
6672 uint64_t cgen_var_1;
6673 *&cgen_var_1 = get_host_u64_VkImage((*&forMarshaling->dstImage));
6674 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
6675 *ptr += 1 * 8;
6676 memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout));
6677 *ptr += sizeof(VkImageLayout);
6678 memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t));
6679 *ptr += sizeof(uint32_t);
6680 for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) {
6681 reservedmarshal_VkImageBlit2(vkStream, rootType,
6682 (const VkImageBlit2*)(forMarshaling->pRegions + i), ptr);
6683 }
6684 memcpy(*ptr, (VkFilter*)&forMarshaling->filter, sizeof(VkFilter));
6685 *ptr += sizeof(VkFilter);
6686 }
6687
reservedmarshal_VkImageResolve2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageResolve2 * forMarshaling,uint8_t ** ptr)6688 void reservedmarshal_VkImageResolve2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6689 const VkImageResolve2* forMarshaling, uint8_t** ptr) {
6690 (void)vkStream;
6691 (void)rootType;
6692 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6693 *ptr += sizeof(VkStructureType);
6694 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6695 rootType = forMarshaling->sType;
6696 }
6697 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6698 reservedmarshal_VkImageSubresourceLayers(
6699 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->srcSubresource), ptr);
6700 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->srcOffset), ptr);
6701 reservedmarshal_VkImageSubresourceLayers(
6702 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->dstSubresource), ptr);
6703 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->dstOffset), ptr);
6704 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->extent), ptr);
6705 }
6706
reservedmarshal_VkResolveImageInfo2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkResolveImageInfo2 * forMarshaling,uint8_t ** ptr)6707 void reservedmarshal_VkResolveImageInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType,
6708 const VkResolveImageInfo2* forMarshaling, uint8_t** ptr) {
6709 (void)vkStream;
6710 (void)rootType;
6711 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6712 *ptr += sizeof(VkStructureType);
6713 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6714 rootType = forMarshaling->sType;
6715 }
6716 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6717 uint64_t cgen_var_0;
6718 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage));
6719 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
6720 *ptr += 1 * 8;
6721 memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout));
6722 *ptr += sizeof(VkImageLayout);
6723 uint64_t cgen_var_1;
6724 *&cgen_var_1 = get_host_u64_VkImage((*&forMarshaling->dstImage));
6725 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
6726 *ptr += 1 * 8;
6727 memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout));
6728 *ptr += sizeof(VkImageLayout);
6729 memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t));
6730 *ptr += sizeof(uint32_t);
6731 for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) {
6732 reservedmarshal_VkImageResolve2(vkStream, rootType,
6733 (const VkImageResolve2*)(forMarshaling->pRegions + i), ptr);
6734 }
6735 }
6736
reservedmarshal_VkPhysicalDeviceSubgroupSizeControlFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceSubgroupSizeControlFeatures * forMarshaling,uint8_t ** ptr)6737 void reservedmarshal_VkPhysicalDeviceSubgroupSizeControlFeatures(
6738 VulkanStreamGuest* vkStream, VkStructureType rootType,
6739 const VkPhysicalDeviceSubgroupSizeControlFeatures* forMarshaling, uint8_t** ptr) {
6740 (void)vkStream;
6741 (void)rootType;
6742 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6743 *ptr += sizeof(VkStructureType);
6744 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6745 rootType = forMarshaling->sType;
6746 }
6747 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6748 memcpy(*ptr, (VkBool32*)&forMarshaling->subgroupSizeControl, sizeof(VkBool32));
6749 *ptr += sizeof(VkBool32);
6750 memcpy(*ptr, (VkBool32*)&forMarshaling->computeFullSubgroups, sizeof(VkBool32));
6751 *ptr += sizeof(VkBool32);
6752 }
6753
reservedmarshal_VkPhysicalDeviceSubgroupSizeControlProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceSubgroupSizeControlProperties * forMarshaling,uint8_t ** ptr)6754 void reservedmarshal_VkPhysicalDeviceSubgroupSizeControlProperties(
6755 VulkanStreamGuest* vkStream, VkStructureType rootType,
6756 const VkPhysicalDeviceSubgroupSizeControlProperties* forMarshaling, uint8_t** ptr) {
6757 (void)vkStream;
6758 (void)rootType;
6759 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6760 *ptr += sizeof(VkStructureType);
6761 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6762 rootType = forMarshaling->sType;
6763 }
6764 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6765 memcpy(*ptr, (uint32_t*)&forMarshaling->minSubgroupSize, sizeof(uint32_t));
6766 *ptr += sizeof(uint32_t);
6767 memcpy(*ptr, (uint32_t*)&forMarshaling->maxSubgroupSize, sizeof(uint32_t));
6768 *ptr += sizeof(uint32_t);
6769 memcpy(*ptr, (uint32_t*)&forMarshaling->maxComputeWorkgroupSubgroups, sizeof(uint32_t));
6770 *ptr += sizeof(uint32_t);
6771 memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->requiredSubgroupSizeStages,
6772 sizeof(VkShaderStageFlags));
6773 *ptr += sizeof(VkShaderStageFlags);
6774 }
6775
reservedmarshal_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo * forMarshaling,uint8_t ** ptr)6776 void reservedmarshal_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo(
6777 VulkanStreamGuest* vkStream, VkStructureType rootType,
6778 const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo* forMarshaling, uint8_t** ptr) {
6779 (void)vkStream;
6780 (void)rootType;
6781 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6782 *ptr += sizeof(VkStructureType);
6783 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6784 rootType = forMarshaling->sType;
6785 }
6786 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6787 memcpy(*ptr, (uint32_t*)&forMarshaling->requiredSubgroupSize, sizeof(uint32_t));
6788 *ptr += sizeof(uint32_t);
6789 }
6790
reservedmarshal_VkPhysicalDeviceInlineUniformBlockFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceInlineUniformBlockFeatures * forMarshaling,uint8_t ** ptr)6791 void reservedmarshal_VkPhysicalDeviceInlineUniformBlockFeatures(
6792 VulkanStreamGuest* vkStream, VkStructureType rootType,
6793 const VkPhysicalDeviceInlineUniformBlockFeatures* forMarshaling, uint8_t** ptr) {
6794 (void)vkStream;
6795 (void)rootType;
6796 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6797 *ptr += sizeof(VkStructureType);
6798 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6799 rootType = forMarshaling->sType;
6800 }
6801 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6802 memcpy(*ptr, (VkBool32*)&forMarshaling->inlineUniformBlock, sizeof(VkBool32));
6803 *ptr += sizeof(VkBool32);
6804 memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingInlineUniformBlockUpdateAfterBind,
6805 sizeof(VkBool32));
6806 *ptr += sizeof(VkBool32);
6807 }
6808
reservedmarshal_VkPhysicalDeviceInlineUniformBlockProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceInlineUniformBlockProperties * forMarshaling,uint8_t ** ptr)6809 void reservedmarshal_VkPhysicalDeviceInlineUniformBlockProperties(
6810 VulkanStreamGuest* vkStream, VkStructureType rootType,
6811 const VkPhysicalDeviceInlineUniformBlockProperties* forMarshaling, uint8_t** ptr) {
6812 (void)vkStream;
6813 (void)rootType;
6814 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6815 *ptr += sizeof(VkStructureType);
6816 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6817 rootType = forMarshaling->sType;
6818 }
6819 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6820 memcpy(*ptr, (uint32_t*)&forMarshaling->maxInlineUniformBlockSize, sizeof(uint32_t));
6821 *ptr += sizeof(uint32_t);
6822 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorInlineUniformBlocks,
6823 sizeof(uint32_t));
6824 *ptr += sizeof(uint32_t);
6825 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks,
6826 sizeof(uint32_t));
6827 *ptr += sizeof(uint32_t);
6828 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetInlineUniformBlocks, sizeof(uint32_t));
6829 *ptr += sizeof(uint32_t);
6830 memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindInlineUniformBlocks,
6831 sizeof(uint32_t));
6832 *ptr += sizeof(uint32_t);
6833 }
6834
reservedmarshal_VkWriteDescriptorSetInlineUniformBlock(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkWriteDescriptorSetInlineUniformBlock * forMarshaling,uint8_t ** ptr)6835 void reservedmarshal_VkWriteDescriptorSetInlineUniformBlock(
6836 VulkanStreamGuest* vkStream, VkStructureType rootType,
6837 const VkWriteDescriptorSetInlineUniformBlock* forMarshaling, uint8_t** ptr) {
6838 (void)vkStream;
6839 (void)rootType;
6840 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6841 *ptr += sizeof(VkStructureType);
6842 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6843 rootType = forMarshaling->sType;
6844 }
6845 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6846 memcpy(*ptr, (uint32_t*)&forMarshaling->dataSize, sizeof(uint32_t));
6847 *ptr += sizeof(uint32_t);
6848 memcpy(*ptr, (const void*)forMarshaling->pData,
6849 forMarshaling->dataSize * sizeof(const uint8_t));
6850 *ptr += forMarshaling->dataSize * sizeof(const uint8_t);
6851 }
6852
reservedmarshal_VkDescriptorPoolInlineUniformBlockCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDescriptorPoolInlineUniformBlockCreateInfo * forMarshaling,uint8_t ** ptr)6853 void reservedmarshal_VkDescriptorPoolInlineUniformBlockCreateInfo(
6854 VulkanStreamGuest* vkStream, VkStructureType rootType,
6855 const VkDescriptorPoolInlineUniformBlockCreateInfo* forMarshaling, uint8_t** ptr) {
6856 (void)vkStream;
6857 (void)rootType;
6858 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6859 *ptr += sizeof(VkStructureType);
6860 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6861 rootType = forMarshaling->sType;
6862 }
6863 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6864 memcpy(*ptr, (uint32_t*)&forMarshaling->maxInlineUniformBlockBindings, sizeof(uint32_t));
6865 *ptr += sizeof(uint32_t);
6866 }
6867
reservedmarshal_VkPhysicalDeviceTextureCompressionASTCHDRFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceTextureCompressionASTCHDRFeatures * forMarshaling,uint8_t ** ptr)6868 void reservedmarshal_VkPhysicalDeviceTextureCompressionASTCHDRFeatures(
6869 VulkanStreamGuest* vkStream, VkStructureType rootType,
6870 const VkPhysicalDeviceTextureCompressionASTCHDRFeatures* forMarshaling, uint8_t** ptr) {
6871 (void)vkStream;
6872 (void)rootType;
6873 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6874 *ptr += sizeof(VkStructureType);
6875 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6876 rootType = forMarshaling->sType;
6877 }
6878 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6879 memcpy(*ptr, (VkBool32*)&forMarshaling->textureCompressionASTC_HDR, sizeof(VkBool32));
6880 *ptr += sizeof(VkBool32);
6881 }
6882
reservedmarshal_VkRenderingAttachmentInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderingAttachmentInfo * forMarshaling,uint8_t ** ptr)6883 void reservedmarshal_VkRenderingAttachmentInfo(VulkanStreamGuest* vkStream,
6884 VkStructureType rootType,
6885 const VkRenderingAttachmentInfo* forMarshaling,
6886 uint8_t** ptr) {
6887 (void)vkStream;
6888 (void)rootType;
6889 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6890 *ptr += sizeof(VkStructureType);
6891 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6892 rootType = forMarshaling->sType;
6893 }
6894 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6895 uint64_t cgen_var_0;
6896 *&cgen_var_0 = get_host_u64_VkImageView((*&forMarshaling->imageView));
6897 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
6898 *ptr += 1 * 8;
6899 memcpy(*ptr, (VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout));
6900 *ptr += sizeof(VkImageLayout);
6901 memcpy(*ptr, (VkResolveModeFlagBits*)&forMarshaling->resolveMode,
6902 sizeof(VkResolveModeFlagBits));
6903 *ptr += sizeof(VkResolveModeFlagBits);
6904 uint64_t cgen_var_1;
6905 *&cgen_var_1 = get_host_u64_VkImageView((*&forMarshaling->resolveImageView));
6906 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
6907 *ptr += 1 * 8;
6908 memcpy(*ptr, (VkImageLayout*)&forMarshaling->resolveImageLayout, sizeof(VkImageLayout));
6909 *ptr += sizeof(VkImageLayout);
6910 memcpy(*ptr, (VkAttachmentLoadOp*)&forMarshaling->loadOp, sizeof(VkAttachmentLoadOp));
6911 *ptr += sizeof(VkAttachmentLoadOp);
6912 memcpy(*ptr, (VkAttachmentStoreOp*)&forMarshaling->storeOp, sizeof(VkAttachmentStoreOp));
6913 *ptr += sizeof(VkAttachmentStoreOp);
6914 reservedmarshal_VkClearValue(vkStream, rootType, (VkClearValue*)(&forMarshaling->clearValue),
6915 ptr);
6916 }
6917
reservedmarshal_VkRenderingInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderingInfo * forMarshaling,uint8_t ** ptr)6918 void reservedmarshal_VkRenderingInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
6919 const VkRenderingInfo* forMarshaling, uint8_t** ptr) {
6920 (void)vkStream;
6921 (void)rootType;
6922 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6923 *ptr += sizeof(VkStructureType);
6924 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6925 rootType = forMarshaling->sType;
6926 }
6927 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6928 memcpy(*ptr, (VkRenderingFlags*)&forMarshaling->flags, sizeof(VkRenderingFlags));
6929 *ptr += sizeof(VkRenderingFlags);
6930 reservedmarshal_VkRect2D(vkStream, rootType, (VkRect2D*)(&forMarshaling->renderArea), ptr);
6931 memcpy(*ptr, (uint32_t*)&forMarshaling->layerCount, sizeof(uint32_t));
6932 *ptr += sizeof(uint32_t);
6933 memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t));
6934 *ptr += sizeof(uint32_t);
6935 memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
6936 *ptr += sizeof(uint32_t);
6937 for (uint32_t i = 0; i < (uint32_t)forMarshaling->colorAttachmentCount; ++i) {
6938 reservedmarshal_VkRenderingAttachmentInfo(
6939 vkStream, rootType,
6940 (const VkRenderingAttachmentInfo*)(forMarshaling->pColorAttachments + i), ptr);
6941 }
6942 // WARNING PTR CHECK
6943 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pDepthAttachment;
6944 memcpy((*ptr), &cgen_var_0, 8);
6945 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
6946 *ptr += 8;
6947 if (forMarshaling->pDepthAttachment) {
6948 reservedmarshal_VkRenderingAttachmentInfo(
6949 vkStream, rootType, (const VkRenderingAttachmentInfo*)(forMarshaling->pDepthAttachment),
6950 ptr);
6951 }
6952 // WARNING PTR CHECK
6953 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pStencilAttachment;
6954 memcpy((*ptr), &cgen_var_1, 8);
6955 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
6956 *ptr += 8;
6957 if (forMarshaling->pStencilAttachment) {
6958 reservedmarshal_VkRenderingAttachmentInfo(
6959 vkStream, rootType,
6960 (const VkRenderingAttachmentInfo*)(forMarshaling->pStencilAttachment), ptr);
6961 }
6962 }
6963
reservedmarshal_VkPipelineRenderingCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineRenderingCreateInfo * forMarshaling,uint8_t ** ptr)6964 void reservedmarshal_VkPipelineRenderingCreateInfo(
6965 VulkanStreamGuest* vkStream, VkStructureType rootType,
6966 const VkPipelineRenderingCreateInfo* forMarshaling, uint8_t** ptr) {
6967 (void)vkStream;
6968 (void)rootType;
6969 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
6970 *ptr += sizeof(VkStructureType);
6971 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
6972 rootType = forMarshaling->sType;
6973 }
6974 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
6975 memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t));
6976 *ptr += sizeof(uint32_t);
6977 memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
6978 *ptr += sizeof(uint32_t);
6979 // WARNING PTR CHECK
6980 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pColorAttachmentFormats;
6981 memcpy((*ptr), &cgen_var_0, 8);
6982 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
6983 *ptr += 8;
6984 if (forMarshaling->pColorAttachmentFormats) {
6985 memcpy(*ptr, (const VkFormat*)forMarshaling->pColorAttachmentFormats,
6986 forMarshaling->colorAttachmentCount * sizeof(const VkFormat));
6987 *ptr += forMarshaling->colorAttachmentCount * sizeof(const VkFormat);
6988 }
6989 memcpy(*ptr, (VkFormat*)&forMarshaling->depthAttachmentFormat, sizeof(VkFormat));
6990 *ptr += sizeof(VkFormat);
6991 memcpy(*ptr, (VkFormat*)&forMarshaling->stencilAttachmentFormat, sizeof(VkFormat));
6992 *ptr += sizeof(VkFormat);
6993 }
6994
reservedmarshal_VkPhysicalDeviceDynamicRenderingFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceDynamicRenderingFeatures * forMarshaling,uint8_t ** ptr)6995 void reservedmarshal_VkPhysicalDeviceDynamicRenderingFeatures(
6996 VulkanStreamGuest* vkStream, VkStructureType rootType,
6997 const VkPhysicalDeviceDynamicRenderingFeatures* forMarshaling, uint8_t** ptr) {
6998 (void)vkStream;
6999 (void)rootType;
7000 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7001 *ptr += sizeof(VkStructureType);
7002 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7003 rootType = forMarshaling->sType;
7004 }
7005 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7006 memcpy(*ptr, (VkBool32*)&forMarshaling->dynamicRendering, sizeof(VkBool32));
7007 *ptr += sizeof(VkBool32);
7008 }
7009
reservedmarshal_VkCommandBufferInheritanceRenderingInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCommandBufferInheritanceRenderingInfo * forMarshaling,uint8_t ** ptr)7010 void reservedmarshal_VkCommandBufferInheritanceRenderingInfo(
7011 VulkanStreamGuest* vkStream, VkStructureType rootType,
7012 const VkCommandBufferInheritanceRenderingInfo* forMarshaling, uint8_t** ptr) {
7013 (void)vkStream;
7014 (void)rootType;
7015 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7016 *ptr += sizeof(VkStructureType);
7017 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7018 rootType = forMarshaling->sType;
7019 }
7020 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7021 memcpy(*ptr, (VkRenderingFlags*)&forMarshaling->flags, sizeof(VkRenderingFlags));
7022 *ptr += sizeof(VkRenderingFlags);
7023 memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t));
7024 *ptr += sizeof(uint32_t);
7025 memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
7026 *ptr += sizeof(uint32_t);
7027 memcpy(*ptr, (const VkFormat*)forMarshaling->pColorAttachmentFormats,
7028 forMarshaling->colorAttachmentCount * sizeof(const VkFormat));
7029 *ptr += forMarshaling->colorAttachmentCount * sizeof(const VkFormat);
7030 memcpy(*ptr, (VkFormat*)&forMarshaling->depthAttachmentFormat, sizeof(VkFormat));
7031 *ptr += sizeof(VkFormat);
7032 memcpy(*ptr, (VkFormat*)&forMarshaling->stencilAttachmentFormat, sizeof(VkFormat));
7033 *ptr += sizeof(VkFormat);
7034 memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->rasterizationSamples,
7035 sizeof(VkSampleCountFlagBits));
7036 *ptr += sizeof(VkSampleCountFlagBits);
7037 }
7038
reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceShaderIntegerDotProductFeatures * forMarshaling,uint8_t ** ptr)7039 void reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductFeatures(
7040 VulkanStreamGuest* vkStream, VkStructureType rootType,
7041 const VkPhysicalDeviceShaderIntegerDotProductFeatures* forMarshaling, uint8_t** ptr) {
7042 (void)vkStream;
7043 (void)rootType;
7044 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7045 *ptr += sizeof(VkStructureType);
7046 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7047 rootType = forMarshaling->sType;
7048 }
7049 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7050 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderIntegerDotProduct, sizeof(VkBool32));
7051 *ptr += sizeof(VkBool32);
7052 }
7053
reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceShaderIntegerDotProductProperties * forMarshaling,uint8_t ** ptr)7054 void reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductProperties(
7055 VulkanStreamGuest* vkStream, VkStructureType rootType,
7056 const VkPhysicalDeviceShaderIntegerDotProductProperties* forMarshaling, uint8_t** ptr) {
7057 (void)vkStream;
7058 (void)rootType;
7059 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7060 *ptr += sizeof(VkStructureType);
7061 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7062 rootType = forMarshaling->sType;
7063 }
7064 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7065 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitUnsignedAccelerated,
7066 sizeof(VkBool32));
7067 *ptr += sizeof(VkBool32);
7068 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitSignedAccelerated,
7069 sizeof(VkBool32));
7070 *ptr += sizeof(VkBool32);
7071 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitMixedSignednessAccelerated,
7072 sizeof(VkBool32));
7073 *ptr += sizeof(VkBool32);
7074 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedUnsignedAccelerated,
7075 sizeof(VkBool32));
7076 *ptr += sizeof(VkBool32);
7077 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedSignedAccelerated,
7078 sizeof(VkBool32));
7079 *ptr += sizeof(VkBool32);
7080 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedMixedSignednessAccelerated,
7081 sizeof(VkBool32));
7082 *ptr += sizeof(VkBool32);
7083 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitUnsignedAccelerated,
7084 sizeof(VkBool32));
7085 *ptr += sizeof(VkBool32);
7086 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitSignedAccelerated,
7087 sizeof(VkBool32));
7088 *ptr += sizeof(VkBool32);
7089 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitMixedSignednessAccelerated,
7090 sizeof(VkBool32));
7091 *ptr += sizeof(VkBool32);
7092 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitUnsignedAccelerated,
7093 sizeof(VkBool32));
7094 *ptr += sizeof(VkBool32);
7095 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitSignedAccelerated,
7096 sizeof(VkBool32));
7097 *ptr += sizeof(VkBool32);
7098 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitMixedSignednessAccelerated,
7099 sizeof(VkBool32));
7100 *ptr += sizeof(VkBool32);
7101 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitUnsignedAccelerated,
7102 sizeof(VkBool32));
7103 *ptr += sizeof(VkBool32);
7104 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitSignedAccelerated,
7105 sizeof(VkBool32));
7106 *ptr += sizeof(VkBool32);
7107 memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitMixedSignednessAccelerated,
7108 sizeof(VkBool32));
7109 *ptr += sizeof(VkBool32);
7110 memcpy(
7111 *ptr,
7112 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated,
7113 sizeof(VkBool32));
7114 *ptr += sizeof(VkBool32);
7115 memcpy(*ptr,
7116 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitSignedAccelerated,
7117 sizeof(VkBool32));
7118 *ptr += sizeof(VkBool32);
7119 memcpy(*ptr,
7120 (VkBool32*)&forMarshaling
7121 ->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated,
7122 sizeof(VkBool32));
7123 *ptr += sizeof(VkBool32);
7124 memcpy(*ptr,
7125 (VkBool32*)&forMarshaling
7126 ->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated,
7127 sizeof(VkBool32));
7128 *ptr += sizeof(VkBool32);
7129 memcpy(*ptr,
7130 (VkBool32*)&forMarshaling
7131 ->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated,
7132 sizeof(VkBool32));
7133 *ptr += sizeof(VkBool32);
7134 memcpy(*ptr,
7135 (VkBool32*)&forMarshaling
7136 ->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated,
7137 sizeof(VkBool32));
7138 *ptr += sizeof(VkBool32);
7139 memcpy(
7140 *ptr,
7141 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated,
7142 sizeof(VkBool32));
7143 *ptr += sizeof(VkBool32);
7144 memcpy(*ptr,
7145 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitSignedAccelerated,
7146 sizeof(VkBool32));
7147 *ptr += sizeof(VkBool32);
7148 memcpy(*ptr,
7149 (VkBool32*)&forMarshaling
7150 ->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated,
7151 sizeof(VkBool32));
7152 *ptr += sizeof(VkBool32);
7153 memcpy(
7154 *ptr,
7155 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated,
7156 sizeof(VkBool32));
7157 *ptr += sizeof(VkBool32);
7158 memcpy(*ptr,
7159 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitSignedAccelerated,
7160 sizeof(VkBool32));
7161 *ptr += sizeof(VkBool32);
7162 memcpy(*ptr,
7163 (VkBool32*)&forMarshaling
7164 ->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated,
7165 sizeof(VkBool32));
7166 *ptr += sizeof(VkBool32);
7167 memcpy(
7168 *ptr,
7169 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated,
7170 sizeof(VkBool32));
7171 *ptr += sizeof(VkBool32);
7172 memcpy(*ptr,
7173 (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitSignedAccelerated,
7174 sizeof(VkBool32));
7175 *ptr += sizeof(VkBool32);
7176 memcpy(*ptr,
7177 (VkBool32*)&forMarshaling
7178 ->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated,
7179 sizeof(VkBool32));
7180 *ptr += sizeof(VkBool32);
7181 }
7182
reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceTexelBufferAlignmentProperties * forMarshaling,uint8_t ** ptr)7183 void reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentProperties(
7184 VulkanStreamGuest* vkStream, VkStructureType rootType,
7185 const VkPhysicalDeviceTexelBufferAlignmentProperties* forMarshaling, uint8_t** ptr) {
7186 (void)vkStream;
7187 (void)rootType;
7188 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7189 *ptr += sizeof(VkStructureType);
7190 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7191 rootType = forMarshaling->sType;
7192 }
7193 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7194 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->storageTexelBufferOffsetAlignmentBytes,
7195 sizeof(VkDeviceSize));
7196 *ptr += sizeof(VkDeviceSize);
7197 memcpy(*ptr, (VkBool32*)&forMarshaling->storageTexelBufferOffsetSingleTexelAlignment,
7198 sizeof(VkBool32));
7199 *ptr += sizeof(VkBool32);
7200 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->uniformTexelBufferOffsetAlignmentBytes,
7201 sizeof(VkDeviceSize));
7202 *ptr += sizeof(VkDeviceSize);
7203 memcpy(*ptr, (VkBool32*)&forMarshaling->uniformTexelBufferOffsetSingleTexelAlignment,
7204 sizeof(VkBool32));
7205 *ptr += sizeof(VkBool32);
7206 }
7207
reservedmarshal_VkFormatProperties3(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkFormatProperties3 * forMarshaling,uint8_t ** ptr)7208 void reservedmarshal_VkFormatProperties3(VulkanStreamGuest* vkStream, VkStructureType rootType,
7209 const VkFormatProperties3* forMarshaling, uint8_t** ptr) {
7210 (void)vkStream;
7211 (void)rootType;
7212 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7213 *ptr += sizeof(VkStructureType);
7214 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7215 rootType = forMarshaling->sType;
7216 }
7217 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7218 memcpy(*ptr, (VkFormatFeatureFlags2*)&forMarshaling->linearTilingFeatures,
7219 sizeof(VkFormatFeatureFlags2));
7220 *ptr += sizeof(VkFormatFeatureFlags2);
7221 memcpy(*ptr, (VkFormatFeatureFlags2*)&forMarshaling->optimalTilingFeatures,
7222 sizeof(VkFormatFeatureFlags2));
7223 *ptr += sizeof(VkFormatFeatureFlags2);
7224 memcpy(*ptr, (VkFormatFeatureFlags2*)&forMarshaling->bufferFeatures,
7225 sizeof(VkFormatFeatureFlags2));
7226 *ptr += sizeof(VkFormatFeatureFlags2);
7227 }
7228
reservedmarshal_VkPhysicalDeviceMaintenance4Features(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMaintenance4Features * forMarshaling,uint8_t ** ptr)7229 void reservedmarshal_VkPhysicalDeviceMaintenance4Features(
7230 VulkanStreamGuest* vkStream, VkStructureType rootType,
7231 const VkPhysicalDeviceMaintenance4Features* forMarshaling, uint8_t** ptr) {
7232 (void)vkStream;
7233 (void)rootType;
7234 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7235 *ptr += sizeof(VkStructureType);
7236 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7237 rootType = forMarshaling->sType;
7238 }
7239 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7240 memcpy(*ptr, (VkBool32*)&forMarshaling->maintenance4, sizeof(VkBool32));
7241 *ptr += sizeof(VkBool32);
7242 }
7243
reservedmarshal_VkPhysicalDeviceMaintenance4Properties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMaintenance4Properties * forMarshaling,uint8_t ** ptr)7244 void reservedmarshal_VkPhysicalDeviceMaintenance4Properties(
7245 VulkanStreamGuest* vkStream, VkStructureType rootType,
7246 const VkPhysicalDeviceMaintenance4Properties* forMarshaling, uint8_t** ptr) {
7247 (void)vkStream;
7248 (void)rootType;
7249 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7250 *ptr += sizeof(VkStructureType);
7251 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7252 rootType = forMarshaling->sType;
7253 }
7254 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7255 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxBufferSize, sizeof(VkDeviceSize));
7256 *ptr += sizeof(VkDeviceSize);
7257 }
7258
reservedmarshal_VkDeviceBufferMemoryRequirements(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceBufferMemoryRequirements * forMarshaling,uint8_t ** ptr)7259 void reservedmarshal_VkDeviceBufferMemoryRequirements(
7260 VulkanStreamGuest* vkStream, VkStructureType rootType,
7261 const VkDeviceBufferMemoryRequirements* forMarshaling, uint8_t** ptr) {
7262 (void)vkStream;
7263 (void)rootType;
7264 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7265 *ptr += sizeof(VkStructureType);
7266 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7267 rootType = forMarshaling->sType;
7268 }
7269 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7270 reservedmarshal_VkBufferCreateInfo(
7271 vkStream, rootType, (const VkBufferCreateInfo*)(forMarshaling->pCreateInfo), ptr);
7272 }
7273
reservedmarshal_VkDeviceImageMemoryRequirements(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceImageMemoryRequirements * forMarshaling,uint8_t ** ptr)7274 void reservedmarshal_VkDeviceImageMemoryRequirements(
7275 VulkanStreamGuest* vkStream, VkStructureType rootType,
7276 const VkDeviceImageMemoryRequirements* forMarshaling, uint8_t** ptr) {
7277 (void)vkStream;
7278 (void)rootType;
7279 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7280 *ptr += sizeof(VkStructureType);
7281 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7282 rootType = forMarshaling->sType;
7283 }
7284 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7285 reservedmarshal_VkImageCreateInfo(vkStream, rootType,
7286 (const VkImageCreateInfo*)(forMarshaling->pCreateInfo), ptr);
7287 memcpy(*ptr, (VkImageAspectFlagBits*)&forMarshaling->planeAspect,
7288 sizeof(VkImageAspectFlagBits));
7289 *ptr += sizeof(VkImageAspectFlagBits);
7290 }
7291
7292 #endif
7293 #ifdef VK_VERSION_1_4
reservedmarshal_VkPhysicalDeviceVulkan14Features(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVulkan14Features * forMarshaling,uint8_t ** ptr)7294 void reservedmarshal_VkPhysicalDeviceVulkan14Features(
7295 VulkanStreamGuest* vkStream, VkStructureType rootType,
7296 const VkPhysicalDeviceVulkan14Features* forMarshaling, uint8_t** ptr) {
7297 (void)vkStream;
7298 (void)rootType;
7299 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7300 *ptr += sizeof(VkStructureType);
7301 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7302 rootType = forMarshaling->sType;
7303 }
7304 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7305 memcpy(*ptr, (VkBool32*)&forMarshaling->globalPriorityQuery, sizeof(VkBool32));
7306 *ptr += sizeof(VkBool32);
7307 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSubgroupRotate, sizeof(VkBool32));
7308 *ptr += sizeof(VkBool32);
7309 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSubgroupRotateClustered, sizeof(VkBool32));
7310 *ptr += sizeof(VkBool32);
7311 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderFloatControls2, sizeof(VkBool32));
7312 *ptr += sizeof(VkBool32);
7313 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderExpectAssume, sizeof(VkBool32));
7314 *ptr += sizeof(VkBool32);
7315 memcpy(*ptr, (VkBool32*)&forMarshaling->rectangularLines, sizeof(VkBool32));
7316 *ptr += sizeof(VkBool32);
7317 memcpy(*ptr, (VkBool32*)&forMarshaling->bresenhamLines, sizeof(VkBool32));
7318 *ptr += sizeof(VkBool32);
7319 memcpy(*ptr, (VkBool32*)&forMarshaling->smoothLines, sizeof(VkBool32));
7320 *ptr += sizeof(VkBool32);
7321 memcpy(*ptr, (VkBool32*)&forMarshaling->stippledRectangularLines, sizeof(VkBool32));
7322 *ptr += sizeof(VkBool32);
7323 memcpy(*ptr, (VkBool32*)&forMarshaling->stippledBresenhamLines, sizeof(VkBool32));
7324 *ptr += sizeof(VkBool32);
7325 memcpy(*ptr, (VkBool32*)&forMarshaling->stippledSmoothLines, sizeof(VkBool32));
7326 *ptr += sizeof(VkBool32);
7327 memcpy(*ptr, (VkBool32*)&forMarshaling->vertexAttributeInstanceRateDivisor, sizeof(VkBool32));
7328 *ptr += sizeof(VkBool32);
7329 memcpy(*ptr, (VkBool32*)&forMarshaling->vertexAttributeInstanceRateZeroDivisor,
7330 sizeof(VkBool32));
7331 *ptr += sizeof(VkBool32);
7332 memcpy(*ptr, (VkBool32*)&forMarshaling->indexTypeUint8, sizeof(VkBool32));
7333 *ptr += sizeof(VkBool32);
7334 memcpy(*ptr, (VkBool32*)&forMarshaling->dynamicRenderingLocalRead, sizeof(VkBool32));
7335 *ptr += sizeof(VkBool32);
7336 memcpy(*ptr, (VkBool32*)&forMarshaling->maintenance5, sizeof(VkBool32));
7337 *ptr += sizeof(VkBool32);
7338 memcpy(*ptr, (VkBool32*)&forMarshaling->maintenance6, sizeof(VkBool32));
7339 *ptr += sizeof(VkBool32);
7340 memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineProtectedAccess, sizeof(VkBool32));
7341 *ptr += sizeof(VkBool32);
7342 memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineRobustness, sizeof(VkBool32));
7343 *ptr += sizeof(VkBool32);
7344 memcpy(*ptr, (VkBool32*)&forMarshaling->hostImageCopy, sizeof(VkBool32));
7345 *ptr += sizeof(VkBool32);
7346 memcpy(*ptr, (VkBool32*)&forMarshaling->pushDescriptor, sizeof(VkBool32));
7347 *ptr += sizeof(VkBool32);
7348 }
7349
reservedmarshal_VkPhysicalDeviceVulkan14Properties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVulkan14Properties * forMarshaling,uint8_t ** ptr)7350 void reservedmarshal_VkPhysicalDeviceVulkan14Properties(
7351 VulkanStreamGuest* vkStream, VkStructureType rootType,
7352 const VkPhysicalDeviceVulkan14Properties* forMarshaling, uint8_t** ptr) {
7353 (void)vkStream;
7354 (void)rootType;
7355 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7356 *ptr += sizeof(VkStructureType);
7357 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7358 rootType = forMarshaling->sType;
7359 }
7360 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7361 memcpy(*ptr, (uint32_t*)&forMarshaling->lineSubPixelPrecisionBits, sizeof(uint32_t));
7362 *ptr += sizeof(uint32_t);
7363 memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexAttribDivisor, sizeof(uint32_t));
7364 *ptr += sizeof(uint32_t);
7365 memcpy(*ptr, (VkBool32*)&forMarshaling->supportsNonZeroFirstInstance, sizeof(VkBool32));
7366 *ptr += sizeof(VkBool32);
7367 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPushDescriptors, sizeof(uint32_t));
7368 *ptr += sizeof(uint32_t);
7369 memcpy(*ptr, (VkBool32*)&forMarshaling->dynamicRenderingLocalReadDepthStencilAttachments,
7370 sizeof(VkBool32));
7371 *ptr += sizeof(VkBool32);
7372 memcpy(*ptr, (VkBool32*)&forMarshaling->dynamicRenderingLocalReadMultisampledAttachments,
7373 sizeof(VkBool32));
7374 *ptr += sizeof(VkBool32);
7375 memcpy(*ptr, (VkBool32*)&forMarshaling->earlyFragmentMultisampleCoverageAfterSampleCounting,
7376 sizeof(VkBool32));
7377 *ptr += sizeof(VkBool32);
7378 memcpy(*ptr, (VkBool32*)&forMarshaling->earlyFragmentSampleMaskTestBeforeSampleCounting,
7379 sizeof(VkBool32));
7380 *ptr += sizeof(VkBool32);
7381 memcpy(*ptr, (VkBool32*)&forMarshaling->depthStencilSwizzleOneSupport, sizeof(VkBool32));
7382 *ptr += sizeof(VkBool32);
7383 memcpy(*ptr, (VkBool32*)&forMarshaling->polygonModePointSize, sizeof(VkBool32));
7384 *ptr += sizeof(VkBool32);
7385 memcpy(*ptr, (VkBool32*)&forMarshaling->nonStrictSinglePixelWideLinesUseParallelogram,
7386 sizeof(VkBool32));
7387 *ptr += sizeof(VkBool32);
7388 memcpy(*ptr, (VkBool32*)&forMarshaling->nonStrictWideLinesUseParallelogram, sizeof(VkBool32));
7389 *ptr += sizeof(VkBool32);
7390 memcpy(*ptr, (VkBool32*)&forMarshaling->blockTexelViewCompatibleMultipleLayers,
7391 sizeof(VkBool32));
7392 *ptr += sizeof(VkBool32);
7393 memcpy(*ptr, (uint32_t*)&forMarshaling->maxCombinedImageSamplerDescriptorCount,
7394 sizeof(uint32_t));
7395 *ptr += sizeof(uint32_t);
7396 memcpy(*ptr, (VkBool32*)&forMarshaling->fragmentShadingRateClampCombinerInputs,
7397 sizeof(VkBool32));
7398 *ptr += sizeof(VkBool32);
7399 memcpy(*ptr,
7400 (VkPipelineRobustnessBufferBehavior*)&forMarshaling->defaultRobustnessStorageBuffers,
7401 sizeof(VkPipelineRobustnessBufferBehavior));
7402 *ptr += sizeof(VkPipelineRobustnessBufferBehavior);
7403 memcpy(*ptr,
7404 (VkPipelineRobustnessBufferBehavior*)&forMarshaling->defaultRobustnessUniformBuffers,
7405 sizeof(VkPipelineRobustnessBufferBehavior));
7406 *ptr += sizeof(VkPipelineRobustnessBufferBehavior);
7407 memcpy(*ptr, (VkPipelineRobustnessBufferBehavior*)&forMarshaling->defaultRobustnessVertexInputs,
7408 sizeof(VkPipelineRobustnessBufferBehavior));
7409 *ptr += sizeof(VkPipelineRobustnessBufferBehavior);
7410 memcpy(*ptr, (VkPipelineRobustnessImageBehavior*)&forMarshaling->defaultRobustnessImages,
7411 sizeof(VkPipelineRobustnessImageBehavior));
7412 *ptr += sizeof(VkPipelineRobustnessImageBehavior);
7413 memcpy(*ptr, (uint32_t*)&forMarshaling->copySrcLayoutCount, sizeof(uint32_t));
7414 *ptr += sizeof(uint32_t);
7415 // WARNING PTR CHECK
7416 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pCopySrcLayouts;
7417 memcpy((*ptr), &cgen_var_0, 8);
7418 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7419 *ptr += 8;
7420 if (forMarshaling->pCopySrcLayouts) {
7421 memcpy(*ptr, (VkImageLayout*)forMarshaling->pCopySrcLayouts,
7422 forMarshaling->copySrcLayoutCount * sizeof(VkImageLayout));
7423 *ptr += forMarshaling->copySrcLayoutCount * sizeof(VkImageLayout);
7424 }
7425 memcpy(*ptr, (uint32_t*)&forMarshaling->copyDstLayoutCount, sizeof(uint32_t));
7426 *ptr += sizeof(uint32_t);
7427 // WARNING PTR CHECK
7428 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pCopyDstLayouts;
7429 memcpy((*ptr), &cgen_var_1, 8);
7430 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7431 *ptr += 8;
7432 if (forMarshaling->pCopyDstLayouts) {
7433 memcpy(*ptr, (VkImageLayout*)forMarshaling->pCopyDstLayouts,
7434 forMarshaling->copyDstLayoutCount * sizeof(VkImageLayout));
7435 *ptr += forMarshaling->copyDstLayoutCount * sizeof(VkImageLayout);
7436 }
7437 memcpy(*ptr, (uint8_t*)forMarshaling->optimalTilingLayoutUUID, VK_UUID_SIZE * sizeof(uint8_t));
7438 *ptr += VK_UUID_SIZE * sizeof(uint8_t);
7439 memcpy(*ptr, (VkBool32*)&forMarshaling->identicalMemoryTypeRequirements, sizeof(VkBool32));
7440 *ptr += sizeof(VkBool32);
7441 }
7442
reservedmarshal_VkDeviceQueueGlobalPriorityCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceQueueGlobalPriorityCreateInfo * forMarshaling,uint8_t ** ptr)7443 void reservedmarshal_VkDeviceQueueGlobalPriorityCreateInfo(
7444 VulkanStreamGuest* vkStream, VkStructureType rootType,
7445 const VkDeviceQueueGlobalPriorityCreateInfo* forMarshaling, uint8_t** ptr) {
7446 (void)vkStream;
7447 (void)rootType;
7448 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7449 *ptr += sizeof(VkStructureType);
7450 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7451 rootType = forMarshaling->sType;
7452 }
7453 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7454 memcpy(*ptr, (VkQueueGlobalPriority*)&forMarshaling->globalPriority,
7455 sizeof(VkQueueGlobalPriority));
7456 *ptr += sizeof(VkQueueGlobalPriority);
7457 }
7458
reservedmarshal_VkPhysicalDeviceGlobalPriorityQueryFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceGlobalPriorityQueryFeatures * forMarshaling,uint8_t ** ptr)7459 void reservedmarshal_VkPhysicalDeviceGlobalPriorityQueryFeatures(
7460 VulkanStreamGuest* vkStream, VkStructureType rootType,
7461 const VkPhysicalDeviceGlobalPriorityQueryFeatures* forMarshaling, uint8_t** ptr) {
7462 (void)vkStream;
7463 (void)rootType;
7464 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7465 *ptr += sizeof(VkStructureType);
7466 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7467 rootType = forMarshaling->sType;
7468 }
7469 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7470 memcpy(*ptr, (VkBool32*)&forMarshaling->globalPriorityQuery, sizeof(VkBool32));
7471 *ptr += sizeof(VkBool32);
7472 }
7473
reservedmarshal_VkQueueFamilyGlobalPriorityProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkQueueFamilyGlobalPriorityProperties * forMarshaling,uint8_t ** ptr)7474 void reservedmarshal_VkQueueFamilyGlobalPriorityProperties(
7475 VulkanStreamGuest* vkStream, VkStructureType rootType,
7476 const VkQueueFamilyGlobalPriorityProperties* forMarshaling, uint8_t** ptr) {
7477 (void)vkStream;
7478 (void)rootType;
7479 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7480 *ptr += sizeof(VkStructureType);
7481 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7482 rootType = forMarshaling->sType;
7483 }
7484 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7485 memcpy(*ptr, (uint32_t*)&forMarshaling->priorityCount, sizeof(uint32_t));
7486 *ptr += sizeof(uint32_t);
7487 memcpy(*ptr, (VkQueueGlobalPriority*)forMarshaling->priorities,
7488 VK_MAX_GLOBAL_PRIORITY_SIZE * sizeof(VkQueueGlobalPriority));
7489 *ptr += VK_MAX_GLOBAL_PRIORITY_SIZE * sizeof(VkQueueGlobalPriority);
7490 }
7491
reservedmarshal_VkPhysicalDeviceShaderSubgroupRotateFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceShaderSubgroupRotateFeatures * forMarshaling,uint8_t ** ptr)7492 void reservedmarshal_VkPhysicalDeviceShaderSubgroupRotateFeatures(
7493 VulkanStreamGuest* vkStream, VkStructureType rootType,
7494 const VkPhysicalDeviceShaderSubgroupRotateFeatures* forMarshaling, uint8_t** ptr) {
7495 (void)vkStream;
7496 (void)rootType;
7497 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7498 *ptr += sizeof(VkStructureType);
7499 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7500 rootType = forMarshaling->sType;
7501 }
7502 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7503 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSubgroupRotate, sizeof(VkBool32));
7504 *ptr += sizeof(VkBool32);
7505 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSubgroupRotateClustered, sizeof(VkBool32));
7506 *ptr += sizeof(VkBool32);
7507 }
7508
reservedmarshal_VkPhysicalDeviceShaderFloatControls2Features(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceShaderFloatControls2Features * forMarshaling,uint8_t ** ptr)7509 void reservedmarshal_VkPhysicalDeviceShaderFloatControls2Features(
7510 VulkanStreamGuest* vkStream, VkStructureType rootType,
7511 const VkPhysicalDeviceShaderFloatControls2Features* forMarshaling, uint8_t** ptr) {
7512 (void)vkStream;
7513 (void)rootType;
7514 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7515 *ptr += sizeof(VkStructureType);
7516 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7517 rootType = forMarshaling->sType;
7518 }
7519 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7520 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderFloatControls2, sizeof(VkBool32));
7521 *ptr += sizeof(VkBool32);
7522 }
7523
reservedmarshal_VkPhysicalDeviceShaderExpectAssumeFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceShaderExpectAssumeFeatures * forMarshaling,uint8_t ** ptr)7524 void reservedmarshal_VkPhysicalDeviceShaderExpectAssumeFeatures(
7525 VulkanStreamGuest* vkStream, VkStructureType rootType,
7526 const VkPhysicalDeviceShaderExpectAssumeFeatures* forMarshaling, uint8_t** ptr) {
7527 (void)vkStream;
7528 (void)rootType;
7529 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7530 *ptr += sizeof(VkStructureType);
7531 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7532 rootType = forMarshaling->sType;
7533 }
7534 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7535 memcpy(*ptr, (VkBool32*)&forMarshaling->shaderExpectAssume, sizeof(VkBool32));
7536 *ptr += sizeof(VkBool32);
7537 }
7538
reservedmarshal_VkPhysicalDeviceLineRasterizationFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceLineRasterizationFeatures * forMarshaling,uint8_t ** ptr)7539 void reservedmarshal_VkPhysicalDeviceLineRasterizationFeatures(
7540 VulkanStreamGuest* vkStream, VkStructureType rootType,
7541 const VkPhysicalDeviceLineRasterizationFeatures* forMarshaling, uint8_t** ptr) {
7542 (void)vkStream;
7543 (void)rootType;
7544 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7545 *ptr += sizeof(VkStructureType);
7546 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7547 rootType = forMarshaling->sType;
7548 }
7549 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7550 memcpy(*ptr, (VkBool32*)&forMarshaling->rectangularLines, sizeof(VkBool32));
7551 *ptr += sizeof(VkBool32);
7552 memcpy(*ptr, (VkBool32*)&forMarshaling->bresenhamLines, sizeof(VkBool32));
7553 *ptr += sizeof(VkBool32);
7554 memcpy(*ptr, (VkBool32*)&forMarshaling->smoothLines, sizeof(VkBool32));
7555 *ptr += sizeof(VkBool32);
7556 memcpy(*ptr, (VkBool32*)&forMarshaling->stippledRectangularLines, sizeof(VkBool32));
7557 *ptr += sizeof(VkBool32);
7558 memcpy(*ptr, (VkBool32*)&forMarshaling->stippledBresenhamLines, sizeof(VkBool32));
7559 *ptr += sizeof(VkBool32);
7560 memcpy(*ptr, (VkBool32*)&forMarshaling->stippledSmoothLines, sizeof(VkBool32));
7561 *ptr += sizeof(VkBool32);
7562 }
7563
reservedmarshal_VkPhysicalDeviceLineRasterizationProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceLineRasterizationProperties * forMarshaling,uint8_t ** ptr)7564 void reservedmarshal_VkPhysicalDeviceLineRasterizationProperties(
7565 VulkanStreamGuest* vkStream, VkStructureType rootType,
7566 const VkPhysicalDeviceLineRasterizationProperties* forMarshaling, uint8_t** ptr) {
7567 (void)vkStream;
7568 (void)rootType;
7569 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7570 *ptr += sizeof(VkStructureType);
7571 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7572 rootType = forMarshaling->sType;
7573 }
7574 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7575 memcpy(*ptr, (uint32_t*)&forMarshaling->lineSubPixelPrecisionBits, sizeof(uint32_t));
7576 *ptr += sizeof(uint32_t);
7577 }
7578
reservedmarshal_VkPipelineRasterizationLineStateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineRasterizationLineStateCreateInfo * forMarshaling,uint8_t ** ptr)7579 void reservedmarshal_VkPipelineRasterizationLineStateCreateInfo(
7580 VulkanStreamGuest* vkStream, VkStructureType rootType,
7581 const VkPipelineRasterizationLineStateCreateInfo* forMarshaling, uint8_t** ptr) {
7582 (void)vkStream;
7583 (void)rootType;
7584 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7585 *ptr += sizeof(VkStructureType);
7586 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7587 rootType = forMarshaling->sType;
7588 }
7589 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7590 memcpy(*ptr, (VkLineRasterizationMode*)&forMarshaling->lineRasterizationMode,
7591 sizeof(VkLineRasterizationMode));
7592 *ptr += sizeof(VkLineRasterizationMode);
7593 memcpy(*ptr, (VkBool32*)&forMarshaling->stippledLineEnable, sizeof(VkBool32));
7594 *ptr += sizeof(VkBool32);
7595 memcpy(*ptr, (uint32_t*)&forMarshaling->lineStippleFactor, sizeof(uint32_t));
7596 *ptr += sizeof(uint32_t);
7597 memcpy(*ptr, (uint16_t*)&forMarshaling->lineStipplePattern, sizeof(uint16_t));
7598 *ptr += sizeof(uint16_t);
7599 }
7600
reservedmarshal_VkPhysicalDeviceVertexAttributeDivisorProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVertexAttributeDivisorProperties * forMarshaling,uint8_t ** ptr)7601 void reservedmarshal_VkPhysicalDeviceVertexAttributeDivisorProperties(
7602 VulkanStreamGuest* vkStream, VkStructureType rootType,
7603 const VkPhysicalDeviceVertexAttributeDivisorProperties* forMarshaling, uint8_t** ptr) {
7604 (void)vkStream;
7605 (void)rootType;
7606 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7607 *ptr += sizeof(VkStructureType);
7608 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7609 rootType = forMarshaling->sType;
7610 }
7611 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7612 memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexAttribDivisor, sizeof(uint32_t));
7613 *ptr += sizeof(uint32_t);
7614 memcpy(*ptr, (VkBool32*)&forMarshaling->supportsNonZeroFirstInstance, sizeof(VkBool32));
7615 *ptr += sizeof(VkBool32);
7616 }
7617
reservedmarshal_VkVertexInputBindingDivisorDescription(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkVertexInputBindingDivisorDescription * forMarshaling,uint8_t ** ptr)7618 void reservedmarshal_VkVertexInputBindingDivisorDescription(
7619 VulkanStreamGuest* vkStream, VkStructureType rootType,
7620 const VkVertexInputBindingDivisorDescription* forMarshaling, uint8_t** ptr) {
7621 (void)vkStream;
7622 (void)rootType;
7623 memcpy(*ptr, (uint32_t*)&forMarshaling->binding, sizeof(uint32_t));
7624 *ptr += sizeof(uint32_t);
7625 memcpy(*ptr, (uint32_t*)&forMarshaling->divisor, sizeof(uint32_t));
7626 *ptr += sizeof(uint32_t);
7627 }
7628
reservedmarshal_VkPipelineVertexInputDivisorStateCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineVertexInputDivisorStateCreateInfo * forMarshaling,uint8_t ** ptr)7629 void reservedmarshal_VkPipelineVertexInputDivisorStateCreateInfo(
7630 VulkanStreamGuest* vkStream, VkStructureType rootType,
7631 const VkPipelineVertexInputDivisorStateCreateInfo* forMarshaling, uint8_t** ptr) {
7632 (void)vkStream;
7633 (void)rootType;
7634 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7635 *ptr += sizeof(VkStructureType);
7636 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7637 rootType = forMarshaling->sType;
7638 }
7639 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7640 memcpy(*ptr, (uint32_t*)&forMarshaling->vertexBindingDivisorCount, sizeof(uint32_t));
7641 *ptr += sizeof(uint32_t);
7642 for (uint32_t i = 0; i < (uint32_t)forMarshaling->vertexBindingDivisorCount; ++i) {
7643 reservedmarshal_VkVertexInputBindingDivisorDescription(
7644 vkStream, rootType,
7645 (const VkVertexInputBindingDivisorDescription*)(forMarshaling->pVertexBindingDivisors +
7646 i),
7647 ptr);
7648 }
7649 }
7650
reservedmarshal_VkPhysicalDeviceVertexAttributeDivisorFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVertexAttributeDivisorFeatures * forMarshaling,uint8_t ** ptr)7651 void reservedmarshal_VkPhysicalDeviceVertexAttributeDivisorFeatures(
7652 VulkanStreamGuest* vkStream, VkStructureType rootType,
7653 const VkPhysicalDeviceVertexAttributeDivisorFeatures* forMarshaling, uint8_t** ptr) {
7654 (void)vkStream;
7655 (void)rootType;
7656 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7657 *ptr += sizeof(VkStructureType);
7658 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7659 rootType = forMarshaling->sType;
7660 }
7661 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7662 memcpy(*ptr, (VkBool32*)&forMarshaling->vertexAttributeInstanceRateDivisor, sizeof(VkBool32));
7663 *ptr += sizeof(VkBool32);
7664 memcpy(*ptr, (VkBool32*)&forMarshaling->vertexAttributeInstanceRateZeroDivisor,
7665 sizeof(VkBool32));
7666 *ptr += sizeof(VkBool32);
7667 }
7668
reservedmarshal_VkPhysicalDeviceIndexTypeUint8Features(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceIndexTypeUint8Features * forMarshaling,uint8_t ** ptr)7669 void reservedmarshal_VkPhysicalDeviceIndexTypeUint8Features(
7670 VulkanStreamGuest* vkStream, VkStructureType rootType,
7671 const VkPhysicalDeviceIndexTypeUint8Features* forMarshaling, uint8_t** ptr) {
7672 (void)vkStream;
7673 (void)rootType;
7674 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7675 *ptr += sizeof(VkStructureType);
7676 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7677 rootType = forMarshaling->sType;
7678 }
7679 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7680 memcpy(*ptr, (VkBool32*)&forMarshaling->indexTypeUint8, sizeof(VkBool32));
7681 *ptr += sizeof(VkBool32);
7682 }
7683
reservedmarshal_VkMemoryMapInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryMapInfo * forMarshaling,uint8_t ** ptr)7684 void reservedmarshal_VkMemoryMapInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
7685 const VkMemoryMapInfo* forMarshaling, uint8_t** ptr) {
7686 (void)vkStream;
7687 (void)rootType;
7688 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7689 *ptr += sizeof(VkStructureType);
7690 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7691 rootType = forMarshaling->sType;
7692 }
7693 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7694 memcpy(*ptr, (VkMemoryMapFlags*)&forMarshaling->flags, sizeof(VkMemoryMapFlags));
7695 *ptr += sizeof(VkMemoryMapFlags);
7696 uint64_t cgen_var_0;
7697 *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory));
7698 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
7699 *ptr += 1 * 8;
7700 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize));
7701 *ptr += sizeof(VkDeviceSize);
7702 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
7703 *ptr += sizeof(VkDeviceSize);
7704 }
7705
reservedmarshal_VkMemoryUnmapInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryUnmapInfo * forMarshaling,uint8_t ** ptr)7706 void reservedmarshal_VkMemoryUnmapInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
7707 const VkMemoryUnmapInfo* forMarshaling, uint8_t** ptr) {
7708 (void)vkStream;
7709 (void)rootType;
7710 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7711 *ptr += sizeof(VkStructureType);
7712 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7713 rootType = forMarshaling->sType;
7714 }
7715 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7716 memcpy(*ptr, (VkMemoryUnmapFlags*)&forMarshaling->flags, sizeof(VkMemoryUnmapFlags));
7717 *ptr += sizeof(VkMemoryUnmapFlags);
7718 uint64_t cgen_var_0;
7719 *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory));
7720 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
7721 *ptr += 1 * 8;
7722 }
7723
reservedmarshal_VkPhysicalDeviceMaintenance5Features(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMaintenance5Features * forMarshaling,uint8_t ** ptr)7724 void reservedmarshal_VkPhysicalDeviceMaintenance5Features(
7725 VulkanStreamGuest* vkStream, VkStructureType rootType,
7726 const VkPhysicalDeviceMaintenance5Features* forMarshaling, uint8_t** ptr) {
7727 (void)vkStream;
7728 (void)rootType;
7729 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7730 *ptr += sizeof(VkStructureType);
7731 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7732 rootType = forMarshaling->sType;
7733 }
7734 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7735 memcpy(*ptr, (VkBool32*)&forMarshaling->maintenance5, sizeof(VkBool32));
7736 *ptr += sizeof(VkBool32);
7737 }
7738
reservedmarshal_VkPhysicalDeviceMaintenance5Properties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMaintenance5Properties * forMarshaling,uint8_t ** ptr)7739 void reservedmarshal_VkPhysicalDeviceMaintenance5Properties(
7740 VulkanStreamGuest* vkStream, VkStructureType rootType,
7741 const VkPhysicalDeviceMaintenance5Properties* forMarshaling, uint8_t** ptr) {
7742 (void)vkStream;
7743 (void)rootType;
7744 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7745 *ptr += sizeof(VkStructureType);
7746 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7747 rootType = forMarshaling->sType;
7748 }
7749 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7750 memcpy(*ptr, (VkBool32*)&forMarshaling->earlyFragmentMultisampleCoverageAfterSampleCounting,
7751 sizeof(VkBool32));
7752 *ptr += sizeof(VkBool32);
7753 memcpy(*ptr, (VkBool32*)&forMarshaling->earlyFragmentSampleMaskTestBeforeSampleCounting,
7754 sizeof(VkBool32));
7755 *ptr += sizeof(VkBool32);
7756 memcpy(*ptr, (VkBool32*)&forMarshaling->depthStencilSwizzleOneSupport, sizeof(VkBool32));
7757 *ptr += sizeof(VkBool32);
7758 memcpy(*ptr, (VkBool32*)&forMarshaling->polygonModePointSize, sizeof(VkBool32));
7759 *ptr += sizeof(VkBool32);
7760 memcpy(*ptr, (VkBool32*)&forMarshaling->nonStrictSinglePixelWideLinesUseParallelogram,
7761 sizeof(VkBool32));
7762 *ptr += sizeof(VkBool32);
7763 memcpy(*ptr, (VkBool32*)&forMarshaling->nonStrictWideLinesUseParallelogram, sizeof(VkBool32));
7764 *ptr += sizeof(VkBool32);
7765 }
7766
reservedmarshal_VkRenderingAreaInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderingAreaInfo * forMarshaling,uint8_t ** ptr)7767 void reservedmarshal_VkRenderingAreaInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
7768 const VkRenderingAreaInfo* forMarshaling, uint8_t** ptr) {
7769 (void)vkStream;
7770 (void)rootType;
7771 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7772 *ptr += sizeof(VkStructureType);
7773 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7774 rootType = forMarshaling->sType;
7775 }
7776 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7777 memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t));
7778 *ptr += sizeof(uint32_t);
7779 memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
7780 *ptr += sizeof(uint32_t);
7781 // WARNING PTR CHECK
7782 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pColorAttachmentFormats;
7783 memcpy((*ptr), &cgen_var_0, 8);
7784 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7785 *ptr += 8;
7786 if (forMarshaling->pColorAttachmentFormats) {
7787 memcpy(*ptr, (const VkFormat*)forMarshaling->pColorAttachmentFormats,
7788 forMarshaling->colorAttachmentCount * sizeof(const VkFormat));
7789 *ptr += forMarshaling->colorAttachmentCount * sizeof(const VkFormat);
7790 }
7791 memcpy(*ptr, (VkFormat*)&forMarshaling->depthAttachmentFormat, sizeof(VkFormat));
7792 *ptr += sizeof(VkFormat);
7793 memcpy(*ptr, (VkFormat*)&forMarshaling->stencilAttachmentFormat, sizeof(VkFormat));
7794 *ptr += sizeof(VkFormat);
7795 }
7796
reservedmarshal_VkImageSubresource2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageSubresource2 * forMarshaling,uint8_t ** ptr)7797 void reservedmarshal_VkImageSubresource2(VulkanStreamGuest* vkStream, VkStructureType rootType,
7798 const VkImageSubresource2* forMarshaling, uint8_t** ptr) {
7799 (void)vkStream;
7800 (void)rootType;
7801 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7802 *ptr += sizeof(VkStructureType);
7803 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7804 rootType = forMarshaling->sType;
7805 }
7806 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7807 reservedmarshal_VkImageSubresource(
7808 vkStream, rootType, (VkImageSubresource*)(&forMarshaling->imageSubresource), ptr);
7809 }
7810
reservedmarshal_VkDeviceImageSubresourceInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceImageSubresourceInfo * forMarshaling,uint8_t ** ptr)7811 void reservedmarshal_VkDeviceImageSubresourceInfo(VulkanStreamGuest* vkStream,
7812 VkStructureType rootType,
7813 const VkDeviceImageSubresourceInfo* forMarshaling,
7814 uint8_t** ptr) {
7815 (void)vkStream;
7816 (void)rootType;
7817 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7818 *ptr += sizeof(VkStructureType);
7819 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7820 rootType = forMarshaling->sType;
7821 }
7822 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7823 reservedmarshal_VkImageCreateInfo(vkStream, rootType,
7824 (const VkImageCreateInfo*)(forMarshaling->pCreateInfo), ptr);
7825 reservedmarshal_VkImageSubresource2(
7826 vkStream, rootType, (const VkImageSubresource2*)(forMarshaling->pSubresource), ptr);
7827 }
7828
reservedmarshal_VkSubresourceLayout2(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubresourceLayout2 * forMarshaling,uint8_t ** ptr)7829 void reservedmarshal_VkSubresourceLayout2(VulkanStreamGuest* vkStream, VkStructureType rootType,
7830 const VkSubresourceLayout2* forMarshaling,
7831 uint8_t** ptr) {
7832 (void)vkStream;
7833 (void)rootType;
7834 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7835 *ptr += sizeof(VkStructureType);
7836 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7837 rootType = forMarshaling->sType;
7838 }
7839 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7840 reservedmarshal_VkSubresourceLayout(
7841 vkStream, rootType, (VkSubresourceLayout*)(&forMarshaling->subresourceLayout), ptr);
7842 }
7843
reservedmarshal_VkPipelineCreateFlags2CreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineCreateFlags2CreateInfo * forMarshaling,uint8_t ** ptr)7844 void reservedmarshal_VkPipelineCreateFlags2CreateInfo(
7845 VulkanStreamGuest* vkStream, VkStructureType rootType,
7846 const VkPipelineCreateFlags2CreateInfo* forMarshaling, uint8_t** ptr) {
7847 (void)vkStream;
7848 (void)rootType;
7849 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7850 *ptr += sizeof(VkStructureType);
7851 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7852 rootType = forMarshaling->sType;
7853 }
7854 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7855 memcpy(*ptr, (VkPipelineCreateFlags2*)&forMarshaling->flags, sizeof(VkPipelineCreateFlags2));
7856 *ptr += sizeof(VkPipelineCreateFlags2);
7857 }
7858
reservedmarshal_VkBufferUsageFlags2CreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferUsageFlags2CreateInfo * forMarshaling,uint8_t ** ptr)7859 void reservedmarshal_VkBufferUsageFlags2CreateInfo(
7860 VulkanStreamGuest* vkStream, VkStructureType rootType,
7861 const VkBufferUsageFlags2CreateInfo* forMarshaling, uint8_t** ptr) {
7862 (void)vkStream;
7863 (void)rootType;
7864 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7865 *ptr += sizeof(VkStructureType);
7866 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7867 rootType = forMarshaling->sType;
7868 }
7869 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7870 memcpy(*ptr, (VkBufferUsageFlags2*)&forMarshaling->usage, sizeof(VkBufferUsageFlags2));
7871 *ptr += sizeof(VkBufferUsageFlags2);
7872 }
7873
reservedmarshal_VkPhysicalDevicePushDescriptorProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePushDescriptorProperties * forMarshaling,uint8_t ** ptr)7874 void reservedmarshal_VkPhysicalDevicePushDescriptorProperties(
7875 VulkanStreamGuest* vkStream, VkStructureType rootType,
7876 const VkPhysicalDevicePushDescriptorProperties* forMarshaling, uint8_t** ptr) {
7877 (void)vkStream;
7878 (void)rootType;
7879 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7880 *ptr += sizeof(VkStructureType);
7881 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7882 rootType = forMarshaling->sType;
7883 }
7884 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7885 memcpy(*ptr, (uint32_t*)&forMarshaling->maxPushDescriptors, sizeof(uint32_t));
7886 *ptr += sizeof(uint32_t);
7887 }
7888
reservedmarshal_VkPhysicalDeviceDynamicRenderingLocalReadFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceDynamicRenderingLocalReadFeatures * forMarshaling,uint8_t ** ptr)7889 void reservedmarshal_VkPhysicalDeviceDynamicRenderingLocalReadFeatures(
7890 VulkanStreamGuest* vkStream, VkStructureType rootType,
7891 const VkPhysicalDeviceDynamicRenderingLocalReadFeatures* forMarshaling, uint8_t** ptr) {
7892 (void)vkStream;
7893 (void)rootType;
7894 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7895 *ptr += sizeof(VkStructureType);
7896 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7897 rootType = forMarshaling->sType;
7898 }
7899 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7900 memcpy(*ptr, (VkBool32*)&forMarshaling->dynamicRenderingLocalRead, sizeof(VkBool32));
7901 *ptr += sizeof(VkBool32);
7902 }
7903
reservedmarshal_VkRenderingAttachmentLocationInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderingAttachmentLocationInfo * forMarshaling,uint8_t ** ptr)7904 void reservedmarshal_VkRenderingAttachmentLocationInfo(
7905 VulkanStreamGuest* vkStream, VkStructureType rootType,
7906 const VkRenderingAttachmentLocationInfo* forMarshaling, uint8_t** ptr) {
7907 (void)vkStream;
7908 (void)rootType;
7909 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7910 *ptr += sizeof(VkStructureType);
7911 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7912 rootType = forMarshaling->sType;
7913 }
7914 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7915 memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
7916 *ptr += sizeof(uint32_t);
7917 // WARNING PTR CHECK
7918 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pColorAttachmentLocations;
7919 memcpy((*ptr), &cgen_var_0, 8);
7920 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7921 *ptr += 8;
7922 if (forMarshaling->pColorAttachmentLocations) {
7923 memcpy(*ptr, (const uint32_t*)forMarshaling->pColorAttachmentLocations,
7924 forMarshaling->colorAttachmentCount * sizeof(const uint32_t));
7925 *ptr += forMarshaling->colorAttachmentCount * sizeof(const uint32_t);
7926 }
7927 }
7928
reservedmarshal_VkRenderingInputAttachmentIndexInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderingInputAttachmentIndexInfo * forMarshaling,uint8_t ** ptr)7929 void reservedmarshal_VkRenderingInputAttachmentIndexInfo(
7930 VulkanStreamGuest* vkStream, VkStructureType rootType,
7931 const VkRenderingInputAttachmentIndexInfo* forMarshaling, uint8_t** ptr) {
7932 (void)vkStream;
7933 (void)rootType;
7934 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7935 *ptr += sizeof(VkStructureType);
7936 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7937 rootType = forMarshaling->sType;
7938 }
7939 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7940 memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
7941 *ptr += sizeof(uint32_t);
7942 // WARNING PTR CHECK
7943 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pColorAttachmentInputIndices;
7944 memcpy((*ptr), &cgen_var_0, 8);
7945 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7946 *ptr += 8;
7947 if (forMarshaling->pColorAttachmentInputIndices) {
7948 memcpy(*ptr, (const uint32_t*)forMarshaling->pColorAttachmentInputIndices,
7949 forMarshaling->colorAttachmentCount * sizeof(const uint32_t));
7950 *ptr += forMarshaling->colorAttachmentCount * sizeof(const uint32_t);
7951 }
7952 // WARNING PTR CHECK
7953 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pDepthInputAttachmentIndex;
7954 memcpy((*ptr), &cgen_var_1, 8);
7955 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7956 *ptr += 8;
7957 if (forMarshaling->pDepthInputAttachmentIndex) {
7958 memcpy(*ptr, (const uint32_t*)forMarshaling->pDepthInputAttachmentIndex,
7959 sizeof(const uint32_t));
7960 *ptr += sizeof(const uint32_t);
7961 }
7962 // WARNING PTR CHECK
7963 uint64_t cgen_var_2 = (uint64_t)(uintptr_t)forMarshaling->pStencilInputAttachmentIndex;
7964 memcpy((*ptr), &cgen_var_2, 8);
7965 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7966 *ptr += 8;
7967 if (forMarshaling->pStencilInputAttachmentIndex) {
7968 memcpy(*ptr, (const uint32_t*)forMarshaling->pStencilInputAttachmentIndex,
7969 sizeof(const uint32_t));
7970 *ptr += sizeof(const uint32_t);
7971 }
7972 }
7973
reservedmarshal_VkPhysicalDeviceMaintenance6Features(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMaintenance6Features * forMarshaling,uint8_t ** ptr)7974 void reservedmarshal_VkPhysicalDeviceMaintenance6Features(
7975 VulkanStreamGuest* vkStream, VkStructureType rootType,
7976 const VkPhysicalDeviceMaintenance6Features* forMarshaling, uint8_t** ptr) {
7977 (void)vkStream;
7978 (void)rootType;
7979 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7980 *ptr += sizeof(VkStructureType);
7981 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7982 rootType = forMarshaling->sType;
7983 }
7984 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7985 memcpy(*ptr, (VkBool32*)&forMarshaling->maintenance6, sizeof(VkBool32));
7986 *ptr += sizeof(VkBool32);
7987 }
7988
reservedmarshal_VkPhysicalDeviceMaintenance6Properties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMaintenance6Properties * forMarshaling,uint8_t ** ptr)7989 void reservedmarshal_VkPhysicalDeviceMaintenance6Properties(
7990 VulkanStreamGuest* vkStream, VkStructureType rootType,
7991 const VkPhysicalDeviceMaintenance6Properties* forMarshaling, uint8_t** ptr) {
7992 (void)vkStream;
7993 (void)rootType;
7994 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7995 *ptr += sizeof(VkStructureType);
7996 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7997 rootType = forMarshaling->sType;
7998 }
7999 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8000 memcpy(*ptr, (VkBool32*)&forMarshaling->blockTexelViewCompatibleMultipleLayers,
8001 sizeof(VkBool32));
8002 *ptr += sizeof(VkBool32);
8003 memcpy(*ptr, (uint32_t*)&forMarshaling->maxCombinedImageSamplerDescriptorCount,
8004 sizeof(uint32_t));
8005 *ptr += sizeof(uint32_t);
8006 memcpy(*ptr, (VkBool32*)&forMarshaling->fragmentShadingRateClampCombinerInputs,
8007 sizeof(VkBool32));
8008 *ptr += sizeof(VkBool32);
8009 }
8010
reservedmarshal_VkBindMemoryStatus(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBindMemoryStatus * forMarshaling,uint8_t ** ptr)8011 void reservedmarshal_VkBindMemoryStatus(VulkanStreamGuest* vkStream, VkStructureType rootType,
8012 const VkBindMemoryStatus* forMarshaling, uint8_t** ptr) {
8013 (void)vkStream;
8014 (void)rootType;
8015 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8016 *ptr += sizeof(VkStructureType);
8017 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8018 rootType = forMarshaling->sType;
8019 }
8020 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8021 memcpy(*ptr, (VkResult*)forMarshaling->pResult, sizeof(VkResult));
8022 *ptr += sizeof(VkResult);
8023 }
8024
reservedmarshal_VkBindDescriptorSetsInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBindDescriptorSetsInfo * forMarshaling,uint8_t ** ptr)8025 void reservedmarshal_VkBindDescriptorSetsInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
8026 const VkBindDescriptorSetsInfo* forMarshaling,
8027 uint8_t** ptr) {
8028 (void)vkStream;
8029 (void)rootType;
8030 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8031 *ptr += sizeof(VkStructureType);
8032 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8033 rootType = forMarshaling->sType;
8034 }
8035 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8036 memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->stageFlags, sizeof(VkShaderStageFlags));
8037 *ptr += sizeof(VkShaderStageFlags);
8038 uint64_t cgen_var_0;
8039 *&cgen_var_0 = get_host_u64_VkPipelineLayout((*&forMarshaling->layout));
8040 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8041 *ptr += 1 * 8;
8042 memcpy(*ptr, (uint32_t*)&forMarshaling->firstSet, sizeof(uint32_t));
8043 *ptr += sizeof(uint32_t);
8044 memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorSetCount, sizeof(uint32_t));
8045 *ptr += sizeof(uint32_t);
8046 if (forMarshaling->descriptorSetCount) {
8047 uint8_t* cgen_var_1_ptr = (uint8_t*)(*ptr);
8048 if (forMarshaling) {
8049 for (uint32_t k = 0; k < forMarshaling->descriptorSetCount; ++k) {
8050 uint64_t tmpval = get_host_u64_VkDescriptorSet(forMarshaling->pDescriptorSets[k]);
8051 memcpy(cgen_var_1_ptr + k * 8, &tmpval, sizeof(uint64_t));
8052 }
8053 }
8054 *ptr += 8 * forMarshaling->descriptorSetCount;
8055 }
8056 memcpy(*ptr, (uint32_t*)&forMarshaling->dynamicOffsetCount, sizeof(uint32_t));
8057 *ptr += sizeof(uint32_t);
8058 // WARNING PTR CHECK
8059 uint64_t cgen_var_2 = (uint64_t)(uintptr_t)forMarshaling->pDynamicOffsets;
8060 memcpy((*ptr), &cgen_var_2, 8);
8061 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8062 *ptr += 8;
8063 if (forMarshaling->pDynamicOffsets) {
8064 memcpy(*ptr, (const uint32_t*)forMarshaling->pDynamicOffsets,
8065 forMarshaling->dynamicOffsetCount * sizeof(const uint32_t));
8066 *ptr += forMarshaling->dynamicOffsetCount * sizeof(const uint32_t);
8067 }
8068 }
8069
reservedmarshal_VkPushConstantsInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPushConstantsInfo * forMarshaling,uint8_t ** ptr)8070 void reservedmarshal_VkPushConstantsInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
8071 const VkPushConstantsInfo* forMarshaling, uint8_t** ptr) {
8072 (void)vkStream;
8073 (void)rootType;
8074 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8075 *ptr += sizeof(VkStructureType);
8076 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8077 rootType = forMarshaling->sType;
8078 }
8079 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8080 uint64_t cgen_var_0;
8081 *&cgen_var_0 = get_host_u64_VkPipelineLayout((*&forMarshaling->layout));
8082 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8083 *ptr += 1 * 8;
8084 memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->stageFlags, sizeof(VkShaderStageFlags));
8085 *ptr += sizeof(VkShaderStageFlags);
8086 memcpy(*ptr, (uint32_t*)&forMarshaling->offset, sizeof(uint32_t));
8087 *ptr += sizeof(uint32_t);
8088 memcpy(*ptr, (uint32_t*)&forMarshaling->size, sizeof(uint32_t));
8089 *ptr += sizeof(uint32_t);
8090 memcpy(*ptr, (const void*)forMarshaling->pValues, forMarshaling->size * sizeof(const uint8_t));
8091 *ptr += forMarshaling->size * sizeof(const uint8_t);
8092 }
8093
reservedmarshal_VkPushDescriptorSetInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPushDescriptorSetInfo * forMarshaling,uint8_t ** ptr)8094 void reservedmarshal_VkPushDescriptorSetInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
8095 const VkPushDescriptorSetInfo* forMarshaling,
8096 uint8_t** ptr) {
8097 (void)vkStream;
8098 (void)rootType;
8099 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8100 *ptr += sizeof(VkStructureType);
8101 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8102 rootType = forMarshaling->sType;
8103 }
8104 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8105 memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->stageFlags, sizeof(VkShaderStageFlags));
8106 *ptr += sizeof(VkShaderStageFlags);
8107 uint64_t cgen_var_0;
8108 *&cgen_var_0 = get_host_u64_VkPipelineLayout((*&forMarshaling->layout));
8109 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8110 *ptr += 1 * 8;
8111 memcpy(*ptr, (uint32_t*)&forMarshaling->set, sizeof(uint32_t));
8112 *ptr += sizeof(uint32_t);
8113 memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorWriteCount, sizeof(uint32_t));
8114 *ptr += sizeof(uint32_t);
8115 for (uint32_t i = 0; i < (uint32_t)forMarshaling->descriptorWriteCount; ++i) {
8116 reservedmarshal_VkWriteDescriptorSet(
8117 vkStream, rootType, (const VkWriteDescriptorSet*)(forMarshaling->pDescriptorWrites + i),
8118 ptr);
8119 }
8120 }
8121
reservedmarshal_VkPushDescriptorSetWithTemplateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPushDescriptorSetWithTemplateInfo * forMarshaling,uint8_t ** ptr)8122 void reservedmarshal_VkPushDescriptorSetWithTemplateInfo(
8123 VulkanStreamGuest* vkStream, VkStructureType rootType,
8124 const VkPushDescriptorSetWithTemplateInfo* forMarshaling, uint8_t** ptr) {
8125 (void)vkStream;
8126 (void)rootType;
8127 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8128 *ptr += sizeof(VkStructureType);
8129 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8130 rootType = forMarshaling->sType;
8131 }
8132 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8133 uint64_t cgen_var_0;
8134 *&cgen_var_0 =
8135 get_host_u64_VkDescriptorUpdateTemplate((*&forMarshaling->descriptorUpdateTemplate));
8136 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8137 *ptr += 1 * 8;
8138 uint64_t cgen_var_1;
8139 *&cgen_var_1 = get_host_u64_VkPipelineLayout((*&forMarshaling->layout));
8140 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
8141 *ptr += 1 * 8;
8142 memcpy(*ptr, (uint32_t*)&forMarshaling->set, sizeof(uint32_t));
8143 *ptr += sizeof(uint32_t);
8144 memcpy(*ptr, (const void*)forMarshaling->pData, sizeof(const uint8_t));
8145 *ptr += sizeof(const uint8_t);
8146 }
8147
reservedmarshal_VkPhysicalDevicePipelineProtectedAccessFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePipelineProtectedAccessFeatures * forMarshaling,uint8_t ** ptr)8148 void reservedmarshal_VkPhysicalDevicePipelineProtectedAccessFeatures(
8149 VulkanStreamGuest* vkStream, VkStructureType rootType,
8150 const VkPhysicalDevicePipelineProtectedAccessFeatures* forMarshaling, uint8_t** ptr) {
8151 (void)vkStream;
8152 (void)rootType;
8153 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8154 *ptr += sizeof(VkStructureType);
8155 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8156 rootType = forMarshaling->sType;
8157 }
8158 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8159 memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineProtectedAccess, sizeof(VkBool32));
8160 *ptr += sizeof(VkBool32);
8161 }
8162
reservedmarshal_VkPhysicalDevicePipelineRobustnessFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePipelineRobustnessFeatures * forMarshaling,uint8_t ** ptr)8163 void reservedmarshal_VkPhysicalDevicePipelineRobustnessFeatures(
8164 VulkanStreamGuest* vkStream, VkStructureType rootType,
8165 const VkPhysicalDevicePipelineRobustnessFeatures* forMarshaling, uint8_t** ptr) {
8166 (void)vkStream;
8167 (void)rootType;
8168 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8169 *ptr += sizeof(VkStructureType);
8170 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8171 rootType = forMarshaling->sType;
8172 }
8173 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8174 memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineRobustness, sizeof(VkBool32));
8175 *ptr += sizeof(VkBool32);
8176 }
8177
reservedmarshal_VkPhysicalDevicePipelineRobustnessProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePipelineRobustnessProperties * forMarshaling,uint8_t ** ptr)8178 void reservedmarshal_VkPhysicalDevicePipelineRobustnessProperties(
8179 VulkanStreamGuest* vkStream, VkStructureType rootType,
8180 const VkPhysicalDevicePipelineRobustnessProperties* forMarshaling, uint8_t** ptr) {
8181 (void)vkStream;
8182 (void)rootType;
8183 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8184 *ptr += sizeof(VkStructureType);
8185 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8186 rootType = forMarshaling->sType;
8187 }
8188 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8189 memcpy(*ptr,
8190 (VkPipelineRobustnessBufferBehavior*)&forMarshaling->defaultRobustnessStorageBuffers,
8191 sizeof(VkPipelineRobustnessBufferBehavior));
8192 *ptr += sizeof(VkPipelineRobustnessBufferBehavior);
8193 memcpy(*ptr,
8194 (VkPipelineRobustnessBufferBehavior*)&forMarshaling->defaultRobustnessUniformBuffers,
8195 sizeof(VkPipelineRobustnessBufferBehavior));
8196 *ptr += sizeof(VkPipelineRobustnessBufferBehavior);
8197 memcpy(*ptr, (VkPipelineRobustnessBufferBehavior*)&forMarshaling->defaultRobustnessVertexInputs,
8198 sizeof(VkPipelineRobustnessBufferBehavior));
8199 *ptr += sizeof(VkPipelineRobustnessBufferBehavior);
8200 memcpy(*ptr, (VkPipelineRobustnessImageBehavior*)&forMarshaling->defaultRobustnessImages,
8201 sizeof(VkPipelineRobustnessImageBehavior));
8202 *ptr += sizeof(VkPipelineRobustnessImageBehavior);
8203 }
8204
reservedmarshal_VkPipelineRobustnessCreateInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineRobustnessCreateInfo * forMarshaling,uint8_t ** ptr)8205 void reservedmarshal_VkPipelineRobustnessCreateInfo(
8206 VulkanStreamGuest* vkStream, VkStructureType rootType,
8207 const VkPipelineRobustnessCreateInfo* forMarshaling, uint8_t** ptr) {
8208 (void)vkStream;
8209 (void)rootType;
8210 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8211 *ptr += sizeof(VkStructureType);
8212 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8213 rootType = forMarshaling->sType;
8214 }
8215 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8216 memcpy(*ptr, (VkPipelineRobustnessBufferBehavior*)&forMarshaling->storageBuffers,
8217 sizeof(VkPipelineRobustnessBufferBehavior));
8218 *ptr += sizeof(VkPipelineRobustnessBufferBehavior);
8219 memcpy(*ptr, (VkPipelineRobustnessBufferBehavior*)&forMarshaling->uniformBuffers,
8220 sizeof(VkPipelineRobustnessBufferBehavior));
8221 *ptr += sizeof(VkPipelineRobustnessBufferBehavior);
8222 memcpy(*ptr, (VkPipelineRobustnessBufferBehavior*)&forMarshaling->vertexInputs,
8223 sizeof(VkPipelineRobustnessBufferBehavior));
8224 *ptr += sizeof(VkPipelineRobustnessBufferBehavior);
8225 memcpy(*ptr, (VkPipelineRobustnessImageBehavior*)&forMarshaling->images,
8226 sizeof(VkPipelineRobustnessImageBehavior));
8227 *ptr += sizeof(VkPipelineRobustnessImageBehavior);
8228 }
8229
reservedmarshal_VkPhysicalDeviceHostImageCopyFeatures(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceHostImageCopyFeatures * forMarshaling,uint8_t ** ptr)8230 void reservedmarshal_VkPhysicalDeviceHostImageCopyFeatures(
8231 VulkanStreamGuest* vkStream, VkStructureType rootType,
8232 const VkPhysicalDeviceHostImageCopyFeatures* forMarshaling, uint8_t** ptr) {
8233 (void)vkStream;
8234 (void)rootType;
8235 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8236 *ptr += sizeof(VkStructureType);
8237 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8238 rootType = forMarshaling->sType;
8239 }
8240 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8241 memcpy(*ptr, (VkBool32*)&forMarshaling->hostImageCopy, sizeof(VkBool32));
8242 *ptr += sizeof(VkBool32);
8243 }
8244
reservedmarshal_VkPhysicalDeviceHostImageCopyProperties(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceHostImageCopyProperties * forMarshaling,uint8_t ** ptr)8245 void reservedmarshal_VkPhysicalDeviceHostImageCopyProperties(
8246 VulkanStreamGuest* vkStream, VkStructureType rootType,
8247 const VkPhysicalDeviceHostImageCopyProperties* forMarshaling, uint8_t** ptr) {
8248 (void)vkStream;
8249 (void)rootType;
8250 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8251 *ptr += sizeof(VkStructureType);
8252 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8253 rootType = forMarshaling->sType;
8254 }
8255 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8256 memcpy(*ptr, (uint32_t*)&forMarshaling->copySrcLayoutCount, sizeof(uint32_t));
8257 *ptr += sizeof(uint32_t);
8258 // WARNING PTR CHECK
8259 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pCopySrcLayouts;
8260 memcpy((*ptr), &cgen_var_0, 8);
8261 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8262 *ptr += 8;
8263 if (forMarshaling->pCopySrcLayouts) {
8264 memcpy(*ptr, (VkImageLayout*)forMarshaling->pCopySrcLayouts,
8265 forMarshaling->copySrcLayoutCount * sizeof(VkImageLayout));
8266 *ptr += forMarshaling->copySrcLayoutCount * sizeof(VkImageLayout);
8267 }
8268 memcpy(*ptr, (uint32_t*)&forMarshaling->copyDstLayoutCount, sizeof(uint32_t));
8269 *ptr += sizeof(uint32_t);
8270 // WARNING PTR CHECK
8271 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pCopyDstLayouts;
8272 memcpy((*ptr), &cgen_var_1, 8);
8273 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8274 *ptr += 8;
8275 if (forMarshaling->pCopyDstLayouts) {
8276 memcpy(*ptr, (VkImageLayout*)forMarshaling->pCopyDstLayouts,
8277 forMarshaling->copyDstLayoutCount * sizeof(VkImageLayout));
8278 *ptr += forMarshaling->copyDstLayoutCount * sizeof(VkImageLayout);
8279 }
8280 memcpy(*ptr, (uint8_t*)forMarshaling->optimalTilingLayoutUUID, VK_UUID_SIZE * sizeof(uint8_t));
8281 *ptr += VK_UUID_SIZE * sizeof(uint8_t);
8282 memcpy(*ptr, (VkBool32*)&forMarshaling->identicalMemoryTypeRequirements, sizeof(VkBool32));
8283 *ptr += sizeof(VkBool32);
8284 }
8285
reservedmarshal_VkMemoryToImageCopy(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryToImageCopy * forMarshaling,uint8_t ** ptr)8286 void reservedmarshal_VkMemoryToImageCopy(VulkanStreamGuest* vkStream, VkStructureType rootType,
8287 const VkMemoryToImageCopy* forMarshaling, uint8_t** ptr) {
8288 (void)vkStream;
8289 (void)rootType;
8290 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8291 *ptr += sizeof(VkStructureType);
8292 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8293 rootType = forMarshaling->sType;
8294 }
8295 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8296 memcpy(*ptr, (const void*)forMarshaling->pHostPointer, sizeof(const uint8_t));
8297 *ptr += sizeof(const uint8_t);
8298 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryRowLength, sizeof(uint32_t));
8299 *ptr += sizeof(uint32_t);
8300 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryImageHeight, sizeof(uint32_t));
8301 *ptr += sizeof(uint32_t);
8302 reservedmarshal_VkImageSubresourceLayers(
8303 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->imageSubresource), ptr);
8304 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->imageOffset), ptr);
8305 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->imageExtent), ptr);
8306 }
8307
reservedmarshal_VkImageToMemoryCopy(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageToMemoryCopy * forMarshaling,uint8_t ** ptr)8308 void reservedmarshal_VkImageToMemoryCopy(VulkanStreamGuest* vkStream, VkStructureType rootType,
8309 const VkImageToMemoryCopy* forMarshaling, uint8_t** ptr) {
8310 (void)vkStream;
8311 (void)rootType;
8312 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8313 *ptr += sizeof(VkStructureType);
8314 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8315 rootType = forMarshaling->sType;
8316 }
8317 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8318 memcpy(*ptr, (void*)forMarshaling->pHostPointer, sizeof(uint8_t));
8319 *ptr += sizeof(uint8_t);
8320 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryRowLength, sizeof(uint32_t));
8321 *ptr += sizeof(uint32_t);
8322 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryImageHeight, sizeof(uint32_t));
8323 *ptr += sizeof(uint32_t);
8324 reservedmarshal_VkImageSubresourceLayers(
8325 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->imageSubresource), ptr);
8326 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->imageOffset), ptr);
8327 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->imageExtent), ptr);
8328 }
8329
reservedmarshal_VkCopyMemoryToImageInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCopyMemoryToImageInfo * forMarshaling,uint8_t ** ptr)8330 void reservedmarshal_VkCopyMemoryToImageInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
8331 const VkCopyMemoryToImageInfo* forMarshaling,
8332 uint8_t** ptr) {
8333 (void)vkStream;
8334 (void)rootType;
8335 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8336 *ptr += sizeof(VkStructureType);
8337 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8338 rootType = forMarshaling->sType;
8339 }
8340 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8341 memcpy(*ptr, (VkHostImageCopyFlags*)&forMarshaling->flags, sizeof(VkHostImageCopyFlags));
8342 *ptr += sizeof(VkHostImageCopyFlags);
8343 uint64_t cgen_var_0;
8344 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->dstImage));
8345 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8346 *ptr += 1 * 8;
8347 memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout));
8348 *ptr += sizeof(VkImageLayout);
8349 memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t));
8350 *ptr += sizeof(uint32_t);
8351 for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) {
8352 reservedmarshal_VkMemoryToImageCopy(
8353 vkStream, rootType, (const VkMemoryToImageCopy*)(forMarshaling->pRegions + i), ptr);
8354 }
8355 }
8356
reservedmarshal_VkCopyImageToMemoryInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCopyImageToMemoryInfo * forMarshaling,uint8_t ** ptr)8357 void reservedmarshal_VkCopyImageToMemoryInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
8358 const VkCopyImageToMemoryInfo* forMarshaling,
8359 uint8_t** ptr) {
8360 (void)vkStream;
8361 (void)rootType;
8362 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8363 *ptr += sizeof(VkStructureType);
8364 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8365 rootType = forMarshaling->sType;
8366 }
8367 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8368 memcpy(*ptr, (VkHostImageCopyFlags*)&forMarshaling->flags, sizeof(VkHostImageCopyFlags));
8369 *ptr += sizeof(VkHostImageCopyFlags);
8370 uint64_t cgen_var_0;
8371 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage));
8372 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8373 *ptr += 1 * 8;
8374 memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout));
8375 *ptr += sizeof(VkImageLayout);
8376 memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t));
8377 *ptr += sizeof(uint32_t);
8378 for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) {
8379 reservedmarshal_VkImageToMemoryCopy(
8380 vkStream, rootType, (const VkImageToMemoryCopy*)(forMarshaling->pRegions + i), ptr);
8381 }
8382 }
8383
reservedmarshal_VkCopyImageToImageInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCopyImageToImageInfo * forMarshaling,uint8_t ** ptr)8384 void reservedmarshal_VkCopyImageToImageInfo(VulkanStreamGuest* vkStream, VkStructureType rootType,
8385 const VkCopyImageToImageInfo* forMarshaling,
8386 uint8_t** ptr) {
8387 (void)vkStream;
8388 (void)rootType;
8389 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8390 *ptr += sizeof(VkStructureType);
8391 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8392 rootType = forMarshaling->sType;
8393 }
8394 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8395 memcpy(*ptr, (VkHostImageCopyFlags*)&forMarshaling->flags, sizeof(VkHostImageCopyFlags));
8396 *ptr += sizeof(VkHostImageCopyFlags);
8397 uint64_t cgen_var_0;
8398 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage));
8399 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8400 *ptr += 1 * 8;
8401 memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout));
8402 *ptr += sizeof(VkImageLayout);
8403 uint64_t cgen_var_1;
8404 *&cgen_var_1 = get_host_u64_VkImage((*&forMarshaling->dstImage));
8405 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
8406 *ptr += 1 * 8;
8407 memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout));
8408 *ptr += sizeof(VkImageLayout);
8409 memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t));
8410 *ptr += sizeof(uint32_t);
8411 for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) {
8412 reservedmarshal_VkImageCopy2(vkStream, rootType,
8413 (const VkImageCopy2*)(forMarshaling->pRegions + i), ptr);
8414 }
8415 }
8416
reservedmarshal_VkHostImageLayoutTransitionInfo(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkHostImageLayoutTransitionInfo * forMarshaling,uint8_t ** ptr)8417 void reservedmarshal_VkHostImageLayoutTransitionInfo(
8418 VulkanStreamGuest* vkStream, VkStructureType rootType,
8419 const VkHostImageLayoutTransitionInfo* forMarshaling, uint8_t** ptr) {
8420 (void)vkStream;
8421 (void)rootType;
8422 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8423 *ptr += sizeof(VkStructureType);
8424 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8425 rootType = forMarshaling->sType;
8426 }
8427 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8428 uint64_t cgen_var_0;
8429 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image));
8430 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8431 *ptr += 1 * 8;
8432 memcpy(*ptr, (VkImageLayout*)&forMarshaling->oldLayout, sizeof(VkImageLayout));
8433 *ptr += sizeof(VkImageLayout);
8434 memcpy(*ptr, (VkImageLayout*)&forMarshaling->newLayout, sizeof(VkImageLayout));
8435 *ptr += sizeof(VkImageLayout);
8436 reservedmarshal_VkImageSubresourceRange(
8437 vkStream, rootType, (VkImageSubresourceRange*)(&forMarshaling->subresourceRange), ptr);
8438 }
8439
reservedmarshal_VkSubresourceHostMemcpySize(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubresourceHostMemcpySize * forMarshaling,uint8_t ** ptr)8440 void reservedmarshal_VkSubresourceHostMemcpySize(VulkanStreamGuest* vkStream,
8441 VkStructureType rootType,
8442 const VkSubresourceHostMemcpySize* forMarshaling,
8443 uint8_t** ptr) {
8444 (void)vkStream;
8445 (void)rootType;
8446 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8447 *ptr += sizeof(VkStructureType);
8448 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8449 rootType = forMarshaling->sType;
8450 }
8451 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8452 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
8453 *ptr += sizeof(VkDeviceSize);
8454 }
8455
reservedmarshal_VkHostImageCopyDevicePerformanceQuery(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkHostImageCopyDevicePerformanceQuery * forMarshaling,uint8_t ** ptr)8456 void reservedmarshal_VkHostImageCopyDevicePerformanceQuery(
8457 VulkanStreamGuest* vkStream, VkStructureType rootType,
8458 const VkHostImageCopyDevicePerformanceQuery* forMarshaling, uint8_t** ptr) {
8459 (void)vkStream;
8460 (void)rootType;
8461 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8462 *ptr += sizeof(VkStructureType);
8463 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8464 rootType = forMarshaling->sType;
8465 }
8466 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8467 memcpy(*ptr, (VkBool32*)&forMarshaling->optimalDeviceAccess, sizeof(VkBool32));
8468 *ptr += sizeof(VkBool32);
8469 memcpy(*ptr, (VkBool32*)&forMarshaling->identicalMemoryLayout, sizeof(VkBool32));
8470 *ptr += sizeof(VkBool32);
8471 }
8472
8473 #endif
8474 #ifdef VK_KHR_external_semaphore_fd
reservedmarshal_VkImportSemaphoreFdInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImportSemaphoreFdInfoKHR * forMarshaling,uint8_t ** ptr)8475 void reservedmarshal_VkImportSemaphoreFdInfoKHR(VulkanStreamGuest* vkStream,
8476 VkStructureType rootType,
8477 const VkImportSemaphoreFdInfoKHR* forMarshaling,
8478 uint8_t** ptr) {
8479 (void)vkStream;
8480 (void)rootType;
8481 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8482 *ptr += sizeof(VkStructureType);
8483 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8484 rootType = forMarshaling->sType;
8485 }
8486 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8487 uint64_t cgen_var_0;
8488 *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore));
8489 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8490 *ptr += 1 * 8;
8491 memcpy(*ptr, (VkSemaphoreImportFlags*)&forMarshaling->flags, sizeof(VkSemaphoreImportFlags));
8492 *ptr += sizeof(VkSemaphoreImportFlags);
8493 memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlagBits*)&forMarshaling->handleType,
8494 sizeof(VkExternalSemaphoreHandleTypeFlagBits));
8495 *ptr += sizeof(VkExternalSemaphoreHandleTypeFlagBits);
8496 memcpy(*ptr, (int*)&forMarshaling->fd, sizeof(int));
8497 *ptr += sizeof(int);
8498 }
8499
reservedmarshal_VkSemaphoreGetFdInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSemaphoreGetFdInfoKHR * forMarshaling,uint8_t ** ptr)8500 void reservedmarshal_VkSemaphoreGetFdInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
8501 const VkSemaphoreGetFdInfoKHR* forMarshaling,
8502 uint8_t** ptr) {
8503 (void)vkStream;
8504 (void)rootType;
8505 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8506 *ptr += sizeof(VkStructureType);
8507 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8508 rootType = forMarshaling->sType;
8509 }
8510 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8511 uint64_t cgen_var_0;
8512 *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore));
8513 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8514 *ptr += 1 * 8;
8515 memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlagBits*)&forMarshaling->handleType,
8516 sizeof(VkExternalSemaphoreHandleTypeFlagBits));
8517 *ptr += sizeof(VkExternalSemaphoreHandleTypeFlagBits);
8518 }
8519
8520 #endif
8521 #ifdef VK_KHR_incremental_present
reservedmarshal_VkRectLayerKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRectLayerKHR * forMarshaling,uint8_t ** ptr)8522 void reservedmarshal_VkRectLayerKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
8523 const VkRectLayerKHR* forMarshaling, uint8_t** ptr) {
8524 (void)vkStream;
8525 (void)rootType;
8526 reservedmarshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forMarshaling->offset), ptr);
8527 reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->extent), ptr);
8528 memcpy(*ptr, (uint32_t*)&forMarshaling->layer, sizeof(uint32_t));
8529 *ptr += sizeof(uint32_t);
8530 }
8531
reservedmarshal_VkPresentRegionKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPresentRegionKHR * forMarshaling,uint8_t ** ptr)8532 void reservedmarshal_VkPresentRegionKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
8533 const VkPresentRegionKHR* forMarshaling, uint8_t** ptr) {
8534 (void)vkStream;
8535 (void)rootType;
8536 memcpy(*ptr, (uint32_t*)&forMarshaling->rectangleCount, sizeof(uint32_t));
8537 *ptr += sizeof(uint32_t);
8538 // WARNING PTR CHECK
8539 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pRectangles;
8540 memcpy((*ptr), &cgen_var_0, 8);
8541 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8542 *ptr += 8;
8543 if (forMarshaling->pRectangles) {
8544 for (uint32_t i = 0; i < (uint32_t)forMarshaling->rectangleCount; ++i) {
8545 reservedmarshal_VkRectLayerKHR(
8546 vkStream, rootType, (const VkRectLayerKHR*)(forMarshaling->pRectangles + i), ptr);
8547 }
8548 }
8549 }
8550
reservedmarshal_VkPresentRegionsKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPresentRegionsKHR * forMarshaling,uint8_t ** ptr)8551 void reservedmarshal_VkPresentRegionsKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
8552 const VkPresentRegionsKHR* forMarshaling, uint8_t** ptr) {
8553 (void)vkStream;
8554 (void)rootType;
8555 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8556 *ptr += sizeof(VkStructureType);
8557 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8558 rootType = forMarshaling->sType;
8559 }
8560 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8561 memcpy(*ptr, (uint32_t*)&forMarshaling->swapchainCount, sizeof(uint32_t));
8562 *ptr += sizeof(uint32_t);
8563 // WARNING PTR CHECK
8564 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pRegions;
8565 memcpy((*ptr), &cgen_var_0, 8);
8566 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8567 *ptr += 8;
8568 if (forMarshaling->pRegions) {
8569 for (uint32_t i = 0; i < (uint32_t)forMarshaling->swapchainCount; ++i) {
8570 reservedmarshal_VkPresentRegionKHR(
8571 vkStream, rootType, (const VkPresentRegionKHR*)(forMarshaling->pRegions + i), ptr);
8572 }
8573 }
8574 }
8575
8576 #endif
8577 #ifdef VK_KHR_external_fence_fd
reservedmarshal_VkImportFenceFdInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImportFenceFdInfoKHR * forMarshaling,uint8_t ** ptr)8578 void reservedmarshal_VkImportFenceFdInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
8579 const VkImportFenceFdInfoKHR* forMarshaling,
8580 uint8_t** ptr) {
8581 (void)vkStream;
8582 (void)rootType;
8583 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8584 *ptr += sizeof(VkStructureType);
8585 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8586 rootType = forMarshaling->sType;
8587 }
8588 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8589 uint64_t cgen_var_0;
8590 *&cgen_var_0 = get_host_u64_VkFence((*&forMarshaling->fence));
8591 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8592 *ptr += 1 * 8;
8593 memcpy(*ptr, (VkFenceImportFlags*)&forMarshaling->flags, sizeof(VkFenceImportFlags));
8594 *ptr += sizeof(VkFenceImportFlags);
8595 memcpy(*ptr, (VkExternalFenceHandleTypeFlagBits*)&forMarshaling->handleType,
8596 sizeof(VkExternalFenceHandleTypeFlagBits));
8597 *ptr += sizeof(VkExternalFenceHandleTypeFlagBits);
8598 memcpy(*ptr, (int*)&forMarshaling->fd, sizeof(int));
8599 *ptr += sizeof(int);
8600 }
8601
reservedmarshal_VkFenceGetFdInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkFenceGetFdInfoKHR * forMarshaling,uint8_t ** ptr)8602 void reservedmarshal_VkFenceGetFdInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
8603 const VkFenceGetFdInfoKHR* forMarshaling, uint8_t** ptr) {
8604 (void)vkStream;
8605 (void)rootType;
8606 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8607 *ptr += sizeof(VkStructureType);
8608 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8609 rootType = forMarshaling->sType;
8610 }
8611 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8612 uint64_t cgen_var_0;
8613 *&cgen_var_0 = get_host_u64_VkFence((*&forMarshaling->fence));
8614 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8615 *ptr += 1 * 8;
8616 memcpy(*ptr, (VkExternalFenceHandleTypeFlagBits*)&forMarshaling->handleType,
8617 sizeof(VkExternalFenceHandleTypeFlagBits));
8618 *ptr += sizeof(VkExternalFenceHandleTypeFlagBits);
8619 }
8620
8621 #endif
8622 #ifdef VK_KHR_pipeline_executable_properties
reservedmarshal_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR * forMarshaling,uint8_t ** ptr)8623 void reservedmarshal_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(
8624 VulkanStreamGuest* vkStream, VkStructureType rootType,
8625 const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* forMarshaling, uint8_t** ptr) {
8626 (void)vkStream;
8627 (void)rootType;
8628 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8629 *ptr += sizeof(VkStructureType);
8630 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8631 rootType = forMarshaling->sType;
8632 }
8633 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8634 memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineExecutableInfo, sizeof(VkBool32));
8635 *ptr += sizeof(VkBool32);
8636 }
8637
reservedmarshal_VkPipelineInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineInfoKHR * forMarshaling,uint8_t ** ptr)8638 void reservedmarshal_VkPipelineInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
8639 const VkPipelineInfoKHR* forMarshaling, uint8_t** ptr) {
8640 (void)vkStream;
8641 (void)rootType;
8642 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8643 *ptr += sizeof(VkStructureType);
8644 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8645 rootType = forMarshaling->sType;
8646 }
8647 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8648 uint64_t cgen_var_0;
8649 *&cgen_var_0 = get_host_u64_VkPipeline((*&forMarshaling->pipeline));
8650 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8651 *ptr += 1 * 8;
8652 }
8653
reservedmarshal_VkPipelineExecutablePropertiesKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineExecutablePropertiesKHR * forMarshaling,uint8_t ** ptr)8654 void reservedmarshal_VkPipelineExecutablePropertiesKHR(
8655 VulkanStreamGuest* vkStream, VkStructureType rootType,
8656 const VkPipelineExecutablePropertiesKHR* forMarshaling, uint8_t** ptr) {
8657 (void)vkStream;
8658 (void)rootType;
8659 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8660 *ptr += sizeof(VkStructureType);
8661 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8662 rootType = forMarshaling->sType;
8663 }
8664 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8665 memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->stages, sizeof(VkShaderStageFlags));
8666 *ptr += sizeof(VkShaderStageFlags);
8667 memcpy(*ptr, (char*)forMarshaling->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
8668 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
8669 memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
8670 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
8671 memcpy(*ptr, (uint32_t*)&forMarshaling->subgroupSize, sizeof(uint32_t));
8672 *ptr += sizeof(uint32_t);
8673 }
8674
reservedmarshal_VkPipelineExecutableInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineExecutableInfoKHR * forMarshaling,uint8_t ** ptr)8675 void reservedmarshal_VkPipelineExecutableInfoKHR(VulkanStreamGuest* vkStream,
8676 VkStructureType rootType,
8677 const VkPipelineExecutableInfoKHR* forMarshaling,
8678 uint8_t** ptr) {
8679 (void)vkStream;
8680 (void)rootType;
8681 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8682 *ptr += sizeof(VkStructureType);
8683 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8684 rootType = forMarshaling->sType;
8685 }
8686 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8687 uint64_t cgen_var_0;
8688 *&cgen_var_0 = get_host_u64_VkPipeline((*&forMarshaling->pipeline));
8689 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8690 *ptr += 1 * 8;
8691 memcpy(*ptr, (uint32_t*)&forMarshaling->executableIndex, sizeof(uint32_t));
8692 *ptr += sizeof(uint32_t);
8693 }
8694
reservedmarshal_VkPipelineExecutableStatisticValueKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineExecutableStatisticValueKHR * forMarshaling,uint8_t ** ptr)8695 void reservedmarshal_VkPipelineExecutableStatisticValueKHR(
8696 VulkanStreamGuest* vkStream, VkStructureType rootType,
8697 const VkPipelineExecutableStatisticValueKHR* forMarshaling, uint8_t** ptr) {
8698 (void)vkStream;
8699 (void)rootType;
8700 memcpy(*ptr, (VkBool32*)&forMarshaling->b32, sizeof(VkBool32));
8701 *ptr += sizeof(VkBool32);
8702 }
8703
reservedmarshal_VkPipelineExecutableStatisticKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineExecutableStatisticKHR * forMarshaling,uint8_t ** ptr)8704 void reservedmarshal_VkPipelineExecutableStatisticKHR(
8705 VulkanStreamGuest* vkStream, VkStructureType rootType,
8706 const VkPipelineExecutableStatisticKHR* forMarshaling, uint8_t** ptr) {
8707 (void)vkStream;
8708 (void)rootType;
8709 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8710 *ptr += sizeof(VkStructureType);
8711 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8712 rootType = forMarshaling->sType;
8713 }
8714 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8715 memcpy(*ptr, (char*)forMarshaling->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
8716 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
8717 memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
8718 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
8719 memcpy(*ptr, (VkPipelineExecutableStatisticFormatKHR*)&forMarshaling->format,
8720 sizeof(VkPipelineExecutableStatisticFormatKHR));
8721 *ptr += sizeof(VkPipelineExecutableStatisticFormatKHR);
8722 reservedmarshal_VkPipelineExecutableStatisticValueKHR(
8723 vkStream, rootType, (VkPipelineExecutableStatisticValueKHR*)(&forMarshaling->value), ptr);
8724 }
8725
reservedmarshal_VkPipelineExecutableInternalRepresentationKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineExecutableInternalRepresentationKHR * forMarshaling,uint8_t ** ptr)8726 void reservedmarshal_VkPipelineExecutableInternalRepresentationKHR(
8727 VulkanStreamGuest* vkStream, VkStructureType rootType,
8728 const VkPipelineExecutableInternalRepresentationKHR* forMarshaling, uint8_t** ptr) {
8729 (void)vkStream;
8730 (void)rootType;
8731 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8732 *ptr += sizeof(VkStructureType);
8733 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8734 rootType = forMarshaling->sType;
8735 }
8736 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8737 memcpy(*ptr, (char*)forMarshaling->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
8738 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
8739 memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
8740 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
8741 memcpy(*ptr, (VkBool32*)&forMarshaling->isText, sizeof(VkBool32));
8742 *ptr += sizeof(VkBool32);
8743 uint64_t cgen_var_0 = (uint64_t)forMarshaling->dataSize;
8744 memcpy((*ptr), &cgen_var_0, 8);
8745 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8746 *ptr += 8;
8747 // WARNING PTR CHECK
8748 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pData;
8749 memcpy((*ptr), &cgen_var_1, 8);
8750 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8751 *ptr += 8;
8752 if (forMarshaling->pData) {
8753 memcpy(*ptr, (void*)forMarshaling->pData, forMarshaling->dataSize * sizeof(uint8_t));
8754 *ptr += forMarshaling->dataSize * sizeof(uint8_t);
8755 }
8756 }
8757
8758 #endif
8759 #ifdef VK_ANDROID_native_buffer
reservedmarshal_VkNativeBufferUsage2ANDROID(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkNativeBufferUsage2ANDROID * forMarshaling,uint8_t ** ptr)8760 void reservedmarshal_VkNativeBufferUsage2ANDROID(VulkanStreamGuest* vkStream,
8761 VkStructureType rootType,
8762 const VkNativeBufferUsage2ANDROID* forMarshaling,
8763 uint8_t** ptr) {
8764 (void)vkStream;
8765 (void)rootType;
8766 memcpy(*ptr, (uint64_t*)&forMarshaling->consumer, sizeof(uint64_t));
8767 *ptr += sizeof(uint64_t);
8768 memcpy(*ptr, (uint64_t*)&forMarshaling->producer, sizeof(uint64_t));
8769 *ptr += sizeof(uint64_t);
8770 }
8771
reservedmarshal_VkNativeBufferANDROID(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkNativeBufferANDROID * forMarshaling,uint8_t ** ptr)8772 void reservedmarshal_VkNativeBufferANDROID(VulkanStreamGuest* vkStream, VkStructureType rootType,
8773 const VkNativeBufferANDROID* forMarshaling,
8774 uint8_t** ptr) {
8775 (void)vkStream;
8776 (void)rootType;
8777 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8778 *ptr += sizeof(VkStructureType);
8779 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8780 rootType = forMarshaling->sType;
8781 }
8782 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8783 // WARNING PTR CHECK
8784 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->handle;
8785 memcpy((*ptr), &cgen_var_0, 8);
8786 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8787 *ptr += 8;
8788 if (forMarshaling->handle) {
8789 memcpy(*ptr, (const uint32_t*)forMarshaling->handle, sizeof(const uint32_t));
8790 *ptr += sizeof(const uint32_t);
8791 }
8792 memcpy(*ptr, (int*)&forMarshaling->stride, sizeof(int));
8793 *ptr += sizeof(int);
8794 memcpy(*ptr, (int*)&forMarshaling->format, sizeof(int));
8795 *ptr += sizeof(int);
8796 memcpy(*ptr, (int*)&forMarshaling->usage, sizeof(int));
8797 *ptr += sizeof(int);
8798 reservedmarshal_VkNativeBufferUsage2ANDROID(
8799 vkStream, rootType, (VkNativeBufferUsage2ANDROID*)(&forMarshaling->usage2), ptr);
8800 }
8801
reservedmarshal_VkSwapchainImageCreateInfoANDROID(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSwapchainImageCreateInfoANDROID * forMarshaling,uint8_t ** ptr)8802 void reservedmarshal_VkSwapchainImageCreateInfoANDROID(
8803 VulkanStreamGuest* vkStream, VkStructureType rootType,
8804 const VkSwapchainImageCreateInfoANDROID* forMarshaling, uint8_t** ptr) {
8805 (void)vkStream;
8806 (void)rootType;
8807 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8808 *ptr += sizeof(VkStructureType);
8809 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8810 rootType = forMarshaling->sType;
8811 }
8812 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8813 memcpy(*ptr, (VkSwapchainImageUsageFlagsANDROID*)&forMarshaling->usage,
8814 sizeof(VkSwapchainImageUsageFlagsANDROID));
8815 *ptr += sizeof(VkSwapchainImageUsageFlagsANDROID);
8816 }
8817
reservedmarshal_VkPhysicalDevicePresentationPropertiesANDROID(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePresentationPropertiesANDROID * forMarshaling,uint8_t ** ptr)8818 void reservedmarshal_VkPhysicalDevicePresentationPropertiesANDROID(
8819 VulkanStreamGuest* vkStream, VkStructureType rootType,
8820 const VkPhysicalDevicePresentationPropertiesANDROID* forMarshaling, uint8_t** ptr) {
8821 (void)vkStream;
8822 (void)rootType;
8823 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8824 *ptr += sizeof(VkStructureType);
8825 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8826 rootType = forMarshaling->sType;
8827 }
8828 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8829 memcpy(*ptr, (VkBool32*)&forMarshaling->sharedImage, sizeof(VkBool32));
8830 *ptr += sizeof(VkBool32);
8831 }
8832
8833 #endif
8834 #ifdef VK_EXT_transform_feedback
reservedmarshal_VkPhysicalDeviceTransformFeedbackFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceTransformFeedbackFeaturesEXT * forMarshaling,uint8_t ** ptr)8835 void reservedmarshal_VkPhysicalDeviceTransformFeedbackFeaturesEXT(
8836 VulkanStreamGuest* vkStream, VkStructureType rootType,
8837 const VkPhysicalDeviceTransformFeedbackFeaturesEXT* forMarshaling, uint8_t** ptr) {
8838 (void)vkStream;
8839 (void)rootType;
8840 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8841 *ptr += sizeof(VkStructureType);
8842 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8843 rootType = forMarshaling->sType;
8844 }
8845 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8846 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedback, sizeof(VkBool32));
8847 *ptr += sizeof(VkBool32);
8848 memcpy(*ptr, (VkBool32*)&forMarshaling->geometryStreams, sizeof(VkBool32));
8849 *ptr += sizeof(VkBool32);
8850 }
8851
reservedmarshal_VkPhysicalDeviceTransformFeedbackPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceTransformFeedbackPropertiesEXT * forMarshaling,uint8_t ** ptr)8852 void reservedmarshal_VkPhysicalDeviceTransformFeedbackPropertiesEXT(
8853 VulkanStreamGuest* vkStream, VkStructureType rootType,
8854 const VkPhysicalDeviceTransformFeedbackPropertiesEXT* forMarshaling, uint8_t** ptr) {
8855 (void)vkStream;
8856 (void)rootType;
8857 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8858 *ptr += sizeof(VkStructureType);
8859 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8860 rootType = forMarshaling->sType;
8861 }
8862 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8863 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackStreams, sizeof(uint32_t));
8864 *ptr += sizeof(uint32_t);
8865 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackBuffers, sizeof(uint32_t));
8866 *ptr += sizeof(uint32_t);
8867 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxTransformFeedbackBufferSize,
8868 sizeof(VkDeviceSize));
8869 *ptr += sizeof(VkDeviceSize);
8870 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackStreamDataSize, sizeof(uint32_t));
8871 *ptr += sizeof(uint32_t);
8872 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackBufferDataSize, sizeof(uint32_t));
8873 *ptr += sizeof(uint32_t);
8874 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackBufferDataStride, sizeof(uint32_t));
8875 *ptr += sizeof(uint32_t);
8876 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackQueries, sizeof(VkBool32));
8877 *ptr += sizeof(VkBool32);
8878 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackStreamsLinesTriangles,
8879 sizeof(VkBool32));
8880 *ptr += sizeof(VkBool32);
8881 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackRasterizationStreamSelect,
8882 sizeof(VkBool32));
8883 *ptr += sizeof(VkBool32);
8884 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackDraw, sizeof(VkBool32));
8885 *ptr += sizeof(VkBool32);
8886 }
8887
reservedmarshal_VkPipelineRasterizationStateStreamCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineRasterizationStateStreamCreateInfoEXT * forMarshaling,uint8_t ** ptr)8888 void reservedmarshal_VkPipelineRasterizationStateStreamCreateInfoEXT(
8889 VulkanStreamGuest* vkStream, VkStructureType rootType,
8890 const VkPipelineRasterizationStateStreamCreateInfoEXT* forMarshaling, uint8_t** ptr) {
8891 (void)vkStream;
8892 (void)rootType;
8893 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8894 *ptr += sizeof(VkStructureType);
8895 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8896 rootType = forMarshaling->sType;
8897 }
8898 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8899 memcpy(*ptr, (VkPipelineRasterizationStateStreamCreateFlagsEXT*)&forMarshaling->flags,
8900 sizeof(VkPipelineRasterizationStateStreamCreateFlagsEXT));
8901 *ptr += sizeof(VkPipelineRasterizationStateStreamCreateFlagsEXT);
8902 memcpy(*ptr, (uint32_t*)&forMarshaling->rasterizationStream, sizeof(uint32_t));
8903 *ptr += sizeof(uint32_t);
8904 }
8905
8906 #endif
8907 #ifdef VK_EXT_depth_clip_enable
reservedmarshal_VkPhysicalDeviceDepthClipEnableFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceDepthClipEnableFeaturesEXT * forMarshaling,uint8_t ** ptr)8908 void reservedmarshal_VkPhysicalDeviceDepthClipEnableFeaturesEXT(
8909 VulkanStreamGuest* vkStream, VkStructureType rootType,
8910 const VkPhysicalDeviceDepthClipEnableFeaturesEXT* forMarshaling, uint8_t** ptr) {
8911 (void)vkStream;
8912 (void)rootType;
8913 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8914 *ptr += sizeof(VkStructureType);
8915 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8916 rootType = forMarshaling->sType;
8917 }
8918 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8919 memcpy(*ptr, (VkBool32*)&forMarshaling->depthClipEnable, sizeof(VkBool32));
8920 *ptr += sizeof(VkBool32);
8921 }
8922
reservedmarshal_VkPipelineRasterizationDepthClipStateCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineRasterizationDepthClipStateCreateInfoEXT * forMarshaling,uint8_t ** ptr)8923 void reservedmarshal_VkPipelineRasterizationDepthClipStateCreateInfoEXT(
8924 VulkanStreamGuest* vkStream, VkStructureType rootType,
8925 const VkPipelineRasterizationDepthClipStateCreateInfoEXT* forMarshaling, uint8_t** ptr) {
8926 (void)vkStream;
8927 (void)rootType;
8928 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8929 *ptr += sizeof(VkStructureType);
8930 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8931 rootType = forMarshaling->sType;
8932 }
8933 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8934 memcpy(*ptr, (VkPipelineRasterizationDepthClipStateCreateFlagsEXT*)&forMarshaling->flags,
8935 sizeof(VkPipelineRasterizationDepthClipStateCreateFlagsEXT));
8936 *ptr += sizeof(VkPipelineRasterizationDepthClipStateCreateFlagsEXT);
8937 memcpy(*ptr, (VkBool32*)&forMarshaling->depthClipEnable, sizeof(VkBool32));
8938 *ptr += sizeof(VkBool32);
8939 }
8940
8941 #endif
8942 #ifdef VK_EXT_image_drm_format_modifier
reservedmarshal_VkDrmFormatModifierPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDrmFormatModifierPropertiesEXT * forMarshaling,uint8_t ** ptr)8943 void reservedmarshal_VkDrmFormatModifierPropertiesEXT(
8944 VulkanStreamGuest* vkStream, VkStructureType rootType,
8945 const VkDrmFormatModifierPropertiesEXT* forMarshaling, uint8_t** ptr) {
8946 (void)vkStream;
8947 (void)rootType;
8948 memcpy(*ptr, (uint64_t*)&forMarshaling->drmFormatModifier, sizeof(uint64_t));
8949 *ptr += sizeof(uint64_t);
8950 memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierPlaneCount, sizeof(uint32_t));
8951 *ptr += sizeof(uint32_t);
8952 memcpy(*ptr, (VkFormatFeatureFlags*)&forMarshaling->drmFormatModifierTilingFeatures,
8953 sizeof(VkFormatFeatureFlags));
8954 *ptr += sizeof(VkFormatFeatureFlags);
8955 }
8956
reservedmarshal_VkDrmFormatModifierPropertiesListEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDrmFormatModifierPropertiesListEXT * forMarshaling,uint8_t ** ptr)8957 void reservedmarshal_VkDrmFormatModifierPropertiesListEXT(
8958 VulkanStreamGuest* vkStream, VkStructureType rootType,
8959 const VkDrmFormatModifierPropertiesListEXT* forMarshaling, uint8_t** ptr) {
8960 (void)vkStream;
8961 (void)rootType;
8962 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8963 *ptr += sizeof(VkStructureType);
8964 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8965 rootType = forMarshaling->sType;
8966 }
8967 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8968 memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierCount, sizeof(uint32_t));
8969 *ptr += sizeof(uint32_t);
8970 // WARNING PTR CHECK
8971 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pDrmFormatModifierProperties;
8972 memcpy((*ptr), &cgen_var_0, 8);
8973 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8974 *ptr += 8;
8975 if (forMarshaling->pDrmFormatModifierProperties) {
8976 for (uint32_t i = 0; i < (uint32_t)forMarshaling->drmFormatModifierCount; ++i) {
8977 reservedmarshal_VkDrmFormatModifierPropertiesEXT(
8978 vkStream, rootType,
8979 (VkDrmFormatModifierPropertiesEXT*)(forMarshaling->pDrmFormatModifierProperties +
8980 i),
8981 ptr);
8982 }
8983 }
8984 }
8985
reservedmarshal_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceImageDrmFormatModifierInfoEXT * forMarshaling,uint8_t ** ptr)8986 void reservedmarshal_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(
8987 VulkanStreamGuest* vkStream, VkStructureType rootType,
8988 const VkPhysicalDeviceImageDrmFormatModifierInfoEXT* forMarshaling, uint8_t** ptr) {
8989 (void)vkStream;
8990 (void)rootType;
8991 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8992 *ptr += sizeof(VkStructureType);
8993 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8994 rootType = forMarshaling->sType;
8995 }
8996 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8997 memcpy(*ptr, (uint64_t*)&forMarshaling->drmFormatModifier, sizeof(uint64_t));
8998 *ptr += sizeof(uint64_t);
8999 memcpy(*ptr, (VkSharingMode*)&forMarshaling->sharingMode, sizeof(VkSharingMode));
9000 *ptr += sizeof(VkSharingMode);
9001 memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndexCount, sizeof(uint32_t));
9002 *ptr += sizeof(uint32_t);
9003 // WARNING PTR CHECK
9004 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pQueueFamilyIndices;
9005 memcpy((*ptr), &cgen_var_0, 8);
9006 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
9007 *ptr += 8;
9008 if (forMarshaling->pQueueFamilyIndices) {
9009 memcpy(*ptr, (const uint32_t*)forMarshaling->pQueueFamilyIndices,
9010 forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t));
9011 *ptr += forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t);
9012 }
9013 }
9014
reservedmarshal_VkImageDrmFormatModifierListCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageDrmFormatModifierListCreateInfoEXT * forMarshaling,uint8_t ** ptr)9015 void reservedmarshal_VkImageDrmFormatModifierListCreateInfoEXT(
9016 VulkanStreamGuest* vkStream, VkStructureType rootType,
9017 const VkImageDrmFormatModifierListCreateInfoEXT* forMarshaling, uint8_t** ptr) {
9018 (void)vkStream;
9019 (void)rootType;
9020 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9021 *ptr += sizeof(VkStructureType);
9022 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9023 rootType = forMarshaling->sType;
9024 }
9025 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9026 memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierCount, sizeof(uint32_t));
9027 *ptr += sizeof(uint32_t);
9028 memcpy(*ptr, (const uint64_t*)forMarshaling->pDrmFormatModifiers,
9029 forMarshaling->drmFormatModifierCount * sizeof(const uint64_t));
9030 *ptr += forMarshaling->drmFormatModifierCount * sizeof(const uint64_t);
9031 }
9032
reservedmarshal_VkImageDrmFormatModifierExplicitCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageDrmFormatModifierExplicitCreateInfoEXT * forMarshaling,uint8_t ** ptr)9033 void reservedmarshal_VkImageDrmFormatModifierExplicitCreateInfoEXT(
9034 VulkanStreamGuest* vkStream, VkStructureType rootType,
9035 const VkImageDrmFormatModifierExplicitCreateInfoEXT* forMarshaling, uint8_t** ptr) {
9036 (void)vkStream;
9037 (void)rootType;
9038 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9039 *ptr += sizeof(VkStructureType);
9040 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9041 rootType = forMarshaling->sType;
9042 }
9043 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9044 memcpy(*ptr, (uint64_t*)&forMarshaling->drmFormatModifier, sizeof(uint64_t));
9045 *ptr += sizeof(uint64_t);
9046 memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierPlaneCount, sizeof(uint32_t));
9047 *ptr += sizeof(uint32_t);
9048 for (uint32_t i = 0; i < (uint32_t)forMarshaling->drmFormatModifierPlaneCount; ++i) {
9049 reservedmarshal_VkSubresourceLayout(
9050 vkStream, rootType, (const VkSubresourceLayout*)(forMarshaling->pPlaneLayouts + i),
9051 ptr);
9052 }
9053 }
9054
reservedmarshal_VkImageDrmFormatModifierPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageDrmFormatModifierPropertiesEXT * forMarshaling,uint8_t ** ptr)9055 void reservedmarshal_VkImageDrmFormatModifierPropertiesEXT(
9056 VulkanStreamGuest* vkStream, VkStructureType rootType,
9057 const VkImageDrmFormatModifierPropertiesEXT* forMarshaling, uint8_t** ptr) {
9058 (void)vkStream;
9059 (void)rootType;
9060 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9061 *ptr += sizeof(VkStructureType);
9062 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9063 rootType = forMarshaling->sType;
9064 }
9065 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9066 memcpy(*ptr, (uint64_t*)&forMarshaling->drmFormatModifier, sizeof(uint64_t));
9067 *ptr += sizeof(uint64_t);
9068 }
9069
reservedmarshal_VkDrmFormatModifierProperties2EXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDrmFormatModifierProperties2EXT * forMarshaling,uint8_t ** ptr)9070 void reservedmarshal_VkDrmFormatModifierProperties2EXT(
9071 VulkanStreamGuest* vkStream, VkStructureType rootType,
9072 const VkDrmFormatModifierProperties2EXT* forMarshaling, uint8_t** ptr) {
9073 (void)vkStream;
9074 (void)rootType;
9075 memcpy(*ptr, (uint64_t*)&forMarshaling->drmFormatModifier, sizeof(uint64_t));
9076 *ptr += sizeof(uint64_t);
9077 memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierPlaneCount, sizeof(uint32_t));
9078 *ptr += sizeof(uint32_t);
9079 memcpy(*ptr, (VkFormatFeatureFlags2*)&forMarshaling->drmFormatModifierTilingFeatures,
9080 sizeof(VkFormatFeatureFlags2));
9081 *ptr += sizeof(VkFormatFeatureFlags2);
9082 }
9083
reservedmarshal_VkDrmFormatModifierPropertiesList2EXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDrmFormatModifierPropertiesList2EXT * forMarshaling,uint8_t ** ptr)9084 void reservedmarshal_VkDrmFormatModifierPropertiesList2EXT(
9085 VulkanStreamGuest* vkStream, VkStructureType rootType,
9086 const VkDrmFormatModifierPropertiesList2EXT* forMarshaling, uint8_t** ptr) {
9087 (void)vkStream;
9088 (void)rootType;
9089 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9090 *ptr += sizeof(VkStructureType);
9091 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9092 rootType = forMarshaling->sType;
9093 }
9094 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9095 memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierCount, sizeof(uint32_t));
9096 *ptr += sizeof(uint32_t);
9097 // WARNING PTR CHECK
9098 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pDrmFormatModifierProperties;
9099 memcpy((*ptr), &cgen_var_0, 8);
9100 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
9101 *ptr += 8;
9102 if (forMarshaling->pDrmFormatModifierProperties) {
9103 for (uint32_t i = 0; i < (uint32_t)forMarshaling->drmFormatModifierCount; ++i) {
9104 reservedmarshal_VkDrmFormatModifierProperties2EXT(
9105 vkStream, rootType,
9106 (VkDrmFormatModifierProperties2EXT*)(forMarshaling->pDrmFormatModifierProperties +
9107 i),
9108 ptr);
9109 }
9110 }
9111 }
9112
9113 #endif
9114 #ifdef VK_EXT_vertex_attribute_divisor
reservedmarshal_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT * forMarshaling,uint8_t ** ptr)9115 void reservedmarshal_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(
9116 VulkanStreamGuest* vkStream, VkStructureType rootType,
9117 const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* forMarshaling, uint8_t** ptr) {
9118 (void)vkStream;
9119 (void)rootType;
9120 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9121 *ptr += sizeof(VkStructureType);
9122 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9123 rootType = forMarshaling->sType;
9124 }
9125 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9126 memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexAttribDivisor, sizeof(uint32_t));
9127 *ptr += sizeof(uint32_t);
9128 }
9129
9130 #endif
9131 #ifdef VK_EXT_fragment_density_map
reservedmarshal_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceFragmentDensityMapFeaturesEXT * forMarshaling,uint8_t ** ptr)9132 void reservedmarshal_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(
9133 VulkanStreamGuest* vkStream, VkStructureType rootType,
9134 const VkPhysicalDeviceFragmentDensityMapFeaturesEXT* forMarshaling, uint8_t** ptr) {
9135 (void)vkStream;
9136 (void)rootType;
9137 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9138 *ptr += sizeof(VkStructureType);
9139 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9140 rootType = forMarshaling->sType;
9141 }
9142 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9143 memcpy(*ptr, (VkBool32*)&forMarshaling->fragmentDensityMap, sizeof(VkBool32));
9144 *ptr += sizeof(VkBool32);
9145 memcpy(*ptr, (VkBool32*)&forMarshaling->fragmentDensityMapDynamic, sizeof(VkBool32));
9146 *ptr += sizeof(VkBool32);
9147 memcpy(*ptr, (VkBool32*)&forMarshaling->fragmentDensityMapNonSubsampledImages,
9148 sizeof(VkBool32));
9149 *ptr += sizeof(VkBool32);
9150 }
9151
reservedmarshal_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceFragmentDensityMapPropertiesEXT * forMarshaling,uint8_t ** ptr)9152 void reservedmarshal_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(
9153 VulkanStreamGuest* vkStream, VkStructureType rootType,
9154 const VkPhysicalDeviceFragmentDensityMapPropertiesEXT* forMarshaling, uint8_t** ptr) {
9155 (void)vkStream;
9156 (void)rootType;
9157 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9158 *ptr += sizeof(VkStructureType);
9159 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9160 rootType = forMarshaling->sType;
9161 }
9162 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9163 reservedmarshal_VkExtent2D(vkStream, rootType,
9164 (VkExtent2D*)(&forMarshaling->minFragmentDensityTexelSize), ptr);
9165 reservedmarshal_VkExtent2D(vkStream, rootType,
9166 (VkExtent2D*)(&forMarshaling->maxFragmentDensityTexelSize), ptr);
9167 memcpy(*ptr, (VkBool32*)&forMarshaling->fragmentDensityInvocations, sizeof(VkBool32));
9168 *ptr += sizeof(VkBool32);
9169 }
9170
reservedmarshal_VkRenderPassFragmentDensityMapCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderPassFragmentDensityMapCreateInfoEXT * forMarshaling,uint8_t ** ptr)9171 void reservedmarshal_VkRenderPassFragmentDensityMapCreateInfoEXT(
9172 VulkanStreamGuest* vkStream, VkStructureType rootType,
9173 const VkRenderPassFragmentDensityMapCreateInfoEXT* forMarshaling, uint8_t** ptr) {
9174 (void)vkStream;
9175 (void)rootType;
9176 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9177 *ptr += sizeof(VkStructureType);
9178 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9179 rootType = forMarshaling->sType;
9180 }
9181 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9182 reservedmarshal_VkAttachmentReference(
9183 vkStream, rootType, (VkAttachmentReference*)(&forMarshaling->fragmentDensityMapAttachment),
9184 ptr);
9185 }
9186
reservedmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderingFragmentDensityMapAttachmentInfoEXT * forMarshaling,uint8_t ** ptr)9187 void reservedmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(
9188 VulkanStreamGuest* vkStream, VkStructureType rootType,
9189 const VkRenderingFragmentDensityMapAttachmentInfoEXT* forMarshaling, uint8_t** ptr) {
9190 (void)vkStream;
9191 (void)rootType;
9192 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9193 *ptr += sizeof(VkStructureType);
9194 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9195 rootType = forMarshaling->sType;
9196 }
9197 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9198 uint64_t cgen_var_0;
9199 *&cgen_var_0 = get_host_u64_VkImageView((*&forMarshaling->imageView));
9200 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
9201 *ptr += 1 * 8;
9202 memcpy(*ptr, (VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout));
9203 *ptr += sizeof(VkImageLayout);
9204 }
9205
9206 #endif
9207 #ifdef VK_EXT_provoking_vertex
reservedmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceProvokingVertexFeaturesEXT * forMarshaling,uint8_t ** ptr)9208 void reservedmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(
9209 VulkanStreamGuest* vkStream, VkStructureType rootType,
9210 const VkPhysicalDeviceProvokingVertexFeaturesEXT* forMarshaling, uint8_t** ptr) {
9211 (void)vkStream;
9212 (void)rootType;
9213 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9214 *ptr += sizeof(VkStructureType);
9215 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9216 rootType = forMarshaling->sType;
9217 }
9218 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9219 memcpy(*ptr, (VkBool32*)&forMarshaling->provokingVertexLast, sizeof(VkBool32));
9220 *ptr += sizeof(VkBool32);
9221 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackPreservesProvokingVertex,
9222 sizeof(VkBool32));
9223 *ptr += sizeof(VkBool32);
9224 }
9225
reservedmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceProvokingVertexPropertiesEXT * forMarshaling,uint8_t ** ptr)9226 void reservedmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(
9227 VulkanStreamGuest* vkStream, VkStructureType rootType,
9228 const VkPhysicalDeviceProvokingVertexPropertiesEXT* forMarshaling, uint8_t** ptr) {
9229 (void)vkStream;
9230 (void)rootType;
9231 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9232 *ptr += sizeof(VkStructureType);
9233 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9234 rootType = forMarshaling->sType;
9235 }
9236 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9237 memcpy(*ptr, (VkBool32*)&forMarshaling->provokingVertexModePerPipeline, sizeof(VkBool32));
9238 *ptr += sizeof(VkBool32);
9239 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackPreservesTriangleFanProvokingVertex,
9240 sizeof(VkBool32));
9241 *ptr += sizeof(VkBool32);
9242 }
9243
reservedmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT * forMarshaling,uint8_t ** ptr)9244 void reservedmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
9245 VulkanStreamGuest* vkStream, VkStructureType rootType,
9246 const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* forMarshaling, uint8_t** ptr) {
9247 (void)vkStream;
9248 (void)rootType;
9249 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9250 *ptr += sizeof(VkStructureType);
9251 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9252 rootType = forMarshaling->sType;
9253 }
9254 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9255 memcpy(*ptr, (VkProvokingVertexModeEXT*)&forMarshaling->provokingVertexMode,
9256 sizeof(VkProvokingVertexModeEXT));
9257 *ptr += sizeof(VkProvokingVertexModeEXT);
9258 }
9259
9260 #endif
9261 #ifdef VK_EXT_extended_dynamic_state
reservedmarshal_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT * forMarshaling,uint8_t ** ptr)9262 void reservedmarshal_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(
9263 VulkanStreamGuest* vkStream, VkStructureType rootType,
9264 const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* forMarshaling, uint8_t** ptr) {
9265 (void)vkStream;
9266 (void)rootType;
9267 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9268 *ptr += sizeof(VkStructureType);
9269 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9270 rootType = forMarshaling->sType;
9271 }
9272 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9273 memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState, sizeof(VkBool32));
9274 *ptr += sizeof(VkBool32);
9275 }
9276
9277 #endif
9278 #ifdef VK_EXT_texel_buffer_alignment
reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT * forMarshaling,uint8_t ** ptr)9279 void reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
9280 VulkanStreamGuest* vkStream, VkStructureType rootType,
9281 const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* forMarshaling, uint8_t** ptr) {
9282 (void)vkStream;
9283 (void)rootType;
9284 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9285 *ptr += sizeof(VkStructureType);
9286 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9287 rootType = forMarshaling->sType;
9288 }
9289 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9290 memcpy(*ptr, (VkBool32*)&forMarshaling->texelBufferAlignment, sizeof(VkBool32));
9291 *ptr += sizeof(VkBool32);
9292 }
9293
9294 #endif
9295 #ifdef VK_EXT_device_memory_report
reservedmarshal_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT * forMarshaling,uint8_t ** ptr)9296 void reservedmarshal_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT(
9297 VulkanStreamGuest* vkStream, VkStructureType rootType,
9298 const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* forMarshaling, uint8_t** ptr) {
9299 (void)vkStream;
9300 (void)rootType;
9301 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9302 *ptr += sizeof(VkStructureType);
9303 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9304 rootType = forMarshaling->sType;
9305 }
9306 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9307 memcpy(*ptr, (VkBool32*)&forMarshaling->deviceMemoryReport, sizeof(VkBool32));
9308 *ptr += sizeof(VkBool32);
9309 }
9310
reservedmarshal_VkDeviceMemoryReportCallbackDataEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceMemoryReportCallbackDataEXT * forMarshaling,uint8_t ** ptr)9311 void reservedmarshal_VkDeviceMemoryReportCallbackDataEXT(
9312 VulkanStreamGuest* vkStream, VkStructureType rootType,
9313 const VkDeviceMemoryReportCallbackDataEXT* forMarshaling, uint8_t** ptr) {
9314 (void)vkStream;
9315 (void)rootType;
9316 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9317 *ptr += sizeof(VkStructureType);
9318 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9319 rootType = forMarshaling->sType;
9320 }
9321 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9322 memcpy(*ptr, (VkDeviceMemoryReportFlagsEXT*)&forMarshaling->flags,
9323 sizeof(VkDeviceMemoryReportFlagsEXT));
9324 *ptr += sizeof(VkDeviceMemoryReportFlagsEXT);
9325 memcpy(*ptr, (VkDeviceMemoryReportEventTypeEXT*)&forMarshaling->type,
9326 sizeof(VkDeviceMemoryReportEventTypeEXT));
9327 *ptr += sizeof(VkDeviceMemoryReportEventTypeEXT);
9328 memcpy(*ptr, (uint64_t*)&forMarshaling->memoryObjectId, sizeof(uint64_t));
9329 *ptr += sizeof(uint64_t);
9330 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
9331 *ptr += sizeof(VkDeviceSize);
9332 memcpy(*ptr, (VkObjectType*)&forMarshaling->objectType, sizeof(VkObjectType));
9333 *ptr += sizeof(VkObjectType);
9334 memcpy(*ptr, (uint64_t*)&forMarshaling->objectHandle, sizeof(uint64_t));
9335 *ptr += sizeof(uint64_t);
9336 memcpy(*ptr, (uint32_t*)&forMarshaling->heapIndex, sizeof(uint32_t));
9337 *ptr += sizeof(uint32_t);
9338 }
9339
reservedmarshal_VkDeviceDeviceMemoryReportCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceDeviceMemoryReportCreateInfoEXT * forMarshaling,uint8_t ** ptr)9340 void reservedmarshal_VkDeviceDeviceMemoryReportCreateInfoEXT(
9341 VulkanStreamGuest* vkStream, VkStructureType rootType,
9342 const VkDeviceDeviceMemoryReportCreateInfoEXT* forMarshaling, uint8_t** ptr) {
9343 (void)vkStream;
9344 (void)rootType;
9345 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9346 *ptr += sizeof(VkStructureType);
9347 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9348 rootType = forMarshaling->sType;
9349 }
9350 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9351 memcpy(*ptr, (VkDeviceMemoryReportFlagsEXT*)&forMarshaling->flags,
9352 sizeof(VkDeviceMemoryReportFlagsEXT));
9353 *ptr += sizeof(VkDeviceMemoryReportFlagsEXT);
9354 uint64_t cgen_var_0 = (uint64_t)forMarshaling->pfnUserCallback;
9355 memcpy((*ptr), &cgen_var_0, 8);
9356 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
9357 *ptr += 8;
9358 memcpy(*ptr, (void*)forMarshaling->pUserData, sizeof(uint8_t));
9359 *ptr += sizeof(uint8_t);
9360 }
9361
9362 #endif
9363 #ifdef VK_EXT_robustness2
reservedmarshal_VkPhysicalDeviceRobustness2FeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceRobustness2FeaturesEXT * forMarshaling,uint8_t ** ptr)9364 void reservedmarshal_VkPhysicalDeviceRobustness2FeaturesEXT(
9365 VulkanStreamGuest* vkStream, VkStructureType rootType,
9366 const VkPhysicalDeviceRobustness2FeaturesEXT* forMarshaling, uint8_t** ptr) {
9367 (void)vkStream;
9368 (void)rootType;
9369 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9370 *ptr += sizeof(VkStructureType);
9371 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9372 rootType = forMarshaling->sType;
9373 }
9374 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9375 memcpy(*ptr, (VkBool32*)&forMarshaling->robustBufferAccess2, sizeof(VkBool32));
9376 *ptr += sizeof(VkBool32);
9377 memcpy(*ptr, (VkBool32*)&forMarshaling->robustImageAccess2, sizeof(VkBool32));
9378 *ptr += sizeof(VkBool32);
9379 memcpy(*ptr, (VkBool32*)&forMarshaling->nullDescriptor, sizeof(VkBool32));
9380 *ptr += sizeof(VkBool32);
9381 }
9382
reservedmarshal_VkPhysicalDeviceRobustness2PropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceRobustness2PropertiesEXT * forMarshaling,uint8_t ** ptr)9383 void reservedmarshal_VkPhysicalDeviceRobustness2PropertiesEXT(
9384 VulkanStreamGuest* vkStream, VkStructureType rootType,
9385 const VkPhysicalDeviceRobustness2PropertiesEXT* forMarshaling, uint8_t** ptr) {
9386 (void)vkStream;
9387 (void)rootType;
9388 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9389 *ptr += sizeof(VkStructureType);
9390 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9391 rootType = forMarshaling->sType;
9392 }
9393 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9394 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->robustStorageBufferAccessSizeAlignment,
9395 sizeof(VkDeviceSize));
9396 *ptr += sizeof(VkDeviceSize);
9397 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->robustUniformBufferAccessSizeAlignment,
9398 sizeof(VkDeviceSize));
9399 *ptr += sizeof(VkDeviceSize);
9400 }
9401
9402 #endif
9403 #ifdef VK_EXT_custom_border_color
reservedmarshal_VkSamplerCustomBorderColorCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSamplerCustomBorderColorCreateInfoEXT * forMarshaling,uint8_t ** ptr)9404 void reservedmarshal_VkSamplerCustomBorderColorCreateInfoEXT(
9405 VulkanStreamGuest* vkStream, VkStructureType rootType,
9406 const VkSamplerCustomBorderColorCreateInfoEXT* forMarshaling, uint8_t** ptr) {
9407 (void)vkStream;
9408 (void)rootType;
9409 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9410 *ptr += sizeof(VkStructureType);
9411 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9412 rootType = forMarshaling->sType;
9413 }
9414 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9415 reservedmarshal_VkClearColorValue(vkStream, rootType,
9416 (VkClearColorValue*)(&forMarshaling->customBorderColor), ptr);
9417 memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
9418 *ptr += sizeof(VkFormat);
9419 }
9420
reservedmarshal_VkPhysicalDeviceCustomBorderColorPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceCustomBorderColorPropertiesEXT * forMarshaling,uint8_t ** ptr)9421 void reservedmarshal_VkPhysicalDeviceCustomBorderColorPropertiesEXT(
9422 VulkanStreamGuest* vkStream, VkStructureType rootType,
9423 const VkPhysicalDeviceCustomBorderColorPropertiesEXT* forMarshaling, uint8_t** ptr) {
9424 (void)vkStream;
9425 (void)rootType;
9426 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9427 *ptr += sizeof(VkStructureType);
9428 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9429 rootType = forMarshaling->sType;
9430 }
9431 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9432 memcpy(*ptr, (uint32_t*)&forMarshaling->maxCustomBorderColorSamplers, sizeof(uint32_t));
9433 *ptr += sizeof(uint32_t);
9434 }
9435
reservedmarshal_VkPhysicalDeviceCustomBorderColorFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceCustomBorderColorFeaturesEXT * forMarshaling,uint8_t ** ptr)9436 void reservedmarshal_VkPhysicalDeviceCustomBorderColorFeaturesEXT(
9437 VulkanStreamGuest* vkStream, VkStructureType rootType,
9438 const VkPhysicalDeviceCustomBorderColorFeaturesEXT* forMarshaling, uint8_t** ptr) {
9439 (void)vkStream;
9440 (void)rootType;
9441 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9442 *ptr += sizeof(VkStructureType);
9443 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9444 rootType = forMarshaling->sType;
9445 }
9446 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9447 memcpy(*ptr, (VkBool32*)&forMarshaling->customBorderColors, sizeof(VkBool32));
9448 *ptr += sizeof(VkBool32);
9449 memcpy(*ptr, (VkBool32*)&forMarshaling->customBorderColorWithoutFormat, sizeof(VkBool32));
9450 *ptr += sizeof(VkBool32);
9451 }
9452
9453 #endif
9454 #ifdef VK_EXT_graphics_pipeline_library
reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT * forMarshaling,uint8_t ** ptr)9455 void reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(
9456 VulkanStreamGuest* vkStream, VkStructureType rootType,
9457 const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT* forMarshaling, uint8_t** ptr) {
9458 (void)vkStream;
9459 (void)rootType;
9460 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9461 *ptr += sizeof(VkStructureType);
9462 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9463 rootType = forMarshaling->sType;
9464 }
9465 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9466 memcpy(*ptr, (VkBool32*)&forMarshaling->graphicsPipelineLibrary, sizeof(VkBool32));
9467 *ptr += sizeof(VkBool32);
9468 }
9469
reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT * forMarshaling,uint8_t ** ptr)9470 void reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(
9471 VulkanStreamGuest* vkStream, VkStructureType rootType,
9472 const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT* forMarshaling, uint8_t** ptr) {
9473 (void)vkStream;
9474 (void)rootType;
9475 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9476 *ptr += sizeof(VkStructureType);
9477 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9478 rootType = forMarshaling->sType;
9479 }
9480 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9481 memcpy(*ptr, (VkBool32*)&forMarshaling->graphicsPipelineLibraryFastLinking, sizeof(VkBool32));
9482 *ptr += sizeof(VkBool32);
9483 memcpy(*ptr,
9484 (VkBool32*)&forMarshaling->graphicsPipelineLibraryIndependentInterpolationDecoration,
9485 sizeof(VkBool32));
9486 *ptr += sizeof(VkBool32);
9487 }
9488
reservedmarshal_VkGraphicsPipelineLibraryCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkGraphicsPipelineLibraryCreateInfoEXT * forMarshaling,uint8_t ** ptr)9489 void reservedmarshal_VkGraphicsPipelineLibraryCreateInfoEXT(
9490 VulkanStreamGuest* vkStream, VkStructureType rootType,
9491 const VkGraphicsPipelineLibraryCreateInfoEXT* forMarshaling, uint8_t** ptr) {
9492 (void)vkStream;
9493 (void)rootType;
9494 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9495 *ptr += sizeof(VkStructureType);
9496 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9497 rootType = forMarshaling->sType;
9498 }
9499 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9500 memcpy(*ptr, (VkGraphicsPipelineLibraryFlagsEXT*)&forMarshaling->flags,
9501 sizeof(VkGraphicsPipelineLibraryFlagsEXT));
9502 *ptr += sizeof(VkGraphicsPipelineLibraryFlagsEXT);
9503 }
9504
9505 #endif
9506 #ifdef VK_EXT_ycbcr_2plane_444_formats
reservedmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT * forMarshaling,uint8_t ** ptr)9507 void reservedmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
9508 VulkanStreamGuest* vkStream, VkStructureType rootType,
9509 const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* forMarshaling, uint8_t** ptr) {
9510 (void)vkStream;
9511 (void)rootType;
9512 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9513 *ptr += sizeof(VkStructureType);
9514 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9515 rootType = forMarshaling->sType;
9516 }
9517 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9518 memcpy(*ptr, (VkBool32*)&forMarshaling->ycbcr2plane444Formats, sizeof(VkBool32));
9519 *ptr += sizeof(VkBool32);
9520 }
9521
9522 #endif
9523 #ifdef VK_EXT_image_compression_control
reservedmarshal_VkPhysicalDeviceImageCompressionControlFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceImageCompressionControlFeaturesEXT * forMarshaling,uint8_t ** ptr)9524 void reservedmarshal_VkPhysicalDeviceImageCompressionControlFeaturesEXT(
9525 VulkanStreamGuest* vkStream, VkStructureType rootType,
9526 const VkPhysicalDeviceImageCompressionControlFeaturesEXT* forMarshaling, uint8_t** ptr) {
9527 (void)vkStream;
9528 (void)rootType;
9529 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9530 *ptr += sizeof(VkStructureType);
9531 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9532 rootType = forMarshaling->sType;
9533 }
9534 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9535 memcpy(*ptr, (VkBool32*)&forMarshaling->imageCompressionControl, sizeof(VkBool32));
9536 *ptr += sizeof(VkBool32);
9537 }
9538
reservedmarshal_VkImageCompressionControlEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageCompressionControlEXT * forMarshaling,uint8_t ** ptr)9539 void reservedmarshal_VkImageCompressionControlEXT(VulkanStreamGuest* vkStream,
9540 VkStructureType rootType,
9541 const VkImageCompressionControlEXT* forMarshaling,
9542 uint8_t** ptr) {
9543 (void)vkStream;
9544 (void)rootType;
9545 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9546 *ptr += sizeof(VkStructureType);
9547 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9548 rootType = forMarshaling->sType;
9549 }
9550 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9551 memcpy(*ptr, (VkImageCompressionFlagsEXT*)&forMarshaling->flags,
9552 sizeof(VkImageCompressionFlagsEXT));
9553 *ptr += sizeof(VkImageCompressionFlagsEXT);
9554 memcpy(*ptr, (uint32_t*)&forMarshaling->compressionControlPlaneCount, sizeof(uint32_t));
9555 *ptr += sizeof(uint32_t);
9556 // WARNING PTR CHECK
9557 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pFixedRateFlags;
9558 memcpy((*ptr), &cgen_var_0, 8);
9559 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
9560 *ptr += 8;
9561 if (forMarshaling->pFixedRateFlags) {
9562 memcpy(*ptr, (VkImageCompressionFixedRateFlagsEXT*)forMarshaling->pFixedRateFlags,
9563 forMarshaling->compressionControlPlaneCount *
9564 sizeof(VkImageCompressionFixedRateFlagsEXT));
9565 *ptr += forMarshaling->compressionControlPlaneCount *
9566 sizeof(VkImageCompressionFixedRateFlagsEXT);
9567 }
9568 }
9569
reservedmarshal_VkImageCompressionPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageCompressionPropertiesEXT * forMarshaling,uint8_t ** ptr)9570 void reservedmarshal_VkImageCompressionPropertiesEXT(
9571 VulkanStreamGuest* vkStream, VkStructureType rootType,
9572 const VkImageCompressionPropertiesEXT* forMarshaling, uint8_t** ptr) {
9573 (void)vkStream;
9574 (void)rootType;
9575 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9576 *ptr += sizeof(VkStructureType);
9577 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9578 rootType = forMarshaling->sType;
9579 }
9580 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9581 memcpy(*ptr, (VkImageCompressionFlagsEXT*)&forMarshaling->imageCompressionFlags,
9582 sizeof(VkImageCompressionFlagsEXT));
9583 *ptr += sizeof(VkImageCompressionFlagsEXT);
9584 memcpy(*ptr,
9585 (VkImageCompressionFixedRateFlagsEXT*)&forMarshaling->imageCompressionFixedRateFlags,
9586 sizeof(VkImageCompressionFixedRateFlagsEXT));
9587 *ptr += sizeof(VkImageCompressionFixedRateFlagsEXT);
9588 }
9589
9590 #endif
9591 #ifdef VK_EXT_4444_formats
reservedmarshal_VkPhysicalDevice4444FormatsFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevice4444FormatsFeaturesEXT * forMarshaling,uint8_t ** ptr)9592 void reservedmarshal_VkPhysicalDevice4444FormatsFeaturesEXT(
9593 VulkanStreamGuest* vkStream, VkStructureType rootType,
9594 const VkPhysicalDevice4444FormatsFeaturesEXT* forMarshaling, uint8_t** ptr) {
9595 (void)vkStream;
9596 (void)rootType;
9597 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9598 *ptr += sizeof(VkStructureType);
9599 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9600 rootType = forMarshaling->sType;
9601 }
9602 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9603 memcpy(*ptr, (VkBool32*)&forMarshaling->formatA4R4G4B4, sizeof(VkBool32));
9604 *ptr += sizeof(VkBool32);
9605 memcpy(*ptr, (VkBool32*)&forMarshaling->formatA4B4G4R4, sizeof(VkBool32));
9606 *ptr += sizeof(VkBool32);
9607 }
9608
9609 #endif
9610 #ifdef VK_EXT_primitive_topology_list_restart
reservedmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT * forMarshaling,uint8_t ** ptr)9611 void reservedmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
9612 VulkanStreamGuest* vkStream, VkStructureType rootType,
9613 const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* forMarshaling, uint8_t** ptr) {
9614 (void)vkStream;
9615 (void)rootType;
9616 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9617 *ptr += sizeof(VkStructureType);
9618 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9619 rootType = forMarshaling->sType;
9620 }
9621 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9622 memcpy(*ptr, (VkBool32*)&forMarshaling->primitiveTopologyListRestart, sizeof(VkBool32));
9623 *ptr += sizeof(VkBool32);
9624 memcpy(*ptr, (VkBool32*)&forMarshaling->primitiveTopologyPatchListRestart, sizeof(VkBool32));
9625 *ptr += sizeof(VkBool32);
9626 }
9627
9628 #endif
9629 #ifdef VK_EXT_extended_dynamic_state2
reservedmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT * forMarshaling,uint8_t ** ptr)9630 void reservedmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
9631 VulkanStreamGuest* vkStream, VkStructureType rootType,
9632 const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* forMarshaling, uint8_t** ptr) {
9633 (void)vkStream;
9634 (void)rootType;
9635 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9636 *ptr += sizeof(VkStructureType);
9637 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9638 rootType = forMarshaling->sType;
9639 }
9640 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9641 memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState2, sizeof(VkBool32));
9642 *ptr += sizeof(VkBool32);
9643 memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState2LogicOp, sizeof(VkBool32));
9644 *ptr += sizeof(VkBool32);
9645 memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState2PatchControlPoints,
9646 sizeof(VkBool32));
9647 *ptr += sizeof(VkBool32);
9648 }
9649
9650 #endif
9651 #ifdef VK_EXT_color_write_enable
reservedmarshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceColorWriteEnableFeaturesEXT * forMarshaling,uint8_t ** ptr)9652 void reservedmarshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
9653 VulkanStreamGuest* vkStream, VkStructureType rootType,
9654 const VkPhysicalDeviceColorWriteEnableFeaturesEXT* forMarshaling, uint8_t** ptr) {
9655 (void)vkStream;
9656 (void)rootType;
9657 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9658 *ptr += sizeof(VkStructureType);
9659 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9660 rootType = forMarshaling->sType;
9661 }
9662 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9663 memcpy(*ptr, (VkBool32*)&forMarshaling->colorWriteEnable, sizeof(VkBool32));
9664 *ptr += sizeof(VkBool32);
9665 }
9666
reservedmarshal_VkPipelineColorWriteCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineColorWriteCreateInfoEXT * forMarshaling,uint8_t ** ptr)9667 void reservedmarshal_VkPipelineColorWriteCreateInfoEXT(
9668 VulkanStreamGuest* vkStream, VkStructureType rootType,
9669 const VkPipelineColorWriteCreateInfoEXT* forMarshaling, uint8_t** ptr) {
9670 (void)vkStream;
9671 (void)rootType;
9672 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9673 *ptr += sizeof(VkStructureType);
9674 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9675 rootType = forMarshaling->sType;
9676 }
9677 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9678 memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t));
9679 *ptr += sizeof(uint32_t);
9680 memcpy(*ptr, (const VkBool32*)forMarshaling->pColorWriteEnables,
9681 forMarshaling->attachmentCount * sizeof(const VkBool32));
9682 *ptr += forMarshaling->attachmentCount * sizeof(const VkBool32);
9683 }
9684
9685 #endif
9686 #ifdef VK_GOOGLE_gfxstream
reservedmarshal_VkImportColorBufferGOOGLE(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImportColorBufferGOOGLE * forMarshaling,uint8_t ** ptr)9687 void reservedmarshal_VkImportColorBufferGOOGLE(VulkanStreamGuest* vkStream,
9688 VkStructureType rootType,
9689 const VkImportColorBufferGOOGLE* forMarshaling,
9690 uint8_t** ptr) {
9691 (void)vkStream;
9692 (void)rootType;
9693 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9694 *ptr += sizeof(VkStructureType);
9695 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9696 rootType = forMarshaling->sType;
9697 }
9698 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9699 memcpy(*ptr, (uint32_t*)&forMarshaling->colorBuffer, sizeof(uint32_t));
9700 *ptr += sizeof(uint32_t);
9701 }
9702
reservedmarshal_VkImportBufferGOOGLE(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImportBufferGOOGLE * forMarshaling,uint8_t ** ptr)9703 void reservedmarshal_VkImportBufferGOOGLE(VulkanStreamGuest* vkStream, VkStructureType rootType,
9704 const VkImportBufferGOOGLE* forMarshaling,
9705 uint8_t** ptr) {
9706 (void)vkStream;
9707 (void)rootType;
9708 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9709 *ptr += sizeof(VkStructureType);
9710 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9711 rootType = forMarshaling->sType;
9712 }
9713 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9714 memcpy(*ptr, (uint32_t*)&forMarshaling->buffer, sizeof(uint32_t));
9715 *ptr += sizeof(uint32_t);
9716 }
9717
reservedmarshal_VkCreateBlobGOOGLE(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCreateBlobGOOGLE * forMarshaling,uint8_t ** ptr)9718 void reservedmarshal_VkCreateBlobGOOGLE(VulkanStreamGuest* vkStream, VkStructureType rootType,
9719 const VkCreateBlobGOOGLE* forMarshaling, uint8_t** ptr) {
9720 (void)vkStream;
9721 (void)rootType;
9722 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9723 *ptr += sizeof(VkStructureType);
9724 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9725 rootType = forMarshaling->sType;
9726 }
9727 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9728 memcpy(*ptr, (uint32_t*)&forMarshaling->blobMem, sizeof(uint32_t));
9729 *ptr += sizeof(uint32_t);
9730 memcpy(*ptr, (uint32_t*)&forMarshaling->blobFlags, sizeof(uint32_t));
9731 *ptr += sizeof(uint32_t);
9732 memcpy(*ptr, (uint64_t*)&forMarshaling->blobId, sizeof(uint64_t));
9733 *ptr += sizeof(uint64_t);
9734 }
9735
9736 #endif
9737 #ifdef VK_EXT_image_compression_control_swapchain
reservedmarshal_VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT * forMarshaling,uint8_t ** ptr)9738 void reservedmarshal_VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(
9739 VulkanStreamGuest* vkStream, VkStructureType rootType,
9740 const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT* forMarshaling,
9741 uint8_t** ptr) {
9742 (void)vkStream;
9743 (void)rootType;
9744 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9745 *ptr += sizeof(VkStructureType);
9746 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9747 rootType = forMarshaling->sType;
9748 }
9749 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9750 memcpy(*ptr, (VkBool32*)&forMarshaling->imageCompressionControlSwapchain, sizeof(VkBool32));
9751 *ptr += sizeof(VkBool32);
9752 }
9753
9754 #endif
reservedmarshal_extension_struct(VulkanStreamGuest * vkStream,VkStructureType rootType,const void * structExtension,uint8_t ** ptr)9755 void reservedmarshal_extension_struct(VulkanStreamGuest* vkStream, VkStructureType rootType,
9756 const void* structExtension, uint8_t** ptr) {
9757 VkInstanceCreateInfo* structAccess = (VkInstanceCreateInfo*)(structExtension);
9758 uint32_t currExtSize = goldfish_vk_extension_struct_size_with_stream_features(
9759 vkStream->getFeatureBits(), rootType, structExtension);
9760 if (!currExtSize && structExtension) {
9761 // unknown struct extension; skip and call on its pNext field
9762 reservedmarshal_extension_struct(vkStream, rootType, (void*)structAccess->pNext, ptr);
9763 return;
9764 } else {
9765 // known or null extension struct
9766 memcpy(*ptr, &currExtSize, sizeof(uint32_t));
9767 ;
9768 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
9769 *ptr += sizeof(uint32_t);
9770 if (!currExtSize) {
9771 // exit if this was a null extension struct (size == 0 in this branch)
9772 return;
9773 }
9774 }
9775 memcpy(*ptr, structExtension, sizeof(VkStructureType));
9776 *ptr += sizeof(VkStructureType);
9777 if (!structExtension) {
9778 return;
9779 }
9780 uint32_t structType = (uint32_t)goldfish_vk_struct_type(structExtension);
9781 switch (structType) {
9782 #ifdef VK_VERSION_1_0
9783 case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO: {
9784 reservedmarshal_VkShaderModuleCreateInfo(
9785 vkStream, rootType,
9786 reinterpret_cast<const VkShaderModuleCreateInfo*>(structExtension), ptr);
9787 break;
9788 }
9789 case VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO: {
9790 reservedmarshal_VkPipelineLayoutCreateInfo(
9791 vkStream, rootType,
9792 reinterpret_cast<const VkPipelineLayoutCreateInfo*>(structExtension), ptr);
9793 break;
9794 }
9795 #endif
9796 #ifdef VK_VERSION_1_1
9797 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES: {
9798 reservedmarshal_VkPhysicalDeviceSubgroupProperties(
9799 vkStream, rootType,
9800 reinterpret_cast<const VkPhysicalDeviceSubgroupProperties*>(structExtension), ptr);
9801 break;
9802 }
9803 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES: {
9804 reservedmarshal_VkPhysicalDevice16BitStorageFeatures(
9805 vkStream, rootType,
9806 reinterpret_cast<const VkPhysicalDevice16BitStorageFeatures*>(structExtension),
9807 ptr);
9808 break;
9809 }
9810 case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS: {
9811 reservedmarshal_VkMemoryDedicatedRequirements(
9812 vkStream, rootType,
9813 reinterpret_cast<const VkMemoryDedicatedRequirements*>(structExtension), ptr);
9814 break;
9815 }
9816 case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO: {
9817 reservedmarshal_VkMemoryDedicatedAllocateInfo(
9818 vkStream, rootType,
9819 reinterpret_cast<const VkMemoryDedicatedAllocateInfo*>(structExtension), ptr);
9820 break;
9821 }
9822 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO: {
9823 reservedmarshal_VkMemoryAllocateFlagsInfo(
9824 vkStream, rootType,
9825 reinterpret_cast<const VkMemoryAllocateFlagsInfo*>(structExtension), ptr);
9826 break;
9827 }
9828 case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO: {
9829 reservedmarshal_VkDeviceGroupRenderPassBeginInfo(
9830 vkStream, rootType,
9831 reinterpret_cast<const VkDeviceGroupRenderPassBeginInfo*>(structExtension), ptr);
9832 break;
9833 }
9834 case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO: {
9835 reservedmarshal_VkDeviceGroupCommandBufferBeginInfo(
9836 vkStream, rootType,
9837 reinterpret_cast<const VkDeviceGroupCommandBufferBeginInfo*>(structExtension), ptr);
9838 break;
9839 }
9840 case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO: {
9841 reservedmarshal_VkDeviceGroupSubmitInfo(
9842 vkStream, rootType,
9843 reinterpret_cast<const VkDeviceGroupSubmitInfo*>(structExtension), ptr);
9844 break;
9845 }
9846 case VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO: {
9847 reservedmarshal_VkDeviceGroupBindSparseInfo(
9848 vkStream, rootType,
9849 reinterpret_cast<const VkDeviceGroupBindSparseInfo*>(structExtension), ptr);
9850 break;
9851 }
9852 case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO: {
9853 reservedmarshal_VkBindBufferMemoryDeviceGroupInfo(
9854 vkStream, rootType,
9855 reinterpret_cast<const VkBindBufferMemoryDeviceGroupInfo*>(structExtension), ptr);
9856 break;
9857 }
9858 case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO: {
9859 reservedmarshal_VkBindImageMemoryDeviceGroupInfo(
9860 vkStream, rootType,
9861 reinterpret_cast<const VkBindImageMemoryDeviceGroupInfo*>(structExtension), ptr);
9862 break;
9863 }
9864 case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO: {
9865 reservedmarshal_VkDeviceGroupDeviceCreateInfo(
9866 vkStream, rootType,
9867 reinterpret_cast<const VkDeviceGroupDeviceCreateInfo*>(structExtension), ptr);
9868 break;
9869 }
9870 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2: {
9871 reservedmarshal_VkPhysicalDeviceFeatures2(
9872 vkStream, rootType,
9873 reinterpret_cast<const VkPhysicalDeviceFeatures2*>(structExtension), ptr);
9874 break;
9875 }
9876 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES: {
9877 reservedmarshal_VkPhysicalDevicePointClippingProperties(
9878 vkStream, rootType,
9879 reinterpret_cast<const VkPhysicalDevicePointClippingProperties*>(structExtension),
9880 ptr);
9881 break;
9882 }
9883 case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO: {
9884 reservedmarshal_VkRenderPassInputAttachmentAspectCreateInfo(
9885 vkStream, rootType,
9886 reinterpret_cast<const VkRenderPassInputAttachmentAspectCreateInfo*>(
9887 structExtension),
9888 ptr);
9889 break;
9890 }
9891 case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO: {
9892 reservedmarshal_VkImageViewUsageCreateInfo(
9893 vkStream, rootType,
9894 reinterpret_cast<const VkImageViewUsageCreateInfo*>(structExtension), ptr);
9895 break;
9896 }
9897 case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO: {
9898 reservedmarshal_VkPipelineTessellationDomainOriginStateCreateInfo(
9899 vkStream, rootType,
9900 reinterpret_cast<const VkPipelineTessellationDomainOriginStateCreateInfo*>(
9901 structExtension),
9902 ptr);
9903 break;
9904 }
9905 case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO: {
9906 reservedmarshal_VkRenderPassMultiviewCreateInfo(
9907 vkStream, rootType,
9908 reinterpret_cast<const VkRenderPassMultiviewCreateInfo*>(structExtension), ptr);
9909 break;
9910 }
9911 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES: {
9912 reservedmarshal_VkPhysicalDeviceMultiviewFeatures(
9913 vkStream, rootType,
9914 reinterpret_cast<const VkPhysicalDeviceMultiviewFeatures*>(structExtension), ptr);
9915 break;
9916 }
9917 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES: {
9918 reservedmarshal_VkPhysicalDeviceMultiviewProperties(
9919 vkStream, rootType,
9920 reinterpret_cast<const VkPhysicalDeviceMultiviewProperties*>(structExtension), ptr);
9921 break;
9922 }
9923 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES: {
9924 reservedmarshal_VkPhysicalDeviceVariablePointersFeatures(
9925 vkStream, rootType,
9926 reinterpret_cast<const VkPhysicalDeviceVariablePointersFeatures*>(structExtension),
9927 ptr);
9928 break;
9929 }
9930 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES: {
9931 reservedmarshal_VkPhysicalDeviceProtectedMemoryFeatures(
9932 vkStream, rootType,
9933 reinterpret_cast<const VkPhysicalDeviceProtectedMemoryFeatures*>(structExtension),
9934 ptr);
9935 break;
9936 }
9937 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES: {
9938 reservedmarshal_VkPhysicalDeviceProtectedMemoryProperties(
9939 vkStream, rootType,
9940 reinterpret_cast<const VkPhysicalDeviceProtectedMemoryProperties*>(structExtension),
9941 ptr);
9942 break;
9943 }
9944 case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO: {
9945 reservedmarshal_VkProtectedSubmitInfo(
9946 vkStream, rootType, reinterpret_cast<const VkProtectedSubmitInfo*>(structExtension),
9947 ptr);
9948 break;
9949 }
9950 case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO: {
9951 reservedmarshal_VkSamplerYcbcrConversionInfo(
9952 vkStream, rootType,
9953 reinterpret_cast<const VkSamplerYcbcrConversionInfo*>(structExtension), ptr);
9954 break;
9955 }
9956 case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO: {
9957 reservedmarshal_VkBindImagePlaneMemoryInfo(
9958 vkStream, rootType,
9959 reinterpret_cast<const VkBindImagePlaneMemoryInfo*>(structExtension), ptr);
9960 break;
9961 }
9962 case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO: {
9963 reservedmarshal_VkImagePlaneMemoryRequirementsInfo(
9964 vkStream, rootType,
9965 reinterpret_cast<const VkImagePlaneMemoryRequirementsInfo*>(structExtension), ptr);
9966 break;
9967 }
9968 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES: {
9969 reservedmarshal_VkPhysicalDeviceSamplerYcbcrConversionFeatures(
9970 vkStream, rootType,
9971 reinterpret_cast<const VkPhysicalDeviceSamplerYcbcrConversionFeatures*>(
9972 structExtension),
9973 ptr);
9974 break;
9975 }
9976 case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES: {
9977 reservedmarshal_VkSamplerYcbcrConversionImageFormatProperties(
9978 vkStream, rootType,
9979 reinterpret_cast<const VkSamplerYcbcrConversionImageFormatProperties*>(
9980 structExtension),
9981 ptr);
9982 break;
9983 }
9984 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO: {
9985 reservedmarshal_VkPhysicalDeviceExternalImageFormatInfo(
9986 vkStream, rootType,
9987 reinterpret_cast<const VkPhysicalDeviceExternalImageFormatInfo*>(structExtension),
9988 ptr);
9989 break;
9990 }
9991 case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES: {
9992 reservedmarshal_VkExternalImageFormatProperties(
9993 vkStream, rootType,
9994 reinterpret_cast<const VkExternalImageFormatProperties*>(structExtension), ptr);
9995 break;
9996 }
9997 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES: {
9998 reservedmarshal_VkPhysicalDeviceIDProperties(
9999 vkStream, rootType,
10000 reinterpret_cast<const VkPhysicalDeviceIDProperties*>(structExtension), ptr);
10001 break;
10002 }
10003 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO: {
10004 reservedmarshal_VkExternalMemoryImageCreateInfo(
10005 vkStream, rootType,
10006 reinterpret_cast<const VkExternalMemoryImageCreateInfo*>(structExtension), ptr);
10007 break;
10008 }
10009 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO: {
10010 reservedmarshal_VkExternalMemoryBufferCreateInfo(
10011 vkStream, rootType,
10012 reinterpret_cast<const VkExternalMemoryBufferCreateInfo*>(structExtension), ptr);
10013 break;
10014 }
10015 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO: {
10016 reservedmarshal_VkExportMemoryAllocateInfo(
10017 vkStream, rootType,
10018 reinterpret_cast<const VkExportMemoryAllocateInfo*>(structExtension), ptr);
10019 break;
10020 }
10021 case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO: {
10022 reservedmarshal_VkExportFenceCreateInfo(
10023 vkStream, rootType,
10024 reinterpret_cast<const VkExportFenceCreateInfo*>(structExtension), ptr);
10025 break;
10026 }
10027 case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO: {
10028 reservedmarshal_VkExportSemaphoreCreateInfo(
10029 vkStream, rootType,
10030 reinterpret_cast<const VkExportSemaphoreCreateInfo*>(structExtension), ptr);
10031 break;
10032 }
10033 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES: {
10034 reservedmarshal_VkPhysicalDeviceMaintenance3Properties(
10035 vkStream, rootType,
10036 reinterpret_cast<const VkPhysicalDeviceMaintenance3Properties*>(structExtension),
10037 ptr);
10038 break;
10039 }
10040 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES: {
10041 reservedmarshal_VkPhysicalDeviceShaderDrawParametersFeatures(
10042 vkStream, rootType,
10043 reinterpret_cast<const VkPhysicalDeviceShaderDrawParametersFeatures*>(
10044 structExtension),
10045 ptr);
10046 break;
10047 }
10048 #endif
10049 #ifdef VK_VERSION_1_2
10050 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES: {
10051 reservedmarshal_VkPhysicalDeviceVulkan11Features(
10052 vkStream, rootType,
10053 reinterpret_cast<const VkPhysicalDeviceVulkan11Features*>(structExtension), ptr);
10054 break;
10055 }
10056 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES: {
10057 reservedmarshal_VkPhysicalDeviceVulkan11Properties(
10058 vkStream, rootType,
10059 reinterpret_cast<const VkPhysicalDeviceVulkan11Properties*>(structExtension), ptr);
10060 break;
10061 }
10062 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES: {
10063 reservedmarshal_VkPhysicalDeviceVulkan12Features(
10064 vkStream, rootType,
10065 reinterpret_cast<const VkPhysicalDeviceVulkan12Features*>(structExtension), ptr);
10066 break;
10067 }
10068 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES: {
10069 reservedmarshal_VkPhysicalDeviceVulkan12Properties(
10070 vkStream, rootType,
10071 reinterpret_cast<const VkPhysicalDeviceVulkan12Properties*>(structExtension), ptr);
10072 break;
10073 }
10074 case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO: {
10075 reservedmarshal_VkImageFormatListCreateInfo(
10076 vkStream, rootType,
10077 reinterpret_cast<const VkImageFormatListCreateInfo*>(structExtension), ptr);
10078 break;
10079 }
10080 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES: {
10081 reservedmarshal_VkPhysicalDevice8BitStorageFeatures(
10082 vkStream, rootType,
10083 reinterpret_cast<const VkPhysicalDevice8BitStorageFeatures*>(structExtension), ptr);
10084 break;
10085 }
10086 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES: {
10087 reservedmarshal_VkPhysicalDeviceDriverProperties(
10088 vkStream, rootType,
10089 reinterpret_cast<const VkPhysicalDeviceDriverProperties*>(structExtension), ptr);
10090 break;
10091 }
10092 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES: {
10093 reservedmarshal_VkPhysicalDeviceShaderAtomicInt64Features(
10094 vkStream, rootType,
10095 reinterpret_cast<const VkPhysicalDeviceShaderAtomicInt64Features*>(structExtension),
10096 ptr);
10097 break;
10098 }
10099 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES: {
10100 reservedmarshal_VkPhysicalDeviceShaderFloat16Int8Features(
10101 vkStream, rootType,
10102 reinterpret_cast<const VkPhysicalDeviceShaderFloat16Int8Features*>(structExtension),
10103 ptr);
10104 break;
10105 }
10106 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES: {
10107 reservedmarshal_VkPhysicalDeviceFloatControlsProperties(
10108 vkStream, rootType,
10109 reinterpret_cast<const VkPhysicalDeviceFloatControlsProperties*>(structExtension),
10110 ptr);
10111 break;
10112 }
10113 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO: {
10114 reservedmarshal_VkDescriptorSetLayoutBindingFlagsCreateInfo(
10115 vkStream, rootType,
10116 reinterpret_cast<const VkDescriptorSetLayoutBindingFlagsCreateInfo*>(
10117 structExtension),
10118 ptr);
10119 break;
10120 }
10121 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES: {
10122 reservedmarshal_VkPhysicalDeviceDescriptorIndexingFeatures(
10123 vkStream, rootType,
10124 reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingFeatures*>(
10125 structExtension),
10126 ptr);
10127 break;
10128 }
10129 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES: {
10130 reservedmarshal_VkPhysicalDeviceDescriptorIndexingProperties(
10131 vkStream, rootType,
10132 reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingProperties*>(
10133 structExtension),
10134 ptr);
10135 break;
10136 }
10137 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO: {
10138 reservedmarshal_VkDescriptorSetVariableDescriptorCountAllocateInfo(
10139 vkStream, rootType,
10140 reinterpret_cast<const VkDescriptorSetVariableDescriptorCountAllocateInfo*>(
10141 structExtension),
10142 ptr);
10143 break;
10144 }
10145 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT: {
10146 reservedmarshal_VkDescriptorSetVariableDescriptorCountLayoutSupport(
10147 vkStream, rootType,
10148 reinterpret_cast<const VkDescriptorSetVariableDescriptorCountLayoutSupport*>(
10149 structExtension),
10150 ptr);
10151 break;
10152 }
10153 case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE: {
10154 reservedmarshal_VkSubpassDescriptionDepthStencilResolve(
10155 vkStream, rootType,
10156 reinterpret_cast<const VkSubpassDescriptionDepthStencilResolve*>(structExtension),
10157 ptr);
10158 break;
10159 }
10160 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES: {
10161 reservedmarshal_VkPhysicalDeviceDepthStencilResolveProperties(
10162 vkStream, rootType,
10163 reinterpret_cast<const VkPhysicalDeviceDepthStencilResolveProperties*>(
10164 structExtension),
10165 ptr);
10166 break;
10167 }
10168 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES: {
10169 reservedmarshal_VkPhysicalDeviceScalarBlockLayoutFeatures(
10170 vkStream, rootType,
10171 reinterpret_cast<const VkPhysicalDeviceScalarBlockLayoutFeatures*>(structExtension),
10172 ptr);
10173 break;
10174 }
10175 case VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO: {
10176 reservedmarshal_VkImageStencilUsageCreateInfo(
10177 vkStream, rootType,
10178 reinterpret_cast<const VkImageStencilUsageCreateInfo*>(structExtension), ptr);
10179 break;
10180 }
10181 case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO: {
10182 reservedmarshal_VkSamplerReductionModeCreateInfo(
10183 vkStream, rootType,
10184 reinterpret_cast<const VkSamplerReductionModeCreateInfo*>(structExtension), ptr);
10185 break;
10186 }
10187 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES: {
10188 reservedmarshal_VkPhysicalDeviceSamplerFilterMinmaxProperties(
10189 vkStream, rootType,
10190 reinterpret_cast<const VkPhysicalDeviceSamplerFilterMinmaxProperties*>(
10191 structExtension),
10192 ptr);
10193 break;
10194 }
10195 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES: {
10196 reservedmarshal_VkPhysicalDeviceVulkanMemoryModelFeatures(
10197 vkStream, rootType,
10198 reinterpret_cast<const VkPhysicalDeviceVulkanMemoryModelFeatures*>(structExtension),
10199 ptr);
10200 break;
10201 }
10202 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES: {
10203 reservedmarshal_VkPhysicalDeviceImagelessFramebufferFeatures(
10204 vkStream, rootType,
10205 reinterpret_cast<const VkPhysicalDeviceImagelessFramebufferFeatures*>(
10206 structExtension),
10207 ptr);
10208 break;
10209 }
10210 case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO: {
10211 reservedmarshal_VkFramebufferAttachmentsCreateInfo(
10212 vkStream, rootType,
10213 reinterpret_cast<const VkFramebufferAttachmentsCreateInfo*>(structExtension), ptr);
10214 break;
10215 }
10216 case VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO: {
10217 reservedmarshal_VkRenderPassAttachmentBeginInfo(
10218 vkStream, rootType,
10219 reinterpret_cast<const VkRenderPassAttachmentBeginInfo*>(structExtension), ptr);
10220 break;
10221 }
10222 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES: {
10223 reservedmarshal_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(
10224 vkStream, rootType,
10225 reinterpret_cast<const VkPhysicalDeviceUniformBufferStandardLayoutFeatures*>(
10226 structExtension),
10227 ptr);
10228 break;
10229 }
10230 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES: {
10231 reservedmarshal_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(
10232 vkStream, rootType,
10233 reinterpret_cast<const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*>(
10234 structExtension),
10235 ptr);
10236 break;
10237 }
10238 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES: {
10239 reservedmarshal_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(
10240 vkStream, rootType,
10241 reinterpret_cast<const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*>(
10242 structExtension),
10243 ptr);
10244 break;
10245 }
10246 case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT: {
10247 reservedmarshal_VkAttachmentReferenceStencilLayout(
10248 vkStream, rootType,
10249 reinterpret_cast<const VkAttachmentReferenceStencilLayout*>(structExtension), ptr);
10250 break;
10251 }
10252 case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT: {
10253 reservedmarshal_VkAttachmentDescriptionStencilLayout(
10254 vkStream, rootType,
10255 reinterpret_cast<const VkAttachmentDescriptionStencilLayout*>(structExtension),
10256 ptr);
10257 break;
10258 }
10259 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES: {
10260 reservedmarshal_VkPhysicalDeviceHostQueryResetFeatures(
10261 vkStream, rootType,
10262 reinterpret_cast<const VkPhysicalDeviceHostQueryResetFeatures*>(structExtension),
10263 ptr);
10264 break;
10265 }
10266 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES: {
10267 reservedmarshal_VkPhysicalDeviceTimelineSemaphoreFeatures(
10268 vkStream, rootType,
10269 reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreFeatures*>(structExtension),
10270 ptr);
10271 break;
10272 }
10273 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES: {
10274 reservedmarshal_VkPhysicalDeviceTimelineSemaphoreProperties(
10275 vkStream, rootType,
10276 reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreProperties*>(
10277 structExtension),
10278 ptr);
10279 break;
10280 }
10281 case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO: {
10282 reservedmarshal_VkSemaphoreTypeCreateInfo(
10283 vkStream, rootType,
10284 reinterpret_cast<const VkSemaphoreTypeCreateInfo*>(structExtension), ptr);
10285 break;
10286 }
10287 case VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO: {
10288 reservedmarshal_VkTimelineSemaphoreSubmitInfo(
10289 vkStream, rootType,
10290 reinterpret_cast<const VkTimelineSemaphoreSubmitInfo*>(structExtension), ptr);
10291 break;
10292 }
10293 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES: {
10294 reservedmarshal_VkPhysicalDeviceBufferDeviceAddressFeatures(
10295 vkStream, rootType,
10296 reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeatures*>(
10297 structExtension),
10298 ptr);
10299 break;
10300 }
10301 case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO: {
10302 reservedmarshal_VkBufferOpaqueCaptureAddressCreateInfo(
10303 vkStream, rootType,
10304 reinterpret_cast<const VkBufferOpaqueCaptureAddressCreateInfo*>(structExtension),
10305 ptr);
10306 break;
10307 }
10308 case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO: {
10309 reservedmarshal_VkMemoryOpaqueCaptureAddressAllocateInfo(
10310 vkStream, rootType,
10311 reinterpret_cast<const VkMemoryOpaqueCaptureAddressAllocateInfo*>(structExtension),
10312 ptr);
10313 break;
10314 }
10315 #endif
10316 #ifdef VK_VERSION_1_3
10317 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES: {
10318 reservedmarshal_VkPhysicalDeviceVulkan13Features(
10319 vkStream, rootType,
10320 reinterpret_cast<const VkPhysicalDeviceVulkan13Features*>(structExtension), ptr);
10321 break;
10322 }
10323 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES: {
10324 reservedmarshal_VkPhysicalDeviceVulkan13Properties(
10325 vkStream, rootType,
10326 reinterpret_cast<const VkPhysicalDeviceVulkan13Properties*>(structExtension), ptr);
10327 break;
10328 }
10329 case VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO: {
10330 reservedmarshal_VkPipelineCreationFeedbackCreateInfo(
10331 vkStream, rootType,
10332 reinterpret_cast<const VkPipelineCreationFeedbackCreateInfo*>(structExtension),
10333 ptr);
10334 break;
10335 }
10336 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES: {
10337 reservedmarshal_VkPhysicalDeviceShaderTerminateInvocationFeatures(
10338 vkStream, rootType,
10339 reinterpret_cast<const VkPhysicalDeviceShaderTerminateInvocationFeatures*>(
10340 structExtension),
10341 ptr);
10342 break;
10343 }
10344 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES: {
10345 reservedmarshal_VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures(
10346 vkStream, rootType,
10347 reinterpret_cast<const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures*>(
10348 structExtension),
10349 ptr);
10350 break;
10351 }
10352 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES: {
10353 reservedmarshal_VkPhysicalDevicePrivateDataFeatures(
10354 vkStream, rootType,
10355 reinterpret_cast<const VkPhysicalDevicePrivateDataFeatures*>(structExtension), ptr);
10356 break;
10357 }
10358 case VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO: {
10359 reservedmarshal_VkDevicePrivateDataCreateInfo(
10360 vkStream, rootType,
10361 reinterpret_cast<const VkDevicePrivateDataCreateInfo*>(structExtension), ptr);
10362 break;
10363 }
10364 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES: {
10365 reservedmarshal_VkPhysicalDevicePipelineCreationCacheControlFeatures(
10366 vkStream, rootType,
10367 reinterpret_cast<const VkPhysicalDevicePipelineCreationCacheControlFeatures*>(
10368 structExtension),
10369 ptr);
10370 break;
10371 }
10372 case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2: {
10373 reservedmarshal_VkMemoryBarrier2(
10374 vkStream, rootType, reinterpret_cast<const VkMemoryBarrier2*>(structExtension),
10375 ptr);
10376 break;
10377 }
10378 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES: {
10379 reservedmarshal_VkPhysicalDeviceSynchronization2Features(
10380 vkStream, rootType,
10381 reinterpret_cast<const VkPhysicalDeviceSynchronization2Features*>(structExtension),
10382 ptr);
10383 break;
10384 }
10385 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES: {
10386 reservedmarshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures(
10387 vkStream, rootType,
10388 reinterpret_cast<const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures*>(
10389 structExtension),
10390 ptr);
10391 break;
10392 }
10393 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES: {
10394 reservedmarshal_VkPhysicalDeviceImageRobustnessFeatures(
10395 vkStream, rootType,
10396 reinterpret_cast<const VkPhysicalDeviceImageRobustnessFeatures*>(structExtension),
10397 ptr);
10398 break;
10399 }
10400 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES: {
10401 reservedmarshal_VkPhysicalDeviceSubgroupSizeControlFeatures(
10402 vkStream, rootType,
10403 reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlFeatures*>(
10404 structExtension),
10405 ptr);
10406 break;
10407 }
10408 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES: {
10409 reservedmarshal_VkPhysicalDeviceSubgroupSizeControlProperties(
10410 vkStream, rootType,
10411 reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlProperties*>(
10412 structExtension),
10413 ptr);
10414 break;
10415 }
10416 case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO: {
10417 reservedmarshal_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo(
10418 vkStream, rootType,
10419 reinterpret_cast<const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo*>(
10420 structExtension),
10421 ptr);
10422 break;
10423 }
10424 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES: {
10425 reservedmarshal_VkPhysicalDeviceInlineUniformBlockFeatures(
10426 vkStream, rootType,
10427 reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockFeatures*>(
10428 structExtension),
10429 ptr);
10430 break;
10431 }
10432 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES: {
10433 reservedmarshal_VkPhysicalDeviceInlineUniformBlockProperties(
10434 vkStream, rootType,
10435 reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockProperties*>(
10436 structExtension),
10437 ptr);
10438 break;
10439 }
10440 case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK: {
10441 reservedmarshal_VkWriteDescriptorSetInlineUniformBlock(
10442 vkStream, rootType,
10443 reinterpret_cast<const VkWriteDescriptorSetInlineUniformBlock*>(structExtension),
10444 ptr);
10445 break;
10446 }
10447 case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO: {
10448 reservedmarshal_VkDescriptorPoolInlineUniformBlockCreateInfo(
10449 vkStream, rootType,
10450 reinterpret_cast<const VkDescriptorPoolInlineUniformBlockCreateInfo*>(
10451 structExtension),
10452 ptr);
10453 break;
10454 }
10455 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES: {
10456 reservedmarshal_VkPhysicalDeviceTextureCompressionASTCHDRFeatures(
10457 vkStream, rootType,
10458 reinterpret_cast<const VkPhysicalDeviceTextureCompressionASTCHDRFeatures*>(
10459 structExtension),
10460 ptr);
10461 break;
10462 }
10463 case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO: {
10464 reservedmarshal_VkPipelineRenderingCreateInfo(
10465 vkStream, rootType,
10466 reinterpret_cast<const VkPipelineRenderingCreateInfo*>(structExtension), ptr);
10467 break;
10468 }
10469 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES: {
10470 reservedmarshal_VkPhysicalDeviceDynamicRenderingFeatures(
10471 vkStream, rootType,
10472 reinterpret_cast<const VkPhysicalDeviceDynamicRenderingFeatures*>(structExtension),
10473 ptr);
10474 break;
10475 }
10476 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO: {
10477 reservedmarshal_VkCommandBufferInheritanceRenderingInfo(
10478 vkStream, rootType,
10479 reinterpret_cast<const VkCommandBufferInheritanceRenderingInfo*>(structExtension),
10480 ptr);
10481 break;
10482 }
10483 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES: {
10484 reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductFeatures(
10485 vkStream, rootType,
10486 reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductFeatures*>(
10487 structExtension),
10488 ptr);
10489 break;
10490 }
10491 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES: {
10492 reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductProperties(
10493 vkStream, rootType,
10494 reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductProperties*>(
10495 structExtension),
10496 ptr);
10497 break;
10498 }
10499 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES: {
10500 reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentProperties(
10501 vkStream, rootType,
10502 reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentProperties*>(
10503 structExtension),
10504 ptr);
10505 break;
10506 }
10507 case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3: {
10508 reservedmarshal_VkFormatProperties3(
10509 vkStream, rootType, reinterpret_cast<const VkFormatProperties3*>(structExtension),
10510 ptr);
10511 break;
10512 }
10513 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES: {
10514 reservedmarshal_VkPhysicalDeviceMaintenance4Features(
10515 vkStream, rootType,
10516 reinterpret_cast<const VkPhysicalDeviceMaintenance4Features*>(structExtension),
10517 ptr);
10518 break;
10519 }
10520 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES: {
10521 reservedmarshal_VkPhysicalDeviceMaintenance4Properties(
10522 vkStream, rootType,
10523 reinterpret_cast<const VkPhysicalDeviceMaintenance4Properties*>(structExtension),
10524 ptr);
10525 break;
10526 }
10527 #endif
10528 #ifdef VK_VERSION_1_4
10529 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_FEATURES: {
10530 reservedmarshal_VkPhysicalDeviceVulkan14Features(
10531 vkStream, rootType,
10532 reinterpret_cast<const VkPhysicalDeviceVulkan14Features*>(structExtension), ptr);
10533 break;
10534 }
10535 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_PROPERTIES: {
10536 reservedmarshal_VkPhysicalDeviceVulkan14Properties(
10537 vkStream, rootType,
10538 reinterpret_cast<const VkPhysicalDeviceVulkan14Properties*>(structExtension), ptr);
10539 break;
10540 }
10541 case VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO: {
10542 reservedmarshal_VkDeviceQueueGlobalPriorityCreateInfo(
10543 vkStream, rootType,
10544 reinterpret_cast<const VkDeviceQueueGlobalPriorityCreateInfo*>(structExtension),
10545 ptr);
10546 break;
10547 }
10548 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES: {
10549 reservedmarshal_VkPhysicalDeviceGlobalPriorityQueryFeatures(
10550 vkStream, rootType,
10551 reinterpret_cast<const VkPhysicalDeviceGlobalPriorityQueryFeatures*>(
10552 structExtension),
10553 ptr);
10554 break;
10555 }
10556 case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES: {
10557 reservedmarshal_VkQueueFamilyGlobalPriorityProperties(
10558 vkStream, rootType,
10559 reinterpret_cast<const VkQueueFamilyGlobalPriorityProperties*>(structExtension),
10560 ptr);
10561 break;
10562 }
10563 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_ROTATE_FEATURES: {
10564 reservedmarshal_VkPhysicalDeviceShaderSubgroupRotateFeatures(
10565 vkStream, rootType,
10566 reinterpret_cast<const VkPhysicalDeviceShaderSubgroupRotateFeatures*>(
10567 structExtension),
10568 ptr);
10569 break;
10570 }
10571 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT_CONTROLS_2_FEATURES: {
10572 reservedmarshal_VkPhysicalDeviceShaderFloatControls2Features(
10573 vkStream, rootType,
10574 reinterpret_cast<const VkPhysicalDeviceShaderFloatControls2Features*>(
10575 structExtension),
10576 ptr);
10577 break;
10578 }
10579 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EXPECT_ASSUME_FEATURES: {
10580 reservedmarshal_VkPhysicalDeviceShaderExpectAssumeFeatures(
10581 vkStream, rootType,
10582 reinterpret_cast<const VkPhysicalDeviceShaderExpectAssumeFeatures*>(
10583 structExtension),
10584 ptr);
10585 break;
10586 }
10587 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES: {
10588 reservedmarshal_VkPhysicalDeviceLineRasterizationFeatures(
10589 vkStream, rootType,
10590 reinterpret_cast<const VkPhysicalDeviceLineRasterizationFeatures*>(structExtension),
10591 ptr);
10592 break;
10593 }
10594 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES: {
10595 reservedmarshal_VkPhysicalDeviceLineRasterizationProperties(
10596 vkStream, rootType,
10597 reinterpret_cast<const VkPhysicalDeviceLineRasterizationProperties*>(
10598 structExtension),
10599 ptr);
10600 break;
10601 }
10602 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO: {
10603 reservedmarshal_VkPipelineRasterizationLineStateCreateInfo(
10604 vkStream, rootType,
10605 reinterpret_cast<const VkPipelineRasterizationLineStateCreateInfo*>(
10606 structExtension),
10607 ptr);
10608 break;
10609 }
10610 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES: {
10611 reservedmarshal_VkPhysicalDeviceVertexAttributeDivisorProperties(
10612 vkStream, rootType,
10613 reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorProperties*>(
10614 structExtension),
10615 ptr);
10616 break;
10617 }
10618 case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO: {
10619 reservedmarshal_VkPipelineVertexInputDivisorStateCreateInfo(
10620 vkStream, rootType,
10621 reinterpret_cast<const VkPipelineVertexInputDivisorStateCreateInfo*>(
10622 structExtension),
10623 ptr);
10624 break;
10625 }
10626 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES: {
10627 reservedmarshal_VkPhysicalDeviceVertexAttributeDivisorFeatures(
10628 vkStream, rootType,
10629 reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorFeatures*>(
10630 structExtension),
10631 ptr);
10632 break;
10633 }
10634 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES: {
10635 reservedmarshal_VkPhysicalDeviceIndexTypeUint8Features(
10636 vkStream, rootType,
10637 reinterpret_cast<const VkPhysicalDeviceIndexTypeUint8Features*>(structExtension),
10638 ptr);
10639 break;
10640 }
10641 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES: {
10642 reservedmarshal_VkPhysicalDeviceMaintenance5Features(
10643 vkStream, rootType,
10644 reinterpret_cast<const VkPhysicalDeviceMaintenance5Features*>(structExtension),
10645 ptr);
10646 break;
10647 }
10648 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES: {
10649 reservedmarshal_VkPhysicalDeviceMaintenance5Properties(
10650 vkStream, rootType,
10651 reinterpret_cast<const VkPhysicalDeviceMaintenance5Properties*>(structExtension),
10652 ptr);
10653 break;
10654 }
10655 case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO: {
10656 reservedmarshal_VkPipelineCreateFlags2CreateInfo(
10657 vkStream, rootType,
10658 reinterpret_cast<const VkPipelineCreateFlags2CreateInfo*>(structExtension), ptr);
10659 break;
10660 }
10661 case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO: {
10662 reservedmarshal_VkBufferUsageFlags2CreateInfo(
10663 vkStream, rootType,
10664 reinterpret_cast<const VkBufferUsageFlags2CreateInfo*>(structExtension), ptr);
10665 break;
10666 }
10667 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES: {
10668 reservedmarshal_VkPhysicalDevicePushDescriptorProperties(
10669 vkStream, rootType,
10670 reinterpret_cast<const VkPhysicalDevicePushDescriptorProperties*>(structExtension),
10671 ptr);
10672 break;
10673 }
10674 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_LOCAL_READ_FEATURES: {
10675 reservedmarshal_VkPhysicalDeviceDynamicRenderingLocalReadFeatures(
10676 vkStream, rootType,
10677 reinterpret_cast<const VkPhysicalDeviceDynamicRenderingLocalReadFeatures*>(
10678 structExtension),
10679 ptr);
10680 break;
10681 }
10682 case VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_LOCATION_INFO: {
10683 reservedmarshal_VkRenderingAttachmentLocationInfo(
10684 vkStream, rootType,
10685 reinterpret_cast<const VkRenderingAttachmentLocationInfo*>(structExtension), ptr);
10686 break;
10687 }
10688 case VK_STRUCTURE_TYPE_RENDERING_INPUT_ATTACHMENT_INDEX_INFO: {
10689 reservedmarshal_VkRenderingInputAttachmentIndexInfo(
10690 vkStream, rootType,
10691 reinterpret_cast<const VkRenderingInputAttachmentIndexInfo*>(structExtension), ptr);
10692 break;
10693 }
10694 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_FEATURES: {
10695 reservedmarshal_VkPhysicalDeviceMaintenance6Features(
10696 vkStream, rootType,
10697 reinterpret_cast<const VkPhysicalDeviceMaintenance6Features*>(structExtension),
10698 ptr);
10699 break;
10700 }
10701 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_PROPERTIES: {
10702 reservedmarshal_VkPhysicalDeviceMaintenance6Properties(
10703 vkStream, rootType,
10704 reinterpret_cast<const VkPhysicalDeviceMaintenance6Properties*>(structExtension),
10705 ptr);
10706 break;
10707 }
10708 case VK_STRUCTURE_TYPE_BIND_MEMORY_STATUS: {
10709 reservedmarshal_VkBindMemoryStatus(
10710 vkStream, rootType, reinterpret_cast<const VkBindMemoryStatus*>(structExtension),
10711 ptr);
10712 break;
10713 }
10714 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES: {
10715 reservedmarshal_VkPhysicalDevicePipelineProtectedAccessFeatures(
10716 vkStream, rootType,
10717 reinterpret_cast<const VkPhysicalDevicePipelineProtectedAccessFeatures*>(
10718 structExtension),
10719 ptr);
10720 break;
10721 }
10722 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES: {
10723 reservedmarshal_VkPhysicalDevicePipelineRobustnessFeatures(
10724 vkStream, rootType,
10725 reinterpret_cast<const VkPhysicalDevicePipelineRobustnessFeatures*>(
10726 structExtension),
10727 ptr);
10728 break;
10729 }
10730 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES: {
10731 reservedmarshal_VkPhysicalDevicePipelineRobustnessProperties(
10732 vkStream, rootType,
10733 reinterpret_cast<const VkPhysicalDevicePipelineRobustnessProperties*>(
10734 structExtension),
10735 ptr);
10736 break;
10737 }
10738 case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO: {
10739 reservedmarshal_VkPipelineRobustnessCreateInfo(
10740 vkStream, rootType,
10741 reinterpret_cast<const VkPipelineRobustnessCreateInfo*>(structExtension), ptr);
10742 break;
10743 }
10744 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES: {
10745 reservedmarshal_VkPhysicalDeviceHostImageCopyFeatures(
10746 vkStream, rootType,
10747 reinterpret_cast<const VkPhysicalDeviceHostImageCopyFeatures*>(structExtension),
10748 ptr);
10749 break;
10750 }
10751 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES: {
10752 reservedmarshal_VkPhysicalDeviceHostImageCopyProperties(
10753 vkStream, rootType,
10754 reinterpret_cast<const VkPhysicalDeviceHostImageCopyProperties*>(structExtension),
10755 ptr);
10756 break;
10757 }
10758 case VK_STRUCTURE_TYPE_SUBRESOURCE_HOST_MEMCPY_SIZE: {
10759 reservedmarshal_VkSubresourceHostMemcpySize(
10760 vkStream, rootType,
10761 reinterpret_cast<const VkSubresourceHostMemcpySize*>(structExtension), ptr);
10762 break;
10763 }
10764 case VK_STRUCTURE_TYPE_HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY: {
10765 reservedmarshal_VkHostImageCopyDevicePerformanceQuery(
10766 vkStream, rootType,
10767 reinterpret_cast<const VkHostImageCopyDevicePerformanceQuery*>(structExtension),
10768 ptr);
10769 break;
10770 }
10771 #endif
10772 #ifdef VK_KHR_incremental_present
10773 case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR: {
10774 reservedmarshal_VkPresentRegionsKHR(
10775 vkStream, rootType, reinterpret_cast<const VkPresentRegionsKHR*>(structExtension),
10776 ptr);
10777 break;
10778 }
10779 #endif
10780 #ifdef VK_KHR_pipeline_executable_properties
10781 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR: {
10782 reservedmarshal_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(
10783 vkStream, rootType,
10784 reinterpret_cast<const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*>(
10785 structExtension),
10786 ptr);
10787 break;
10788 }
10789 #endif
10790 #ifdef VK_ANDROID_native_buffer
10791 case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID: {
10792 reservedmarshal_VkNativeBufferANDROID(
10793 vkStream, rootType, reinterpret_cast<const VkNativeBufferANDROID*>(structExtension),
10794 ptr);
10795 break;
10796 }
10797 #endif
10798 #ifdef VK_EXT_transform_feedback
10799 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT: {
10800 reservedmarshal_VkPhysicalDeviceTransformFeedbackFeaturesEXT(
10801 vkStream, rootType,
10802 reinterpret_cast<const VkPhysicalDeviceTransformFeedbackFeaturesEXT*>(
10803 structExtension),
10804 ptr);
10805 break;
10806 }
10807 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT: {
10808 reservedmarshal_VkPhysicalDeviceTransformFeedbackPropertiesEXT(
10809 vkStream, rootType,
10810 reinterpret_cast<const VkPhysicalDeviceTransformFeedbackPropertiesEXT*>(
10811 structExtension),
10812 ptr);
10813 break;
10814 }
10815 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT: {
10816 reservedmarshal_VkPipelineRasterizationStateStreamCreateInfoEXT(
10817 vkStream, rootType,
10818 reinterpret_cast<const VkPipelineRasterizationStateStreamCreateInfoEXT*>(
10819 structExtension),
10820 ptr);
10821 break;
10822 }
10823 #endif
10824 #ifdef VK_EXT_depth_clip_enable
10825 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT: {
10826 reservedmarshal_VkPhysicalDeviceDepthClipEnableFeaturesEXT(
10827 vkStream, rootType,
10828 reinterpret_cast<const VkPhysicalDeviceDepthClipEnableFeaturesEXT*>(
10829 structExtension),
10830 ptr);
10831 break;
10832 }
10833 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT: {
10834 reservedmarshal_VkPipelineRasterizationDepthClipStateCreateInfoEXT(
10835 vkStream, rootType,
10836 reinterpret_cast<const VkPipelineRasterizationDepthClipStateCreateInfoEXT*>(
10837 structExtension),
10838 ptr);
10839 break;
10840 }
10841 #endif
10842 #ifdef VK_EXT_image_drm_format_modifier
10843 case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT: {
10844 reservedmarshal_VkDrmFormatModifierPropertiesListEXT(
10845 vkStream, rootType,
10846 reinterpret_cast<const VkDrmFormatModifierPropertiesListEXT*>(structExtension),
10847 ptr);
10848 break;
10849 }
10850 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT: {
10851 reservedmarshal_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(
10852 vkStream, rootType,
10853 reinterpret_cast<const VkPhysicalDeviceImageDrmFormatModifierInfoEXT*>(
10854 structExtension),
10855 ptr);
10856 break;
10857 }
10858 case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT: {
10859 reservedmarshal_VkImageDrmFormatModifierListCreateInfoEXT(
10860 vkStream, rootType,
10861 reinterpret_cast<const VkImageDrmFormatModifierListCreateInfoEXT*>(structExtension),
10862 ptr);
10863 break;
10864 }
10865 case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT: {
10866 reservedmarshal_VkImageDrmFormatModifierExplicitCreateInfoEXT(
10867 vkStream, rootType,
10868 reinterpret_cast<const VkImageDrmFormatModifierExplicitCreateInfoEXT*>(
10869 structExtension),
10870 ptr);
10871 break;
10872 }
10873 case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT: {
10874 reservedmarshal_VkDrmFormatModifierPropertiesList2EXT(
10875 vkStream, rootType,
10876 reinterpret_cast<const VkDrmFormatModifierPropertiesList2EXT*>(structExtension),
10877 ptr);
10878 break;
10879 }
10880 #endif
10881 #ifdef VK_EXT_vertex_attribute_divisor
10882 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT: {
10883 reservedmarshal_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(
10884 vkStream, rootType,
10885 reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*>(
10886 structExtension),
10887 ptr);
10888 break;
10889 }
10890 #endif
10891 #ifdef VK_EXT_fragment_density_map
10892 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT: {
10893 switch (rootType) {
10894 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2: {
10895 reservedmarshal_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(
10896 vkStream, rootType,
10897 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapFeaturesEXT*>(
10898 structExtension),
10899 ptr);
10900 break;
10901 }
10902 case VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO: {
10903 reservedmarshal_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(
10904 vkStream, rootType,
10905 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapFeaturesEXT*>(
10906 structExtension),
10907 ptr);
10908 break;
10909 }
10910 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO: {
10911 reservedmarshal_VkImportColorBufferGOOGLE(
10912 vkStream, rootType,
10913 reinterpret_cast<const VkImportColorBufferGOOGLE*>(structExtension), ptr);
10914 break;
10915 }
10916 default: {
10917 reservedmarshal_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(
10918 vkStream, rootType,
10919 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapFeaturesEXT*>(
10920 structExtension),
10921 ptr);
10922 break;
10923 }
10924 }
10925 break;
10926 }
10927 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT: {
10928 switch (rootType) {
10929 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2: {
10930 reservedmarshal_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(
10931 vkStream, rootType,
10932 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapPropertiesEXT*>(
10933 structExtension),
10934 ptr);
10935 break;
10936 }
10937 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO: {
10938 reservedmarshal_VkCreateBlobGOOGLE(
10939 vkStream, rootType,
10940 reinterpret_cast<const VkCreateBlobGOOGLE*>(structExtension), ptr);
10941 break;
10942 }
10943 default: {
10944 reservedmarshal_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(
10945 vkStream, rootType,
10946 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapPropertiesEXT*>(
10947 structExtension),
10948 ptr);
10949 break;
10950 }
10951 }
10952 break;
10953 }
10954 case VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT: {
10955 switch (rootType) {
10956 case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO: {
10957 reservedmarshal_VkRenderPassFragmentDensityMapCreateInfoEXT(
10958 vkStream, rootType,
10959 reinterpret_cast<const VkRenderPassFragmentDensityMapCreateInfoEXT*>(
10960 structExtension),
10961 ptr);
10962 break;
10963 }
10964 case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2: {
10965 reservedmarshal_VkRenderPassFragmentDensityMapCreateInfoEXT(
10966 vkStream, rootType,
10967 reinterpret_cast<const VkRenderPassFragmentDensityMapCreateInfoEXT*>(
10968 structExtension),
10969 ptr);
10970 break;
10971 }
10972 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO: {
10973 reservedmarshal_VkImportBufferGOOGLE(
10974 vkStream, rootType,
10975 reinterpret_cast<const VkImportBufferGOOGLE*>(structExtension), ptr);
10976 break;
10977 }
10978 default: {
10979 reservedmarshal_VkRenderPassFragmentDensityMapCreateInfoEXT(
10980 vkStream, rootType,
10981 reinterpret_cast<const VkRenderPassFragmentDensityMapCreateInfoEXT*>(
10982 structExtension),
10983 ptr);
10984 break;
10985 }
10986 }
10987 break;
10988 }
10989 case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT: {
10990 reservedmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(
10991 vkStream, rootType,
10992 reinterpret_cast<const VkRenderingFragmentDensityMapAttachmentInfoEXT*>(
10993 structExtension),
10994 ptr);
10995 break;
10996 }
10997 #endif
10998 #ifdef VK_EXT_provoking_vertex
10999 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT: {
11000 reservedmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(
11001 vkStream, rootType,
11002 reinterpret_cast<const VkPhysicalDeviceProvokingVertexFeaturesEXT*>(
11003 structExtension),
11004 ptr);
11005 break;
11006 }
11007 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT: {
11008 reservedmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(
11009 vkStream, rootType,
11010 reinterpret_cast<const VkPhysicalDeviceProvokingVertexPropertiesEXT*>(
11011 structExtension),
11012 ptr);
11013 break;
11014 }
11015 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT: {
11016 reservedmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
11017 vkStream, rootType,
11018 reinterpret_cast<const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(
11019 structExtension),
11020 ptr);
11021 break;
11022 }
11023 #endif
11024 #ifdef VK_EXT_extended_dynamic_state
11025 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT: {
11026 reservedmarshal_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(
11027 vkStream, rootType,
11028 reinterpret_cast<const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT*>(
11029 structExtension),
11030 ptr);
11031 break;
11032 }
11033 #endif
11034 #ifdef VK_EXT_texel_buffer_alignment
11035 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT: {
11036 reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
11037 vkStream, rootType,
11038 reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*>(
11039 structExtension),
11040 ptr);
11041 break;
11042 }
11043 #endif
11044 #ifdef VK_EXT_device_memory_report
11045 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT: {
11046 reservedmarshal_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT(
11047 vkStream, rootType,
11048 reinterpret_cast<const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT*>(
11049 structExtension),
11050 ptr);
11051 break;
11052 }
11053 case VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT: {
11054 reservedmarshal_VkDeviceDeviceMemoryReportCreateInfoEXT(
11055 vkStream, rootType,
11056 reinterpret_cast<const VkDeviceDeviceMemoryReportCreateInfoEXT*>(structExtension),
11057 ptr);
11058 break;
11059 }
11060 #endif
11061 #ifdef VK_EXT_robustness2
11062 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT: {
11063 reservedmarshal_VkPhysicalDeviceRobustness2FeaturesEXT(
11064 vkStream, rootType,
11065 reinterpret_cast<const VkPhysicalDeviceRobustness2FeaturesEXT*>(structExtension),
11066 ptr);
11067 break;
11068 }
11069 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT: {
11070 reservedmarshal_VkPhysicalDeviceRobustness2PropertiesEXT(
11071 vkStream, rootType,
11072 reinterpret_cast<const VkPhysicalDeviceRobustness2PropertiesEXT*>(structExtension),
11073 ptr);
11074 break;
11075 }
11076 #endif
11077 #ifdef VK_EXT_custom_border_color
11078 case VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT: {
11079 reservedmarshal_VkSamplerCustomBorderColorCreateInfoEXT(
11080 vkStream, rootType,
11081 reinterpret_cast<const VkSamplerCustomBorderColorCreateInfoEXT*>(structExtension),
11082 ptr);
11083 break;
11084 }
11085 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT: {
11086 reservedmarshal_VkPhysicalDeviceCustomBorderColorPropertiesEXT(
11087 vkStream, rootType,
11088 reinterpret_cast<const VkPhysicalDeviceCustomBorderColorPropertiesEXT*>(
11089 structExtension),
11090 ptr);
11091 break;
11092 }
11093 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT: {
11094 reservedmarshal_VkPhysicalDeviceCustomBorderColorFeaturesEXT(
11095 vkStream, rootType,
11096 reinterpret_cast<const VkPhysicalDeviceCustomBorderColorFeaturesEXT*>(
11097 structExtension),
11098 ptr);
11099 break;
11100 }
11101 #endif
11102 #ifdef VK_EXT_graphics_pipeline_library
11103 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT: {
11104 reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(
11105 vkStream, rootType,
11106 reinterpret_cast<const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT*>(
11107 structExtension),
11108 ptr);
11109 break;
11110 }
11111 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT: {
11112 reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(
11113 vkStream, rootType,
11114 reinterpret_cast<const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*>(
11115 structExtension),
11116 ptr);
11117 break;
11118 }
11119 case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT: {
11120 reservedmarshal_VkGraphicsPipelineLibraryCreateInfoEXT(
11121 vkStream, rootType,
11122 reinterpret_cast<const VkGraphicsPipelineLibraryCreateInfoEXT*>(structExtension),
11123 ptr);
11124 break;
11125 }
11126 #endif
11127 #ifdef VK_EXT_ycbcr_2plane_444_formats
11128 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT: {
11129 reservedmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
11130 vkStream, rootType,
11131 reinterpret_cast<const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(
11132 structExtension),
11133 ptr);
11134 break;
11135 }
11136 #endif
11137 #ifdef VK_EXT_image_compression_control
11138 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT: {
11139 reservedmarshal_VkPhysicalDeviceImageCompressionControlFeaturesEXT(
11140 vkStream, rootType,
11141 reinterpret_cast<const VkPhysicalDeviceImageCompressionControlFeaturesEXT*>(
11142 structExtension),
11143 ptr);
11144 break;
11145 }
11146 case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT: {
11147 reservedmarshal_VkImageCompressionControlEXT(
11148 vkStream, rootType,
11149 reinterpret_cast<const VkImageCompressionControlEXT*>(structExtension), ptr);
11150 break;
11151 }
11152 case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT: {
11153 reservedmarshal_VkImageCompressionPropertiesEXT(
11154 vkStream, rootType,
11155 reinterpret_cast<const VkImageCompressionPropertiesEXT*>(structExtension), ptr);
11156 break;
11157 }
11158 #endif
11159 #ifdef VK_EXT_4444_formats
11160 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT: {
11161 reservedmarshal_VkPhysicalDevice4444FormatsFeaturesEXT(
11162 vkStream, rootType,
11163 reinterpret_cast<const VkPhysicalDevice4444FormatsFeaturesEXT*>(structExtension),
11164 ptr);
11165 break;
11166 }
11167 #endif
11168 #ifdef VK_EXT_primitive_topology_list_restart
11169 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT: {
11170 reservedmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
11171 vkStream, rootType,
11172 reinterpret_cast<const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(
11173 structExtension),
11174 ptr);
11175 break;
11176 }
11177 #endif
11178 #ifdef VK_EXT_extended_dynamic_state2
11179 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT: {
11180 reservedmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
11181 vkStream, rootType,
11182 reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(
11183 structExtension),
11184 ptr);
11185 break;
11186 }
11187 #endif
11188 #ifdef VK_EXT_color_write_enable
11189 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT: {
11190 reservedmarshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
11191 vkStream, rootType,
11192 reinterpret_cast<const VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(
11193 structExtension),
11194 ptr);
11195 break;
11196 }
11197 case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT: {
11198 reservedmarshal_VkPipelineColorWriteCreateInfoEXT(
11199 vkStream, rootType,
11200 reinterpret_cast<const VkPipelineColorWriteCreateInfoEXT*>(structExtension), ptr);
11201 break;
11202 }
11203 #endif
11204 #ifdef VK_GOOGLE_gfxstream
11205 case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE: {
11206 reservedmarshal_VkImportColorBufferGOOGLE(
11207 vkStream, rootType,
11208 reinterpret_cast<const VkImportColorBufferGOOGLE*>(structExtension), ptr);
11209 break;
11210 }
11211 case VK_STRUCTURE_TYPE_IMPORT_BUFFER_GOOGLE: {
11212 reservedmarshal_VkImportBufferGOOGLE(
11213 vkStream, rootType, reinterpret_cast<const VkImportBufferGOOGLE*>(structExtension),
11214 ptr);
11215 break;
11216 }
11217 case VK_STRUCTURE_TYPE_CREATE_BLOB_GOOGLE: {
11218 reservedmarshal_VkCreateBlobGOOGLE(
11219 vkStream, rootType, reinterpret_cast<const VkCreateBlobGOOGLE*>(structExtension),
11220 ptr);
11221 break;
11222 }
11223 #endif
11224 #ifdef VK_EXT_image_compression_control_swapchain
11225 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT: {
11226 reservedmarshal_VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(
11227 vkStream, rootType,
11228 reinterpret_cast<
11229 const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*>(
11230 structExtension),
11231 ptr);
11232 break;
11233 }
11234 #endif
11235 default: {
11236 // fatal; the switch is only taken if the extension struct is known
11237 abort();
11238 }
11239 }
11240 }
11241
11242 } // namespace vk
11243 } // namespace gfxstream
11244