diff options
| author | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-06-24 18:24:19 -0600 |
|---|---|---|
| committer | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-07-01 21:08:13 -0600 |
| commit | a80a1a97b8f26dd035fabb2c6762447c71b73ba7 (patch) | |
| tree | 5bb97b3f4a60e230bcf1f0f58506df23f61d11c6 /loader | |
| parent | 58d1fc661197d73b789f5d8628cbf3393529699b (diff) | |
| download | usermoji-a80a1a97b8f26dd035fabb2c6762447c71b73ba7.tar.xz | |
bug-14014: Allow multiple entrypoints in modules
Continue implementation of shader module.
Diffstat (limited to 'loader')
| -rw-r--r-- | loader/gpa_helper.h | 2 | ||||
| -rw-r--r-- | loader/table_ops.h | 3 | ||||
| -rw-r--r-- | loader/trampoline.c | 9 |
3 files changed, 14 insertions, 0 deletions
diff --git a/loader/gpa_helper.h b/loader/gpa_helper.h index a51112ce..02e33416 100644 --- a/loader/gpa_helper.h +++ b/loader/gpa_helper.h @@ -139,6 +139,8 @@ static inline void* globalGetProcAddr(const char *name) return (void*) vkCreateColorAttachmentView; if (!strcmp(name, "CreateDepthStencilView")) return (void*) vkCreateDepthStencilView; + if (!strcmp(name, "CreateShaderModule")) + return (void*) vkCreateShaderModule; if (!strcmp(name, "CreateShader")) return (void*) vkCreateShader; if (!strcmp(name, "CreateGraphicsPipeline")) diff --git a/loader/table_ops.h b/loader/table_ops.h index a657d552..a29324fd 100644 --- a/loader/table_ops.h +++ b/loader/table_ops.h @@ -74,6 +74,7 @@ static inline void loader_init_device_dispatch_table(VkLayerDispatchTable *table table->CreateImageView = (PFN_vkCreateImageView) gpa(dev, "vkCreateImageView"); table->CreateColorAttachmentView = (PFN_vkCreateColorAttachmentView) gpa(dev, "vkCreateColorAttachmentView"); table->CreateDepthStencilView = (PFN_vkCreateDepthStencilView) gpa(dev, "vkCreateDepthStencilView"); + table->CreateShaderModule = (PFN_vkCreateShaderModule) gpa(dev, "vkCreateShaderModule"); table->CreateShader = (PFN_vkCreateShader) gpa(dev, "vkCreateShader"); table->CreateGraphicsPipeline = (PFN_vkCreateGraphicsPipeline) gpa(dev, "vkCreateGraphicsPipeline"); table->CreateGraphicsPipelineDerivative = (PFN_vkCreateGraphicsPipelineDerivative) gpa(dev, "vkCreateGraphicsPipelineDerivative"); @@ -226,6 +227,8 @@ static inline void *loader_lookup_device_dispatch_table( return (void *) table->CreateColorAttachmentView; if (!strcmp(name, "CreateDepthStencilView")) return (void *) table->CreateDepthStencilView; + if (!strcmp(name, "CreateShaderModule")) + return (void *) table->CreateShaderModule; if (!strcmp(name, "CreateShader")) return (void *) table->CreateShader; if (!strcmp(name, "CreateGraphicsPipeline")) diff --git a/loader/trampoline.c b/loader/trampoline.c index 1f96b3b8..24d3a60b 100644 --- a/loader/trampoline.c +++ b/loader/trampoline.c @@ -615,6 +615,15 @@ LOADER_EXPORT VkResult VKAPI vkCreateDepthStencilView(VkDevice device, const VkD return disp->CreateDepthStencilView(device, pCreateInfo, pView); } +LOADER_EXPORT VkResult VKAPI vkCreateShaderModule(VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, VkShaderModule* pShader) +{ + const VkLayerDispatchTable *disp; + + disp = loader_get_dispatch(device); + + return disp->CreateShaderModule(device, pCreateInfo, pShader); +} + LOADER_EXPORT VkResult VKAPI vkCreateShader(VkDevice device, const VkShaderCreateInfo* pCreateInfo, VkShader* pShader) { const VkLayerDispatchTable *disp; |
