From da9f4b2e6780525846ee7c7aa376583fcaa4021a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timur=20Krist=C3=B3f?= Date: Thu, 15 Jul 2021 14:38:27 +0200 Subject: [PATCH] nir, aco: Remove vertex and primitive count overwrite intrinsic. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It's no longer needed. No Fossil DB changes. Signed-off-by: Timur Kristóf Reviewed-by: Daniel Schürmann Part-of: --- src/amd/compiler/aco_instruction_selection.cpp | 11 ----------- src/compiler/nir/nir_intrinsics.py | 2 -- 2 files changed, 13 deletions(-) diff --git a/src/amd/compiler/aco_instruction_selection.cpp b/src/amd/compiler/aco_instruction_selection.cpp index 57793000320..396045c60a1 100644 --- a/src/amd/compiler/aco_instruction_selection.cpp +++ b/src/amd/compiler/aco_instruction_selection.cpp @@ -9070,17 +9070,6 @@ visit_intrinsic(isel_context* ctx, nir_intrinsic_instr* instr) ctx->arg_temps[ctx->args->ac.tes_patch_id.arg_index] = get_ssa_temp(ctx, instr->src[3].ssa); break; } - case nir_intrinsic_overwrite_subgroup_num_vertices_and_primitives_amd: { - Temp old_merged_wave_info = get_arg(ctx, ctx->args->ac.merged_wave_info); - Temp num_vertices = bld.as_uniform(get_ssa_temp(ctx, instr->src[0].ssa)); - Temp num_primitives = bld.as_uniform(get_ssa_temp(ctx, instr->src[1].ssa)); - Temp tmp = bld.sop2(aco_opcode::s_lshl_b32, bld.def(s1), bld.def(s1, scc), num_primitives, - Operand::c32(8u)); - tmp = bld.sop2(aco_opcode::s_or_b32, bld.def(s1), bld.def(s1, scc), tmp, num_vertices); - ctx->arg_temps[ctx->args->ac.merged_wave_info.arg_index] = - bld.sop2(aco_opcode::s_pack_lh_b32_b16, bld.def(s1), tmp, old_merged_wave_info); - break; - } default: isel_err(&instr->instr, "Unimplemented intrinsic instr"); abort(); diff --git a/src/compiler/nir/nir_intrinsics.py b/src/compiler/nir/nir_intrinsics.py index 13314a8005c..05e7ee7c912 100644 --- a/src/compiler/nir/nir_intrinsics.py +++ b/src/compiler/nir/nir_intrinsics.py @@ -1208,8 +1208,6 @@ intrinsic("alloc_vertices_and_primitives_amd", src_comp=[1, 1], indices=[]) intrinsic("overwrite_vs_arguments_amd", src_comp=[1, 1], indices=[]) # Overwrites TES input registers, for use with vertex compaction after culling. src = {tes_u, tes_v, rel_patch_id, patch_id}. intrinsic("overwrite_tes_arguments_amd", src_comp=[1, 1, 1, 1], indices=[]) -# Overwrites the input vertex and primitive count in the current subgroup after culling. src = {num_vertices, num_primitives}. -intrinsic("overwrite_subgroup_num_vertices_and_primitives_amd", src_comp=[1, 1], indices=[]) # src = [index] BINDING = which table BASE = offset within handle intrinsic("load_sbt_amd", src_comp=[-1], dest_comp=0, indices=[BINDING, BASE],