summaryrefslogtreecommitdiff
path: root/src/amd/compiler/aco_ir.h
diff options
context:
space:
mode:
authorRhys Perry <pendingchaos02@gmail.com>2023-04-27 16:22:52 +0100
committerMarge Bot <emma+marge@anholt.net>2023-05-04 19:08:58 +0000
commitd5398b62da1913e7224c826da0dbd5fa88436f18 (patch)
tree2b5d21384cfe41fe53cb4d261a49b95efd836e22 /src/amd/compiler/aco_ir.h
parent9dd6fcd9ece4433229181241bdaba9b2d0baa232 (diff)
downloadmesa-d5398b62da1913e7224c826da0dbd5fa88436f18.tar.gz
aco/ra: create M0-affinities for s_sendmsg
v2 by Timur Kristóf: Do not add the affinity for instructions that can't write m0 reliably, such as readlane-like instructions on GFX8. Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Timur Kristóf <timur.kristof@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22690>
Diffstat (limited to 'src/amd/compiler/aco_ir.h')
-rw-r--r--src/amd/compiler/aco_ir.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/amd/compiler/aco_ir.h b/src/amd/compiler/aco_ir.h
index 6ae4571abd8..a39e949847f 100644
--- a/src/amd/compiler/aco_ir.h
+++ b/src/amd/compiler/aco_ir.h
@@ -1804,6 +1804,7 @@ bool instr_is_16bit(amd_gfx_level gfx_level, aco_opcode op);
uint8_t get_gfx11_true16_mask(aco_opcode op);
bool can_use_SDWA(amd_gfx_level gfx_level, const aco_ptr<Instruction>& instr, bool pre_ra);
bool can_use_DPP(const aco_ptr<Instruction>& instr, bool pre_ra, bool dpp8);
+bool can_write_m0(amd_gfx_level gfx_level, const aco_ptr<Instruction>& instr);
/* updates "instr" and returns the old instruction (or NULL if no update was needed) */
aco_ptr<Instruction> convert_to_SDWA(amd_gfx_level gfx_level, aco_ptr<Instruction>& instr);
aco_ptr<Instruction> convert_to_DPP(aco_ptr<Instruction>& instr, bool dpp8);