mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 00:58:05 +02:00
aco: Add s_wait_event argument bit definitions
A wait for export_ready (if the corresponding bit is not set in the instruction) is done to enter the Primitive Ordered Pixel Shading ordered section on GFX11. Reviewed-by: Timur Kristóf <timur.kristof@gmail.com> Signed-off-by: Vitaliy Triang3l Kuzmin <triang3l@yandex.ru> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22250>
This commit is contained in:
parent
b892f31e4d
commit
94d2888da2
2 changed files with 15 additions and 0 deletions
|
|
@ -285,6 +285,16 @@ struct wait_imm {
|
|||
bool empty() const;
|
||||
};
|
||||
|
||||
/* s_wait_event immediate bits. */
|
||||
enum wait_event_imm : uint16_t {
|
||||
/* If this bit is 0, await that the export buffer space has been allocated.
|
||||
* In Primitive Ordered Pixel Shading, export ready means that the overlapped waves have exited
|
||||
* their ordered sections (by performing the `done` export), and that the current wave may enter
|
||||
* its ordered section.
|
||||
*/
|
||||
wait_event_imm_dont_wait_export_ready = 0x1,
|
||||
};
|
||||
|
||||
constexpr Format
|
||||
asVOP3(Format format)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -389,6 +389,11 @@ print_instr_format_specific(enum amd_gfx_level gfx_level, const Instruction* ins
|
|||
}
|
||||
break;
|
||||
}
|
||||
case aco_opcode::s_wait_event: {
|
||||
if (!(imm & wait_event_imm_dont_wait_export_ready))
|
||||
fprintf(output, " export_ready");
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
if (imm)
|
||||
fprintf(output, " imm:%u", imm);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue