struct brw_reg ff_sync;
} reg;
- /* 3 different ways of expressing vertex size:
- */
- GLuint nr_attrs;
+ /* Number of registers storing VUE data */
GLuint nr_regs;
- GLuint nr_bytes;
GLuint first_tmp;
GLuint last_tmp;
GLboolean need_direction;
- GLuint header_regs;
- /** Mapping from VERT_RESULT_* to offset within the VUE. */
- GLuint offset[VERT_RESULT_MAX];
- /** Mapping from attribute index to VERT_RESULT_* */
- GLuint idx_to_attr[VERT_RESULT_MAX];
-
struct brw_vue_map vue_map;
};
#define ATTR_SIZE (4*4)
+/**
+ * True if the given vert_result is one of the outputs of the vertex shader.
+ */
+static inline bool brw_clip_have_vert_result(struct brw_clip_compile *c,
+ GLuint vert_result)
+{
+ return (c->key.attrs & BITFIELD64_BIT(vert_result)) ? 1 : 0;
+}
+
/* Points are only culled, so no need for a clip routine, however it
* works out easier to have a dummy one.
*/