radeonsi: add si_so_target_reference

The src type is different on purpose.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
This commit is contained in:
Marek Olšák 2017-10-07 23:04:25 +02:00
parent 65f2e33500
commit a86c9328ce
1 changed files with 8 additions and 2 deletions

View File

@ -32,6 +32,12 @@
static void si_set_streamout_enable(struct si_context *sctx, bool enable);
static inline void si_so_target_reference(struct si_streamout_target **dst,
struct pipe_stream_output_target *src)
{
pipe_so_target_reference((struct pipe_stream_output_target**)dst, src);
}
static struct pipe_stream_output_target *
si_create_so_target(struct pipe_context *ctx,
struct pipe_resource *buffer,
@ -100,7 +106,7 @@ void si_common_set_streamout_targets(struct pipe_context *ctx,
/* Set the new targets. */
for (i = 0; i < num_targets; i++) {
pipe_so_target_reference((struct pipe_stream_output_target**)&sctx->streamout.targets[i], targets[i]);
si_so_target_reference(&sctx->streamout.targets[i], targets[i]);
if (!targets[i])
continue;
@ -110,7 +116,7 @@ void si_common_set_streamout_targets(struct pipe_context *ctx,
append_bitmask |= 1 << i;
}
for (; i < sctx->streamout.num_targets; i++) {
pipe_so_target_reference((struct pipe_stream_output_target**)&sctx->streamout.targets[i], NULL);
si_so_target_reference(&sctx->streamout.targets[i], NULL);
}
sctx->streamout.enabled_mask = enabled_mask;