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_KHR_dynamic_rendering
reservedmarshal_VkRenderingFragmentShadingRateAttachmentInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderingFragmentShadingRateAttachmentInfoKHR * forMarshaling,uint8_t ** ptr)7294 void reservedmarshal_VkRenderingFragmentShadingRateAttachmentInfoKHR(
7295 VulkanStreamGuest* vkStream, VkStructureType rootType,
7296 const VkRenderingFragmentShadingRateAttachmentInfoKHR* 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 uint64_t cgen_var_0;
7306 *&cgen_var_0 = get_host_u64_VkImageView((*&forMarshaling->imageView));
7307 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
7308 *ptr += 1 * 8;
7309 memcpy(*ptr, (VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout));
7310 *ptr += sizeof(VkImageLayout);
7311 reservedmarshal_VkExtent2D(vkStream, rootType,
7312 (VkExtent2D*)(&forMarshaling->shadingRateAttachmentTexelSize), ptr);
7313 }
7314
reservedmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderingFragmentDensityMapAttachmentInfoEXT * forMarshaling,uint8_t ** ptr)7315 void reservedmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(
7316 VulkanStreamGuest* vkStream, VkStructureType rootType,
7317 const VkRenderingFragmentDensityMapAttachmentInfoEXT* forMarshaling, uint8_t** ptr) {
7318 (void)vkStream;
7319 (void)rootType;
7320 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7321 *ptr += sizeof(VkStructureType);
7322 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7323 rootType = forMarshaling->sType;
7324 }
7325 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7326 uint64_t cgen_var_0;
7327 *&cgen_var_0 = get_host_u64_VkImageView((*&forMarshaling->imageView));
7328 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
7329 *ptr += 1 * 8;
7330 memcpy(*ptr, (VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout));
7331 *ptr += sizeof(VkImageLayout);
7332 }
7333
reservedmarshal_VkAttachmentSampleCountInfoAMD(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkAttachmentSampleCountInfoAMD * forMarshaling,uint8_t ** ptr)7334 void reservedmarshal_VkAttachmentSampleCountInfoAMD(
7335 VulkanStreamGuest* vkStream, VkStructureType rootType,
7336 const VkAttachmentSampleCountInfoAMD* forMarshaling, uint8_t** ptr) {
7337 (void)vkStream;
7338 (void)rootType;
7339 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7340 *ptr += sizeof(VkStructureType);
7341 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7342 rootType = forMarshaling->sType;
7343 }
7344 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7345 memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
7346 *ptr += sizeof(uint32_t);
7347 // WARNING PTR CHECK
7348 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pColorAttachmentSamples;
7349 memcpy((*ptr), &cgen_var_0, 8);
7350 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7351 *ptr += 8;
7352 if (forMarshaling->pColorAttachmentSamples) {
7353 memcpy(*ptr, (const VkSampleCountFlagBits*)forMarshaling->pColorAttachmentSamples,
7354 forMarshaling->colorAttachmentCount * sizeof(const VkSampleCountFlagBits));
7355 *ptr += forMarshaling->colorAttachmentCount * sizeof(const VkSampleCountFlagBits);
7356 }
7357 memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->depthStencilAttachmentSamples,
7358 sizeof(VkSampleCountFlagBits));
7359 *ptr += sizeof(VkSampleCountFlagBits);
7360 }
7361
reservedmarshal_VkMultiviewPerViewAttributesInfoNVX(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMultiviewPerViewAttributesInfoNVX * forMarshaling,uint8_t ** ptr)7362 void reservedmarshal_VkMultiviewPerViewAttributesInfoNVX(
7363 VulkanStreamGuest* vkStream, VkStructureType rootType,
7364 const VkMultiviewPerViewAttributesInfoNVX* forMarshaling, uint8_t** ptr) {
7365 (void)vkStream;
7366 (void)rootType;
7367 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7368 *ptr += sizeof(VkStructureType);
7369 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7370 rootType = forMarshaling->sType;
7371 }
7372 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7373 memcpy(*ptr, (VkBool32*)&forMarshaling->perViewAttributes, sizeof(VkBool32));
7374 *ptr += sizeof(VkBool32);
7375 memcpy(*ptr, (VkBool32*)&forMarshaling->perViewAttributesPositionXOnly, sizeof(VkBool32));
7376 *ptr += sizeof(VkBool32);
7377 }
7378
7379 #endif
7380 #ifdef VK_KHR_external_semaphore_fd
reservedmarshal_VkImportSemaphoreFdInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImportSemaphoreFdInfoKHR * forMarshaling,uint8_t ** ptr)7381 void reservedmarshal_VkImportSemaphoreFdInfoKHR(VulkanStreamGuest* vkStream,
7382 VkStructureType rootType,
7383 const VkImportSemaphoreFdInfoKHR* forMarshaling,
7384 uint8_t** ptr) {
7385 (void)vkStream;
7386 (void)rootType;
7387 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7388 *ptr += sizeof(VkStructureType);
7389 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7390 rootType = forMarshaling->sType;
7391 }
7392 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7393 uint64_t cgen_var_0;
7394 *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore));
7395 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
7396 *ptr += 1 * 8;
7397 memcpy(*ptr, (VkSemaphoreImportFlags*)&forMarshaling->flags, sizeof(VkSemaphoreImportFlags));
7398 *ptr += sizeof(VkSemaphoreImportFlags);
7399 memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlagBits*)&forMarshaling->handleType,
7400 sizeof(VkExternalSemaphoreHandleTypeFlagBits));
7401 *ptr += sizeof(VkExternalSemaphoreHandleTypeFlagBits);
7402 memcpy(*ptr, (int*)&forMarshaling->fd, sizeof(int));
7403 *ptr += sizeof(int);
7404 }
7405
reservedmarshal_VkSemaphoreGetFdInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSemaphoreGetFdInfoKHR * forMarshaling,uint8_t ** ptr)7406 void reservedmarshal_VkSemaphoreGetFdInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
7407 const VkSemaphoreGetFdInfoKHR* forMarshaling,
7408 uint8_t** ptr) {
7409 (void)vkStream;
7410 (void)rootType;
7411 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7412 *ptr += sizeof(VkStructureType);
7413 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7414 rootType = forMarshaling->sType;
7415 }
7416 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7417 uint64_t cgen_var_0;
7418 *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore));
7419 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
7420 *ptr += 1 * 8;
7421 memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlagBits*)&forMarshaling->handleType,
7422 sizeof(VkExternalSemaphoreHandleTypeFlagBits));
7423 *ptr += sizeof(VkExternalSemaphoreHandleTypeFlagBits);
7424 }
7425
7426 #endif
7427 #ifdef VK_KHR_incremental_present
reservedmarshal_VkRectLayerKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRectLayerKHR * forMarshaling,uint8_t ** ptr)7428 void reservedmarshal_VkRectLayerKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
7429 const VkRectLayerKHR* forMarshaling, uint8_t** ptr) {
7430 (void)vkStream;
7431 (void)rootType;
7432 reservedmarshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forMarshaling->offset), ptr);
7433 reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->extent), ptr);
7434 memcpy(*ptr, (uint32_t*)&forMarshaling->layer, sizeof(uint32_t));
7435 *ptr += sizeof(uint32_t);
7436 }
7437
reservedmarshal_VkPresentRegionKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPresentRegionKHR * forMarshaling,uint8_t ** ptr)7438 void reservedmarshal_VkPresentRegionKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
7439 const VkPresentRegionKHR* forMarshaling, uint8_t** ptr) {
7440 (void)vkStream;
7441 (void)rootType;
7442 memcpy(*ptr, (uint32_t*)&forMarshaling->rectangleCount, sizeof(uint32_t));
7443 *ptr += sizeof(uint32_t);
7444 // WARNING PTR CHECK
7445 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pRectangles;
7446 memcpy((*ptr), &cgen_var_0, 8);
7447 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7448 *ptr += 8;
7449 if (forMarshaling->pRectangles) {
7450 for (uint32_t i = 0; i < (uint32_t)forMarshaling->rectangleCount; ++i) {
7451 reservedmarshal_VkRectLayerKHR(
7452 vkStream, rootType, (const VkRectLayerKHR*)(forMarshaling->pRectangles + i), ptr);
7453 }
7454 }
7455 }
7456
reservedmarshal_VkPresentRegionsKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPresentRegionsKHR * forMarshaling,uint8_t ** ptr)7457 void reservedmarshal_VkPresentRegionsKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
7458 const VkPresentRegionsKHR* forMarshaling, uint8_t** ptr) {
7459 (void)vkStream;
7460 (void)rootType;
7461 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7462 *ptr += sizeof(VkStructureType);
7463 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7464 rootType = forMarshaling->sType;
7465 }
7466 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7467 memcpy(*ptr, (uint32_t*)&forMarshaling->swapchainCount, sizeof(uint32_t));
7468 *ptr += sizeof(uint32_t);
7469 // WARNING PTR CHECK
7470 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pRegions;
7471 memcpy((*ptr), &cgen_var_0, 8);
7472 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7473 *ptr += 8;
7474 if (forMarshaling->pRegions) {
7475 for (uint32_t i = 0; i < (uint32_t)forMarshaling->swapchainCount; ++i) {
7476 reservedmarshal_VkPresentRegionKHR(
7477 vkStream, rootType, (const VkPresentRegionKHR*)(forMarshaling->pRegions + i), ptr);
7478 }
7479 }
7480 }
7481
7482 #endif
7483 #ifdef VK_KHR_external_fence_fd
reservedmarshal_VkImportFenceFdInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImportFenceFdInfoKHR * forMarshaling,uint8_t ** ptr)7484 void reservedmarshal_VkImportFenceFdInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
7485 const VkImportFenceFdInfoKHR* forMarshaling,
7486 uint8_t** ptr) {
7487 (void)vkStream;
7488 (void)rootType;
7489 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7490 *ptr += sizeof(VkStructureType);
7491 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7492 rootType = forMarshaling->sType;
7493 }
7494 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7495 uint64_t cgen_var_0;
7496 *&cgen_var_0 = get_host_u64_VkFence((*&forMarshaling->fence));
7497 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
7498 *ptr += 1 * 8;
7499 memcpy(*ptr, (VkFenceImportFlags*)&forMarshaling->flags, sizeof(VkFenceImportFlags));
7500 *ptr += sizeof(VkFenceImportFlags);
7501 memcpy(*ptr, (VkExternalFenceHandleTypeFlagBits*)&forMarshaling->handleType,
7502 sizeof(VkExternalFenceHandleTypeFlagBits));
7503 *ptr += sizeof(VkExternalFenceHandleTypeFlagBits);
7504 memcpy(*ptr, (int*)&forMarshaling->fd, sizeof(int));
7505 *ptr += sizeof(int);
7506 }
7507
reservedmarshal_VkFenceGetFdInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkFenceGetFdInfoKHR * forMarshaling,uint8_t ** ptr)7508 void reservedmarshal_VkFenceGetFdInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
7509 const VkFenceGetFdInfoKHR* forMarshaling, uint8_t** ptr) {
7510 (void)vkStream;
7511 (void)rootType;
7512 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7513 *ptr += sizeof(VkStructureType);
7514 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7515 rootType = forMarshaling->sType;
7516 }
7517 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7518 uint64_t cgen_var_0;
7519 *&cgen_var_0 = get_host_u64_VkFence((*&forMarshaling->fence));
7520 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
7521 *ptr += 1 * 8;
7522 memcpy(*ptr, (VkExternalFenceHandleTypeFlagBits*)&forMarshaling->handleType,
7523 sizeof(VkExternalFenceHandleTypeFlagBits));
7524 *ptr += sizeof(VkExternalFenceHandleTypeFlagBits);
7525 }
7526
7527 #endif
7528 #ifdef VK_KHR_pipeline_executable_properties
reservedmarshal_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR * forMarshaling,uint8_t ** ptr)7529 void reservedmarshal_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(
7530 VulkanStreamGuest* vkStream, VkStructureType rootType,
7531 const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* forMarshaling, uint8_t** ptr) {
7532 (void)vkStream;
7533 (void)rootType;
7534 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7535 *ptr += sizeof(VkStructureType);
7536 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7537 rootType = forMarshaling->sType;
7538 }
7539 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7540 memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineExecutableInfo, sizeof(VkBool32));
7541 *ptr += sizeof(VkBool32);
7542 }
7543
reservedmarshal_VkPipelineInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineInfoKHR * forMarshaling,uint8_t ** ptr)7544 void reservedmarshal_VkPipelineInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
7545 const VkPipelineInfoKHR* forMarshaling, uint8_t** ptr) {
7546 (void)vkStream;
7547 (void)rootType;
7548 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7549 *ptr += sizeof(VkStructureType);
7550 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7551 rootType = forMarshaling->sType;
7552 }
7553 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7554 uint64_t cgen_var_0;
7555 *&cgen_var_0 = get_host_u64_VkPipeline((*&forMarshaling->pipeline));
7556 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
7557 *ptr += 1 * 8;
7558 }
7559
reservedmarshal_VkPipelineExecutablePropertiesKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineExecutablePropertiesKHR * forMarshaling,uint8_t ** ptr)7560 void reservedmarshal_VkPipelineExecutablePropertiesKHR(
7561 VulkanStreamGuest* vkStream, VkStructureType rootType,
7562 const VkPipelineExecutablePropertiesKHR* forMarshaling, uint8_t** ptr) {
7563 (void)vkStream;
7564 (void)rootType;
7565 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7566 *ptr += sizeof(VkStructureType);
7567 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7568 rootType = forMarshaling->sType;
7569 }
7570 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7571 memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->stages, sizeof(VkShaderStageFlags));
7572 *ptr += sizeof(VkShaderStageFlags);
7573 memcpy(*ptr, (char*)forMarshaling->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
7574 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
7575 memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
7576 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
7577 memcpy(*ptr, (uint32_t*)&forMarshaling->subgroupSize, sizeof(uint32_t));
7578 *ptr += sizeof(uint32_t);
7579 }
7580
reservedmarshal_VkPipelineExecutableInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineExecutableInfoKHR * forMarshaling,uint8_t ** ptr)7581 void reservedmarshal_VkPipelineExecutableInfoKHR(VulkanStreamGuest* vkStream,
7582 VkStructureType rootType,
7583 const VkPipelineExecutableInfoKHR* forMarshaling,
7584 uint8_t** ptr) {
7585 (void)vkStream;
7586 (void)rootType;
7587 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7588 *ptr += sizeof(VkStructureType);
7589 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7590 rootType = forMarshaling->sType;
7591 }
7592 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7593 uint64_t cgen_var_0;
7594 *&cgen_var_0 = get_host_u64_VkPipeline((*&forMarshaling->pipeline));
7595 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
7596 *ptr += 1 * 8;
7597 memcpy(*ptr, (uint32_t*)&forMarshaling->executableIndex, sizeof(uint32_t));
7598 *ptr += sizeof(uint32_t);
7599 }
7600
reservedmarshal_VkPipelineExecutableStatisticValueKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineExecutableStatisticValueKHR * forMarshaling,uint8_t ** ptr)7601 void reservedmarshal_VkPipelineExecutableStatisticValueKHR(
7602 VulkanStreamGuest* vkStream, VkStructureType rootType,
7603 const VkPipelineExecutableStatisticValueKHR* forMarshaling, uint8_t** ptr) {
7604 (void)vkStream;
7605 (void)rootType;
7606 memcpy(*ptr, (VkBool32*)&forMarshaling->b32, sizeof(VkBool32));
7607 *ptr += sizeof(VkBool32);
7608 }
7609
reservedmarshal_VkPipelineExecutableStatisticKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineExecutableStatisticKHR * forMarshaling,uint8_t ** ptr)7610 void reservedmarshal_VkPipelineExecutableStatisticKHR(
7611 VulkanStreamGuest* vkStream, VkStructureType rootType,
7612 const VkPipelineExecutableStatisticKHR* forMarshaling, uint8_t** ptr) {
7613 (void)vkStream;
7614 (void)rootType;
7615 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7616 *ptr += sizeof(VkStructureType);
7617 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7618 rootType = forMarshaling->sType;
7619 }
7620 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7621 memcpy(*ptr, (char*)forMarshaling->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
7622 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
7623 memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
7624 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
7625 memcpy(*ptr, (VkPipelineExecutableStatisticFormatKHR*)&forMarshaling->format,
7626 sizeof(VkPipelineExecutableStatisticFormatKHR));
7627 *ptr += sizeof(VkPipelineExecutableStatisticFormatKHR);
7628 reservedmarshal_VkPipelineExecutableStatisticValueKHR(
7629 vkStream, rootType, (VkPipelineExecutableStatisticValueKHR*)(&forMarshaling->value), ptr);
7630 }
7631
reservedmarshal_VkPipelineExecutableInternalRepresentationKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineExecutableInternalRepresentationKHR * forMarshaling,uint8_t ** ptr)7632 void reservedmarshal_VkPipelineExecutableInternalRepresentationKHR(
7633 VulkanStreamGuest* vkStream, VkStructureType rootType,
7634 const VkPipelineExecutableInternalRepresentationKHR* forMarshaling, uint8_t** ptr) {
7635 (void)vkStream;
7636 (void)rootType;
7637 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7638 *ptr += sizeof(VkStructureType);
7639 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7640 rootType = forMarshaling->sType;
7641 }
7642 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7643 memcpy(*ptr, (char*)forMarshaling->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
7644 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
7645 memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char));
7646 *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char);
7647 memcpy(*ptr, (VkBool32*)&forMarshaling->isText, sizeof(VkBool32));
7648 *ptr += sizeof(VkBool32);
7649 uint64_t cgen_var_0 = (uint64_t)forMarshaling->dataSize;
7650 memcpy((*ptr), &cgen_var_0, 8);
7651 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7652 *ptr += 8;
7653 // WARNING PTR CHECK
7654 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pData;
7655 memcpy((*ptr), &cgen_var_1, 8);
7656 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7657 *ptr += 8;
7658 if (forMarshaling->pData) {
7659 memcpy(*ptr, (void*)forMarshaling->pData, forMarshaling->dataSize * sizeof(uint8_t));
7660 *ptr += forMarshaling->dataSize * sizeof(uint8_t);
7661 }
7662 }
7663
7664 #endif
7665 #ifdef VK_KHR_synchronization2
reservedmarshal_VkQueueFamilyCheckpointProperties2NV(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkQueueFamilyCheckpointProperties2NV * forMarshaling,uint8_t ** ptr)7666 void reservedmarshal_VkQueueFamilyCheckpointProperties2NV(
7667 VulkanStreamGuest* vkStream, VkStructureType rootType,
7668 const VkQueueFamilyCheckpointProperties2NV* forMarshaling, uint8_t** ptr) {
7669 (void)vkStream;
7670 (void)rootType;
7671 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7672 *ptr += sizeof(VkStructureType);
7673 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7674 rootType = forMarshaling->sType;
7675 }
7676 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7677 memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->checkpointExecutionStageMask,
7678 sizeof(VkPipelineStageFlags2));
7679 *ptr += sizeof(VkPipelineStageFlags2);
7680 }
7681
reservedmarshal_VkCheckpointData2NV(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCheckpointData2NV * forMarshaling,uint8_t ** ptr)7682 void reservedmarshal_VkCheckpointData2NV(VulkanStreamGuest* vkStream, VkStructureType rootType,
7683 const VkCheckpointData2NV* forMarshaling, uint8_t** ptr) {
7684 (void)vkStream;
7685 (void)rootType;
7686 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7687 *ptr += sizeof(VkStructureType);
7688 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7689 rootType = forMarshaling->sType;
7690 }
7691 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7692 memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->stage, sizeof(VkPipelineStageFlags2));
7693 *ptr += sizeof(VkPipelineStageFlags2);
7694 // WARNING PTR CHECK
7695 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pCheckpointMarker;
7696 memcpy((*ptr), &cgen_var_0, 8);
7697 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7698 *ptr += 8;
7699 if (forMarshaling->pCheckpointMarker) {
7700 memcpy(*ptr, (void*)forMarshaling->pCheckpointMarker, sizeof(uint8_t));
7701 *ptr += sizeof(uint8_t);
7702 }
7703 }
7704
7705 #endif
7706 #ifdef VK_KHR_maintenance5
reservedmarshal_VkPhysicalDeviceMaintenance5FeaturesKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMaintenance5FeaturesKHR * forMarshaling,uint8_t ** ptr)7707 void reservedmarshal_VkPhysicalDeviceMaintenance5FeaturesKHR(
7708 VulkanStreamGuest* vkStream, VkStructureType rootType,
7709 const VkPhysicalDeviceMaintenance5FeaturesKHR* forMarshaling, uint8_t** ptr) {
7710 (void)vkStream;
7711 (void)rootType;
7712 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7713 *ptr += sizeof(VkStructureType);
7714 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7715 rootType = forMarshaling->sType;
7716 }
7717 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7718 memcpy(*ptr, (VkBool32*)&forMarshaling->maintenance5, sizeof(VkBool32));
7719 *ptr += sizeof(VkBool32);
7720 }
7721
reservedmarshal_VkPhysicalDeviceMaintenance5PropertiesKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceMaintenance5PropertiesKHR * forMarshaling,uint8_t ** ptr)7722 void reservedmarshal_VkPhysicalDeviceMaintenance5PropertiesKHR(
7723 VulkanStreamGuest* vkStream, VkStructureType rootType,
7724 const VkPhysicalDeviceMaintenance5PropertiesKHR* forMarshaling, uint8_t** ptr) {
7725 (void)vkStream;
7726 (void)rootType;
7727 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7728 *ptr += sizeof(VkStructureType);
7729 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7730 rootType = forMarshaling->sType;
7731 }
7732 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7733 memcpy(*ptr, (VkBool32*)&forMarshaling->earlyFragmentMultisampleCoverageAfterSampleCounting,
7734 sizeof(VkBool32));
7735 *ptr += sizeof(VkBool32);
7736 memcpy(*ptr, (VkBool32*)&forMarshaling->earlyFragmentSampleMaskTestBeforeSampleCounting,
7737 sizeof(VkBool32));
7738 *ptr += sizeof(VkBool32);
7739 memcpy(*ptr, (VkBool32*)&forMarshaling->depthStencilSwizzleOneSupport, sizeof(VkBool32));
7740 *ptr += sizeof(VkBool32);
7741 memcpy(*ptr, (VkBool32*)&forMarshaling->polygonModePointSize, sizeof(VkBool32));
7742 *ptr += sizeof(VkBool32);
7743 memcpy(*ptr, (VkBool32*)&forMarshaling->nonStrictSinglePixelWideLinesUseParallelogram,
7744 sizeof(VkBool32));
7745 *ptr += sizeof(VkBool32);
7746 memcpy(*ptr, (VkBool32*)&forMarshaling->nonStrictWideLinesUseParallelogram, sizeof(VkBool32));
7747 *ptr += sizeof(VkBool32);
7748 }
7749
reservedmarshal_VkRenderingAreaInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderingAreaInfoKHR * forMarshaling,uint8_t ** ptr)7750 void reservedmarshal_VkRenderingAreaInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
7751 const VkRenderingAreaInfoKHR* forMarshaling,
7752 uint8_t** ptr) {
7753 (void)vkStream;
7754 (void)rootType;
7755 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7756 *ptr += sizeof(VkStructureType);
7757 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7758 rootType = forMarshaling->sType;
7759 }
7760 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7761 memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t));
7762 *ptr += sizeof(uint32_t);
7763 memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
7764 *ptr += sizeof(uint32_t);
7765 // WARNING PTR CHECK
7766 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pColorAttachmentFormats;
7767 memcpy((*ptr), &cgen_var_0, 8);
7768 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7769 *ptr += 8;
7770 if (forMarshaling->pColorAttachmentFormats) {
7771 memcpy(*ptr, (const VkFormat*)forMarshaling->pColorAttachmentFormats,
7772 forMarshaling->colorAttachmentCount * sizeof(const VkFormat));
7773 *ptr += forMarshaling->colorAttachmentCount * sizeof(const VkFormat);
7774 }
7775 memcpy(*ptr, (VkFormat*)&forMarshaling->depthAttachmentFormat, sizeof(VkFormat));
7776 *ptr += sizeof(VkFormat);
7777 memcpy(*ptr, (VkFormat*)&forMarshaling->stencilAttachmentFormat, sizeof(VkFormat));
7778 *ptr += sizeof(VkFormat);
7779 }
7780
reservedmarshal_VkImageSubresource2KHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageSubresource2KHR * forMarshaling,uint8_t ** ptr)7781 void reservedmarshal_VkImageSubresource2KHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
7782 const VkImageSubresource2KHR* forMarshaling,
7783 uint8_t** ptr) {
7784 (void)vkStream;
7785 (void)rootType;
7786 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7787 *ptr += sizeof(VkStructureType);
7788 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7789 rootType = forMarshaling->sType;
7790 }
7791 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7792 reservedmarshal_VkImageSubresource(
7793 vkStream, rootType, (VkImageSubresource*)(&forMarshaling->imageSubresource), ptr);
7794 }
7795
reservedmarshal_VkDeviceImageSubresourceInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceImageSubresourceInfoKHR * forMarshaling,uint8_t ** ptr)7796 void reservedmarshal_VkDeviceImageSubresourceInfoKHR(
7797 VulkanStreamGuest* vkStream, VkStructureType rootType,
7798 const VkDeviceImageSubresourceInfoKHR* 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_VkImageCreateInfo(vkStream, rootType,
7808 (const VkImageCreateInfo*)(forMarshaling->pCreateInfo), ptr);
7809 reservedmarshal_VkImageSubresource2KHR(
7810 vkStream, rootType, (const VkImageSubresource2KHR*)(forMarshaling->pSubresource), ptr);
7811 }
7812
reservedmarshal_VkSubresourceLayout2KHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubresourceLayout2KHR * forMarshaling,uint8_t ** ptr)7813 void reservedmarshal_VkSubresourceLayout2KHR(VulkanStreamGuest* vkStream, VkStructureType rootType,
7814 const VkSubresourceLayout2KHR* forMarshaling,
7815 uint8_t** ptr) {
7816 (void)vkStream;
7817 (void)rootType;
7818 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7819 *ptr += sizeof(VkStructureType);
7820 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7821 rootType = forMarshaling->sType;
7822 }
7823 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7824 reservedmarshal_VkSubresourceLayout(
7825 vkStream, rootType, (VkSubresourceLayout*)(&forMarshaling->subresourceLayout), ptr);
7826 }
7827
reservedmarshal_VkPipelineCreateFlags2CreateInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineCreateFlags2CreateInfoKHR * forMarshaling,uint8_t ** ptr)7828 void reservedmarshal_VkPipelineCreateFlags2CreateInfoKHR(
7829 VulkanStreamGuest* vkStream, VkStructureType rootType,
7830 const VkPipelineCreateFlags2CreateInfoKHR* forMarshaling, uint8_t** ptr) {
7831 (void)vkStream;
7832 (void)rootType;
7833 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7834 *ptr += sizeof(VkStructureType);
7835 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7836 rootType = forMarshaling->sType;
7837 }
7838 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7839 memcpy(*ptr, (VkPipelineCreateFlags2KHR*)&forMarshaling->flags,
7840 sizeof(VkPipelineCreateFlags2KHR));
7841 *ptr += sizeof(VkPipelineCreateFlags2KHR);
7842 }
7843
reservedmarshal_VkBufferUsageFlags2CreateInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkBufferUsageFlags2CreateInfoKHR * forMarshaling,uint8_t ** ptr)7844 void reservedmarshal_VkBufferUsageFlags2CreateInfoKHR(
7845 VulkanStreamGuest* vkStream, VkStructureType rootType,
7846 const VkBufferUsageFlags2CreateInfoKHR* 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, (VkBufferUsageFlags2KHR*)&forMarshaling->usage, sizeof(VkBufferUsageFlags2KHR));
7856 *ptr += sizeof(VkBufferUsageFlags2KHR);
7857 }
7858
7859 #endif
7860 #ifdef VK_KHR_line_rasterization
reservedmarshal_VkPhysicalDeviceLineRasterizationFeaturesKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceLineRasterizationFeaturesKHR * forMarshaling,uint8_t ** ptr)7861 void reservedmarshal_VkPhysicalDeviceLineRasterizationFeaturesKHR(
7862 VulkanStreamGuest* vkStream, VkStructureType rootType,
7863 const VkPhysicalDeviceLineRasterizationFeaturesKHR* forMarshaling, uint8_t** ptr) {
7864 (void)vkStream;
7865 (void)rootType;
7866 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7867 *ptr += sizeof(VkStructureType);
7868 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7869 rootType = forMarshaling->sType;
7870 }
7871 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7872 memcpy(*ptr, (VkBool32*)&forMarshaling->rectangularLines, sizeof(VkBool32));
7873 *ptr += sizeof(VkBool32);
7874 memcpy(*ptr, (VkBool32*)&forMarshaling->bresenhamLines, sizeof(VkBool32));
7875 *ptr += sizeof(VkBool32);
7876 memcpy(*ptr, (VkBool32*)&forMarshaling->smoothLines, sizeof(VkBool32));
7877 *ptr += sizeof(VkBool32);
7878 memcpy(*ptr, (VkBool32*)&forMarshaling->stippledRectangularLines, sizeof(VkBool32));
7879 *ptr += sizeof(VkBool32);
7880 memcpy(*ptr, (VkBool32*)&forMarshaling->stippledBresenhamLines, sizeof(VkBool32));
7881 *ptr += sizeof(VkBool32);
7882 memcpy(*ptr, (VkBool32*)&forMarshaling->stippledSmoothLines, sizeof(VkBool32));
7883 *ptr += sizeof(VkBool32);
7884 }
7885
reservedmarshal_VkPhysicalDeviceLineRasterizationPropertiesKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceLineRasterizationPropertiesKHR * forMarshaling,uint8_t ** ptr)7886 void reservedmarshal_VkPhysicalDeviceLineRasterizationPropertiesKHR(
7887 VulkanStreamGuest* vkStream, VkStructureType rootType,
7888 const VkPhysicalDeviceLineRasterizationPropertiesKHR* forMarshaling, uint8_t** ptr) {
7889 (void)vkStream;
7890 (void)rootType;
7891 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7892 *ptr += sizeof(VkStructureType);
7893 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7894 rootType = forMarshaling->sType;
7895 }
7896 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7897 memcpy(*ptr, (uint32_t*)&forMarshaling->lineSubPixelPrecisionBits, sizeof(uint32_t));
7898 *ptr += sizeof(uint32_t);
7899 }
7900
reservedmarshal_VkPipelineRasterizationLineStateCreateInfoKHR(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineRasterizationLineStateCreateInfoKHR * forMarshaling,uint8_t ** ptr)7901 void reservedmarshal_VkPipelineRasterizationLineStateCreateInfoKHR(
7902 VulkanStreamGuest* vkStream, VkStructureType rootType,
7903 const VkPipelineRasterizationLineStateCreateInfoKHR* forMarshaling, uint8_t** ptr) {
7904 (void)vkStream;
7905 (void)rootType;
7906 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7907 *ptr += sizeof(VkStructureType);
7908 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7909 rootType = forMarshaling->sType;
7910 }
7911 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7912 memcpy(*ptr, (VkLineRasterizationModeKHR*)&forMarshaling->lineRasterizationMode,
7913 sizeof(VkLineRasterizationModeKHR));
7914 *ptr += sizeof(VkLineRasterizationModeKHR);
7915 memcpy(*ptr, (VkBool32*)&forMarshaling->stippledLineEnable, sizeof(VkBool32));
7916 *ptr += sizeof(VkBool32);
7917 memcpy(*ptr, (uint32_t*)&forMarshaling->lineStippleFactor, sizeof(uint32_t));
7918 *ptr += sizeof(uint32_t);
7919 memcpy(*ptr, (uint16_t*)&forMarshaling->lineStipplePattern, sizeof(uint16_t));
7920 *ptr += sizeof(uint16_t);
7921 }
7922
7923 #endif
7924 #ifdef VK_ANDROID_native_buffer
reservedmarshal_VkNativeBufferUsage2ANDROID(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkNativeBufferUsage2ANDROID * forMarshaling,uint8_t ** ptr)7925 void reservedmarshal_VkNativeBufferUsage2ANDROID(VulkanStreamGuest* vkStream,
7926 VkStructureType rootType,
7927 const VkNativeBufferUsage2ANDROID* forMarshaling,
7928 uint8_t** ptr) {
7929 (void)vkStream;
7930 (void)rootType;
7931 memcpy(*ptr, (uint64_t*)&forMarshaling->consumer, sizeof(uint64_t));
7932 *ptr += sizeof(uint64_t);
7933 memcpy(*ptr, (uint64_t*)&forMarshaling->producer, sizeof(uint64_t));
7934 *ptr += sizeof(uint64_t);
7935 }
7936
reservedmarshal_VkNativeBufferANDROID(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkNativeBufferANDROID * forMarshaling,uint8_t ** ptr)7937 void reservedmarshal_VkNativeBufferANDROID(VulkanStreamGuest* vkStream, VkStructureType rootType,
7938 const VkNativeBufferANDROID* forMarshaling,
7939 uint8_t** ptr) {
7940 (void)vkStream;
7941 (void)rootType;
7942 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7943 *ptr += sizeof(VkStructureType);
7944 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7945 rootType = forMarshaling->sType;
7946 }
7947 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7948 // WARNING PTR CHECK
7949 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->handle;
7950 memcpy((*ptr), &cgen_var_0, 8);
7951 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
7952 *ptr += 8;
7953 if (forMarshaling->handle) {
7954 memcpy(*ptr, (const uint32_t*)forMarshaling->handle, sizeof(const uint32_t));
7955 *ptr += sizeof(const uint32_t);
7956 }
7957 memcpy(*ptr, (int*)&forMarshaling->stride, sizeof(int));
7958 *ptr += sizeof(int);
7959 memcpy(*ptr, (int*)&forMarshaling->format, sizeof(int));
7960 *ptr += sizeof(int);
7961 memcpy(*ptr, (int*)&forMarshaling->usage, sizeof(int));
7962 *ptr += sizeof(int);
7963 reservedmarshal_VkNativeBufferUsage2ANDROID(
7964 vkStream, rootType, (VkNativeBufferUsage2ANDROID*)(&forMarshaling->usage2), ptr);
7965 }
7966
reservedmarshal_VkSwapchainImageCreateInfoANDROID(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSwapchainImageCreateInfoANDROID * forMarshaling,uint8_t ** ptr)7967 void reservedmarshal_VkSwapchainImageCreateInfoANDROID(
7968 VulkanStreamGuest* vkStream, VkStructureType rootType,
7969 const VkSwapchainImageCreateInfoANDROID* forMarshaling, uint8_t** ptr) {
7970 (void)vkStream;
7971 (void)rootType;
7972 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7973 *ptr += sizeof(VkStructureType);
7974 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7975 rootType = forMarshaling->sType;
7976 }
7977 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7978 memcpy(*ptr, (VkSwapchainImageUsageFlagsANDROID*)&forMarshaling->usage,
7979 sizeof(VkSwapchainImageUsageFlagsANDROID));
7980 *ptr += sizeof(VkSwapchainImageUsageFlagsANDROID);
7981 }
7982
reservedmarshal_VkPhysicalDevicePresentationPropertiesANDROID(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePresentationPropertiesANDROID * forMarshaling,uint8_t ** ptr)7983 void reservedmarshal_VkPhysicalDevicePresentationPropertiesANDROID(
7984 VulkanStreamGuest* vkStream, VkStructureType rootType,
7985 const VkPhysicalDevicePresentationPropertiesANDROID* forMarshaling, uint8_t** ptr) {
7986 (void)vkStream;
7987 (void)rootType;
7988 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
7989 *ptr += sizeof(VkStructureType);
7990 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
7991 rootType = forMarshaling->sType;
7992 }
7993 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
7994 memcpy(*ptr, (VkBool32*)&forMarshaling->sharedImage, sizeof(VkBool32));
7995 *ptr += sizeof(VkBool32);
7996 }
7997
7998 #endif
7999 #ifdef VK_EXT_transform_feedback
reservedmarshal_VkPhysicalDeviceTransformFeedbackFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceTransformFeedbackFeaturesEXT * forMarshaling,uint8_t ** ptr)8000 void reservedmarshal_VkPhysicalDeviceTransformFeedbackFeaturesEXT(
8001 VulkanStreamGuest* vkStream, VkStructureType rootType,
8002 const VkPhysicalDeviceTransformFeedbackFeaturesEXT* forMarshaling, uint8_t** ptr) {
8003 (void)vkStream;
8004 (void)rootType;
8005 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8006 *ptr += sizeof(VkStructureType);
8007 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8008 rootType = forMarshaling->sType;
8009 }
8010 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8011 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedback, sizeof(VkBool32));
8012 *ptr += sizeof(VkBool32);
8013 memcpy(*ptr, (VkBool32*)&forMarshaling->geometryStreams, sizeof(VkBool32));
8014 *ptr += sizeof(VkBool32);
8015 }
8016
reservedmarshal_VkPhysicalDeviceTransformFeedbackPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceTransformFeedbackPropertiesEXT * forMarshaling,uint8_t ** ptr)8017 void reservedmarshal_VkPhysicalDeviceTransformFeedbackPropertiesEXT(
8018 VulkanStreamGuest* vkStream, VkStructureType rootType,
8019 const VkPhysicalDeviceTransformFeedbackPropertiesEXT* forMarshaling, uint8_t** ptr) {
8020 (void)vkStream;
8021 (void)rootType;
8022 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8023 *ptr += sizeof(VkStructureType);
8024 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8025 rootType = forMarshaling->sType;
8026 }
8027 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8028 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackStreams, sizeof(uint32_t));
8029 *ptr += sizeof(uint32_t);
8030 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackBuffers, sizeof(uint32_t));
8031 *ptr += sizeof(uint32_t);
8032 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxTransformFeedbackBufferSize,
8033 sizeof(VkDeviceSize));
8034 *ptr += sizeof(VkDeviceSize);
8035 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackStreamDataSize, sizeof(uint32_t));
8036 *ptr += sizeof(uint32_t);
8037 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackBufferDataSize, sizeof(uint32_t));
8038 *ptr += sizeof(uint32_t);
8039 memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackBufferDataStride, sizeof(uint32_t));
8040 *ptr += sizeof(uint32_t);
8041 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackQueries, sizeof(VkBool32));
8042 *ptr += sizeof(VkBool32);
8043 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackStreamsLinesTriangles,
8044 sizeof(VkBool32));
8045 *ptr += sizeof(VkBool32);
8046 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackRasterizationStreamSelect,
8047 sizeof(VkBool32));
8048 *ptr += sizeof(VkBool32);
8049 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackDraw, sizeof(VkBool32));
8050 *ptr += sizeof(VkBool32);
8051 }
8052
reservedmarshal_VkPipelineRasterizationStateStreamCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineRasterizationStateStreamCreateInfoEXT * forMarshaling,uint8_t ** ptr)8053 void reservedmarshal_VkPipelineRasterizationStateStreamCreateInfoEXT(
8054 VulkanStreamGuest* vkStream, VkStructureType rootType,
8055 const VkPipelineRasterizationStateStreamCreateInfoEXT* forMarshaling, uint8_t** ptr) {
8056 (void)vkStream;
8057 (void)rootType;
8058 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8059 *ptr += sizeof(VkStructureType);
8060 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8061 rootType = forMarshaling->sType;
8062 }
8063 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8064 memcpy(*ptr, (VkPipelineRasterizationStateStreamCreateFlagsEXT*)&forMarshaling->flags,
8065 sizeof(VkPipelineRasterizationStateStreamCreateFlagsEXT));
8066 *ptr += sizeof(VkPipelineRasterizationStateStreamCreateFlagsEXT);
8067 memcpy(*ptr, (uint32_t*)&forMarshaling->rasterizationStream, sizeof(uint32_t));
8068 *ptr += sizeof(uint32_t);
8069 }
8070
8071 #endif
8072 #ifdef VK_EXT_depth_clip_enable
reservedmarshal_VkPhysicalDeviceDepthClipEnableFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceDepthClipEnableFeaturesEXT * forMarshaling,uint8_t ** ptr)8073 void reservedmarshal_VkPhysicalDeviceDepthClipEnableFeaturesEXT(
8074 VulkanStreamGuest* vkStream, VkStructureType rootType,
8075 const VkPhysicalDeviceDepthClipEnableFeaturesEXT* forMarshaling, uint8_t** ptr) {
8076 (void)vkStream;
8077 (void)rootType;
8078 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8079 *ptr += sizeof(VkStructureType);
8080 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8081 rootType = forMarshaling->sType;
8082 }
8083 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8084 memcpy(*ptr, (VkBool32*)&forMarshaling->depthClipEnable, sizeof(VkBool32));
8085 *ptr += sizeof(VkBool32);
8086 }
8087
reservedmarshal_VkPipelineRasterizationDepthClipStateCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineRasterizationDepthClipStateCreateInfoEXT * forMarshaling,uint8_t ** ptr)8088 void reservedmarshal_VkPipelineRasterizationDepthClipStateCreateInfoEXT(
8089 VulkanStreamGuest* vkStream, VkStructureType rootType,
8090 const VkPipelineRasterizationDepthClipStateCreateInfoEXT* forMarshaling, uint8_t** ptr) {
8091 (void)vkStream;
8092 (void)rootType;
8093 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8094 *ptr += sizeof(VkStructureType);
8095 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8096 rootType = forMarshaling->sType;
8097 }
8098 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8099 memcpy(*ptr, (VkPipelineRasterizationDepthClipStateCreateFlagsEXT*)&forMarshaling->flags,
8100 sizeof(VkPipelineRasterizationDepthClipStateCreateFlagsEXT));
8101 *ptr += sizeof(VkPipelineRasterizationDepthClipStateCreateFlagsEXT);
8102 memcpy(*ptr, (VkBool32*)&forMarshaling->depthClipEnable, sizeof(VkBool32));
8103 *ptr += sizeof(VkBool32);
8104 }
8105
8106 #endif
8107 #ifdef VK_EXT_image_drm_format_modifier
reservedmarshal_VkDrmFormatModifierPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDrmFormatModifierPropertiesEXT * forMarshaling,uint8_t ** ptr)8108 void reservedmarshal_VkDrmFormatModifierPropertiesEXT(
8109 VulkanStreamGuest* vkStream, VkStructureType rootType,
8110 const VkDrmFormatModifierPropertiesEXT* forMarshaling, uint8_t** ptr) {
8111 (void)vkStream;
8112 (void)rootType;
8113 memcpy(*ptr, (uint64_t*)&forMarshaling->drmFormatModifier, sizeof(uint64_t));
8114 *ptr += sizeof(uint64_t);
8115 memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierPlaneCount, sizeof(uint32_t));
8116 *ptr += sizeof(uint32_t);
8117 memcpy(*ptr, (VkFormatFeatureFlags*)&forMarshaling->drmFormatModifierTilingFeatures,
8118 sizeof(VkFormatFeatureFlags));
8119 *ptr += sizeof(VkFormatFeatureFlags);
8120 }
8121
reservedmarshal_VkDrmFormatModifierPropertiesListEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDrmFormatModifierPropertiesListEXT * forMarshaling,uint8_t ** ptr)8122 void reservedmarshal_VkDrmFormatModifierPropertiesListEXT(
8123 VulkanStreamGuest* vkStream, VkStructureType rootType,
8124 const VkDrmFormatModifierPropertiesListEXT* 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 memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierCount, sizeof(uint32_t));
8134 *ptr += sizeof(uint32_t);
8135 // WARNING PTR CHECK
8136 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pDrmFormatModifierProperties;
8137 memcpy((*ptr), &cgen_var_0, 8);
8138 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8139 *ptr += 8;
8140 if (forMarshaling->pDrmFormatModifierProperties) {
8141 for (uint32_t i = 0; i < (uint32_t)forMarshaling->drmFormatModifierCount; ++i) {
8142 reservedmarshal_VkDrmFormatModifierPropertiesEXT(
8143 vkStream, rootType,
8144 (VkDrmFormatModifierPropertiesEXT*)(forMarshaling->pDrmFormatModifierProperties +
8145 i),
8146 ptr);
8147 }
8148 }
8149 }
8150
reservedmarshal_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceImageDrmFormatModifierInfoEXT * forMarshaling,uint8_t ** ptr)8151 void reservedmarshal_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(
8152 VulkanStreamGuest* vkStream, VkStructureType rootType,
8153 const VkPhysicalDeviceImageDrmFormatModifierInfoEXT* forMarshaling, uint8_t** ptr) {
8154 (void)vkStream;
8155 (void)rootType;
8156 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8157 *ptr += sizeof(VkStructureType);
8158 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8159 rootType = forMarshaling->sType;
8160 }
8161 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8162 memcpy(*ptr, (uint64_t*)&forMarshaling->drmFormatModifier, sizeof(uint64_t));
8163 *ptr += sizeof(uint64_t);
8164 memcpy(*ptr, (VkSharingMode*)&forMarshaling->sharingMode, sizeof(VkSharingMode));
8165 *ptr += sizeof(VkSharingMode);
8166 memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndexCount, sizeof(uint32_t));
8167 *ptr += sizeof(uint32_t);
8168 // WARNING PTR CHECK
8169 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pQueueFamilyIndices;
8170 memcpy((*ptr), &cgen_var_0, 8);
8171 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8172 *ptr += 8;
8173 if (forMarshaling->pQueueFamilyIndices) {
8174 memcpy(*ptr, (const uint32_t*)forMarshaling->pQueueFamilyIndices,
8175 forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t));
8176 *ptr += forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t);
8177 }
8178 }
8179
reservedmarshal_VkImageDrmFormatModifierListCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageDrmFormatModifierListCreateInfoEXT * forMarshaling,uint8_t ** ptr)8180 void reservedmarshal_VkImageDrmFormatModifierListCreateInfoEXT(
8181 VulkanStreamGuest* vkStream, VkStructureType rootType,
8182 const VkImageDrmFormatModifierListCreateInfoEXT* forMarshaling, uint8_t** ptr) {
8183 (void)vkStream;
8184 (void)rootType;
8185 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8186 *ptr += sizeof(VkStructureType);
8187 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8188 rootType = forMarshaling->sType;
8189 }
8190 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8191 memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierCount, sizeof(uint32_t));
8192 *ptr += sizeof(uint32_t);
8193 memcpy(*ptr, (const uint64_t*)forMarshaling->pDrmFormatModifiers,
8194 forMarshaling->drmFormatModifierCount * sizeof(const uint64_t));
8195 *ptr += forMarshaling->drmFormatModifierCount * sizeof(const uint64_t);
8196 }
8197
reservedmarshal_VkImageDrmFormatModifierExplicitCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageDrmFormatModifierExplicitCreateInfoEXT * forMarshaling,uint8_t ** ptr)8198 void reservedmarshal_VkImageDrmFormatModifierExplicitCreateInfoEXT(
8199 VulkanStreamGuest* vkStream, VkStructureType rootType,
8200 const VkImageDrmFormatModifierExplicitCreateInfoEXT* forMarshaling, uint8_t** ptr) {
8201 (void)vkStream;
8202 (void)rootType;
8203 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8204 *ptr += sizeof(VkStructureType);
8205 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8206 rootType = forMarshaling->sType;
8207 }
8208 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8209 memcpy(*ptr, (uint64_t*)&forMarshaling->drmFormatModifier, sizeof(uint64_t));
8210 *ptr += sizeof(uint64_t);
8211 memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierPlaneCount, sizeof(uint32_t));
8212 *ptr += sizeof(uint32_t);
8213 for (uint32_t i = 0; i < (uint32_t)forMarshaling->drmFormatModifierPlaneCount; ++i) {
8214 reservedmarshal_VkSubresourceLayout(
8215 vkStream, rootType, (const VkSubresourceLayout*)(forMarshaling->pPlaneLayouts + i),
8216 ptr);
8217 }
8218 }
8219
reservedmarshal_VkImageDrmFormatModifierPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageDrmFormatModifierPropertiesEXT * forMarshaling,uint8_t ** ptr)8220 void reservedmarshal_VkImageDrmFormatModifierPropertiesEXT(
8221 VulkanStreamGuest* vkStream, VkStructureType rootType,
8222 const VkImageDrmFormatModifierPropertiesEXT* forMarshaling, uint8_t** ptr) {
8223 (void)vkStream;
8224 (void)rootType;
8225 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8226 *ptr += sizeof(VkStructureType);
8227 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8228 rootType = forMarshaling->sType;
8229 }
8230 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8231 memcpy(*ptr, (uint64_t*)&forMarshaling->drmFormatModifier, sizeof(uint64_t));
8232 *ptr += sizeof(uint64_t);
8233 }
8234
reservedmarshal_VkDrmFormatModifierProperties2EXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDrmFormatModifierProperties2EXT * forMarshaling,uint8_t ** ptr)8235 void reservedmarshal_VkDrmFormatModifierProperties2EXT(
8236 VulkanStreamGuest* vkStream, VkStructureType rootType,
8237 const VkDrmFormatModifierProperties2EXT* forMarshaling, uint8_t** ptr) {
8238 (void)vkStream;
8239 (void)rootType;
8240 memcpy(*ptr, (uint64_t*)&forMarshaling->drmFormatModifier, sizeof(uint64_t));
8241 *ptr += sizeof(uint64_t);
8242 memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierPlaneCount, sizeof(uint32_t));
8243 *ptr += sizeof(uint32_t);
8244 memcpy(*ptr, (VkFormatFeatureFlags2*)&forMarshaling->drmFormatModifierTilingFeatures,
8245 sizeof(VkFormatFeatureFlags2));
8246 *ptr += sizeof(VkFormatFeatureFlags2);
8247 }
8248
reservedmarshal_VkDrmFormatModifierPropertiesList2EXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDrmFormatModifierPropertiesList2EXT * forMarshaling,uint8_t ** ptr)8249 void reservedmarshal_VkDrmFormatModifierPropertiesList2EXT(
8250 VulkanStreamGuest* vkStream, VkStructureType rootType,
8251 const VkDrmFormatModifierPropertiesList2EXT* forMarshaling, uint8_t** ptr) {
8252 (void)vkStream;
8253 (void)rootType;
8254 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8255 *ptr += sizeof(VkStructureType);
8256 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8257 rootType = forMarshaling->sType;
8258 }
8259 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8260 memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierCount, sizeof(uint32_t));
8261 *ptr += sizeof(uint32_t);
8262 // WARNING PTR CHECK
8263 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pDrmFormatModifierProperties;
8264 memcpy((*ptr), &cgen_var_0, 8);
8265 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8266 *ptr += 8;
8267 if (forMarshaling->pDrmFormatModifierProperties) {
8268 for (uint32_t i = 0; i < (uint32_t)forMarshaling->drmFormatModifierCount; ++i) {
8269 reservedmarshal_VkDrmFormatModifierProperties2EXT(
8270 vkStream, rootType,
8271 (VkDrmFormatModifierProperties2EXT*)(forMarshaling->pDrmFormatModifierProperties +
8272 i),
8273 ptr);
8274 }
8275 }
8276 }
8277
8278 #endif
8279 #ifdef VK_EXT_vertex_attribute_divisor
reservedmarshal_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT * forMarshaling,uint8_t ** ptr)8280 void reservedmarshal_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(
8281 VulkanStreamGuest* vkStream, VkStructureType rootType,
8282 const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* forMarshaling, uint8_t** ptr) {
8283 (void)vkStream;
8284 (void)rootType;
8285 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8286 *ptr += sizeof(VkStructureType);
8287 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8288 rootType = forMarshaling->sType;
8289 }
8290 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8291 memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexAttribDivisor, sizeof(uint32_t));
8292 *ptr += sizeof(uint32_t);
8293 }
8294
8295 #endif
8296 #ifdef VK_EXT_fragment_density_map
reservedmarshal_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceFragmentDensityMapFeaturesEXT * forMarshaling,uint8_t ** ptr)8297 void reservedmarshal_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(
8298 VulkanStreamGuest* vkStream, VkStructureType rootType,
8299 const VkPhysicalDeviceFragmentDensityMapFeaturesEXT* forMarshaling, uint8_t** ptr) {
8300 (void)vkStream;
8301 (void)rootType;
8302 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8303 *ptr += sizeof(VkStructureType);
8304 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8305 rootType = forMarshaling->sType;
8306 }
8307 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8308 memcpy(*ptr, (VkBool32*)&forMarshaling->fragmentDensityMap, sizeof(VkBool32));
8309 *ptr += sizeof(VkBool32);
8310 memcpy(*ptr, (VkBool32*)&forMarshaling->fragmentDensityMapDynamic, sizeof(VkBool32));
8311 *ptr += sizeof(VkBool32);
8312 memcpy(*ptr, (VkBool32*)&forMarshaling->fragmentDensityMapNonSubsampledImages,
8313 sizeof(VkBool32));
8314 *ptr += sizeof(VkBool32);
8315 }
8316
reservedmarshal_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceFragmentDensityMapPropertiesEXT * forMarshaling,uint8_t ** ptr)8317 void reservedmarshal_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(
8318 VulkanStreamGuest* vkStream, VkStructureType rootType,
8319 const VkPhysicalDeviceFragmentDensityMapPropertiesEXT* forMarshaling, uint8_t** ptr) {
8320 (void)vkStream;
8321 (void)rootType;
8322 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8323 *ptr += sizeof(VkStructureType);
8324 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8325 rootType = forMarshaling->sType;
8326 }
8327 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8328 reservedmarshal_VkExtent2D(vkStream, rootType,
8329 (VkExtent2D*)(&forMarshaling->minFragmentDensityTexelSize), ptr);
8330 reservedmarshal_VkExtent2D(vkStream, rootType,
8331 (VkExtent2D*)(&forMarshaling->maxFragmentDensityTexelSize), ptr);
8332 memcpy(*ptr, (VkBool32*)&forMarshaling->fragmentDensityInvocations, sizeof(VkBool32));
8333 *ptr += sizeof(VkBool32);
8334 }
8335
reservedmarshal_VkRenderPassFragmentDensityMapCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkRenderPassFragmentDensityMapCreateInfoEXT * forMarshaling,uint8_t ** ptr)8336 void reservedmarshal_VkRenderPassFragmentDensityMapCreateInfoEXT(
8337 VulkanStreamGuest* vkStream, VkStructureType rootType,
8338 const VkRenderPassFragmentDensityMapCreateInfoEXT* forMarshaling, uint8_t** ptr) {
8339 (void)vkStream;
8340 (void)rootType;
8341 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8342 *ptr += sizeof(VkStructureType);
8343 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8344 rootType = forMarshaling->sType;
8345 }
8346 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8347 reservedmarshal_VkAttachmentReference(
8348 vkStream, rootType, (VkAttachmentReference*)(&forMarshaling->fragmentDensityMapAttachment),
8349 ptr);
8350 }
8351
8352 #endif
8353 #ifdef VK_EXT_provoking_vertex
reservedmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceProvokingVertexFeaturesEXT * forMarshaling,uint8_t ** ptr)8354 void reservedmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(
8355 VulkanStreamGuest* vkStream, VkStructureType rootType,
8356 const VkPhysicalDeviceProvokingVertexFeaturesEXT* forMarshaling, uint8_t** ptr) {
8357 (void)vkStream;
8358 (void)rootType;
8359 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8360 *ptr += sizeof(VkStructureType);
8361 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8362 rootType = forMarshaling->sType;
8363 }
8364 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8365 memcpy(*ptr, (VkBool32*)&forMarshaling->provokingVertexLast, sizeof(VkBool32));
8366 *ptr += sizeof(VkBool32);
8367 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackPreservesProvokingVertex,
8368 sizeof(VkBool32));
8369 *ptr += sizeof(VkBool32);
8370 }
8371
reservedmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceProvokingVertexPropertiesEXT * forMarshaling,uint8_t ** ptr)8372 void reservedmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(
8373 VulkanStreamGuest* vkStream, VkStructureType rootType,
8374 const VkPhysicalDeviceProvokingVertexPropertiesEXT* forMarshaling, uint8_t** ptr) {
8375 (void)vkStream;
8376 (void)rootType;
8377 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8378 *ptr += sizeof(VkStructureType);
8379 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8380 rootType = forMarshaling->sType;
8381 }
8382 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8383 memcpy(*ptr, (VkBool32*)&forMarshaling->provokingVertexModePerPipeline, sizeof(VkBool32));
8384 *ptr += sizeof(VkBool32);
8385 memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackPreservesTriangleFanProvokingVertex,
8386 sizeof(VkBool32));
8387 *ptr += sizeof(VkBool32);
8388 }
8389
reservedmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT * forMarshaling,uint8_t ** ptr)8390 void reservedmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
8391 VulkanStreamGuest* vkStream, VkStructureType rootType,
8392 const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* forMarshaling, uint8_t** ptr) {
8393 (void)vkStream;
8394 (void)rootType;
8395 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8396 *ptr += sizeof(VkStructureType);
8397 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8398 rootType = forMarshaling->sType;
8399 }
8400 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8401 memcpy(*ptr, (VkProvokingVertexModeEXT*)&forMarshaling->provokingVertexMode,
8402 sizeof(VkProvokingVertexModeEXT));
8403 *ptr += sizeof(VkProvokingVertexModeEXT);
8404 }
8405
8406 #endif
8407 #ifdef VK_EXT_extended_dynamic_state
reservedmarshal_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT * forMarshaling,uint8_t ** ptr)8408 void reservedmarshal_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(
8409 VulkanStreamGuest* vkStream, VkStructureType rootType,
8410 const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* forMarshaling, uint8_t** ptr) {
8411 (void)vkStream;
8412 (void)rootType;
8413 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8414 *ptr += sizeof(VkStructureType);
8415 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8416 rootType = forMarshaling->sType;
8417 }
8418 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8419 memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState, sizeof(VkBool32));
8420 *ptr += sizeof(VkBool32);
8421 }
8422
8423 #endif
8424 #ifdef VK_EXT_host_image_copy
reservedmarshal_VkPhysicalDeviceHostImageCopyFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceHostImageCopyFeaturesEXT * forMarshaling,uint8_t ** ptr)8425 void reservedmarshal_VkPhysicalDeviceHostImageCopyFeaturesEXT(
8426 VulkanStreamGuest* vkStream, VkStructureType rootType,
8427 const VkPhysicalDeviceHostImageCopyFeaturesEXT* forMarshaling, uint8_t** ptr) {
8428 (void)vkStream;
8429 (void)rootType;
8430 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8431 *ptr += sizeof(VkStructureType);
8432 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8433 rootType = forMarshaling->sType;
8434 }
8435 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8436 memcpy(*ptr, (VkBool32*)&forMarshaling->hostImageCopy, sizeof(VkBool32));
8437 *ptr += sizeof(VkBool32);
8438 }
8439
reservedmarshal_VkPhysicalDeviceHostImageCopyPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceHostImageCopyPropertiesEXT * forMarshaling,uint8_t ** ptr)8440 void reservedmarshal_VkPhysicalDeviceHostImageCopyPropertiesEXT(
8441 VulkanStreamGuest* vkStream, VkStructureType rootType,
8442 const VkPhysicalDeviceHostImageCopyPropertiesEXT* forMarshaling, uint8_t** ptr) {
8443 (void)vkStream;
8444 (void)rootType;
8445 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8446 *ptr += sizeof(VkStructureType);
8447 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8448 rootType = forMarshaling->sType;
8449 }
8450 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8451 memcpy(*ptr, (uint32_t*)&forMarshaling->copySrcLayoutCount, sizeof(uint32_t));
8452 *ptr += sizeof(uint32_t);
8453 // WARNING PTR CHECK
8454 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pCopySrcLayouts;
8455 memcpy((*ptr), &cgen_var_0, 8);
8456 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8457 *ptr += 8;
8458 if (forMarshaling->pCopySrcLayouts) {
8459 memcpy(*ptr, (VkImageLayout*)forMarshaling->pCopySrcLayouts,
8460 forMarshaling->copySrcLayoutCount * sizeof(VkImageLayout));
8461 *ptr += forMarshaling->copySrcLayoutCount * sizeof(VkImageLayout);
8462 }
8463 memcpy(*ptr, (uint32_t*)&forMarshaling->copyDstLayoutCount, sizeof(uint32_t));
8464 *ptr += sizeof(uint32_t);
8465 // WARNING PTR CHECK
8466 uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pCopyDstLayouts;
8467 memcpy((*ptr), &cgen_var_1, 8);
8468 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8469 *ptr += 8;
8470 if (forMarshaling->pCopyDstLayouts) {
8471 memcpy(*ptr, (VkImageLayout*)forMarshaling->pCopyDstLayouts,
8472 forMarshaling->copyDstLayoutCount * sizeof(VkImageLayout));
8473 *ptr += forMarshaling->copyDstLayoutCount * sizeof(VkImageLayout);
8474 }
8475 memcpy(*ptr, (uint8_t*)forMarshaling->optimalTilingLayoutUUID, VK_UUID_SIZE * sizeof(uint8_t));
8476 *ptr += VK_UUID_SIZE * sizeof(uint8_t);
8477 memcpy(*ptr, (VkBool32*)&forMarshaling->identicalMemoryTypeRequirements, sizeof(VkBool32));
8478 *ptr += sizeof(VkBool32);
8479 }
8480
reservedmarshal_VkMemoryToImageCopyEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkMemoryToImageCopyEXT * forMarshaling,uint8_t ** ptr)8481 void reservedmarshal_VkMemoryToImageCopyEXT(VulkanStreamGuest* vkStream, VkStructureType rootType,
8482 const VkMemoryToImageCopyEXT* forMarshaling,
8483 uint8_t** ptr) {
8484 (void)vkStream;
8485 (void)rootType;
8486 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8487 *ptr += sizeof(VkStructureType);
8488 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8489 rootType = forMarshaling->sType;
8490 }
8491 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8492 memcpy(*ptr, (const void*)forMarshaling->pHostPointer, sizeof(const uint8_t));
8493 *ptr += sizeof(const uint8_t);
8494 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryRowLength, sizeof(uint32_t));
8495 *ptr += sizeof(uint32_t);
8496 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryImageHeight, sizeof(uint32_t));
8497 *ptr += sizeof(uint32_t);
8498 reservedmarshal_VkImageSubresourceLayers(
8499 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->imageSubresource), ptr);
8500 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->imageOffset), ptr);
8501 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->imageExtent), ptr);
8502 }
8503
reservedmarshal_VkImageToMemoryCopyEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageToMemoryCopyEXT * forMarshaling,uint8_t ** ptr)8504 void reservedmarshal_VkImageToMemoryCopyEXT(VulkanStreamGuest* vkStream, VkStructureType rootType,
8505 const VkImageToMemoryCopyEXT* forMarshaling,
8506 uint8_t** ptr) {
8507 (void)vkStream;
8508 (void)rootType;
8509 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8510 *ptr += sizeof(VkStructureType);
8511 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8512 rootType = forMarshaling->sType;
8513 }
8514 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8515 memcpy(*ptr, (void*)forMarshaling->pHostPointer, sizeof(uint8_t));
8516 *ptr += sizeof(uint8_t);
8517 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryRowLength, sizeof(uint32_t));
8518 *ptr += sizeof(uint32_t);
8519 memcpy(*ptr, (uint32_t*)&forMarshaling->memoryImageHeight, sizeof(uint32_t));
8520 *ptr += sizeof(uint32_t);
8521 reservedmarshal_VkImageSubresourceLayers(
8522 vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->imageSubresource), ptr);
8523 reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->imageOffset), ptr);
8524 reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->imageExtent), ptr);
8525 }
8526
reservedmarshal_VkCopyMemoryToImageInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCopyMemoryToImageInfoEXT * forMarshaling,uint8_t ** ptr)8527 void reservedmarshal_VkCopyMemoryToImageInfoEXT(VulkanStreamGuest* vkStream,
8528 VkStructureType rootType,
8529 const VkCopyMemoryToImageInfoEXT* forMarshaling,
8530 uint8_t** ptr) {
8531 (void)vkStream;
8532 (void)rootType;
8533 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8534 *ptr += sizeof(VkStructureType);
8535 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8536 rootType = forMarshaling->sType;
8537 }
8538 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8539 memcpy(*ptr, (VkHostImageCopyFlagsEXT*)&forMarshaling->flags, sizeof(VkHostImageCopyFlagsEXT));
8540 *ptr += sizeof(VkHostImageCopyFlagsEXT);
8541 uint64_t cgen_var_0;
8542 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->dstImage));
8543 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8544 *ptr += 1 * 8;
8545 memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout));
8546 *ptr += sizeof(VkImageLayout);
8547 memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t));
8548 *ptr += sizeof(uint32_t);
8549 for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) {
8550 reservedmarshal_VkMemoryToImageCopyEXT(
8551 vkStream, rootType, (const VkMemoryToImageCopyEXT*)(forMarshaling->pRegions + i), ptr);
8552 }
8553 }
8554
reservedmarshal_VkCopyImageToMemoryInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCopyImageToMemoryInfoEXT * forMarshaling,uint8_t ** ptr)8555 void reservedmarshal_VkCopyImageToMemoryInfoEXT(VulkanStreamGuest* vkStream,
8556 VkStructureType rootType,
8557 const VkCopyImageToMemoryInfoEXT* forMarshaling,
8558 uint8_t** ptr) {
8559 (void)vkStream;
8560 (void)rootType;
8561 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8562 *ptr += sizeof(VkStructureType);
8563 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8564 rootType = forMarshaling->sType;
8565 }
8566 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8567 memcpy(*ptr, (VkHostImageCopyFlagsEXT*)&forMarshaling->flags, sizeof(VkHostImageCopyFlagsEXT));
8568 *ptr += sizeof(VkHostImageCopyFlagsEXT);
8569 uint64_t cgen_var_0;
8570 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage));
8571 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8572 *ptr += 1 * 8;
8573 memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout));
8574 *ptr += sizeof(VkImageLayout);
8575 memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t));
8576 *ptr += sizeof(uint32_t);
8577 for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) {
8578 reservedmarshal_VkImageToMemoryCopyEXT(
8579 vkStream, rootType, (const VkImageToMemoryCopyEXT*)(forMarshaling->pRegions + i), ptr);
8580 }
8581 }
8582
reservedmarshal_VkCopyImageToImageInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCopyImageToImageInfoEXT * forMarshaling,uint8_t ** ptr)8583 void reservedmarshal_VkCopyImageToImageInfoEXT(VulkanStreamGuest* vkStream,
8584 VkStructureType rootType,
8585 const VkCopyImageToImageInfoEXT* forMarshaling,
8586 uint8_t** ptr) {
8587 (void)vkStream;
8588 (void)rootType;
8589 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8590 *ptr += sizeof(VkStructureType);
8591 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8592 rootType = forMarshaling->sType;
8593 }
8594 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8595 memcpy(*ptr, (VkHostImageCopyFlagsEXT*)&forMarshaling->flags, sizeof(VkHostImageCopyFlagsEXT));
8596 *ptr += sizeof(VkHostImageCopyFlagsEXT);
8597 uint64_t cgen_var_0;
8598 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage));
8599 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8600 *ptr += 1 * 8;
8601 memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout));
8602 *ptr += sizeof(VkImageLayout);
8603 uint64_t cgen_var_1;
8604 *&cgen_var_1 = get_host_u64_VkImage((*&forMarshaling->dstImage));
8605 memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
8606 *ptr += 1 * 8;
8607 memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout));
8608 *ptr += sizeof(VkImageLayout);
8609 memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t));
8610 *ptr += sizeof(uint32_t);
8611 for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) {
8612 reservedmarshal_VkImageCopy2(vkStream, rootType,
8613 (const VkImageCopy2*)(forMarshaling->pRegions + i), ptr);
8614 }
8615 }
8616
reservedmarshal_VkHostImageLayoutTransitionInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkHostImageLayoutTransitionInfoEXT * forMarshaling,uint8_t ** ptr)8617 void reservedmarshal_VkHostImageLayoutTransitionInfoEXT(
8618 VulkanStreamGuest* vkStream, VkStructureType rootType,
8619 const VkHostImageLayoutTransitionInfoEXT* forMarshaling, uint8_t** ptr) {
8620 (void)vkStream;
8621 (void)rootType;
8622 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8623 *ptr += sizeof(VkStructureType);
8624 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8625 rootType = forMarshaling->sType;
8626 }
8627 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8628 uint64_t cgen_var_0;
8629 *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image));
8630 memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
8631 *ptr += 1 * 8;
8632 memcpy(*ptr, (VkImageLayout*)&forMarshaling->oldLayout, sizeof(VkImageLayout));
8633 *ptr += sizeof(VkImageLayout);
8634 memcpy(*ptr, (VkImageLayout*)&forMarshaling->newLayout, sizeof(VkImageLayout));
8635 *ptr += sizeof(VkImageLayout);
8636 reservedmarshal_VkImageSubresourceRange(
8637 vkStream, rootType, (VkImageSubresourceRange*)(&forMarshaling->subresourceRange), ptr);
8638 }
8639
reservedmarshal_VkSubresourceHostMemcpySizeEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSubresourceHostMemcpySizeEXT * forMarshaling,uint8_t ** ptr)8640 void reservedmarshal_VkSubresourceHostMemcpySizeEXT(
8641 VulkanStreamGuest* vkStream, VkStructureType rootType,
8642 const VkSubresourceHostMemcpySizeEXT* forMarshaling, uint8_t** ptr) {
8643 (void)vkStream;
8644 (void)rootType;
8645 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8646 *ptr += sizeof(VkStructureType);
8647 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8648 rootType = forMarshaling->sType;
8649 }
8650 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8651 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
8652 *ptr += sizeof(VkDeviceSize);
8653 }
8654
reservedmarshal_VkHostImageCopyDevicePerformanceQueryEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkHostImageCopyDevicePerformanceQueryEXT * forMarshaling,uint8_t ** ptr)8655 void reservedmarshal_VkHostImageCopyDevicePerformanceQueryEXT(
8656 VulkanStreamGuest* vkStream, VkStructureType rootType,
8657 const VkHostImageCopyDevicePerformanceQueryEXT* forMarshaling, uint8_t** ptr) {
8658 (void)vkStream;
8659 (void)rootType;
8660 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8661 *ptr += sizeof(VkStructureType);
8662 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8663 rootType = forMarshaling->sType;
8664 }
8665 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8666 memcpy(*ptr, (VkBool32*)&forMarshaling->optimalDeviceAccess, sizeof(VkBool32));
8667 *ptr += sizeof(VkBool32);
8668 memcpy(*ptr, (VkBool32*)&forMarshaling->identicalMemoryLayout, sizeof(VkBool32));
8669 *ptr += sizeof(VkBool32);
8670 }
8671
8672 #endif
8673 #ifdef VK_EXT_texel_buffer_alignment
reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT * forMarshaling,uint8_t ** ptr)8674 void reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
8675 VulkanStreamGuest* vkStream, VkStructureType rootType,
8676 const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* forMarshaling, uint8_t** ptr) {
8677 (void)vkStream;
8678 (void)rootType;
8679 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8680 *ptr += sizeof(VkStructureType);
8681 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8682 rootType = forMarshaling->sType;
8683 }
8684 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8685 memcpy(*ptr, (VkBool32*)&forMarshaling->texelBufferAlignment, sizeof(VkBool32));
8686 *ptr += sizeof(VkBool32);
8687 }
8688
8689 #endif
8690 #ifdef VK_EXT_device_memory_report
reservedmarshal_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT * forMarshaling,uint8_t ** ptr)8691 void reservedmarshal_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT(
8692 VulkanStreamGuest* vkStream, VkStructureType rootType,
8693 const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* forMarshaling, uint8_t** ptr) {
8694 (void)vkStream;
8695 (void)rootType;
8696 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8697 *ptr += sizeof(VkStructureType);
8698 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8699 rootType = forMarshaling->sType;
8700 }
8701 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8702 memcpy(*ptr, (VkBool32*)&forMarshaling->deviceMemoryReport, sizeof(VkBool32));
8703 *ptr += sizeof(VkBool32);
8704 }
8705
reservedmarshal_VkDeviceMemoryReportCallbackDataEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceMemoryReportCallbackDataEXT * forMarshaling,uint8_t ** ptr)8706 void reservedmarshal_VkDeviceMemoryReportCallbackDataEXT(
8707 VulkanStreamGuest* vkStream, VkStructureType rootType,
8708 const VkDeviceMemoryReportCallbackDataEXT* forMarshaling, uint8_t** ptr) {
8709 (void)vkStream;
8710 (void)rootType;
8711 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8712 *ptr += sizeof(VkStructureType);
8713 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8714 rootType = forMarshaling->sType;
8715 }
8716 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8717 memcpy(*ptr, (VkDeviceMemoryReportFlagsEXT*)&forMarshaling->flags,
8718 sizeof(VkDeviceMemoryReportFlagsEXT));
8719 *ptr += sizeof(VkDeviceMemoryReportFlagsEXT);
8720 memcpy(*ptr, (VkDeviceMemoryReportEventTypeEXT*)&forMarshaling->type,
8721 sizeof(VkDeviceMemoryReportEventTypeEXT));
8722 *ptr += sizeof(VkDeviceMemoryReportEventTypeEXT);
8723 memcpy(*ptr, (uint64_t*)&forMarshaling->memoryObjectId, sizeof(uint64_t));
8724 *ptr += sizeof(uint64_t);
8725 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
8726 *ptr += sizeof(VkDeviceSize);
8727 memcpy(*ptr, (VkObjectType*)&forMarshaling->objectType, sizeof(VkObjectType));
8728 *ptr += sizeof(VkObjectType);
8729 memcpy(*ptr, (uint64_t*)&forMarshaling->objectHandle, sizeof(uint64_t));
8730 *ptr += sizeof(uint64_t);
8731 memcpy(*ptr, (uint32_t*)&forMarshaling->heapIndex, sizeof(uint32_t));
8732 *ptr += sizeof(uint32_t);
8733 }
8734
reservedmarshal_VkDeviceDeviceMemoryReportCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkDeviceDeviceMemoryReportCreateInfoEXT * forMarshaling,uint8_t ** ptr)8735 void reservedmarshal_VkDeviceDeviceMemoryReportCreateInfoEXT(
8736 VulkanStreamGuest* vkStream, VkStructureType rootType,
8737 const VkDeviceDeviceMemoryReportCreateInfoEXT* forMarshaling, uint8_t** ptr) {
8738 (void)vkStream;
8739 (void)rootType;
8740 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8741 *ptr += sizeof(VkStructureType);
8742 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8743 rootType = forMarshaling->sType;
8744 }
8745 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8746 memcpy(*ptr, (VkDeviceMemoryReportFlagsEXT*)&forMarshaling->flags,
8747 sizeof(VkDeviceMemoryReportFlagsEXT));
8748 *ptr += sizeof(VkDeviceMemoryReportFlagsEXT);
8749 uint64_t cgen_var_0 = (uint64_t)forMarshaling->pfnUserCallback;
8750 memcpy((*ptr), &cgen_var_0, 8);
8751 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8752 *ptr += 8;
8753 memcpy(*ptr, (void*)forMarshaling->pUserData, sizeof(uint8_t));
8754 *ptr += sizeof(uint8_t);
8755 }
8756
8757 #endif
8758 #ifdef VK_EXT_robustness2
reservedmarshal_VkPhysicalDeviceRobustness2FeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceRobustness2FeaturesEXT * forMarshaling,uint8_t ** ptr)8759 void reservedmarshal_VkPhysicalDeviceRobustness2FeaturesEXT(
8760 VulkanStreamGuest* vkStream, VkStructureType rootType,
8761 const VkPhysicalDeviceRobustness2FeaturesEXT* forMarshaling, uint8_t** ptr) {
8762 (void)vkStream;
8763 (void)rootType;
8764 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8765 *ptr += sizeof(VkStructureType);
8766 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8767 rootType = forMarshaling->sType;
8768 }
8769 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8770 memcpy(*ptr, (VkBool32*)&forMarshaling->robustBufferAccess2, sizeof(VkBool32));
8771 *ptr += sizeof(VkBool32);
8772 memcpy(*ptr, (VkBool32*)&forMarshaling->robustImageAccess2, sizeof(VkBool32));
8773 *ptr += sizeof(VkBool32);
8774 memcpy(*ptr, (VkBool32*)&forMarshaling->nullDescriptor, sizeof(VkBool32));
8775 *ptr += sizeof(VkBool32);
8776 }
8777
reservedmarshal_VkPhysicalDeviceRobustness2PropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceRobustness2PropertiesEXT * forMarshaling,uint8_t ** ptr)8778 void reservedmarshal_VkPhysicalDeviceRobustness2PropertiesEXT(
8779 VulkanStreamGuest* vkStream, VkStructureType rootType,
8780 const VkPhysicalDeviceRobustness2PropertiesEXT* forMarshaling, uint8_t** ptr) {
8781 (void)vkStream;
8782 (void)rootType;
8783 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8784 *ptr += sizeof(VkStructureType);
8785 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8786 rootType = forMarshaling->sType;
8787 }
8788 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8789 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->robustStorageBufferAccessSizeAlignment,
8790 sizeof(VkDeviceSize));
8791 *ptr += sizeof(VkDeviceSize);
8792 memcpy(*ptr, (VkDeviceSize*)&forMarshaling->robustUniformBufferAccessSizeAlignment,
8793 sizeof(VkDeviceSize));
8794 *ptr += sizeof(VkDeviceSize);
8795 }
8796
8797 #endif
8798 #ifdef VK_EXT_custom_border_color
reservedmarshal_VkSamplerCustomBorderColorCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkSamplerCustomBorderColorCreateInfoEXT * forMarshaling,uint8_t ** ptr)8799 void reservedmarshal_VkSamplerCustomBorderColorCreateInfoEXT(
8800 VulkanStreamGuest* vkStream, VkStructureType rootType,
8801 const VkSamplerCustomBorderColorCreateInfoEXT* forMarshaling, uint8_t** ptr) {
8802 (void)vkStream;
8803 (void)rootType;
8804 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8805 *ptr += sizeof(VkStructureType);
8806 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8807 rootType = forMarshaling->sType;
8808 }
8809 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8810 reservedmarshal_VkClearColorValue(vkStream, rootType,
8811 (VkClearColorValue*)(&forMarshaling->customBorderColor), ptr);
8812 memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
8813 *ptr += sizeof(VkFormat);
8814 }
8815
reservedmarshal_VkPhysicalDeviceCustomBorderColorPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceCustomBorderColorPropertiesEXT * forMarshaling,uint8_t ** ptr)8816 void reservedmarshal_VkPhysicalDeviceCustomBorderColorPropertiesEXT(
8817 VulkanStreamGuest* vkStream, VkStructureType rootType,
8818 const VkPhysicalDeviceCustomBorderColorPropertiesEXT* forMarshaling, uint8_t** ptr) {
8819 (void)vkStream;
8820 (void)rootType;
8821 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8822 *ptr += sizeof(VkStructureType);
8823 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8824 rootType = forMarshaling->sType;
8825 }
8826 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8827 memcpy(*ptr, (uint32_t*)&forMarshaling->maxCustomBorderColorSamplers, sizeof(uint32_t));
8828 *ptr += sizeof(uint32_t);
8829 }
8830
reservedmarshal_VkPhysicalDeviceCustomBorderColorFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceCustomBorderColorFeaturesEXT * forMarshaling,uint8_t ** ptr)8831 void reservedmarshal_VkPhysicalDeviceCustomBorderColorFeaturesEXT(
8832 VulkanStreamGuest* vkStream, VkStructureType rootType,
8833 const VkPhysicalDeviceCustomBorderColorFeaturesEXT* forMarshaling, uint8_t** ptr) {
8834 (void)vkStream;
8835 (void)rootType;
8836 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8837 *ptr += sizeof(VkStructureType);
8838 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8839 rootType = forMarshaling->sType;
8840 }
8841 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8842 memcpy(*ptr, (VkBool32*)&forMarshaling->customBorderColors, sizeof(VkBool32));
8843 *ptr += sizeof(VkBool32);
8844 memcpy(*ptr, (VkBool32*)&forMarshaling->customBorderColorWithoutFormat, sizeof(VkBool32));
8845 *ptr += sizeof(VkBool32);
8846 }
8847
8848 #endif
8849 #ifdef VK_EXT_graphics_pipeline_library
reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT * forMarshaling,uint8_t ** ptr)8850 void reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(
8851 VulkanStreamGuest* vkStream, VkStructureType rootType,
8852 const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT* forMarshaling, uint8_t** ptr) {
8853 (void)vkStream;
8854 (void)rootType;
8855 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8856 *ptr += sizeof(VkStructureType);
8857 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8858 rootType = forMarshaling->sType;
8859 }
8860 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8861 memcpy(*ptr, (VkBool32*)&forMarshaling->graphicsPipelineLibrary, sizeof(VkBool32));
8862 *ptr += sizeof(VkBool32);
8863 }
8864
reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT * forMarshaling,uint8_t ** ptr)8865 void reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(
8866 VulkanStreamGuest* vkStream, VkStructureType rootType,
8867 const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT* forMarshaling, uint8_t** ptr) {
8868 (void)vkStream;
8869 (void)rootType;
8870 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8871 *ptr += sizeof(VkStructureType);
8872 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8873 rootType = forMarshaling->sType;
8874 }
8875 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8876 memcpy(*ptr, (VkBool32*)&forMarshaling->graphicsPipelineLibraryFastLinking, sizeof(VkBool32));
8877 *ptr += sizeof(VkBool32);
8878 memcpy(*ptr,
8879 (VkBool32*)&forMarshaling->graphicsPipelineLibraryIndependentInterpolationDecoration,
8880 sizeof(VkBool32));
8881 *ptr += sizeof(VkBool32);
8882 }
8883
reservedmarshal_VkGraphicsPipelineLibraryCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkGraphicsPipelineLibraryCreateInfoEXT * forMarshaling,uint8_t ** ptr)8884 void reservedmarshal_VkGraphicsPipelineLibraryCreateInfoEXT(
8885 VulkanStreamGuest* vkStream, VkStructureType rootType,
8886 const VkGraphicsPipelineLibraryCreateInfoEXT* forMarshaling, uint8_t** ptr) {
8887 (void)vkStream;
8888 (void)rootType;
8889 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8890 *ptr += sizeof(VkStructureType);
8891 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8892 rootType = forMarshaling->sType;
8893 }
8894 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8895 memcpy(*ptr, (VkGraphicsPipelineLibraryFlagsEXT*)&forMarshaling->flags,
8896 sizeof(VkGraphicsPipelineLibraryFlagsEXT));
8897 *ptr += sizeof(VkGraphicsPipelineLibraryFlagsEXT);
8898 }
8899
8900 #endif
8901 #ifdef VK_EXT_ycbcr_2plane_444_formats
reservedmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT * forMarshaling,uint8_t ** ptr)8902 void reservedmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
8903 VulkanStreamGuest* vkStream, VkStructureType rootType,
8904 const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* forMarshaling, uint8_t** ptr) {
8905 (void)vkStream;
8906 (void)rootType;
8907 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8908 *ptr += sizeof(VkStructureType);
8909 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8910 rootType = forMarshaling->sType;
8911 }
8912 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8913 memcpy(*ptr, (VkBool32*)&forMarshaling->ycbcr2plane444Formats, sizeof(VkBool32));
8914 *ptr += sizeof(VkBool32);
8915 }
8916
8917 #endif
8918 #ifdef VK_EXT_image_compression_control
reservedmarshal_VkPhysicalDeviceImageCompressionControlFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceImageCompressionControlFeaturesEXT * forMarshaling,uint8_t ** ptr)8919 void reservedmarshal_VkPhysicalDeviceImageCompressionControlFeaturesEXT(
8920 VulkanStreamGuest* vkStream, VkStructureType rootType,
8921 const VkPhysicalDeviceImageCompressionControlFeaturesEXT* forMarshaling, uint8_t** ptr) {
8922 (void)vkStream;
8923 (void)rootType;
8924 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8925 *ptr += sizeof(VkStructureType);
8926 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8927 rootType = forMarshaling->sType;
8928 }
8929 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8930 memcpy(*ptr, (VkBool32*)&forMarshaling->imageCompressionControl, sizeof(VkBool32));
8931 *ptr += sizeof(VkBool32);
8932 }
8933
reservedmarshal_VkImageCompressionControlEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageCompressionControlEXT * forMarshaling,uint8_t ** ptr)8934 void reservedmarshal_VkImageCompressionControlEXT(VulkanStreamGuest* vkStream,
8935 VkStructureType rootType,
8936 const VkImageCompressionControlEXT* forMarshaling,
8937 uint8_t** ptr) {
8938 (void)vkStream;
8939 (void)rootType;
8940 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8941 *ptr += sizeof(VkStructureType);
8942 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8943 rootType = forMarshaling->sType;
8944 }
8945 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8946 memcpy(*ptr, (VkImageCompressionFlagsEXT*)&forMarshaling->flags,
8947 sizeof(VkImageCompressionFlagsEXT));
8948 *ptr += sizeof(VkImageCompressionFlagsEXT);
8949 memcpy(*ptr, (uint32_t*)&forMarshaling->compressionControlPlaneCount, sizeof(uint32_t));
8950 *ptr += sizeof(uint32_t);
8951 // WARNING PTR CHECK
8952 uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pFixedRateFlags;
8953 memcpy((*ptr), &cgen_var_0, 8);
8954 gfxstream::aemu::Stream::toBe64((uint8_t*)(*ptr));
8955 *ptr += 8;
8956 if (forMarshaling->pFixedRateFlags) {
8957 memcpy(*ptr, (VkImageCompressionFixedRateFlagsEXT*)forMarshaling->pFixedRateFlags,
8958 forMarshaling->compressionControlPlaneCount *
8959 sizeof(VkImageCompressionFixedRateFlagsEXT));
8960 *ptr += forMarshaling->compressionControlPlaneCount *
8961 sizeof(VkImageCompressionFixedRateFlagsEXT);
8962 }
8963 }
8964
reservedmarshal_VkImageCompressionPropertiesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImageCompressionPropertiesEXT * forMarshaling,uint8_t ** ptr)8965 void reservedmarshal_VkImageCompressionPropertiesEXT(
8966 VulkanStreamGuest* vkStream, VkStructureType rootType,
8967 const VkImageCompressionPropertiesEXT* forMarshaling, uint8_t** ptr) {
8968 (void)vkStream;
8969 (void)rootType;
8970 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8971 *ptr += sizeof(VkStructureType);
8972 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8973 rootType = forMarshaling->sType;
8974 }
8975 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8976 memcpy(*ptr, (VkImageCompressionFlagsEXT*)&forMarshaling->imageCompressionFlags,
8977 sizeof(VkImageCompressionFlagsEXT));
8978 *ptr += sizeof(VkImageCompressionFlagsEXT);
8979 memcpy(*ptr,
8980 (VkImageCompressionFixedRateFlagsEXT*)&forMarshaling->imageCompressionFixedRateFlags,
8981 sizeof(VkImageCompressionFixedRateFlagsEXT));
8982 *ptr += sizeof(VkImageCompressionFixedRateFlagsEXT);
8983 }
8984
8985 #endif
8986 #ifdef VK_EXT_4444_formats
reservedmarshal_VkPhysicalDevice4444FormatsFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevice4444FormatsFeaturesEXT * forMarshaling,uint8_t ** ptr)8987 void reservedmarshal_VkPhysicalDevice4444FormatsFeaturesEXT(
8988 VulkanStreamGuest* vkStream, VkStructureType rootType,
8989 const VkPhysicalDevice4444FormatsFeaturesEXT* forMarshaling, uint8_t** ptr) {
8990 (void)vkStream;
8991 (void)rootType;
8992 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
8993 *ptr += sizeof(VkStructureType);
8994 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
8995 rootType = forMarshaling->sType;
8996 }
8997 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
8998 memcpy(*ptr, (VkBool32*)&forMarshaling->formatA4R4G4B4, sizeof(VkBool32));
8999 *ptr += sizeof(VkBool32);
9000 memcpy(*ptr, (VkBool32*)&forMarshaling->formatA4B4G4R4, sizeof(VkBool32));
9001 *ptr += sizeof(VkBool32);
9002 }
9003
9004 #endif
9005 #ifdef VK_EXT_primitive_topology_list_restart
reservedmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT * forMarshaling,uint8_t ** ptr)9006 void reservedmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
9007 VulkanStreamGuest* vkStream, VkStructureType rootType,
9008 const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* forMarshaling, uint8_t** ptr) {
9009 (void)vkStream;
9010 (void)rootType;
9011 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9012 *ptr += sizeof(VkStructureType);
9013 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9014 rootType = forMarshaling->sType;
9015 }
9016 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9017 memcpy(*ptr, (VkBool32*)&forMarshaling->primitiveTopologyListRestart, sizeof(VkBool32));
9018 *ptr += sizeof(VkBool32);
9019 memcpy(*ptr, (VkBool32*)&forMarshaling->primitiveTopologyPatchListRestart, sizeof(VkBool32));
9020 *ptr += sizeof(VkBool32);
9021 }
9022
9023 #endif
9024 #ifdef VK_EXT_extended_dynamic_state2
reservedmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT * forMarshaling,uint8_t ** ptr)9025 void reservedmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
9026 VulkanStreamGuest* vkStream, VkStructureType rootType,
9027 const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* forMarshaling, uint8_t** ptr) {
9028 (void)vkStream;
9029 (void)rootType;
9030 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9031 *ptr += sizeof(VkStructureType);
9032 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9033 rootType = forMarshaling->sType;
9034 }
9035 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9036 memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState2, sizeof(VkBool32));
9037 *ptr += sizeof(VkBool32);
9038 memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState2LogicOp, sizeof(VkBool32));
9039 *ptr += sizeof(VkBool32);
9040 memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState2PatchControlPoints,
9041 sizeof(VkBool32));
9042 *ptr += sizeof(VkBool32);
9043 }
9044
9045 #endif
9046 #ifdef VK_EXT_color_write_enable
reservedmarshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceColorWriteEnableFeaturesEXT * forMarshaling,uint8_t ** ptr)9047 void reservedmarshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
9048 VulkanStreamGuest* vkStream, VkStructureType rootType,
9049 const VkPhysicalDeviceColorWriteEnableFeaturesEXT* forMarshaling, uint8_t** ptr) {
9050 (void)vkStream;
9051 (void)rootType;
9052 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9053 *ptr += sizeof(VkStructureType);
9054 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9055 rootType = forMarshaling->sType;
9056 }
9057 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9058 memcpy(*ptr, (VkBool32*)&forMarshaling->colorWriteEnable, sizeof(VkBool32));
9059 *ptr += sizeof(VkBool32);
9060 }
9061
reservedmarshal_VkPipelineColorWriteCreateInfoEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPipelineColorWriteCreateInfoEXT * forMarshaling,uint8_t ** ptr)9062 void reservedmarshal_VkPipelineColorWriteCreateInfoEXT(
9063 VulkanStreamGuest* vkStream, VkStructureType rootType,
9064 const VkPipelineColorWriteCreateInfoEXT* forMarshaling, uint8_t** ptr) {
9065 (void)vkStream;
9066 (void)rootType;
9067 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9068 *ptr += sizeof(VkStructureType);
9069 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9070 rootType = forMarshaling->sType;
9071 }
9072 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9073 memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t));
9074 *ptr += sizeof(uint32_t);
9075 memcpy(*ptr, (const VkBool32*)forMarshaling->pColorWriteEnables,
9076 forMarshaling->attachmentCount * sizeof(const VkBool32));
9077 *ptr += forMarshaling->attachmentCount * sizeof(const VkBool32);
9078 }
9079
9080 #endif
9081 #ifdef VK_GOOGLE_gfxstream
reservedmarshal_VkImportColorBufferGOOGLE(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImportColorBufferGOOGLE * forMarshaling,uint8_t ** ptr)9082 void reservedmarshal_VkImportColorBufferGOOGLE(VulkanStreamGuest* vkStream,
9083 VkStructureType rootType,
9084 const VkImportColorBufferGOOGLE* forMarshaling,
9085 uint8_t** ptr) {
9086 (void)vkStream;
9087 (void)rootType;
9088 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9089 *ptr += sizeof(VkStructureType);
9090 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9091 rootType = forMarshaling->sType;
9092 }
9093 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9094 memcpy(*ptr, (uint32_t*)&forMarshaling->colorBuffer, sizeof(uint32_t));
9095 *ptr += sizeof(uint32_t);
9096 }
9097
reservedmarshal_VkImportBufferGOOGLE(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkImportBufferGOOGLE * forMarshaling,uint8_t ** ptr)9098 void reservedmarshal_VkImportBufferGOOGLE(VulkanStreamGuest* vkStream, VkStructureType rootType,
9099 const VkImportBufferGOOGLE* forMarshaling,
9100 uint8_t** ptr) {
9101 (void)vkStream;
9102 (void)rootType;
9103 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9104 *ptr += sizeof(VkStructureType);
9105 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9106 rootType = forMarshaling->sType;
9107 }
9108 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9109 memcpy(*ptr, (uint32_t*)&forMarshaling->buffer, sizeof(uint32_t));
9110 *ptr += sizeof(uint32_t);
9111 }
9112
reservedmarshal_VkCreateBlobGOOGLE(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkCreateBlobGOOGLE * forMarshaling,uint8_t ** ptr)9113 void reservedmarshal_VkCreateBlobGOOGLE(VulkanStreamGuest* vkStream, VkStructureType rootType,
9114 const VkCreateBlobGOOGLE* forMarshaling, uint8_t** ptr) {
9115 (void)vkStream;
9116 (void)rootType;
9117 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9118 *ptr += sizeof(VkStructureType);
9119 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9120 rootType = forMarshaling->sType;
9121 }
9122 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9123 memcpy(*ptr, (uint32_t*)&forMarshaling->blobMem, sizeof(uint32_t));
9124 *ptr += sizeof(uint32_t);
9125 memcpy(*ptr, (uint32_t*)&forMarshaling->blobFlags, sizeof(uint32_t));
9126 *ptr += sizeof(uint32_t);
9127 memcpy(*ptr, (uint64_t*)&forMarshaling->blobId, sizeof(uint64_t));
9128 *ptr += sizeof(uint64_t);
9129 }
9130
9131 #endif
9132 #ifdef VK_EXT_image_compression_control_swapchain
reservedmarshal_VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(VulkanStreamGuest * vkStream,VkStructureType rootType,const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT * forMarshaling,uint8_t ** ptr)9133 void reservedmarshal_VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(
9134 VulkanStreamGuest* vkStream, VkStructureType rootType,
9135 const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT* forMarshaling,
9136 uint8_t** ptr) {
9137 (void)vkStream;
9138 (void)rootType;
9139 memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
9140 *ptr += sizeof(VkStructureType);
9141 if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) {
9142 rootType = forMarshaling->sType;
9143 }
9144 reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
9145 memcpy(*ptr, (VkBool32*)&forMarshaling->imageCompressionControlSwapchain, sizeof(VkBool32));
9146 *ptr += sizeof(VkBool32);
9147 }
9148
9149 #endif
reservedmarshal_extension_struct(VulkanStreamGuest * vkStream,VkStructureType rootType,const void * structExtension,uint8_t ** ptr)9150 void reservedmarshal_extension_struct(VulkanStreamGuest* vkStream, VkStructureType rootType,
9151 const void* structExtension, uint8_t** ptr) {
9152 VkInstanceCreateInfo* structAccess = (VkInstanceCreateInfo*)(structExtension);
9153 uint32_t currExtSize = goldfish_vk_extension_struct_size_with_stream_features(
9154 vkStream->getFeatureBits(), rootType, structExtension);
9155 if (!currExtSize && structExtension) {
9156 // unknown struct extension; skip and call on its pNext field
9157 reservedmarshal_extension_struct(vkStream, rootType, (void*)structAccess->pNext, ptr);
9158 return;
9159 } else {
9160 // known or null extension struct
9161 memcpy(*ptr, &currExtSize, sizeof(uint32_t));
9162 ;
9163 gfxstream::aemu::Stream::toBe32((uint8_t*)*ptr);
9164 *ptr += sizeof(uint32_t);
9165 if (!currExtSize) {
9166 // exit if this was a null extension struct (size == 0 in this branch)
9167 return;
9168 }
9169 }
9170 memcpy(*ptr, structExtension, sizeof(VkStructureType));
9171 *ptr += sizeof(VkStructureType);
9172 if (!structExtension) {
9173 return;
9174 }
9175 uint32_t structType = (uint32_t)goldfish_vk_struct_type(structExtension);
9176 switch (structType) {
9177 #ifdef VK_VERSION_1_0
9178 case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO: {
9179 reservedmarshal_VkShaderModuleCreateInfo(
9180 vkStream, rootType,
9181 reinterpret_cast<const VkShaderModuleCreateInfo*>(structExtension), ptr);
9182 break;
9183 }
9184 case VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO: {
9185 reservedmarshal_VkPipelineLayoutCreateInfo(
9186 vkStream, rootType,
9187 reinterpret_cast<const VkPipelineLayoutCreateInfo*>(structExtension), ptr);
9188 break;
9189 }
9190 #endif
9191 #ifdef VK_VERSION_1_1
9192 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES: {
9193 reservedmarshal_VkPhysicalDeviceSubgroupProperties(
9194 vkStream, rootType,
9195 reinterpret_cast<const VkPhysicalDeviceSubgroupProperties*>(structExtension), ptr);
9196 break;
9197 }
9198 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES: {
9199 reservedmarshal_VkPhysicalDevice16BitStorageFeatures(
9200 vkStream, rootType,
9201 reinterpret_cast<const VkPhysicalDevice16BitStorageFeatures*>(structExtension),
9202 ptr);
9203 break;
9204 }
9205 case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS: {
9206 reservedmarshal_VkMemoryDedicatedRequirements(
9207 vkStream, rootType,
9208 reinterpret_cast<const VkMemoryDedicatedRequirements*>(structExtension), ptr);
9209 break;
9210 }
9211 case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO: {
9212 reservedmarshal_VkMemoryDedicatedAllocateInfo(
9213 vkStream, rootType,
9214 reinterpret_cast<const VkMemoryDedicatedAllocateInfo*>(structExtension), ptr);
9215 break;
9216 }
9217 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO: {
9218 reservedmarshal_VkMemoryAllocateFlagsInfo(
9219 vkStream, rootType,
9220 reinterpret_cast<const VkMemoryAllocateFlagsInfo*>(structExtension), ptr);
9221 break;
9222 }
9223 case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO: {
9224 reservedmarshal_VkDeviceGroupRenderPassBeginInfo(
9225 vkStream, rootType,
9226 reinterpret_cast<const VkDeviceGroupRenderPassBeginInfo*>(structExtension), ptr);
9227 break;
9228 }
9229 case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO: {
9230 reservedmarshal_VkDeviceGroupCommandBufferBeginInfo(
9231 vkStream, rootType,
9232 reinterpret_cast<const VkDeviceGroupCommandBufferBeginInfo*>(structExtension), ptr);
9233 break;
9234 }
9235 case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO: {
9236 reservedmarshal_VkDeviceGroupSubmitInfo(
9237 vkStream, rootType,
9238 reinterpret_cast<const VkDeviceGroupSubmitInfo*>(structExtension), ptr);
9239 break;
9240 }
9241 case VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO: {
9242 reservedmarshal_VkDeviceGroupBindSparseInfo(
9243 vkStream, rootType,
9244 reinterpret_cast<const VkDeviceGroupBindSparseInfo*>(structExtension), ptr);
9245 break;
9246 }
9247 case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO: {
9248 reservedmarshal_VkBindBufferMemoryDeviceGroupInfo(
9249 vkStream, rootType,
9250 reinterpret_cast<const VkBindBufferMemoryDeviceGroupInfo*>(structExtension), ptr);
9251 break;
9252 }
9253 case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO: {
9254 reservedmarshal_VkBindImageMemoryDeviceGroupInfo(
9255 vkStream, rootType,
9256 reinterpret_cast<const VkBindImageMemoryDeviceGroupInfo*>(structExtension), ptr);
9257 break;
9258 }
9259 case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO: {
9260 reservedmarshal_VkDeviceGroupDeviceCreateInfo(
9261 vkStream, rootType,
9262 reinterpret_cast<const VkDeviceGroupDeviceCreateInfo*>(structExtension), ptr);
9263 break;
9264 }
9265 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2: {
9266 reservedmarshal_VkPhysicalDeviceFeatures2(
9267 vkStream, rootType,
9268 reinterpret_cast<const VkPhysicalDeviceFeatures2*>(structExtension), ptr);
9269 break;
9270 }
9271 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES: {
9272 reservedmarshal_VkPhysicalDevicePointClippingProperties(
9273 vkStream, rootType,
9274 reinterpret_cast<const VkPhysicalDevicePointClippingProperties*>(structExtension),
9275 ptr);
9276 break;
9277 }
9278 case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO: {
9279 reservedmarshal_VkRenderPassInputAttachmentAspectCreateInfo(
9280 vkStream, rootType,
9281 reinterpret_cast<const VkRenderPassInputAttachmentAspectCreateInfo*>(
9282 structExtension),
9283 ptr);
9284 break;
9285 }
9286 case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO: {
9287 reservedmarshal_VkImageViewUsageCreateInfo(
9288 vkStream, rootType,
9289 reinterpret_cast<const VkImageViewUsageCreateInfo*>(structExtension), ptr);
9290 break;
9291 }
9292 case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO: {
9293 reservedmarshal_VkPipelineTessellationDomainOriginStateCreateInfo(
9294 vkStream, rootType,
9295 reinterpret_cast<const VkPipelineTessellationDomainOriginStateCreateInfo*>(
9296 structExtension),
9297 ptr);
9298 break;
9299 }
9300 case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO: {
9301 reservedmarshal_VkRenderPassMultiviewCreateInfo(
9302 vkStream, rootType,
9303 reinterpret_cast<const VkRenderPassMultiviewCreateInfo*>(structExtension), ptr);
9304 break;
9305 }
9306 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES: {
9307 reservedmarshal_VkPhysicalDeviceMultiviewFeatures(
9308 vkStream, rootType,
9309 reinterpret_cast<const VkPhysicalDeviceMultiviewFeatures*>(structExtension), ptr);
9310 break;
9311 }
9312 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES: {
9313 reservedmarshal_VkPhysicalDeviceMultiviewProperties(
9314 vkStream, rootType,
9315 reinterpret_cast<const VkPhysicalDeviceMultiviewProperties*>(structExtension), ptr);
9316 break;
9317 }
9318 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES: {
9319 reservedmarshal_VkPhysicalDeviceVariablePointersFeatures(
9320 vkStream, rootType,
9321 reinterpret_cast<const VkPhysicalDeviceVariablePointersFeatures*>(structExtension),
9322 ptr);
9323 break;
9324 }
9325 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES: {
9326 reservedmarshal_VkPhysicalDeviceProtectedMemoryFeatures(
9327 vkStream, rootType,
9328 reinterpret_cast<const VkPhysicalDeviceProtectedMemoryFeatures*>(structExtension),
9329 ptr);
9330 break;
9331 }
9332 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES: {
9333 reservedmarshal_VkPhysicalDeviceProtectedMemoryProperties(
9334 vkStream, rootType,
9335 reinterpret_cast<const VkPhysicalDeviceProtectedMemoryProperties*>(structExtension),
9336 ptr);
9337 break;
9338 }
9339 case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO: {
9340 reservedmarshal_VkProtectedSubmitInfo(
9341 vkStream, rootType, reinterpret_cast<const VkProtectedSubmitInfo*>(structExtension),
9342 ptr);
9343 break;
9344 }
9345 case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO: {
9346 reservedmarshal_VkSamplerYcbcrConversionInfo(
9347 vkStream, rootType,
9348 reinterpret_cast<const VkSamplerYcbcrConversionInfo*>(structExtension), ptr);
9349 break;
9350 }
9351 case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO: {
9352 reservedmarshal_VkBindImagePlaneMemoryInfo(
9353 vkStream, rootType,
9354 reinterpret_cast<const VkBindImagePlaneMemoryInfo*>(structExtension), ptr);
9355 break;
9356 }
9357 case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO: {
9358 reservedmarshal_VkImagePlaneMemoryRequirementsInfo(
9359 vkStream, rootType,
9360 reinterpret_cast<const VkImagePlaneMemoryRequirementsInfo*>(structExtension), ptr);
9361 break;
9362 }
9363 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES: {
9364 reservedmarshal_VkPhysicalDeviceSamplerYcbcrConversionFeatures(
9365 vkStream, rootType,
9366 reinterpret_cast<const VkPhysicalDeviceSamplerYcbcrConversionFeatures*>(
9367 structExtension),
9368 ptr);
9369 break;
9370 }
9371 case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES: {
9372 reservedmarshal_VkSamplerYcbcrConversionImageFormatProperties(
9373 vkStream, rootType,
9374 reinterpret_cast<const VkSamplerYcbcrConversionImageFormatProperties*>(
9375 structExtension),
9376 ptr);
9377 break;
9378 }
9379 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO: {
9380 reservedmarshal_VkPhysicalDeviceExternalImageFormatInfo(
9381 vkStream, rootType,
9382 reinterpret_cast<const VkPhysicalDeviceExternalImageFormatInfo*>(structExtension),
9383 ptr);
9384 break;
9385 }
9386 case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES: {
9387 reservedmarshal_VkExternalImageFormatProperties(
9388 vkStream, rootType,
9389 reinterpret_cast<const VkExternalImageFormatProperties*>(structExtension), ptr);
9390 break;
9391 }
9392 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES: {
9393 reservedmarshal_VkPhysicalDeviceIDProperties(
9394 vkStream, rootType,
9395 reinterpret_cast<const VkPhysicalDeviceIDProperties*>(structExtension), ptr);
9396 break;
9397 }
9398 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO: {
9399 reservedmarshal_VkExternalMemoryImageCreateInfo(
9400 vkStream, rootType,
9401 reinterpret_cast<const VkExternalMemoryImageCreateInfo*>(structExtension), ptr);
9402 break;
9403 }
9404 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO: {
9405 reservedmarshal_VkExternalMemoryBufferCreateInfo(
9406 vkStream, rootType,
9407 reinterpret_cast<const VkExternalMemoryBufferCreateInfo*>(structExtension), ptr);
9408 break;
9409 }
9410 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO: {
9411 reservedmarshal_VkExportMemoryAllocateInfo(
9412 vkStream, rootType,
9413 reinterpret_cast<const VkExportMemoryAllocateInfo*>(structExtension), ptr);
9414 break;
9415 }
9416 case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO: {
9417 reservedmarshal_VkExportFenceCreateInfo(
9418 vkStream, rootType,
9419 reinterpret_cast<const VkExportFenceCreateInfo*>(structExtension), ptr);
9420 break;
9421 }
9422 case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO: {
9423 reservedmarshal_VkExportSemaphoreCreateInfo(
9424 vkStream, rootType,
9425 reinterpret_cast<const VkExportSemaphoreCreateInfo*>(structExtension), ptr);
9426 break;
9427 }
9428 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES: {
9429 reservedmarshal_VkPhysicalDeviceMaintenance3Properties(
9430 vkStream, rootType,
9431 reinterpret_cast<const VkPhysicalDeviceMaintenance3Properties*>(structExtension),
9432 ptr);
9433 break;
9434 }
9435 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES: {
9436 reservedmarshal_VkPhysicalDeviceShaderDrawParametersFeatures(
9437 vkStream, rootType,
9438 reinterpret_cast<const VkPhysicalDeviceShaderDrawParametersFeatures*>(
9439 structExtension),
9440 ptr);
9441 break;
9442 }
9443 #endif
9444 #ifdef VK_VERSION_1_2
9445 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES: {
9446 reservedmarshal_VkPhysicalDeviceVulkan11Features(
9447 vkStream, rootType,
9448 reinterpret_cast<const VkPhysicalDeviceVulkan11Features*>(structExtension), ptr);
9449 break;
9450 }
9451 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES: {
9452 reservedmarshal_VkPhysicalDeviceVulkan11Properties(
9453 vkStream, rootType,
9454 reinterpret_cast<const VkPhysicalDeviceVulkan11Properties*>(structExtension), ptr);
9455 break;
9456 }
9457 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES: {
9458 reservedmarshal_VkPhysicalDeviceVulkan12Features(
9459 vkStream, rootType,
9460 reinterpret_cast<const VkPhysicalDeviceVulkan12Features*>(structExtension), ptr);
9461 break;
9462 }
9463 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES: {
9464 reservedmarshal_VkPhysicalDeviceVulkan12Properties(
9465 vkStream, rootType,
9466 reinterpret_cast<const VkPhysicalDeviceVulkan12Properties*>(structExtension), ptr);
9467 break;
9468 }
9469 case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO: {
9470 reservedmarshal_VkImageFormatListCreateInfo(
9471 vkStream, rootType,
9472 reinterpret_cast<const VkImageFormatListCreateInfo*>(structExtension), ptr);
9473 break;
9474 }
9475 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES: {
9476 reservedmarshal_VkPhysicalDevice8BitStorageFeatures(
9477 vkStream, rootType,
9478 reinterpret_cast<const VkPhysicalDevice8BitStorageFeatures*>(structExtension), ptr);
9479 break;
9480 }
9481 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES: {
9482 reservedmarshal_VkPhysicalDeviceDriverProperties(
9483 vkStream, rootType,
9484 reinterpret_cast<const VkPhysicalDeviceDriverProperties*>(structExtension), ptr);
9485 break;
9486 }
9487 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES: {
9488 reservedmarshal_VkPhysicalDeviceShaderAtomicInt64Features(
9489 vkStream, rootType,
9490 reinterpret_cast<const VkPhysicalDeviceShaderAtomicInt64Features*>(structExtension),
9491 ptr);
9492 break;
9493 }
9494 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES: {
9495 reservedmarshal_VkPhysicalDeviceShaderFloat16Int8Features(
9496 vkStream, rootType,
9497 reinterpret_cast<const VkPhysicalDeviceShaderFloat16Int8Features*>(structExtension),
9498 ptr);
9499 break;
9500 }
9501 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES: {
9502 reservedmarshal_VkPhysicalDeviceFloatControlsProperties(
9503 vkStream, rootType,
9504 reinterpret_cast<const VkPhysicalDeviceFloatControlsProperties*>(structExtension),
9505 ptr);
9506 break;
9507 }
9508 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO: {
9509 reservedmarshal_VkDescriptorSetLayoutBindingFlagsCreateInfo(
9510 vkStream, rootType,
9511 reinterpret_cast<const VkDescriptorSetLayoutBindingFlagsCreateInfo*>(
9512 structExtension),
9513 ptr);
9514 break;
9515 }
9516 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES: {
9517 reservedmarshal_VkPhysicalDeviceDescriptorIndexingFeatures(
9518 vkStream, rootType,
9519 reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingFeatures*>(
9520 structExtension),
9521 ptr);
9522 break;
9523 }
9524 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES: {
9525 reservedmarshal_VkPhysicalDeviceDescriptorIndexingProperties(
9526 vkStream, rootType,
9527 reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingProperties*>(
9528 structExtension),
9529 ptr);
9530 break;
9531 }
9532 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO: {
9533 reservedmarshal_VkDescriptorSetVariableDescriptorCountAllocateInfo(
9534 vkStream, rootType,
9535 reinterpret_cast<const VkDescriptorSetVariableDescriptorCountAllocateInfo*>(
9536 structExtension),
9537 ptr);
9538 break;
9539 }
9540 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT: {
9541 reservedmarshal_VkDescriptorSetVariableDescriptorCountLayoutSupport(
9542 vkStream, rootType,
9543 reinterpret_cast<const VkDescriptorSetVariableDescriptorCountLayoutSupport*>(
9544 structExtension),
9545 ptr);
9546 break;
9547 }
9548 case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE: {
9549 reservedmarshal_VkSubpassDescriptionDepthStencilResolve(
9550 vkStream, rootType,
9551 reinterpret_cast<const VkSubpassDescriptionDepthStencilResolve*>(structExtension),
9552 ptr);
9553 break;
9554 }
9555 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES: {
9556 reservedmarshal_VkPhysicalDeviceDepthStencilResolveProperties(
9557 vkStream, rootType,
9558 reinterpret_cast<const VkPhysicalDeviceDepthStencilResolveProperties*>(
9559 structExtension),
9560 ptr);
9561 break;
9562 }
9563 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES: {
9564 reservedmarshal_VkPhysicalDeviceScalarBlockLayoutFeatures(
9565 vkStream, rootType,
9566 reinterpret_cast<const VkPhysicalDeviceScalarBlockLayoutFeatures*>(structExtension),
9567 ptr);
9568 break;
9569 }
9570 case VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO: {
9571 reservedmarshal_VkImageStencilUsageCreateInfo(
9572 vkStream, rootType,
9573 reinterpret_cast<const VkImageStencilUsageCreateInfo*>(structExtension), ptr);
9574 break;
9575 }
9576 case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO: {
9577 reservedmarshal_VkSamplerReductionModeCreateInfo(
9578 vkStream, rootType,
9579 reinterpret_cast<const VkSamplerReductionModeCreateInfo*>(structExtension), ptr);
9580 break;
9581 }
9582 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES: {
9583 reservedmarshal_VkPhysicalDeviceSamplerFilterMinmaxProperties(
9584 vkStream, rootType,
9585 reinterpret_cast<const VkPhysicalDeviceSamplerFilterMinmaxProperties*>(
9586 structExtension),
9587 ptr);
9588 break;
9589 }
9590 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES: {
9591 reservedmarshal_VkPhysicalDeviceVulkanMemoryModelFeatures(
9592 vkStream, rootType,
9593 reinterpret_cast<const VkPhysicalDeviceVulkanMemoryModelFeatures*>(structExtension),
9594 ptr);
9595 break;
9596 }
9597 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES: {
9598 reservedmarshal_VkPhysicalDeviceImagelessFramebufferFeatures(
9599 vkStream, rootType,
9600 reinterpret_cast<const VkPhysicalDeviceImagelessFramebufferFeatures*>(
9601 structExtension),
9602 ptr);
9603 break;
9604 }
9605 case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO: {
9606 reservedmarshal_VkFramebufferAttachmentsCreateInfo(
9607 vkStream, rootType,
9608 reinterpret_cast<const VkFramebufferAttachmentsCreateInfo*>(structExtension), ptr);
9609 break;
9610 }
9611 case VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO: {
9612 reservedmarshal_VkRenderPassAttachmentBeginInfo(
9613 vkStream, rootType,
9614 reinterpret_cast<const VkRenderPassAttachmentBeginInfo*>(structExtension), ptr);
9615 break;
9616 }
9617 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES: {
9618 reservedmarshal_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(
9619 vkStream, rootType,
9620 reinterpret_cast<const VkPhysicalDeviceUniformBufferStandardLayoutFeatures*>(
9621 structExtension),
9622 ptr);
9623 break;
9624 }
9625 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES: {
9626 reservedmarshal_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(
9627 vkStream, rootType,
9628 reinterpret_cast<const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*>(
9629 structExtension),
9630 ptr);
9631 break;
9632 }
9633 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES: {
9634 reservedmarshal_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(
9635 vkStream, rootType,
9636 reinterpret_cast<const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*>(
9637 structExtension),
9638 ptr);
9639 break;
9640 }
9641 case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT: {
9642 reservedmarshal_VkAttachmentReferenceStencilLayout(
9643 vkStream, rootType,
9644 reinterpret_cast<const VkAttachmentReferenceStencilLayout*>(structExtension), ptr);
9645 break;
9646 }
9647 case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT: {
9648 reservedmarshal_VkAttachmentDescriptionStencilLayout(
9649 vkStream, rootType,
9650 reinterpret_cast<const VkAttachmentDescriptionStencilLayout*>(structExtension),
9651 ptr);
9652 break;
9653 }
9654 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES: {
9655 reservedmarshal_VkPhysicalDeviceHostQueryResetFeatures(
9656 vkStream, rootType,
9657 reinterpret_cast<const VkPhysicalDeviceHostQueryResetFeatures*>(structExtension),
9658 ptr);
9659 break;
9660 }
9661 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES: {
9662 reservedmarshal_VkPhysicalDeviceTimelineSemaphoreFeatures(
9663 vkStream, rootType,
9664 reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreFeatures*>(structExtension),
9665 ptr);
9666 break;
9667 }
9668 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES: {
9669 reservedmarshal_VkPhysicalDeviceTimelineSemaphoreProperties(
9670 vkStream, rootType,
9671 reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreProperties*>(
9672 structExtension),
9673 ptr);
9674 break;
9675 }
9676 case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO: {
9677 reservedmarshal_VkSemaphoreTypeCreateInfo(
9678 vkStream, rootType,
9679 reinterpret_cast<const VkSemaphoreTypeCreateInfo*>(structExtension), ptr);
9680 break;
9681 }
9682 case VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO: {
9683 reservedmarshal_VkTimelineSemaphoreSubmitInfo(
9684 vkStream, rootType,
9685 reinterpret_cast<const VkTimelineSemaphoreSubmitInfo*>(structExtension), ptr);
9686 break;
9687 }
9688 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES: {
9689 reservedmarshal_VkPhysicalDeviceBufferDeviceAddressFeatures(
9690 vkStream, rootType,
9691 reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeatures*>(
9692 structExtension),
9693 ptr);
9694 break;
9695 }
9696 case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO: {
9697 reservedmarshal_VkBufferOpaqueCaptureAddressCreateInfo(
9698 vkStream, rootType,
9699 reinterpret_cast<const VkBufferOpaqueCaptureAddressCreateInfo*>(structExtension),
9700 ptr);
9701 break;
9702 }
9703 case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO: {
9704 reservedmarshal_VkMemoryOpaqueCaptureAddressAllocateInfo(
9705 vkStream, rootType,
9706 reinterpret_cast<const VkMemoryOpaqueCaptureAddressAllocateInfo*>(structExtension),
9707 ptr);
9708 break;
9709 }
9710 #endif
9711 #ifdef VK_VERSION_1_3
9712 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES: {
9713 reservedmarshal_VkPhysicalDeviceVulkan13Features(
9714 vkStream, rootType,
9715 reinterpret_cast<const VkPhysicalDeviceVulkan13Features*>(structExtension), ptr);
9716 break;
9717 }
9718 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES: {
9719 reservedmarshal_VkPhysicalDeviceVulkan13Properties(
9720 vkStream, rootType,
9721 reinterpret_cast<const VkPhysicalDeviceVulkan13Properties*>(structExtension), ptr);
9722 break;
9723 }
9724 case VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO: {
9725 reservedmarshal_VkPipelineCreationFeedbackCreateInfo(
9726 vkStream, rootType,
9727 reinterpret_cast<const VkPipelineCreationFeedbackCreateInfo*>(structExtension),
9728 ptr);
9729 break;
9730 }
9731 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES: {
9732 reservedmarshal_VkPhysicalDeviceShaderTerminateInvocationFeatures(
9733 vkStream, rootType,
9734 reinterpret_cast<const VkPhysicalDeviceShaderTerminateInvocationFeatures*>(
9735 structExtension),
9736 ptr);
9737 break;
9738 }
9739 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES: {
9740 reservedmarshal_VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures(
9741 vkStream, rootType,
9742 reinterpret_cast<const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures*>(
9743 structExtension),
9744 ptr);
9745 break;
9746 }
9747 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES: {
9748 reservedmarshal_VkPhysicalDevicePrivateDataFeatures(
9749 vkStream, rootType,
9750 reinterpret_cast<const VkPhysicalDevicePrivateDataFeatures*>(structExtension), ptr);
9751 break;
9752 }
9753 case VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO: {
9754 reservedmarshal_VkDevicePrivateDataCreateInfo(
9755 vkStream, rootType,
9756 reinterpret_cast<const VkDevicePrivateDataCreateInfo*>(structExtension), ptr);
9757 break;
9758 }
9759 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES: {
9760 reservedmarshal_VkPhysicalDevicePipelineCreationCacheControlFeatures(
9761 vkStream, rootType,
9762 reinterpret_cast<const VkPhysicalDevicePipelineCreationCacheControlFeatures*>(
9763 structExtension),
9764 ptr);
9765 break;
9766 }
9767 case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2: {
9768 reservedmarshal_VkMemoryBarrier2(
9769 vkStream, rootType, reinterpret_cast<const VkMemoryBarrier2*>(structExtension),
9770 ptr);
9771 break;
9772 }
9773 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES: {
9774 reservedmarshal_VkPhysicalDeviceSynchronization2Features(
9775 vkStream, rootType,
9776 reinterpret_cast<const VkPhysicalDeviceSynchronization2Features*>(structExtension),
9777 ptr);
9778 break;
9779 }
9780 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES: {
9781 reservedmarshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures(
9782 vkStream, rootType,
9783 reinterpret_cast<const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures*>(
9784 structExtension),
9785 ptr);
9786 break;
9787 }
9788 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES: {
9789 reservedmarshal_VkPhysicalDeviceImageRobustnessFeatures(
9790 vkStream, rootType,
9791 reinterpret_cast<const VkPhysicalDeviceImageRobustnessFeatures*>(structExtension),
9792 ptr);
9793 break;
9794 }
9795 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES: {
9796 reservedmarshal_VkPhysicalDeviceSubgroupSizeControlFeatures(
9797 vkStream, rootType,
9798 reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlFeatures*>(
9799 structExtension),
9800 ptr);
9801 break;
9802 }
9803 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES: {
9804 reservedmarshal_VkPhysicalDeviceSubgroupSizeControlProperties(
9805 vkStream, rootType,
9806 reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlProperties*>(
9807 structExtension),
9808 ptr);
9809 break;
9810 }
9811 case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO: {
9812 reservedmarshal_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo(
9813 vkStream, rootType,
9814 reinterpret_cast<const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo*>(
9815 structExtension),
9816 ptr);
9817 break;
9818 }
9819 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES: {
9820 reservedmarshal_VkPhysicalDeviceInlineUniformBlockFeatures(
9821 vkStream, rootType,
9822 reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockFeatures*>(
9823 structExtension),
9824 ptr);
9825 break;
9826 }
9827 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES: {
9828 reservedmarshal_VkPhysicalDeviceInlineUniformBlockProperties(
9829 vkStream, rootType,
9830 reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockProperties*>(
9831 structExtension),
9832 ptr);
9833 break;
9834 }
9835 case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK: {
9836 reservedmarshal_VkWriteDescriptorSetInlineUniformBlock(
9837 vkStream, rootType,
9838 reinterpret_cast<const VkWriteDescriptorSetInlineUniformBlock*>(structExtension),
9839 ptr);
9840 break;
9841 }
9842 case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO: {
9843 reservedmarshal_VkDescriptorPoolInlineUniformBlockCreateInfo(
9844 vkStream, rootType,
9845 reinterpret_cast<const VkDescriptorPoolInlineUniformBlockCreateInfo*>(
9846 structExtension),
9847 ptr);
9848 break;
9849 }
9850 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES: {
9851 reservedmarshal_VkPhysicalDeviceTextureCompressionASTCHDRFeatures(
9852 vkStream, rootType,
9853 reinterpret_cast<const VkPhysicalDeviceTextureCompressionASTCHDRFeatures*>(
9854 structExtension),
9855 ptr);
9856 break;
9857 }
9858 case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO: {
9859 reservedmarshal_VkPipelineRenderingCreateInfo(
9860 vkStream, rootType,
9861 reinterpret_cast<const VkPipelineRenderingCreateInfo*>(structExtension), ptr);
9862 break;
9863 }
9864 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES: {
9865 reservedmarshal_VkPhysicalDeviceDynamicRenderingFeatures(
9866 vkStream, rootType,
9867 reinterpret_cast<const VkPhysicalDeviceDynamicRenderingFeatures*>(structExtension),
9868 ptr);
9869 break;
9870 }
9871 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO: {
9872 reservedmarshal_VkCommandBufferInheritanceRenderingInfo(
9873 vkStream, rootType,
9874 reinterpret_cast<const VkCommandBufferInheritanceRenderingInfo*>(structExtension),
9875 ptr);
9876 break;
9877 }
9878 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES: {
9879 reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductFeatures(
9880 vkStream, rootType,
9881 reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductFeatures*>(
9882 structExtension),
9883 ptr);
9884 break;
9885 }
9886 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES: {
9887 reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductProperties(
9888 vkStream, rootType,
9889 reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductProperties*>(
9890 structExtension),
9891 ptr);
9892 break;
9893 }
9894 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES: {
9895 reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentProperties(
9896 vkStream, rootType,
9897 reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentProperties*>(
9898 structExtension),
9899 ptr);
9900 break;
9901 }
9902 case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3: {
9903 reservedmarshal_VkFormatProperties3(
9904 vkStream, rootType, reinterpret_cast<const VkFormatProperties3*>(structExtension),
9905 ptr);
9906 break;
9907 }
9908 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES: {
9909 reservedmarshal_VkPhysicalDeviceMaintenance4Features(
9910 vkStream, rootType,
9911 reinterpret_cast<const VkPhysicalDeviceMaintenance4Features*>(structExtension),
9912 ptr);
9913 break;
9914 }
9915 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES: {
9916 reservedmarshal_VkPhysicalDeviceMaintenance4Properties(
9917 vkStream, rootType,
9918 reinterpret_cast<const VkPhysicalDeviceMaintenance4Properties*>(structExtension),
9919 ptr);
9920 break;
9921 }
9922 #endif
9923 #ifdef VK_KHR_dynamic_rendering
9924 case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR: {
9925 reservedmarshal_VkRenderingFragmentShadingRateAttachmentInfoKHR(
9926 vkStream, rootType,
9927 reinterpret_cast<const VkRenderingFragmentShadingRateAttachmentInfoKHR*>(
9928 structExtension),
9929 ptr);
9930 break;
9931 }
9932 case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT: {
9933 reservedmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(
9934 vkStream, rootType,
9935 reinterpret_cast<const VkRenderingFragmentDensityMapAttachmentInfoEXT*>(
9936 structExtension),
9937 ptr);
9938 break;
9939 }
9940 case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD: {
9941 reservedmarshal_VkAttachmentSampleCountInfoAMD(
9942 vkStream, rootType,
9943 reinterpret_cast<const VkAttachmentSampleCountInfoAMD*>(structExtension), ptr);
9944 break;
9945 }
9946 case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX: {
9947 reservedmarshal_VkMultiviewPerViewAttributesInfoNVX(
9948 vkStream, rootType,
9949 reinterpret_cast<const VkMultiviewPerViewAttributesInfoNVX*>(structExtension), ptr);
9950 break;
9951 }
9952 #endif
9953 #ifdef VK_KHR_incremental_present
9954 case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR: {
9955 reservedmarshal_VkPresentRegionsKHR(
9956 vkStream, rootType, reinterpret_cast<const VkPresentRegionsKHR*>(structExtension),
9957 ptr);
9958 break;
9959 }
9960 #endif
9961 #ifdef VK_KHR_pipeline_executable_properties
9962 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR: {
9963 reservedmarshal_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(
9964 vkStream, rootType,
9965 reinterpret_cast<const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*>(
9966 structExtension),
9967 ptr);
9968 break;
9969 }
9970 #endif
9971 #ifdef VK_KHR_synchronization2
9972 case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV: {
9973 reservedmarshal_VkQueueFamilyCheckpointProperties2NV(
9974 vkStream, rootType,
9975 reinterpret_cast<const VkQueueFamilyCheckpointProperties2NV*>(structExtension),
9976 ptr);
9977 break;
9978 }
9979 #endif
9980 #ifdef VK_KHR_maintenance5
9981 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHR: {
9982 reservedmarshal_VkPhysicalDeviceMaintenance5FeaturesKHR(
9983 vkStream, rootType,
9984 reinterpret_cast<const VkPhysicalDeviceMaintenance5FeaturesKHR*>(structExtension),
9985 ptr);
9986 break;
9987 }
9988 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR: {
9989 reservedmarshal_VkPhysicalDeviceMaintenance5PropertiesKHR(
9990 vkStream, rootType,
9991 reinterpret_cast<const VkPhysicalDeviceMaintenance5PropertiesKHR*>(structExtension),
9992 ptr);
9993 break;
9994 }
9995 case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR: {
9996 reservedmarshal_VkPipelineCreateFlags2CreateInfoKHR(
9997 vkStream, rootType,
9998 reinterpret_cast<const VkPipelineCreateFlags2CreateInfoKHR*>(structExtension), ptr);
9999 break;
10000 }
10001 case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR: {
10002 reservedmarshal_VkBufferUsageFlags2CreateInfoKHR(
10003 vkStream, rootType,
10004 reinterpret_cast<const VkBufferUsageFlags2CreateInfoKHR*>(structExtension), ptr);
10005 break;
10006 }
10007 #endif
10008 #ifdef VK_KHR_line_rasterization
10009 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_KHR: {
10010 reservedmarshal_VkPhysicalDeviceLineRasterizationFeaturesKHR(
10011 vkStream, rootType,
10012 reinterpret_cast<const VkPhysicalDeviceLineRasterizationFeaturesKHR*>(
10013 structExtension),
10014 ptr);
10015 break;
10016 }
10017 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_KHR: {
10018 reservedmarshal_VkPhysicalDeviceLineRasterizationPropertiesKHR(
10019 vkStream, rootType,
10020 reinterpret_cast<const VkPhysicalDeviceLineRasterizationPropertiesKHR*>(
10021 structExtension),
10022 ptr);
10023 break;
10024 }
10025 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_KHR: {
10026 reservedmarshal_VkPipelineRasterizationLineStateCreateInfoKHR(
10027 vkStream, rootType,
10028 reinterpret_cast<const VkPipelineRasterizationLineStateCreateInfoKHR*>(
10029 structExtension),
10030 ptr);
10031 break;
10032 }
10033 #endif
10034 #ifdef VK_ANDROID_native_buffer
10035 case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID: {
10036 reservedmarshal_VkNativeBufferANDROID(
10037 vkStream, rootType, reinterpret_cast<const VkNativeBufferANDROID*>(structExtension),
10038 ptr);
10039 break;
10040 }
10041 #endif
10042 #ifdef VK_EXT_transform_feedback
10043 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT: {
10044 reservedmarshal_VkPhysicalDeviceTransformFeedbackFeaturesEXT(
10045 vkStream, rootType,
10046 reinterpret_cast<const VkPhysicalDeviceTransformFeedbackFeaturesEXT*>(
10047 structExtension),
10048 ptr);
10049 break;
10050 }
10051 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT: {
10052 reservedmarshal_VkPhysicalDeviceTransformFeedbackPropertiesEXT(
10053 vkStream, rootType,
10054 reinterpret_cast<const VkPhysicalDeviceTransformFeedbackPropertiesEXT*>(
10055 structExtension),
10056 ptr);
10057 break;
10058 }
10059 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT: {
10060 reservedmarshal_VkPipelineRasterizationStateStreamCreateInfoEXT(
10061 vkStream, rootType,
10062 reinterpret_cast<const VkPipelineRasterizationStateStreamCreateInfoEXT*>(
10063 structExtension),
10064 ptr);
10065 break;
10066 }
10067 #endif
10068 #ifdef VK_EXT_depth_clip_enable
10069 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT: {
10070 reservedmarshal_VkPhysicalDeviceDepthClipEnableFeaturesEXT(
10071 vkStream, rootType,
10072 reinterpret_cast<const VkPhysicalDeviceDepthClipEnableFeaturesEXT*>(
10073 structExtension),
10074 ptr);
10075 break;
10076 }
10077 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT: {
10078 reservedmarshal_VkPipelineRasterizationDepthClipStateCreateInfoEXT(
10079 vkStream, rootType,
10080 reinterpret_cast<const VkPipelineRasterizationDepthClipStateCreateInfoEXT*>(
10081 structExtension),
10082 ptr);
10083 break;
10084 }
10085 #endif
10086 #ifdef VK_EXT_image_drm_format_modifier
10087 case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT: {
10088 reservedmarshal_VkDrmFormatModifierPropertiesListEXT(
10089 vkStream, rootType,
10090 reinterpret_cast<const VkDrmFormatModifierPropertiesListEXT*>(structExtension),
10091 ptr);
10092 break;
10093 }
10094 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT: {
10095 reservedmarshal_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(
10096 vkStream, rootType,
10097 reinterpret_cast<const VkPhysicalDeviceImageDrmFormatModifierInfoEXT*>(
10098 structExtension),
10099 ptr);
10100 break;
10101 }
10102 case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT: {
10103 reservedmarshal_VkImageDrmFormatModifierListCreateInfoEXT(
10104 vkStream, rootType,
10105 reinterpret_cast<const VkImageDrmFormatModifierListCreateInfoEXT*>(structExtension),
10106 ptr);
10107 break;
10108 }
10109 case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT: {
10110 reservedmarshal_VkImageDrmFormatModifierExplicitCreateInfoEXT(
10111 vkStream, rootType,
10112 reinterpret_cast<const VkImageDrmFormatModifierExplicitCreateInfoEXT*>(
10113 structExtension),
10114 ptr);
10115 break;
10116 }
10117 case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT: {
10118 reservedmarshal_VkDrmFormatModifierPropertiesList2EXT(
10119 vkStream, rootType,
10120 reinterpret_cast<const VkDrmFormatModifierPropertiesList2EXT*>(structExtension),
10121 ptr);
10122 break;
10123 }
10124 #endif
10125 #ifdef VK_EXT_vertex_attribute_divisor
10126 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT: {
10127 reservedmarshal_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(
10128 vkStream, rootType,
10129 reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*>(
10130 structExtension),
10131 ptr);
10132 break;
10133 }
10134 #endif
10135 #ifdef VK_EXT_fragment_density_map
10136 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT: {
10137 switch (rootType) {
10138 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2: {
10139 reservedmarshal_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(
10140 vkStream, rootType,
10141 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapFeaturesEXT*>(
10142 structExtension),
10143 ptr);
10144 break;
10145 }
10146 case VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO: {
10147 reservedmarshal_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(
10148 vkStream, rootType,
10149 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapFeaturesEXT*>(
10150 structExtension),
10151 ptr);
10152 break;
10153 }
10154 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO: {
10155 reservedmarshal_VkImportColorBufferGOOGLE(
10156 vkStream, rootType,
10157 reinterpret_cast<const VkImportColorBufferGOOGLE*>(structExtension), ptr);
10158 break;
10159 }
10160 default: {
10161 reservedmarshal_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(
10162 vkStream, rootType,
10163 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapFeaturesEXT*>(
10164 structExtension),
10165 ptr);
10166 break;
10167 }
10168 }
10169 break;
10170 }
10171 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT: {
10172 switch (rootType) {
10173 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2: {
10174 reservedmarshal_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(
10175 vkStream, rootType,
10176 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapPropertiesEXT*>(
10177 structExtension),
10178 ptr);
10179 break;
10180 }
10181 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO: {
10182 reservedmarshal_VkCreateBlobGOOGLE(
10183 vkStream, rootType,
10184 reinterpret_cast<const VkCreateBlobGOOGLE*>(structExtension), ptr);
10185 break;
10186 }
10187 default: {
10188 reservedmarshal_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(
10189 vkStream, rootType,
10190 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapPropertiesEXT*>(
10191 structExtension),
10192 ptr);
10193 break;
10194 }
10195 }
10196 break;
10197 }
10198 case VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT: {
10199 switch (rootType) {
10200 case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO: {
10201 reservedmarshal_VkRenderPassFragmentDensityMapCreateInfoEXT(
10202 vkStream, rootType,
10203 reinterpret_cast<const VkRenderPassFragmentDensityMapCreateInfoEXT*>(
10204 structExtension),
10205 ptr);
10206 break;
10207 }
10208 case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2: {
10209 reservedmarshal_VkRenderPassFragmentDensityMapCreateInfoEXT(
10210 vkStream, rootType,
10211 reinterpret_cast<const VkRenderPassFragmentDensityMapCreateInfoEXT*>(
10212 structExtension),
10213 ptr);
10214 break;
10215 }
10216 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO: {
10217 reservedmarshal_VkImportBufferGOOGLE(
10218 vkStream, rootType,
10219 reinterpret_cast<const VkImportBufferGOOGLE*>(structExtension), ptr);
10220 break;
10221 }
10222 default: {
10223 reservedmarshal_VkRenderPassFragmentDensityMapCreateInfoEXT(
10224 vkStream, rootType,
10225 reinterpret_cast<const VkRenderPassFragmentDensityMapCreateInfoEXT*>(
10226 structExtension),
10227 ptr);
10228 break;
10229 }
10230 }
10231 break;
10232 }
10233 #endif
10234 #ifdef VK_EXT_provoking_vertex
10235 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT: {
10236 reservedmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(
10237 vkStream, rootType,
10238 reinterpret_cast<const VkPhysicalDeviceProvokingVertexFeaturesEXT*>(
10239 structExtension),
10240 ptr);
10241 break;
10242 }
10243 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT: {
10244 reservedmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(
10245 vkStream, rootType,
10246 reinterpret_cast<const VkPhysicalDeviceProvokingVertexPropertiesEXT*>(
10247 structExtension),
10248 ptr);
10249 break;
10250 }
10251 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT: {
10252 reservedmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
10253 vkStream, rootType,
10254 reinterpret_cast<const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(
10255 structExtension),
10256 ptr);
10257 break;
10258 }
10259 #endif
10260 #ifdef VK_EXT_extended_dynamic_state
10261 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT: {
10262 reservedmarshal_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(
10263 vkStream, rootType,
10264 reinterpret_cast<const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT*>(
10265 structExtension),
10266 ptr);
10267 break;
10268 }
10269 #endif
10270 #ifdef VK_EXT_host_image_copy
10271 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES_EXT: {
10272 reservedmarshal_VkPhysicalDeviceHostImageCopyFeaturesEXT(
10273 vkStream, rootType,
10274 reinterpret_cast<const VkPhysicalDeviceHostImageCopyFeaturesEXT*>(structExtension),
10275 ptr);
10276 break;
10277 }
10278 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT: {
10279 reservedmarshal_VkPhysicalDeviceHostImageCopyPropertiesEXT(
10280 vkStream, rootType,
10281 reinterpret_cast<const VkPhysicalDeviceHostImageCopyPropertiesEXT*>(
10282 structExtension),
10283 ptr);
10284 break;
10285 }
10286 case VK_STRUCTURE_TYPE_SUBRESOURCE_HOST_MEMCPY_SIZE_EXT: {
10287 reservedmarshal_VkSubresourceHostMemcpySizeEXT(
10288 vkStream, rootType,
10289 reinterpret_cast<const VkSubresourceHostMemcpySizeEXT*>(structExtension), ptr);
10290 break;
10291 }
10292 case VK_STRUCTURE_TYPE_HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT: {
10293 reservedmarshal_VkHostImageCopyDevicePerformanceQueryEXT(
10294 vkStream, rootType,
10295 reinterpret_cast<const VkHostImageCopyDevicePerformanceQueryEXT*>(structExtension),
10296 ptr);
10297 break;
10298 }
10299 #endif
10300 #ifdef VK_EXT_texel_buffer_alignment
10301 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT: {
10302 reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
10303 vkStream, rootType,
10304 reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*>(
10305 structExtension),
10306 ptr);
10307 break;
10308 }
10309 #endif
10310 #ifdef VK_EXT_device_memory_report
10311 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT: {
10312 reservedmarshal_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT(
10313 vkStream, rootType,
10314 reinterpret_cast<const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT*>(
10315 structExtension),
10316 ptr);
10317 break;
10318 }
10319 case VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT: {
10320 reservedmarshal_VkDeviceDeviceMemoryReportCreateInfoEXT(
10321 vkStream, rootType,
10322 reinterpret_cast<const VkDeviceDeviceMemoryReportCreateInfoEXT*>(structExtension),
10323 ptr);
10324 break;
10325 }
10326 #endif
10327 #ifdef VK_EXT_robustness2
10328 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT: {
10329 reservedmarshal_VkPhysicalDeviceRobustness2FeaturesEXT(
10330 vkStream, rootType,
10331 reinterpret_cast<const VkPhysicalDeviceRobustness2FeaturesEXT*>(structExtension),
10332 ptr);
10333 break;
10334 }
10335 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT: {
10336 reservedmarshal_VkPhysicalDeviceRobustness2PropertiesEXT(
10337 vkStream, rootType,
10338 reinterpret_cast<const VkPhysicalDeviceRobustness2PropertiesEXT*>(structExtension),
10339 ptr);
10340 break;
10341 }
10342 #endif
10343 #ifdef VK_EXT_custom_border_color
10344 case VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT: {
10345 reservedmarshal_VkSamplerCustomBorderColorCreateInfoEXT(
10346 vkStream, rootType,
10347 reinterpret_cast<const VkSamplerCustomBorderColorCreateInfoEXT*>(structExtension),
10348 ptr);
10349 break;
10350 }
10351 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT: {
10352 reservedmarshal_VkPhysicalDeviceCustomBorderColorPropertiesEXT(
10353 vkStream, rootType,
10354 reinterpret_cast<const VkPhysicalDeviceCustomBorderColorPropertiesEXT*>(
10355 structExtension),
10356 ptr);
10357 break;
10358 }
10359 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT: {
10360 reservedmarshal_VkPhysicalDeviceCustomBorderColorFeaturesEXT(
10361 vkStream, rootType,
10362 reinterpret_cast<const VkPhysicalDeviceCustomBorderColorFeaturesEXT*>(
10363 structExtension),
10364 ptr);
10365 break;
10366 }
10367 #endif
10368 #ifdef VK_EXT_graphics_pipeline_library
10369 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT: {
10370 reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(
10371 vkStream, rootType,
10372 reinterpret_cast<const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT*>(
10373 structExtension),
10374 ptr);
10375 break;
10376 }
10377 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT: {
10378 reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(
10379 vkStream, rootType,
10380 reinterpret_cast<const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*>(
10381 structExtension),
10382 ptr);
10383 break;
10384 }
10385 case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT: {
10386 reservedmarshal_VkGraphicsPipelineLibraryCreateInfoEXT(
10387 vkStream, rootType,
10388 reinterpret_cast<const VkGraphicsPipelineLibraryCreateInfoEXT*>(structExtension),
10389 ptr);
10390 break;
10391 }
10392 #endif
10393 #ifdef VK_EXT_ycbcr_2plane_444_formats
10394 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT: {
10395 reservedmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
10396 vkStream, rootType,
10397 reinterpret_cast<const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(
10398 structExtension),
10399 ptr);
10400 break;
10401 }
10402 #endif
10403 #ifdef VK_EXT_image_compression_control
10404 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT: {
10405 reservedmarshal_VkPhysicalDeviceImageCompressionControlFeaturesEXT(
10406 vkStream, rootType,
10407 reinterpret_cast<const VkPhysicalDeviceImageCompressionControlFeaturesEXT*>(
10408 structExtension),
10409 ptr);
10410 break;
10411 }
10412 case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT: {
10413 reservedmarshal_VkImageCompressionControlEXT(
10414 vkStream, rootType,
10415 reinterpret_cast<const VkImageCompressionControlEXT*>(structExtension), ptr);
10416 break;
10417 }
10418 case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT: {
10419 reservedmarshal_VkImageCompressionPropertiesEXT(
10420 vkStream, rootType,
10421 reinterpret_cast<const VkImageCompressionPropertiesEXT*>(structExtension), ptr);
10422 break;
10423 }
10424 #endif
10425 #ifdef VK_EXT_4444_formats
10426 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT: {
10427 reservedmarshal_VkPhysicalDevice4444FormatsFeaturesEXT(
10428 vkStream, rootType,
10429 reinterpret_cast<const VkPhysicalDevice4444FormatsFeaturesEXT*>(structExtension),
10430 ptr);
10431 break;
10432 }
10433 #endif
10434 #ifdef VK_EXT_primitive_topology_list_restart
10435 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT: {
10436 reservedmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
10437 vkStream, rootType,
10438 reinterpret_cast<const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(
10439 structExtension),
10440 ptr);
10441 break;
10442 }
10443 #endif
10444 #ifdef VK_EXT_extended_dynamic_state2
10445 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT: {
10446 reservedmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
10447 vkStream, rootType,
10448 reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(
10449 structExtension),
10450 ptr);
10451 break;
10452 }
10453 #endif
10454 #ifdef VK_EXT_color_write_enable
10455 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT: {
10456 reservedmarshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
10457 vkStream, rootType,
10458 reinterpret_cast<const VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(
10459 structExtension),
10460 ptr);
10461 break;
10462 }
10463 case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT: {
10464 reservedmarshal_VkPipelineColorWriteCreateInfoEXT(
10465 vkStream, rootType,
10466 reinterpret_cast<const VkPipelineColorWriteCreateInfoEXT*>(structExtension), ptr);
10467 break;
10468 }
10469 #endif
10470 #ifdef VK_GOOGLE_gfxstream
10471 case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE: {
10472 reservedmarshal_VkImportColorBufferGOOGLE(
10473 vkStream, rootType,
10474 reinterpret_cast<const VkImportColorBufferGOOGLE*>(structExtension), ptr);
10475 break;
10476 }
10477 case VK_STRUCTURE_TYPE_IMPORT_BUFFER_GOOGLE: {
10478 reservedmarshal_VkImportBufferGOOGLE(
10479 vkStream, rootType, reinterpret_cast<const VkImportBufferGOOGLE*>(structExtension),
10480 ptr);
10481 break;
10482 }
10483 case VK_STRUCTURE_TYPE_CREATE_BLOB_GOOGLE: {
10484 reservedmarshal_VkCreateBlobGOOGLE(
10485 vkStream, rootType, reinterpret_cast<const VkCreateBlobGOOGLE*>(structExtension),
10486 ptr);
10487 break;
10488 }
10489 #endif
10490 #ifdef VK_EXT_image_compression_control_swapchain
10491 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT: {
10492 reservedmarshal_VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(
10493 vkStream, rootType,
10494 reinterpret_cast<
10495 const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*>(
10496 structExtension),
10497 ptr);
10498 break;
10499 }
10500 #endif
10501 default: {
10502 // fatal; the switch is only taken if the extension struct is known
10503 abort();
10504 }
10505 }
10506 }
10507
10508 } // namespace vk
10509 } // namespace gfxstream
10510