summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_pipe.h
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2016-04-10 03:29:57 +0200
committerMarek Olšák <[email protected]>2016-04-12 14:29:49 +0200
commitcb21f8a97cdd5ae240aecdfa417b60b2c0dd6789 (patch)
tree49ba0d9e92e80e16c3896f0e9c84b7ad3ad00696 /src/gallium/drivers/radeonsi/si_pipe.h
parent5b6a0b7fc02c27c334cf932cfdfd7bedef5a5198 (diff)
radeonsi: compute scissor from viewport in set_viewport_states
and clamp it right before emitting. This is a prerequisite for computing the guard band. Reviewed-by: Edward O'Callaghan <[email protected]> Reviewed-by: Grigori Goronzy <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_pipe.h')
-rw-r--r--src/gallium/drivers/radeonsi/si_pipe.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h
index f665c8160e0..b600b86e47c 100644
--- a/src/gallium/drivers/radeonsi/si_pipe.h
+++ b/src/gallium/drivers/radeonsi/si_pipe.h
@@ -179,10 +179,18 @@ struct si_scissors {
struct pipe_scissor_state states[SI_MAX_VIEWPORTS];
};
+struct si_signed_scissor {
+ int minx;
+ int miny;
+ int maxx;
+ int maxy;
+};
+
struct si_viewports {
struct r600_atom atom;
unsigned dirty_mask;
struct pipe_viewport_state states[SI_MAX_VIEWPORTS];
+ struct si_signed_scissor as_scissor[SI_MAX_VIEWPORTS];
};
/* A shader state consists of the shader selector, which is a constant state