layers: Add enable for NV_GLSL_SHADER extension
authorMark Lobodzinski <mark@lunarg.com>
Fri, 3 Feb 2017 19:07:43 +0000 (12:07 -0700)
committerMark Lobodzinski <mark@lunarg.com>
Mon, 6 Feb 2017 16:26:34 +0000 (09:26 -0700)
Change-Id: Iffe21dd329c253878b9c2db0ceaf2e8f62679703

layers/core_validation.cpp

index 6ad03c4..e23e1d0 100644 (file)
@@ -102,6 +102,7 @@ static const uint32_t kSurfaceSizeFromSwapchain = 0xFFFFFFFFu;
 struct devExts {
     bool wsi_enabled;
     bool wsi_display_swapchain_enabled;
+    bool nv_glsl_shader_enabled;
     unordered_map<VkSwapchainKHR, unique_ptr<SWAPCHAIN_NODE>> swapchainMap;
     unordered_map<VkImage, VkSwapchainKHR> imageToSwapchainMap;
 };
@@ -3871,17 +3872,22 @@ VKAPI_ATTR void VKAPI_CALL DestroyInstance(VkInstance instance, const VkAllocati
 
 static void checkDeviceRegisterExtensions(const VkDeviceCreateInfo *pCreateInfo, VkDevice device) {
     uint32_t i;
-    // TBD: Need any locking, in case this function is called at the same time
-    // by more than one thread?
+    // TBD: Need any locking, in case this function is called at the same time by more than one thread?
     layer_data *dev_data = get_my_data_ptr(get_dispatch_key(device), layer_data_map);
     dev_data->device_extensions.wsi_enabled = false;
     dev_data->device_extensions.wsi_display_swapchain_enabled = false;
+    dev_data->device_extensions.nv_glsl_shader_enabled = false;
 
     for (i = 0; i < pCreateInfo->enabledExtensionCount; i++) {
-        if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_SWAPCHAIN_EXTENSION_NAME) == 0)
+        if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_SWAPCHAIN_EXTENSION_NAME) == 0) {
             dev_data->device_extensions.wsi_enabled = true;
-        if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME) == 0)
+        }
+        if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME) == 0) {
             dev_data->device_extensions.wsi_display_swapchain_enabled = true;
+        }
+        if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_NV_GLSL_SHADER_EXTENSION_NAME) == 0) {
+            dev_data->device_extensions.nv_glsl_shader_enabled = true;
+        }
     }
 }