• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 VkDecoderSnapshot
17 // (header) generated by protocols/vulkan/xml/genvk.py -registry protocols/vulkan/xml/vk.xml cereal -o stream-servers/vulkan/cereal
18 // Please do not modify directly;
19 // re-run generate-vulkan-sources.sh,
20 // or directly from Python by defining:
21 // VULKAN_REGISTRY_XML_DIR : Directory containing genvk.py and vk.xml
22 // CEREAL_OUTPUT_DIR: Where to put the generated sources.
23 // python3 $VULKAN_REGISTRY_XML_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o $CEREAL_OUTPUT_DIR
24 
25 #pragma once
26 
27 #include <vulkan/vulkan.h>
28 
29 
30 #include <memory>
31 #include "common/goldfish_vk_private_defs.h"
32 
33 
34 
35 
36 
37 
38 namespace android {
39 namespace base {
40 class BumpPool;
41 class Stream;
42 } // namespace base {
43 } // namespace android {
44 
45 class VkDecoderSnapshot {
46 public:
47     VkDecoderSnapshot();
48     ~VkDecoderSnapshot();
49 
50     void save(android::base::Stream* stream);
51     void load(android::base::Stream* stream);
52 #ifdef VK_VERSION_1_0
53     void vkCreateInstance(
54     const uint8_t* snapshotTraceBegin,
55         size_t snapshotTraceBytes,
56         android::base::BumpPool* pool,
57         VkResult input_result,
58         const VkInstanceCreateInfo* pCreateInfo,
59         const VkAllocationCallbacks* pAllocator,
60         VkInstance* pInstance);
61     void vkDestroyInstance(
62     const uint8_t* snapshotTraceBegin,
63         size_t snapshotTraceBytes,
64         android::base::BumpPool* pool,
65         VkInstance instance,
66         const VkAllocationCallbacks* pAllocator);
67     void vkEnumeratePhysicalDevices(
68     const uint8_t* snapshotTraceBegin,
69         size_t snapshotTraceBytes,
70         android::base::BumpPool* pool,
71         VkResult input_result,
72         VkInstance instance,
73         uint32_t* pPhysicalDeviceCount,
74         VkPhysicalDevice* pPhysicalDevices);
75     void vkGetPhysicalDeviceFeatures(
76     const uint8_t* snapshotTraceBegin,
77         size_t snapshotTraceBytes,
78         android::base::BumpPool* pool,
79         VkPhysicalDevice physicalDevice,
80         VkPhysicalDeviceFeatures* pFeatures);
81     void vkGetPhysicalDeviceFormatProperties(
82     const uint8_t* snapshotTraceBegin,
83         size_t snapshotTraceBytes,
84         android::base::BumpPool* pool,
85         VkPhysicalDevice physicalDevice,
86         VkFormat format,
87         VkFormatProperties* pFormatProperties);
88     void vkGetPhysicalDeviceImageFormatProperties(
89     const uint8_t* snapshotTraceBegin,
90         size_t snapshotTraceBytes,
91         android::base::BumpPool* pool,
92         VkResult input_result,
93         VkPhysicalDevice physicalDevice,
94         VkFormat format,
95         VkImageType type,
96         VkImageTiling tiling,
97         VkImageUsageFlags usage,
98         VkImageCreateFlags flags,
99         VkImageFormatProperties* pImageFormatProperties);
100     void vkGetPhysicalDeviceProperties(
101     const uint8_t* snapshotTraceBegin,
102         size_t snapshotTraceBytes,
103         android::base::BumpPool* pool,
104         VkPhysicalDevice physicalDevice,
105         VkPhysicalDeviceProperties* pProperties);
106     void vkGetPhysicalDeviceQueueFamilyProperties(
107     const uint8_t* snapshotTraceBegin,
108         size_t snapshotTraceBytes,
109         android::base::BumpPool* pool,
110         VkPhysicalDevice physicalDevice,
111         uint32_t* pQueueFamilyPropertyCount,
112         VkQueueFamilyProperties* pQueueFamilyProperties);
113     void vkGetPhysicalDeviceMemoryProperties(
114     const uint8_t* snapshotTraceBegin,
115         size_t snapshotTraceBytes,
116         android::base::BumpPool* pool,
117         VkPhysicalDevice physicalDevice,
118         VkPhysicalDeviceMemoryProperties* pMemoryProperties);
119     void vkGetInstanceProcAddr(
120     const uint8_t* snapshotTraceBegin,
121         size_t snapshotTraceBytes,
122         android::base::BumpPool* pool,
123         PFN_vkVoidFunction input_result,
124         VkInstance instance,
125         const char* pName);
126     void vkGetDeviceProcAddr(
127     const uint8_t* snapshotTraceBegin,
128         size_t snapshotTraceBytes,
129         android::base::BumpPool* pool,
130         PFN_vkVoidFunction input_result,
131         VkDevice device,
132         const char* pName);
133     void vkCreateDevice(
134     const uint8_t* snapshotTraceBegin,
135         size_t snapshotTraceBytes,
136         android::base::BumpPool* pool,
137         VkResult input_result,
138         VkPhysicalDevice physicalDevice,
139         const VkDeviceCreateInfo* pCreateInfo,
140         const VkAllocationCallbacks* pAllocator,
141         VkDevice* pDevice);
142     void vkDestroyDevice(
143     const uint8_t* snapshotTraceBegin,
144         size_t snapshotTraceBytes,
145         android::base::BumpPool* pool,
146         VkDevice device,
147         const VkAllocationCallbacks* pAllocator);
148     void vkEnumerateInstanceExtensionProperties(
149     const uint8_t* snapshotTraceBegin,
150         size_t snapshotTraceBytes,
151         android::base::BumpPool* pool,
152         VkResult input_result,
153         const char* pLayerName,
154         uint32_t* pPropertyCount,
155         VkExtensionProperties* pProperties);
156     void vkEnumerateDeviceExtensionProperties(
157     const uint8_t* snapshotTraceBegin,
158         size_t snapshotTraceBytes,
159         android::base::BumpPool* pool,
160         VkResult input_result,
161         VkPhysicalDevice physicalDevice,
162         const char* pLayerName,
163         uint32_t* pPropertyCount,
164         VkExtensionProperties* pProperties);
165     void vkEnumerateInstanceLayerProperties(
166     const uint8_t* snapshotTraceBegin,
167         size_t snapshotTraceBytes,
168         android::base::BumpPool* pool,
169         VkResult input_result,
170         uint32_t* pPropertyCount,
171         VkLayerProperties* pProperties);
172     void vkEnumerateDeviceLayerProperties(
173     const uint8_t* snapshotTraceBegin,
174         size_t snapshotTraceBytes,
175         android::base::BumpPool* pool,
176         VkResult input_result,
177         VkPhysicalDevice physicalDevice,
178         uint32_t* pPropertyCount,
179         VkLayerProperties* pProperties);
180     void vkGetDeviceQueue(
181     const uint8_t* snapshotTraceBegin,
182         size_t snapshotTraceBytes,
183         android::base::BumpPool* pool,
184         VkDevice device,
185         uint32_t queueFamilyIndex,
186         uint32_t queueIndex,
187         VkQueue* pQueue);
188     void vkQueueSubmit(
189     const uint8_t* snapshotTraceBegin,
190         size_t snapshotTraceBytes,
191         android::base::BumpPool* pool,
192         VkResult input_result,
193         VkQueue queue,
194         uint32_t submitCount,
195         const VkSubmitInfo* pSubmits,
196         VkFence fence);
197     void vkQueueWaitIdle(
198     const uint8_t* snapshotTraceBegin,
199         size_t snapshotTraceBytes,
200         android::base::BumpPool* pool,
201         VkResult input_result,
202         VkQueue queue);
203     void vkDeviceWaitIdle(
204     const uint8_t* snapshotTraceBegin,
205         size_t snapshotTraceBytes,
206         android::base::BumpPool* pool,
207         VkResult input_result,
208         VkDevice device);
209     void vkAllocateMemory(
210     const uint8_t* snapshotTraceBegin,
211         size_t snapshotTraceBytes,
212         android::base::BumpPool* pool,
213         VkResult input_result,
214         VkDevice device,
215         const VkMemoryAllocateInfo* pAllocateInfo,
216         const VkAllocationCallbacks* pAllocator,
217         VkDeviceMemory* pMemory);
218     void vkFreeMemory(
219     const uint8_t* snapshotTraceBegin,
220         size_t snapshotTraceBytes,
221         android::base::BumpPool* pool,
222         VkDevice device,
223         VkDeviceMemory memory,
224         const VkAllocationCallbacks* pAllocator);
225     void vkMapMemory(
226     const uint8_t* snapshotTraceBegin,
227         size_t snapshotTraceBytes,
228         android::base::BumpPool* pool,
229         VkResult input_result,
230         VkDevice device,
231         VkDeviceMemory memory,
232         VkDeviceSize offset,
233         VkDeviceSize size,
234         VkMemoryMapFlags flags,
235         void** ppData);
236     void vkUnmapMemory(
237     const uint8_t* snapshotTraceBegin,
238         size_t snapshotTraceBytes,
239         android::base::BumpPool* pool,
240         VkDevice device,
241         VkDeviceMemory memory);
242     void vkFlushMappedMemoryRanges(
243     const uint8_t* snapshotTraceBegin,
244         size_t snapshotTraceBytes,
245         android::base::BumpPool* pool,
246         VkResult input_result,
247         VkDevice device,
248         uint32_t memoryRangeCount,
249         const VkMappedMemoryRange* pMemoryRanges);
250     void vkInvalidateMappedMemoryRanges(
251     const uint8_t* snapshotTraceBegin,
252         size_t snapshotTraceBytes,
253         android::base::BumpPool* pool,
254         VkResult input_result,
255         VkDevice device,
256         uint32_t memoryRangeCount,
257         const VkMappedMemoryRange* pMemoryRanges);
258     void vkGetDeviceMemoryCommitment(
259     const uint8_t* snapshotTraceBegin,
260         size_t snapshotTraceBytes,
261         android::base::BumpPool* pool,
262         VkDevice device,
263         VkDeviceMemory memory,
264         VkDeviceSize* pCommittedMemoryInBytes);
265     void vkBindBufferMemory(
266     const uint8_t* snapshotTraceBegin,
267         size_t snapshotTraceBytes,
268         android::base::BumpPool* pool,
269         VkResult input_result,
270         VkDevice device,
271         VkBuffer buffer,
272         VkDeviceMemory memory,
273         VkDeviceSize memoryOffset);
274     void vkBindImageMemory(
275     const uint8_t* snapshotTraceBegin,
276         size_t snapshotTraceBytes,
277         android::base::BumpPool* pool,
278         VkResult input_result,
279         VkDevice device,
280         VkImage image,
281         VkDeviceMemory memory,
282         VkDeviceSize memoryOffset);
283     void vkGetBufferMemoryRequirements(
284     const uint8_t* snapshotTraceBegin,
285         size_t snapshotTraceBytes,
286         android::base::BumpPool* pool,
287         VkDevice device,
288         VkBuffer buffer,
289         VkMemoryRequirements* pMemoryRequirements);
290     void vkGetImageMemoryRequirements(
291     const uint8_t* snapshotTraceBegin,
292         size_t snapshotTraceBytes,
293         android::base::BumpPool* pool,
294         VkDevice device,
295         VkImage image,
296         VkMemoryRequirements* pMemoryRequirements);
297     void vkGetImageSparseMemoryRequirements(
298     const uint8_t* snapshotTraceBegin,
299         size_t snapshotTraceBytes,
300         android::base::BumpPool* pool,
301         VkDevice device,
302         VkImage image,
303         uint32_t* pSparseMemoryRequirementCount,
304         VkSparseImageMemoryRequirements* pSparseMemoryRequirements);
305     void vkGetPhysicalDeviceSparseImageFormatProperties(
306     const uint8_t* snapshotTraceBegin,
307         size_t snapshotTraceBytes,
308         android::base::BumpPool* pool,
309         VkPhysicalDevice physicalDevice,
310         VkFormat format,
311         VkImageType type,
312         VkSampleCountFlagBits samples,
313         VkImageUsageFlags usage,
314         VkImageTiling tiling,
315         uint32_t* pPropertyCount,
316         VkSparseImageFormatProperties* pProperties);
317     void vkQueueBindSparse(
318     const uint8_t* snapshotTraceBegin,
319         size_t snapshotTraceBytes,
320         android::base::BumpPool* pool,
321         VkResult input_result,
322         VkQueue queue,
323         uint32_t bindInfoCount,
324         const VkBindSparseInfo* pBindInfo,
325         VkFence fence);
326     void vkCreateFence(
327     const uint8_t* snapshotTraceBegin,
328         size_t snapshotTraceBytes,
329         android::base::BumpPool* pool,
330         VkResult input_result,
331         VkDevice device,
332         const VkFenceCreateInfo* pCreateInfo,
333         const VkAllocationCallbacks* pAllocator,
334         VkFence* pFence);
335     void vkDestroyFence(
336     const uint8_t* snapshotTraceBegin,
337         size_t snapshotTraceBytes,
338         android::base::BumpPool* pool,
339         VkDevice device,
340         VkFence fence,
341         const VkAllocationCallbacks* pAllocator);
342     void vkResetFences(
343     const uint8_t* snapshotTraceBegin,
344         size_t snapshotTraceBytes,
345         android::base::BumpPool* pool,
346         VkResult input_result,
347         VkDevice device,
348         uint32_t fenceCount,
349         const VkFence* pFences);
350     void vkGetFenceStatus(
351     const uint8_t* snapshotTraceBegin,
352         size_t snapshotTraceBytes,
353         android::base::BumpPool* pool,
354         VkResult input_result,
355         VkDevice device,
356         VkFence fence);
357     void vkWaitForFences(
358     const uint8_t* snapshotTraceBegin,
359         size_t snapshotTraceBytes,
360         android::base::BumpPool* pool,
361         VkResult input_result,
362         VkDevice device,
363         uint32_t fenceCount,
364         const VkFence* pFences,
365         VkBool32 waitAll,
366         uint64_t timeout);
367     void vkCreateSemaphore(
368     const uint8_t* snapshotTraceBegin,
369         size_t snapshotTraceBytes,
370         android::base::BumpPool* pool,
371         VkResult input_result,
372         VkDevice device,
373         const VkSemaphoreCreateInfo* pCreateInfo,
374         const VkAllocationCallbacks* pAllocator,
375         VkSemaphore* pSemaphore);
376     void vkDestroySemaphore(
377     const uint8_t* snapshotTraceBegin,
378         size_t snapshotTraceBytes,
379         android::base::BumpPool* pool,
380         VkDevice device,
381         VkSemaphore semaphore,
382         const VkAllocationCallbacks* pAllocator);
383     void vkCreateEvent(
384     const uint8_t* snapshotTraceBegin,
385         size_t snapshotTraceBytes,
386         android::base::BumpPool* pool,
387         VkResult input_result,
388         VkDevice device,
389         const VkEventCreateInfo* pCreateInfo,
390         const VkAllocationCallbacks* pAllocator,
391         VkEvent* pEvent);
392     void vkDestroyEvent(
393     const uint8_t* snapshotTraceBegin,
394         size_t snapshotTraceBytes,
395         android::base::BumpPool* pool,
396         VkDevice device,
397         VkEvent event,
398         const VkAllocationCallbacks* pAllocator);
399     void vkGetEventStatus(
400     const uint8_t* snapshotTraceBegin,
401         size_t snapshotTraceBytes,
402         android::base::BumpPool* pool,
403         VkResult input_result,
404         VkDevice device,
405         VkEvent event);
406     void vkSetEvent(
407     const uint8_t* snapshotTraceBegin,
408         size_t snapshotTraceBytes,
409         android::base::BumpPool* pool,
410         VkResult input_result,
411         VkDevice device,
412         VkEvent event);
413     void vkResetEvent(
414     const uint8_t* snapshotTraceBegin,
415         size_t snapshotTraceBytes,
416         android::base::BumpPool* pool,
417         VkResult input_result,
418         VkDevice device,
419         VkEvent event);
420     void vkCreateQueryPool(
421     const uint8_t* snapshotTraceBegin,
422         size_t snapshotTraceBytes,
423         android::base::BumpPool* pool,
424         VkResult input_result,
425         VkDevice device,
426         const VkQueryPoolCreateInfo* pCreateInfo,
427         const VkAllocationCallbacks* pAllocator,
428         VkQueryPool* pQueryPool);
429     void vkDestroyQueryPool(
430     const uint8_t* snapshotTraceBegin,
431         size_t snapshotTraceBytes,
432         android::base::BumpPool* pool,
433         VkDevice device,
434         VkQueryPool queryPool,
435         const VkAllocationCallbacks* pAllocator);
436     void vkGetQueryPoolResults(
437     const uint8_t* snapshotTraceBegin,
438         size_t snapshotTraceBytes,
439         android::base::BumpPool* pool,
440         VkResult input_result,
441         VkDevice device,
442         VkQueryPool queryPool,
443         uint32_t firstQuery,
444         uint32_t queryCount,
445         size_t dataSize,
446         void* pData,
447         VkDeviceSize stride,
448         VkQueryResultFlags flags);
449     void vkCreateBuffer(
450     const uint8_t* snapshotTraceBegin,
451         size_t snapshotTraceBytes,
452         android::base::BumpPool* pool,
453         VkResult input_result,
454         VkDevice device,
455         const VkBufferCreateInfo* pCreateInfo,
456         const VkAllocationCallbacks* pAllocator,
457         VkBuffer* pBuffer);
458     void vkDestroyBuffer(
459     const uint8_t* snapshotTraceBegin,
460         size_t snapshotTraceBytes,
461         android::base::BumpPool* pool,
462         VkDevice device,
463         VkBuffer buffer,
464         const VkAllocationCallbacks* pAllocator);
465     void vkCreateBufferView(
466     const uint8_t* snapshotTraceBegin,
467         size_t snapshotTraceBytes,
468         android::base::BumpPool* pool,
469         VkResult input_result,
470         VkDevice device,
471         const VkBufferViewCreateInfo* pCreateInfo,
472         const VkAllocationCallbacks* pAllocator,
473         VkBufferView* pView);
474     void vkDestroyBufferView(
475     const uint8_t* snapshotTraceBegin,
476         size_t snapshotTraceBytes,
477         android::base::BumpPool* pool,
478         VkDevice device,
479         VkBufferView bufferView,
480         const VkAllocationCallbacks* pAllocator);
481     void vkCreateImage(
482     const uint8_t* snapshotTraceBegin,
483         size_t snapshotTraceBytes,
484         android::base::BumpPool* pool,
485         VkResult input_result,
486         VkDevice device,
487         const VkImageCreateInfo* pCreateInfo,
488         const VkAllocationCallbacks* pAllocator,
489         VkImage* pImage);
490     void vkDestroyImage(
491     const uint8_t* snapshotTraceBegin,
492         size_t snapshotTraceBytes,
493         android::base::BumpPool* pool,
494         VkDevice device,
495         VkImage image,
496         const VkAllocationCallbacks* pAllocator);
497     void vkGetImageSubresourceLayout(
498     const uint8_t* snapshotTraceBegin,
499         size_t snapshotTraceBytes,
500         android::base::BumpPool* pool,
501         VkDevice device,
502         VkImage image,
503         const VkImageSubresource* pSubresource,
504         VkSubresourceLayout* pLayout);
505     void vkCreateImageView(
506     const uint8_t* snapshotTraceBegin,
507         size_t snapshotTraceBytes,
508         android::base::BumpPool* pool,
509         VkResult input_result,
510         VkDevice device,
511         const VkImageViewCreateInfo* pCreateInfo,
512         const VkAllocationCallbacks* pAllocator,
513         VkImageView* pView);
514     void vkDestroyImageView(
515     const uint8_t* snapshotTraceBegin,
516         size_t snapshotTraceBytes,
517         android::base::BumpPool* pool,
518         VkDevice device,
519         VkImageView imageView,
520         const VkAllocationCallbacks* pAllocator);
521     void vkCreateShaderModule(
522     const uint8_t* snapshotTraceBegin,
523         size_t snapshotTraceBytes,
524         android::base::BumpPool* pool,
525         VkResult input_result,
526         VkDevice device,
527         const VkShaderModuleCreateInfo* pCreateInfo,
528         const VkAllocationCallbacks* pAllocator,
529         VkShaderModule* pShaderModule);
530     void vkDestroyShaderModule(
531     const uint8_t* snapshotTraceBegin,
532         size_t snapshotTraceBytes,
533         android::base::BumpPool* pool,
534         VkDevice device,
535         VkShaderModule shaderModule,
536         const VkAllocationCallbacks* pAllocator);
537     void vkCreatePipelineCache(
538     const uint8_t* snapshotTraceBegin,
539         size_t snapshotTraceBytes,
540         android::base::BumpPool* pool,
541         VkResult input_result,
542         VkDevice device,
543         const VkPipelineCacheCreateInfo* pCreateInfo,
544         const VkAllocationCallbacks* pAllocator,
545         VkPipelineCache* pPipelineCache);
546     void vkDestroyPipelineCache(
547     const uint8_t* snapshotTraceBegin,
548         size_t snapshotTraceBytes,
549         android::base::BumpPool* pool,
550         VkDevice device,
551         VkPipelineCache pipelineCache,
552         const VkAllocationCallbacks* pAllocator);
553     void vkGetPipelineCacheData(
554     const uint8_t* snapshotTraceBegin,
555         size_t snapshotTraceBytes,
556         android::base::BumpPool* pool,
557         VkResult input_result,
558         VkDevice device,
559         VkPipelineCache pipelineCache,
560         size_t* pDataSize,
561         void* pData);
562     void vkMergePipelineCaches(
563     const uint8_t* snapshotTraceBegin,
564         size_t snapshotTraceBytes,
565         android::base::BumpPool* pool,
566         VkResult input_result,
567         VkDevice device,
568         VkPipelineCache dstCache,
569         uint32_t srcCacheCount,
570         const VkPipelineCache* pSrcCaches);
571     void vkCreateGraphicsPipelines(
572     const uint8_t* snapshotTraceBegin,
573         size_t snapshotTraceBytes,
574         android::base::BumpPool* pool,
575         VkResult input_result,
576         VkDevice device,
577         VkPipelineCache pipelineCache,
578         uint32_t createInfoCount,
579         const VkGraphicsPipelineCreateInfo* pCreateInfos,
580         const VkAllocationCallbacks* pAllocator,
581         VkPipeline* pPipelines);
582     void vkCreateComputePipelines(
583     const uint8_t* snapshotTraceBegin,
584         size_t snapshotTraceBytes,
585         android::base::BumpPool* pool,
586         VkResult input_result,
587         VkDevice device,
588         VkPipelineCache pipelineCache,
589         uint32_t createInfoCount,
590         const VkComputePipelineCreateInfo* pCreateInfos,
591         const VkAllocationCallbacks* pAllocator,
592         VkPipeline* pPipelines);
593     void vkDestroyPipeline(
594     const uint8_t* snapshotTraceBegin,
595         size_t snapshotTraceBytes,
596         android::base::BumpPool* pool,
597         VkDevice device,
598         VkPipeline pipeline,
599         const VkAllocationCallbacks* pAllocator);
600     void vkCreatePipelineLayout(
601     const uint8_t* snapshotTraceBegin,
602         size_t snapshotTraceBytes,
603         android::base::BumpPool* pool,
604         VkResult input_result,
605         VkDevice device,
606         const VkPipelineLayoutCreateInfo* pCreateInfo,
607         const VkAllocationCallbacks* pAllocator,
608         VkPipelineLayout* pPipelineLayout);
609     void vkDestroyPipelineLayout(
610     const uint8_t* snapshotTraceBegin,
611         size_t snapshotTraceBytes,
612         android::base::BumpPool* pool,
613         VkDevice device,
614         VkPipelineLayout pipelineLayout,
615         const VkAllocationCallbacks* pAllocator);
616     void vkCreateSampler(
617     const uint8_t* snapshotTraceBegin,
618         size_t snapshotTraceBytes,
619         android::base::BumpPool* pool,
620         VkResult input_result,
621         VkDevice device,
622         const VkSamplerCreateInfo* pCreateInfo,
623         const VkAllocationCallbacks* pAllocator,
624         VkSampler* pSampler);
625     void vkDestroySampler(
626     const uint8_t* snapshotTraceBegin,
627         size_t snapshotTraceBytes,
628         android::base::BumpPool* pool,
629         VkDevice device,
630         VkSampler sampler,
631         const VkAllocationCallbacks* pAllocator);
632     void vkCreateDescriptorSetLayout(
633     const uint8_t* snapshotTraceBegin,
634         size_t snapshotTraceBytes,
635         android::base::BumpPool* pool,
636         VkResult input_result,
637         VkDevice device,
638         const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
639         const VkAllocationCallbacks* pAllocator,
640         VkDescriptorSetLayout* pSetLayout);
641     void vkDestroyDescriptorSetLayout(
642     const uint8_t* snapshotTraceBegin,
643         size_t snapshotTraceBytes,
644         android::base::BumpPool* pool,
645         VkDevice device,
646         VkDescriptorSetLayout descriptorSetLayout,
647         const VkAllocationCallbacks* pAllocator);
648     void vkCreateDescriptorPool(
649     const uint8_t* snapshotTraceBegin,
650         size_t snapshotTraceBytes,
651         android::base::BumpPool* pool,
652         VkResult input_result,
653         VkDevice device,
654         const VkDescriptorPoolCreateInfo* pCreateInfo,
655         const VkAllocationCallbacks* pAllocator,
656         VkDescriptorPool* pDescriptorPool);
657     void vkDestroyDescriptorPool(
658     const uint8_t* snapshotTraceBegin,
659         size_t snapshotTraceBytes,
660         android::base::BumpPool* pool,
661         VkDevice device,
662         VkDescriptorPool descriptorPool,
663         const VkAllocationCallbacks* pAllocator);
664     void vkResetDescriptorPool(
665     const uint8_t* snapshotTraceBegin,
666         size_t snapshotTraceBytes,
667         android::base::BumpPool* pool,
668         VkResult input_result,
669         VkDevice device,
670         VkDescriptorPool descriptorPool,
671         VkDescriptorPoolResetFlags flags);
672     void vkAllocateDescriptorSets(
673     const uint8_t* snapshotTraceBegin,
674         size_t snapshotTraceBytes,
675         android::base::BumpPool* pool,
676         VkResult input_result,
677         VkDevice device,
678         const VkDescriptorSetAllocateInfo* pAllocateInfo,
679         VkDescriptorSet* pDescriptorSets);
680     void vkFreeDescriptorSets(
681     const uint8_t* snapshotTraceBegin,
682         size_t snapshotTraceBytes,
683         android::base::BumpPool* pool,
684         VkResult input_result,
685         VkDevice device,
686         VkDescriptorPool descriptorPool,
687         uint32_t descriptorSetCount,
688         const VkDescriptorSet* pDescriptorSets);
689     void vkUpdateDescriptorSets(
690     const uint8_t* snapshotTraceBegin,
691         size_t snapshotTraceBytes,
692         android::base::BumpPool* pool,
693         VkDevice device,
694         uint32_t descriptorWriteCount,
695         const VkWriteDescriptorSet* pDescriptorWrites,
696         uint32_t descriptorCopyCount,
697         const VkCopyDescriptorSet* pDescriptorCopies);
698     void vkCreateFramebuffer(
699     const uint8_t* snapshotTraceBegin,
700         size_t snapshotTraceBytes,
701         android::base::BumpPool* pool,
702         VkResult input_result,
703         VkDevice device,
704         const VkFramebufferCreateInfo* pCreateInfo,
705         const VkAllocationCallbacks* pAllocator,
706         VkFramebuffer* pFramebuffer);
707     void vkDestroyFramebuffer(
708     const uint8_t* snapshotTraceBegin,
709         size_t snapshotTraceBytes,
710         android::base::BumpPool* pool,
711         VkDevice device,
712         VkFramebuffer framebuffer,
713         const VkAllocationCallbacks* pAllocator);
714     void vkCreateRenderPass(
715     const uint8_t* snapshotTraceBegin,
716         size_t snapshotTraceBytes,
717         android::base::BumpPool* pool,
718         VkResult input_result,
719         VkDevice device,
720         const VkRenderPassCreateInfo* pCreateInfo,
721         const VkAllocationCallbacks* pAllocator,
722         VkRenderPass* pRenderPass);
723     void vkDestroyRenderPass(
724     const uint8_t* snapshotTraceBegin,
725         size_t snapshotTraceBytes,
726         android::base::BumpPool* pool,
727         VkDevice device,
728         VkRenderPass renderPass,
729         const VkAllocationCallbacks* pAllocator);
730     void vkGetRenderAreaGranularity(
731     const uint8_t* snapshotTraceBegin,
732         size_t snapshotTraceBytes,
733         android::base::BumpPool* pool,
734         VkDevice device,
735         VkRenderPass renderPass,
736         VkExtent2D* pGranularity);
737     void vkCreateCommandPool(
738     const uint8_t* snapshotTraceBegin,
739         size_t snapshotTraceBytes,
740         android::base::BumpPool* pool,
741         VkResult input_result,
742         VkDevice device,
743         const VkCommandPoolCreateInfo* pCreateInfo,
744         const VkAllocationCallbacks* pAllocator,
745         VkCommandPool* pCommandPool);
746     void vkDestroyCommandPool(
747     const uint8_t* snapshotTraceBegin,
748         size_t snapshotTraceBytes,
749         android::base::BumpPool* pool,
750         VkDevice device,
751         VkCommandPool commandPool,
752         const VkAllocationCallbacks* pAllocator);
753     void vkResetCommandPool(
754     const uint8_t* snapshotTraceBegin,
755         size_t snapshotTraceBytes,
756         android::base::BumpPool* pool,
757         VkResult input_result,
758         VkDevice device,
759         VkCommandPool commandPool,
760         VkCommandPoolResetFlags flags);
761     void vkAllocateCommandBuffers(
762     const uint8_t* snapshotTraceBegin,
763         size_t snapshotTraceBytes,
764         android::base::BumpPool* pool,
765         VkResult input_result,
766         VkDevice device,
767         const VkCommandBufferAllocateInfo* pAllocateInfo,
768         VkCommandBuffer* pCommandBuffers);
769     void vkFreeCommandBuffers(
770     const uint8_t* snapshotTraceBegin,
771         size_t snapshotTraceBytes,
772         android::base::BumpPool* pool,
773         VkDevice device,
774         VkCommandPool commandPool,
775         uint32_t commandBufferCount,
776         const VkCommandBuffer* pCommandBuffers);
777     void vkBeginCommandBuffer(
778     const uint8_t* snapshotTraceBegin,
779         size_t snapshotTraceBytes,
780         android::base::BumpPool* pool,
781         VkResult input_result,
782         VkCommandBuffer commandBuffer,
783         const VkCommandBufferBeginInfo* pBeginInfo);
784     void vkEndCommandBuffer(
785     const uint8_t* snapshotTraceBegin,
786         size_t snapshotTraceBytes,
787         android::base::BumpPool* pool,
788         VkResult input_result,
789         VkCommandBuffer commandBuffer);
790     void vkResetCommandBuffer(
791     const uint8_t* snapshotTraceBegin,
792         size_t snapshotTraceBytes,
793         android::base::BumpPool* pool,
794         VkResult input_result,
795         VkCommandBuffer commandBuffer,
796         VkCommandBufferResetFlags flags);
797     void vkCmdBindPipeline(
798     const uint8_t* snapshotTraceBegin,
799         size_t snapshotTraceBytes,
800         android::base::BumpPool* pool,
801         VkCommandBuffer commandBuffer,
802         VkPipelineBindPoint pipelineBindPoint,
803         VkPipeline pipeline);
804     void vkCmdSetViewport(
805     const uint8_t* snapshotTraceBegin,
806         size_t snapshotTraceBytes,
807         android::base::BumpPool* pool,
808         VkCommandBuffer commandBuffer,
809         uint32_t firstViewport,
810         uint32_t viewportCount,
811         const VkViewport* pViewports);
812     void vkCmdSetScissor(
813     const uint8_t* snapshotTraceBegin,
814         size_t snapshotTraceBytes,
815         android::base::BumpPool* pool,
816         VkCommandBuffer commandBuffer,
817         uint32_t firstScissor,
818         uint32_t scissorCount,
819         const VkRect2D* pScissors);
820     void vkCmdSetLineWidth(
821     const uint8_t* snapshotTraceBegin,
822         size_t snapshotTraceBytes,
823         android::base::BumpPool* pool,
824         VkCommandBuffer commandBuffer,
825         float lineWidth);
826     void vkCmdSetDepthBias(
827     const uint8_t* snapshotTraceBegin,
828         size_t snapshotTraceBytes,
829         android::base::BumpPool* pool,
830         VkCommandBuffer commandBuffer,
831         float depthBiasConstantFactor,
832         float depthBiasClamp,
833         float depthBiasSlopeFactor);
834     void vkCmdSetBlendConstants(
835     const uint8_t* snapshotTraceBegin,
836         size_t snapshotTraceBytes,
837         android::base::BumpPool* pool,
838         VkCommandBuffer commandBuffer,
839         const float blendConstants[4]);
840     void vkCmdSetDepthBounds(
841     const uint8_t* snapshotTraceBegin,
842         size_t snapshotTraceBytes,
843         android::base::BumpPool* pool,
844         VkCommandBuffer commandBuffer,
845         float minDepthBounds,
846         float maxDepthBounds);
847     void vkCmdSetStencilCompareMask(
848     const uint8_t* snapshotTraceBegin,
849         size_t snapshotTraceBytes,
850         android::base::BumpPool* pool,
851         VkCommandBuffer commandBuffer,
852         VkStencilFaceFlags faceMask,
853         uint32_t compareMask);
854     void vkCmdSetStencilWriteMask(
855     const uint8_t* snapshotTraceBegin,
856         size_t snapshotTraceBytes,
857         android::base::BumpPool* pool,
858         VkCommandBuffer commandBuffer,
859         VkStencilFaceFlags faceMask,
860         uint32_t writeMask);
861     void vkCmdSetStencilReference(
862     const uint8_t* snapshotTraceBegin,
863         size_t snapshotTraceBytes,
864         android::base::BumpPool* pool,
865         VkCommandBuffer commandBuffer,
866         VkStencilFaceFlags faceMask,
867         uint32_t reference);
868     void vkCmdBindDescriptorSets(
869     const uint8_t* snapshotTraceBegin,
870         size_t snapshotTraceBytes,
871         android::base::BumpPool* pool,
872         VkCommandBuffer commandBuffer,
873         VkPipelineBindPoint pipelineBindPoint,
874         VkPipelineLayout layout,
875         uint32_t firstSet,
876         uint32_t descriptorSetCount,
877         const VkDescriptorSet* pDescriptorSets,
878         uint32_t dynamicOffsetCount,
879         const uint32_t* pDynamicOffsets);
880     void vkCmdBindIndexBuffer(
881     const uint8_t* snapshotTraceBegin,
882         size_t snapshotTraceBytes,
883         android::base::BumpPool* pool,
884         VkCommandBuffer commandBuffer,
885         VkBuffer buffer,
886         VkDeviceSize offset,
887         VkIndexType indexType);
888     void vkCmdBindVertexBuffers(
889     const uint8_t* snapshotTraceBegin,
890         size_t snapshotTraceBytes,
891         android::base::BumpPool* pool,
892         VkCommandBuffer commandBuffer,
893         uint32_t firstBinding,
894         uint32_t bindingCount,
895         const VkBuffer* pBuffers,
896         const VkDeviceSize* pOffsets);
897     void vkCmdDraw(
898     const uint8_t* snapshotTraceBegin,
899         size_t snapshotTraceBytes,
900         android::base::BumpPool* pool,
901         VkCommandBuffer commandBuffer,
902         uint32_t vertexCount,
903         uint32_t instanceCount,
904         uint32_t firstVertex,
905         uint32_t firstInstance);
906     void vkCmdDrawIndexed(
907     const uint8_t* snapshotTraceBegin,
908         size_t snapshotTraceBytes,
909         android::base::BumpPool* pool,
910         VkCommandBuffer commandBuffer,
911         uint32_t indexCount,
912         uint32_t instanceCount,
913         uint32_t firstIndex,
914         int32_t vertexOffset,
915         uint32_t firstInstance);
916     void vkCmdDrawIndirect(
917     const uint8_t* snapshotTraceBegin,
918         size_t snapshotTraceBytes,
919         android::base::BumpPool* pool,
920         VkCommandBuffer commandBuffer,
921         VkBuffer buffer,
922         VkDeviceSize offset,
923         uint32_t drawCount,
924         uint32_t stride);
925     void vkCmdDrawIndexedIndirect(
926     const uint8_t* snapshotTraceBegin,
927         size_t snapshotTraceBytes,
928         android::base::BumpPool* pool,
929         VkCommandBuffer commandBuffer,
930         VkBuffer buffer,
931         VkDeviceSize offset,
932         uint32_t drawCount,
933         uint32_t stride);
934     void vkCmdDispatch(
935     const uint8_t* snapshotTraceBegin,
936         size_t snapshotTraceBytes,
937         android::base::BumpPool* pool,
938         VkCommandBuffer commandBuffer,
939         uint32_t groupCountX,
940         uint32_t groupCountY,
941         uint32_t groupCountZ);
942     void vkCmdDispatchIndirect(
943     const uint8_t* snapshotTraceBegin,
944         size_t snapshotTraceBytes,
945         android::base::BumpPool* pool,
946         VkCommandBuffer commandBuffer,
947         VkBuffer buffer,
948         VkDeviceSize offset);
949     void vkCmdCopyBuffer(
950     const uint8_t* snapshotTraceBegin,
951         size_t snapshotTraceBytes,
952         android::base::BumpPool* pool,
953         VkCommandBuffer commandBuffer,
954         VkBuffer srcBuffer,
955         VkBuffer dstBuffer,
956         uint32_t regionCount,
957         const VkBufferCopy* pRegions);
958     void vkCmdCopyImage(
959     const uint8_t* snapshotTraceBegin,
960         size_t snapshotTraceBytes,
961         android::base::BumpPool* pool,
962         VkCommandBuffer commandBuffer,
963         VkImage srcImage,
964         VkImageLayout srcImageLayout,
965         VkImage dstImage,
966         VkImageLayout dstImageLayout,
967         uint32_t regionCount,
968         const VkImageCopy* pRegions);
969     void vkCmdBlitImage(
970     const uint8_t* snapshotTraceBegin,
971         size_t snapshotTraceBytes,
972         android::base::BumpPool* pool,
973         VkCommandBuffer commandBuffer,
974         VkImage srcImage,
975         VkImageLayout srcImageLayout,
976         VkImage dstImage,
977         VkImageLayout dstImageLayout,
978         uint32_t regionCount,
979         const VkImageBlit* pRegions,
980         VkFilter filter);
981     void vkCmdCopyBufferToImage(
982     const uint8_t* snapshotTraceBegin,
983         size_t snapshotTraceBytes,
984         android::base::BumpPool* pool,
985         VkCommandBuffer commandBuffer,
986         VkBuffer srcBuffer,
987         VkImage dstImage,
988         VkImageLayout dstImageLayout,
989         uint32_t regionCount,
990         const VkBufferImageCopy* pRegions);
991     void vkCmdCopyImageToBuffer(
992     const uint8_t* snapshotTraceBegin,
993         size_t snapshotTraceBytes,
994         android::base::BumpPool* pool,
995         VkCommandBuffer commandBuffer,
996         VkImage srcImage,
997         VkImageLayout srcImageLayout,
998         VkBuffer dstBuffer,
999         uint32_t regionCount,
1000         const VkBufferImageCopy* pRegions);
1001     void vkCmdUpdateBuffer(
1002     const uint8_t* snapshotTraceBegin,
1003         size_t snapshotTraceBytes,
1004         android::base::BumpPool* pool,
1005         VkCommandBuffer commandBuffer,
1006         VkBuffer dstBuffer,
1007         VkDeviceSize dstOffset,
1008         VkDeviceSize dataSize,
1009         const void* pData);
1010     void vkCmdFillBuffer(
1011     const uint8_t* snapshotTraceBegin,
1012         size_t snapshotTraceBytes,
1013         android::base::BumpPool* pool,
1014         VkCommandBuffer commandBuffer,
1015         VkBuffer dstBuffer,
1016         VkDeviceSize dstOffset,
1017         VkDeviceSize size,
1018         uint32_t data);
1019     void vkCmdClearColorImage(
1020     const uint8_t* snapshotTraceBegin,
1021         size_t snapshotTraceBytes,
1022         android::base::BumpPool* pool,
1023         VkCommandBuffer commandBuffer,
1024         VkImage image,
1025         VkImageLayout imageLayout,
1026         const VkClearColorValue* pColor,
1027         uint32_t rangeCount,
1028         const VkImageSubresourceRange* pRanges);
1029     void vkCmdClearDepthStencilImage(
1030     const uint8_t* snapshotTraceBegin,
1031         size_t snapshotTraceBytes,
1032         android::base::BumpPool* pool,
1033         VkCommandBuffer commandBuffer,
1034         VkImage image,
1035         VkImageLayout imageLayout,
1036         const VkClearDepthStencilValue* pDepthStencil,
1037         uint32_t rangeCount,
1038         const VkImageSubresourceRange* pRanges);
1039     void vkCmdClearAttachments(
1040     const uint8_t* snapshotTraceBegin,
1041         size_t snapshotTraceBytes,
1042         android::base::BumpPool* pool,
1043         VkCommandBuffer commandBuffer,
1044         uint32_t attachmentCount,
1045         const VkClearAttachment* pAttachments,
1046         uint32_t rectCount,
1047         const VkClearRect* pRects);
1048     void vkCmdResolveImage(
1049     const uint8_t* snapshotTraceBegin,
1050         size_t snapshotTraceBytes,
1051         android::base::BumpPool* pool,
1052         VkCommandBuffer commandBuffer,
1053         VkImage srcImage,
1054         VkImageLayout srcImageLayout,
1055         VkImage dstImage,
1056         VkImageLayout dstImageLayout,
1057         uint32_t regionCount,
1058         const VkImageResolve* pRegions);
1059     void vkCmdSetEvent(
1060     const uint8_t* snapshotTraceBegin,
1061         size_t snapshotTraceBytes,
1062         android::base::BumpPool* pool,
1063         VkCommandBuffer commandBuffer,
1064         VkEvent event,
1065         VkPipelineStageFlags stageMask);
1066     void vkCmdResetEvent(
1067     const uint8_t* snapshotTraceBegin,
1068         size_t snapshotTraceBytes,
1069         android::base::BumpPool* pool,
1070         VkCommandBuffer commandBuffer,
1071         VkEvent event,
1072         VkPipelineStageFlags stageMask);
1073     void vkCmdWaitEvents(
1074     const uint8_t* snapshotTraceBegin,
1075         size_t snapshotTraceBytes,
1076         android::base::BumpPool* pool,
1077         VkCommandBuffer commandBuffer,
1078         uint32_t eventCount,
1079         const VkEvent* pEvents,
1080         VkPipelineStageFlags srcStageMask,
1081         VkPipelineStageFlags dstStageMask,
1082         uint32_t memoryBarrierCount,
1083         const VkMemoryBarrier* pMemoryBarriers,
1084         uint32_t bufferMemoryBarrierCount,
1085         const VkBufferMemoryBarrier* pBufferMemoryBarriers,
1086         uint32_t imageMemoryBarrierCount,
1087         const VkImageMemoryBarrier* pImageMemoryBarriers);
1088     void vkCmdPipelineBarrier(
1089     const uint8_t* snapshotTraceBegin,
1090         size_t snapshotTraceBytes,
1091         android::base::BumpPool* pool,
1092         VkCommandBuffer commandBuffer,
1093         VkPipelineStageFlags srcStageMask,
1094         VkPipelineStageFlags dstStageMask,
1095         VkDependencyFlags dependencyFlags,
1096         uint32_t memoryBarrierCount,
1097         const VkMemoryBarrier* pMemoryBarriers,
1098         uint32_t bufferMemoryBarrierCount,
1099         const VkBufferMemoryBarrier* pBufferMemoryBarriers,
1100         uint32_t imageMemoryBarrierCount,
1101         const VkImageMemoryBarrier* pImageMemoryBarriers);
1102     void vkCmdBeginQuery(
1103     const uint8_t* snapshotTraceBegin,
1104         size_t snapshotTraceBytes,
1105         android::base::BumpPool* pool,
1106         VkCommandBuffer commandBuffer,
1107         VkQueryPool queryPool,
1108         uint32_t query,
1109         VkQueryControlFlags flags);
1110     void vkCmdEndQuery(
1111     const uint8_t* snapshotTraceBegin,
1112         size_t snapshotTraceBytes,
1113         android::base::BumpPool* pool,
1114         VkCommandBuffer commandBuffer,
1115         VkQueryPool queryPool,
1116         uint32_t query);
1117     void vkCmdResetQueryPool(
1118     const uint8_t* snapshotTraceBegin,
1119         size_t snapshotTraceBytes,
1120         android::base::BumpPool* pool,
1121         VkCommandBuffer commandBuffer,
1122         VkQueryPool queryPool,
1123         uint32_t firstQuery,
1124         uint32_t queryCount);
1125     void vkCmdWriteTimestamp(
1126     const uint8_t* snapshotTraceBegin,
1127         size_t snapshotTraceBytes,
1128         android::base::BumpPool* pool,
1129         VkCommandBuffer commandBuffer,
1130         VkPipelineStageFlagBits pipelineStage,
1131         VkQueryPool queryPool,
1132         uint32_t query);
1133     void vkCmdCopyQueryPoolResults(
1134     const uint8_t* snapshotTraceBegin,
1135         size_t snapshotTraceBytes,
1136         android::base::BumpPool* pool,
1137         VkCommandBuffer commandBuffer,
1138         VkQueryPool queryPool,
1139         uint32_t firstQuery,
1140         uint32_t queryCount,
1141         VkBuffer dstBuffer,
1142         VkDeviceSize dstOffset,
1143         VkDeviceSize stride,
1144         VkQueryResultFlags flags);
1145     void vkCmdPushConstants(
1146     const uint8_t* snapshotTraceBegin,
1147         size_t snapshotTraceBytes,
1148         android::base::BumpPool* pool,
1149         VkCommandBuffer commandBuffer,
1150         VkPipelineLayout layout,
1151         VkShaderStageFlags stageFlags,
1152         uint32_t offset,
1153         uint32_t size,
1154         const void* pValues);
1155     void vkCmdBeginRenderPass(
1156     const uint8_t* snapshotTraceBegin,
1157         size_t snapshotTraceBytes,
1158         android::base::BumpPool* pool,
1159         VkCommandBuffer commandBuffer,
1160         const VkRenderPassBeginInfo* pRenderPassBegin,
1161         VkSubpassContents contents);
1162     void vkCmdNextSubpass(
1163     const uint8_t* snapshotTraceBegin,
1164         size_t snapshotTraceBytes,
1165         android::base::BumpPool* pool,
1166         VkCommandBuffer commandBuffer,
1167         VkSubpassContents contents);
1168     void vkCmdEndRenderPass(
1169     const uint8_t* snapshotTraceBegin,
1170         size_t snapshotTraceBytes,
1171         android::base::BumpPool* pool,
1172         VkCommandBuffer commandBuffer);
1173     void vkCmdExecuteCommands(
1174     const uint8_t* snapshotTraceBegin,
1175         size_t snapshotTraceBytes,
1176         android::base::BumpPool* pool,
1177         VkCommandBuffer commandBuffer,
1178         uint32_t commandBufferCount,
1179         const VkCommandBuffer* pCommandBuffers);
1180 #endif
1181 #ifdef VK_VERSION_1_1
1182     void vkEnumerateInstanceVersion(
1183     const uint8_t* snapshotTraceBegin,
1184         size_t snapshotTraceBytes,
1185         android::base::BumpPool* pool,
1186         VkResult input_result,
1187         uint32_t* pApiVersion);
1188     void vkBindBufferMemory2(
1189     const uint8_t* snapshotTraceBegin,
1190         size_t snapshotTraceBytes,
1191         android::base::BumpPool* pool,
1192         VkResult input_result,
1193         VkDevice device,
1194         uint32_t bindInfoCount,
1195         const VkBindBufferMemoryInfo* pBindInfos);
1196     void vkBindImageMemory2(
1197     const uint8_t* snapshotTraceBegin,
1198         size_t snapshotTraceBytes,
1199         android::base::BumpPool* pool,
1200         VkResult input_result,
1201         VkDevice device,
1202         uint32_t bindInfoCount,
1203         const VkBindImageMemoryInfo* pBindInfos);
1204     void vkGetDeviceGroupPeerMemoryFeatures(
1205     const uint8_t* snapshotTraceBegin,
1206         size_t snapshotTraceBytes,
1207         android::base::BumpPool* pool,
1208         VkDevice device,
1209         uint32_t heapIndex,
1210         uint32_t localDeviceIndex,
1211         uint32_t remoteDeviceIndex,
1212         VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);
1213     void vkCmdSetDeviceMask(
1214     const uint8_t* snapshotTraceBegin,
1215         size_t snapshotTraceBytes,
1216         android::base::BumpPool* pool,
1217         VkCommandBuffer commandBuffer,
1218         uint32_t deviceMask);
1219     void vkCmdDispatchBase(
1220     const uint8_t* snapshotTraceBegin,
1221         size_t snapshotTraceBytes,
1222         android::base::BumpPool* pool,
1223         VkCommandBuffer commandBuffer,
1224         uint32_t baseGroupX,
1225         uint32_t baseGroupY,
1226         uint32_t baseGroupZ,
1227         uint32_t groupCountX,
1228         uint32_t groupCountY,
1229         uint32_t groupCountZ);
1230     void vkEnumeratePhysicalDeviceGroups(
1231     const uint8_t* snapshotTraceBegin,
1232         size_t snapshotTraceBytes,
1233         android::base::BumpPool* pool,
1234         VkResult input_result,
1235         VkInstance instance,
1236         uint32_t* pPhysicalDeviceGroupCount,
1237         VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);
1238     void vkGetImageMemoryRequirements2(
1239     const uint8_t* snapshotTraceBegin,
1240         size_t snapshotTraceBytes,
1241         android::base::BumpPool* pool,
1242         VkDevice device,
1243         const VkImageMemoryRequirementsInfo2* pInfo,
1244         VkMemoryRequirements2* pMemoryRequirements);
1245     void vkGetBufferMemoryRequirements2(
1246     const uint8_t* snapshotTraceBegin,
1247         size_t snapshotTraceBytes,
1248         android::base::BumpPool* pool,
1249         VkDevice device,
1250         const VkBufferMemoryRequirementsInfo2* pInfo,
1251         VkMemoryRequirements2* pMemoryRequirements);
1252     void vkGetImageSparseMemoryRequirements2(
1253     const uint8_t* snapshotTraceBegin,
1254         size_t snapshotTraceBytes,
1255         android::base::BumpPool* pool,
1256         VkDevice device,
1257         const VkImageSparseMemoryRequirementsInfo2* pInfo,
1258         uint32_t* pSparseMemoryRequirementCount,
1259         VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
1260     void vkGetPhysicalDeviceFeatures2(
1261     const uint8_t* snapshotTraceBegin,
1262         size_t snapshotTraceBytes,
1263         android::base::BumpPool* pool,
1264         VkPhysicalDevice physicalDevice,
1265         VkPhysicalDeviceFeatures2* pFeatures);
1266     void vkGetPhysicalDeviceProperties2(
1267     const uint8_t* snapshotTraceBegin,
1268         size_t snapshotTraceBytes,
1269         android::base::BumpPool* pool,
1270         VkPhysicalDevice physicalDevice,
1271         VkPhysicalDeviceProperties2* pProperties);
1272     void vkGetPhysicalDeviceFormatProperties2(
1273     const uint8_t* snapshotTraceBegin,
1274         size_t snapshotTraceBytes,
1275         android::base::BumpPool* pool,
1276         VkPhysicalDevice physicalDevice,
1277         VkFormat format,
1278         VkFormatProperties2* pFormatProperties);
1279     void vkGetPhysicalDeviceImageFormatProperties2(
1280     const uint8_t* snapshotTraceBegin,
1281         size_t snapshotTraceBytes,
1282         android::base::BumpPool* pool,
1283         VkResult input_result,
1284         VkPhysicalDevice physicalDevice,
1285         const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,
1286         VkImageFormatProperties2* pImageFormatProperties);
1287     void vkGetPhysicalDeviceQueueFamilyProperties2(
1288     const uint8_t* snapshotTraceBegin,
1289         size_t snapshotTraceBytes,
1290         android::base::BumpPool* pool,
1291         VkPhysicalDevice physicalDevice,
1292         uint32_t* pQueueFamilyPropertyCount,
1293         VkQueueFamilyProperties2* pQueueFamilyProperties);
1294     void vkGetPhysicalDeviceMemoryProperties2(
1295     const uint8_t* snapshotTraceBegin,
1296         size_t snapshotTraceBytes,
1297         android::base::BumpPool* pool,
1298         VkPhysicalDevice physicalDevice,
1299         VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
1300     void vkGetPhysicalDeviceSparseImageFormatProperties2(
1301     const uint8_t* snapshotTraceBegin,
1302         size_t snapshotTraceBytes,
1303         android::base::BumpPool* pool,
1304         VkPhysicalDevice physicalDevice,
1305         const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,
1306         uint32_t* pPropertyCount,
1307         VkSparseImageFormatProperties2* pProperties);
1308     void vkTrimCommandPool(
1309     const uint8_t* snapshotTraceBegin,
1310         size_t snapshotTraceBytes,
1311         android::base::BumpPool* pool,
1312         VkDevice device,
1313         VkCommandPool commandPool,
1314         VkCommandPoolTrimFlags flags);
1315     void vkGetDeviceQueue2(
1316     const uint8_t* snapshotTraceBegin,
1317         size_t snapshotTraceBytes,
1318         android::base::BumpPool* pool,
1319         VkDevice device,
1320         const VkDeviceQueueInfo2* pQueueInfo,
1321         VkQueue* pQueue);
1322     void vkCreateSamplerYcbcrConversion(
1323     const uint8_t* snapshotTraceBegin,
1324         size_t snapshotTraceBytes,
1325         android::base::BumpPool* pool,
1326         VkResult input_result,
1327         VkDevice device,
1328         const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,
1329         const VkAllocationCallbacks* pAllocator,
1330         VkSamplerYcbcrConversion* pYcbcrConversion);
1331     void vkDestroySamplerYcbcrConversion(
1332     const uint8_t* snapshotTraceBegin,
1333         size_t snapshotTraceBytes,
1334         android::base::BumpPool* pool,
1335         VkDevice device,
1336         VkSamplerYcbcrConversion ycbcrConversion,
1337         const VkAllocationCallbacks* pAllocator);
1338     void vkCreateDescriptorUpdateTemplate(
1339     const uint8_t* snapshotTraceBegin,
1340         size_t snapshotTraceBytes,
1341         android::base::BumpPool* pool,
1342         VkResult input_result,
1343         VkDevice device,
1344         const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,
1345         const VkAllocationCallbacks* pAllocator,
1346         VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);
1347     void vkDestroyDescriptorUpdateTemplate(
1348     const uint8_t* snapshotTraceBegin,
1349         size_t snapshotTraceBytes,
1350         android::base::BumpPool* pool,
1351         VkDevice device,
1352         VkDescriptorUpdateTemplate descriptorUpdateTemplate,
1353         const VkAllocationCallbacks* pAllocator);
1354     void vkUpdateDescriptorSetWithTemplate(
1355     const uint8_t* snapshotTraceBegin,
1356         size_t snapshotTraceBytes,
1357         android::base::BumpPool* pool,
1358         VkDevice device,
1359         VkDescriptorSet descriptorSet,
1360         VkDescriptorUpdateTemplate descriptorUpdateTemplate,
1361         const void* pData);
1362     void vkGetPhysicalDeviceExternalBufferProperties(
1363     const uint8_t* snapshotTraceBegin,
1364         size_t snapshotTraceBytes,
1365         android::base::BumpPool* pool,
1366         VkPhysicalDevice physicalDevice,
1367         const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
1368         VkExternalBufferProperties* pExternalBufferProperties);
1369     void vkGetPhysicalDeviceExternalFenceProperties(
1370     const uint8_t* snapshotTraceBegin,
1371         size_t snapshotTraceBytes,
1372         android::base::BumpPool* pool,
1373         VkPhysicalDevice physicalDevice,
1374         const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
1375         VkExternalFenceProperties* pExternalFenceProperties);
1376     void vkGetPhysicalDeviceExternalSemaphoreProperties(
1377     const uint8_t* snapshotTraceBegin,
1378         size_t snapshotTraceBytes,
1379         android::base::BumpPool* pool,
1380         VkPhysicalDevice physicalDevice,
1381         const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
1382         VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
1383     void vkGetDescriptorSetLayoutSupport(
1384     const uint8_t* snapshotTraceBegin,
1385         size_t snapshotTraceBytes,
1386         android::base::BumpPool* pool,
1387         VkDevice device,
1388         const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
1389         VkDescriptorSetLayoutSupport* pSupport);
1390 #endif
1391 #ifdef VK_VERSION_1_2
1392     void vkCmdDrawIndirectCount(
1393     const uint8_t* snapshotTraceBegin,
1394         size_t snapshotTraceBytes,
1395         android::base::BumpPool* pool,
1396         VkCommandBuffer commandBuffer,
1397         VkBuffer buffer,
1398         VkDeviceSize offset,
1399         VkBuffer countBuffer,
1400         VkDeviceSize countBufferOffset,
1401         uint32_t maxDrawCount,
1402         uint32_t stride);
1403     void vkCmdDrawIndexedIndirectCount(
1404     const uint8_t* snapshotTraceBegin,
1405         size_t snapshotTraceBytes,
1406         android::base::BumpPool* pool,
1407         VkCommandBuffer commandBuffer,
1408         VkBuffer buffer,
1409         VkDeviceSize offset,
1410         VkBuffer countBuffer,
1411         VkDeviceSize countBufferOffset,
1412         uint32_t maxDrawCount,
1413         uint32_t stride);
1414     void vkCreateRenderPass2(
1415     const uint8_t* snapshotTraceBegin,
1416         size_t snapshotTraceBytes,
1417         android::base::BumpPool* pool,
1418         VkResult input_result,
1419         VkDevice device,
1420         const VkRenderPassCreateInfo2* pCreateInfo,
1421         const VkAllocationCallbacks* pAllocator,
1422         VkRenderPass* pRenderPass);
1423     void vkCmdBeginRenderPass2(
1424     const uint8_t* snapshotTraceBegin,
1425         size_t snapshotTraceBytes,
1426         android::base::BumpPool* pool,
1427         VkCommandBuffer commandBuffer,
1428         const VkRenderPassBeginInfo* pRenderPassBegin,
1429         const VkSubpassBeginInfo* pSubpassBeginInfo);
1430     void vkCmdNextSubpass2(
1431     const uint8_t* snapshotTraceBegin,
1432         size_t snapshotTraceBytes,
1433         android::base::BumpPool* pool,
1434         VkCommandBuffer commandBuffer,
1435         const VkSubpassBeginInfo* pSubpassBeginInfo,
1436         const VkSubpassEndInfo* pSubpassEndInfo);
1437     void vkCmdEndRenderPass2(
1438     const uint8_t* snapshotTraceBegin,
1439         size_t snapshotTraceBytes,
1440         android::base::BumpPool* pool,
1441         VkCommandBuffer commandBuffer,
1442         const VkSubpassEndInfo* pSubpassEndInfo);
1443     void vkResetQueryPool(
1444     const uint8_t* snapshotTraceBegin,
1445         size_t snapshotTraceBytes,
1446         android::base::BumpPool* pool,
1447         VkDevice device,
1448         VkQueryPool queryPool,
1449         uint32_t firstQuery,
1450         uint32_t queryCount);
1451     void vkGetSemaphoreCounterValue(
1452     const uint8_t* snapshotTraceBegin,
1453         size_t snapshotTraceBytes,
1454         android::base::BumpPool* pool,
1455         VkResult input_result,
1456         VkDevice device,
1457         VkSemaphore semaphore,
1458         uint64_t* pValue);
1459     void vkWaitSemaphores(
1460     const uint8_t* snapshotTraceBegin,
1461         size_t snapshotTraceBytes,
1462         android::base::BumpPool* pool,
1463         VkResult input_result,
1464         VkDevice device,
1465         const VkSemaphoreWaitInfo* pWaitInfo,
1466         uint64_t timeout);
1467     void vkSignalSemaphore(
1468     const uint8_t* snapshotTraceBegin,
1469         size_t snapshotTraceBytes,
1470         android::base::BumpPool* pool,
1471         VkResult input_result,
1472         VkDevice device,
1473         const VkSemaphoreSignalInfo* pSignalInfo);
1474     void vkGetBufferDeviceAddress(
1475     const uint8_t* snapshotTraceBegin,
1476         size_t snapshotTraceBytes,
1477         android::base::BumpPool* pool,
1478         VkDeviceAddress input_result,
1479         VkDevice device,
1480         const VkBufferDeviceAddressInfo* pInfo);
1481     void vkGetBufferOpaqueCaptureAddress(
1482     const uint8_t* snapshotTraceBegin,
1483         size_t snapshotTraceBytes,
1484         android::base::BumpPool* pool,
1485         uint64_t input_result,
1486         VkDevice device,
1487         const VkBufferDeviceAddressInfo* pInfo);
1488     void vkGetDeviceMemoryOpaqueCaptureAddress(
1489     const uint8_t* snapshotTraceBegin,
1490         size_t snapshotTraceBytes,
1491         android::base::BumpPool* pool,
1492         uint64_t input_result,
1493         VkDevice device,
1494         const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo);
1495 #endif
1496 #ifdef VK_KHR_surface
1497     void vkDestroySurfaceKHR(
1498     const uint8_t* snapshotTraceBegin,
1499         size_t snapshotTraceBytes,
1500         android::base::BumpPool* pool,
1501         VkInstance instance,
1502         VkSurfaceKHR surface,
1503         const VkAllocationCallbacks* pAllocator);
1504     void vkGetPhysicalDeviceSurfaceSupportKHR(
1505     const uint8_t* snapshotTraceBegin,
1506         size_t snapshotTraceBytes,
1507         android::base::BumpPool* pool,
1508         VkResult input_result,
1509         VkPhysicalDevice physicalDevice,
1510         uint32_t queueFamilyIndex,
1511         VkSurfaceKHR surface,
1512         VkBool32* pSupported);
1513     void vkGetPhysicalDeviceSurfaceCapabilitiesKHR(
1514     const uint8_t* snapshotTraceBegin,
1515         size_t snapshotTraceBytes,
1516         android::base::BumpPool* pool,
1517         VkResult input_result,
1518         VkPhysicalDevice physicalDevice,
1519         VkSurfaceKHR surface,
1520         VkSurfaceCapabilitiesKHR* pSurfaceCapabilities);
1521     void vkGetPhysicalDeviceSurfaceFormatsKHR(
1522     const uint8_t* snapshotTraceBegin,
1523         size_t snapshotTraceBytes,
1524         android::base::BumpPool* pool,
1525         VkResult input_result,
1526         VkPhysicalDevice physicalDevice,
1527         VkSurfaceKHR surface,
1528         uint32_t* pSurfaceFormatCount,
1529         VkSurfaceFormatKHR* pSurfaceFormats);
1530     void vkGetPhysicalDeviceSurfacePresentModesKHR(
1531     const uint8_t* snapshotTraceBegin,
1532         size_t snapshotTraceBytes,
1533         android::base::BumpPool* pool,
1534         VkResult input_result,
1535         VkPhysicalDevice physicalDevice,
1536         VkSurfaceKHR surface,
1537         uint32_t* pPresentModeCount,
1538         VkPresentModeKHR* pPresentModes);
1539 #endif
1540 #ifdef VK_KHR_swapchain
1541     void vkCreateSwapchainKHR(
1542     const uint8_t* snapshotTraceBegin,
1543         size_t snapshotTraceBytes,
1544         android::base::BumpPool* pool,
1545         VkResult input_result,
1546         VkDevice device,
1547         const VkSwapchainCreateInfoKHR* pCreateInfo,
1548         const VkAllocationCallbacks* pAllocator,
1549         VkSwapchainKHR* pSwapchain);
1550     void vkDestroySwapchainKHR(
1551     const uint8_t* snapshotTraceBegin,
1552         size_t snapshotTraceBytes,
1553         android::base::BumpPool* pool,
1554         VkDevice device,
1555         VkSwapchainKHR swapchain,
1556         const VkAllocationCallbacks* pAllocator);
1557     void vkGetSwapchainImagesKHR(
1558     const uint8_t* snapshotTraceBegin,
1559         size_t snapshotTraceBytes,
1560         android::base::BumpPool* pool,
1561         VkResult input_result,
1562         VkDevice device,
1563         VkSwapchainKHR swapchain,
1564         uint32_t* pSwapchainImageCount,
1565         VkImage* pSwapchainImages);
1566     void vkAcquireNextImageKHR(
1567     const uint8_t* snapshotTraceBegin,
1568         size_t snapshotTraceBytes,
1569         android::base::BumpPool* pool,
1570         VkResult input_result,
1571         VkDevice device,
1572         VkSwapchainKHR swapchain,
1573         uint64_t timeout,
1574         VkSemaphore semaphore,
1575         VkFence fence,
1576         uint32_t* pImageIndex);
1577     void vkQueuePresentKHR(
1578     const uint8_t* snapshotTraceBegin,
1579         size_t snapshotTraceBytes,
1580         android::base::BumpPool* pool,
1581         VkResult input_result,
1582         VkQueue queue,
1583         const VkPresentInfoKHR* pPresentInfo);
1584     void vkGetDeviceGroupPresentCapabilitiesKHR(
1585     const uint8_t* snapshotTraceBegin,
1586         size_t snapshotTraceBytes,
1587         android::base::BumpPool* pool,
1588         VkResult input_result,
1589         VkDevice device,
1590         VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities);
1591     void vkGetDeviceGroupSurfacePresentModesKHR(
1592     const uint8_t* snapshotTraceBegin,
1593         size_t snapshotTraceBytes,
1594         android::base::BumpPool* pool,
1595         VkResult input_result,
1596         VkDevice device,
1597         VkSurfaceKHR surface,
1598         VkDeviceGroupPresentModeFlagsKHR* pModes);
1599     void vkGetPhysicalDevicePresentRectanglesKHR(
1600     const uint8_t* snapshotTraceBegin,
1601         size_t snapshotTraceBytes,
1602         android::base::BumpPool* pool,
1603         VkResult input_result,
1604         VkPhysicalDevice physicalDevice,
1605         VkSurfaceKHR surface,
1606         uint32_t* pRectCount,
1607         VkRect2D* pRects);
1608     void vkAcquireNextImage2KHR(
1609     const uint8_t* snapshotTraceBegin,
1610         size_t snapshotTraceBytes,
1611         android::base::BumpPool* pool,
1612         VkResult input_result,
1613         VkDevice device,
1614         const VkAcquireNextImageInfoKHR* pAcquireInfo,
1615         uint32_t* pImageIndex);
1616 #endif
1617 #ifdef VK_KHR_display
1618     void vkGetPhysicalDeviceDisplayPropertiesKHR(
1619     const uint8_t* snapshotTraceBegin,
1620         size_t snapshotTraceBytes,
1621         android::base::BumpPool* pool,
1622         VkResult input_result,
1623         VkPhysicalDevice physicalDevice,
1624         uint32_t* pPropertyCount,
1625         VkDisplayPropertiesKHR* pProperties);
1626     void vkGetPhysicalDeviceDisplayPlanePropertiesKHR(
1627     const uint8_t* snapshotTraceBegin,
1628         size_t snapshotTraceBytes,
1629         android::base::BumpPool* pool,
1630         VkResult input_result,
1631         VkPhysicalDevice physicalDevice,
1632         uint32_t* pPropertyCount,
1633         VkDisplayPlanePropertiesKHR* pProperties);
1634     void vkGetDisplayPlaneSupportedDisplaysKHR(
1635     const uint8_t* snapshotTraceBegin,
1636         size_t snapshotTraceBytes,
1637         android::base::BumpPool* pool,
1638         VkResult input_result,
1639         VkPhysicalDevice physicalDevice,
1640         uint32_t planeIndex,
1641         uint32_t* pDisplayCount,
1642         VkDisplayKHR* pDisplays);
1643     void vkGetDisplayModePropertiesKHR(
1644     const uint8_t* snapshotTraceBegin,
1645         size_t snapshotTraceBytes,
1646         android::base::BumpPool* pool,
1647         VkResult input_result,
1648         VkPhysicalDevice physicalDevice,
1649         VkDisplayKHR display,
1650         uint32_t* pPropertyCount,
1651         VkDisplayModePropertiesKHR* pProperties);
1652     void vkCreateDisplayModeKHR(
1653     const uint8_t* snapshotTraceBegin,
1654         size_t snapshotTraceBytes,
1655         android::base::BumpPool* pool,
1656         VkResult input_result,
1657         VkPhysicalDevice physicalDevice,
1658         VkDisplayKHR display,
1659         const VkDisplayModeCreateInfoKHR* pCreateInfo,
1660         const VkAllocationCallbacks* pAllocator,
1661         VkDisplayModeKHR* pMode);
1662     void vkGetDisplayPlaneCapabilitiesKHR(
1663     const uint8_t* snapshotTraceBegin,
1664         size_t snapshotTraceBytes,
1665         android::base::BumpPool* pool,
1666         VkResult input_result,
1667         VkPhysicalDevice physicalDevice,
1668         VkDisplayModeKHR mode,
1669         uint32_t planeIndex,
1670         VkDisplayPlaneCapabilitiesKHR* pCapabilities);
1671     void vkCreateDisplayPlaneSurfaceKHR(
1672     const uint8_t* snapshotTraceBegin,
1673         size_t snapshotTraceBytes,
1674         android::base::BumpPool* pool,
1675         VkResult input_result,
1676         VkInstance instance,
1677         const VkDisplaySurfaceCreateInfoKHR* pCreateInfo,
1678         const VkAllocationCallbacks* pAllocator,
1679         VkSurfaceKHR* pSurface);
1680 #endif
1681 #ifdef VK_KHR_display_swapchain
1682     void vkCreateSharedSwapchainsKHR(
1683     const uint8_t* snapshotTraceBegin,
1684         size_t snapshotTraceBytes,
1685         android::base::BumpPool* pool,
1686         VkResult input_result,
1687         VkDevice device,
1688         uint32_t swapchainCount,
1689         const VkSwapchainCreateInfoKHR* pCreateInfos,
1690         const VkAllocationCallbacks* pAllocator,
1691         VkSwapchainKHR* pSwapchains);
1692 #endif
1693 #ifdef VK_KHR_xlib_surface
1694     void vkCreateXlibSurfaceKHR(
1695     const uint8_t* snapshotTraceBegin,
1696         size_t snapshotTraceBytes,
1697         android::base::BumpPool* pool,
1698         VkResult input_result,
1699         VkInstance instance,
1700         const VkXlibSurfaceCreateInfoKHR* pCreateInfo,
1701         const VkAllocationCallbacks* pAllocator,
1702         VkSurfaceKHR* pSurface);
1703     void vkGetPhysicalDeviceXlibPresentationSupportKHR(
1704     const uint8_t* snapshotTraceBegin,
1705         size_t snapshotTraceBytes,
1706         android::base::BumpPool* pool,
1707         VkBool32 input_result,
1708         VkPhysicalDevice physicalDevice,
1709         uint32_t queueFamilyIndex,
1710         Display* dpy,
1711         VisualID visualID);
1712 #endif
1713 #ifdef VK_KHR_xcb_surface
1714     void vkCreateXcbSurfaceKHR(
1715     const uint8_t* snapshotTraceBegin,
1716         size_t snapshotTraceBytes,
1717         android::base::BumpPool* pool,
1718         VkResult input_result,
1719         VkInstance instance,
1720         const VkXcbSurfaceCreateInfoKHR* pCreateInfo,
1721         const VkAllocationCallbacks* pAllocator,
1722         VkSurfaceKHR* pSurface);
1723     void vkGetPhysicalDeviceXcbPresentationSupportKHR(
1724     const uint8_t* snapshotTraceBegin,
1725         size_t snapshotTraceBytes,
1726         android::base::BumpPool* pool,
1727         VkBool32 input_result,
1728         VkPhysicalDevice physicalDevice,
1729         uint32_t queueFamilyIndex,
1730         xcb_connection_t* connection,
1731         xcb_visualid_t visual_id);
1732 #endif
1733 #ifdef VK_KHR_wayland_surface
1734     void vkCreateWaylandSurfaceKHR(
1735     const uint8_t* snapshotTraceBegin,
1736         size_t snapshotTraceBytes,
1737         android::base::BumpPool* pool,
1738         VkResult input_result,
1739         VkInstance instance,
1740         const VkWaylandSurfaceCreateInfoKHR* pCreateInfo,
1741         const VkAllocationCallbacks* pAllocator,
1742         VkSurfaceKHR* pSurface);
1743     void vkGetPhysicalDeviceWaylandPresentationSupportKHR(
1744     const uint8_t* snapshotTraceBegin,
1745         size_t snapshotTraceBytes,
1746         android::base::BumpPool* pool,
1747         VkBool32 input_result,
1748         VkPhysicalDevice physicalDevice,
1749         uint32_t queueFamilyIndex,
1750         wl_display* display);
1751 #endif
1752 #ifdef VK_KHR_android_surface
1753     void vkCreateAndroidSurfaceKHR(
1754     const uint8_t* snapshotTraceBegin,
1755         size_t snapshotTraceBytes,
1756         android::base::BumpPool* pool,
1757         VkResult input_result,
1758         VkInstance instance,
1759         const VkAndroidSurfaceCreateInfoKHR* pCreateInfo,
1760         const VkAllocationCallbacks* pAllocator,
1761         VkSurfaceKHR* pSurface);
1762 #endif
1763 #ifdef VK_KHR_win32_surface
1764     void vkCreateWin32SurfaceKHR(
1765     const uint8_t* snapshotTraceBegin,
1766         size_t snapshotTraceBytes,
1767         android::base::BumpPool* pool,
1768         VkResult input_result,
1769         VkInstance instance,
1770         const VkWin32SurfaceCreateInfoKHR* pCreateInfo,
1771         const VkAllocationCallbacks* pAllocator,
1772         VkSurfaceKHR* pSurface);
1773     void vkGetPhysicalDeviceWin32PresentationSupportKHR(
1774     const uint8_t* snapshotTraceBegin,
1775         size_t snapshotTraceBytes,
1776         android::base::BumpPool* pool,
1777         VkBool32 input_result,
1778         VkPhysicalDevice physicalDevice,
1779         uint32_t queueFamilyIndex);
1780 #endif
1781 #ifdef VK_KHR_sampler_mirror_clamp_to_edge
1782 #endif
1783 #ifdef VK_KHR_multiview
1784 #endif
1785 #ifdef VK_KHR_get_physical_device_properties2
1786     void vkGetPhysicalDeviceFeatures2KHR(
1787     const uint8_t* snapshotTraceBegin,
1788         size_t snapshotTraceBytes,
1789         android::base::BumpPool* pool,
1790         VkPhysicalDevice physicalDevice,
1791         VkPhysicalDeviceFeatures2* pFeatures);
1792     void vkGetPhysicalDeviceProperties2KHR(
1793     const uint8_t* snapshotTraceBegin,
1794         size_t snapshotTraceBytes,
1795         android::base::BumpPool* pool,
1796         VkPhysicalDevice physicalDevice,
1797         VkPhysicalDeviceProperties2* pProperties);
1798     void vkGetPhysicalDeviceFormatProperties2KHR(
1799     const uint8_t* snapshotTraceBegin,
1800         size_t snapshotTraceBytes,
1801         android::base::BumpPool* pool,
1802         VkPhysicalDevice physicalDevice,
1803         VkFormat format,
1804         VkFormatProperties2* pFormatProperties);
1805     void vkGetPhysicalDeviceImageFormatProperties2KHR(
1806     const uint8_t* snapshotTraceBegin,
1807         size_t snapshotTraceBytes,
1808         android::base::BumpPool* pool,
1809         VkResult input_result,
1810         VkPhysicalDevice physicalDevice,
1811         const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,
1812         VkImageFormatProperties2* pImageFormatProperties);
1813     void vkGetPhysicalDeviceQueueFamilyProperties2KHR(
1814     const uint8_t* snapshotTraceBegin,
1815         size_t snapshotTraceBytes,
1816         android::base::BumpPool* pool,
1817         VkPhysicalDevice physicalDevice,
1818         uint32_t* pQueueFamilyPropertyCount,
1819         VkQueueFamilyProperties2* pQueueFamilyProperties);
1820     void vkGetPhysicalDeviceMemoryProperties2KHR(
1821     const uint8_t* snapshotTraceBegin,
1822         size_t snapshotTraceBytes,
1823         android::base::BumpPool* pool,
1824         VkPhysicalDevice physicalDevice,
1825         VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
1826     void vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
1827     const uint8_t* snapshotTraceBegin,
1828         size_t snapshotTraceBytes,
1829         android::base::BumpPool* pool,
1830         VkPhysicalDevice physicalDevice,
1831         const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,
1832         uint32_t* pPropertyCount,
1833         VkSparseImageFormatProperties2* pProperties);
1834 #endif
1835 #ifdef VK_KHR_device_group
1836     void vkGetDeviceGroupPeerMemoryFeaturesKHR(
1837     const uint8_t* snapshotTraceBegin,
1838         size_t snapshotTraceBytes,
1839         android::base::BumpPool* pool,
1840         VkDevice device,
1841         uint32_t heapIndex,
1842         uint32_t localDeviceIndex,
1843         uint32_t remoteDeviceIndex,
1844         VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);
1845     void vkCmdSetDeviceMaskKHR(
1846     const uint8_t* snapshotTraceBegin,
1847         size_t snapshotTraceBytes,
1848         android::base::BumpPool* pool,
1849         VkCommandBuffer commandBuffer,
1850         uint32_t deviceMask);
1851     void vkCmdDispatchBaseKHR(
1852     const uint8_t* snapshotTraceBegin,
1853         size_t snapshotTraceBytes,
1854         android::base::BumpPool* pool,
1855         VkCommandBuffer commandBuffer,
1856         uint32_t baseGroupX,
1857         uint32_t baseGroupY,
1858         uint32_t baseGroupZ,
1859         uint32_t groupCountX,
1860         uint32_t groupCountY,
1861         uint32_t groupCountZ);
1862 #endif
1863 #ifdef VK_KHR_shader_draw_parameters
1864 #endif
1865 #ifdef VK_KHR_maintenance1
1866     void vkTrimCommandPoolKHR(
1867     const uint8_t* snapshotTraceBegin,
1868         size_t snapshotTraceBytes,
1869         android::base::BumpPool* pool,
1870         VkDevice device,
1871         VkCommandPool commandPool,
1872         VkCommandPoolTrimFlags flags);
1873 #endif
1874 #ifdef VK_KHR_device_group_creation
1875     void vkEnumeratePhysicalDeviceGroupsKHR(
1876     const uint8_t* snapshotTraceBegin,
1877         size_t snapshotTraceBytes,
1878         android::base::BumpPool* pool,
1879         VkResult input_result,
1880         VkInstance instance,
1881         uint32_t* pPhysicalDeviceGroupCount,
1882         VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);
1883 #endif
1884 #ifdef VK_KHR_external_memory_capabilities
1885     void vkGetPhysicalDeviceExternalBufferPropertiesKHR(
1886     const uint8_t* snapshotTraceBegin,
1887         size_t snapshotTraceBytes,
1888         android::base::BumpPool* pool,
1889         VkPhysicalDevice physicalDevice,
1890         const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
1891         VkExternalBufferProperties* pExternalBufferProperties);
1892 #endif
1893 #ifdef VK_KHR_external_memory
1894 #endif
1895 #ifdef VK_KHR_external_memory_win32
1896     void vkGetMemoryWin32HandleKHR(
1897     const uint8_t* snapshotTraceBegin,
1898         size_t snapshotTraceBytes,
1899         android::base::BumpPool* pool,
1900         VkResult input_result,
1901         VkDevice device,
1902         const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo,
1903         HANDLE* pHandle);
1904     void vkGetMemoryWin32HandlePropertiesKHR(
1905     const uint8_t* snapshotTraceBegin,
1906         size_t snapshotTraceBytes,
1907         android::base::BumpPool* pool,
1908         VkResult input_result,
1909         VkDevice device,
1910         VkExternalMemoryHandleTypeFlagBits handleType,
1911         HANDLE handle,
1912         VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties);
1913 #endif
1914 #ifdef VK_KHR_external_memory_fd
1915     void vkGetMemoryFdKHR(
1916     const uint8_t* snapshotTraceBegin,
1917         size_t snapshotTraceBytes,
1918         android::base::BumpPool* pool,
1919         VkResult input_result,
1920         VkDevice device,
1921         const VkMemoryGetFdInfoKHR* pGetFdInfo,
1922         int* pFd);
1923     void vkGetMemoryFdPropertiesKHR(
1924     const uint8_t* snapshotTraceBegin,
1925         size_t snapshotTraceBytes,
1926         android::base::BumpPool* pool,
1927         VkResult input_result,
1928         VkDevice device,
1929         VkExternalMemoryHandleTypeFlagBits handleType,
1930         int fd,
1931         VkMemoryFdPropertiesKHR* pMemoryFdProperties);
1932 #endif
1933 #ifdef VK_KHR_win32_keyed_mutex
1934 #endif
1935 #ifdef VK_KHR_external_semaphore_capabilities
1936     void vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(
1937     const uint8_t* snapshotTraceBegin,
1938         size_t snapshotTraceBytes,
1939         android::base::BumpPool* pool,
1940         VkPhysicalDevice physicalDevice,
1941         const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
1942         VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
1943 #endif
1944 #ifdef VK_KHR_external_semaphore
1945 #endif
1946 #ifdef VK_KHR_external_semaphore_win32
1947     void vkImportSemaphoreWin32HandleKHR(
1948     const uint8_t* snapshotTraceBegin,
1949         size_t snapshotTraceBytes,
1950         android::base::BumpPool* pool,
1951         VkResult input_result,
1952         VkDevice device,
1953         const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo);
1954     void vkGetSemaphoreWin32HandleKHR(
1955     const uint8_t* snapshotTraceBegin,
1956         size_t snapshotTraceBytes,
1957         android::base::BumpPool* pool,
1958         VkResult input_result,
1959         VkDevice device,
1960         const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo,
1961         HANDLE* pHandle);
1962 #endif
1963 #ifdef VK_KHR_external_semaphore_fd
1964     void vkImportSemaphoreFdKHR(
1965     const uint8_t* snapshotTraceBegin,
1966         size_t snapshotTraceBytes,
1967         android::base::BumpPool* pool,
1968         VkResult input_result,
1969         VkDevice device,
1970         const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo);
1971     void vkGetSemaphoreFdKHR(
1972     const uint8_t* snapshotTraceBegin,
1973         size_t snapshotTraceBytes,
1974         android::base::BumpPool* pool,
1975         VkResult input_result,
1976         VkDevice device,
1977         const VkSemaphoreGetFdInfoKHR* pGetFdInfo,
1978         int* pFd);
1979 #endif
1980 #ifdef VK_KHR_push_descriptor
1981     void vkCmdPushDescriptorSetKHR(
1982     const uint8_t* snapshotTraceBegin,
1983         size_t snapshotTraceBytes,
1984         android::base::BumpPool* pool,
1985         VkCommandBuffer commandBuffer,
1986         VkPipelineBindPoint pipelineBindPoint,
1987         VkPipelineLayout layout,
1988         uint32_t set,
1989         uint32_t descriptorWriteCount,
1990         const VkWriteDescriptorSet* pDescriptorWrites);
1991     void vkCmdPushDescriptorSetWithTemplateKHR(
1992     const uint8_t* snapshotTraceBegin,
1993         size_t snapshotTraceBytes,
1994         android::base::BumpPool* pool,
1995         VkCommandBuffer commandBuffer,
1996         VkDescriptorUpdateTemplate descriptorUpdateTemplate,
1997         VkPipelineLayout layout,
1998         uint32_t set,
1999         const void* pData);
2000 #endif
2001 #ifdef VK_KHR_shader_float16_int8
2002 #endif
2003 #ifdef VK_KHR_16bit_storage
2004 #endif
2005 #ifdef VK_KHR_incremental_present
2006 #endif
2007 #ifdef VK_KHR_descriptor_update_template
2008     void vkCreateDescriptorUpdateTemplateKHR(
2009     const uint8_t* snapshotTraceBegin,
2010         size_t snapshotTraceBytes,
2011         android::base::BumpPool* pool,
2012         VkResult input_result,
2013         VkDevice device,
2014         const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,
2015         const VkAllocationCallbacks* pAllocator,
2016         VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);
2017     void vkDestroyDescriptorUpdateTemplateKHR(
2018     const uint8_t* snapshotTraceBegin,
2019         size_t snapshotTraceBytes,
2020         android::base::BumpPool* pool,
2021         VkDevice device,
2022         VkDescriptorUpdateTemplate descriptorUpdateTemplate,
2023         const VkAllocationCallbacks* pAllocator);
2024     void vkUpdateDescriptorSetWithTemplateKHR(
2025     const uint8_t* snapshotTraceBegin,
2026         size_t snapshotTraceBytes,
2027         android::base::BumpPool* pool,
2028         VkDevice device,
2029         VkDescriptorSet descriptorSet,
2030         VkDescriptorUpdateTemplate descriptorUpdateTemplate,
2031         const void* pData);
2032 #endif
2033 #ifdef VK_KHR_imageless_framebuffer
2034 #endif
2035 #ifdef VK_KHR_create_renderpass2
2036     void vkCreateRenderPass2KHR(
2037     const uint8_t* snapshotTraceBegin,
2038         size_t snapshotTraceBytes,
2039         android::base::BumpPool* pool,
2040         VkResult input_result,
2041         VkDevice device,
2042         const VkRenderPassCreateInfo2* pCreateInfo,
2043         const VkAllocationCallbacks* pAllocator,
2044         VkRenderPass* pRenderPass);
2045     void vkCmdBeginRenderPass2KHR(
2046     const uint8_t* snapshotTraceBegin,
2047         size_t snapshotTraceBytes,
2048         android::base::BumpPool* pool,
2049         VkCommandBuffer commandBuffer,
2050         const VkRenderPassBeginInfo* pRenderPassBegin,
2051         const VkSubpassBeginInfo* pSubpassBeginInfo);
2052     void vkCmdNextSubpass2KHR(
2053     const uint8_t* snapshotTraceBegin,
2054         size_t snapshotTraceBytes,
2055         android::base::BumpPool* pool,
2056         VkCommandBuffer commandBuffer,
2057         const VkSubpassBeginInfo* pSubpassBeginInfo,
2058         const VkSubpassEndInfo* pSubpassEndInfo);
2059     void vkCmdEndRenderPass2KHR(
2060     const uint8_t* snapshotTraceBegin,
2061         size_t snapshotTraceBytes,
2062         android::base::BumpPool* pool,
2063         VkCommandBuffer commandBuffer,
2064         const VkSubpassEndInfo* pSubpassEndInfo);
2065 #endif
2066 #ifdef VK_KHR_shared_presentable_image
2067     void vkGetSwapchainStatusKHR(
2068     const uint8_t* snapshotTraceBegin,
2069         size_t snapshotTraceBytes,
2070         android::base::BumpPool* pool,
2071         VkResult input_result,
2072         VkDevice device,
2073         VkSwapchainKHR swapchain);
2074 #endif
2075 #ifdef VK_KHR_external_fence_capabilities
2076     void vkGetPhysicalDeviceExternalFencePropertiesKHR(
2077     const uint8_t* snapshotTraceBegin,
2078         size_t snapshotTraceBytes,
2079         android::base::BumpPool* pool,
2080         VkPhysicalDevice physicalDevice,
2081         const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
2082         VkExternalFenceProperties* pExternalFenceProperties);
2083 #endif
2084 #ifdef VK_KHR_external_fence
2085 #endif
2086 #ifdef VK_KHR_external_fence_win32
2087     void vkImportFenceWin32HandleKHR(
2088     const uint8_t* snapshotTraceBegin,
2089         size_t snapshotTraceBytes,
2090         android::base::BumpPool* pool,
2091         VkResult input_result,
2092         VkDevice device,
2093         const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo);
2094     void vkGetFenceWin32HandleKHR(
2095     const uint8_t* snapshotTraceBegin,
2096         size_t snapshotTraceBytes,
2097         android::base::BumpPool* pool,
2098         VkResult input_result,
2099         VkDevice device,
2100         const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo,
2101         HANDLE* pHandle);
2102 #endif
2103 #ifdef VK_KHR_external_fence_fd
2104     void vkImportFenceFdKHR(
2105     const uint8_t* snapshotTraceBegin,
2106         size_t snapshotTraceBytes,
2107         android::base::BumpPool* pool,
2108         VkResult input_result,
2109         VkDevice device,
2110         const VkImportFenceFdInfoKHR* pImportFenceFdInfo);
2111     void vkGetFenceFdKHR(
2112     const uint8_t* snapshotTraceBegin,
2113         size_t snapshotTraceBytes,
2114         android::base::BumpPool* pool,
2115         VkResult input_result,
2116         VkDevice device,
2117         const VkFenceGetFdInfoKHR* pGetFdInfo,
2118         int* pFd);
2119 #endif
2120 #ifdef VK_KHR_performance_query
2121     void vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
2122     const uint8_t* snapshotTraceBegin,
2123         size_t snapshotTraceBytes,
2124         android::base::BumpPool* pool,
2125         VkResult input_result,
2126         VkPhysicalDevice physicalDevice,
2127         uint32_t queueFamilyIndex,
2128         uint32_t* pCounterCount,
2129         VkPerformanceCounterKHR* pCounters,
2130         VkPerformanceCounterDescriptionKHR* pCounterDescriptions);
2131     void vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(
2132     const uint8_t* snapshotTraceBegin,
2133         size_t snapshotTraceBytes,
2134         android::base::BumpPool* pool,
2135         VkPhysicalDevice physicalDevice,
2136         const VkQueryPoolPerformanceCreateInfoKHR* pPerformanceQueryCreateInfo,
2137         uint32_t* pNumPasses);
2138     void vkAcquireProfilingLockKHR(
2139     const uint8_t* snapshotTraceBegin,
2140         size_t snapshotTraceBytes,
2141         android::base::BumpPool* pool,
2142         VkResult input_result,
2143         VkDevice device,
2144         const VkAcquireProfilingLockInfoKHR* pInfo);
2145     void vkReleaseProfilingLockKHR(
2146     const uint8_t* snapshotTraceBegin,
2147         size_t snapshotTraceBytes,
2148         android::base::BumpPool* pool,
2149         VkDevice device);
2150 #endif
2151 #ifdef VK_KHR_maintenance2
2152 #endif
2153 #ifdef VK_KHR_get_surface_capabilities2
2154     void vkGetPhysicalDeviceSurfaceCapabilities2KHR(
2155     const uint8_t* snapshotTraceBegin,
2156         size_t snapshotTraceBytes,
2157         android::base::BumpPool* pool,
2158         VkResult input_result,
2159         VkPhysicalDevice physicalDevice,
2160         const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
2161         VkSurfaceCapabilities2KHR* pSurfaceCapabilities);
2162     void vkGetPhysicalDeviceSurfaceFormats2KHR(
2163     const uint8_t* snapshotTraceBegin,
2164         size_t snapshotTraceBytes,
2165         android::base::BumpPool* pool,
2166         VkResult input_result,
2167         VkPhysicalDevice physicalDevice,
2168         const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
2169         uint32_t* pSurfaceFormatCount,
2170         VkSurfaceFormat2KHR* pSurfaceFormats);
2171 #endif
2172 #ifdef VK_KHR_variable_pointers
2173 #endif
2174 #ifdef VK_KHR_get_display_properties2
2175     void vkGetPhysicalDeviceDisplayProperties2KHR(
2176     const uint8_t* snapshotTraceBegin,
2177         size_t snapshotTraceBytes,
2178         android::base::BumpPool* pool,
2179         VkResult input_result,
2180         VkPhysicalDevice physicalDevice,
2181         uint32_t* pPropertyCount,
2182         VkDisplayProperties2KHR* pProperties);
2183     void vkGetPhysicalDeviceDisplayPlaneProperties2KHR(
2184     const uint8_t* snapshotTraceBegin,
2185         size_t snapshotTraceBytes,
2186         android::base::BumpPool* pool,
2187         VkResult input_result,
2188         VkPhysicalDevice physicalDevice,
2189         uint32_t* pPropertyCount,
2190         VkDisplayPlaneProperties2KHR* pProperties);
2191     void vkGetDisplayModeProperties2KHR(
2192     const uint8_t* snapshotTraceBegin,
2193         size_t snapshotTraceBytes,
2194         android::base::BumpPool* pool,
2195         VkResult input_result,
2196         VkPhysicalDevice physicalDevice,
2197         VkDisplayKHR display,
2198         uint32_t* pPropertyCount,
2199         VkDisplayModeProperties2KHR* pProperties);
2200     void vkGetDisplayPlaneCapabilities2KHR(
2201     const uint8_t* snapshotTraceBegin,
2202         size_t snapshotTraceBytes,
2203         android::base::BumpPool* pool,
2204         VkResult input_result,
2205         VkPhysicalDevice physicalDevice,
2206         const VkDisplayPlaneInfo2KHR* pDisplayPlaneInfo,
2207         VkDisplayPlaneCapabilities2KHR* pCapabilities);
2208 #endif
2209 #ifdef VK_KHR_dedicated_allocation
2210 #endif
2211 #ifdef VK_KHR_storage_buffer_storage_class
2212 #endif
2213 #ifdef VK_KHR_relaxed_block_layout
2214 #endif
2215 #ifdef VK_KHR_get_memory_requirements2
2216     void vkGetImageMemoryRequirements2KHR(
2217     const uint8_t* snapshotTraceBegin,
2218         size_t snapshotTraceBytes,
2219         android::base::BumpPool* pool,
2220         VkDevice device,
2221         const VkImageMemoryRequirementsInfo2* pInfo,
2222         VkMemoryRequirements2* pMemoryRequirements);
2223     void vkGetBufferMemoryRequirements2KHR(
2224     const uint8_t* snapshotTraceBegin,
2225         size_t snapshotTraceBytes,
2226         android::base::BumpPool* pool,
2227         VkDevice device,
2228         const VkBufferMemoryRequirementsInfo2* pInfo,
2229         VkMemoryRequirements2* pMemoryRequirements);
2230     void vkGetImageSparseMemoryRequirements2KHR(
2231     const uint8_t* snapshotTraceBegin,
2232         size_t snapshotTraceBytes,
2233         android::base::BumpPool* pool,
2234         VkDevice device,
2235         const VkImageSparseMemoryRequirementsInfo2* pInfo,
2236         uint32_t* pSparseMemoryRequirementCount,
2237         VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
2238 #endif
2239 #ifdef VK_KHR_image_format_list
2240 #endif
2241 #ifdef VK_KHR_sampler_ycbcr_conversion
2242     void vkCreateSamplerYcbcrConversionKHR(
2243     const uint8_t* snapshotTraceBegin,
2244         size_t snapshotTraceBytes,
2245         android::base::BumpPool* pool,
2246         VkResult input_result,
2247         VkDevice device,
2248         const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,
2249         const VkAllocationCallbacks* pAllocator,
2250         VkSamplerYcbcrConversion* pYcbcrConversion);
2251     void vkDestroySamplerYcbcrConversionKHR(
2252     const uint8_t* snapshotTraceBegin,
2253         size_t snapshotTraceBytes,
2254         android::base::BumpPool* pool,
2255         VkDevice device,
2256         VkSamplerYcbcrConversion ycbcrConversion,
2257         const VkAllocationCallbacks* pAllocator);
2258 #endif
2259 #ifdef VK_KHR_bind_memory2
2260     void vkBindBufferMemory2KHR(
2261     const uint8_t* snapshotTraceBegin,
2262         size_t snapshotTraceBytes,
2263         android::base::BumpPool* pool,
2264         VkResult input_result,
2265         VkDevice device,
2266         uint32_t bindInfoCount,
2267         const VkBindBufferMemoryInfo* pBindInfos);
2268     void vkBindImageMemory2KHR(
2269     const uint8_t* snapshotTraceBegin,
2270         size_t snapshotTraceBytes,
2271         android::base::BumpPool* pool,
2272         VkResult input_result,
2273         VkDevice device,
2274         uint32_t bindInfoCount,
2275         const VkBindImageMemoryInfo* pBindInfos);
2276 #endif
2277 #ifdef VK_KHR_portability_subset
2278 #endif
2279 #ifdef VK_KHR_maintenance3
2280     void vkGetDescriptorSetLayoutSupportKHR(
2281     const uint8_t* snapshotTraceBegin,
2282         size_t snapshotTraceBytes,
2283         android::base::BumpPool* pool,
2284         VkDevice device,
2285         const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
2286         VkDescriptorSetLayoutSupport* pSupport);
2287 #endif
2288 #ifdef VK_KHR_draw_indirect_count
2289     void vkCmdDrawIndirectCountKHR(
2290     const uint8_t* snapshotTraceBegin,
2291         size_t snapshotTraceBytes,
2292         android::base::BumpPool* pool,
2293         VkCommandBuffer commandBuffer,
2294         VkBuffer buffer,
2295         VkDeviceSize offset,
2296         VkBuffer countBuffer,
2297         VkDeviceSize countBufferOffset,
2298         uint32_t maxDrawCount,
2299         uint32_t stride);
2300     void vkCmdDrawIndexedIndirectCountKHR(
2301     const uint8_t* snapshotTraceBegin,
2302         size_t snapshotTraceBytes,
2303         android::base::BumpPool* pool,
2304         VkCommandBuffer commandBuffer,
2305         VkBuffer buffer,
2306         VkDeviceSize offset,
2307         VkBuffer countBuffer,
2308         VkDeviceSize countBufferOffset,
2309         uint32_t maxDrawCount,
2310         uint32_t stride);
2311 #endif
2312 #ifdef VK_KHR_shader_subgroup_extended_types
2313 #endif
2314 #ifdef VK_KHR_8bit_storage
2315 #endif
2316 #ifdef VK_KHR_shader_atomic_int64
2317 #endif
2318 #ifdef VK_KHR_shader_clock
2319 #endif
2320 #ifdef VK_KHR_driver_properties
2321 #endif
2322 #ifdef VK_KHR_shader_float_controls
2323 #endif
2324 #ifdef VK_KHR_depth_stencil_resolve
2325 #endif
2326 #ifdef VK_KHR_swapchain_mutable_format
2327 #endif
2328 #ifdef VK_KHR_timeline_semaphore
2329     void vkGetSemaphoreCounterValueKHR(
2330     const uint8_t* snapshotTraceBegin,
2331         size_t snapshotTraceBytes,
2332         android::base::BumpPool* pool,
2333         VkResult input_result,
2334         VkDevice device,
2335         VkSemaphore semaphore,
2336         uint64_t* pValue);
2337     void vkWaitSemaphoresKHR(
2338     const uint8_t* snapshotTraceBegin,
2339         size_t snapshotTraceBytes,
2340         android::base::BumpPool* pool,
2341         VkResult input_result,
2342         VkDevice device,
2343         const VkSemaphoreWaitInfo* pWaitInfo,
2344         uint64_t timeout);
2345     void vkSignalSemaphoreKHR(
2346     const uint8_t* snapshotTraceBegin,
2347         size_t snapshotTraceBytes,
2348         android::base::BumpPool* pool,
2349         VkResult input_result,
2350         VkDevice device,
2351         const VkSemaphoreSignalInfo* pSignalInfo);
2352 #endif
2353 #ifdef VK_KHR_vulkan_memory_model
2354 #endif
2355 #ifdef VK_KHR_shader_terminate_invocation
2356 #endif
2357 #ifdef VK_KHR_fragment_shading_rate
2358     void vkGetPhysicalDeviceFragmentShadingRatesKHR(
2359     const uint8_t* snapshotTraceBegin,
2360         size_t snapshotTraceBytes,
2361         android::base::BumpPool* pool,
2362         VkResult input_result,
2363         VkPhysicalDevice physicalDevice,
2364         uint32_t* pFragmentShadingRateCount,
2365         VkPhysicalDeviceFragmentShadingRateKHR* pFragmentShadingRates);
2366     void vkCmdSetFragmentShadingRateKHR(
2367     const uint8_t* snapshotTraceBegin,
2368         size_t snapshotTraceBytes,
2369         android::base::BumpPool* pool,
2370         VkCommandBuffer commandBuffer,
2371         const VkExtent2D* pFragmentSize,
2372         const VkFragmentShadingRateCombinerOpKHR combinerOps[2]);
2373 #endif
2374 #ifdef VK_KHR_spirv_1_4
2375 #endif
2376 #ifdef VK_KHR_surface_protected_capabilities
2377 #endif
2378 #ifdef VK_KHR_separate_depth_stencil_layouts
2379 #endif
2380 #ifdef VK_KHR_uniform_buffer_standard_layout
2381 #endif
2382 #ifdef VK_KHR_buffer_device_address
2383     void vkGetBufferDeviceAddressKHR(
2384     const uint8_t* snapshotTraceBegin,
2385         size_t snapshotTraceBytes,
2386         android::base::BumpPool* pool,
2387         VkDeviceAddress input_result,
2388         VkDevice device,
2389         const VkBufferDeviceAddressInfo* pInfo);
2390     void vkGetBufferOpaqueCaptureAddressKHR(
2391     const uint8_t* snapshotTraceBegin,
2392         size_t snapshotTraceBytes,
2393         android::base::BumpPool* pool,
2394         uint64_t input_result,
2395         VkDevice device,
2396         const VkBufferDeviceAddressInfo* pInfo);
2397     void vkGetDeviceMemoryOpaqueCaptureAddressKHR(
2398     const uint8_t* snapshotTraceBegin,
2399         size_t snapshotTraceBytes,
2400         android::base::BumpPool* pool,
2401         uint64_t input_result,
2402         VkDevice device,
2403         const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo);
2404 #endif
2405 #ifdef VK_KHR_deferred_host_operations
2406     void vkCreateDeferredOperationKHR(
2407     const uint8_t* snapshotTraceBegin,
2408         size_t snapshotTraceBytes,
2409         android::base::BumpPool* pool,
2410         VkResult input_result,
2411         VkDevice device,
2412         const VkAllocationCallbacks* pAllocator,
2413         VkDeferredOperationKHR* pDeferredOperation);
2414     void vkDestroyDeferredOperationKHR(
2415     const uint8_t* snapshotTraceBegin,
2416         size_t snapshotTraceBytes,
2417         android::base::BumpPool* pool,
2418         VkDevice device,
2419         VkDeferredOperationKHR operation,
2420         const VkAllocationCallbacks* pAllocator);
2421     void vkGetDeferredOperationMaxConcurrencyKHR(
2422     const uint8_t* snapshotTraceBegin,
2423         size_t snapshotTraceBytes,
2424         android::base::BumpPool* pool,
2425         uint32_t input_result,
2426         VkDevice device,
2427         VkDeferredOperationKHR operation);
2428     void vkGetDeferredOperationResultKHR(
2429     const uint8_t* snapshotTraceBegin,
2430         size_t snapshotTraceBytes,
2431         android::base::BumpPool* pool,
2432         VkResult input_result,
2433         VkDevice device,
2434         VkDeferredOperationKHR operation);
2435     void vkDeferredOperationJoinKHR(
2436     const uint8_t* snapshotTraceBegin,
2437         size_t snapshotTraceBytes,
2438         android::base::BumpPool* pool,
2439         VkResult input_result,
2440         VkDevice device,
2441         VkDeferredOperationKHR operation);
2442 #endif
2443 #ifdef VK_KHR_pipeline_executable_properties
2444     void vkGetPipelineExecutablePropertiesKHR(
2445     const uint8_t* snapshotTraceBegin,
2446         size_t snapshotTraceBytes,
2447         android::base::BumpPool* pool,
2448         VkResult input_result,
2449         VkDevice device,
2450         const VkPipelineInfoKHR* pPipelineInfo,
2451         uint32_t* pExecutableCount,
2452         VkPipelineExecutablePropertiesKHR* pProperties);
2453     void vkGetPipelineExecutableStatisticsKHR(
2454     const uint8_t* snapshotTraceBegin,
2455         size_t snapshotTraceBytes,
2456         android::base::BumpPool* pool,
2457         VkResult input_result,
2458         VkDevice device,
2459         const VkPipelineExecutableInfoKHR* pExecutableInfo,
2460         uint32_t* pStatisticCount,
2461         VkPipelineExecutableStatisticKHR* pStatistics);
2462     void vkGetPipelineExecutableInternalRepresentationsKHR(
2463     const uint8_t* snapshotTraceBegin,
2464         size_t snapshotTraceBytes,
2465         android::base::BumpPool* pool,
2466         VkResult input_result,
2467         VkDevice device,
2468         const VkPipelineExecutableInfoKHR* pExecutableInfo,
2469         uint32_t* pInternalRepresentationCount,
2470         VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations);
2471 #endif
2472 #ifdef VK_KHR_pipeline_library
2473 #endif
2474 #ifdef VK_KHR_shader_non_semantic_info
2475 #endif
2476 #ifdef VK_KHR_copy_commands2
2477     void vkCmdCopyBuffer2KHR(
2478     const uint8_t* snapshotTraceBegin,
2479         size_t snapshotTraceBytes,
2480         android::base::BumpPool* pool,
2481         VkCommandBuffer commandBuffer,
2482         const VkCopyBufferInfo2KHR* pCopyBufferInfo);
2483     void vkCmdCopyImage2KHR(
2484     const uint8_t* snapshotTraceBegin,
2485         size_t snapshotTraceBytes,
2486         android::base::BumpPool* pool,
2487         VkCommandBuffer commandBuffer,
2488         const VkCopyImageInfo2KHR* pCopyImageInfo);
2489     void vkCmdCopyBufferToImage2KHR(
2490     const uint8_t* snapshotTraceBegin,
2491         size_t snapshotTraceBytes,
2492         android::base::BumpPool* pool,
2493         VkCommandBuffer commandBuffer,
2494         const VkCopyBufferToImageInfo2KHR* pCopyBufferToImageInfo);
2495     void vkCmdCopyImageToBuffer2KHR(
2496     const uint8_t* snapshotTraceBegin,
2497         size_t snapshotTraceBytes,
2498         android::base::BumpPool* pool,
2499         VkCommandBuffer commandBuffer,
2500         const VkCopyImageToBufferInfo2KHR* pCopyImageToBufferInfo);
2501     void vkCmdBlitImage2KHR(
2502     const uint8_t* snapshotTraceBegin,
2503         size_t snapshotTraceBytes,
2504         android::base::BumpPool* pool,
2505         VkCommandBuffer commandBuffer,
2506         const VkBlitImageInfo2KHR* pBlitImageInfo);
2507     void vkCmdResolveImage2KHR(
2508     const uint8_t* snapshotTraceBegin,
2509         size_t snapshotTraceBytes,
2510         android::base::BumpPool* pool,
2511         VkCommandBuffer commandBuffer,
2512         const VkResolveImageInfo2KHR* pResolveImageInfo);
2513 #endif
2514 #ifdef VK_ANDROID_native_buffer
2515     void vkGetSwapchainGrallocUsageANDROID(
2516     const uint8_t* snapshotTraceBegin,
2517         size_t snapshotTraceBytes,
2518         android::base::BumpPool* pool,
2519         VkResult input_result,
2520         VkDevice device,
2521         VkFormat format,
2522         VkImageUsageFlags imageUsage,
2523         int* grallocUsage);
2524     void vkAcquireImageANDROID(
2525     const uint8_t* snapshotTraceBegin,
2526         size_t snapshotTraceBytes,
2527         android::base::BumpPool* pool,
2528         VkResult input_result,
2529         VkDevice device,
2530         VkImage image,
2531         int nativeFenceFd,
2532         VkSemaphore semaphore,
2533         VkFence fence);
2534     void vkQueueSignalReleaseImageANDROID(
2535     const uint8_t* snapshotTraceBegin,
2536         size_t snapshotTraceBytes,
2537         android::base::BumpPool* pool,
2538         VkResult input_result,
2539         VkQueue queue,
2540         uint32_t waitSemaphoreCount,
2541         const VkSemaphore* pWaitSemaphores,
2542         VkImage image,
2543         int* pNativeFenceFd);
2544 #endif
2545 #ifdef VK_EXT_debug_report
2546     void vkCreateDebugReportCallbackEXT(
2547     const uint8_t* snapshotTraceBegin,
2548         size_t snapshotTraceBytes,
2549         android::base::BumpPool* pool,
2550         VkResult input_result,
2551         VkInstance instance,
2552         const VkDebugReportCallbackCreateInfoEXT* pCreateInfo,
2553         const VkAllocationCallbacks* pAllocator,
2554         VkDebugReportCallbackEXT* pCallback);
2555     void vkDestroyDebugReportCallbackEXT(
2556     const uint8_t* snapshotTraceBegin,
2557         size_t snapshotTraceBytes,
2558         android::base::BumpPool* pool,
2559         VkInstance instance,
2560         VkDebugReportCallbackEXT callback,
2561         const VkAllocationCallbacks* pAllocator);
2562     void vkDebugReportMessageEXT(
2563     const uint8_t* snapshotTraceBegin,
2564         size_t snapshotTraceBytes,
2565         android::base::BumpPool* pool,
2566         VkInstance instance,
2567         VkDebugReportFlagsEXT flags,
2568         VkDebugReportObjectTypeEXT objectType,
2569         uint64_t object,
2570         size_t location,
2571         int32_t messageCode,
2572         const char* pLayerPrefix,
2573         const char* pMessage);
2574 #endif
2575 #ifdef VK_NV_glsl_shader
2576 #endif
2577 #ifdef VK_EXT_depth_range_unrestricted
2578 #endif
2579 #ifdef VK_IMG_filter_cubic
2580 #endif
2581 #ifdef VK_AMD_rasterization_order
2582 #endif
2583 #ifdef VK_AMD_shader_trinary_minmax
2584 #endif
2585 #ifdef VK_AMD_shader_explicit_vertex_parameter
2586 #endif
2587 #ifdef VK_EXT_debug_marker
2588     void vkDebugMarkerSetObjectTagEXT(
2589     const uint8_t* snapshotTraceBegin,
2590         size_t snapshotTraceBytes,
2591         android::base::BumpPool* pool,
2592         VkResult input_result,
2593         VkDevice device,
2594         const VkDebugMarkerObjectTagInfoEXT* pTagInfo);
2595     void vkDebugMarkerSetObjectNameEXT(
2596     const uint8_t* snapshotTraceBegin,
2597         size_t snapshotTraceBytes,
2598         android::base::BumpPool* pool,
2599         VkResult input_result,
2600         VkDevice device,
2601         const VkDebugMarkerObjectNameInfoEXT* pNameInfo);
2602     void vkCmdDebugMarkerBeginEXT(
2603     const uint8_t* snapshotTraceBegin,
2604         size_t snapshotTraceBytes,
2605         android::base::BumpPool* pool,
2606         VkCommandBuffer commandBuffer,
2607         const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);
2608     void vkCmdDebugMarkerEndEXT(
2609     const uint8_t* snapshotTraceBegin,
2610         size_t snapshotTraceBytes,
2611         android::base::BumpPool* pool,
2612         VkCommandBuffer commandBuffer);
2613     void vkCmdDebugMarkerInsertEXT(
2614     const uint8_t* snapshotTraceBegin,
2615         size_t snapshotTraceBytes,
2616         android::base::BumpPool* pool,
2617         VkCommandBuffer commandBuffer,
2618         const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);
2619 #endif
2620 #ifdef VK_AMD_gcn_shader
2621 #endif
2622 #ifdef VK_NV_dedicated_allocation
2623 #endif
2624 #ifdef VK_EXT_transform_feedback
2625     void vkCmdBindTransformFeedbackBuffersEXT(
2626     const uint8_t* snapshotTraceBegin,
2627         size_t snapshotTraceBytes,
2628         android::base::BumpPool* pool,
2629         VkCommandBuffer commandBuffer,
2630         uint32_t firstBinding,
2631         uint32_t bindingCount,
2632         const VkBuffer* pBuffers,
2633         const VkDeviceSize* pOffsets,
2634         const VkDeviceSize* pSizes);
2635     void vkCmdBeginTransformFeedbackEXT(
2636     const uint8_t* snapshotTraceBegin,
2637         size_t snapshotTraceBytes,
2638         android::base::BumpPool* pool,
2639         VkCommandBuffer commandBuffer,
2640         uint32_t firstCounterBuffer,
2641         uint32_t counterBufferCount,
2642         const VkBuffer* pCounterBuffers,
2643         const VkDeviceSize* pCounterBufferOffsets);
2644     void vkCmdEndTransformFeedbackEXT(
2645     const uint8_t* snapshotTraceBegin,
2646         size_t snapshotTraceBytes,
2647         android::base::BumpPool* pool,
2648         VkCommandBuffer commandBuffer,
2649         uint32_t firstCounterBuffer,
2650         uint32_t counterBufferCount,
2651         const VkBuffer* pCounterBuffers,
2652         const VkDeviceSize* pCounterBufferOffsets);
2653     void vkCmdBeginQueryIndexedEXT(
2654     const uint8_t* snapshotTraceBegin,
2655         size_t snapshotTraceBytes,
2656         android::base::BumpPool* pool,
2657         VkCommandBuffer commandBuffer,
2658         VkQueryPool queryPool,
2659         uint32_t query,
2660         VkQueryControlFlags flags,
2661         uint32_t index);
2662     void vkCmdEndQueryIndexedEXT(
2663     const uint8_t* snapshotTraceBegin,
2664         size_t snapshotTraceBytes,
2665         android::base::BumpPool* pool,
2666         VkCommandBuffer commandBuffer,
2667         VkQueryPool queryPool,
2668         uint32_t query,
2669         uint32_t index);
2670     void vkCmdDrawIndirectByteCountEXT(
2671     const uint8_t* snapshotTraceBegin,
2672         size_t snapshotTraceBytes,
2673         android::base::BumpPool* pool,
2674         VkCommandBuffer commandBuffer,
2675         uint32_t instanceCount,
2676         uint32_t firstInstance,
2677         VkBuffer counterBuffer,
2678         VkDeviceSize counterBufferOffset,
2679         uint32_t counterOffset,
2680         uint32_t vertexStride);
2681 #endif
2682 #ifdef VK_NVX_image_view_handle
2683     void vkGetImageViewHandleNVX(
2684     const uint8_t* snapshotTraceBegin,
2685         size_t snapshotTraceBytes,
2686         android::base::BumpPool* pool,
2687         uint32_t input_result,
2688         VkDevice device,
2689         const VkImageViewHandleInfoNVX* pInfo);
2690     void vkGetImageViewAddressNVX(
2691     const uint8_t* snapshotTraceBegin,
2692         size_t snapshotTraceBytes,
2693         android::base::BumpPool* pool,
2694         VkResult input_result,
2695         VkDevice device,
2696         VkImageView imageView,
2697         VkImageViewAddressPropertiesNVX* pProperties);
2698 #endif
2699 #ifdef VK_AMD_draw_indirect_count
2700     void vkCmdDrawIndirectCountAMD(
2701     const uint8_t* snapshotTraceBegin,
2702         size_t snapshotTraceBytes,
2703         android::base::BumpPool* pool,
2704         VkCommandBuffer commandBuffer,
2705         VkBuffer buffer,
2706         VkDeviceSize offset,
2707         VkBuffer countBuffer,
2708         VkDeviceSize countBufferOffset,
2709         uint32_t maxDrawCount,
2710         uint32_t stride);
2711     void vkCmdDrawIndexedIndirectCountAMD(
2712     const uint8_t* snapshotTraceBegin,
2713         size_t snapshotTraceBytes,
2714         android::base::BumpPool* pool,
2715         VkCommandBuffer commandBuffer,
2716         VkBuffer buffer,
2717         VkDeviceSize offset,
2718         VkBuffer countBuffer,
2719         VkDeviceSize countBufferOffset,
2720         uint32_t maxDrawCount,
2721         uint32_t stride);
2722 #endif
2723 #ifdef VK_AMD_negative_viewport_height
2724 #endif
2725 #ifdef VK_AMD_gpu_shader_half_float
2726 #endif
2727 #ifdef VK_AMD_shader_ballot
2728 #endif
2729 #ifdef VK_AMD_texture_gather_bias_lod
2730 #endif
2731 #ifdef VK_AMD_shader_info
2732     void vkGetShaderInfoAMD(
2733     const uint8_t* snapshotTraceBegin,
2734         size_t snapshotTraceBytes,
2735         android::base::BumpPool* pool,
2736         VkResult input_result,
2737         VkDevice device,
2738         VkPipeline pipeline,
2739         VkShaderStageFlagBits shaderStage,
2740         VkShaderInfoTypeAMD infoType,
2741         size_t* pInfoSize,
2742         void* pInfo);
2743 #endif
2744 #ifdef VK_AMD_shader_image_load_store_lod
2745 #endif
2746 #ifdef VK_GGP_stream_descriptor_surface
2747     void vkCreateStreamDescriptorSurfaceGGP(
2748     const uint8_t* snapshotTraceBegin,
2749         size_t snapshotTraceBytes,
2750         android::base::BumpPool* pool,
2751         VkResult input_result,
2752         VkInstance instance,
2753         const VkStreamDescriptorSurfaceCreateInfoGGP* pCreateInfo,
2754         const VkAllocationCallbacks* pAllocator,
2755         VkSurfaceKHR* pSurface);
2756 #endif
2757 #ifdef VK_NV_corner_sampled_image
2758 #endif
2759 #ifdef VK_IMG_format_pvrtc
2760 #endif
2761 #ifdef VK_NV_external_memory_capabilities
2762     void vkGetPhysicalDeviceExternalImageFormatPropertiesNV(
2763     const uint8_t* snapshotTraceBegin,
2764         size_t snapshotTraceBytes,
2765         android::base::BumpPool* pool,
2766         VkResult input_result,
2767         VkPhysicalDevice physicalDevice,
2768         VkFormat format,
2769         VkImageType type,
2770         VkImageTiling tiling,
2771         VkImageUsageFlags usage,
2772         VkImageCreateFlags flags,
2773         VkExternalMemoryHandleTypeFlagsNV externalHandleType,
2774         VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);
2775 #endif
2776 #ifdef VK_NV_external_memory
2777 #endif
2778 #ifdef VK_NV_external_memory_win32
2779     void vkGetMemoryWin32HandleNV(
2780     const uint8_t* snapshotTraceBegin,
2781         size_t snapshotTraceBytes,
2782         android::base::BumpPool* pool,
2783         VkResult input_result,
2784         VkDevice device,
2785         VkDeviceMemory memory,
2786         VkExternalMemoryHandleTypeFlagsNV handleType,
2787         HANDLE* pHandle);
2788 #endif
2789 #ifdef VK_NV_win32_keyed_mutex
2790 #endif
2791 #ifdef VK_EXT_validation_flags
2792 #endif
2793 #ifdef VK_NN_vi_surface
2794     void vkCreateViSurfaceNN(
2795     const uint8_t* snapshotTraceBegin,
2796         size_t snapshotTraceBytes,
2797         android::base::BumpPool* pool,
2798         VkResult input_result,
2799         VkInstance instance,
2800         const VkViSurfaceCreateInfoNN* pCreateInfo,
2801         const VkAllocationCallbacks* pAllocator,
2802         VkSurfaceKHR* pSurface);
2803 #endif
2804 #ifdef VK_EXT_shader_subgroup_ballot
2805 #endif
2806 #ifdef VK_EXT_shader_subgroup_vote
2807 #endif
2808 #ifdef VK_EXT_texture_compression_astc_hdr
2809 #endif
2810 #ifdef VK_EXT_astc_decode_mode
2811 #endif
2812 #ifdef VK_EXT_conditional_rendering
2813     void vkCmdBeginConditionalRenderingEXT(
2814     const uint8_t* snapshotTraceBegin,
2815         size_t snapshotTraceBytes,
2816         android::base::BumpPool* pool,
2817         VkCommandBuffer commandBuffer,
2818         const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin);
2819     void vkCmdEndConditionalRenderingEXT(
2820     const uint8_t* snapshotTraceBegin,
2821         size_t snapshotTraceBytes,
2822         android::base::BumpPool* pool,
2823         VkCommandBuffer commandBuffer);
2824 #endif
2825 #ifdef VK_NV_clip_space_w_scaling
2826     void vkCmdSetViewportWScalingNV(
2827     const uint8_t* snapshotTraceBegin,
2828         size_t snapshotTraceBytes,
2829         android::base::BumpPool* pool,
2830         VkCommandBuffer commandBuffer,
2831         uint32_t firstViewport,
2832         uint32_t viewportCount,
2833         const VkViewportWScalingNV* pViewportWScalings);
2834 #endif
2835 #ifdef VK_EXT_direct_mode_display
2836     void vkReleaseDisplayEXT(
2837     const uint8_t* snapshotTraceBegin,
2838         size_t snapshotTraceBytes,
2839         android::base::BumpPool* pool,
2840         VkResult input_result,
2841         VkPhysicalDevice physicalDevice,
2842         VkDisplayKHR display);
2843 #endif
2844 #ifdef VK_EXT_acquire_xlib_display
2845     void vkAcquireXlibDisplayEXT(
2846     const uint8_t* snapshotTraceBegin,
2847         size_t snapshotTraceBytes,
2848         android::base::BumpPool* pool,
2849         VkResult input_result,
2850         VkPhysicalDevice physicalDevice,
2851         Display* dpy,
2852         VkDisplayKHR display);
2853     void vkGetRandROutputDisplayEXT(
2854     const uint8_t* snapshotTraceBegin,
2855         size_t snapshotTraceBytes,
2856         android::base::BumpPool* pool,
2857         VkResult input_result,
2858         VkPhysicalDevice physicalDevice,
2859         Display* dpy,
2860         RROutput rrOutput,
2861         VkDisplayKHR* pDisplay);
2862 #endif
2863 #ifdef VK_EXT_display_surface_counter
2864     void vkGetPhysicalDeviceSurfaceCapabilities2EXT(
2865     const uint8_t* snapshotTraceBegin,
2866         size_t snapshotTraceBytes,
2867         android::base::BumpPool* pool,
2868         VkResult input_result,
2869         VkPhysicalDevice physicalDevice,
2870         VkSurfaceKHR surface,
2871         VkSurfaceCapabilities2EXT* pSurfaceCapabilities);
2872 #endif
2873 #ifdef VK_EXT_display_control
2874     void vkDisplayPowerControlEXT(
2875     const uint8_t* snapshotTraceBegin,
2876         size_t snapshotTraceBytes,
2877         android::base::BumpPool* pool,
2878         VkResult input_result,
2879         VkDevice device,
2880         VkDisplayKHR display,
2881         const VkDisplayPowerInfoEXT* pDisplayPowerInfo);
2882     void vkRegisterDeviceEventEXT(
2883     const uint8_t* snapshotTraceBegin,
2884         size_t snapshotTraceBytes,
2885         android::base::BumpPool* pool,
2886         VkResult input_result,
2887         VkDevice device,
2888         const VkDeviceEventInfoEXT* pDeviceEventInfo,
2889         const VkAllocationCallbacks* pAllocator,
2890         VkFence* pFence);
2891     void vkRegisterDisplayEventEXT(
2892     const uint8_t* snapshotTraceBegin,
2893         size_t snapshotTraceBytes,
2894         android::base::BumpPool* pool,
2895         VkResult input_result,
2896         VkDevice device,
2897         VkDisplayKHR display,
2898         const VkDisplayEventInfoEXT* pDisplayEventInfo,
2899         const VkAllocationCallbacks* pAllocator,
2900         VkFence* pFence);
2901     void vkGetSwapchainCounterEXT(
2902     const uint8_t* snapshotTraceBegin,
2903         size_t snapshotTraceBytes,
2904         android::base::BumpPool* pool,
2905         VkResult input_result,
2906         VkDevice device,
2907         VkSwapchainKHR swapchain,
2908         VkSurfaceCounterFlagBitsEXT counter,
2909         uint64_t* pCounterValue);
2910 #endif
2911 #ifdef VK_GOOGLE_display_timing
2912     void vkGetRefreshCycleDurationGOOGLE(
2913     const uint8_t* snapshotTraceBegin,
2914         size_t snapshotTraceBytes,
2915         android::base::BumpPool* pool,
2916         VkResult input_result,
2917         VkDevice device,
2918         VkSwapchainKHR swapchain,
2919         VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);
2920     void vkGetPastPresentationTimingGOOGLE(
2921     const uint8_t* snapshotTraceBegin,
2922         size_t snapshotTraceBytes,
2923         android::base::BumpPool* pool,
2924         VkResult input_result,
2925         VkDevice device,
2926         VkSwapchainKHR swapchain,
2927         uint32_t* pPresentationTimingCount,
2928         VkPastPresentationTimingGOOGLE* pPresentationTimings);
2929 #endif
2930 #ifdef VK_NV_sample_mask_override_coverage
2931 #endif
2932 #ifdef VK_NV_geometry_shader_passthrough
2933 #endif
2934 #ifdef VK_NV_viewport_array2
2935 #endif
2936 #ifdef VK_NVX_multiview_per_view_attributes
2937 #endif
2938 #ifdef VK_NV_viewport_swizzle
2939 #endif
2940 #ifdef VK_EXT_discard_rectangles
2941     void vkCmdSetDiscardRectangleEXT(
2942     const uint8_t* snapshotTraceBegin,
2943         size_t snapshotTraceBytes,
2944         android::base::BumpPool* pool,
2945         VkCommandBuffer commandBuffer,
2946         uint32_t firstDiscardRectangle,
2947         uint32_t discardRectangleCount,
2948         const VkRect2D* pDiscardRectangles);
2949 #endif
2950 #ifdef VK_EXT_conservative_rasterization
2951 #endif
2952 #ifdef VK_EXT_depth_clip_enable
2953 #endif
2954 #ifdef VK_EXT_swapchain_colorspace
2955 #endif
2956 #ifdef VK_EXT_hdr_metadata
2957     void vkSetHdrMetadataEXT(
2958     const uint8_t* snapshotTraceBegin,
2959         size_t snapshotTraceBytes,
2960         android::base::BumpPool* pool,
2961         VkDevice device,
2962         uint32_t swapchainCount,
2963         const VkSwapchainKHR* pSwapchains,
2964         const VkHdrMetadataEXT* pMetadata);
2965 #endif
2966 #ifdef VK_MVK_ios_surface
2967     void vkCreateIOSSurfaceMVK(
2968     const uint8_t* snapshotTraceBegin,
2969         size_t snapshotTraceBytes,
2970         android::base::BumpPool* pool,
2971         VkResult input_result,
2972         VkInstance instance,
2973         const VkIOSSurfaceCreateInfoMVK* pCreateInfo,
2974         const VkAllocationCallbacks* pAllocator,
2975         VkSurfaceKHR* pSurface);
2976 #endif
2977 #ifdef VK_MVK_macos_surface
2978     void vkCreateMacOSSurfaceMVK(
2979     const uint8_t* snapshotTraceBegin,
2980         size_t snapshotTraceBytes,
2981         android::base::BumpPool* pool,
2982         VkResult input_result,
2983         VkInstance instance,
2984         const VkMacOSSurfaceCreateInfoMVK* pCreateInfo,
2985         const VkAllocationCallbacks* pAllocator,
2986         VkSurfaceKHR* pSurface);
2987 #endif
2988 #ifdef VK_MVK_moltenvk
2989     void vkGetMTLDeviceMVK(
2990     const uint8_t* snapshotTraceBegin,
2991         size_t snapshotTraceBytes,
2992         android::base::BumpPool* pool,
2993         VkPhysicalDevice physicalDevice,
2994         void** pMTLDevice);
2995     void vkSetMTLTextureMVK(
2996     const uint8_t* snapshotTraceBegin,
2997         size_t snapshotTraceBytes,
2998         android::base::BumpPool* pool,
2999         VkResult input_result,
3000         VkImage image,
3001         void* mtlTexture);
3002     void vkGetMTLTextureMVK(
3003     const uint8_t* snapshotTraceBegin,
3004         size_t snapshotTraceBytes,
3005         android::base::BumpPool* pool,
3006         VkImage image,
3007         void** pMTLTexture);
3008     void vkGetMTLBufferMVK(
3009     const uint8_t* snapshotTraceBegin,
3010         size_t snapshotTraceBytes,
3011         android::base::BumpPool* pool,
3012         VkBuffer buffer,
3013         void** pMTLBuffer);
3014     void vkUseIOSurfaceMVK(
3015     const uint8_t* snapshotTraceBegin,
3016         size_t snapshotTraceBytes,
3017         android::base::BumpPool* pool,
3018         VkResult input_result,
3019         VkImage image,
3020         void* ioSurface);
3021     void vkGetIOSurfaceMVK(
3022     const uint8_t* snapshotTraceBegin,
3023         size_t snapshotTraceBytes,
3024         android::base::BumpPool* pool,
3025         VkImage image,
3026         void** pIOSurface);
3027 #endif
3028 #ifdef VK_EXT_external_memory_dma_buf
3029 #endif
3030 #ifdef VK_EXT_queue_family_foreign
3031 #endif
3032 #ifdef VK_EXT_debug_utils
3033     void vkSetDebugUtilsObjectNameEXT(
3034     const uint8_t* snapshotTraceBegin,
3035         size_t snapshotTraceBytes,
3036         android::base::BumpPool* pool,
3037         VkResult input_result,
3038         VkDevice device,
3039         const VkDebugUtilsObjectNameInfoEXT* pNameInfo);
3040     void vkSetDebugUtilsObjectTagEXT(
3041     const uint8_t* snapshotTraceBegin,
3042         size_t snapshotTraceBytes,
3043         android::base::BumpPool* pool,
3044         VkResult input_result,
3045         VkDevice device,
3046         const VkDebugUtilsObjectTagInfoEXT* pTagInfo);
3047     void vkQueueBeginDebugUtilsLabelEXT(
3048     const uint8_t* snapshotTraceBegin,
3049         size_t snapshotTraceBytes,
3050         android::base::BumpPool* pool,
3051         VkQueue queue,
3052         const VkDebugUtilsLabelEXT* pLabelInfo);
3053     void vkQueueEndDebugUtilsLabelEXT(
3054     const uint8_t* snapshotTraceBegin,
3055         size_t snapshotTraceBytes,
3056         android::base::BumpPool* pool,
3057         VkQueue queue);
3058     void vkQueueInsertDebugUtilsLabelEXT(
3059     const uint8_t* snapshotTraceBegin,
3060         size_t snapshotTraceBytes,
3061         android::base::BumpPool* pool,
3062         VkQueue queue,
3063         const VkDebugUtilsLabelEXT* pLabelInfo);
3064     void vkCmdBeginDebugUtilsLabelEXT(
3065     const uint8_t* snapshotTraceBegin,
3066         size_t snapshotTraceBytes,
3067         android::base::BumpPool* pool,
3068         VkCommandBuffer commandBuffer,
3069         const VkDebugUtilsLabelEXT* pLabelInfo);
3070     void vkCmdEndDebugUtilsLabelEXT(
3071     const uint8_t* snapshotTraceBegin,
3072         size_t snapshotTraceBytes,
3073         android::base::BumpPool* pool,
3074         VkCommandBuffer commandBuffer);
3075     void vkCmdInsertDebugUtilsLabelEXT(
3076     const uint8_t* snapshotTraceBegin,
3077         size_t snapshotTraceBytes,
3078         android::base::BumpPool* pool,
3079         VkCommandBuffer commandBuffer,
3080         const VkDebugUtilsLabelEXT* pLabelInfo);
3081     void vkCreateDebugUtilsMessengerEXT(
3082     const uint8_t* snapshotTraceBegin,
3083         size_t snapshotTraceBytes,
3084         android::base::BumpPool* pool,
3085         VkResult input_result,
3086         VkInstance instance,
3087         const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo,
3088         const VkAllocationCallbacks* pAllocator,
3089         VkDebugUtilsMessengerEXT* pMessenger);
3090     void vkDestroyDebugUtilsMessengerEXT(
3091     const uint8_t* snapshotTraceBegin,
3092         size_t snapshotTraceBytes,
3093         android::base::BumpPool* pool,
3094         VkInstance instance,
3095         VkDebugUtilsMessengerEXT messenger,
3096         const VkAllocationCallbacks* pAllocator);
3097     void vkSubmitDebugUtilsMessageEXT(
3098     const uint8_t* snapshotTraceBegin,
3099         size_t snapshotTraceBytes,
3100         android::base::BumpPool* pool,
3101         VkInstance instance,
3102         VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
3103         VkDebugUtilsMessageTypeFlagsEXT messageTypes,
3104         const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData);
3105 #endif
3106 #ifdef VK_ANDROID_external_memory_android_hardware_buffer
3107     void vkGetAndroidHardwareBufferPropertiesANDROID(
3108     const uint8_t* snapshotTraceBegin,
3109         size_t snapshotTraceBytes,
3110         android::base::BumpPool* pool,
3111         VkResult input_result,
3112         VkDevice device,
3113         const AHardwareBuffer* buffer,
3114         VkAndroidHardwareBufferPropertiesANDROID* pProperties);
3115     void vkGetMemoryAndroidHardwareBufferANDROID(
3116     const uint8_t* snapshotTraceBegin,
3117         size_t snapshotTraceBytes,
3118         android::base::BumpPool* pool,
3119         VkResult input_result,
3120         VkDevice device,
3121         const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo,
3122         AHardwareBuffer** pBuffer);
3123 #endif
3124 #ifdef VK_EXT_sampler_filter_minmax
3125 #endif
3126 #ifdef VK_AMD_gpu_shader_int16
3127 #endif
3128 #ifdef VK_AMD_mixed_attachment_samples
3129 #endif
3130 #ifdef VK_AMD_shader_fragment_mask
3131 #endif
3132 #ifdef VK_EXT_inline_uniform_block
3133 #endif
3134 #ifdef VK_EXT_shader_stencil_export
3135 #endif
3136 #ifdef VK_EXT_sample_locations
3137     void vkCmdSetSampleLocationsEXT(
3138     const uint8_t* snapshotTraceBegin,
3139         size_t snapshotTraceBytes,
3140         android::base::BumpPool* pool,
3141         VkCommandBuffer commandBuffer,
3142         const VkSampleLocationsInfoEXT* pSampleLocationsInfo);
3143     void vkGetPhysicalDeviceMultisamplePropertiesEXT(
3144     const uint8_t* snapshotTraceBegin,
3145         size_t snapshotTraceBytes,
3146         android::base::BumpPool* pool,
3147         VkPhysicalDevice physicalDevice,
3148         VkSampleCountFlagBits samples,
3149         VkMultisamplePropertiesEXT* pMultisampleProperties);
3150 #endif
3151 #ifdef VK_EXT_blend_operation_advanced
3152 #endif
3153 #ifdef VK_NV_fragment_coverage_to_color
3154 #endif
3155 #ifdef VK_NV_framebuffer_mixed_samples
3156 #endif
3157 #ifdef VK_NV_fill_rectangle
3158 #endif
3159 #ifdef VK_NV_shader_sm_builtins
3160 #endif
3161 #ifdef VK_EXT_post_depth_coverage
3162 #endif
3163 #ifdef VK_EXT_image_drm_format_modifier
3164     void vkGetImageDrmFormatModifierPropertiesEXT(
3165     const uint8_t* snapshotTraceBegin,
3166         size_t snapshotTraceBytes,
3167         android::base::BumpPool* pool,
3168         VkResult input_result,
3169         VkDevice device,
3170         VkImage image,
3171         VkImageDrmFormatModifierPropertiesEXT* pProperties);
3172 #endif
3173 #ifdef VK_EXT_validation_cache
3174     void vkCreateValidationCacheEXT(
3175     const uint8_t* snapshotTraceBegin,
3176         size_t snapshotTraceBytes,
3177         android::base::BumpPool* pool,
3178         VkResult input_result,
3179         VkDevice device,
3180         const VkValidationCacheCreateInfoEXT* pCreateInfo,
3181         const VkAllocationCallbacks* pAllocator,
3182         VkValidationCacheEXT* pValidationCache);
3183     void vkDestroyValidationCacheEXT(
3184     const uint8_t* snapshotTraceBegin,
3185         size_t snapshotTraceBytes,
3186         android::base::BumpPool* pool,
3187         VkDevice device,
3188         VkValidationCacheEXT validationCache,
3189         const VkAllocationCallbacks* pAllocator);
3190     void vkMergeValidationCachesEXT(
3191     const uint8_t* snapshotTraceBegin,
3192         size_t snapshotTraceBytes,
3193         android::base::BumpPool* pool,
3194         VkResult input_result,
3195         VkDevice device,
3196         VkValidationCacheEXT dstCache,
3197         uint32_t srcCacheCount,
3198         const VkValidationCacheEXT* pSrcCaches);
3199     void vkGetValidationCacheDataEXT(
3200     const uint8_t* snapshotTraceBegin,
3201         size_t snapshotTraceBytes,
3202         android::base::BumpPool* pool,
3203         VkResult input_result,
3204         VkDevice device,
3205         VkValidationCacheEXT validationCache,
3206         size_t* pDataSize,
3207         void* pData);
3208 #endif
3209 #ifdef VK_EXT_descriptor_indexing
3210 #endif
3211 #ifdef VK_EXT_shader_viewport_index_layer
3212 #endif
3213 #ifdef VK_NV_shading_rate_image
3214     void vkCmdBindShadingRateImageNV(
3215     const uint8_t* snapshotTraceBegin,
3216         size_t snapshotTraceBytes,
3217         android::base::BumpPool* pool,
3218         VkCommandBuffer commandBuffer,
3219         VkImageView imageView,
3220         VkImageLayout imageLayout);
3221     void vkCmdSetViewportShadingRatePaletteNV(
3222     const uint8_t* snapshotTraceBegin,
3223         size_t snapshotTraceBytes,
3224         android::base::BumpPool* pool,
3225         VkCommandBuffer commandBuffer,
3226         uint32_t firstViewport,
3227         uint32_t viewportCount,
3228         const VkShadingRatePaletteNV* pShadingRatePalettes);
3229     void vkCmdSetCoarseSampleOrderNV(
3230     const uint8_t* snapshotTraceBegin,
3231         size_t snapshotTraceBytes,
3232         android::base::BumpPool* pool,
3233         VkCommandBuffer commandBuffer,
3234         VkCoarseSampleOrderTypeNV sampleOrderType,
3235         uint32_t customSampleOrderCount,
3236         const VkCoarseSampleOrderCustomNV* pCustomSampleOrders);
3237 #endif
3238 #ifdef VK_NV_ray_tracing
3239     void vkCreateAccelerationStructureNV(
3240     const uint8_t* snapshotTraceBegin,
3241         size_t snapshotTraceBytes,
3242         android::base::BumpPool* pool,
3243         VkResult input_result,
3244         VkDevice device,
3245         const VkAccelerationStructureCreateInfoNV* pCreateInfo,
3246         const VkAllocationCallbacks* pAllocator,
3247         VkAccelerationStructureNV* pAccelerationStructure);
3248     void vkDestroyAccelerationStructureNV(
3249     const uint8_t* snapshotTraceBegin,
3250         size_t snapshotTraceBytes,
3251         android::base::BumpPool* pool,
3252         VkDevice device,
3253         VkAccelerationStructureNV accelerationStructure,
3254         const VkAllocationCallbacks* pAllocator);
3255     void vkGetAccelerationStructureMemoryRequirementsNV(
3256     const uint8_t* snapshotTraceBegin,
3257         size_t snapshotTraceBytes,
3258         android::base::BumpPool* pool,
3259         VkDevice device,
3260         const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo,
3261         VkMemoryRequirements2KHR* pMemoryRequirements);
3262     void vkBindAccelerationStructureMemoryNV(
3263     const uint8_t* snapshotTraceBegin,
3264         size_t snapshotTraceBytes,
3265         android::base::BumpPool* pool,
3266         VkResult input_result,
3267         VkDevice device,
3268         uint32_t bindInfoCount,
3269         const VkBindAccelerationStructureMemoryInfoNV* pBindInfos);
3270     void vkCmdBuildAccelerationStructureNV(
3271     const uint8_t* snapshotTraceBegin,
3272         size_t snapshotTraceBytes,
3273         android::base::BumpPool* pool,
3274         VkCommandBuffer commandBuffer,
3275         const VkAccelerationStructureInfoNV* pInfo,
3276         VkBuffer instanceData,
3277         VkDeviceSize instanceOffset,
3278         VkBool32 update,
3279         VkAccelerationStructureNV dst,
3280         VkAccelerationStructureNV src,
3281         VkBuffer scratch,
3282         VkDeviceSize scratchOffset);
3283     void vkCmdCopyAccelerationStructureNV(
3284     const uint8_t* snapshotTraceBegin,
3285         size_t snapshotTraceBytes,
3286         android::base::BumpPool* pool,
3287         VkCommandBuffer commandBuffer,
3288         VkAccelerationStructureNV dst,
3289         VkAccelerationStructureNV src,
3290         VkCopyAccelerationStructureModeKHR mode);
3291     void vkCmdTraceRaysNV(
3292     const uint8_t* snapshotTraceBegin,
3293         size_t snapshotTraceBytes,
3294         android::base::BumpPool* pool,
3295         VkCommandBuffer commandBuffer,
3296         VkBuffer raygenShaderBindingTableBuffer,
3297         VkDeviceSize raygenShaderBindingOffset,
3298         VkBuffer missShaderBindingTableBuffer,
3299         VkDeviceSize missShaderBindingOffset,
3300         VkDeviceSize missShaderBindingStride,
3301         VkBuffer hitShaderBindingTableBuffer,
3302         VkDeviceSize hitShaderBindingOffset,
3303         VkDeviceSize hitShaderBindingStride,
3304         VkBuffer callableShaderBindingTableBuffer,
3305         VkDeviceSize callableShaderBindingOffset,
3306         VkDeviceSize callableShaderBindingStride,
3307         uint32_t width,
3308         uint32_t height,
3309         uint32_t depth);
3310     void vkCreateRayTracingPipelinesNV(
3311     const uint8_t* snapshotTraceBegin,
3312         size_t snapshotTraceBytes,
3313         android::base::BumpPool* pool,
3314         VkResult input_result,
3315         VkDevice device,
3316         VkPipelineCache pipelineCache,
3317         uint32_t createInfoCount,
3318         const VkRayTracingPipelineCreateInfoNV* pCreateInfos,
3319         const VkAllocationCallbacks* pAllocator,
3320         VkPipeline* pPipelines);
3321     void vkGetRayTracingShaderGroupHandlesKHR(
3322     const uint8_t* snapshotTraceBegin,
3323         size_t snapshotTraceBytes,
3324         android::base::BumpPool* pool,
3325         VkResult input_result,
3326         VkDevice device,
3327         VkPipeline pipeline,
3328         uint32_t firstGroup,
3329         uint32_t groupCount,
3330         size_t dataSize,
3331         void* pData);
3332     void vkGetRayTracingShaderGroupHandlesNV(
3333     const uint8_t* snapshotTraceBegin,
3334         size_t snapshotTraceBytes,
3335         android::base::BumpPool* pool,
3336         VkResult input_result,
3337         VkDevice device,
3338         VkPipeline pipeline,
3339         uint32_t firstGroup,
3340         uint32_t groupCount,
3341         size_t dataSize,
3342         void* pData);
3343     void vkGetAccelerationStructureHandleNV(
3344     const uint8_t* snapshotTraceBegin,
3345         size_t snapshotTraceBytes,
3346         android::base::BumpPool* pool,
3347         VkResult input_result,
3348         VkDevice device,
3349         VkAccelerationStructureNV accelerationStructure,
3350         size_t dataSize,
3351         void* pData);
3352     void vkCmdWriteAccelerationStructuresPropertiesNV(
3353     const uint8_t* snapshotTraceBegin,
3354         size_t snapshotTraceBytes,
3355         android::base::BumpPool* pool,
3356         VkCommandBuffer commandBuffer,
3357         uint32_t accelerationStructureCount,
3358         const VkAccelerationStructureNV* pAccelerationStructures,
3359         VkQueryType queryType,
3360         VkQueryPool queryPool,
3361         uint32_t firstQuery);
3362     void vkCompileDeferredNV(
3363     const uint8_t* snapshotTraceBegin,
3364         size_t snapshotTraceBytes,
3365         android::base::BumpPool* pool,
3366         VkResult input_result,
3367         VkDevice device,
3368         VkPipeline pipeline,
3369         uint32_t shader);
3370 #endif
3371 #ifdef VK_NV_representative_fragment_test
3372 #endif
3373 #ifdef VK_EXT_filter_cubic
3374 #endif
3375 #ifdef VK_QCOM_render_pass_shader_resolve
3376 #endif
3377 #ifdef VK_EXT_global_priority
3378 #endif
3379 #ifdef VK_EXT_external_memory_host
3380     void vkGetMemoryHostPointerPropertiesEXT(
3381     const uint8_t* snapshotTraceBegin,
3382         size_t snapshotTraceBytes,
3383         android::base::BumpPool* pool,
3384         VkResult input_result,
3385         VkDevice device,
3386         VkExternalMemoryHandleTypeFlagBits handleType,
3387         const void* pHostPointer,
3388         VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties);
3389 #endif
3390 #ifdef VK_AMD_buffer_marker
3391     void vkCmdWriteBufferMarkerAMD(
3392     const uint8_t* snapshotTraceBegin,
3393         size_t snapshotTraceBytes,
3394         android::base::BumpPool* pool,
3395         VkCommandBuffer commandBuffer,
3396         VkPipelineStageFlagBits pipelineStage,
3397         VkBuffer dstBuffer,
3398         VkDeviceSize dstOffset,
3399         uint32_t marker);
3400 #endif
3401 #ifdef VK_AMD_pipeline_compiler_control
3402 #endif
3403 #ifdef VK_EXT_calibrated_timestamps
3404     void vkGetPhysicalDeviceCalibrateableTimeDomainsEXT(
3405     const uint8_t* snapshotTraceBegin,
3406         size_t snapshotTraceBytes,
3407         android::base::BumpPool* pool,
3408         VkResult input_result,
3409         VkPhysicalDevice physicalDevice,
3410         uint32_t* pTimeDomainCount,
3411         VkTimeDomainEXT* pTimeDomains);
3412     void vkGetCalibratedTimestampsEXT(
3413     const uint8_t* snapshotTraceBegin,
3414         size_t snapshotTraceBytes,
3415         android::base::BumpPool* pool,
3416         VkResult input_result,
3417         VkDevice device,
3418         uint32_t timestampCount,
3419         const VkCalibratedTimestampInfoEXT* pTimestampInfos,
3420         uint64_t* pTimestamps,
3421         uint64_t* pMaxDeviation);
3422 #endif
3423 #ifdef VK_AMD_shader_core_properties
3424 #endif
3425 #ifdef VK_AMD_memory_overallocation_behavior
3426 #endif
3427 #ifdef VK_EXT_vertex_attribute_divisor
3428 #endif
3429 #ifdef VK_GGP_frame_token
3430 #endif
3431 #ifdef VK_EXT_pipeline_creation_feedback
3432 #endif
3433 #ifdef VK_NV_shader_subgroup_partitioned
3434 #endif
3435 #ifdef VK_NV_compute_shader_derivatives
3436 #endif
3437 #ifdef VK_NV_mesh_shader
3438     void vkCmdDrawMeshTasksNV(
3439     const uint8_t* snapshotTraceBegin,
3440         size_t snapshotTraceBytes,
3441         android::base::BumpPool* pool,
3442         VkCommandBuffer commandBuffer,
3443         uint32_t taskCount,
3444         uint32_t firstTask);
3445     void vkCmdDrawMeshTasksIndirectNV(
3446     const uint8_t* snapshotTraceBegin,
3447         size_t snapshotTraceBytes,
3448         android::base::BumpPool* pool,
3449         VkCommandBuffer commandBuffer,
3450         VkBuffer buffer,
3451         VkDeviceSize offset,
3452         uint32_t drawCount,
3453         uint32_t stride);
3454     void vkCmdDrawMeshTasksIndirectCountNV(
3455     const uint8_t* snapshotTraceBegin,
3456         size_t snapshotTraceBytes,
3457         android::base::BumpPool* pool,
3458         VkCommandBuffer commandBuffer,
3459         VkBuffer buffer,
3460         VkDeviceSize offset,
3461         VkBuffer countBuffer,
3462         VkDeviceSize countBufferOffset,
3463         uint32_t maxDrawCount,
3464         uint32_t stride);
3465 #endif
3466 #ifdef VK_NV_fragment_shader_barycentric
3467 #endif
3468 #ifdef VK_NV_shader_image_footprint
3469 #endif
3470 #ifdef VK_NV_scissor_exclusive
3471     void vkCmdSetExclusiveScissorNV(
3472     const uint8_t* snapshotTraceBegin,
3473         size_t snapshotTraceBytes,
3474         android::base::BumpPool* pool,
3475         VkCommandBuffer commandBuffer,
3476         uint32_t firstExclusiveScissor,
3477         uint32_t exclusiveScissorCount,
3478         const VkRect2D* pExclusiveScissors);
3479 #endif
3480 #ifdef VK_NV_device_diagnostic_checkpoints
3481     void vkCmdSetCheckpointNV(
3482     const uint8_t* snapshotTraceBegin,
3483         size_t snapshotTraceBytes,
3484         android::base::BumpPool* pool,
3485         VkCommandBuffer commandBuffer,
3486         const void* pCheckpointMarker);
3487     void vkGetQueueCheckpointDataNV(
3488     const uint8_t* snapshotTraceBegin,
3489         size_t snapshotTraceBytes,
3490         android::base::BumpPool* pool,
3491         VkQueue queue,
3492         uint32_t* pCheckpointDataCount,
3493         VkCheckpointDataNV* pCheckpointData);
3494 #endif
3495 #ifdef VK_INTEL_shader_integer_functions2
3496 #endif
3497 #ifdef VK_INTEL_performance_query
3498     void vkInitializePerformanceApiINTEL(
3499     const uint8_t* snapshotTraceBegin,
3500         size_t snapshotTraceBytes,
3501         android::base::BumpPool* pool,
3502         VkResult input_result,
3503         VkDevice device,
3504         const VkInitializePerformanceApiInfoINTEL* pInitializeInfo);
3505     void vkUninitializePerformanceApiINTEL(
3506     const uint8_t* snapshotTraceBegin,
3507         size_t snapshotTraceBytes,
3508         android::base::BumpPool* pool,
3509         VkDevice device);
3510     void vkCmdSetPerformanceMarkerINTEL(
3511     const uint8_t* snapshotTraceBegin,
3512         size_t snapshotTraceBytes,
3513         android::base::BumpPool* pool,
3514         VkResult input_result,
3515         VkCommandBuffer commandBuffer,
3516         const VkPerformanceMarkerInfoINTEL* pMarkerInfo);
3517     void vkCmdSetPerformanceStreamMarkerINTEL(
3518     const uint8_t* snapshotTraceBegin,
3519         size_t snapshotTraceBytes,
3520         android::base::BumpPool* pool,
3521         VkResult input_result,
3522         VkCommandBuffer commandBuffer,
3523         const VkPerformanceStreamMarkerInfoINTEL* pMarkerInfo);
3524     void vkCmdSetPerformanceOverrideINTEL(
3525     const uint8_t* snapshotTraceBegin,
3526         size_t snapshotTraceBytes,
3527         android::base::BumpPool* pool,
3528         VkResult input_result,
3529         VkCommandBuffer commandBuffer,
3530         const VkPerformanceOverrideInfoINTEL* pOverrideInfo);
3531     void vkAcquirePerformanceConfigurationINTEL(
3532     const uint8_t* snapshotTraceBegin,
3533         size_t snapshotTraceBytes,
3534         android::base::BumpPool* pool,
3535         VkResult input_result,
3536         VkDevice device,
3537         const VkPerformanceConfigurationAcquireInfoINTEL* pAcquireInfo,
3538         VkPerformanceConfigurationINTEL* pConfiguration);
3539     void vkReleasePerformanceConfigurationINTEL(
3540     const uint8_t* snapshotTraceBegin,
3541         size_t snapshotTraceBytes,
3542         android::base::BumpPool* pool,
3543         VkResult input_result,
3544         VkDevice device,
3545         VkPerformanceConfigurationINTEL configuration);
3546     void vkQueueSetPerformanceConfigurationINTEL(
3547     const uint8_t* snapshotTraceBegin,
3548         size_t snapshotTraceBytes,
3549         android::base::BumpPool* pool,
3550         VkResult input_result,
3551         VkQueue queue,
3552         VkPerformanceConfigurationINTEL configuration);
3553     void vkGetPerformanceParameterINTEL(
3554     const uint8_t* snapshotTraceBegin,
3555         size_t snapshotTraceBytes,
3556         android::base::BumpPool* pool,
3557         VkResult input_result,
3558         VkDevice device,
3559         VkPerformanceParameterTypeINTEL parameter,
3560         VkPerformanceValueINTEL* pValue);
3561 #endif
3562 #ifdef VK_EXT_pci_bus_info
3563 #endif
3564 #ifdef VK_AMD_display_native_hdr
3565     void vkSetLocalDimmingAMD(
3566     const uint8_t* snapshotTraceBegin,
3567         size_t snapshotTraceBytes,
3568         android::base::BumpPool* pool,
3569         VkDevice device,
3570         VkSwapchainKHR swapChain,
3571         VkBool32 localDimmingEnable);
3572 #endif
3573 #ifdef VK_FUCHSIA_imagepipe_surface
3574     void vkCreateImagePipeSurfaceFUCHSIA(
3575     const uint8_t* snapshotTraceBegin,
3576         size_t snapshotTraceBytes,
3577         android::base::BumpPool* pool,
3578         VkResult input_result,
3579         VkInstance instance,
3580         const VkImagePipeSurfaceCreateInfoFUCHSIA* pCreateInfo,
3581         const VkAllocationCallbacks* pAllocator,
3582         VkSurfaceKHR* pSurface);
3583 #endif
3584 #ifdef VK_EXT_metal_surface
3585     void vkCreateMetalSurfaceEXT(
3586     const uint8_t* snapshotTraceBegin,
3587         size_t snapshotTraceBytes,
3588         android::base::BumpPool* pool,
3589         VkResult input_result,
3590         VkInstance instance,
3591         const VkMetalSurfaceCreateInfoEXT* pCreateInfo,
3592         const VkAllocationCallbacks* pAllocator,
3593         VkSurfaceKHR* pSurface);
3594 #endif
3595 #ifdef VK_EXT_fragment_density_map
3596 #endif
3597 #ifdef VK_EXT_scalar_block_layout
3598 #endif
3599 #ifdef VK_GOOGLE_hlsl_functionality1
3600 #endif
3601 #ifdef VK_GOOGLE_decorate_string
3602 #endif
3603 #ifdef VK_EXT_subgroup_size_control
3604 #endif
3605 #ifdef VK_AMD_shader_core_properties2
3606 #endif
3607 #ifdef VK_AMD_device_coherent_memory
3608 #endif
3609 #ifdef VK_EXT_shader_image_atomic_int64
3610 #endif
3611 #ifdef VK_EXT_memory_budget
3612 #endif
3613 #ifdef VK_EXT_memory_priority
3614 #endif
3615 #ifdef VK_NV_dedicated_allocation_image_aliasing
3616 #endif
3617 #ifdef VK_EXT_buffer_device_address
3618     void vkGetBufferDeviceAddressEXT(
3619     const uint8_t* snapshotTraceBegin,
3620         size_t snapshotTraceBytes,
3621         android::base::BumpPool* pool,
3622         VkDeviceAddress input_result,
3623         VkDevice device,
3624         const VkBufferDeviceAddressInfo* pInfo);
3625 #endif
3626 #ifdef VK_EXT_tooling_info
3627     void vkGetPhysicalDeviceToolPropertiesEXT(
3628     const uint8_t* snapshotTraceBegin,
3629         size_t snapshotTraceBytes,
3630         android::base::BumpPool* pool,
3631         VkResult input_result,
3632         VkPhysicalDevice physicalDevice,
3633         uint32_t* pToolCount,
3634         VkPhysicalDeviceToolPropertiesEXT* pToolProperties);
3635 #endif
3636 #ifdef VK_EXT_separate_stencil_usage
3637 #endif
3638 #ifdef VK_EXT_validation_features
3639 #endif
3640 #ifdef VK_NV_cooperative_matrix
3641     void vkGetPhysicalDeviceCooperativeMatrixPropertiesNV(
3642     const uint8_t* snapshotTraceBegin,
3643         size_t snapshotTraceBytes,
3644         android::base::BumpPool* pool,
3645         VkResult input_result,
3646         VkPhysicalDevice physicalDevice,
3647         uint32_t* pPropertyCount,
3648         VkCooperativeMatrixPropertiesNV* pProperties);
3649 #endif
3650 #ifdef VK_NV_coverage_reduction_mode
3651     void vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
3652     const uint8_t* snapshotTraceBegin,
3653         size_t snapshotTraceBytes,
3654         android::base::BumpPool* pool,
3655         VkResult input_result,
3656         VkPhysicalDevice physicalDevice,
3657         uint32_t* pCombinationCount,
3658         VkFramebufferMixedSamplesCombinationNV* pCombinations);
3659 #endif
3660 #ifdef VK_EXT_fragment_shader_interlock
3661 #endif
3662 #ifdef VK_EXT_ycbcr_image_arrays
3663 #endif
3664 #ifdef VK_EXT_full_screen_exclusive
3665     void vkGetPhysicalDeviceSurfacePresentModes2EXT(
3666     const uint8_t* snapshotTraceBegin,
3667         size_t snapshotTraceBytes,
3668         android::base::BumpPool* pool,
3669         VkResult input_result,
3670         VkPhysicalDevice physicalDevice,
3671         const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
3672         uint32_t* pPresentModeCount,
3673         VkPresentModeKHR* pPresentModes);
3674     void vkAcquireFullScreenExclusiveModeEXT(
3675     const uint8_t* snapshotTraceBegin,
3676         size_t snapshotTraceBytes,
3677         android::base::BumpPool* pool,
3678         VkResult input_result,
3679         VkDevice device,
3680         VkSwapchainKHR swapchain);
3681     void vkReleaseFullScreenExclusiveModeEXT(
3682     const uint8_t* snapshotTraceBegin,
3683         size_t snapshotTraceBytes,
3684         android::base::BumpPool* pool,
3685         VkResult input_result,
3686         VkDevice device,
3687         VkSwapchainKHR swapchain);
3688     void vkGetDeviceGroupSurfacePresentModes2EXT(
3689     const uint8_t* snapshotTraceBegin,
3690         size_t snapshotTraceBytes,
3691         android::base::BumpPool* pool,
3692         VkResult input_result,
3693         VkDevice device,
3694         const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
3695         VkDeviceGroupPresentModeFlagsKHR* pModes);
3696 #endif
3697 #ifdef VK_EXT_headless_surface
3698     void vkCreateHeadlessSurfaceEXT(
3699     const uint8_t* snapshotTraceBegin,
3700         size_t snapshotTraceBytes,
3701         android::base::BumpPool* pool,
3702         VkResult input_result,
3703         VkInstance instance,
3704         const VkHeadlessSurfaceCreateInfoEXT* pCreateInfo,
3705         const VkAllocationCallbacks* pAllocator,
3706         VkSurfaceKHR* pSurface);
3707 #endif
3708 #ifdef VK_EXT_line_rasterization
3709     void vkCmdSetLineStippleEXT(
3710     const uint8_t* snapshotTraceBegin,
3711         size_t snapshotTraceBytes,
3712         android::base::BumpPool* pool,
3713         VkCommandBuffer commandBuffer,
3714         uint32_t lineStippleFactor,
3715         uint16_t lineStipplePattern);
3716 #endif
3717 #ifdef VK_EXT_shader_atomic_float
3718 #endif
3719 #ifdef VK_EXT_host_query_reset
3720     void vkResetQueryPoolEXT(
3721     const uint8_t* snapshotTraceBegin,
3722         size_t snapshotTraceBytes,
3723         android::base::BumpPool* pool,
3724         VkDevice device,
3725         VkQueryPool queryPool,
3726         uint32_t firstQuery,
3727         uint32_t queryCount);
3728 #endif
3729 #ifdef VK_EXT_index_type_uint8
3730 #endif
3731 #ifdef VK_EXT_extended_dynamic_state
3732     void vkCmdSetCullModeEXT(
3733     const uint8_t* snapshotTraceBegin,
3734         size_t snapshotTraceBytes,
3735         android::base::BumpPool* pool,
3736         VkCommandBuffer commandBuffer,
3737         VkCullModeFlags cullMode);
3738     void vkCmdSetFrontFaceEXT(
3739     const uint8_t* snapshotTraceBegin,
3740         size_t snapshotTraceBytes,
3741         android::base::BumpPool* pool,
3742         VkCommandBuffer commandBuffer,
3743         VkFrontFace frontFace);
3744     void vkCmdSetPrimitiveTopologyEXT(
3745     const uint8_t* snapshotTraceBegin,
3746         size_t snapshotTraceBytes,
3747         android::base::BumpPool* pool,
3748         VkCommandBuffer commandBuffer,
3749         VkPrimitiveTopology primitiveTopology);
3750     void vkCmdSetViewportWithCountEXT(
3751     const uint8_t* snapshotTraceBegin,
3752         size_t snapshotTraceBytes,
3753         android::base::BumpPool* pool,
3754         VkCommandBuffer commandBuffer,
3755         uint32_t viewportCount,
3756         const VkViewport* pViewports);
3757     void vkCmdSetScissorWithCountEXT(
3758     const uint8_t* snapshotTraceBegin,
3759         size_t snapshotTraceBytes,
3760         android::base::BumpPool* pool,
3761         VkCommandBuffer commandBuffer,
3762         uint32_t scissorCount,
3763         const VkRect2D* pScissors);
3764     void vkCmdBindVertexBuffers2EXT(
3765     const uint8_t* snapshotTraceBegin,
3766         size_t snapshotTraceBytes,
3767         android::base::BumpPool* pool,
3768         VkCommandBuffer commandBuffer,
3769         uint32_t firstBinding,
3770         uint32_t bindingCount,
3771         const VkBuffer* pBuffers,
3772         const VkDeviceSize* pOffsets,
3773         const VkDeviceSize* pSizes,
3774         const VkDeviceSize* pStrides);
3775     void vkCmdSetDepthTestEnableEXT(
3776     const uint8_t* snapshotTraceBegin,
3777         size_t snapshotTraceBytes,
3778         android::base::BumpPool* pool,
3779         VkCommandBuffer commandBuffer,
3780         VkBool32 depthTestEnable);
3781     void vkCmdSetDepthWriteEnableEXT(
3782     const uint8_t* snapshotTraceBegin,
3783         size_t snapshotTraceBytes,
3784         android::base::BumpPool* pool,
3785         VkCommandBuffer commandBuffer,
3786         VkBool32 depthWriteEnable);
3787     void vkCmdSetDepthCompareOpEXT(
3788     const uint8_t* snapshotTraceBegin,
3789         size_t snapshotTraceBytes,
3790         android::base::BumpPool* pool,
3791         VkCommandBuffer commandBuffer,
3792         VkCompareOp depthCompareOp);
3793     void vkCmdSetDepthBoundsTestEnableEXT(
3794     const uint8_t* snapshotTraceBegin,
3795         size_t snapshotTraceBytes,
3796         android::base::BumpPool* pool,
3797         VkCommandBuffer commandBuffer,
3798         VkBool32 depthBoundsTestEnable);
3799     void vkCmdSetStencilTestEnableEXT(
3800     const uint8_t* snapshotTraceBegin,
3801         size_t snapshotTraceBytes,
3802         android::base::BumpPool* pool,
3803         VkCommandBuffer commandBuffer,
3804         VkBool32 stencilTestEnable);
3805     void vkCmdSetStencilOpEXT(
3806     const uint8_t* snapshotTraceBegin,
3807         size_t snapshotTraceBytes,
3808         android::base::BumpPool* pool,
3809         VkCommandBuffer commandBuffer,
3810         VkStencilFaceFlags faceMask,
3811         VkStencilOp failOp,
3812         VkStencilOp passOp,
3813         VkStencilOp depthFailOp,
3814         VkCompareOp compareOp);
3815 #endif
3816 #ifdef VK_EXT_shader_demote_to_helper_invocation
3817 #endif
3818 #ifdef VK_NV_device_generated_commands
3819     void vkGetGeneratedCommandsMemoryRequirementsNV(
3820     const uint8_t* snapshotTraceBegin,
3821         size_t snapshotTraceBytes,
3822         android::base::BumpPool* pool,
3823         VkDevice device,
3824         const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo,
3825         VkMemoryRequirements2* pMemoryRequirements);
3826     void vkCmdPreprocessGeneratedCommandsNV(
3827     const uint8_t* snapshotTraceBegin,
3828         size_t snapshotTraceBytes,
3829         android::base::BumpPool* pool,
3830         VkCommandBuffer commandBuffer,
3831         const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
3832     void vkCmdExecuteGeneratedCommandsNV(
3833     const uint8_t* snapshotTraceBegin,
3834         size_t snapshotTraceBytes,
3835         android::base::BumpPool* pool,
3836         VkCommandBuffer commandBuffer,
3837         VkBool32 isPreprocessed,
3838         const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
3839     void vkCmdBindPipelineShaderGroupNV(
3840     const uint8_t* snapshotTraceBegin,
3841         size_t snapshotTraceBytes,
3842         android::base::BumpPool* pool,
3843         VkCommandBuffer commandBuffer,
3844         VkPipelineBindPoint pipelineBindPoint,
3845         VkPipeline pipeline,
3846         uint32_t groupIndex);
3847     void vkCreateIndirectCommandsLayoutNV(
3848     const uint8_t* snapshotTraceBegin,
3849         size_t snapshotTraceBytes,
3850         android::base::BumpPool* pool,
3851         VkResult input_result,
3852         VkDevice device,
3853         const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo,
3854         const VkAllocationCallbacks* pAllocator,
3855         VkIndirectCommandsLayoutNV* pIndirectCommandsLayout);
3856     void vkDestroyIndirectCommandsLayoutNV(
3857     const uint8_t* snapshotTraceBegin,
3858         size_t snapshotTraceBytes,
3859         android::base::BumpPool* pool,
3860         VkDevice device,
3861         VkIndirectCommandsLayoutNV indirectCommandsLayout,
3862         const VkAllocationCallbacks* pAllocator);
3863 #endif
3864 #ifdef VK_EXT_texel_buffer_alignment
3865 #endif
3866 #ifdef VK_QCOM_render_pass_transform
3867 #endif
3868 #ifdef VK_EXT_device_memory_report
3869 #endif
3870 #ifdef VK_EXT_robustness2
3871 #endif
3872 #ifdef VK_EXT_custom_border_color
3873 #endif
3874 #ifdef VK_GOOGLE_user_type
3875 #endif
3876 #ifdef VK_EXT_private_data
3877     void vkCreatePrivateDataSlotEXT(
3878     const uint8_t* snapshotTraceBegin,
3879         size_t snapshotTraceBytes,
3880         android::base::BumpPool* pool,
3881         VkResult input_result,
3882         VkDevice device,
3883         const VkPrivateDataSlotCreateInfoEXT* pCreateInfo,
3884         const VkAllocationCallbacks* pAllocator,
3885         VkPrivateDataSlotEXT* pPrivateDataSlot);
3886     void vkDestroyPrivateDataSlotEXT(
3887     const uint8_t* snapshotTraceBegin,
3888         size_t snapshotTraceBytes,
3889         android::base::BumpPool* pool,
3890         VkDevice device,
3891         VkPrivateDataSlotEXT privateDataSlot,
3892         const VkAllocationCallbacks* pAllocator);
3893     void vkSetPrivateDataEXT(
3894     const uint8_t* snapshotTraceBegin,
3895         size_t snapshotTraceBytes,
3896         android::base::BumpPool* pool,
3897         VkResult input_result,
3898         VkDevice device,
3899         VkObjectType objectType,
3900         uint64_t objectHandle,
3901         VkPrivateDataSlotEXT privateDataSlot,
3902         uint64_t data);
3903     void vkGetPrivateDataEXT(
3904     const uint8_t* snapshotTraceBegin,
3905         size_t snapshotTraceBytes,
3906         android::base::BumpPool* pool,
3907         VkDevice device,
3908         VkObjectType objectType,
3909         uint64_t objectHandle,
3910         VkPrivateDataSlotEXT privateDataSlot,
3911         uint64_t* pData);
3912 #endif
3913 #ifdef VK_EXT_pipeline_creation_cache_control
3914 #endif
3915 #ifdef VK_NV_device_diagnostics_config
3916 #endif
3917 #ifdef VK_QCOM_render_pass_store_ops
3918 #endif
3919 #ifdef VK_NV_fragment_shading_rate_enums
3920     void vkCmdSetFragmentShadingRateEnumNV(
3921     const uint8_t* snapshotTraceBegin,
3922         size_t snapshotTraceBytes,
3923         android::base::BumpPool* pool,
3924         VkCommandBuffer commandBuffer,
3925         VkFragmentShadingRateNV shadingRate,
3926         const VkFragmentShadingRateCombinerOpKHR combinerOps[2]);
3927 #endif
3928 #ifdef VK_EXT_fragment_density_map2
3929 #endif
3930 #ifdef VK_QCOM_rotated_copy_commands
3931 #endif
3932 #ifdef VK_EXT_image_robustness
3933 #endif
3934 #ifdef VK_EXT_4444_formats
3935 #endif
3936 #ifdef VK_EXT_directfb_surface
3937     void vkCreateDirectFBSurfaceEXT(
3938     const uint8_t* snapshotTraceBegin,
3939         size_t snapshotTraceBytes,
3940         android::base::BumpPool* pool,
3941         VkResult input_result,
3942         VkInstance instance,
3943         const VkDirectFBSurfaceCreateInfoEXT* pCreateInfo,
3944         const VkAllocationCallbacks* pAllocator,
3945         VkSurfaceKHR* pSurface);
3946     void vkGetPhysicalDeviceDirectFBPresentationSupportEXT(
3947     const uint8_t* snapshotTraceBegin,
3948         size_t snapshotTraceBytes,
3949         android::base::BumpPool* pool,
3950         VkBool32 input_result,
3951         VkPhysicalDevice physicalDevice,
3952         uint32_t queueFamilyIndex,
3953         IDirectFB* dfb);
3954 #endif
3955 #ifdef VK_GOOGLE_gfxstream
3956     void vkRegisterImageColorBufferGOOGLE(
3957     const uint8_t* snapshotTraceBegin,
3958         size_t snapshotTraceBytes,
3959         android::base::BumpPool* pool,
3960         VkResult input_result,
3961         VkDevice device,
3962         VkImage image,
3963         uint32_t colorBuffer);
3964     void vkRegisterBufferColorBufferGOOGLE(
3965     const uint8_t* snapshotTraceBegin,
3966         size_t snapshotTraceBytes,
3967         android::base::BumpPool* pool,
3968         VkResult input_result,
3969         VkDevice device,
3970         VkBuffer buffer,
3971         uint32_t colorBuffer);
3972     void vkMapMemoryIntoAddressSpaceGOOGLE(
3973     const uint8_t* snapshotTraceBegin,
3974         size_t snapshotTraceBytes,
3975         android::base::BumpPool* pool,
3976         VkResult input_result,
3977         VkDevice device,
3978         VkDeviceMemory memory,
3979         uint64_t* pAddress);
3980     void vkUpdateDescriptorSetWithTemplateSizedGOOGLE(
3981     const uint8_t* snapshotTraceBegin,
3982         size_t snapshotTraceBytes,
3983         android::base::BumpPool* pool,
3984         VkDevice device,
3985         VkDescriptorSet descriptorSet,
3986         VkDescriptorUpdateTemplate descriptorUpdateTemplate,
3987         uint32_t imageInfoCount,
3988         uint32_t bufferInfoCount,
3989         uint32_t bufferViewCount,
3990         const uint32_t* pImageInfoEntryIndices,
3991         const uint32_t* pBufferInfoEntryIndices,
3992         const uint32_t* pBufferViewEntryIndices,
3993         const VkDescriptorImageInfo* pImageInfos,
3994         const VkDescriptorBufferInfo* pBufferInfos,
3995         const VkBufferView* pBufferViews);
3996     void vkBeginCommandBufferAsyncGOOGLE(
3997     const uint8_t* snapshotTraceBegin,
3998         size_t snapshotTraceBytes,
3999         android::base::BumpPool* pool,
4000         VkCommandBuffer commandBuffer,
4001         const VkCommandBufferBeginInfo* pBeginInfo);
4002     void vkEndCommandBufferAsyncGOOGLE(
4003     const uint8_t* snapshotTraceBegin,
4004         size_t snapshotTraceBytes,
4005         android::base::BumpPool* pool,
4006         VkCommandBuffer commandBuffer);
4007     void vkResetCommandBufferAsyncGOOGLE(
4008     const uint8_t* snapshotTraceBegin,
4009         size_t snapshotTraceBytes,
4010         android::base::BumpPool* pool,
4011         VkCommandBuffer commandBuffer,
4012         VkCommandBufferResetFlags flags);
4013     void vkCommandBufferHostSyncGOOGLE(
4014     const uint8_t* snapshotTraceBegin,
4015         size_t snapshotTraceBytes,
4016         android::base::BumpPool* pool,
4017         VkCommandBuffer commandBuffer,
4018         uint32_t needHostSync,
4019         uint32_t sequenceNumber);
4020     void vkCreateImageWithRequirementsGOOGLE(
4021     const uint8_t* snapshotTraceBegin,
4022         size_t snapshotTraceBytes,
4023         android::base::BumpPool* pool,
4024         VkResult input_result,
4025         VkDevice device,
4026         const VkImageCreateInfo* pCreateInfo,
4027         const VkAllocationCallbacks* pAllocator,
4028         VkImage* pImage,
4029         VkMemoryRequirements* pMemoryRequirements);
4030     void vkCreateBufferWithRequirementsGOOGLE(
4031     const uint8_t* snapshotTraceBegin,
4032         size_t snapshotTraceBytes,
4033         android::base::BumpPool* pool,
4034         VkResult input_result,
4035         VkDevice device,
4036         const VkBufferCreateInfo* pCreateInfo,
4037         const VkAllocationCallbacks* pAllocator,
4038         VkBuffer* pBuffer,
4039         VkMemoryRequirements* pMemoryRequirements);
4040     void vkGetMemoryHostAddressInfoGOOGLE(
4041     const uint8_t* snapshotTraceBegin,
4042         size_t snapshotTraceBytes,
4043         android::base::BumpPool* pool,
4044         VkResult input_result,
4045         VkDevice device,
4046         VkDeviceMemory memory,
4047         uint64_t* pAddress,
4048         uint64_t* pSize,
4049         uint64_t* pHostmemId);
4050     void vkFreeMemorySyncGOOGLE(
4051     const uint8_t* snapshotTraceBegin,
4052         size_t snapshotTraceBytes,
4053         android::base::BumpPool* pool,
4054         VkResult input_result,
4055         VkDevice device,
4056         VkDeviceMemory memory,
4057         const VkAllocationCallbacks* pAllocator);
4058     void vkQueueHostSyncGOOGLE(
4059     const uint8_t* snapshotTraceBegin,
4060         size_t snapshotTraceBytes,
4061         android::base::BumpPool* pool,
4062         VkQueue queue,
4063         uint32_t needHostSync,
4064         uint32_t sequenceNumber);
4065     void vkQueueSubmitAsyncGOOGLE(
4066     const uint8_t* snapshotTraceBegin,
4067         size_t snapshotTraceBytes,
4068         android::base::BumpPool* pool,
4069         VkQueue queue,
4070         uint32_t submitCount,
4071         const VkSubmitInfo* pSubmits,
4072         VkFence fence);
4073     void vkQueueWaitIdleAsyncGOOGLE(
4074     const uint8_t* snapshotTraceBegin,
4075         size_t snapshotTraceBytes,
4076         android::base::BumpPool* pool,
4077         VkQueue queue);
4078     void vkQueueBindSparseAsyncGOOGLE(
4079     const uint8_t* snapshotTraceBegin,
4080         size_t snapshotTraceBytes,
4081         android::base::BumpPool* pool,
4082         VkQueue queue,
4083         uint32_t bindInfoCount,
4084         const VkBindSparseInfo* pBindInfo,
4085         VkFence fence);
4086     void vkGetLinearImageLayoutGOOGLE(
4087     const uint8_t* snapshotTraceBegin,
4088         size_t snapshotTraceBytes,
4089         android::base::BumpPool* pool,
4090         VkDevice device,
4091         VkFormat format,
4092         VkDeviceSize* pOffset,
4093         VkDeviceSize* pRowPitchAlignment);
4094     void vkQueueFlushCommandsGOOGLE(
4095     const uint8_t* snapshotTraceBegin,
4096         size_t snapshotTraceBytes,
4097         android::base::BumpPool* pool,
4098         VkQueue queue,
4099         VkCommandBuffer commandBuffer,
4100         VkDeviceSize dataSize,
4101         const void* pData);
4102     void vkQueueCommitDescriptorSetUpdatesGOOGLE(
4103     const uint8_t* snapshotTraceBegin,
4104         size_t snapshotTraceBytes,
4105         android::base::BumpPool* pool,
4106         VkQueue queue,
4107         uint32_t descriptorPoolCount,
4108         const VkDescriptorPool* pDescriptorPools,
4109         uint32_t descriptorSetCount,
4110         const VkDescriptorSetLayout* pSetLayouts,
4111         const uint64_t* pDescriptorSetPoolIds,
4112         const uint32_t* pDescriptorSetWhichPool,
4113         const uint32_t* pDescriptorSetPendingAllocation,
4114         const uint32_t* pDescriptorWriteStartingIndices,
4115         uint32_t pendingDescriptorWriteCount,
4116         const VkWriteDescriptorSet* pPendingDescriptorWrites);
4117     void vkCollectDescriptorPoolIdsGOOGLE(
4118     const uint8_t* snapshotTraceBegin,
4119         size_t snapshotTraceBytes,
4120         android::base::BumpPool* pool,
4121         VkDevice device,
4122         VkDescriptorPool descriptorPool,
4123         uint32_t* pPoolIdCount,
4124         uint64_t* pPoolIds);
4125 #endif
4126 #ifdef VK_KHR_acceleration_structure
4127     void vkCreateAccelerationStructureKHR(
4128     const uint8_t* snapshotTraceBegin,
4129         size_t snapshotTraceBytes,
4130         android::base::BumpPool* pool,
4131         VkResult input_result,
4132         VkDevice device,
4133         const VkAccelerationStructureCreateInfoKHR* pCreateInfo,
4134         const VkAllocationCallbacks* pAllocator,
4135         VkAccelerationStructureKHR* pAccelerationStructure);
4136     void vkDestroyAccelerationStructureKHR(
4137     const uint8_t* snapshotTraceBegin,
4138         size_t snapshotTraceBytes,
4139         android::base::BumpPool* pool,
4140         VkDevice device,
4141         VkAccelerationStructureKHR accelerationStructure,
4142         const VkAllocationCallbacks* pAllocator);
4143     void vkCmdBuildAccelerationStructuresKHR(
4144     const uint8_t* snapshotTraceBegin,
4145         size_t snapshotTraceBytes,
4146         android::base::BumpPool* pool,
4147         VkCommandBuffer commandBuffer,
4148         uint32_t infoCount,
4149         const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
4150         const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos);
4151     void vkCmdBuildAccelerationStructuresIndirectKHR(
4152     const uint8_t* snapshotTraceBegin,
4153         size_t snapshotTraceBytes,
4154         android::base::BumpPool* pool,
4155         VkCommandBuffer commandBuffer,
4156         uint32_t infoCount,
4157         const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
4158         const VkDeviceAddress* pIndirectDeviceAddresses,
4159         const uint32_t* pIndirectStrides,
4160         const uint32_t* const* ppMaxPrimitiveCounts);
4161     void vkBuildAccelerationStructuresKHR(
4162     const uint8_t* snapshotTraceBegin,
4163         size_t snapshotTraceBytes,
4164         android::base::BumpPool* pool,
4165         VkResult input_result,
4166         VkDevice device,
4167         VkDeferredOperationKHR deferredOperation,
4168         uint32_t infoCount,
4169         const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
4170         const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos);
4171     void vkCopyAccelerationStructureKHR(
4172     const uint8_t* snapshotTraceBegin,
4173         size_t snapshotTraceBytes,
4174         android::base::BumpPool* pool,
4175         VkResult input_result,
4176         VkDevice device,
4177         VkDeferredOperationKHR deferredOperation,
4178         const VkCopyAccelerationStructureInfoKHR* pInfo);
4179     void vkCopyAccelerationStructureToMemoryKHR(
4180     const uint8_t* snapshotTraceBegin,
4181         size_t snapshotTraceBytes,
4182         android::base::BumpPool* pool,
4183         VkResult input_result,
4184         VkDevice device,
4185         VkDeferredOperationKHR deferredOperation,
4186         const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
4187     void vkCopyMemoryToAccelerationStructureKHR(
4188     const uint8_t* snapshotTraceBegin,
4189         size_t snapshotTraceBytes,
4190         android::base::BumpPool* pool,
4191         VkResult input_result,
4192         VkDevice device,
4193         VkDeferredOperationKHR deferredOperation,
4194         const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
4195     void vkWriteAccelerationStructuresPropertiesKHR(
4196     const uint8_t* snapshotTraceBegin,
4197         size_t snapshotTraceBytes,
4198         android::base::BumpPool* pool,
4199         VkResult input_result,
4200         VkDevice device,
4201         uint32_t accelerationStructureCount,
4202         const VkAccelerationStructureKHR* pAccelerationStructures,
4203         VkQueryType queryType,
4204         size_t dataSize,
4205         void* pData,
4206         size_t stride);
4207     void vkCmdCopyAccelerationStructureKHR(
4208     const uint8_t* snapshotTraceBegin,
4209         size_t snapshotTraceBytes,
4210         android::base::BumpPool* pool,
4211         VkCommandBuffer commandBuffer,
4212         const VkCopyAccelerationStructureInfoKHR* pInfo);
4213     void vkCmdCopyAccelerationStructureToMemoryKHR(
4214     const uint8_t* snapshotTraceBegin,
4215         size_t snapshotTraceBytes,
4216         android::base::BumpPool* pool,
4217         VkCommandBuffer commandBuffer,
4218         const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
4219     void vkCmdCopyMemoryToAccelerationStructureKHR(
4220     const uint8_t* snapshotTraceBegin,
4221         size_t snapshotTraceBytes,
4222         android::base::BumpPool* pool,
4223         VkCommandBuffer commandBuffer,
4224         const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
4225     void vkGetAccelerationStructureDeviceAddressKHR(
4226     const uint8_t* snapshotTraceBegin,
4227         size_t snapshotTraceBytes,
4228         android::base::BumpPool* pool,
4229         VkDeviceAddress input_result,
4230         VkDevice device,
4231         const VkAccelerationStructureDeviceAddressInfoKHR* pInfo);
4232     void vkCmdWriteAccelerationStructuresPropertiesKHR(
4233     const uint8_t* snapshotTraceBegin,
4234         size_t snapshotTraceBytes,
4235         android::base::BumpPool* pool,
4236         VkCommandBuffer commandBuffer,
4237         uint32_t accelerationStructureCount,
4238         const VkAccelerationStructureKHR* pAccelerationStructures,
4239         VkQueryType queryType,
4240         VkQueryPool queryPool,
4241         uint32_t firstQuery);
4242     void vkGetDeviceAccelerationStructureCompatibilityKHR(
4243     const uint8_t* snapshotTraceBegin,
4244         size_t snapshotTraceBytes,
4245         android::base::BumpPool* pool,
4246         VkDevice device,
4247         const VkAccelerationStructureVersionInfoKHR* pVersionInfo,
4248         VkAccelerationStructureCompatibilityKHR* pCompatibility);
4249     void vkGetAccelerationStructureBuildSizesKHR(
4250     const uint8_t* snapshotTraceBegin,
4251         size_t snapshotTraceBytes,
4252         android::base::BumpPool* pool,
4253         VkDevice device,
4254         VkAccelerationStructureBuildTypeKHR buildType,
4255         const VkAccelerationStructureBuildGeometryInfoKHR* pBuildInfo,
4256         const uint32_t* pMaxPrimitiveCounts,
4257         VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo);
4258 #endif
4259 #ifdef VK_KHR_ray_tracing_pipeline
4260     void vkCmdTraceRaysKHR(
4261     const uint8_t* snapshotTraceBegin,
4262         size_t snapshotTraceBytes,
4263         android::base::BumpPool* pool,
4264         VkCommandBuffer commandBuffer,
4265         const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable,
4266         const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable,
4267         const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable,
4268         const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable,
4269         uint32_t width,
4270         uint32_t height,
4271         uint32_t depth);
4272     void vkCreateRayTracingPipelinesKHR(
4273     const uint8_t* snapshotTraceBegin,
4274         size_t snapshotTraceBytes,
4275         android::base::BumpPool* pool,
4276         VkResult input_result,
4277         VkDevice device,
4278         VkDeferredOperationKHR deferredOperation,
4279         VkPipelineCache pipelineCache,
4280         uint32_t createInfoCount,
4281         const VkRayTracingPipelineCreateInfoKHR* pCreateInfos,
4282         const VkAllocationCallbacks* pAllocator,
4283         VkPipeline* pPipelines);
4284     void vkGetRayTracingCaptureReplayShaderGroupHandlesKHR(
4285     const uint8_t* snapshotTraceBegin,
4286         size_t snapshotTraceBytes,
4287         android::base::BumpPool* pool,
4288         VkResult input_result,
4289         VkDevice device,
4290         VkPipeline pipeline,
4291         uint32_t firstGroup,
4292         uint32_t groupCount,
4293         size_t dataSize,
4294         void* pData);
4295     void vkCmdTraceRaysIndirectKHR(
4296     const uint8_t* snapshotTraceBegin,
4297         size_t snapshotTraceBytes,
4298         android::base::BumpPool* pool,
4299         VkCommandBuffer commandBuffer,
4300         const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable,
4301         const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable,
4302         const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable,
4303         const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable,
4304         VkDeviceAddress indirectDeviceAddress);
4305     void vkGetRayTracingShaderGroupStackSizeKHR(
4306     const uint8_t* snapshotTraceBegin,
4307         size_t snapshotTraceBytes,
4308         android::base::BumpPool* pool,
4309         VkDeviceSize input_result,
4310         VkDevice device,
4311         VkPipeline pipeline,
4312         uint32_t group,
4313         VkShaderGroupShaderKHR groupShader);
4314     void vkCmdSetRayTracingPipelineStackSizeKHR(
4315     const uint8_t* snapshotTraceBegin,
4316         size_t snapshotTraceBytes,
4317         android::base::BumpPool* pool,
4318         VkCommandBuffer commandBuffer,
4319         uint32_t pipelineStackSize);
4320 #endif
4321 #ifdef VK_KHR_ray_query
4322 #endif
4323 
4324 private:
4325     class Impl;
4326     std::unique_ptr<Impl> mImpl;
4327 
4328 };
4329 
4330 
4331