summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300/r300_context.h
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2009-08-16 18:42:24 +1000
committerDave Airlie <airlied@redhat.com>2009-08-18 20:10:50 +1000
commit9ad76e9479c9c3cb8b2947d5144de33bb31197b8 (patch)
tree360207b69b08fd5281c0353feb622c7ae1aeeecf /src/mesa/drivers/dri/r300/r300_context.h
parent0e705c0dd397fe3c607551f988614178dacb9fa4 (diff)
r300: OQ rework
Move to common code base so radeon/r200 can add support for this. Make OQ start a state emitted like all normal state, and make no-tcl flushing work in proper places. Really need a generic post emit space reservation mechanism like max_state so we can reserve some space for the emit this code passes demos/arbocclude, piglit occlusion query and glean occlusion query with TCL and NO-TCL on my rv530.
Diffstat (limited to 'src/mesa/drivers/dri/r300/r300_context.h')
-rw-r--r--src/mesa/drivers/dri/r300/r300_context.h22
1 files changed, 6 insertions, 16 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_context.h b/src/mesa/drivers/dri/r300/r300_context.h
index 3ba3426608..65e0d46611 100644
--- a/src/mesa/drivers/dri/r300/r300_context.h
+++ b/src/mesa/drivers/dri/r300/r300_context.h
@@ -290,6 +290,12 @@ typedef struct r300_context *r300ContextPtr;
#define R300_TEX_CMDSIZE (MAX_TEXTURE_UNITS+1)
*/
+#define R300_QUERYOBJ_CMD_0 0
+#define R300_QUERYOBJ_DATA_0 1
+#define R300_QUERYOBJ_CMD_1 2
+#define R300_QUERYOBJ_DATA_1 3
+#define R300_QUERYOBJ_CMDSIZE 4
+
/**
* Cache for hardware register state.
*/
@@ -380,7 +386,6 @@ struct r300_hw_state {
struct radeon_state_atom border_color;
} tex;
struct radeon_state_atom txe; /* tex enable (4104) */
-
radeonTexObj *textures[R300_MAX_TEXTURE_UNITS];
};
@@ -505,15 +510,6 @@ struct r300_index_buffer {
GLuint count;
};
-struct r300_query_object {
- struct gl_query_object Base;
- struct radeon_bo *bo;
- int curr_offset;
- GLboolean emitted_begin;
-
- /* Double linked list of not flushed query objects */
- struct r300_query_object *prev, *next;
-};
/**
* \brief R300 context structure.
@@ -549,12 +545,6 @@ struct r300_context {
uint32_t fallback;
DECLARE_RENDERINPUTS(render_inputs_bitset);
-
- struct {
- struct r300_query_object *current;
- struct r300_query_object not_flushed_head;
- } query;
-
int num_z_pipes;
};