diff options
| author | Chris Forbes <chrisf@ijw.co.nz> | 2015-04-08 10:15:35 +1200 |
|---|---|---|
| committer | Chris Forbes <chrisf@ijw.co.nz> | 2015-04-17 10:13:58 +1200 |
| commit | fa4790071ffdd6e787f0d4d4fff85f9482c4e362 (patch) | |
| tree | 704f44923503579549cbf17947f001b3437afd98 /layers | |
| parent | 964c587aec1e2dc21a6ef823c194a0d29988a4a1 (diff) | |
| download | usermoji-fa4790071ffdd6e787f0d4d4fff85f9482c4e362.tar.xz | |
shader_checker: add hook for xglCreateGraphicsPipeline
Diffstat (limited to 'layers')
| -rw-r--r-- | layers/shader_checker.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/layers/shader_checker.cpp b/layers/shader_checker.cpp index 56752d76..ff8e27c5 100644 --- a/layers/shader_checker.cpp +++ b/layers/shader_checker.cpp @@ -250,6 +250,21 @@ VK_LAYER_EXPORT VkResult VKAPI vkCreateShader(VkDevice device, const VkShaderCre } +VK_LAYER_EXPORT VkResult VKAPI vkCreateGraphicsPipeline(VkDevice device, + const VkGraphicsPipelineCreateInfo *pCreateInfo, + VkPipeline *pPipeline) +{ + /* TODO: run cross-stage validation */ + /* - Validate vertex fetch -> VS interface */ + /* - Validate FS output -> CB */ + /* - Support GS, TCS, TES stages */ + + VkLayerDispatchTable *pTable = tableMap[(VkBaseLayerObject *)device]; + VkResult res = pTable->CreateGraphicsPipeline(device, pCreateInfo, pPipeline); + return res; +} + + VK_LAYER_EXPORT void * VKAPI vkGetProcAddr(VkPhysicalGpu gpu, const char* pName) { if (gpu == NULL) @@ -265,6 +280,7 @@ VK_LAYER_EXPORT void * VKAPI vkGetProcAddr(VkPhysicalGpu gpu, const char* pName) ADD_HOOK(vkEnumerateLayers); ADD_HOOK(vkCreateDevice); ADD_HOOK(vkCreateShader); + ADD_HOOK(vkCreateGraphicsPipeline); VkBaseLayerObject* gpuw = (VkBaseLayerObject *) gpu; if (gpuw->pGPA == NULL) |
