brw: Add assembler support for DPAS

Allow us to parse instructions in a form we currently generate

```
dpas.8x8(8)     g55<1>F         g47<1,1,0>F     g31<1,1,0>HF    g39<1,1,0>HF { align1 WE_all 1Q $4 };
```

Regions are not really needed, but this will be handled in a later patch
(that will also stop printing the regions).

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Acked-by: Rohan Garg <rohan.garg@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34031>
This commit is contained in:
Caio Oliveira
2025-03-12 11:55:46 -07:00
committed by Marge Bot
parent 5dcb9f918d
commit c01655370d
4 changed files with 46 additions and 14 deletions
-13
View File
@@ -740,19 +740,6 @@ brw_generator::enable_debug(const char *shader_name)
this->shader_name = shader_name;
}
static gfx12_systolic_depth
translate_systolic_depth(unsigned d)
{
/* Could also return (ffs(d) - 1) & 3. */
switch (d) {
case 2: return BRW_SYSTOLIC_DEPTH_2;
case 4: return BRW_SYSTOLIC_DEPTH_4;
case 8: return BRW_SYSTOLIC_DEPTH_8;
case 16: return BRW_SYSTOLIC_DEPTH_16;
default: unreachable("Invalid systolic depth.");
}
}
int
brw_generator::generate_code(const cfg_t *cfg, int dispatch_width,
struct brw_shader_stats shader_stats,