softpipe: Use SATURATE
[mesa.git] / src / gallium / auxiliary / postprocess / pp_run.c
index 9dc8fb51ae2cfef2d47e8d381e7b9362f60db0ec..c6987153f7303da06e5866e81dd2b1f658555a88 100644 (file)
@@ -133,6 +133,7 @@ pp_run(struct pp_queue_t *ppq, struct pipe_resource *in,
                         CSO_BIT_VERTEX_SHADER |
                         CSO_BIT_VIEWPORT |
                         CSO_BIT_AUX_VERTEX_BUFFER_SLOT |
+                        CSO_BIT_PAUSE_QUERIES |
                         CSO_BIT_RENDER_CONDITION));
    cso_save_constant_buffer_slot0(cso, PIPE_SHADER_VERTEX);
    cso_save_constant_buffer_slot0(cso, PIPE_SHADER_FRAGMENT);
@@ -254,8 +255,7 @@ pp_tgsi_to_state(struct pipe_context *pipe, const char *text, bool isvs,
       return NULL;
    }
 
-   state.tokens = tokens;
-   memset(&state.stream_output, 0, sizeof(state.stream_output));
+   pipe_shader_state_from_tgsi(&state, tokens);
 
    if (isvs) {
       ret_state = pipe->create_vs_state(pipe, &state);
@@ -277,7 +277,7 @@ pp_filter_misc_state(struct pp_program *p)
    cso_set_rasterizer(p->cso, &p->rasterizer);
    cso_set_viewport(p->cso, &p->viewport);
 
-   cso_set_vertex_elements(p->cso, 2, p->velem);
+   cso_set_vertex_elements(p->cso, &p->velem);
 }
 
 /** Draw with the filter to the set output. */
@@ -300,5 +300,5 @@ void
 pp_filter_set_clear_fb(struct pp_program *p)
 {
    cso_set_framebuffer(p->cso, &p->framebuffer);
-   p->pipe->clear(p->pipe, PIPE_CLEAR_COLOR0, &p->clear_color, 0, 0);
+   p->pipe->clear(p->pipe, PIPE_CLEAR_COLOR0, NULL, &p->clear_color, 0, 0);
 }