layers: UO: split device and instance data
diff --git a/scripts/unique_objects_generator.py b/scripts/unique_objects_generator.py
index 8e9cc45..a08276f 100644
--- a/scripts/unique_objects_generator.py
+++ b/scripts/unique_objects_generator.py
@@ -873,7 +873,10 @@
             dispatchable_type = cmdinfo.elem.find('param/type').text
             dispatchable_name = cmdinfo.elem.find('param/name').text
             # Generate local instance/pdev/device data lookup
-            self.appendSection('command', '    layer_data *dev_data = GetLayerDataPtr(get_dispatch_key('+dispatchable_name+'), layer_data_map);')
+            if dispatchable_type in ["VkPhysicalDevice", "VkInstance"]:
+                self.appendSection('command', '    instance_layer_data *dev_data = GetLayerDataPtr(get_dispatch_key('+dispatchable_name+'), instance_layer_data_map);')
+            else:
+                self.appendSection('command', '    layer_data *dev_data = GetLayerDataPtr(get_dispatch_key('+dispatchable_name+'), layer_data_map);')
             # Handle return values, if any
             resulttype = cmdinfo.elem.find('proto/type')
             if (resulttype != None and resulttype.text == 'void'):
@@ -901,10 +904,7 @@
                     else:
                         paramstext = paramstext.replace(param.name, '(%s %s)local_%s' % ('const', param.type, param.name))
             # Use correct dispatch table
-            if dispatchable_type in ["VkPhysicalDevice", "VkInstance"]:
-                API = cmdinfo.elem.attrib.get('name').replace('vk','dev_data->instance_dispatch_table->',1)
-            else:
-                API = cmdinfo.elem.attrib.get('name').replace('vk','dev_data->device_dispatch_table->',1)
+            API = cmdinfo.elem.attrib.get('name').replace('vk','dev_data->dispatch_table->',1)
             # Put all this together for the final down-chain call
             self.appendSection('command', '    ' + assignresult + API + '(' + paramstext + ');')
             # And add the post-API-call codegen