radeonsi: set KILL_ENABLE during shader compilation, remove uses_kill flag

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
This commit is contained in:
Marek Olšák 2014-09-19 17:07:07 +02:00
parent a34c9f70b1
commit adc5797f54
3 changed files with 5 additions and 5 deletions

View File

@ -774,6 +774,8 @@ static void si_alpha_test(struct lp_build_tgsi_context *bld_base,
LLVMVoidTypeInContext(gallivm->context),
NULL, 0, 0);
}
si_shader_ctx->shader->db_shader_control |= S_02880C_KILL_ENABLE(1);
}
static void si_llvm_emit_clipvertex(struct lp_build_tgsi_context * bld_base,
@ -2751,7 +2753,9 @@ int si_pipe_shader_create(
tgsi_scan_shader(sel->tokens, &shader_info);
shader->shader.uses_kill = shader_info.uses_kill;
if (shader_info.uses_kill)
shader->db_shader_control |= S_02880C_KILL_ENABLE(1);
shader->shader.uses_instanceid = shader_info.uses_instanceid;
bld_base->info = &shader_info;
bld_base->emit_fetch_funcs[TGSI_FILE_CONSTANT] = fetch_constant;

View File

@ -142,7 +142,6 @@ struct si_shader {
unsigned gs_max_out_vertices;
unsigned nparam;
bool uses_kill;
bool uses_instanceid;
bool fs_write_all;
bool vs_out_misc_write;

View File

@ -266,9 +266,6 @@ static void si_pipe_shader_ps(struct pipe_context *ctx, struct si_pipe_shader *s
db_shader_control |= shader->db_shader_control;
if (shader->shader.uses_kill || shader->key.ps.alpha_func != PIPE_FUNC_ALWAYS)
db_shader_control |= S_02880C_KILL_ENABLE(1);
spi_ps_in_control = S_0286D8_NUM_INTERP(shader->shader.nparam) |
S_0286D8_BC_OPTIMIZE_DISABLE(1);