nir: Remove deref chain support from opt_peephole_select

Acked-by: Rob Clark <robdclark@gmail.com>
Acked-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
Jason Ekstrand 2018-03-27 09:45:23 -07:00
parent 54bfc0cbcf
commit d4dd2ca4a7
1 changed files with 2 additions and 11 deletions

View File

@ -66,17 +66,6 @@ block_check_for_allowed_instrs(nir_block *block, unsigned *count, bool alu_ok)
nir_intrinsic_instr *intrin = nir_instr_as_intrinsic(instr);
switch (intrin->intrinsic) {
case nir_intrinsic_load_var:
switch (intrin->variables[0]->var->data.mode) {
case nir_var_shader_in:
case nir_var_uniform:
break;
default:
return false;
}
break;
case nir_intrinsic_load_deref:
switch (nir_src_as_deref(intrin->src[0])->mode) {
case nir_var_shader_in:
@ -266,6 +255,8 @@ nir_opt_peephole_select(nir_shader *shader, unsigned limit)
{
bool progress = false;
nir_assert_unlowered_derefs(shader, nir_lower_load_store_derefs);
nir_foreach_function(function, shader) {
if (function->impl)
progress |= nir_opt_peephole_select_impl(function->impl, limit);