Layers initial prototype.
Includes an auto generated layer (GenericLayer) that wraps all api calls.
Includes a basic handwritten layer (basicLayer) that wraps a few apis.
Adds xglGetProcAddr as a new api, which is used to chain layers together.
All layers and loader implement a dispatch table.
diff --git a/icd/intel/intel.c b/icd/intel/intel.c
index a78779d..30ea9a1 100644
--- a/icd/intel/intel.c
+++ b/icd/intel/intel.c
@@ -29,6 +29,7 @@
#include "icd-enumerate-drm.h"
#include "gpu.h"
#include "intel.h"
+#include "dispatch.h"
static int intel_devid_override;
int intel_debug = -1;
@@ -72,6 +73,10 @@
env = p + 1;
}
}
+ICD_EXPORT void * xglGetProcAddr(XGL_PHYSICAL_GPU gpu, const XGL_CHAR * pName)
+{
+ return intelGetProcAddr(gpu, pName);
+}
ICD_EXPORT XGL_RESULT XGLAPI xglInitAndEnumerateGpus(
const XGL_APPLICATION_INFO* pAppInfo,