i965/nir: Do lower_io late for fragment shaders

This commit is contained in:
Jason Ekstrand 2016-02-17 13:23:45 -08:00
parent 7c26d8d471
commit d67d84f5e5
3 changed files with 6 additions and 2 deletions

View File

@ -5606,6 +5606,8 @@ brw_compile_fs(const struct brw_compiler *compiler, void *log_data,
nir_shader *shader = nir_shader_clone(mem_ctx, src_shader);
shader = brw_nir_apply_sampler_key(shader, compiler->devinfo, &key->tex,
true);
shader = brw_nir_lower_io(shader, compiler->devinfo, true,
false, NULL);
shader = brw_postprocess_nir(shader, compiler->devinfo, true);
/* key->alpha_test_func means simulating alpha testing via discards,

View File

@ -637,7 +637,8 @@ brw_create_nir(struct brw_context *brw,
if (nir->stage != MESA_SHADER_VERTEX &&
nir->stage != MESA_SHADER_TESS_CTRL &&
nir->stage != MESA_SHADER_TESS_EVAL) {
nir->stage != MESA_SHADER_TESS_EVAL &&
nir->stage != MESA_SHADER_FRAGMENT) {
nir = brw_nir_lower_io(nir, devinfo, is_scalar, false, NULL);
}

View File

@ -390,7 +390,8 @@ anv_pipeline_compile(struct anv_pipeline *pipeline,
/* Finish the optimization and compilation process */
if (nir->stage != MESA_SHADER_VERTEX &&
nir->stage != MESA_SHADER_TESS_CTRL &&
nir->stage != MESA_SHADER_TESS_EVAL) {
nir->stage != MESA_SHADER_TESS_EVAL &&
nir->stage != MESA_SHADER_FRAGMENT) {
nir = brw_nir_lower_io(nir, &pipeline->device->info,
compiler->scalar_stage[stage], false, NULL);
}