summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r600/evergreen_state.c
diff options
context:
space:
mode:
authorBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>2010-09-25 16:11:42 +0200
committerJerome Glisse <jglisse@redhat.com>2010-09-26 12:23:41 -0400
commitbc8b8d06b672f19d91fda835d38083d5751299f2 (patch)
tree229c97a89f5c8984eb6b0a3e48b0e5b3fc88e75a /src/gallium/drivers/r600/evergreen_state.c
parentc622174f73d0113dbba79520028d3a101b116e39 (diff)
r600g: set ENABLE_KILL on evergreen too
Diffstat (limited to 'src/gallium/drivers/r600/evergreen_state.c')
-rw-r--r--src/gallium/drivers/r600/evergreen_state.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c
index c54b78aa6f..7031e4cc77 100644
--- a/src/gallium/drivers/r600/evergreen_state.c
+++ b/src/gallium/drivers/r600/evergreen_state.c
@@ -1576,6 +1576,14 @@ void evergreen_pipe_shader_ps(struct pipe_context *ctx, struct r600_pipe_shader
S_0286E0_PERSP_CENTROID_ENA(1) |
S_0286E0_LINEAR_CENTROID_ENA(1),
0xFFFFFFFF, NULL);
+
+ if (rshader->uses_kill) {
+ /* only set some bits here, the other bits are set in the dsa state */
+ r600_pipe_state_add_reg(rstate, EVERGREEN_GROUP_CONTEXT,
+ R_02880C_DB_SHADER_CONTROL,
+ S_02880C_KILL_ENABLE(1),
+ S_02880C_KILL_ENABLE(1), NULL);
+ }
}
void evergreen_pipe_shader_vs(struct pipe_context *ctx, struct r600_pipe_shader *shader)