diff options
author | Kenneth Graunke <[email protected]> | 2018-01-21 21:23:48 -0800 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2019-02-21 10:26:05 -0800 |
commit | df401aaa11eeab91ada100c44ec9a1c4f3963978 (patch) | |
tree | a9c5392a69742491c924dad22f07e244ab71dd80 /src | |
parent | dc4453d886189875cd0e0c358ce92816755e1a47 (diff) |
iris: scissor slots
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/drivers/iris/iris_state.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/gallium/drivers/iris/iris_state.c b/src/gallium/drivers/iris/iris_state.c index 9082b6154f2..8e49312f58d 100644 --- a/src/gallium/drivers/iris/iris_state.c +++ b/src/gallium/drivers/iris/iris_state.c @@ -923,15 +923,14 @@ static void iris_set_scissor_states(struct pipe_context *ctx, unsigned start_slot, unsigned num_scissors, - const struct pipe_scissor_state *state) + const struct pipe_scissor_state *states) { struct iris_context *ice = (struct iris_context *) ctx; - // XXX: start_slot ice->state.num_scissors = num_scissors; - for (unsigned i = start_slot; i < start_slot + num_scissors; i++) { - ice->state.scissors[i] = *state; + for (unsigned i = 0; i < num_scissors; i++) { + ice->state.scissors[start_slot + i] = states[i]; } ice->state.dirty |= IRIS_DIRTY_SCISSOR_RECT; @@ -1049,6 +1048,7 @@ iris_set_viewport_states(struct pipe_context *ctx, struct iris_viewport_state *cso = malloc(sizeof(struct iris_viewport_state)); + // XXX: sf_cl_vp is only big enough for one slot, we don't iterate right for (unsigned i = start_slot; i < start_slot + num_viewports; i++) { float x_extent = extent_from_matrix(&state[i], 0); float y_extent = extent_from_matrix(&state[i], 1); |