summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2013-09-12 15:07:39 -0600
committerBrian Paul <brianp@vmware.com>2013-09-12 18:07:43 -0600
commit9f617a5d0eb40d113c3b66b522403560baaf5a96 (patch)
tree93776dfeff31ae8a7556cee761c6f0ac4de9a5ee
parentee8aacb89f94803181387fa7f2ba48e7d0a7d3fc (diff)
ilo: implement pipe_context::bind_sampler_states()
-rw-r--r--src/gallium/drivers/ilo/ilo_state.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/gallium/drivers/ilo/ilo_state.c b/src/gallium/drivers/ilo/ilo_state.c
index a0c80aed3d..bda5de4567 100644
--- a/src/gallium/drivers/ilo/ilo_state.c
+++ b/src/gallium/drivers/ilo/ilo_state.c
@@ -357,6 +357,26 @@ ilo_bind_compute_sampler_states(struct pipe_context *pipe,
}
static void
+ilo_bind_sampler_states2(struct pipe_context *pipe, unsigned shader,
+ unsigned start, unsigned count, void **samplers)
+{
+ switch (shader) {
+ case PIPE_SHADER_VERTEX:
+ ilo_bind_vertex_sampler_states(pipe, count, samplers);
+ break;
+ case PIPE_SHADER_GEOMETRY:
+ ilo_bind_geometry_sampler_states(pipe, count, samplers);
+ break;
+ case PIPE_SHADER_FRAGMENT:
+ ilo_bind_fragment_sampler_states(pipe, count, samplers);
+ break;
+ case PIPE_SHADER_COMPUTE:
+ ilo_bind_compute_sampler_states(pipe, start, count, samplers);
+ break;
+ }
+}
+
+static void
ilo_delete_sampler_state(struct pipe_context *pipe, void *state)
{
FREE(state);
@@ -1230,6 +1250,7 @@ ilo_init_state_functions(struct ilo_context *ilo)
ilo->base.bind_blend_state = ilo_bind_blend_state;
ilo->base.delete_blend_state = ilo_delete_blend_state;
ilo->base.create_sampler_state = ilo_create_sampler_state;
+ ilo->base.bind_sampler_states = ilo_bind_sampler_states2;
ilo->base.bind_fragment_sampler_states = ilo_bind_fragment_sampler_states;
ilo->base.bind_vertex_sampler_states = ilo_bind_vertex_sampler_states;
ilo->base.bind_geometry_sampler_states = ilo_bind_geometry_sampler_states;