Just the beginning. More will be needed.
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;
}
#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;
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)