v3d: add a helper to check if transform feedback is enabled

v2: We should be safe assuming that bind_vs != NULL (Eric)

Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
Iago Toral Quiroga
2019-06-19 10:23:43 +02:00
parent 00a56acc23
commit 42572f2f7d
2 changed files with 8 additions and 2 deletions
+7
View File
@@ -569,6 +569,13 @@ v3d_ioctl(int fd, unsigned long request, void *arg)
return drmIoctl(fd, request, arg);
}
static inline bool
v3d_transform_feedback_enabled(struct v3d_context *v3d)
{
return v3d->prog.bind_vs->num_tf_specs != 0 &&
v3d->active_queries;
}
void v3d_set_shader_uniform_dirty_flags(struct v3d_compiled_shader *shader);
struct v3d_cl_reloc v3d_write_uniforms(struct v3d_context *v3d,
struct v3d_compiled_shader *shader,
+1 -2
View File
@@ -701,8 +701,7 @@ v3dX(emit_state)(struct pipe_context *pctx)
v3d->prog.bind_vs->tf_specs);
#if V3D_VERSION >= 40
bool tf_enabled = (v3d->prog.bind_vs->num_tf_specs != 0 &&
v3d->active_queries);
bool tf_enabled = v3d_transform_feedback_enabled(v3d);
job->tf_enabled |= tf_enabled;
cl_emit(&job->bcl, TRANSFORM_FEEDBACK_SPECS, tfe) {