brw: Add a generic LOGICAL instruction kind

This kind of instruction doesn't have a special struct but
will still be always allocated so that it can be lowered to SEND.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36730>
This commit is contained in:
Caio Oliveira
2025-08-29 20:29:26 -07:00
committed by Marge Bot
parent df2b5fb03f
commit 08c0f33874
3 changed files with 14 additions and 0 deletions
+12
View File
@@ -201,6 +201,18 @@ brw_inst_kind_for_opcode(enum opcode opcode)
case FS_OPCODE_FB_WRITE_LOGICAL:
return BRW_KIND_FB_WRITE;
case SHADER_OPCODE_GET_BUFFER_SIZE:
case FS_OPCODE_FB_READ_LOGICAL:
case FS_OPCODE_UNIFORM_PULL_CONSTANT_LOAD:
case FS_OPCODE_VARYING_PULL_CONSTANT_LOAD_LOGICAL:
case SHADER_OPCODE_BTD_SPAWN_LOGICAL:
case SHADER_OPCODE_BTD_RETIRE_LOGICAL:
case RT_OPCODE_TRACE_RAY_LOGICAL:
case FS_OPCODE_INTERPOLATE_AT_SAMPLE:
case FS_OPCODE_INTERPOLATE_AT_SHARED_OFFSET:
case FS_OPCODE_INTERPOLATE_AT_PER_SLOT_OFFSET:
return BRW_KIND_LOGICAL;
default:
return BRW_KIND_BASE;
}
+1
View File
@@ -42,6 +42,7 @@ struct brw_shader;
enum ENUM_PACKED brw_inst_kind {
BRW_KIND_BASE,
BRW_KIND_SEND,
BRW_KIND_LOGICAL,
BRW_KIND_TEX,
BRW_KIND_MEM,
BRW_KIND_DPAS,
+1
View File
@@ -476,6 +476,7 @@ hash_inst(const void *v)
break;
}
case BRW_KIND_LOGICAL:
case BRW_KIND_BASE:
/* Nothing else to do. */
break;