radv/llvm: stop trying to eliminate VS outputs

This has no effects, except for XFB but that shouldn't really matter.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13542>
This commit is contained in:
Samuel Pitoiset
2021-10-27 11:13:30 +02:00
committed by Marge Bot
parent 5a94271069
commit 6c1cd2fd3a
-33
View File
@@ -2220,36 +2220,6 @@ ac_llvm_finalize_module(struct radv_shader_context *ctx, LLVMPassManagerRef pass
ac_llvm_context_dispose(&ctx->ac);
}
static void
ac_nir_eliminate_const_vs_outputs(struct radv_shader_context *ctx)
{
struct radv_vs_output_info *outinfo;
switch (ctx->stage) {
case MESA_SHADER_FRAGMENT:
case MESA_SHADER_COMPUTE:
case MESA_SHADER_TESS_CTRL:
case MESA_SHADER_GEOMETRY:
return;
case MESA_SHADER_VERTEX:
if (ctx->shader_info->vs.as_ls ||
ctx->shader_info->vs.as_es)
return;
outinfo = &ctx->shader_info->vs.outinfo;
break;
case MESA_SHADER_TESS_EVAL:
if (ctx->shader_info->tes.as_es)
return;
outinfo = &ctx->shader_info->tes.outinfo;
break;
default:
unreachable("Unhandled shader type");
}
ac_optimize_vs_outputs(&ctx->ac, ctx->main_function, outinfo->vs_output_param_offset,
VARYING_SLOT_MAX, 0, &outinfo->param_exports);
}
static void
ac_setup_rings(struct radv_shader_context *ctx)
{
@@ -2587,9 +2557,6 @@ ac_translate_nir_to_llvm(struct ac_llvm_compiler *ac_llvm,
ac_llvm_finalize_module(&ctx, ac_llvm->passmgr);
if (shader_count == 1)
ac_nir_eliminate_const_vs_outputs(&ctx);
return ctx.ac.module;
}