swr/rast: SIMD16 FE - primitive assembly simplification
[mesa.git] / src / gallium / drivers / ddebug / dd_context.c
index f9d3de5155a56343a84696301bb41f2390ae2b2d..8260d4f8692809bfb537a9ca0a2f62a33db53cdf 100644 (file)
@@ -150,6 +150,21 @@ dd_context_get_query_result(struct pipe_context *_pipe,
    return pipe->get_query_result(pipe, dd_query_unwrap(query), wait, result);
 }
 
+static void
+dd_context_get_query_result_resource(struct pipe_context *_pipe,
+                                     struct pipe_query *query,
+                                     boolean wait,
+                                     enum pipe_query_value_type result_type,
+                                     int index,
+                                     struct pipe_resource *resource,
+                                     unsigned offset)
+{
+   struct pipe_context *pipe = dd_context(_pipe)->pipe;
+
+   pipe->get_query_result_resource(pipe, dd_query_unwrap(query), wait,
+                                   result_type, index, resource, offset);
+}
+
 static void
 dd_context_set_active_query_state(struct pipe_context *_pipe, boolean enable)
 {
@@ -338,6 +353,8 @@ dd_context_create_compute_state(struct pipe_context *_pipe,
       return NULL;
    hstate->cso = pipe->create_compute_state(pipe, state);
 
+   hstate->state.shader.type = state->ir_type;
+
    if (state->ir_type == PIPE_SHADER_IR_TGSI)
       hstate->state.shader.tokens = tgsi_dup_tokens(state->prog);
 
@@ -560,17 +577,6 @@ dd_context_set_vertex_buffers(struct pipe_context *_pipe,
    pipe->set_vertex_buffers(pipe, start, num_buffers, buffers);
 }
 
-static void
-dd_context_set_index_buffer(struct pipe_context *_pipe,
-                            const struct pipe_index_buffer *ib)
-{
-   struct dd_context *dctx = dd_context(_pipe);
-   struct pipe_context *pipe = dctx->pipe;
-
-   safe_memcpy(&dctx->draw_state.index_buffer, ib, sizeof(*ib));
-   pipe->set_index_buffer(pipe, ib);
-}
-
 static void
 dd_context_set_stream_output_targets(struct pipe_context *_pipe,
                                      unsigned num_targets,
@@ -785,6 +791,7 @@ dd_context_create(struct dd_screen *dscreen, struct pipe_context *pipe)
    CTX_INIT(begin_query);
    CTX_INIT(end_query);
    CTX_INIT(get_query_result);
+   CTX_INIT(get_query_result_resource);
    CTX_INIT(set_active_query_state);
    CTX_INIT(create_blend_state);
    CTX_INIT(bind_blend_state);
@@ -834,7 +841,6 @@ dd_context_create(struct dd_screen *dscreen, struct pipe_context *pipe)
    CTX_INIT(set_shader_buffers);
    CTX_INIT(set_shader_images);
    CTX_INIT(set_vertex_buffers);
-   CTX_INIT(set_index_buffer);
    CTX_INIT(create_stream_output_target);
    CTX_INIT(stream_output_target_destroy);
    CTX_INIT(set_stream_output_targets);