intel: add some intel_ir info

Just the beginning.  More will be needed.
diff --git a/icd/intel/shader.c b/icd/intel/shader.c
index edbd172..de89262 100644
--- a/icd/intel/shader.c
+++ b/icd/intel/shader.c
@@ -47,6 +47,18 @@
     memcpy(ir->kernel, bil + 1, ir->size);
 
     sh->ir = ir;
+    switch (bil->gen_magic) {
+    case 'v':
+        sh->uses |= INTEL_SHADER_USE_VID;
+        sh->in_count = 1;
+        sh->out_count = 1;
+        break;
+    case 'w':
+        sh->out_count = 1;
+        break;
+    default:
+        break;
+    }
 
     return XGL_SUCCESS;
 }
diff --git a/icd/intel/shader.h b/icd/intel/shader.h
index 113fe1a..61f2011 100644
--- a/icd/intel/shader.h
+++ b/icd/intel/shader.h
@@ -28,6 +28,11 @@
 #include "intel.h"
 #include "obj.h"
 
+enum intel_shader_use {
+    INTEL_SHADER_USE_VID        = (1 << 0),
+    INTEL_SHADER_USE_IID        = (1 << 1),
+};
+
 /* just the kernel now */
 struct intel_ir {
     void *kernel;
@@ -38,6 +43,9 @@
     struct intel_obj obj;
 
     struct intel_ir *ir;
+    XGL_FLAGS uses;
+    XGL_UINT in_count;
+    XGL_UINT out_count;
 };
 
 static inline struct intel_shader *intel_shader(XGL_SHADER shader)