radeon: don't use old bind_vertex/fragment_sampler_states() hooks

This commit is contained in:
Brian Paul 2013-09-12 15:45:52 -06:00
parent 1e8d3eb08d
commit 27c054edf0
4 changed files with 6 additions and 53 deletions

View file

@ -1522,25 +1522,6 @@ static void*
return (void*)sampler;
}
static void r300_bind_fragment_sampler_states(struct pipe_context* pipe,
unsigned count,
void** states)
{
struct r300_context* r300 = r300_context(pipe);
struct r300_textures_state* state =
(struct r300_textures_state*)r300->textures_state.state;
unsigned tex_units = r300->screen->caps.num_tex_units;
if (count > tex_units) {
return;
}
memcpy(state->sampler_states, states, sizeof(void*) * count);
state->sampler_state_count = count;
r300_mark_atom_dirty(r300, &r300->textures_state);
}
static void r300_bind_sampler_states(struct pipe_context* pipe,
unsigned shader,
unsigned start, unsigned count,
@ -2183,8 +2164,6 @@ void r300_init_state_functions(struct r300_context* r300)
r300->context.create_sampler_state = r300_create_sampler_state;
r300->context.bind_sampler_states = r300_bind_sampler_states;
r300->context.bind_fragment_sampler_states = r300_bind_fragment_sampler_states;
r300->context.bind_vertex_sampler_states = r300_lacks_vertex_textures;
r300->context.delete_sampler_state = r300_delete_sampler_state;
r300->context.set_fragment_sampler_views = r300_set_fragment_sampler_views;

View file

@ -615,22 +615,6 @@ static void evergreen_set_cs_sampler_view(struct pipe_context *ctx_,
}
}
static void evergreen_bind_compute_sampler_states(
struct pipe_context *ctx_,
unsigned start_slot,
unsigned num_samplers,
void **samplers_)
{
struct compute_sampler_state ** samplers =
(struct compute_sampler_state **)samplers_;
for (int i = 0; i < num_samplers; i++) {
if (samplers[i]) {
/* XXX: Implement */
assert(!"Compute samplers not implemented.");
}
}
}
static void evergreen_set_global_binding(
struct pipe_context *ctx_, unsigned first, unsigned n,
@ -865,7 +849,6 @@ void evergreen_init_compute_state_functions(struct r600_context *ctx)
// ctx->context.create_sampler_view = evergreen_compute_create_sampler_view;
ctx->b.b.set_compute_resources = evergreen_set_compute_resources;
ctx->b.b.set_compute_sampler_views = evergreen_set_cs_sampler_view;
ctx->b.b.bind_compute_sampler_states = evergreen_bind_compute_sampler_states;
ctx->b.b.set_global_binding = evergreen_set_global_binding;
ctx->b.b.launch_grid = evergreen_launch_grid;
@ -874,7 +857,6 @@ void evergreen_init_compute_state_functions(struct r600_context *ctx)
ctx->cs_vertex_buffer_state.dirty_mask = 0x2;
}
struct pipe_resource *r600_compute_global_buffer_create(
struct pipe_screen *screen,
const struct pipe_resource *templ)

View file

@ -394,6 +394,12 @@ static void r600_bind_sampler_states(struct pipe_context *pipe,
assert(start == 0); /* XXX fix below */
if (shader != PIPE_SHADER_VERTEX &&
shader != PIPE_SHADER_FRAGMENT) {
assert(!"Only vertex/fragment sampler are implemented.");
return;
}
for (i = 0; i < count; i++) {
struct r600_pipe_sampler_state *rstate = rstates[i];
@ -437,16 +443,6 @@ static void r600_bind_sampler_states(struct pipe_context *pipe,
}
}
static void r600_bind_vs_sampler_states(struct pipe_context *ctx, unsigned count, void **states)
{
r600_bind_sampler_states(ctx, PIPE_SHADER_VERTEX, 0, count, states);
}
static void r600_bind_ps_sampler_states(struct pipe_context *ctx, unsigned count, void **states)
{
r600_bind_sampler_states(ctx, PIPE_SHADER_FRAGMENT, 0, count, states);
}
static void r600_delete_sampler_state(struct pipe_context *ctx, void *state)
{
free(state);
@ -2086,11 +2082,9 @@ void r600_init_common_state_functions(struct r600_context *rctx)
rctx->b.b.bind_blend_state = r600_bind_blend_state;
rctx->b.b.bind_depth_stencil_alpha_state = r600_bind_dsa_state;
rctx->b.b.bind_sampler_states = r600_bind_sampler_states;
rctx->b.b.bind_fragment_sampler_states = r600_bind_ps_sampler_states;
rctx->b.b.bind_fs_state = r600_bind_ps_state;
rctx->b.b.bind_rasterizer_state = r600_bind_rs_state;
rctx->b.b.bind_vertex_elements_state = r600_bind_vertex_elements;
rctx->b.b.bind_vertex_sampler_states = r600_bind_vs_sampler_states;
rctx->b.b.bind_vs_state = r600_bind_vs_state;
rctx->b.b.delete_blend_state = r600_delete_blend_state;
rctx->b.b.delete_depth_stencil_alpha_state = r600_delete_dsa_state;

View file

@ -3031,8 +3031,6 @@ void si_init_state_functions(struct r600_context *rctx)
rctx->b.b.create_sampler_state = si_create_sampler_state;
rctx->b.b.bind_sampler_states = si_bind_sampler_states;
rctx->b.b.bind_vertex_sampler_states = si_bind_vs_sampler_states;
rctx->b.b.bind_fragment_sampler_states = si_bind_ps_sampler_states;
rctx->b.b.delete_sampler_state = si_delete_sampler_state;
rctx->b.b.create_sampler_view = si_create_sampler_view;