loader: Add utility to return loader instance ptr
diff --git a/loader/debug_report.c b/loader/debug_report.c
index 3572161..24a478d 100644
--- a/loader/debug_report.c
+++ b/loader/debug_report.c
@@ -67,7 +67,7 @@
     if (!pNewDbgFuncNode)
         return VK_ERROR_OUT_OF_HOST_MEMORY;
 
-    struct loader_instance *inst = (struct loader_instance *) instance;
+    struct loader_instance *inst = loader_instance(instance);
     VkResult result = inst->disp->DbgCreateMsgCallback(instance, msgFlags, pfnMsgCallback, pUserData, pMsgCallback);
     if (result == VK_SUCCESS) {
         pNewDbgFuncNode->msgCallback = *pMsgCallback;
@@ -84,10 +84,9 @@
 
 static VkResult debug_report_DbgDestroyMsgCallback(
         VkInstance instance,
-        VkLayerDispatchTable nextTable,
         VkDbgMsgCallback msg_callback)
 {
-    struct loader_instance *inst = (struct loader_instance *) instance;
+    struct loader_instance *inst = loader_instance(instance);
     VkLayerDbgFunctionNode *pTrav = inst->DbgFunctionHead;
     VkLayerDbgFunctionNode *pPrev = pTrav;
 
diff --git a/loader/loader.c b/loader/loader.c
index 525d30f..dd38aa3 100644
--- a/loader/loader.c
+++ b/loader/loader.c
@@ -1379,7 +1379,7 @@
 VkResult loader_DestroyInstance(
         VkInstance                                instance)
 {
-    struct loader_instance *ptr_instance = (struct loader_instance *) instance;
+    struct loader_instance *ptr_instance = loader_instance(instance);
     struct loader_icd *icds = ptr_instance->icds;
     VkResult res;
 
diff --git a/loader/loader.h b/loader/loader.h
index 6c1ec62..526f92e 100644
--- a/loader/loader.h
+++ b/loader/loader.h
@@ -211,6 +211,10 @@
     VkLayerDbgFunctionNode *DbgFunctionHead;
 };
 
+static inline struct loader_instance *loader_instance(VkInstance instance) {
+    return (struct loader_instance *) instance;
+}
+
 struct loader_lib_info {
     const char *lib_name;
     uint32_t ref_count;